@xyo-network/xl1-protocol-sdk 1.17.1 → 1.17.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 (187) hide show
  1. package/dist/neutral/CreatableProvider/AbstractCreatableProvider.d.ts +6 -0
  2. package/dist/neutral/CreatableProvider/AbstractCreatableProvider.d.ts.map +1 -0
  3. package/dist/neutral/CreatableProvider/CreatableProvider.d.ts +42 -0
  4. package/dist/neutral/CreatableProvider/CreatableProvider.d.ts.map +1 -0
  5. package/dist/neutral/CreatableProvider/CreatableProviderRegistry.d.ts +12 -0
  6. package/dist/neutral/CreatableProvider/CreatableProviderRegistry.d.ts.map +1 -0
  7. package/dist/neutral/CreatableProvider/LabeledCreatableProviderFactory.d.ts +12 -0
  8. package/dist/neutral/CreatableProvider/LabeledCreatableProviderFactory.d.ts.map +1 -0
  9. package/dist/neutral/CreatableProvider/ProviderFactory.d.ts +14 -0
  10. package/dist/neutral/CreatableProvider/ProviderFactory.d.ts.map +1 -0
  11. package/dist/neutral/CreatableProvider/ProviderFactoryLocator.d.ts +48 -0
  12. package/dist/neutral/CreatableProvider/ProviderFactoryLocator.d.ts.map +1 -0
  13. package/dist/neutral/CreatableProvider/ProviderFactoryLocatorInstance.d.ts +39 -0
  14. package/dist/neutral/CreatableProvider/ProviderFactoryLocatorInstance.d.ts.map +1 -0
  15. package/dist/neutral/CreatableProvider/index.d.ts +8 -0
  16. package/dist/neutral/CreatableProvider/index.d.ts.map +1 -0
  17. package/dist/neutral/block/hydrate/flattenHydratedBlock.d.ts +3 -1
  18. package/dist/neutral/block/hydrate/flattenHydratedBlock.d.ts.map +1 -1
  19. package/dist/neutral/config/Bridge.d.ts +27 -0
  20. package/dist/neutral/config/Bridge.d.ts.map +1 -1
  21. package/dist/neutral/config/Config.d.ts +12 -0
  22. package/dist/neutral/config/Config.d.ts.map +1 -1
  23. package/dist/neutral/config/index.d.ts +1 -0
  24. package/dist/neutral/config/index.d.ts.map +1 -1
  25. package/dist/neutral/index.d.ts +1 -0
  26. package/dist/neutral/index.d.ts.map +1 -1
  27. package/dist/neutral/index.mjs +749 -212
  28. package/dist/neutral/index.mjs.map +1 -1
  29. package/dist/neutral/map/AsyncMap.d.ts +36 -0
  30. package/dist/neutral/map/AsyncMap.d.ts.map +1 -0
  31. package/dist/neutral/map/MapType.d.ts +8 -7
  32. package/dist/neutral/map/MapType.d.ts.map +1 -1
  33. package/dist/neutral/map/SyncMap.d.ts +35 -0
  34. package/dist/neutral/map/SyncMap.d.ts.map +1 -0
  35. package/dist/neutral/map/index.d.ts +2 -2
  36. package/dist/neutral/map/index.d.ts.map +1 -1
  37. package/dist/neutral/model/Provider.d.ts +8 -0
  38. package/dist/neutral/model/Provider.d.ts.map +1 -0
  39. package/dist/neutral/model/index.d.ts +1 -0
  40. package/dist/neutral/model/index.d.ts.map +1 -1
  41. package/dist/neutral/primitives/rewardFromBlockNumber.d.ts.map +1 -1
  42. package/dist/neutral/provider/DataLake.d.ts +5 -1
  43. package/dist/neutral/provider/DataLake.d.ts.map +1 -1
  44. package/dist/neutral/provider/viewer/NetworkStake/NetworkStakeViewer.d.ts +4 -1
  45. package/dist/neutral/provider/viewer/NetworkStake/NetworkStakeViewer.d.ts.map +1 -1
  46. package/dist/neutral/provider/viewer/NetworkStake/Rewards/ByPositionViewer.d.ts +4 -1
  47. package/dist/neutral/provider/viewer/NetworkStake/Rewards/ByPositionViewer.d.ts.map +1 -1
  48. package/dist/neutral/provider/viewer/NetworkStake/Rewards/ByStakerViewer.d.ts +4 -1
  49. package/dist/neutral/provider/viewer/NetworkStake/Rewards/ByStakerViewer.d.ts.map +1 -1
  50. package/dist/neutral/provider/viewer/NetworkStake/Rewards/ByStepViewer.d.ts +4 -1
  51. package/dist/neutral/provider/viewer/NetworkStake/Rewards/ByStepViewer.d.ts.map +1 -1
  52. package/dist/neutral/provider/viewer/NetworkStake/Rewards/TotalViewer.d.ts +4 -1
  53. package/dist/neutral/provider/viewer/NetworkStake/Rewards/TotalViewer.d.ts.map +1 -1
  54. package/dist/neutral/provider/viewer/NetworkStake/Rewards/Viewer.d.ts +4 -1
  55. package/dist/neutral/provider/viewer/NetworkStake/Rewards/Viewer.d.ts.map +1 -1
  56. package/dist/neutral/provider/viewer/XyoViewer.d.ts +6 -3
  57. package/dist/neutral/provider/viewer/XyoViewer.d.ts.map +1 -1
  58. package/dist/neutral/services/Chain/ChainService.d.ts +1 -1
  59. package/dist/neutral/services/Chain/ChainService.d.ts.map +1 -1
  60. package/dist/neutral/simple/accountBalance/SimpleAccountBalanceViewer.d.ts +11 -5
  61. package/dist/neutral/simple/accountBalance/SimpleAccountBalanceViewer.d.ts.map +1 -1
  62. package/dist/neutral/simple/block/SimpleBlockViewer.d.ts +12 -6
  63. package/dist/neutral/simple/block/SimpleBlockViewer.d.ts.map +1 -1
  64. package/dist/neutral/simple/blockReward/SimpleBlockRewardViewer.d.ts +7 -3
  65. package/dist/neutral/simple/blockReward/SimpleBlockRewardViewer.d.ts.map +1 -1
  66. package/dist/neutral/simple/chain/SimpleChainViewer.d.ts +6 -3
  67. package/dist/neutral/simple/chain/SimpleChainViewer.d.ts.map +1 -1
  68. package/dist/neutral/simple/chainStake/SimpleChainStakeViewer.d.ts +6 -3
  69. package/dist/neutral/simple/chainStake/SimpleChainStakeViewer.d.ts.map +1 -1
  70. package/dist/neutral/simple/chainStakeEvents/SimpleChainStakeEventsViewer.d.ts +6 -3
  71. package/dist/neutral/simple/chainStakeEvents/SimpleChainStakeEventsViewer.d.ts.map +1 -1
  72. package/dist/neutral/simple/datalake/AbstractSimpleDataLake.d.ts +18 -0
  73. package/dist/neutral/simple/datalake/AbstractSimpleDataLake.d.ts.map +1 -0
  74. package/dist/neutral/simple/datalake/SimpleDataLakeRunner.d.ts +8 -7
  75. package/dist/neutral/simple/datalake/SimpleDataLakeRunner.d.ts.map +1 -1
  76. package/dist/neutral/simple/datalake/SimpleDataLakeViewer.d.ts +7 -15
  77. package/dist/neutral/simple/datalake/SimpleDataLakeViewer.d.ts.map +1 -1
  78. package/dist/neutral/simple/mempool/SimpleMempoolViewer.d.ts +7 -4
  79. package/dist/neutral/simple/mempool/SimpleMempoolViewer.d.ts.map +1 -1
  80. package/dist/neutral/simple/timesync/SimpleTimeSyncViewer.d.ts +13 -5
  81. package/dist/neutral/simple/timesync/SimpleTimeSyncViewer.d.ts.map +1 -1
  82. package/dist/neutral/summary/primitives/balances/balancesSummary.d.ts.map +1 -1
  83. package/dist/neutral/summary/primitives/schemas/schemasSummary.d.ts.map +1 -1
  84. package/dist/neutral/summary/primitives/transfers/transfersSummary.d.ts.map +1 -1
  85. package/dist/neutral/transaction/hydrateTransaction.d.ts +2 -0
  86. package/dist/neutral/transaction/hydrateTransaction.d.ts.map +1 -1
  87. package/dist/neutral/viewers/AccountBalance.d.ts +4 -3
  88. package/dist/neutral/viewers/AccountBalance.d.ts.map +1 -1
  89. package/dist/neutral/viewers/Block.d.ts +4 -1
  90. package/dist/neutral/viewers/Block.d.ts.map +1 -1
  91. package/dist/neutral/viewers/BlockReward.d.ts +4 -1
  92. package/dist/neutral/viewers/BlockReward.d.ts.map +1 -1
  93. package/dist/neutral/viewers/Chain.d.ts +4 -1
  94. package/dist/neutral/viewers/Chain.d.ts.map +1 -1
  95. package/dist/neutral/viewers/ChainContract.d.ts +4 -1
  96. package/dist/neutral/viewers/ChainContract.d.ts.map +1 -1
  97. package/dist/neutral/viewers/ChainStakeViewer.d.ts +4 -1
  98. package/dist/neutral/viewers/ChainStakeViewer.d.ts.map +1 -1
  99. package/dist/neutral/viewers/Mempool.d.ts +4 -1
  100. package/dist/neutral/viewers/Mempool.d.ts.map +1 -1
  101. package/dist/neutral/viewers/NetworkStakeStepReward.d.ts +6 -1
  102. package/dist/neutral/viewers/NetworkStakeStepReward.d.ts.map +1 -1
  103. package/dist/neutral/viewers/Stake.d.ts +7 -3
  104. package/dist/neutral/viewers/Stake.d.ts.map +1 -1
  105. package/dist/neutral/viewers/StakeEvents.d.ts +4 -1
  106. package/dist/neutral/viewers/StakeEvents.d.ts.map +1 -1
  107. package/dist/neutral/viewers/StakeIntent.d.ts +4 -2
  108. package/dist/neutral/viewers/StakeIntent.d.ts.map +1 -1
  109. package/dist/neutral/viewers/StakeTotals.d.ts +4 -1
  110. package/dist/neutral/viewers/StakeTotals.d.ts.map +1 -1
  111. package/dist/neutral/viewers/StepStake.d.ts +4 -1
  112. package/dist/neutral/viewers/StepStake.d.ts.map +1 -1
  113. package/dist/neutral/viewers/StepViewer.d.ts +4 -2
  114. package/dist/neutral/viewers/StepViewer.d.ts.map +1 -1
  115. package/dist/neutral/viewers/TimeSync.d.ts +4 -1
  116. package/dist/neutral/viewers/TimeSync.d.ts.map +1 -1
  117. package/dist/neutral/viewers/TransferBalance.d.ts +5 -2
  118. package/dist/neutral/viewers/TransferBalance.d.ts.map +1 -1
  119. package/package.json +20 -18
  120. package/src/CreatableProvider/AbstractCreatableProvider.ts +17 -0
  121. package/src/CreatableProvider/CreatableProvider.ts +68 -0
  122. package/src/CreatableProvider/CreatableProviderRegistry.ts +85 -0
  123. package/src/CreatableProvider/LabeledCreatableProviderFactory.ts +22 -0
  124. package/src/CreatableProvider/ProviderFactory.ts +59 -0
  125. package/src/CreatableProvider/ProviderFactoryLocator.ts +102 -0
  126. package/src/CreatableProvider/ProviderFactoryLocatorInstance.ts +47 -0
  127. package/src/CreatableProvider/index.ts +7 -0
  128. package/src/block/hydrate/flattenHydratedBlock.ts +19 -1
  129. package/src/config/Bridge.ts +101 -3
  130. package/src/config/index.ts +1 -0
  131. package/src/index.ts +1 -0
  132. package/src/map/AsyncMap.ts +32 -0
  133. package/src/map/MapType.ts +13 -7
  134. package/src/map/SyncMap.ts +32 -0
  135. package/src/map/index.ts +2 -2
  136. package/src/model/Provider.ts +15 -0
  137. package/src/model/index.ts +1 -0
  138. package/src/payloads/netBalancesForPayloads.ts +1 -1
  139. package/src/payloads/netSchemasForPayloads.ts +1 -1
  140. package/src/payloads/netTransfersForPayloads.ts +1 -1
  141. package/src/primitives/rewardFromBlockNumber.ts +3 -3
  142. package/src/provider/DataLake.ts +7 -1
  143. package/src/provider/viewer/NetworkStake/NetworkStakeViewer.ts +5 -1
  144. package/src/provider/viewer/NetworkStake/Rewards/ByPositionViewer.ts +6 -1
  145. package/src/provider/viewer/NetworkStake/Rewards/ByStakerViewer.ts +7 -1
  146. package/src/provider/viewer/NetworkStake/Rewards/ByStepViewer.ts +6 -1
  147. package/src/provider/viewer/NetworkStake/Rewards/TotalViewer.ts +6 -1
  148. package/src/provider/viewer/NetworkStake/Rewards/Viewer.ts +5 -1
  149. package/src/provider/viewer/XyoViewer.ts +9 -5
  150. package/src/services/Chain/ChainService.ts +1 -1
  151. package/src/simple/accountBalance/SimpleAccountBalanceViewer.ts +15 -11
  152. package/src/simple/block/SimpleBlockViewer.ts +12 -6
  153. package/src/simple/blockReward/SimpleBlockRewardViewer.ts +12 -8
  154. package/src/simple/chain/SimpleChainViewer.ts +11 -8
  155. package/src/simple/chainStake/SimpleChainStakeViewer.ts +14 -8
  156. package/src/simple/chainStakeEvents/SimpleChainStakeEventsViewer.ts +12 -7
  157. package/src/simple/datalake/AbstractSimpleDataLake.ts +64 -0
  158. package/src/simple/datalake/SimpleDataLakeRunner.ts +14 -11
  159. package/src/simple/datalake/SimpleDataLakeViewer.ts +15 -48
  160. package/src/simple/mempool/SimpleMempoolViewer.ts +11 -7
  161. package/src/simple/timesync/SimpleTimeSyncViewer.ts +20 -7
  162. package/src/summary/primitives/balances/balancesSummary.ts +3 -2
  163. package/src/summary/primitives/schemas/schemasSummary.ts +1 -2
  164. package/src/summary/primitives/transfers/transfersSummary.ts +3 -2
  165. package/src/transaction/hydrateTransaction.ts +18 -1
  166. package/src/viewers/AccountBalance.ts +8 -2
  167. package/src/viewers/Block.ts +6 -1
  168. package/src/viewers/BlockReward.ts +6 -1
  169. package/src/viewers/Chain.ts +6 -1
  170. package/src/viewers/ChainContract.ts +6 -1
  171. package/src/viewers/ChainStakeViewer.ts +6 -1
  172. package/src/viewers/Mempool.ts +6 -1
  173. package/src/viewers/NetworkStakeStepReward.ts +8 -1
  174. package/src/viewers/Stake.ts +9 -3
  175. package/src/viewers/StakeEvents.ts +6 -1
  176. package/src/viewers/StakeIntent.ts +5 -2
  177. package/src/viewers/StakeTotals.ts +6 -1
  178. package/src/viewers/StepStake.ts +6 -1
  179. package/src/viewers/StepViewer.ts +5 -2
  180. package/src/viewers/TimeSync.ts +6 -1
  181. package/src/viewers/TransferBalance.ts +7 -2
  182. package/dist/neutral/map/AsynchronousMap.d.ts +0 -15
  183. package/dist/neutral/map/AsynchronousMap.d.ts.map +0 -1
  184. package/dist/neutral/map/SynchronousMap.d.ts +0 -14
  185. package/dist/neutral/map/SynchronousMap.d.ts.map +0 -1
  186. package/src/map/AsynchronousMap.ts +0 -16
  187. package/src/map/SynchronousMap.ts +0 -14
