@xyo-network/xl1-cli-lib 1.15.2 → 1.15.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (82) hide show
  1. package/README.md +364 -236
  2. package/dist/node/commands/bridge/index.d.ts +2 -0
  3. package/dist/node/commands/bridge/index.d.ts.map +1 -0
  4. package/dist/node/commands/bridge/runBridge.d.ts +9 -0
  5. package/dist/node/commands/bridge/runBridge.d.ts.map +1 -0
  6. package/dist/node/commands/index.d.ts +1 -0
  7. package/dist/node/commands/index.d.ts.map +1 -1
  8. package/dist/node/index.mjs +58 -101
  9. package/dist/node/index.mjs.map +1 -1
  10. package/dist/node/orchestration/archivists/lib/localPersistentArchivist.d.ts +1 -1
  11. package/dist/node/orchestration/archivists/lib/localPersistentArchivist.d.ts.map +1 -1
  12. package/dist/node/orchestration/initServices.d.ts +1 -1
  13. package/dist/node/orchestration/initServices.d.ts.map +1 -1
  14. package/dist/node/orchestration/map/BalanceSummary/initBalanceSummaryMap.d.ts +2 -4
  15. package/dist/node/orchestration/map/BalanceSummary/initBalanceSummaryMap.d.ts.map +1 -1
  16. package/dist/node/orchestration/map/BalanceSummary/initLocalBalanceSummaryMap.d.ts +2 -4
  17. package/dist/node/orchestration/map/BalanceSummary/initLocalBalanceSummaryMap.d.ts.map +1 -1
  18. package/dist/node/orchestration/map/BalanceSummary/initLocalTransferSummaryMap.d.ts +2 -4
  19. package/dist/node/orchestration/map/BalanceSummary/initLocalTransferSummaryMap.d.ts.map +1 -1
  20. package/dist/node/orchestration/map/BalanceSummary/initTransferSummaryMap.d.ts +2 -4
  21. package/dist/node/orchestration/map/BalanceSummary/initTransferSummaryMap.d.ts.map +1 -1
  22. package/dist/node/orchestration/map/index.d.ts +0 -1
  23. package/dist/node/orchestration/map/index.d.ts.map +1 -1
  24. package/dist/node/orchestration/services/implementation/balance.d.ts.map +1 -1
  25. package/dist/node/orchestration/services/implementation/head/createForkedHead/config/getBridgeSourceDetails.d.ts +2 -2
  26. package/dist/node/orchestration/services/implementation/head/createForkedHead/config/getBridgeSourceDetails.d.ts.map +1 -1
  27. package/dist/node/orchestration/services/implementation/head/head.d.ts.map +1 -1
  28. package/dist/node/orchestration/services/implementation/index.d.ts +1 -0
  29. package/dist/node/orchestration/services/implementation/index.d.ts.map +1 -1
  30. package/dist/node/orchestration/services/implementation/iterator.d.ts.map +1 -1
  31. package/dist/node/orchestration/services/implementation/producer.d.ts.map +1 -1
  32. package/dist/node/orchestration/services/implementation/transfer.d.ts.map +1 -1
  33. package/dist/node/orchestration/services/implementation/validator.d.ts.map +1 -1
  34. package/dist/node/runCLI.d.ts.map +1 -1
  35. package/dist/node/xl1.mjs +57 -101
  36. package/dist/node/xl1.mjs.map +1 -1
  37. package/package.json +36 -32
  38. package/src/commands/bridge/index.ts +1 -0
  39. package/src/commands/bridge/runBridge.ts +12 -0
  40. package/src/commands/index.ts +1 -0
  41. package/src/orchestration/archivists/lib/localPersistentArchivist.ts +1 -3
  42. package/src/orchestration/initServices.ts +22 -7
  43. package/src/orchestration/map/BalanceSummary/initBalanceSummaryMap.ts +3 -5
  44. package/src/orchestration/map/BalanceSummary/initLocalBalanceSummaryMap.ts +5 -7
  45. package/src/orchestration/map/BalanceSummary/initLocalTransferSummaryMap.ts +5 -7
  46. package/src/orchestration/map/BalanceSummary/initTransferSummaryMap.ts +3 -5
  47. package/src/orchestration/map/index.ts +0 -1
  48. package/src/orchestration/services/implementation/balance.ts +5 -5
  49. package/src/orchestration/services/implementation/head/head.ts +28 -28
  50. package/src/orchestration/services/implementation/index.ts +1 -0
  51. package/src/orchestration/services/implementation/iterator.ts +10 -10
  52. package/src/orchestration/services/implementation/producer.ts +5 -5
  53. package/src/orchestration/services/implementation/transfer.ts +5 -5
  54. package/src/orchestration/services/implementation/validator.ts +5 -5
  55. package/src/runCLI.ts +10 -1
  56. package/dist/node/orchestration/map/driver/index.d.ts +0 -2
  57. package/dist/node/orchestration/map/driver/index.d.ts.map +0 -1
  58. package/dist/node/orchestration/map/driver/lmdb/Params.d.ts +0 -7
  59. package/dist/node/orchestration/map/driver/lmdb/Params.d.ts.map +0 -1
  60. package/dist/node/orchestration/map/driver/lmdb/SynchronousLmdbMap.d.ts +0 -32
  61. package/dist/node/orchestration/map/driver/lmdb/SynchronousLmdbMap.d.ts.map +0 -1
  62. package/dist/node/orchestration/map/driver/lmdb/index.d.ts +0 -2
  63. package/dist/node/orchestration/map/driver/lmdb/index.d.ts.map +0 -1
  64. package/dist/node/orchestration/map/driver/lmdb/spec/SynchronousLmdbMap.spec.d.ts +0 -2
  65. package/dist/node/orchestration/map/driver/lmdb/spec/SynchronousLmdbMap.spec.d.ts.map +0 -1
  66. package/dist/node/orchestration/map/localPersistentMap.d.ts +0 -13
  67. package/dist/node/orchestration/map/localPersistentMap.d.ts.map +0 -1
  68. package/dist/node/orchestration/store/StoreKind.d.ts +0 -2
  69. package/dist/node/orchestration/store/StoreKind.d.ts.map +0 -1
  70. package/dist/node/orchestration/store/getStoreDirectory.d.ts +0 -10
  71. package/dist/node/orchestration/store/getStoreDirectory.d.ts.map +0 -1
  72. package/dist/node/orchestration/store/index.d.ts +0 -3
  73. package/dist/node/orchestration/store/index.d.ts.map +0 -1
  74. package/src/orchestration/map/driver/index.ts +0 -1
  75. package/src/orchestration/map/driver/lmdb/Params.ts +0 -7
  76. package/src/orchestration/map/driver/lmdb/SynchronousLmdbMap.ts +0 -66
  77. package/src/orchestration/map/driver/lmdb/index.ts +0 -1
  78. package/src/orchestration/map/driver/lmdb/spec/SynchronousLmdbMap.spec.ts +0 -97
  79. package/src/orchestration/map/localPersistentMap.ts +0 -52
  80. package/src/orchestration/store/StoreKind.ts +0 -1
  81. package/src/orchestration/store/getStoreDirectory.ts +0 -14
  82. package/src/orchestration/store/index.ts +0 -2