@@ -16,6 +16,7 @@ var blockPayloadsFromHydratedBlock = /* @__PURE__ */ __name((block) => {
16
16
  }, "blockPayloadsFromHydratedBlock");
17
17
 
18
18
  // src/block/hydrate/flattenHydratedBlock.ts
19
+ import { toHydratedBlock } from "@xyo-network/xl1-protocol";
19
20
  var flattenHydratedBlock = /* @__PURE__ */ __name((hydratedBlock) => {
20
21
  const [blk, blkPayloads] = hydratedBlock;
21
22
  return [
@@ -23,6 +24,15 @@ var flattenHydratedBlock = /* @__PURE__ */ __name((hydratedBlock) => {
23
24
  blk
24
25
  ];
25
26
  }, "flattenHydratedBlock");
27
+ var tryUnflattenHydratedBlock = /* @__PURE__ */ __name((flattened) => {
28
+ const blk = flattened.at(-1);
29
+ const payloads = flattened.slice(0, -1);
30
+ return toHydratedBlock([
31
+ blk,
32
+ payloads
33
+ ]);
34
+ }, "tryUnflattenHydratedBlock");
35
+ var unflattenHydratedBlock = /* @__PURE__ */ __name((flattened) => toHydratedBlock(tryUnflattenHydratedBlock(flattened), true), "unflattenHydratedBlock");
26
36
 
27
37
  // src/block/hydrate/flattenHydratedBlocks.ts
28
38
  var flattenHydratedBlocks = /* @__PURE__ */ __name((hydratedBlocks) => hydratedBlocks.flatMap((blk) => flattenHydratedBlock(blk)), "flattenHydratedBlocks");
@@ -229,7 +239,7 @@ __name(readPayloadMapFromStore, "readPayloadMapFromStore");
229
239
  import { toFixedPoint } from "@xylabs/sdk-js";
230
240
  import { asAttoXL1 } from "@xyo-network/xl1-protocol";
231
241
  var rewardFromBlockNumber = /* @__PURE__ */ __name((places = 18) => {
232
- return (blockNumber, startingReward = asAttoXL1(toFixedPoint(30000n, places)), blocksPerStep = 1e6, stepFactorNumerator = 90n, stepFactorDenominator = 100n, minBlockReward = asAttoXL1(toFixedPoint(30n, places)), creatorReward = asAttoXL1(toFixedPoint(20000000000n, places))) => {
242
+ return (blockNumber, startingReward = asAttoXL1(toFixedPoint(500n, places)), blocksPerStep = 1e6, stepFactorNumerator = 95n, stepFactorDenominator = 100n, minBlockReward = asAttoXL1(toFixedPoint(10n, places)), creatorReward = asAttoXL1(toFixedPoint(20000000000n, places))) => {
233
243
  if (blockNumber === 0) {
234
244
  return creatorReward;
235
245
  }
@@ -582,7 +592,7 @@ var confirmSubmittedTransaction = /* @__PURE__ */ __name(async (viewer, txHash,
582
592
  // src/transaction/hydrateTransaction.ts
583
593
  import { assertEx as assertEx7 } from "@xylabs/sdk-js";
584
594
  import { hydrateTypedBoundWitness, tryHydrateTypedBoundWitness } from "@xyo-network/archivist-model";
585
- import { isAllowedBlockPayload as isAllowedBlockPayload2, isSignedTransactionBoundWitnessWithStorageMeta } from "@xyo-network/xl1-protocol";
595
+ import { asSignedHydratedTransaction, isAllowedBlockPayload as isAllowedBlockPayload2, isSignedTransactionBoundWitnessWithStorageMeta } from "@xyo-network/xl1-protocol";
586
596
  var tryHydrateTransaction = /* @__PURE__ */ __name(async ({ chainMap }, hash) => {
587
597
  return await tryHydrateTypedBoundWitness({
588
598
  get(hashes) {
@@ -610,6 +620,15 @@ var flattenHydratedTransaction = /* @__PURE__ */ __name((hydratedTransaction) =>
610
620
  tx
611
621
  ];
612
622
  }, "flattenHydratedTransaction");
623
+ var tryUnflattenHydratedTransaction = /* @__PURE__ */ __name((flattened) => {
624
+ const tx = flattened.at(-1);
625
+ const txPayloads = flattened.slice(0, -1);
626
+ return asSignedHydratedTransaction([
627
+ tx,
628
+ txPayloads
629
+ ]);
630
+ }, "tryUnflattenHydratedTransaction");
631
+ var unflattenHydratedTransaction = /* @__PURE__ */ __name((flattened) => asSignedHydratedTransaction(tryUnflattenHydratedTransaction(flattened), true), "unflattenHydratedTransaction");
613
632
  var flattenHydratedTransactions = /* @__PURE__ */ __name((hydratedTransactions) => hydratedTransactions.flatMap((tx) => flattenHydratedTransaction(tx)), "flattenHydratedTransactions");
614
633
  var tryHydrateElevatedTransaction = /* @__PURE__ */ __name(async ({ chainMap }, hash) => {
615
634
  const hydratedTransaction = await tryHydrateTransaction({
@@ -772,6 +791,14 @@ var bundle2 = /* @__PURE__ */ __name((root, transaction) => {
772
791
  }).build();
773
792
  }, "bundle");
774
793
 
794
+ // src/model/Provider.ts
795
+ import { assertEx as assertEx10, isString } from "@xylabs/sdk-js";
796
+ var asProviderMoniker = /* @__PURE__ */ __name((value) => {
797
+ const moniker = isString(value) ? value : void 0;
798
+ return assertEx10(moniker);
799
+ }, "asProviderMoniker");
800
+ var DefaultProviderMoniker = "Provider";
801
+
775
802
  // src/model/Qualified.ts
776
803
  import { HashZod } from "@xylabs/sdk-js";
777
804
  import { XL1BlockRangeZod } from "@xyo-network/xl1-protocol";
@@ -921,10 +948,9 @@ function toStepIdentityString({ block, step }) {
921
948
  }
922
949
  __name(toStepIdentityString, "toStepIdentityString");
923
950
 
924
- // src/config/Config.ts
925
- import * as z16 from "zod";
926
-
927
- // src/config/Api.ts
951
+ // src/config/Bridge.ts
952
+ import { AddressZod, HexZod, toAddress as toAddress3, toHex as toHex3 } from "@xylabs/hex";
953
+ import { AttoXL1ConvertFactor, XL1 } from "@xyo-network/xl1-protocol";
928
954
  import { globalRegistry } from "zod";
929
955
  import * as z3 from "zod";
930
956
 
@@ -989,60 +1015,150 @@ var MnemonicStringZod = z2.string().transform((s) => s.trim().replaceAll(/\s+/g,
989
1015
  message: "Mnemonic must contain 12, 15, 18, 21, or 24 words."
990
1016
  }).describe("BIP-39 mnemonic string");
991
1017
 
992
- // src/config/Api.ts
993
- var ApiConfigZod = z3.object({
1018
+ // src/config/Bridge.ts
1019
+ var DEFAULT_FIXED_FEE = toHex3(XL1(1n) * AttoXL1ConvertFactor.xl1);
1020
+ var DEFAULT_MIN_BRIDGE_AMOUNT = toHex3(XL1(10n) * AttoXL1ConvertFactor.xl1);
1021
+ var DEFAULT_MAX_BRIDGE_AMOUNT = toHex3(XL1(100000n) * AttoXL1ConvertFactor.xl1);
1022
+ var DEFAULT_HARDHAT_CHAIN_ID = toHex3("7A69");
1023
+ var DEFAULT_HARDHAT_TOKEN_CONTRACT = toAddress3("5FbDB2315678afecb367f032d93F642f64180aa3");
1024
+ var DEFAULT_HARDHAT_BRIDGE_CONTRACT = toAddress3("2279B7A0a67DB372996a5FaB50D91eAA73d2eBe6");
1025
+ var BasisPointsZod = z3.coerce.number().int().nonnegative().max(1e4);
1026
+ var BridgeConfigZod = z3.object({
1027
+ chainRpcApiUrl: z3.string().default("http://localhost:8080/rpc").register(globalRegistry, {
1028
+ default: "http://localhost:8080/rpc",
1029
+ description: "URL for the Chain RPC API",
1030
+ title: "bridge.chainRpcApiUrl",
1031
+ type: "string"
1032
+ }),
1033
+ escrowAddress: AddressZod.optional().register(globalRegistry, {
1034
+ description: "Address to which bridge escrow will be sent",
1035
+ title: "bridge.escrowAddress",
1036
+ type: "string"
1037
+ }),
1038
+ feesAddress: AddressZod.optional().register(globalRegistry, {
1039
+ description: "Address to which bridge fees will be sent",
1040
+ title: "bridge.feesAddress",
1041
+ type: "string"
1042
+ }),
1043
+ feeFixed: HexZod.default(DEFAULT_FIXED_FEE).register(globalRegistry, {
1044
+ default: DEFAULT_FIXED_FEE,
1045
+ description: "Fixed fee (in AttoXL1) applied to bridge transfers",
1046
+ title: "bridge.feeFixed",
1047
+ type: "bigint"
1048
+ }),
1049
+ feeRateBasisPoints: BasisPointsZod.default(500).register(globalRegistry, {
1050
+ default: 500,
1051
+ description: "Variable rate fee (in basis points where 1 bps = 0.01%) applied to bridge transfers",
1052
+ title: "bridge.feeRateBasisPoints",
1053
+ type: "number"
1054
+ }),
994
1055
  host: z3.string().default("localhost").register(globalRegistry, {
995
1056
  default: "localhost",
996
- description: "Host for the API",
997
- title: "api.host",
1057
+ description: "Host for the Bridge",
1058
+ title: "bridge.host",
998
1059
  type: "string"
999
1060
  }),
1000
- initRewardsCache: z3.union([
1001
- z3.number(),
1002
- z3.string()
1003
- ]).transform((v) => v !== "0" && v !== "false").default(true).register(globalRegistry, {
1004
- description: "Whether to initialize the rewards cache on startup",
1005
- title: "api.initRewardsCache",
1006
- type: "boolean"
1061
+ maxBridgeAmount: HexZod.default(DEFAULT_MAX_BRIDGE_AMOUNT).register(globalRegistry, {
1062
+ default: DEFAULT_MAX_BRIDGE_AMOUNT,
1063
+ description: "Maximum amount allowed for a bridge transfer",
1064
+ title: "bridge.maxBridgeAmount",
1065
+ type: "string"
1066
+ }),
1067
+ minBridgeAmount: HexZod.default(DEFAULT_MIN_BRIDGE_AMOUNT).register(globalRegistry, {
1068
+ default: DEFAULT_MIN_BRIDGE_AMOUNT,
1069
+ description: "Minimum amount required for a bridge transfer",
1070
+ title: "bridge.minBridgeAmount",
1071
+ type: "string"
1007
1072
  }),
1008
1073
  mnemonic: MnemonicStringZod.optional().register(globalRegistry, {
1009
- description: "Mnemonic for the API wallet",
1010
- title: "api.mnemonic",
1074
+ description: "Mnemonic for the Bridge wallet",
1075
+ title: "bridge.mnemonic",
1011
1076
  type: "string"
1012
1077
  }),
1013
- port: z3.coerce.number().default(8080).register(globalRegistry, {
1014
- default: 8080,
1015
- description: "Port for the API",
1016
- title: "api.port",
1078
+ port: z3.coerce.number().default(8081).register(globalRegistry, {
1079
+ default: 8081,
1080
+ description: "Port for the Bridge",
1081
+ title: "bridge.port",
1017
1082
  type: "number"
1083
+ }),
1084
+ remoteBridgeContractAddress: AddressZod.default(DEFAULT_HARDHAT_BRIDGE_CONTRACT).register(globalRegistry, {
1085
+ default: DEFAULT_HARDHAT_BRIDGE_CONTRACT,
1086
+ description: "Hex representation of remote token address used for bridging",
1087
+ title: "bridge.remoteBridgeContractAddress",
1088
+ type: "string"
1089
+ }),
1090
+ remoteChainId: HexZod.default(DEFAULT_HARDHAT_CHAIN_ID).register(globalRegistry, {
1091
+ default: DEFAULT_HARDHAT_CHAIN_ID,
1092
+ description: "Remote chain ID",
1093
+ title: "bridge.remoteChainId",
1094
+ type: "string"
1095
+ }),
1096
+ remoteTokenAddress: HexZod.default(DEFAULT_HARDHAT_TOKEN_CONTRACT).register(globalRegistry, {
1097
+ default: DEFAULT_HARDHAT_TOKEN_CONTRACT,
1098
+ description: "Hex representation of remote token address used for bridging",
1099
+ title: "bridge.remoteTokenAddress",
1100
+ type: "string"
1101
+ }),
1102
+ xl1ChainId: HexZod.optional().register(globalRegistry, {
1103
+ description: "XL1 chain id used for bridging",
1104
+ title: "bridge.xl1ChainId",
1105
+ type: "string"
1106
+ }),
1107
+ xl1TokenAddress: HexZod.optional().register(globalRegistry, {
1108
+ description: "XL1 token address used for bridging",
1109
+ title: "bridge.xl1TokenAddress",
1110
+ type: "string"
1018
1111
  })
1019
1112
  });
1113
+ var BridgeSettingsZod = BridgeConfigZod.pick({
1114
+ feeFixed: true,
1115
+ feeRateBasisPoints: true,
1116
+ feesAddress: true,
1117
+ escrowAddress: true,
1118
+ maxBridgeAmount: true,
1119
+ minBridgeAmount: true,
1120
+ remoteChainId: true,
1121
+ remoteTokenAddress: true,
1122
+ xl1TokenAddress: true,
1123
+ xl1ChainId: true
1124
+ }).required();
1020
1125
 
1021
- // src/config/Bridge.ts
1126
+ // src/config/Config.ts
1127
+ import * as z16 from "zod";
1128
+
1129
+ // src/config/Api.ts
1022
1130
  import { globalRegistry as globalRegistry2 } from "zod";
1023
1131
  import * as z4 from "zod";
1024
- var BridgeConfigZod = z4.object({
1132
+ var ApiConfigZod = z4.object({
1025
1133
  host: z4.string().default("localhost").register(globalRegistry2, {
1026
1134
  default: "localhost",
1027
- description: "Host for the Bridge",
1135
+ description: "Host for the API",
1028
1136
  title: "api.host",
1029
1137
  type: "string"
1030
1138
  }),
1139
+ initRewardsCache: z4.union([
1140
+ z4.number(),
1141
+ z4.string()
1142
+ ]).transform((v) => v !== "0" && v !== "false").default(true).register(globalRegistry2, {
1143
+ description: "Whether to initialize the rewards cache on startup",
1144
+ title: "api.initRewardsCache",
1145
+ type: "boolean"
1146
+ }),
1031
1147
  mnemonic: MnemonicStringZod.optional().register(globalRegistry2, {
1032
- description: "Mnemonic for the Bridge wallet",
1148
+ description: "Mnemonic for the API wallet",
1033
1149
  title: "api.mnemonic",
1034
1150
  type: "string"
1035
1151
  }),
1036
- port: z4.coerce.number().default(8081).register(globalRegistry2, {
1037
- default: 8081,
1038
- description: "Port for the Bridge",
1152
+ port: z4.coerce.number().default(8080).register(globalRegistry2, {
1153
+ default: 8080,
1154
+ description: "Port for the API",
1039
1155
  title: "api.port",
1040
1156
  type: "number"
1041
1157
  })
1042
1158
  });
1043
1159
 
1044
1160
  // src/config/Chain.ts
1045
- import { AddressZod } from "@xylabs/sdk-js";
1161
+ import { AddressZod as AddressZod2 } from "@xylabs/sdk-js";
1046
1162
  import { globalRegistry as globalRegistry3 } from "zod";
1047
1163
  import * as z5 from "zod";
1048
1164
  var ChainConfigZod = z5.object({
@@ -1051,7 +1167,7 @@ var ChainConfigZod = z5.object({
1051
1167
  title: "chain.id",
1052
1168
  type: "string"
1053
1169
  }),
1054
- genesisRewardAddress: AddressZod.optional().register(globalRegistry3, {
1170
+ genesisRewardAddress: AddressZod2.optional().register(globalRegistry3, {
1055
1171
  description: "Address to send the initial genesis rewards to, if a new chain is being created.",
1056
1172
  title: "chain.genesisRewardAddress",
1057
1173
  type: "Address"
@@ -1161,7 +1277,7 @@ var MempoolConfigZod = z8.object({
1161
1277
  });
1162
1278
 
1163
1279
  // src/config/Producer.ts
1164
- import { AddressZod as AddressZod2, asAddress } from "@xylabs/sdk-js";
1280
+ import { AddressZod as AddressZod3, asAddress } from "@xylabs/sdk-js";
1165
1281
  import { globalRegistry as globalRegistry7 } from "zod";
1166
1282
  import * as z9 from "zod";
1167
1283
  var ProducerConfigZod = z9.object({
@@ -1170,7 +1286,7 @@ var ProducerConfigZod = z9.object({
1170
1286
  return val.split(",").map((s) => asAddress(s.trim()));
1171
1287
  }
1172
1288
  return val;
1173
- }, z9.array(AddressZod2).optional().register(globalRegistry7, {
1289
+ }, z9.array(AddressZod3).optional().register(globalRegistry7, {
1174
1290
  description: "List of allowed producer addresses, if undefined anyone can participate",
1175
1291
  title: "allowlist",
1176
1292
  type: "array"
@@ -1347,7 +1463,7 @@ var TelemetryConfigZod = z14.object({
1347
1463
  }).describe("Telemetry configuration options");
1348
1464
 
1349
1465
  // src/config/Validation.ts
1350
- import { AddressZod as AddressZod3, asAddress as asAddress2 } from "@xylabs/sdk-js";
1466
+ import { AddressZod as AddressZod4, asAddress as asAddress2 } from "@xylabs/sdk-js";
1351
1467
  import { globalRegistry as globalRegistry13 } from "zod";
1352
1468
  import * as z15 from "zod";
1353
1469
  var ValidationConfigZod = z15.object({
@@ -1356,7 +1472,7 @@ var ValidationConfigZod = z15.object({
1356
1472
  return val.split(",").map((s) => asAddress2(s.trim()));
1357
1473
  }
1358
1474
  return val;
1359
- }, z15.array(AddressZod3).optional().register(globalRegistry13, {
1475
+ }, z15.array(AddressZod4).optional().register(globalRegistry13, {
1360
1476
  description: "List of allowed reward redeemer addresses, if undefined anyone can participate",
1361
1477
  title: "allowedRewardRedeemers",
1362
1478
  type: "array"
@@ -1366,7 +1482,7 @@ var ValidationConfigZod = z15.object({
1366
1482
  return val.split(",").map((s) => asAddress2(s.trim()));
1367
1483
  }
1368
1484
  return val;
1369
- }, z15.array(AddressZod3).optional().register(globalRegistry13, {
1485
+ }, z15.array(AddressZod4).optional().register(globalRegistry13, {
1370
1486
  description: "List of allowed reward escrow account signer addresses, if undefined anyone can participate",
1371
1487
  title: "allowedRewardEscrowAccountSigners",
1372
1488
  type: "array"
@@ -1434,6 +1550,226 @@ __name(isUsageMeta, "isUsageMeta");
1434
1550
  var XL1_NETWORK_STAKING_GENESIS_PERIOD_END_EPOCH = 1760572800;
1435
1551
  var XL1_NETWORK_STAKING_GENESIS_PERIOD_END_XL1_BLOCK = 107496;
1436
1552
 
1553
+ // src/CreatableProvider/AbstractCreatableProvider.ts
1554
+ import { AbstractCreatable } from "@xylabs/sdk-js";
1555
+
1556
+ // src/CreatableProvider/ProviderFactory.ts
1557
+ import { assertEx as assertEx11 } from "@xylabs/sdk-js";
1558
+ var ProviderFactory = class _ProviderFactory {
1559
+ static {
1560
+ __name(this, "ProviderFactory");
1561
+ }
1562
+ creatableProvider;
1563
+ defaultMoniker;
1564
+ defaultParams;
1565
+ labels;
1566
+ monikers;
1567
+ constructor(creatableProvider2, params, labels = {}) {
1568
+ this.creatableProvider = creatableProvider2;
1569
+ this.defaultParams = params;
1570
+ this.defaultMoniker = creatableProvider2.defaultMoniker;
1571
+ this.monikers = creatableProvider2.monikers;
1572
+ assertEx11(this.monikers.includes(this.defaultMoniker), () => "defaultMoniker must be in monikers");
1573
+ this.labels = Object.assign({}, creatableProvider2.labels ?? {}, labels ?? {});
1574
+ }
1575
+ static withParams(creatableProvider2, params, labels = {}) {
1576
+ return new _ProviderFactory(creatableProvider2, params, labels);
1577
+ }
1578
+ create(params) {
1579
+ const mergedParams = {
1580
+ ...this.defaultParams,
1581
+ ...params,
1582
+ config: {
1583
+ ...this.defaultParams?.config,
1584
+ ...params?.config
1585
+ }
1586
+ };
1587
+ return this.creatableProvider.create(mergedParams);
1588
+ }
1589
+ factory(params, labels = {}) {
1590
+ return new _ProviderFactory(this.creatableProvider, params, labels);
1591
+ }
1592
+ };
1593
+
1594
+ // src/CreatableProvider/AbstractCreatableProvider.ts
1595
+ var AbstractCreatableProvider = class extends AbstractCreatable {
1596
+ static {
1597
+ __name(this, "AbstractCreatableProvider");
1598
+ }
1599
+ static factory(params) {
1600
+ return ProviderFactory.withParams(this, params);
1601
+ }
1602
+ };
1603
+
1604
+ // src/CreatableProvider/CreatableProvider.ts
1605
+ function creatableProvider() {
1606
+ return (constructor) => {
1607
+ constructor;
1608
+ };
1609
+ }
1610
+ __name(creatableProvider, "creatableProvider");
1611
+ function labeledCreatableProvider() {
1612
+ return (constructor) => {
1613
+ constructor;
1614
+ };
1615
+ }
1616
+ __name(labeledCreatableProvider, "labeledCreatableProvider");
1617
+
1618
+ // src/CreatableProvider/CreatableProviderRegistry.ts
1619
+ import { isTruthy } from "@xylabs/sdk-js";
1620
+ var buildProviderFactory = /* @__PURE__ */ __name((provider, labels) => {
1621
+ const factory = {
1622
+ // Destructure instance properties
1623
+ ...provider,
1624
+ monikers: provider.monikers,
1625
+ // Copy static methods
1626
+ create: provider.create.bind(provider),
1627
+ // Merge module & supplied labels
1628
+ labels: {
1629
+ ...provider.labels,
1630
+ ...labels
1631
+ }
1632
+ };
1633
+ return factory;
1634
+ }, "buildProviderFactory");
1635
+ var registerCreatableProviderFactory = /* @__PURE__ */ __name((registry, factory, labels, primary = false) => {
1636
+ const primaryMonikers = primary !== true && isTruthy(primary) ? Array.isArray(primary) ? primary : [
1637
+ primary
1638
+ ] : [];
1639
+ for (const primaryMoniker of primaryMonikers) {
1640
+ if (!factory.monikers.includes(primaryMoniker)) {
1641
+ console.warn(`Primary moniker ${primary} not found in factory monikers`);
1642
+ }
1643
+ }
1644
+ const isPrimaryForMoniker = /* @__PURE__ */ __name((moniker) => {
1645
+ switch (typeof primary) {
1646
+ case "boolean": {
1647
+ return primary;
1648
+ }
1649
+ case "string": {
1650
+ return moniker === primary;
1651
+ }
1652
+ case "object": {
1653
+ if (Array.isArray(primary)) {
1654
+ return primary.includes(moniker);
1655
+ }
1656
+ }
1657
+ }
1658
+ throw new Error(`Invalid primary value: ${primary}`);
1659
+ }, "isPrimaryForMoniker");
1660
+ const factoryClone = buildProviderFactory(factory, labels);
1661
+ registry[factoryClone.defaultMoniker] = [
1662
+ factoryClone,
1663
+ ...registry[factoryClone.defaultMoniker] ?? []
1664
+ ];
1665
+ for (const moniker of factoryClone.monikers) {
1666
+ registry[moniker] = isPrimaryForMoniker(moniker) ? [
1667
+ factoryClone,
1668
+ ...registry[moniker] ?? []
1669
+ ] : [
1670
+ ...registry[moniker] ?? [],
1671
+ factoryClone
1672
+ ];
1673
+ }
1674
+ }, "registerCreatableProviderFactory");
1675
+ var registerCreatableProviderFactories = /* @__PURE__ */ __name((factories, registry = {}, primary = false) => {
1676
+ for (const factory of factories) {
1677
+ registerCreatableProviderFactory(registry, factory, void 0, primary);
1678
+ }
1679
+ return registry;
1680
+ }, "registerCreatableProviderFactories");
1681
+
1682
+ // src/CreatableProvider/LabeledCreatableProviderFactory.ts
1683
+ var hasLabels = /* @__PURE__ */ __name((factory) => {
1684
+ return factory.labels !== void 0;
1685
+ }, "hasLabels");
1686
+ function labeledCreatableProviderFactory() {
1687
+ return (constructor) => {
1688
+ constructor;
1689
+ };
1690
+ }
1691
+ __name(labeledCreatableProviderFactory, "labeledCreatableProviderFactory");
1692
+
1693
+ // src/CreatableProvider/ProviderFactoryLocator.ts
1694
+ import { hasAllLabels } from "@xylabs/sdk-js";
1695
+ import { assertEx as assertEx12 } from "@xylabs/sdk-js";
1696
+ var ProviderFactoryLocator = class _ProviderFactoryLocator {
1697
+ static {
1698
+ __name(this, "ProviderFactoryLocator");
1699
+ }
1700
+ _registry;
1701
+ _frozen = false;
1702
+ constructor(registry = {}) {
1703
+ this._registry = registry;
1704
+ }
1705
+ /**
1706
+ * The current registry for the module factory
1707
+ */
1708
+ get registry() {
1709
+ return this._registry;
1710
+ }
1711
+ static empty() {
1712
+ return new _ProviderFactoryLocator({});
1713
+ }
1714
+ static standard() {
1715
+ return new _ProviderFactoryLocator({});
1716
+ }
1717
+ freeze() {
1718
+ this._frozen = true;
1719
+ }
1720
+ /**
1721
+ * Locates a provider factory that matches the supplied schema and labels
1722
+ * @param schema The config schema for the provider
1723
+ * @param labels The labels for the provider factory
1724
+ * @returns A provider factory that matches the supplied schema and labels or throws if one is not found
1725
+ */
1726
+ locate(moniker, labels) {
1727
+ return assertEx12(this.tryLocate(moniker, labels), () => `No module factory for the supplied config schema [${moniker}]${labels ? ` & labels [${JSON.stringify(labels)}]` : ""} registered`);
1728
+ }
1729
+ merge(locator) {
1730
+ const registry = {
1731
+ ...this.registry
1732
+ };
1733
+ for (const moniker in locator.registry) {
1734
+ if (registry[moniker]) {
1735
+ registry[moniker].push(...locator.registry[moniker] ?? []);
1736
+ } else {
1737
+ registry[moniker] = locator.registry[moniker];
1738
+ }
1739
+ }
1740
+ return new _ProviderFactoryLocator(registry);
1741
+ }
1742
+ /**
1743
+ * Registers a single module factory (with optional tags) with the locator
1744
+ * @param factory The factory to register
1745
+ * @param labels The labels for the module factory
1746
+ */
1747
+ register(factory, labels, primary = false) {
1748
+ assertEx12(!this._frozen, () => "Cannot register a module factory after the locator has been frozen");
1749
+ registerCreatableProviderFactory(this._registry, factory, labels, primary);
1750
+ return this;
1751
+ }
1752
+ /**
1753
+ * Registers multiple module factories with the locator
1754
+ * @param factories The factories to register
1755
+ */
1756
+ registerMany(factories) {
1757
+ for (const factory of factories) {
1758
+ this.register(factory);
1759
+ }
1760
+ return this;
1761
+ }
1762
+ /**
1763
+ * Tries to locate a module factory that matches the supplied schema and labels
1764
+ * @param schema The config schema for the module
1765
+ * @param labels The labels for the module factory
1766
+ * @returns A module factory that matches the supplied schema and labels or undefined
1767
+ */
1768
+ tryLocate(moniker, labels) {
1769
+ return labels ? this._registry[moniker]?.filter(hasLabels).find((factory) => hasAllLabels(factory?.labels, labels)) ?? this._registry[moniker]?.[0] : this._registry[moniker]?.[0];
1770
+ }
1771
+ };
1772
+
1437
1773
  // src/eip-712/Payloads/EIP712Data.ts
1438
1774
  import { AsObjectFactory } from "@xylabs/sdk-js";
1439
1775
  import { isPayloadOfZodType } from "@xyo-network/payload-model";
@@ -1534,8 +1870,8 @@ var asAddressPairPayload = AsObjectFactory3.create(isAddressPairPayload);
1534
1870
  var asOptionalAddressPairPayload = AsObjectFactory3.createOptional(isAddressPairPayload);
1535
1871
 
1536
1872
  // src/payloads/netBalancesForPayloads.ts
1537
- import { hexToBigInt, toAddress as toAddress3 } from "@xylabs/sdk-js";
1538
- import { span } from "@xylabs/telemetry";
1873
+ import { hexToBigInt, toAddress as toAddress4 } from "@xylabs/sdk-js";
1874
+ import { span } from "@xylabs/sdk-js";
1539
1875
  import { isTransfer } from "@xyo-network/xl1-protocol";
1540
1876
  var netBalancesForPayloads = /* @__PURE__ */ __name((payloads) => {
1541
1877
  return span("netBalancesForPayloads", () => {
@@ -1544,8 +1880,8 @@ var netBalancesForPayloads = /* @__PURE__ */ __name((payloads) => {
1544
1880
  if (isTransfer(payload)) {
1545
1881
  const { from } = payload;
1546
1882
  for (let [address, amount] of Object.entries(payload.transfers)) {
1547
- balances[toAddress3(address)] = (balances[toAddress3(address)] ?? 0n) + hexToBigInt(amount);
1548
- balances[toAddress3(from)] = (balances[toAddress3(from)] ?? 0n) - hexToBigInt(amount);
1883
+ balances[toAddress4(address)] = (balances[toAddress4(address)] ?? 0n) + hexToBigInt(amount);
1884
+ balances[toAddress4(from)] = (balances[toAddress4(from)] ?? 0n) - hexToBigInt(amount);
1549
1885
  }
1550
1886
  }
1551
1887
  }
@@ -1554,8 +1890,8 @@ var netBalancesForPayloads = /* @__PURE__ */ __name((payloads) => {
1554
1890
  }, "netBalancesForPayloads");
1555
1891
 
1556
1892
  // src/payloads/netSchemasForPayloads.ts
1557
- import { hexToBigInt as hexToBigInt2, toAddress as toAddress4 } from "@xylabs/sdk-js";
1558
- import { span as span2 } from "@xylabs/telemetry";
1893
+ import { hexToBigInt as hexToBigInt2, toAddress as toAddress5 } from "@xylabs/sdk-js";
1894
+ import { span as span2 } from "@xylabs/sdk-js";
1559
1895
  import { isTransfer as isTransfer2 } from "@xyo-network/xl1-protocol";
1560
1896
  var netSchemasForPayloads = /* @__PURE__ */ __name((payloads) => {
1561
1897
  return span2("netSchemasForPayloads", () => {
@@ -1564,8 +1900,8 @@ var netSchemasForPayloads = /* @__PURE__ */ __name((payloads) => {
1564
1900
  if (isTransfer2(payload)) {
1565
1901
  const { from } = payload;
1566
1902
  for (let [address, amount] of Object.entries(payload.transfers)) {
1567
- balances[toAddress4(address)] = (balances[toAddress4(address)] ?? 0n) + hexToBigInt2(amount);
1568
- balances[toAddress4(from)] = (balances[toAddress4(from)] ?? 0n) - hexToBigInt2(amount);
1903
+ balances[toAddress5(address)] = (balances[toAddress5(address)] ?? 0n) + hexToBigInt2(amount);
1904
+ balances[toAddress5(from)] = (balances[toAddress5(from)] ?? 0n) - hexToBigInt2(amount);
1569
1905
  }
1570
1906
  }
1571
1907
  }
@@ -1575,7 +1911,7 @@ var netSchemasForPayloads = /* @__PURE__ */ __name((payloads) => {
1575
1911
 
1576
1912
  // src/payloads/netTransfersForPayloads.ts
1577
1913
  import { hexToBigInt as hexToBigInt3 } from "@xylabs/sdk-js";
1578
- import { span as span3 } from "@xylabs/telemetry";
1914
+ import { span as span3 } from "@xylabs/sdk-js";
1579
1915
  import { isTransfer as isTransfer3 } from "@xyo-network/xl1-protocol";
1580
1916
  function netTransfersForPayloads(payloads) {
1581
1917
  return span3("netTransfersForPayloads", () => {
@@ -1596,6 +1932,31 @@ function netTransfersForPayloads(payloads) {
1596
1932
  }
1597
1933
  __name(netTransfersForPayloads, "netTransfersForPayloads");
1598
1934
 
1935
+ // src/provider/DataLake.ts
1936
+ var DataLakeViewerMoniker = "DataLakeViewer";
1937
+ var DataLakeRunnerMoniker = "DataLakeRunner";
1938
+
1939
+ // src/provider/viewer/NetworkStake/NetworkStakeViewer.ts
1940
+ var NetworkStakeViewerMoniker = "NetworkStakeViewer";
1941
+
1942
+ // src/provider/viewer/NetworkStake/Rewards/ByPositionViewer.ts
1943
+ var NetworkStakeStepRewardsByPositionViewerMoniker = "NetworkStakeStepRewardsByPositionViewer";
1944
+
1945
+ // src/provider/viewer/NetworkStake/Rewards/ByStakerViewer.ts
1946
+ var NetworkStakeStepRewardsByStakerViewerMoniker = "NetworkStakeStepRewardsByStakerViewer";
1947
+
1948
+ // src/provider/viewer/NetworkStake/Rewards/ByStepViewer.ts
1949
+ var NetworkStakeStepRewardsByStepViewerMoniker = "NetworkStakeStepRewardsByStepViewer";
1950
+
1951
+ // src/provider/viewer/NetworkStake/Rewards/TotalViewer.ts
1952
+ var NetworkStakeStepRewardsTotalViewerMoniker = "NetworkStakeStepRewardsTotalViewer";
1953
+
1954
+ // src/provider/viewer/NetworkStake/Rewards/Viewer.ts
1955
+ var NetworkStakeStepRewardsViewerMoniker = "NetworkStakeStepRewardsViewer";
1956
+
1957
+ // src/provider/viewer/XyoViewer.ts
1958
+ var XyoViewerMoniker = "XyoViewer";
1959
+
1599
1960
  // src/services/StakeIntentService/ChainIndexingServiceStateSchema.ts
1600
1961
  import { AsObjectFactory as AsObjectFactory4 } from "@xylabs/sdk-js";
1601
1962
  import { isPayloadOfSchemaType as isPayloadOfSchemaType2, isStorageMeta } from "@xyo-network/payload-model";
@@ -1608,7 +1969,7 @@ var isChainIndexingServiceStateWithStorageMeta = /* @__PURE__ */ __name((value)
1608
1969
  var asChainIndexingServiceStateWithStorageMeta = AsObjectFactory4.create(isChainIndexingServiceStateWithStorageMeta);
1609
1970
 
1610
1971
  // src/SignedBigInt.ts
1611
- import { hexToBigInt as hexToBigInt4, toHex as toHex3 } from "@xylabs/sdk-js";
1972
+ import { hexToBigInt as hexToBigInt4, toHex as toHex4 } from "@xylabs/sdk-js";
1612
1973
  import { isObject } from "@xylabs/sdk-js";
1613
1974
  var isNegativeBigInt = /* @__PURE__ */ __name((value) => {
1614
1975
  return isObject(value) && "negative" in value && typeof value.negative === "string";
@@ -1627,15 +1988,15 @@ var parseSignedBigInt = /* @__PURE__ */ __name((value) => {
1627
1988
  }, "parseSignedBigInt");
1628
1989
  var toSignedBigInt = /* @__PURE__ */ __name((value) => {
1629
1990
  return value < 0n ? {
1630
- negative: toHex3(-value)
1991
+ negative: toHex4(-value)
1631
1992
  } : {
1632
- positive: toHex3(value)
1993
+ positive: toHex4(value)
1633
1994
  };
1634
1995
  }, "toSignedBigInt");
1635
1996
  var toPositiveBigInt = /* @__PURE__ */ __name((value) => {
1636
1997
  if (isNegativeBigInt(value)) {
1637
1998
  return {
1638
- positive: toHex3(0n)
1999
+ positive: toHex4(0n)
1639
2000
  };
1640
2001
  }
1641
2002
  if (isPositiveBigInt(value)) {
@@ -1645,15 +2006,14 @@ var toPositiveBigInt = /* @__PURE__ */ __name((value) => {
1645
2006
  }
1646
2007
  if (typeof value === "bigint") {
1647
2008
  return {
1648
- positive: toHex3(value)
2009
+ positive: toHex4(value)
1649
2010
  };
1650
2011
  }
1651
2012
  throw new Error("Invalid value for positive big int");
1652
2013
  }, "toPositiveBigInt");
1653
2014
 
1654
2015
  // src/simple/accountBalance/SimpleAccountBalanceViewer.ts
1655
- import { AbstractCreatable, asHash as asHash5, assertEx as assertEx13, exists, isDefined as isDefined11 } from "@xylabs/sdk-js";
1656
- import { spanRootAsync as spanRootAsync4 } from "@xylabs/telemetry";
2016
+ import { asHash as asHash5, assertEx as assertEx16, exists, isDefined as isDefined11, spanRootAsync as spanRootAsync4 } from "@xylabs/sdk-js";
1657
2017
  import { asRange, asXL1BlockNumber as asXL1BlockNumber5, asXL1BlockRange as asXL1BlockRange5, AttoXL1 as AttoXL12, StepSizes as StepSizes9, TransferSchema } from "@xyo-network/xl1-protocol";
1658
2018
 
1659
2019
  // src/summary/model/BalancesStepSummary.ts
@@ -1693,7 +2053,7 @@ var isTransfersStepSummaryWithStorageMeta = /* @__PURE__ */ __name((value) => {
1693
2053
  var asTransfersStepSummaryWithStorageMeta = AsObjectFactory7.create(isTransfersStepSummaryWithStorageMeta);
1694
2054
 
1695
2055
  // src/summary/primitives/balances/balancesStepSummaryFromRange.ts
1696
- import { assertEx as assertEx10 } from "@xylabs/sdk-js";
2056
+ import { assertEx as assertEx13 } from "@xylabs/sdk-js";
1697
2057
  import { PayloadBuilder as PayloadBuilder11 } from "@xyo-network/payload-builder";
1698
2058
  import { isAnyPayload } from "@xyo-network/payload-model";
1699
2059
  import { StepSizes as StepSizes6 } from "@xyo-network/xl1-protocol";
@@ -1717,7 +2077,7 @@ async function balancesStepSummaryFromRange(context, range) {
1717
2077
  };
1718
2078
  } else {
1719
2079
  const step = StepSizes6.indexOf(frameSize);
1720
- assertEx10(step !== -1, () => `Invalid step size: ${frameSize}. Must be one of ${StepSizes6.join(", ")}`);
2080
+ assertEx13(step !== -1, () => `Invalid step size: ${frameSize}. Must be one of ${StepSizes6.join(", ")}`);
1721
2081
  const summaryResult = await context.summaryMap.get(`${frameHeadHash}|${frameSize}`);
1722
2082
  if (isAnyPayload(summaryResult)) {
1723
2083
  result = summaryResult;
@@ -1755,8 +2115,7 @@ async function balancesStepSummaryFromRange(context, range) {
1755
2115
  __name(balancesStepSummaryFromRange, "balancesStepSummaryFromRange");
1756
2116
 
1757
2117
  // src/summary/primitives/balances/balancesSummary.ts
1758
- import { asAddress as asAddress3, isDefined as isDefined8 } from "@xylabs/sdk-js";
1759
- import { spanRootAsync } from "@xylabs/telemetry";
2118
+ import { asAddress as asAddress3, isDefined as isDefined8, spanRootAsync } from "@xylabs/sdk-js";
1760
2119
  import { asBlockBoundWitnessWithStorageMeta as asBlockBoundWitnessWithStorageMeta2, asXL1BlockNumber as asXL1BlockNumber2, asXL1BlockRange as asXL1BlockRange2 } from "@xyo-network/xl1-protocol";
1761
2120
  async function balancesSummary(context) {
1762
2121
  return await spanRootAsync("balancesSummary", async () => {
@@ -1791,7 +2150,7 @@ async function balancesSummary(context) {
1791
2150
  __name(balancesSummary, "balancesSummary");
1792
2151
 
1793
2152
  // src/summary/primitives/schemas/schemasStepSummaryFromRange.ts
1794
- import { assertEx as assertEx11 } from "@xylabs/sdk-js";
2153
+ import { assertEx as assertEx14 } from "@xylabs/sdk-js";
1795
2154
  import { isBoundWitness } from "@xyo-network/boundwitness-model";
1796
2155
  import { PayloadBuilder as PayloadBuilder12 } from "@xyo-network/payload-builder";
1797
2156
  import { isAnyPayload as isAnyPayload2, isHashMeta } from "@xyo-network/payload-model";
@@ -1823,7 +2182,7 @@ async function schemasStepSummaryFromRange(context, range) {
1823
2182
  };
1824
2183
  } else {
1825
2184
  const step = StepSizes7.indexOf(frameSize);
1826
- assertEx11(step !== -1, () => `Invalid step size: ${frameSize}. Must be one of ${StepSizes7.join(", ")}`);
2185
+ assertEx14(step !== -1, () => `Invalid step size: ${frameSize}. Must be one of ${StepSizes7.join(", ")}`);
1827
2186
  const summaryResult = await context.summaryMap.get(`${frameHeadHash}|${frameSize}`);
1828
2187
  if (isAnyPayload2(summaryResult)) {
1829
2188
  result = summaryResult;
@@ -1856,8 +2215,7 @@ async function schemasStepSummaryFromRange(context, range) {
1856
2215
  __name(schemasStepSummaryFromRange, "schemasStepSummaryFromRange");
1857
2216
 
1858
2217
  // src/summary/primitives/schemas/schemasSummary.ts
1859
- import { isDefined as isDefined9 } from "@xylabs/sdk-js";
1860
- import { spanRootAsync as spanRootAsync2 } from "@xylabs/telemetry";
2218
+ import { isDefined as isDefined9, spanRootAsync as spanRootAsync2 } from "@xylabs/sdk-js";
1861
2219
  import { asBlockBoundWitnessWithStorageMeta as asBlockBoundWitnessWithStorageMeta3, asXL1BlockNumber as asXL1BlockNumber3, asXL1BlockRange as asXL1BlockRange3 } from "@xyo-network/xl1-protocol";
1862
2220
  async function schemasSummary(context) {
1863
2221
  return await spanRootAsync2("schemasSummary", async () => {
@@ -1891,14 +2249,13 @@ async function schemasSummary(context) {
1891
2249
  __name(schemasSummary, "schemasSummary");
1892
2250
 
1893
2251
  // src/summary/primitives/transfers/transfersStepSummaryFromRange.ts
1894
- import { assertEx as assertEx12 } from "@xylabs/sdk-js";
2252
+ import { assertEx as assertEx15 } from "@xylabs/sdk-js";
1895
2253
  import { PayloadBuilder as PayloadBuilder13 } from "@xyo-network/payload-builder";
1896
2254
  import { isAnyPayload as isAnyPayload3 } from "@xyo-network/payload-model";
1897
2255
  import { StepSizes as StepSizes8 } from "@xyo-network/xl1-protocol";
1898
2256
 
1899
2257
  // src/summary/primitives/transfers/transfersSummary.ts
1900
- import { asAddress as asAddress4, isDefined as isDefined10 } from "@xylabs/sdk-js";
1901
- import { spanRootAsync as spanRootAsync3 } from "@xylabs/telemetry";
2258
+ import { asAddress as asAddress4, isDefined as isDefined10, spanRootAsync as spanRootAsync3 } from "@xylabs/sdk-js";
1902
2259
  import { asBlockBoundWitnessWithStorageMeta as asBlockBoundWitnessWithStorageMeta4, asXL1BlockNumber as asXL1BlockNumber4, asXL1BlockRange as asXL1BlockRange4 } from "@xyo-network/xl1-protocol";
1903
2260
  async function transfersSummary(transferContext) {
1904
2261
  return await spanRootAsync3("transferSummary", async () => {
@@ -1964,7 +2321,7 @@ async function transfersStepSummaryFromRange(context, range) {
1964
2321
  };
1965
2322
  } else {
1966
2323
  const step = StepSizes8.indexOf(frameSize);
1967
- assertEx12(step !== -1, () => `Invalid step size: ${frameSize}. Must be one of ${StepSizes8.join(", ")}`);
2324
+ assertEx15(step !== -1, () => `Invalid step size: ${frameSize}. Must be one of ${StepSizes8.join(", ")}`);
1968
2325
  const key = transfersSummaryKey(frameHeadHash, frameSize);
1969
2326
  const summaryResult = await context.summaryMap.get(key);
1970
2327
  if (isAnyPayload3(summaryResult)) {
@@ -2008,11 +2365,96 @@ async function transfersStepSummaryFromRange(context, range) {
2008
2365
  }
2009
2366
  __name(transfersStepSummaryFromRange, "transfersStepSummaryFromRange");
2010
2367
 
2368
+ // src/viewers/AccountBalance.ts
2369
+ import { WithHashMetaZod } from "@xyo-network/payload-model";
2370
+ import { TransferZod } from "@xyo-network/xl1-protocol";
2371
+ import { BlockBoundWitnessZod, TransactionBoundWitnessZod } from "@xyo-network/xl1-protocol";
2372
+ import z21 from "zod";
2373
+ var AccountBalanceHistoryItemZod = z21.tuple([
2374
+ WithHashMetaZod(BlockBoundWitnessZod),
2375
+ WithHashMetaZod(TransactionBoundWitnessZod).nullable(),
2376
+ WithHashMetaZod(TransferZod)
2377
+ ]);
2378
+ var AccountBalanceViewerMoniker = "AccountBalanceViewer";
2379
+
2380
+ // src/viewers/Block.ts
2381
+ var BlockViewerMoniker = "BlockViewer";
2382
+
2383
+ // src/viewers/BlockReward.ts
2384
+ var BlockRewardViewerMoniker = "BlockRewardViewer";
2385
+
2386
+ // src/viewers/Chain.ts
2387
+ var ChainViewerMoniker = "ChainViewer";
2388
+
2389
+ // src/viewers/ChainContract.ts
2390
+ var ChainContractViewerMoniker = "ChainContractViewer";
2391
+
2392
+ // src/viewers/ChainStakeViewer.ts
2393
+ var ChainStakeViewerMoniker = "ChainStakeViewer";
2394
+
2395
+ // src/viewers/Mempool.ts
2396
+ import { HashZod as HashZod3 } from "@xylabs/sdk-js";
2397
+ import { XL1BlockRangeZod as XL1BlockRangeZod2 } from "@xyo-network/xl1-protocol";
2398
+ import z22 from "zod";
2399
+ var PendingTransactionsOptionsZod = z22.object({
2400
+ cursor: HashZod3.optional(),
2401
+ limit: z22.number().int().positive().optional(),
2402
+ window: XL1BlockRangeZod2.optional()
2403
+ });
2404
+ var PendingBlocksOptionsZod = z22.object({
2405
+ cursor: HashZod3.optional(),
2406
+ limit: z22.number().int().positive().optional(),
2407
+ window: XL1BlockRangeZod2.optional()
2408
+ });
2409
+ var MempoolViewerMoniker = "MempoolViewer";
2410
+
2411
+ // src/viewers/NetworkStakeStepReward.ts
2412
+ var NetworkStakeStepRewardViewerMoniker = "NetworkStakeStepRewardViewer";
2413
+
2414
+ // src/viewers/Stake.ts
2415
+ var StakeViewerMoniker = "StakeViewer";
2416
+ var StakeRunnerMoniker = "StakeRunner";
2417
+
2418
+ // src/viewers/StakeEvents.ts
2419
+ var StakeEventNames = [
2420
+ "StakeAdded",
2421
+ "StakeRemoved",
2422
+ "StakeWithdrawn"
2423
+ ];
2424
+ var StakeEventsViewerMoniker = "StakeEventsViewer";
2425
+
2426
+ // src/viewers/StakeTotals.ts
2427
+ var StakeTotalsViewerMoniker = "StakeTotalsViewer";
2428
+
2429
+ // src/viewers/StepStake.ts
2430
+ var StepStakeViewerMoniker = "StepStakeViewer";
2431
+
2432
+ // src/viewers/StepViewer.ts
2433
+ var StepViewerMoniker = "StepViewer";
2434
+
2435
+ // src/viewers/TimeSync.ts
2436
+ var TimeSyncViewerMoniker = "TimeSyncViewer";
2437
+
2438
+ // src/viewers/TransferBalance.ts
2439
+ var TransferBalanceViewerMoniker = "TransferBalanceViewer";
2440
+
2011
2441
  // src/simple/accountBalance/SimpleAccountBalanceViewer.ts
2012
- var SimpleAccountBalanceViewer = class extends AbstractCreatable {
2442
+ function _ts_decorate(decorators, target, key, desc) {
2443
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
2444
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
2445
+ 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;
2446
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
2447
+ }
2448
+ __name(_ts_decorate, "_ts_decorate");
2449
+ var SimpleAccountBalanceViewer = class _SimpleAccountBalanceViewer extends AbstractCreatableProvider {
2013
2450
  static {
2014
2451
  __name(this, "SimpleAccountBalanceViewer");
2015
2452
  }
2453
+ static defaultMoniker = AccountBalanceViewerMoniker;
2454
+ static monikers = [
2455
+ AccountBalanceViewerMoniker
2456
+ ];
2457
+ moniker = _SimpleAccountBalanceViewer.defaultMoniker;
2016
2458
  get blockViewer() {
2017
2459
  return this.params.blockViewer;
2018
2460
  }
@@ -2023,9 +2465,9 @@ var SimpleAccountBalanceViewer = class extends AbstractCreatable {
2023
2465
  return this.params.transfersSummaryContext;
2024
2466
  }
2025
2467
  static async paramsHandler(params) {
2026
- assertEx13(params.blockViewer, () => "blockViewer is required");
2027
- assertEx13(params.context, () => "context is required");
2028
- assertEx13(params.transfersSummaryContext, () => "transfersSummaryContext is required");
2468
+ assertEx16(params.blockViewer, () => "blockViewer is required");
2469
+ assertEx16(params.context, () => "context is required");
2470
+ assertEx16(params.transfersSummaryContext, () => "transfersSummaryContext is required");
2029
2471
  return {
2030
2472
  ...await super.paramsHandler(params)
2031
2473
  };
@@ -2052,7 +2494,7 @@ var SimpleAccountBalanceViewer = class extends AbstractCreatable {
2052
2494
  const transferIndexes = block[0].payload_schemas.map((schema, index) => schema === TransferSchema ? index : void 0).filter(exists);
2053
2495
  const transfers = transferIndexes.map((index) => {
2054
2496
  const hash = block[0].payload_hashes[index];
2055
- return assertEx13(block[1].find((p) => p._hash === hash), () => `Error: Could not find Transfer with hash ${hash} in block ${block[0]._hash}`);
2497
+ return assertEx16(block[1].find((p) => p._hash === hash), () => `Error: Could not find Transfer with hash ${hash} in block ${block[0]._hash}`);
2056
2498
  }).filter(exists).filter((t) => t.from === address || isDefined11(t.transfers[address]));
2057
2499
  if (transfers.length === 0) {
2058
2500
  continue;
@@ -2079,7 +2521,7 @@ var SimpleAccountBalanceViewer = class extends AbstractCreatable {
2079
2521
  const head = asHash5(headOrRange) ?? await this.blockViewer.currentBlockHash();
2080
2522
  const range = asXL1BlockRange5(headOrRange) ?? asXL1BlockRange5([
2081
2523
  0,
2082
- assertEx13(await this.blockViewer.blockByHash(head), () => `Error: Could not find block with hash ${head}`)[0].block
2524
+ assertEx16(await this.blockViewer.blockByHash(head), () => `Error: Could not find block with hash ${head}`)[0].block
2083
2525
  ]);
2084
2526
  const qualifiedEntries = await Promise.all(addresses.map(async (address) => [
2085
2527
  address,
@@ -2094,8 +2536,8 @@ var SimpleAccountBalanceViewer = class extends AbstractCreatable {
2094
2536
  const qualifiedRange = qualifiedEntries[0][1][1];
2095
2537
  const qualifiedHeadHash = qualifiedEntries[0][1][2];
2096
2538
  for (const [_, [__, range2, headHash]] of qualifiedEntries) {
2097
- assertEx13(range2[0] === qualifiedRange[0] && range2[1] === qualifiedRange[1], () => "Inconsistent ranges in qualifiedAccountBalanceHistories");
2098
- assertEx13(headHash === qualifiedHeadHash, () => "Inconsistent head hashes in qualifiedAccountBalanceHistories");
2539
+ assertEx16(range2[0] === qualifiedRange[0] && range2[1] === qualifiedRange[1], () => "Inconsistent ranges in qualifiedAccountBalanceHistories");
2540
+ assertEx16(headHash === qualifiedHeadHash, () => "Inconsistent head hashes in qualifiedAccountBalanceHistories");
2099
2541
  }
2100
2542
  return [
2101
2543
  Object.fromEntries(entries),
@@ -2162,7 +2604,7 @@ var SimpleAccountBalanceViewer = class extends AbstractCreatable {
2162
2604
  async qualifiedAccountBalanceHistory(address, headOrRange) {
2163
2605
  const range = asRange(headOrRange);
2164
2606
  const headHash = asHash5(headOrRange);
2165
- const [head] = assertEx13(isDefined11(headHash) ? await this.blockViewer.blockByHash(headHash) : await this.blockViewer.currentBlock(), () => "Could not resolve head block");
2607
+ const [head] = assertEx16(isDefined11(headHash) ? await this.blockViewer.blockByHash(headHash) : await this.blockViewer.currentBlock(), () => "Could not resolve head block");
2166
2608
  const startingRange = asXL1BlockRange5(range ?? [
2167
2609
  0,
2168
2610
  head.block
@@ -2174,7 +2616,7 @@ var SimpleAccountBalanceViewer = class extends AbstractCreatable {
2174
2616
  const transferIndexes = block[0].payload_schemas.map((schema, index) => schema === TransferSchema ? index : void 0).filter(exists);
2175
2617
  const transfers = transferIndexes.map((index) => {
2176
2618
  const hash = block[0].payload_hashes[index];
2177
- return assertEx13(block[1].find((p) => p._hash === hash), () => `Error: Could not find Transfer with hash ${hash} in block ${block[0]._hash}`);
2619
+ return assertEx16(block[1].find((p) => p._hash === hash), () => `Error: Could not find Transfer with hash ${hash} in block ${block[0]._hash}`);
2178
2620
  }).filter(exists).filter((t) => t.from === address || isDefined11(t.transfers[address]));
2179
2621
  if (transfers.length === 0) {
2180
2622
  continue;
@@ -2198,9 +2640,12 @@ var SimpleAccountBalanceViewer = class extends AbstractCreatable {
2198
2640
  ];
2199
2641
  }
2200
2642
  };
2643
+ SimpleAccountBalanceViewer = _ts_decorate([
2644
+ creatableProvider()
2645
+ ], SimpleAccountBalanceViewer);
2201
2646
 
2202
2647
  // src/simple/block/SimpleBlockViewer.ts
2203
- import { AbstractCreatable as AbstractCreatable2, assertEx as assertEx14, exists as exists2, isDefined as isDefined12, spanRootAsync as spanRootAsync5 } from "@xylabs/sdk-js";
2648
+ import { assertEx as assertEx17, exists as exists2, isDefined as isDefined12, spanRootAsync as spanRootAsync5 } from "@xylabs/sdk-js";
2204
2649
  import { asSignedHydratedBlockWithHashMeta, asXL1BlockNumber as asXL1BlockNumber6 } from "@xyo-network/xl1-protocol";
2205
2650
 
2206
2651
  // src/utils/HydratedCache.ts
@@ -2234,19 +2679,31 @@ var HydratedCache = class {
2234
2679
  };
2235
2680
 
2236
2681
  // src/utils/isZodError.ts
2237
- import * as z21 from "zod";
2682
+ import * as z23 from "zod";
2238
2683
  var isZodError = /* @__PURE__ */ __name((error) => {
2239
- return error instanceof z21.ZodError;
2684
+ return error instanceof z23.ZodError;
2240
2685
  }, "isZodError");
2241
2686
  var prettifyZodError = /* @__PURE__ */ __name((error) => {
2242
- return z21.prettifyError(error);
2687
+ return z23.prettifyError(error);
2243
2688
  }, "prettifyZodError");
2244
2689
 
2245
2690
  // src/simple/block/SimpleBlockViewer.ts
2246
- var SimpleBlockViewer = class extends AbstractCreatable2 {
2691
+ function _ts_decorate2(decorators, target, key, desc) {
2692
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
2693
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
2694
+ 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;
2695
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
2696
+ }
2697
+ __name(_ts_decorate2, "_ts_decorate");
2698
+ var SimpleBlockViewer = class _SimpleBlockViewer extends AbstractCreatableProvider {
2247
2699
  static {
2248
2700
  __name(this, "SimpleBlockViewer");
2249
2701
  }
2702
+ static defaultMoniker = BlockViewerMoniker;
2703
+ static monikers = [
2704
+ BlockViewerMoniker
2705
+ ];
2706
+ moniker = _SimpleBlockViewer.defaultMoniker;
2250
2707
  _payloadCache;
2251
2708
  _signedHydratedBlockCache;
2252
2709
  get context() {
@@ -2274,8 +2731,8 @@ var SimpleBlockViewer = class extends AbstractCreatable2 {
2274
2731
  return this._payloadCache;
2275
2732
  }
2276
2733
  static async paramsHandler(params) {
2277
- assertEx14(params.context, () => "context is required");
2278
- assertEx14(params.finalizedArchivist, () => "finalizedArchivist is required");
2734
+ assertEx17(params.context, () => "context is required");
2735
+ assertEx17(params.finalizedArchivist, () => "finalizedArchivist is required");
2279
2736
  return {
2280
2737
  ...await super.paramsHandler(params)
2281
2738
  };
@@ -2293,8 +2750,8 @@ var SimpleBlockViewer = class extends AbstractCreatable2 {
2293
2750
  }
2294
2751
  async blocksByHash(hash, limit = 50) {
2295
2752
  return await spanRootAsync5("blocksByHash", async () => {
2296
- assertEx14(limit > 0, () => "limit must be greater than 0");
2297
- assertEx14(limit <= 100, () => "limit must be less than 100");
2753
+ assertEx17(limit > 0, () => "limit must be greater than 0");
2754
+ assertEx17(limit <= 100, () => "limit must be less than 100");
2298
2755
  const blocks = [];
2299
2756
  let current = await this.blockByHash(hash);
2300
2757
  while (current && blocks.length < limit) {
@@ -2308,8 +2765,8 @@ var SimpleBlockViewer = class extends AbstractCreatable2 {
2308
2765
  }
2309
2766
  async blocksByNumber(blockNumber, limit = 50) {
2310
2767
  return await spanRootAsync5("blocksByHash", async () => {
2311
- assertEx14(limit > 0, () => "limit must be greater than 0");
2312
- assertEx14(limit <= 100, () => "limit must be less than 100");
2768
+ assertEx17(limit > 0, () => "limit must be greater than 0");
2769
+ assertEx17(limit <= 100, () => "limit must be less than 100");
2313
2770
  const blocks = [];
2314
2771
  let current = await this.blockByNumber(blockNumber);
2315
2772
  while (current && blocks.length < limit) {
@@ -2323,24 +2780,24 @@ var SimpleBlockViewer = class extends AbstractCreatable2 {
2323
2780
  }
2324
2781
  async currentBlock() {
2325
2782
  return await spanRootAsync5("currentBlock", async () => {
2326
- const currentHead = assertEx14(await this.getCurrentHead(), () => "Could not find most recent block");
2783
+ const currentHead = assertEx17(await this.getCurrentHead(), () => "Could not find most recent block");
2327
2784
  const cache = this.hydratedBlockCache;
2328
2785
  const block = await cache.get(currentHead._hash);
2329
2786
  if (!block) {
2330
2787
  console.log(`Could not find current block with hash ${currentHead._hash}`);
2331
2788
  }
2332
- return assertEx14(block, () => "Could not find current block");
2789
+ return assertEx17(block, () => "Could not find current block");
2333
2790
  }, this.tracer);
2334
2791
  }
2335
2792
  async currentBlockHash() {
2336
2793
  return await spanRootAsync5("currentBlockHash", async () => {
2337
- const currentHead = assertEx14(await this.getCurrentHead(), () => "Could not find most recent block");
2794
+ const currentHead = assertEx17(await this.getCurrentHead(), () => "Could not find most recent block");
2338
2795
  return currentHead._hash;
2339
2796
  }, this.tracer);
2340
2797
  }
2341
2798
  async currentBlockNumber() {
2342
2799
  return await spanRootAsync5("currentBlockNumber", async () => {
2343
- const currentHead = assertEx14(await this.getCurrentHead(), () => "Could not find most recent block");
2800
+ const currentHead = assertEx17(await this.getCurrentHead(), () => "Could not find most recent block");
2344
2801
  return asXL1BlockNumber6(currentHead.block, {
2345
2802
  name: "currentBlockNumber"
2346
2803
  });
@@ -2378,47 +2835,59 @@ var SimpleBlockViewer = class extends AbstractCreatable2 {
2378
2835
  return await findMostRecentBlock(chainArchivist);
2379
2836
  }
2380
2837
  };
2838
+ SimpleBlockViewer = _ts_decorate2([
2839
+ creatableProvider()
2840
+ ], SimpleBlockViewer);
2381
2841
 
2382
2842
  // src/simple/blockReward/SimpleBlockRewardViewer.ts
2383
- import { AbstractCreatable as AbstractCreatable3, creatable } from "@xylabs/sdk-js";
2384
- function _ts_decorate(decorators, target, key, desc) {
2843
+ function _ts_decorate3(decorators, target, key, desc) {
2385
2844
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
2386
2845
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
2387
2846
  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;
2388
2847
  return c > 3 && r && Object.defineProperty(target, key, r), r;
2389
2848
  }
2390
- __name(_ts_decorate, "_ts_decorate");
2391
- var SimpleBlockRewardViewer = class extends AbstractCreatable3 {
2849
+ __name(_ts_decorate3, "_ts_decorate");
2850
+ var SimpleBlockRewardViewer = class _SimpleBlockRewardViewer extends AbstractCreatableProvider {
2392
2851
  static {
2393
2852
  __name(this, "SimpleBlockRewardViewer");
2394
2853
  }
2854
+ static defaultMoniker = BlockRewardViewerMoniker;
2855
+ static monikers = [
2856
+ BlockRewardViewerMoniker
2857
+ ];
2858
+ moniker = _SimpleBlockRewardViewer.defaultMoniker;
2395
2859
  rewardFromBlockNumber = rewardFromBlockNumber(18);
2396
2860
  allowedRewardForBlock(block) {
2397
2861
  return this.rewardFromBlockNumber(block, this.params.initialReward, this.params.stepSize, this.params.stepFactorNumerator, this.params.stepFactorDenominator, this.params.minRewardPerBlock, this.params.creatorReward);
2398
2862
  }
2399
2863
  };
2400
- SimpleBlockRewardViewer = _ts_decorate([
2401
- creatable()
2864
+ SimpleBlockRewardViewer = _ts_decorate3([
2865
+ creatableProvider()
2402
2866
  ], SimpleBlockRewardViewer);
2403
2867
 
2404
2868
  // src/simple/chainStake/SimpleChainStakeViewer.ts
2405
- import { asAddress as asAddress5, toAddress as toAddress5 } from "@xylabs/sdk-js";
2406
- import { AbstractCreatable as AbstractCreatable5, assertEx as assertEx15, creatable as creatable3 } from "@xylabs/sdk-js";
2869
+ import { asAddress as asAddress5, toAddress as toAddress6 } from "@xylabs/sdk-js";
2870
+ import { assertEx as assertEx18 } from "@xylabs/sdk-js";
2407
2871
  import { Account } from "@xyo-network/account";
2408
2872
 
2409
2873
  // src/simple/chainStakeEvents/SimpleChainStakeEventsViewer.ts
2410
- import { AbstractCreatable as AbstractCreatable4, creatable as creatable2, isDefined as isDefined13 } from "@xylabs/sdk-js";
2411
- function _ts_decorate2(decorators, target, key, desc) {
2874
+ import { isDefined as isDefined13 } from "@xylabs/sdk-js";
2875
+ function _ts_decorate4(decorators, target, key, desc) {
2412
2876
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
2413
2877
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
2414
2878
  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;
2415
2879
  return c > 3 && r && Object.defineProperty(target, key, r), r;
2416
2880
  }
2417
- __name(_ts_decorate2, "_ts_decorate");
2418
- var SimpleChainStakeEventsViewer = class extends AbstractCreatable4 {
2881
+ __name(_ts_decorate4, "_ts_decorate");
2882
+ var SimpleChainStakeEventsViewer = class _SimpleChainStakeEventsViewer extends AbstractCreatableProvider {
2419
2883
  static {
2420
2884
  __name(this, "SimpleChainStakeEventsViewer");
2421
2885
  }
2886
+ static defaultMoniker = StakeEventsViewerMoniker;
2887
+ static monikers = [
2888
+ StakeEventsViewerMoniker
2889
+ ];
2890
+ moniker = _SimpleChainStakeEventsViewer.defaultMoniker;
2422
2891
  get positions() {
2423
2892
  return this.params.positions;
2424
2893
  }
@@ -2487,26 +2956,31 @@ var SimpleChainStakeEventsViewer = class extends AbstractCreatable4 {
2487
2956
  return filteredPositions;
2488
2957
  }
2489
2958
  };
2490
- SimpleChainStakeEventsViewer = _ts_decorate2([
2491
- creatable2()
2959
+ SimpleChainStakeEventsViewer = _ts_decorate4([
2960
+ creatableProvider()
2492
2961
  ], SimpleChainStakeEventsViewer);
2493
2962
 
2494
2963
  // src/simple/chainStake/SimpleChainStakeViewer.ts
2495
- function _ts_decorate3(decorators, target, key, desc) {
2964
+ function _ts_decorate5(decorators, target, key, desc) {
2496
2965
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
2497
2966
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
2498
2967
  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;
2499
2968
  return c > 3 && r && Object.defineProperty(target, key, r), r;
2500
2969
  }
2501
- __name(_ts_decorate3, "_ts_decorate");
2502
- var SimpleChainStakeViewer = class extends AbstractCreatable5 {
2970
+ __name(_ts_decorate5, "_ts_decorate");
2971
+ var SimpleChainStakeViewer = class _SimpleChainStakeViewer extends AbstractCreatableProvider {
2503
2972
  static {
2504
2973
  __name(this, "SimpleChainStakeViewer");
2505
2974
  }
2975
+ static defaultMoniker = StakeViewerMoniker;
2976
+ static monikers = [
2977
+ StakeViewerMoniker
2978
+ ];
2979
+ moniker = _SimpleChainStakeViewer.defaultMoniker;
2506
2980
  _chainId;
2507
2981
  _chainStakeEventsViewer;
2508
2982
  get chainId() {
2509
- return assertEx15(this._chainId, () => "Chain ID not set");
2983
+ return assertEx18(this._chainId, () => "Chain ID not set");
2510
2984
  }
2511
2985
  get chainMap() {
2512
2986
  return this.params.chainMap;
@@ -2515,13 +2989,13 @@ var SimpleChainStakeViewer = class extends AbstractCreatable5 {
2515
2989
  return this.params.minWithdrawalBlocks ?? 10;
2516
2990
  }
2517
2991
  get rewardsContract() {
2518
- return toAddress5(toAddress5(1n));
2992
+ return toAddress6(toAddress6(1n));
2519
2993
  }
2520
2994
  get stakeEvents() {
2521
- return assertEx15(this._chainStakeEventsViewer, () => "Stake events viewer not set");
2995
+ return assertEx18(this._chainStakeEventsViewer, () => "Stake events viewer not set");
2522
2996
  }
2523
2997
  get stakingTokenAddress() {
2524
- return toAddress5("0x000000000000000000000000000011");
2998
+ return toAddress6("0x000000000000000000000000000011");
2525
2999
  }
2526
3000
  get positions() {
2527
3001
  return this.params.positions;
@@ -2572,7 +3046,7 @@ var SimpleChainStakeViewer = class extends AbstractCreatable5 {
2572
3046
  return pending;
2573
3047
  }
2574
3048
  stakeById(id) {
2575
- return assertEx15(this.positions[id], () => new Error(`Stake with id ${id} not found`));
3049
+ return assertEx18(this.positions[id], () => new Error(`Stake with id ${id} not found`));
2576
3050
  }
2577
3051
  stakeByStaker(staker, slot) {
2578
3052
  return this.positions.filter((s) => asAddress5(s.staker) === asAddress5(staker))[slot];
@@ -2617,8 +3091,8 @@ var SimpleChainStakeViewer = class extends AbstractCreatable5 {
2617
3091
  });
2618
3092
  }
2619
3093
  };
2620
- SimpleChainStakeViewer = _ts_decorate3([
2621
- creatable3()
3094
+ SimpleChainStakeViewer = _ts_decorate5([
3095
+ creatableProvider()
2622
3096
  ], SimpleChainStakeViewer);
2623
3097
 
2624
3098
  // src/simple/client/SimpleXyoClient.ts
@@ -2634,43 +3108,36 @@ var SimpleXyoClient = class {
2634
3108
  }
2635
3109
  };
2636
3110
 
2637
- // src/simple/datalake/SimpleDataLakeViewer.ts
3111
+ // src/simple/datalake/AbstractSimpleDataLake.ts
2638
3112
  import { isAnyPayload as isAnyPayload4 } from "@xyo-network/payload-model";
2639
- var SimpleDataLakeViewer = class {
3113
+ var AbstractSimpleDataLake = class extends AbstractCreatableProvider {
2640
3114
  static {
2641
- __name(this, "SimpleDataLakeViewer");
2642
- }
2643
- _params;
2644
- constructor(params) {
2645
- this._params = params;
3115
+ __name(this, "AbstractSimpleDataLake");
2646
3116
  }
2647
3117
  get allowedSchemas() {
2648
- return this._params.allowedSchemas;
3118
+ return this.params.allowedSchemas;
2649
3119
  }
2650
3120
  get disallowedSchemas() {
2651
- return this._params.disallowedSchemas;
3121
+ return this.params.disallowedSchemas;
2652
3122
  }
2653
3123
  get map() {
2654
- return this._params.map;
2655
- }
2656
- get params() {
2657
- return this._params;
2658
- }
2659
- async get(hash) {
2660
- const result = await this.map.get(hash);
2661
- return this.isAllowed(result) ? result : void 0;
2662
- }
2663
- async getMany(hashes) {
2664
- const result = await this.map.getMany(hashes);
2665
- return result.filter((data) => this.isAllowed(data));
2666
- }
2667
- async has(hash) {
2668
- const value = await this.get(hash);
2669
- if (isAnyPayload4(value)) {
2670
- return this.isAllowed(value);
2671
- }
2672
- return value !== void 0;
2673
- }
3124
+ return this.params.map;
3125
+ }
3126
+ // async get(hash: Hash): Promise<DataLakeData | undefined> {
3127
+ // const result = await this.map.get(hash)
3128
+ // return this.isAllowed(result) ? result : undefined
3129
+ // }
3130
+ // async getMany(hashes: Hash[]): Promise<DataLakeData[]> {
3131
+ // const result = await this.map.getMany(hashes)
3132
+ // return result.filter(data => this.isAllowed(data))
3133
+ // }
3134
+ // async has(hash: Hash): Promise<boolean> {
3135
+ // const value = await this.get(hash)
3136
+ // if (isAnyPayload(value)) {
3137
+ // return this.isAllowed(value)
3138
+ // }
3139
+ // return value !== undefined
3140
+ // }
2674
3141
  isAllowed(value) {
2675
3142
  if (isAnyPayload4(value)) {
2676
3143
  return this.isAllowedSchema(value.schema);
@@ -2689,13 +3156,22 @@ var SimpleDataLakeViewer = class {
2689
3156
  };
2690
3157
 
2691
3158
  // src/simple/datalake/SimpleDataLakeRunner.ts
2692
- var SimpleDataLakeRunner = class extends SimpleDataLakeViewer {
3159
+ function _ts_decorate6(decorators, target, key, desc) {
3160
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3161
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
3162
+ 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;
3163
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
3164
+ }
3165
+ __name(_ts_decorate6, "_ts_decorate");
3166
+ var SimpleDataLakeRunner = class _SimpleDataLakeRunner extends AbstractSimpleDataLake {
2693
3167
  static {
2694
3168
  __name(this, "SimpleDataLakeRunner");
2695
3169
  }
2696
- constructor(params) {
2697
- super(params);
2698
- }
3170
+ static defaultMoniker = DataLakeRunnerMoniker;
3171
+ static monikers = [
3172
+ DataLakeRunnerMoniker
3173
+ ];
3174
+ moniker = _SimpleDataLakeRunner.defaultMoniker;
2699
3175
  async clear() {
2700
3176
  await this.map.clear();
2701
3177
  }
@@ -2712,6 +3188,47 @@ var SimpleDataLakeRunner = class extends SimpleDataLakeViewer {
2712
3188
  return await this.map.setMany(allowed);
2713
3189
  }
2714
3190
  };
3191
+ SimpleDataLakeRunner = _ts_decorate6([
3192
+ creatableProvider()
3193
+ ], SimpleDataLakeRunner);
3194
+
3195
+ // src/simple/datalake/SimpleDataLakeViewer.ts
3196
+ import { isAnyPayload as isAnyPayload5 } from "@xyo-network/payload-model";
3197
+ function _ts_decorate7(decorators, target, key, desc) {
3198
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3199
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
3200
+ 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;
3201
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
3202
+ }
3203
+ __name(_ts_decorate7, "_ts_decorate");
3204
+ var SimpleDataLakeViewer = class _SimpleDataLakeViewer extends AbstractSimpleDataLake {
3205
+ static {
3206
+ __name(this, "SimpleDataLakeViewer");
3207
+ }
3208
+ static defaultMoniker = DataLakeViewerMoniker;
3209
+ static monikers = [
3210
+ DataLakeViewerMoniker
3211
+ ];
3212
+ moniker = _SimpleDataLakeViewer.defaultMoniker;
3213
+ async get(hash) {
3214
+ const result = await this.map.get(hash);
3215
+ return this.isAllowed(result) ? result : void 0;
3216
+ }
3217
+ async getMany(hashes) {
3218
+ const result = await this.map.getMany(hashes);
3219
+ return result.filter((data) => this.isAllowed(data));
3220
+ }
3221
+ async has(hash) {
3222
+ const value = await this.get(hash);
3223
+ if (isAnyPayload5(value)) {
3224
+ return this.isAllowed(value);
3225
+ }
3226
+ return value !== void 0;
3227
+ }
3228
+ };
3229
+ SimpleDataLakeViewer = _ts_decorate7([
3230
+ creatableProvider()
3231
+ ], SimpleDataLakeViewer);
2715
3232
 
2716
3233
  // src/simple/gateway/SimpleXyoGateway.ts
2717
3234
  var SimpleXyoGateway = class {
@@ -2739,7 +3256,7 @@ var SimpleXyoGateway = class {
2739
3256
  };
2740
3257
 
2741
3258
  // src/simple/gateway/SimpleXyoGatewayRunner.ts
2742
- import { assertEx as assertEx16, BigIntToJsonZod, isDefined as isDefined14 } from "@xylabs/sdk-js";
3259
+ import { assertEx as assertEx19, BigIntToJsonZod, isDefined as isDefined14 } from "@xylabs/sdk-js";
2743
3260
  import { PayloadBuilder as PayloadBuilder14 } from "@xyo-network/payload-builder";
2744
3261
  import { asXL1BlockNumber as asXL1BlockNumber7, TransferSchema as TransferSchema2 } from "@xyo-network/xl1-protocol";
2745
3262
  var SimpleXyoGatewayRunner = class {
@@ -2770,7 +3287,7 @@ var SimpleXyoGatewayRunner = class {
2770
3287
  return this._dataLakes.length - 1;
2771
3288
  }
2772
3289
  async addPayloadsToChain(onChain, offChain, options) {
2773
- const viewer = assertEx16(this.connectionInstance.viewer, () => "No viewer available on connection");
3290
+ const viewer = assertEx19(this.connectionInstance.viewer, () => "No viewer available on connection");
2774
3291
  const { nbf, exp, chain, fees } = options ?? {};
2775
3292
  const resolvedChainId = isDefined14(chain) ? chain : await viewer.chainId();
2776
3293
  const resolvedNbf = asXL1BlockNumber7(isDefined14(nbf) ? nbf : await viewer.currentBlockNumber(), true);
@@ -2781,7 +3298,7 @@ var SimpleXyoGatewayRunner = class {
2781
3298
  async addTransactionToChain(tx) {
2782
3299
  const connection = this.connectionInstance;
2783
3300
  const signer = this.signerInstance;
2784
- const runner = assertEx16(connection.runner, () => "No runner available on connection");
3301
+ const runner = assertEx19(connection.runner, () => "No runner available on connection");
2785
3302
  const signedTx = await signer.signTransaction(tx);
2786
3303
  await this.addPayloadsToDataLakes(signedTx[1]);
2787
3304
  return [
@@ -2793,7 +3310,7 @@ var SimpleXyoGatewayRunner = class {
2793
3310
  ];
2794
3311
  }
2795
3312
  async confirmSubmittedTransaction(txHash, options) {
2796
- return await confirmSubmittedTransaction(assertEx16(this.connectionInstance.viewer, () => "Connection viewer is undefined"), txHash, options);
3313
+ return await confirmSubmittedTransaction(assertEx19(this.connectionInstance.viewer, () => "Connection viewer is undefined"), txHash, options);
2797
3314
  }
2798
3315
  /** @deprecated use connectionInstance instead */
2799
3316
  connection() {
@@ -2839,16 +3356,16 @@ var SimpleXyoGatewayRunner = class {
2839
3356
  };
2840
3357
 
2841
3358
  // src/simple/mempool/SimpleMempoolRunner.ts
2842
- import { AbstractCreatable as AbstractCreatable6, creatable as creatable4 } from "@xylabs/sdk-js";
3359
+ import { AbstractCreatable as AbstractCreatable2, creatable } from "@xylabs/sdk-js";
2843
3360
  import { PayloadBuilder as PayloadBuilder15 } from "@xyo-network/payload-builder";
2844
- function _ts_decorate4(decorators, target, key, desc) {
3361
+ function _ts_decorate8(decorators, target, key, desc) {
2845
3362
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
2846
3363
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
2847
3364
  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;
2848
3365
  return c > 3 && r && Object.defineProperty(target, key, r), r;
2849
3366
  }
2850
- __name(_ts_decorate4, "_ts_decorate");
2851
- var SimpleMempoolRunner = class extends AbstractCreatable6 {
3367
+ __name(_ts_decorate8, "_ts_decorate");
3368
+ var SimpleMempoolRunner = class extends AbstractCreatable2 {
2852
3369
  static {
2853
3370
  __name(this, "SimpleMempoolRunner");
2854
3371
  }
@@ -2879,24 +3396,29 @@ var SimpleMempoolRunner = class extends AbstractCreatable6 {
2879
3396
  return inserted.map((p) => p._hash);
2880
3397
  }
2881
3398
  };
2882
- SimpleMempoolRunner = _ts_decorate4([
2883
- creatable4()
3399
+ SimpleMempoolRunner = _ts_decorate8([
3400
+ creatable()
2884
3401
  ], SimpleMempoolRunner);
2885
3402
 
2886
3403
  // src/simple/mempool/SimpleMempoolViewer.ts
2887
- import { AbstractCreatable as AbstractCreatable7, creatable as creatable5, exists as exists3, isDefined as isDefined15, isHash } from "@xylabs/sdk-js";
3404
+ import { creatable as creatable2, exists as exists3, isDefined as isDefined15, isHash } from "@xylabs/sdk-js";
2888
3405
  import { isHashMeta as isHashMeta2, isPayloadBundle } from "@xyo-network/payload-model";
2889
- function _ts_decorate5(decorators, target, key, desc) {
3406
+ function _ts_decorate9(decorators, target, key, desc) {
2890
3407
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
2891
3408
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
2892
3409
  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;
2893
3410
  return c > 3 && r && Object.defineProperty(target, key, r), r;
2894
3411
  }
2895
- __name(_ts_decorate5, "_ts_decorate");
2896
- var SimpleMempoolViewer = class extends AbstractCreatable7 {
3412
+ __name(_ts_decorate9, "_ts_decorate");
3413
+ var SimpleMempoolViewer = class _SimpleMempoolViewer extends AbstractCreatableProvider {
2897
3414
  static {
2898
3415
  __name(this, "SimpleMempoolViewer");
2899
3416
  }
3417
+ static defaultMoniker = MempoolViewerMoniker;
3418
+ static monikers = [
3419
+ MempoolViewerMoniker
3420
+ ];
3421
+ moniker = _SimpleMempoolViewer.defaultMoniker;
2900
3422
  get pendingBlocksArchivist() {
2901
3423
  return this.params.pendingBlocksArchivist;
2902
3424
  }
@@ -2940,8 +3462,8 @@ var SimpleMempoolViewer = class extends AbstractCreatable7 {
2940
3462
  return (await Promise.all(filteredBundles.map(async (bundle3) => await bundledPayloadToHydratedTransaction(bundle3)))).filter(exists3);
2941
3463
  }
2942
3464
  };
2943
- SimpleMempoolViewer = _ts_decorate5([
2944
- creatable5()
3465
+ SimpleMempoolViewer = _ts_decorate9([
3466
+ creatable2()
2945
3467
  ], SimpleMempoolViewer);
2946
3468
 
2947
3469
  // src/simple/network/SimpleXyoNetwork.ts
@@ -3017,7 +3539,7 @@ var SimpleXyoNetwork = class {
3017
3539
  };
3018
3540
 
3019
3541
  // src/simple/permissions/SimpleXyoPermissions.ts
3020
- import { assertEx as assertEx17 } from "@xylabs/sdk-js";
3542
+ import { assertEx as assertEx20 } from "@xylabs/sdk-js";
3021
3543
  var SimpleXyoPermissions = class {
3022
3544
  static {
3023
3545
  __name(this, "SimpleXyoPermissions");
@@ -3029,7 +3551,7 @@ var SimpleXyoPermissions = class {
3029
3551
  this.invoker = store.invoker;
3030
3552
  }
3031
3553
  get store() {
3032
- return assertEx17(this._store, () => "Store must be defined to get permissions");
3554
+ return assertEx20(this._store, () => "Store must be defined to get permissions");
3033
3555
  }
3034
3556
  async getPermissions() {
3035
3557
  return await this.store.getPermissions();
@@ -3087,7 +3609,7 @@ var SimpleXyoPermissions = class {
3087
3609
  };
3088
3610
 
3089
3611
  // src/simple/permissions/store/MemoryPermissions.ts
3090
- import { assertEx as assertEx18 } from "@xylabs/sdk-js";
3612
+ import { assertEx as assertEx21 } from "@xylabs/sdk-js";
3091
3613
  var MemoryPermissionsStore = class {
3092
3614
  static {
3093
3615
  __name(this, "MemoryPermissionsStore");
@@ -3098,7 +3620,7 @@ var MemoryPermissionsStore = class {
3098
3620
  this._invoker = invoker;
3099
3621
  }
3100
3622
  get invoker() {
3101
- return assertEx18(this._invoker, () => "Invoker must be defined to get permissions");
3623
+ return assertEx21(this._invoker, () => "Invoker must be defined to get permissions");
3102
3624
  }
3103
3625
  async getPermissions() {
3104
3626
  await Promise.resolve();
@@ -3165,22 +3687,27 @@ var SimpleXyoSigner = class {
3165
3687
  };
3166
3688
 
3167
3689
  // src/simple/timesync/SimpleTimeSyncViewer.ts
3168
- import { asHash as asHash6, assertEx as assertEx19, isDefined as isDefined16 } from "@xylabs/sdk-js";
3690
+ import { asHash as asHash6, assertEx as assertEx22, isDefined as isDefined16 } from "@xylabs/sdk-js";
3169
3691
  import { asTimePayload, asXL1BlockNumber as asXL1BlockNumber8, TimeSchema } from "@xyo-network/xl1-protocol";
3170
- var SimpleTimeSyncViewer = class {
3692
+ var SimpleTimeSyncViewer = class _SimpleTimeSyncViewer extends AbstractCreatableProvider {
3171
3693
  static {
3172
3694
  __name(this, "SimpleTimeSyncViewer");
3173
3695
  }
3174
- blockViewer;
3175
- ethProvider;
3176
- constructor(blockViewer, ethProvider) {
3177
- this.blockViewer = blockViewer;
3178
- this.ethProvider = ethProvider;
3696
+ static defaultMoniker = TimeSyncViewerMoniker;
3697
+ static monikers = [
3698
+ TimeSyncViewerMoniker
3699
+ ];
3700
+ moniker = _SimpleTimeSyncViewer.defaultMoniker;
3701
+ get blockViewer() {
3702
+ return this.params.blockViewer;
3703
+ }
3704
+ get ethProvider() {
3705
+ return this.params.ethProvider;
3179
3706
  }
3180
3707
  async convertTime(fromDomain, toDomain, from) {
3181
3708
  switch (fromDomain) {
3182
3709
  case "xl1": {
3183
- const [block, payloads] = assertEx19(await this.blockViewer.blockByNumber(asXL1BlockNumber8(from, true)), () => "Block not found");
3710
+ const [block, payloads] = assertEx22(await this.blockViewer.blockByNumber(asXL1BlockNumber8(from, true)), () => "Block not found");
3184
3711
  const timeSchemaIndex = block.payload_schemas.indexOf(TimeSchema);
3185
3712
  const hash = timeSchemaIndex === -1 ? void 0 : block.payload_hashes[timeSchemaIndex];
3186
3713
  const timePayload = asTimePayload(isDefined16(hash) ? payloads.find((p) => p._hash === hash) : void 0);
@@ -3246,10 +3773,10 @@ var SimpleTimeSyncViewer = class {
3246
3773
  ];
3247
3774
  }
3248
3775
  case "ethereum": {
3249
- const provider = assertEx19(this.ethProvider, () => "Ethereum provider not configured");
3776
+ const provider = assertEx22(this.ethProvider, () => "Ethereum provider not configured");
3250
3777
  const blockNumber = await provider.getBlockNumber() ?? 0;
3251
3778
  const block = await provider.getBlock(blockNumber);
3252
- const blockHash = asHash6(assertEx19(block?.hash, () => "Block hash not found"), true);
3779
+ const blockHash = asHash6(assertEx22(block?.hash, () => "Block hash not found"), true);
3253
3780
  return [
3254
3781
  blockNumber,
3255
3782
  blockHash
@@ -3266,7 +3793,7 @@ var SimpleTimeSyncViewer = class {
3266
3793
  };
3267
3794
 
3268
3795
  // src/time/primitives/xl1BlockNumberToEthBlockNumber.ts
3269
- import { assertEx as assertEx20 } from "@xylabs/sdk-js";
3796
+ import { assertEx as assertEx23 } from "@xylabs/sdk-js";
3270
3797
  import { asTimePayload as asTimePayload2, TimeSchema as TimeSchema2 } from "@xyo-network/xl1-protocol";
3271
3798
  async function xl1BlockNumberToEthBlockNumber(context, xl1BlockNumber) {
3272
3799
  const blockHash = await hashFromBlockNumber(context, xl1BlockNumber);
@@ -3274,43 +3801,10 @@ async function xl1BlockNumberToEthBlockNumber(context, xl1BlockNumber) {
3274
3801
  const timePayload = asTimePayload2(hydratedBlock[1].find((p) => p.schema === TimeSchema2), {
3275
3802
  required: true
3276
3803
  });
3277
- return assertEx20(timePayload.ethereum, () => "No ethereum timestamp found on block");
3804
+ return assertEx23(timePayload.ethereum, () => "No ethereum timestamp found on block");
3278
3805
  }
3279
3806
  __name(xl1BlockNumberToEthBlockNumber, "xl1BlockNumberToEthBlockNumber");
3280
3807
 
3281
- // src/viewers/AccountBalance.ts
3282
- import { WithHashMetaZod } from "@xyo-network/payload-model";
3283
- import { TransferZod } from "@xyo-network/xl1-protocol";
3284
- import { BlockBoundWitnessZod, TransactionBoundWitnessZod } from "@xyo-network/xl1-protocol";
3285
- import z22 from "zod";
3286
- var AccountBalanceHistoryItemZod = z22.tuple([
3287
- WithHashMetaZod(BlockBoundWitnessZod),
3288
- WithHashMetaZod(TransactionBoundWitnessZod).nullable(),
3289
- WithHashMetaZod(TransferZod)
3290
- ]);
3291
-
3292
- // src/viewers/Mempool.ts
3293
- import { HashZod as HashZod3 } from "@xylabs/sdk-js";
3294
- import { XL1BlockRangeZod as XL1BlockRangeZod2 } from "@xyo-network/xl1-protocol";
3295
- import z23 from "zod";
3296
- var PendingTransactionsOptionsZod = z23.object({
3297
- cursor: HashZod3.optional(),
3298
- limit: z23.number().int().positive().optional(),
3299
- window: XL1BlockRangeZod2.optional()
3300
- });
3301
- var PendingBlocksOptionsZod = z23.object({
3302
- cursor: HashZod3.optional(),
3303
- limit: z23.number().int().positive().optional(),
3304
- window: XL1BlockRangeZod2.optional()
3305
- });
3306
-
3307
- // src/viewers/StakeEvents.ts
3308
- var StakeEventNames = [
3309
- "StakeAdded",
3310
- "StakeRemoved",
3311
- "StakeWithdrawn"
3312
- ];
3313
-
3314
3808
  // src/wallet/generateXyoBaseWalletFromPhrase.ts
3315
3809
  import { HDWallet } from "@xyo-network/wallet";
3316
3810
 
@@ -3341,15 +3835,28 @@ var generateXyoBaseWalletFromPhrase = /* @__PURE__ */ __name((walletPhrase) => {
3341
3835
  export {
3342
3836
  ACCOUNT_TYPE,
3343
3837
  ADDRESS_INDEX,
3838
+ AbstractCreatableProvider,
3344
3839
  AccountBalanceHistoryItemZod,
3840
+ AccountBalanceViewerMoniker,
3345
3841
  AddressPairSchema,
3346
3842
  BalancesStepSummarySchema,
3843
+ BasisPointsZod,
3844
+ BlockRewardViewerMoniker,
3347
3845
  BlockValidationError,
3846
+ BlockViewerMoniker,
3847
+ BridgeConfigZod,
3848
+ BridgeSettingsZod,
3348
3849
  CHANGE_ADDRESS,
3349
3850
  COIN_TYPES,
3851
+ ChainContractViewerMoniker,
3350
3852
  ChainIndexingServiceStateSchema,
3853
+ ChainStakeViewerMoniker,
3854
+ ChainViewerMoniker,
3351
3855
  ConfigZod,
3352
3856
  DEFAULT_WALLET_PATH,
3857
+ DataLakeRunnerMoniker,
3858
+ DataLakeViewerMoniker,
3859
+ DefaultProviderMoniker,
3353
3860
  EIP712DataPayloadFieldsZod,
3354
3861
  EIP712DataPayloadSchema,
3355
3862
  EIP712SignaturePayloadFieldsZod,
@@ -3362,9 +3869,19 @@ export {
3362
3869
  LruCacheMap,
3363
3870
  MemoryMap,
3364
3871
  MemoryPermissionsStore,
3872
+ MempoolViewerMoniker,
3365
3873
  MnemonicStringZod,
3874
+ NetworkStakeStepRewardViewerMoniker,
3875
+ NetworkStakeStepRewardsByPositionViewerMoniker,
3876
+ NetworkStakeStepRewardsByStakerViewerMoniker,
3877
+ NetworkStakeStepRewardsByStepViewerMoniker,
3878
+ NetworkStakeStepRewardsTotalViewerMoniker,
3879
+ NetworkStakeStepRewardsViewerMoniker,
3880
+ NetworkStakeViewerMoniker,
3366
3881
  PendingBlocksOptionsZod,
3367
3882
  PendingTransactionsOptionsZod,
3883
+ ProviderFactory,
3884
+ ProviderFactoryLocator,
3368
3885
  QualifiedZod,
3369
3886
  RewardMultipliers,
3370
3887
  SchemasStepSummarySchema,
@@ -3385,8 +3902,16 @@ export {
3385
3902
  SimpleXyoRunner,
3386
3903
  SimpleXyoSigner,
3387
3904
  StakeEventNames,
3905
+ StakeEventsViewerMoniker,
3906
+ StakeRunnerMoniker,
3907
+ StakeTotalsViewerMoniker,
3908
+ StakeViewerMoniker,
3909
+ StepStakeViewerMoniker,
3388
3910
  StepSummarySchema,
3911
+ StepViewerMoniker,
3389
3912
  TODO,
3913
+ TimeSyncViewerMoniker,
3914
+ TransferBalanceViewerMoniker,
3390
3915
  TransfersStepSummarySchema,
3391
3916
  TypedDataDomainZod,
3392
3917
  TypedDataFieldZod,
@@ -3400,6 +3925,7 @@ export {
3400
3925
  XL1_NETWORK_STAKING_GENESIS_PERIOD_TOTAL_EARNED_REWARDS,
3401
3926
  XL1_NETWORK_STAKING_GENESIS_PERIOD_TOTAL_REWARDS,
3402
3927
  Xl1CommonConfigSchema,
3928
+ XyoViewerMoniker,
3403
3929
  allHashesPresent,
3404
3930
  asAddressPairPayload,
3405
3931
  asBalancesStepSummary,
@@ -3409,6 +3935,7 @@ export {
3409
3935
  asEIP712DataPayload,
3410
3936
  asEIP712SignaturePayload,
3411
3937
  asOptionalAddressPairPayload,
3938
+ asProviderMoniker,
3412
3939
  asSchemasStepSummary,
3413
3940
  asSchemasStepSummaryWithStorageMeta,
3414
3941
  asTransfersStepSummary,
@@ -3427,6 +3954,7 @@ export {
3427
3954
  contextCache,
3428
3955
  crackOperation,
3429
3956
  crackOperations,
3957
+ creatableProvider,
3430
3958
  deepCalculateFramesFromRange,
3431
3959
  derivedReceiveAddress,
3432
3960
  elevatedPayloads,
@@ -3440,6 +3968,7 @@ export {
3440
3968
  generateXyoBaseWalletFromPhrase,
3441
3969
  getDefaultConfig,
3442
3970
  getUrl,
3971
+ hasLabels,
3443
3972
  hasMongoConfig,
3444
3973
  hashFromBlockNumber,
3445
3974
  hydrateBlock,
@@ -3470,12 +3999,16 @@ export {
3470
3999
  isUsageMeta,
3471
4000
  isWriteArchivist,
3472
4001
  isZodError,
4002
+ labeledCreatableProvider,
4003
+ labeledCreatableProviderFactory,
3473
4004
  netBalancesForPayloads,
3474
4005
  netSchemasForPayloads,
3475
4006
  netTransfersForPayloads,
3476
4007
  parseSignedBigInt,
3477
4008
  prettifyZodError,
3478
4009
  readPayloadMapFromStore,
4010
+ registerCreatableProviderFactories,
4011
+ registerCreatableProviderFactory,
3479
4012
  rewardFromBlockNumber,
3480
4013
  schemasStepSummaryFromRange,
3481
4014
  schemasSummary,
@@ -3501,6 +4034,10 @@ export {
3501
4034
  tryHydrateBlock,
3502
4035
  tryHydrateElevatedTransaction,
3503
4036
  tryHydrateTransaction,
4037
+ tryUnflattenHydratedBlock,
4038
+ tryUnflattenHydratedTransaction,
4039
+ unflattenHydratedBlock,
4040
+ unflattenHydratedTransaction,
3504
4041
  verifyEIP712Message,
3505
4042
  withContextCacheResponse,
3506
4043
  xl1BlockNumberToEthBlockNumber