@@ -0,0 +1,2 @@
1
+ export * from './runBridge.ts';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/commands/bridge/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAA"}
@@ -0,0 +1,9 @@
1
+ import type { Logger } from '@xylabs/logger';
2
+ import type { Config } from '@xyo-network/xl1-protocol-sdk';
3
+ interface RunBridgeContext {
4
+ config: Config;
5
+ logger?: Logger;
6
+ }
7
+ export declare function runBridge(context: RunBridgeContext): void;
8
+ export {};
9
+ //# sourceMappingURL=runBridge.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"runBridge.d.ts","sourceRoot":"","sources":["../../../../src/commands/bridge/runBridge.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAA;AAE5C,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,+BAA+B,CAAA;AAE3D,UAAU,gBAAgB;IACxB,MAAM,EAAE,MAAM,CAAA;IACd,MAAM,CAAC,EAAE,MAAM,CAAA;CAChB;AAED,wBAAgB,SAAS,CAAC,OAAO,EAAE,gBAAgB,QAElD"}
@@ -1,4 +1,5 @@
1
1
  export * from './api/index.ts';
2
+ export * from './bridge/index.ts';
2
3
  export * from './producer/index.ts';
3
4
  export * from './validator/index.ts';
4
5
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/commands/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAA;AAC9B,cAAc,qBAAqB,CAAA;AACnC,cAAc,sBAAsB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/commands/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAA;AAC9B,cAAc,mBAAmB,CAAA;AACjC,cAAc,qBAAqB,CAAA;AACnC,cAAc,sBAAsB,CAAA"}
@@ -528,9 +528,10 @@ var initHealthEndpoints = /* @__PURE__ */ __name((params) => {
528
528
 
529
529
  // src/orchestration/initServices.ts
530
530
  import { assertEx as assertEx18 } from "@xylabs/assert";
531
- import { asAddress as asAddress2 } from "@xylabs/hex";
531
+ import { asAddress as asAddress2, ZERO_HASH } from "@xylabs/hex";
532
532
  import { isDefined as isDefined14 } from "@xylabs/typeof";
533
- import { balanceSummaryRepositoryFromMap, initTelemetry, startupSpanAsync as startupSpanAsync8, validateHydratedBlockState } from "@xyo-network/chain-sdk";
533
+ import { initTelemetry, startupSpanAsync as startupSpanAsync8, validateHydratedBlockState } from "@xyo-network/chain-sdk";
534
+ import { readPayloadMapFromStore } from "@xyo-network/xl1-protocol-sdk";
534
535
 
535
536
  // src/orchestration/archivists/ChainFinalized/archivist.ts
536
537
  import { initArchivistSync, startupSpanAsync } from "@xyo-network/chain-sdk";
@@ -541,17 +542,10 @@ import { Mutex as Mutex2 } from "async-mutex";
541
542
 
542
543
  // src/orchestration/archivists/lib/localPersistentArchivist.ts
543
544
  import { rm } from "fs/promises";
544
- import Path2 from "path";
545
- import { LmdbArchivist, LmdbArchivistConfigSchema } from "@xyo-network/archivist-lmdb";
546
-
547
- // src/orchestration/store/getStoreDirectory.ts
548
545
  import Path from "path";
549
- var getStoreDirectory = /* @__PURE__ */ __name((name, storageRoot, kind) => {
550
- return kind === void 0 ? Path.join(storageRoot, name) : Path.join(storageRoot, kind, name);
551
- }, "getStoreDirectory");
552
-
553
- // src/orchestration/archivists/lib/localPersistentArchivist.ts
554
- var DEFAULT_STORAGE_ROOT = Path2.join(process.cwd(), ".store");
546
+ import { LmdbArchivist, LmdbArchivistConfigSchema } from "@xyo-network/archivist-lmdb";
547
+ import { getStoreDirectory } from "@xyo-network/chain-sdk";
548
+ var DEFAULT_STORAGE_ROOT = Path.join(process.cwd(), ".store");
555
549
  var getLocalPersistentArchivist = /* @__PURE__ */ __name((name, dbName, storeName, storageRoot, kind = "lmdb") => {
556
550
  switch (kind) {
557
551
  case "lmdb": {
@@ -807,91 +801,8 @@ import { Mutex as Mutex15 } from "async-mutex";
807
801
 
808
802
  // src/orchestration/map/BalanceSummary/initLocalBalanceSummaryMap.ts
809
803
  import { isDefined as isDefined4 } from "@xylabs/typeof";
804
+ import { getLocalPersistentMap } from "@xyo-network/chain-sdk";
810
805
  import { Mutex as Mutex14 } from "async-mutex";
811
-
812
- // src/orchestration/map/localPersistentMap.ts
813
- import { rm as rm2 } from "fs/promises";
814
- import Path3 from "path";
815
-
816
- // src/orchestration/map/driver/lmdb/SynchronousLmdbMap.ts
817
- import { AbstractCreatable, creatable } from "@xylabs/creatable";
818
- import { open } from "lmdb";
819
- function _ts_decorate(decorators, target, key, desc) {
820
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
821
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
822
- else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
823
- return c > 3 && r && Object.defineProperty(target, key, r), r;
824
- }
825
- __name(_ts_decorate, "_ts_decorate");
826
- var SynchronousLmdbMap = class extends AbstractCreatable {
827
- static {
828
- __name(this, "SynchronousLmdbMap");
829
- }
830
- db;
831
- rootDatabase;
832
- /**
833
- * The path to the LMDB folder where the database is stored.
834
- * This is constructed from the location and dbName parameters
835
- * allowing for multiple DBs within the root (by specifying a
836
- * different storeName).
837
- * @returns The folder path for the LMDB database.
838
- */
839
- get folderPath() {
840
- return `${this.params.location}/${this.params.dbName}`;
841
- }
842
- all() {
843
- return [
844
- ...this.db.getRange({})
845
- ].map((entry) => entry.value);
846
- }
847
- clear() {
848
- this.db.clearSync();
849
- }
850
- delete(id) {
851
- return this.db.removeSync(id);
852
- }
853
- get(id) {
854
- return this.db.get(id);
855
- }
856
- has(id) {
857
- return this.db.doesExist(id);
858
- }
859
- set(id, data) {
860
- this.db.putSync(id, data);
861
- return this;
862
- }
863
- async startHandler() {
864
- await super.startHandler();
865
- this.rootDatabase = open({
866
- path: this.folderPath
867
- });
868
- this.db = this.rootDatabase.openDB({
869
- name: this.params.storeName
870
- });
871
- }
872
- };
873
- SynchronousLmdbMap = _ts_decorate([
874
- creatable()
875
- ], SynchronousLmdbMap);
876
-
877
- // src/orchestration/map/localPersistentMap.ts
878
- var DEFAULT_STORAGE_ROOT2 = Path3.join(process.cwd(), ".store");
879
- var getLocalPersistentMap = /* @__PURE__ */ __name(async (dbName, storeName, storageRoot, kind = "lmdb") => {
880
- switch (kind) {
881
- case "lmdb": {
882
- const root = storageRoot ?? DEFAULT_STORAGE_ROOT2;
883
- const location = getStoreDirectory(dbName, root, "lmdb");
884
- const store = await SynchronousLmdbMap.create({
885
- location,
886
- dbName,
887
- storeName
888
- });
889
- return store;
890
- }
891
- }
892
- }, "getLocalPersistentMap");
893
-
894
- // src/orchestration/map/BalanceSummary/initLocalBalanceSummaryMap.ts
895
806
  var mutex13 = new Mutex14();
896
807
  var singleton13;
897
808
  var initLocalBalanceSummaryMap = /* @__PURE__ */ __name(async (params) => {
@@ -923,6 +834,7 @@ import { Mutex as Mutex17 } from "async-mutex";
923
834
 
924
835
  // src/orchestration/map/BalanceSummary/initLocalTransferSummaryMap.ts
925
836
  import { isDefined as isDefined6 } from "@xylabs/typeof";
837
+ import { getLocalPersistentMap as getLocalPersistentMap2 } from "@xyo-network/chain-sdk";
926
838
  import { Mutex as Mutex16 } from "async-mutex";
927
839
  var mutex15 = new Mutex16();
928
840
  var singleton15;
@@ -930,7 +842,7 @@ var initLocalTransferSummaryMap = /* @__PURE__ */ __name(async (params) => {
930
842
  return await mutex15.runExclusive(async () => {
931
843
  if (isDefined6(singleton15)) return singleton15;
932
844
  const { root } = params.config.storage;
933
- singleton15 = await getLocalPersistentMap("transfer", "summary", root);
845
+ singleton15 = await getLocalPersistentMap2("transfer", "summary", root);
934
846
  return singleton15;
935
847
  });
936
848
  }, "initLocalTransferSummaryMap");
@@ -1449,6 +1361,15 @@ var initTimeService = /* @__PURE__ */ __name(async ({ chainArchivist, chainItera
1449
1361
  return await timeSyncServiceSingleton;
1450
1362
  }, "initTimeService");
1451
1363
 
1364
+ // src/orchestration/services/implementation/transfer.ts
1365
+ import { BaseAccountTransfersService } from "@xyo-network/chain-sdk";
1366
+ var transferServiceSingleton;
1367
+ var initTransferService = /* @__PURE__ */ __name(async (params) => {
1368
+ if (transferServiceSingleton) return transferServiceSingleton;
1369
+ transferServiceSingleton = await BaseAccountTransfersService.create(params);
1370
+ return transferServiceSingleton;
1371
+ }, "initTransferService");
1372
+
1452
1373
  // src/orchestration/services/implementation/validator.ts
1453
1374
  var serviceSingleton3;
1454
1375
  var initValidator = /* @__PURE__ */ __name((params) => {
@@ -1607,6 +1528,7 @@ var initServices = /* @__PURE__ */ __name(async (context) => {
1607
1528
  startupSpanAsync8("TransferSummaryMap", () => initTransferSummaryMap(initParams))
1608
1529
  ]);
1609
1530
  const chainId = chainService.chainId;
1531
+ const chainMap = readPayloadMapFromStore(chainArchivist);
1610
1532
  const chainContractViewer = chainService;
1611
1533
  const chainStakeViewer = chainService;
1612
1534
  const chainStaker = chainService;
@@ -1634,14 +1556,32 @@ var initServices = /* @__PURE__ */ __name(async (context) => {
1634
1556
  })),
1635
1557
  startupSpanAsync8("ChainIterator", () => initChainIterator({
1636
1558
  name: "ChainIterator",
1637
- chainArchivist,
1559
+ chainMap,
1638
1560
  head,
1639
1561
  ...initParams
1640
1562
  })),
1641
1563
  startupSpanAsync8("BalanceService", () => initBalanceService({
1642
1564
  name: "BalanceService",
1643
- chainArchivist,
1644
- summaryRepository: balanceSummaryRepositoryFromMap(balanceSummaryMap),
1565
+ context: {
1566
+ store: {
1567
+ chainMap
1568
+ },
1569
+ head: /* @__PURE__ */ __name(() => ZERO_HASH, "head"),
1570
+ chainId,
1571
+ summaryMap: balanceSummaryMap
1572
+ },
1573
+ ...initParams
1574
+ })),
1575
+ startupSpanAsync8("TransferService", () => initTransferService({
1576
+ name: "TransferService",
1577
+ context: {
1578
+ store: {
1579
+ chainMap
1580
+ },
1581
+ head: /* @__PURE__ */ __name(() => ZERO_HASH, "head"),
1582
+ chainId,
1583
+ summaryMap: transferSummaryMap
1584
+ },
1645
1585
  ...initParams
1646
1586
  }))
1647
1587
  ]);
@@ -1734,6 +1674,13 @@ function runApi(context) {
1734
1674
  }
1735
1675
  __name(runApi, "runApi");
1736
1676
 
1677
+ // src/commands/bridge/runBridge.ts
1678
+ import { getServer as getServer2 } from "@xyo-network/chain-bridge";
1679
+ function runBridge(context) {
1680
+ void getServer2(context);
1681
+ }
1682
+ __name(runBridge, "runBridge");
1683
+
1737
1684
  // src/commands/producer/runProducer.ts
1738
1685
  var runProducer = /* @__PURE__ */ __name(async (context) => {
1739
1686
  const { config: config3, logger, orchestrator } = context;
@@ -1855,7 +1802,7 @@ var waitForHostPort = /* @__PURE__ */ __name((host, port) => {
1855
1802
 
1856
1803
  // src/runCLI.ts
1857
1804
  var config;
1858
- var version = isDefined17("1.15.1") ? "1.15.1" : "unknown";
1805
+ var version = isDefined17("1.15.2") ? "1.15.2" : "unknown";
1859
1806
  var getContextFromConfig = /* @__PURE__ */ __name((config3) => {
1860
1807
  const logger = initLogger(config3);
1861
1808
  const orchestrator = new Orchestrator(logger);
@@ -1910,6 +1857,15 @@ $0 <command> [options]`).parserConfiguration({
1910
1857
  config
1911
1858
  });
1912
1859
  });
1860
+ }).command("bridge", "Run a XL1 Bridge Node", (yargs2) => {
1861
+ return yargs2.command("$0", "Run a XL1 Bridge Node", () => {
1862
+ }, () => {
1863
+ const context = getContextFromConfig(config);
1864
+ runBridge({
1865
+ ...context,
1866
+ config
1867
+ });
1868
+ });
1913
1869
  }).command("producer", "Run a XL1 Producer Node", (yargs2) => {
1914
1870
  return yargs2.command("$0", "Run a XL1 Producer Node", () => {
1915
1871
  }, async () => {
@@ -1968,6 +1924,7 @@ export {
1968
1924
  initServices,
1969
1925
  initStakeIntentService,
1970
1926
  initTimeService,
1927
+ initTransferService,
1971
1928
  initValidator,
1972
1929
  runCLI,
1973
1930
  start