@xyo-network/xl1-protocol-sdk 1.17.0 → 1.17.2

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 (200) hide show
  1. package/dist/neutral/ChainServiceCollectionV2.d.ts +6 -29
  2. package/dist/neutral/ChainServiceCollectionV2.d.ts.map +1 -1
  3. package/dist/neutral/block/hydrate/flattenHydratedBlocks.d.ts +2 -3
  4. package/dist/neutral/block/hydrate/flattenHydratedBlocks.d.ts.map +1 -1
  5. package/dist/neutral/index.d.ts +2 -0
  6. package/dist/neutral/index.d.ts.map +1 -1
  7. package/dist/neutral/index.mjs +1455 -1124
  8. package/dist/neutral/index.mjs.map +1 -1
  9. package/dist/neutral/model/PayloadBundle/bundledPayloadToHydratedBlock.d.ts +4 -0
  10. package/dist/neutral/model/PayloadBundle/bundledPayloadToHydratedBlock.d.ts.map +1 -0
  11. package/dist/neutral/model/PayloadBundle/hydratedBlockToPayloadBundle.d.ts +4 -0
  12. package/dist/neutral/model/PayloadBundle/hydratedBlockToPayloadBundle.d.ts.map +1 -0
  13. package/dist/neutral/model/PayloadBundle/index.d.ts +2 -0
  14. package/dist/neutral/model/PayloadBundle/index.d.ts.map +1 -1
  15. package/dist/neutral/model/Qualified.d.ts +6 -0
  16. package/dist/neutral/model/Qualified.d.ts.map +1 -0
  17. package/dist/neutral/model/index.d.ts +1 -1
  18. package/dist/neutral/model/index.d.ts.map +1 -1
  19. package/dist/neutral/payloads/index.d.ts +0 -1
  20. package/dist/neutral/payloads/index.d.ts.map +1 -1
  21. package/dist/neutral/primitives/index.d.ts +1 -1
  22. package/dist/neutral/primitives/index.d.ts.map +1 -1
  23. package/dist/neutral/primitives/rewardFromBlockNumber.d.ts +3 -0
  24. package/dist/neutral/primitives/rewardFromBlockNumber.d.ts.map +1 -0
  25. package/dist/neutral/provider/XyoRunner.d.ts +5 -1
  26. package/dist/neutral/provider/XyoRunner.d.ts.map +1 -1
  27. package/dist/neutral/provider/viewer/XyoViewer.d.ts +7 -2
  28. package/dist/neutral/provider/viewer/XyoViewer.d.ts.map +1 -1
  29. package/dist/neutral/runners/Block.d.ts +8 -0
  30. package/dist/neutral/runners/Block.d.ts.map +1 -0
  31. package/dist/neutral/runners/Mempool.d.ts +9 -0
  32. package/dist/neutral/runners/Mempool.d.ts.map +1 -0
  33. package/dist/neutral/runners/index.d.ts +3 -0
  34. package/dist/neutral/runners/index.d.ts.map +1 -0
  35. package/dist/neutral/services/BlockProducerService.d.ts +2 -2
  36. package/dist/neutral/services/BlockProducerService.d.ts.map +1 -1
  37. package/dist/neutral/services/Chain/ChainService.d.ts +2 -3
  38. package/dist/neutral/services/Chain/ChainService.d.ts.map +1 -1
  39. package/dist/neutral/services/Chain/index.d.ts +0 -1
  40. package/dist/neutral/services/Chain/index.d.ts.map +1 -1
  41. package/dist/neutral/services/index.d.ts +0 -2
  42. package/dist/neutral/services/index.d.ts.map +1 -1
  43. package/dist/neutral/simple/accountBalance/SimpleAccountBalanceViewer.d.ts +7 -3
  44. package/dist/neutral/simple/accountBalance/SimpleAccountBalanceViewer.d.ts.map +1 -1
  45. package/dist/neutral/simple/block/SimpleBlockViewer.d.ts +9 -4
  46. package/dist/neutral/simple/block/SimpleBlockViewer.d.ts.map +1 -1
  47. package/dist/neutral/simple/blockReward/SimpleBlockRewardViewer.d.ts +16 -0
  48. package/dist/neutral/simple/blockReward/SimpleBlockRewardViewer.d.ts.map +1 -0
  49. package/dist/neutral/simple/blockReward/index.d.ts +2 -0
  50. package/dist/neutral/simple/blockReward/index.d.ts.map +1 -0
  51. package/dist/neutral/simple/chain/SimpleChainViewer.d.ts +12 -0
  52. package/dist/neutral/simple/chain/SimpleChainViewer.d.ts.map +1 -0
  53. package/dist/neutral/simple/chain/index.d.ts +2 -0
  54. package/dist/neutral/simple/chain/index.d.ts.map +1 -0
  55. package/dist/neutral/simple/index.d.ts +2 -0
  56. package/dist/neutral/simple/index.d.ts.map +1 -1
  57. package/dist/neutral/simple/mempool/SimpleMempoolRunner.d.ts +15 -0
  58. package/dist/neutral/simple/mempool/SimpleMempoolRunner.d.ts.map +1 -0
  59. package/dist/neutral/simple/mempool/SimpleMempoolViewer.d.ts +10 -4
  60. package/dist/neutral/simple/mempool/SimpleMempoolViewer.d.ts.map +1 -1
  61. package/dist/neutral/simple/mempool/index.d.ts +1 -0
  62. package/dist/neutral/simple/mempool/index.d.ts.map +1 -1
  63. package/dist/neutral/summary/index.d.ts +3 -0
  64. package/dist/neutral/summary/index.d.ts.map +1 -0
  65. package/dist/neutral/summary/model/BalancesStepSummary.d.ts.map +1 -0
  66. package/dist/neutral/summary/model/SchemasStepSummary.d.ts.map +1 -0
  67. package/dist/neutral/summary/model/StepSummary.d.ts.map +1 -0
  68. package/dist/neutral/summary/model/TransfersSummary.d.ts.map +1 -0
  69. package/dist/neutral/{payloads/summary → summary/model}/index.d.ts +1 -0
  70. package/dist/neutral/summary/model/index.d.ts.map +1 -0
  71. package/dist/neutral/{model → summary/model}/summary.d.ts +3 -4
  72. package/dist/neutral/summary/model/summary.d.ts.map +1 -0
  73. package/dist/neutral/{primitives/summary → summary/primitives}/balances/balancesStepSummaryFromRange.d.ts +1 -2
  74. package/dist/neutral/summary/primitives/balances/balancesStepSummaryFromRange.d.ts.map +1 -0
  75. package/dist/neutral/summary/primitives/balances/balancesSummary.d.ts +5 -0
  76. package/dist/neutral/summary/primitives/balances/balancesSummary.d.ts.map +1 -0
  77. package/dist/neutral/summary/primitives/balances/index.d.ts.map +1 -0
  78. package/dist/neutral/{primitives/summary → summary/primitives}/index.d.ts.map +1 -1
  79. package/dist/neutral/summary/primitives/schemas/index.d.ts.map +1 -0
  80. package/dist/neutral/{primitives/summary → summary/primitives}/schemas/schemasStepSummaryFromRange.d.ts +1 -2
  81. package/dist/neutral/summary/primitives/schemas/schemasStepSummaryFromRange.d.ts.map +1 -0
  82. package/dist/neutral/summary/primitives/schemas/schemasSummary.d.ts +5 -0
  83. package/dist/neutral/summary/primitives/schemas/schemasSummary.d.ts.map +1 -0
  84. package/dist/neutral/summary/primitives/transfers/index.d.ts.map +1 -0
  85. package/dist/neutral/{primitives/summary → summary/primitives}/transfers/transfersStepSummaryFromRange.d.ts +1 -2
  86. package/dist/neutral/summary/primitives/transfers/transfersStepSummaryFromRange.d.ts.map +1 -0
  87. package/dist/neutral/summary/primitives/transfers/transfersSummary.d.ts +6 -0
  88. package/dist/neutral/summary/primitives/transfers/transfersSummary.d.ts.map +1 -0
  89. package/dist/neutral/viewers/AccountBalance.d.ts +5 -2
  90. package/dist/neutral/viewers/AccountBalance.d.ts.map +1 -1
  91. package/dist/neutral/viewers/Block.d.ts +3 -0
  92. package/dist/neutral/viewers/Block.d.ts.map +1 -1
  93. package/dist/neutral/viewers/BlockReward.d.ts +8 -0
  94. package/dist/neutral/viewers/BlockReward.d.ts.map +1 -0
  95. package/dist/neutral/viewers/ChainStakeViewer.d.ts +6 -0
  96. package/dist/neutral/viewers/ChainStakeViewer.d.ts.map +1 -0
  97. package/dist/neutral/viewers/Mempool.d.ts +8 -1
  98. package/dist/neutral/viewers/Mempool.d.ts.map +1 -1
  99. package/dist/neutral/viewers/StakeIntent.d.ts +10 -0
  100. package/dist/neutral/viewers/StakeIntent.d.ts.map +1 -0
  101. package/dist/neutral/viewers/index.d.ts +2 -0
  102. package/dist/neutral/viewers/index.d.ts.map +1 -1
  103. package/package.json +20 -19
  104. package/src/ChainServiceCollectionV2.ts +9 -33
  105. package/src/block/hydrate/flattenHydratedBlocks.ts +2 -3
  106. package/src/index.ts +2 -1
  107. package/src/model/PayloadBundle/bundledPayloadToHydratedBlock.ts +14 -0
  108. package/src/model/PayloadBundle/hydratedBlockToPayloadBundle.ts +18 -0
  109. package/src/model/PayloadBundle/index.ts +2 -0
  110. package/src/model/Qualified.ts +9 -0
  111. package/src/model/index.ts +1 -1
  112. package/src/payloads/index.ts +0 -1
  113. package/src/primitives/index.ts +1 -1
  114. package/src/primitives/rewardFromBlockNumber.ts +25 -0
  115. package/src/provider/XyoRunner.ts +7 -1
  116. package/src/provider/viewer/XyoViewer.ts +13 -4
  117. package/src/runners/Block.ts +10 -0
  118. package/src/runners/Mempool.ts +9 -0
  119. package/src/runners/index.ts +2 -0
  120. package/src/services/BlockProducerService.ts +3 -2
  121. package/src/services/Chain/ChainService.ts +4 -3
  122. package/src/services/Chain/index.ts +0 -1
  123. package/src/services/index.ts +0 -2
  124. package/src/simple/accountBalance/SimpleAccountBalanceViewer.ts +99 -13
  125. package/src/simple/block/SimpleBlockViewer.ts +60 -21
  126. package/src/simple/blockReward/SimpleBlockRewardViewer.ts +34 -0
  127. package/src/simple/blockReward/index.ts +1 -0
  128. package/src/simple/chain/SimpleChainViewer.ts +25 -0
  129. package/src/simple/chain/index.ts +1 -0
  130. package/src/simple/gateway/SimpleXyoGatewayRunner.ts +1 -1
  131. package/src/simple/index.ts +2 -0
  132. package/src/simple/mempool/SimpleMempoolRunner.ts +47 -0
  133. package/src/simple/mempool/SimpleMempoolViewer.ts +34 -8
  134. package/src/simple/mempool/index.ts +1 -0
  135. package/src/simple/timesync/SimpleTimeSyncViewer.ts +1 -1
  136. package/src/summary/index.ts +2 -0
  137. package/src/{payloads/summary → summary/model}/index.ts +1 -0
  138. package/src/{model → summary/model}/summary.ts +5 -4
  139. package/src/{primitives/summary → summary/primitives}/balances/balancesStepSummaryFromRange.ts +4 -3
  140. package/src/{primitives/summary → summary/primitives}/balances/balancesSummary.ts +6 -5
  141. package/src/{primitives/summary → summary/primitives}/schemas/schemasStepSummaryFromRange.ts +3 -3
  142. package/src/{primitives/summary → summary/primitives}/schemas/schemasSummary.ts +7 -6
  143. package/src/{primitives/summary → summary/primitives}/transfers/transfersStepSummaryFromRange.ts +4 -3
  144. package/src/{primitives/summary → summary/primitives}/transfers/transfersSummary.ts +6 -5
  145. package/src/viewers/AccountBalance.ts +9 -2
  146. package/src/viewers/Block.ts +3 -0
  147. package/src/viewers/BlockReward.ts +9 -0
  148. package/src/viewers/ChainStakeViewer.ts +7 -0
  149. package/src/viewers/Mempool.ts +10 -1
  150. package/src/viewers/StakeIntent.ts +14 -0
  151. package/src/viewers/index.ts +2 -0
  152. package/dist/neutral/model/summary.d.ts.map +0 -1
  153. package/dist/neutral/payloads/summary/BalancesStepSummary.d.ts.map +0 -1
  154. package/dist/neutral/payloads/summary/SchemasStepSummary.d.ts.map +0 -1
  155. package/dist/neutral/payloads/summary/StepSummary.d.ts.map +0 -1
  156. package/dist/neutral/payloads/summary/TransfersSummary.d.ts.map +0 -1
  157. package/dist/neutral/payloads/summary/index.d.ts.map +0 -1
  158. package/dist/neutral/primitives/summary/balances/balancesStepSummaryFromRange.d.ts.map +0 -1
  159. package/dist/neutral/primitives/summary/balances/balancesSummary.d.ts +0 -4
  160. package/dist/neutral/primitives/summary/balances/balancesSummary.d.ts.map +0 -1
  161. package/dist/neutral/primitives/summary/balances/index.d.ts.map +0 -1
  162. package/dist/neutral/primitives/summary/schemas/index.d.ts.map +0 -1
  163. package/dist/neutral/primitives/summary/schemas/schemasStepSummaryFromRange.d.ts.map +0 -1
  164. package/dist/neutral/primitives/summary/schemas/schemasSummary.d.ts +0 -4
  165. package/dist/neutral/primitives/summary/schemas/schemasSummary.d.ts.map +0 -1
  166. package/dist/neutral/primitives/summary/transfers/index.d.ts.map +0 -1
  167. package/dist/neutral/primitives/summary/transfers/transfersStepSummaryFromRange.d.ts.map +0 -1
  168. package/dist/neutral/primitives/summary/transfers/transfersSummary.d.ts +0 -5
  169. package/dist/neutral/primitives/summary/transfers/transfersSummary.d.ts.map +0 -1
  170. package/dist/neutral/services/BlockRewardService.d.ts +0 -5
  171. package/dist/neutral/services/BlockRewardService.d.ts.map +0 -1
  172. package/dist/neutral/services/BlockRewardServiceV2.d.ts +0 -6
  173. package/dist/neutral/services/BlockRewardServiceV2.d.ts.map +0 -1
  174. package/dist/neutral/services/Chain/interfaces/ChainStakeViewer.d.ts +0 -4
  175. package/dist/neutral/services/Chain/interfaces/ChainStakeViewer.d.ts.map +0 -1
  176. package/dist/neutral/services/Chain/interfaces/ChainStaker.d.ts +0 -6
  177. package/dist/neutral/services/Chain/interfaces/ChainStaker.d.ts.map +0 -1
  178. package/dist/neutral/services/Chain/interfaces/index.d.ts +0 -3
  179. package/dist/neutral/services/Chain/interfaces/index.d.ts.map +0 -1
  180. package/src/services/BlockRewardService.ts +0 -6
  181. package/src/services/BlockRewardServiceV2.ts +0 -8
  182. package/src/services/Chain/interfaces/ChainStakeViewer.ts +0 -7
  183. package/src/services/Chain/interfaces/ChainStaker.ts +0 -5
  184. package/src/services/Chain/interfaces/index.ts +0 -2
  185. /package/dist/neutral/{payloads/summary → summary/model}/BalancesStepSummary.d.ts +0 -0
  186. /package/dist/neutral/{payloads/summary → summary/model}/SchemasStepSummary.d.ts +0 -0
  187. /package/dist/neutral/{payloads/summary → summary/model}/StepSummary.d.ts +0 -0
  188. /package/dist/neutral/{payloads/summary → summary/model}/TransfersSummary.d.ts +0 -0
  189. /package/dist/neutral/{primitives/summary → summary/primitives}/balances/index.d.ts +0 -0
  190. /package/dist/neutral/{primitives/summary → summary/primitives}/index.d.ts +0 -0
  191. /package/dist/neutral/{primitives/summary → summary/primitives}/schemas/index.d.ts +0 -0
  192. /package/dist/neutral/{primitives/summary → summary/primitives}/transfers/index.d.ts +0 -0
  193. /package/src/{payloads/summary → summary/model}/BalancesStepSummary.ts +0 -0
  194. /package/src/{payloads/summary → summary/model}/SchemasStepSummary.ts +0 -0
  195. /package/src/{payloads/summary → summary/model}/StepSummary.ts +0 -0
  196. /package/src/{payloads/summary → summary/model}/TransfersSummary.ts +0 -0
  197. /package/src/{primitives/summary → summary/primitives}/balances/index.ts +0 -0
  198. /package/src/{primitives/summary → summary/primitives}/index.ts +0 -0
  199. /package/src/{primitives/summary → summary/primitives}/schemas/index.ts +0 -0
  200. /package/src/{primitives/summary → summary/primitives}/transfers/index.ts +0 -0
@@ -1,6 +1,5 @@
1
1
  import type { WithHashMeta } from '@xyo-network/payload-model';
2
2
  import type { XL1BlockRange } from '@xyo-network/xl1-protocol';
3
- import type { SchemasStepSummaryContext } from '../../../model/index.ts';
4
- import type { SchemasStepSummary } from '../../../payloads/index.ts';
3
+ import { type SchemasStepSummary, type SchemasStepSummaryContext } from '../../model/index.ts';
5
4
  export declare function schemasStepSummaryFromRange(context: SchemasStepSummaryContext, range: XL1BlockRange): Promise<WithHashMeta<SchemasStepSummary>>;
6
5
  //# sourceMappingURL=schemasStepSummaryFromRange.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schemasStepSummaryFromRange.d.ts","sourceRoot":"","sources":["../../../../../src/summary/primitives/schemas/schemasStepSummaryFromRange.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACF,YAAY,EACrB,MAAM,4BAA4B,CAAA;AAEnC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAA;AAO9D,OAAO,EACL,KAAK,kBAAkB,EAAE,KAAK,yBAAyB,EACxD,MAAM,sBAAsB,CAAA;AAE7B,wBAAsB,2BAA2B,CAC/C,OAAO,EAAE,yBAAyB,EAClC,KAAK,EAAE,aAAa,GACnB,OAAO,CAAC,YAAY,CAAC,kBAAkB,CAAC,CAAC,CA6D3C"}
@@ -0,0 +1,5 @@
1
+ import type { Schema } from '@xyo-network/payload-model';
2
+ import type { Qualified } from '../../../model/index.ts';
3
+ import type { SchemasStepSummaryContext } from '../../model/index.ts';
4
+ export declare function schemasSummary(context: SchemasStepSummaryContext): Promise<Qualified<Record<Schema, number>>>;
5
+ //# sourceMappingURL=schemasSummary.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schemasSummary.d.ts","sourceRoot":"","sources":["../../../../../src/summary/primitives/schemas/schemasSummary.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAA;AAMxD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAA;AACxD,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,sBAAsB,CAAA;AAGrE,wBAAsB,cAAc,CAClC,OAAO,EAAE,yBAAyB,GACjC,OAAO,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,CAmB5C"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/summary/primitives/transfers/index.ts"],"names":[],"mappings":"AAAA,cAAc,oCAAoC,CAAA;AAClD,cAAc,uBAAuB,CAAA"}
@@ -1,6 +1,5 @@
1
1
  import type { WithStorageMeta } from '@xyo-network/payload-model';
2
2
  import type { XL1BlockRange } from '@xyo-network/xl1-protocol';
3
- import type { TransfersStepSummaryContext } from '../../../model/index.ts';
4
- import type { TransfersStepSummary } from '../../../payloads/index.ts';
3
+ import { type TransfersStepSummary, type TransfersStepSummaryContext } from '../../model/index.ts';
5
4
  export declare function transfersStepSummaryFromRange(context: TransfersStepSummaryContext, range: XL1BlockRange): Promise<WithStorageMeta<TransfersStepSummary>>;
6
5
  //# sourceMappingURL=transfersStepSummaryFromRange.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"transfersStepSummaryFromRange.d.ts","sourceRoot":"","sources":["../../../../../src/summary/primitives/transfers/transfersStepSummaryFromRange.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAA;AAEjE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAA;AAU9D,OAAO,EACL,KAAK,oBAAoB,EAAE,KAAK,2BAA2B,EAC5D,MAAM,sBAAsB,CAAA;AAG7B,wBAAsB,6BAA6B,CACjD,OAAO,EAAE,2BAA2B,EACpC,KAAK,EAAE,aAAa,GACnB,OAAO,CAAC,eAAe,CAAC,oBAAoB,CAAC,CAAC,CA0EhD"}
@@ -0,0 +1,6 @@
1
+ import type { Address, Hash } from '@xylabs/sdk-js';
2
+ import type { Qualified } from '../../../model/index.ts';
3
+ import type { TransfersStepSummaryContext } from '../../index.ts';
4
+ export declare function transfersSummary(transferContext: TransfersStepSummaryContext): Promise<Qualified<Record<Address, Record<Address, bigint>>>>;
5
+ export declare function transfersSummaryKey(frameHeadHash: Hash, frameSize: number): string;
6
+ //# sourceMappingURL=transfersSummary.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"transfersSummary.d.ts","sourceRoot":"","sources":["../../../../../src/summary/primitives/transfers/transfersSummary.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAA;AAQnD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAA;AAExD,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,gBAAgB,CAAA;AAIjE,wBAAsB,gBAAgB,CACpC,eAAe,EAAE,2BAA2B,GAC3C,OAAO,CAAC,SAAS,CAAC,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAwB9D;AAED,wBAAgB,mBAAmB,CAAC,aAAa,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,UAEzE"}
@@ -1,6 +1,7 @@
1
1
  import type { Address, Hash, Promisable } from '@xylabs/sdk-js';
2
2
  import { type AttoXL1, type XL1BlockRange } from '@xyo-network/xl1-protocol';
3
3
  import z from 'zod';
4
+ import type { Qualified } from '../model/index.ts';
4
5
  export declare const AccountBalanceHistoryItemZod: z.ZodTuple<[z.ZodObject<{
5
6
  schema: z.ZodLiteral<"network.xyo.boundwitness">;
6
7
  addresses: z.ZodArray<z.ZodPipe<z.ZodString, z.ZodTransform<import("@xylabs/sdk-js").Address, string>>>;
@@ -52,11 +53,13 @@ export declare const AccountBalanceHistoryItemZod: z.ZodTuple<[z.ZodObject<{
52
53
  }, z.z.core.$strip>], null>;
53
54
  export type AccountBalanceHistoryItem = z.infer<typeof AccountBalanceHistoryItemZod>;
54
55
  export interface AccountBalanceViewerMethods {
55
- accountsBalances(address: Address[], headOrRange?: Hash | XL1BlockRange): Promisable<Partial<Record<Address, AttoXL1>>>;
56
- accountsBalancesHistory(address: Address[], headOrRange?: Hash | XL1BlockRange): Promisable<Partial<Record<Address, AccountBalanceHistoryItem[]>>>;
56
+ qualifiedAccountBalanceHistories(address: Address[], headOrRange?: Hash | XL1BlockRange): Promisable<Qualified<Record<Address, AccountBalanceHistoryItem[]>>>;
57
+ qualifiedAccountBalances(address: Address[], headOrRange?: Hash | XL1BlockRange): Promisable<Qualified<Record<Address, AttoXL1>>>;
57
58
  }
58
59
  export interface AccountBalanceViewer extends AccountBalanceViewerMethods {
59
60
  accountBalance(address: Address, headOrRange?: Hash | XL1BlockRange): Promisable<AttoXL1>;
61
+ accountBalanceHistories(address: Address[], headOrRange?: Hash | XL1BlockRange): Promisable<Record<Address, AccountBalanceHistoryItem[]>>;
60
62
  accountBalanceHistory(address: Address, headOrRange?: Hash | XL1BlockRange): Promisable<AccountBalanceHistoryItem[]>;
63
+ accountBalances(address: Address[], headOrRange?: Hash | XL1BlockRange): Promisable<Record<Address, AttoXL1>>;
61
64
  }
62
65
  //# sourceMappingURL=AccountBalance.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"AccountBalance.d.ts","sourceRoot":"","sources":["../../../src/viewers/AccountBalance.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,OAAO,EAAE,IAAI,EAAE,UAAU,EAC1B,MAAM,gBAAgB,CAAA;AAEvB,OAAO,EACL,KAAK,OAAO,EAEZ,KAAK,aAAa,EACnB,MAAM,2BAA2B,CAAA;AAElC,OAAO,CAAC,MAAM,KAAK,CAAA;AAEnB,eAAO,MAAM,4BAA4B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2BAIvC,CAAA;AAEF,MAAM,MAAM,yBAAyB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,4BAA4B,CAAC,CAAA;AAEpF,MAAM,WAAW,2BAA2B;IAC1C,gBAAgB,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE,WAAW,CAAC,EAAE,IAAI,GAAG,aAAa,GAAG,UAAU,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,CAAA;IACvH,uBAAuB,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE,WAAW,CAAC,EAAE,IAAI,GAAG,aAAa,GAAG,UAAU,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,EAAE,yBAAyB,EAAE,CAAC,CAAC,CAAC,CAAA;CACnJ;AAED,MAAM,WAAW,oBAAqB,SAAQ,2BAA2B;IACvE,cAAc,CAAC,OAAO,EAAE,OAAO,EAAE,WAAW,CAAC,EAAE,IAAI,GAAG,aAAa,GAAG,UAAU,CAAC,OAAO,CAAC,CAAA;IACzF,qBAAqB,CAAC,OAAO,EAAE,OAAO,EAAE,WAAW,CAAC,EAAE,IAAI,GAAG,aAAa,GAAG,UAAU,CAAC,yBAAyB,EAAE,CAAC,CAAA;CACrH"}
1
+ {"version":3,"file":"AccountBalance.d.ts","sourceRoot":"","sources":["../../../src/viewers/AccountBalance.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,OAAO,EAAE,IAAI,EAAE,UAAU,EAC1B,MAAM,gBAAgB,CAAA;AAEvB,OAAO,EACL,KAAK,OAAO,EAEZ,KAAK,aAAa,EACnB,MAAM,2BAA2B,CAAA;AAElC,OAAO,CAAC,MAAM,KAAK,CAAA;AAEnB,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAA;AAElD,eAAO,MAAM,4BAA4B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2BAIvC,CAAA;AAEF,MAAM,MAAM,yBAAyB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,4BAA4B,CAAC,CAAA;AAEpF,MAAM,WAAW,2BAA2B;IAC1C,gCAAgC,CAC9B,OAAO,EAAE,OAAO,EAAE,EAClB,WAAW,CAAC,EAAE,IAAI,GAAG,aAAa,GACjC,UAAU,CAAC,SAAS,CAAC,MAAM,CAAC,OAAO,EAAE,yBAAyB,EAAE,CAAC,CAAC,CAAC,CAAA;IACtE,wBAAwB,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE,WAAW,CAAC,EAAE,IAAI,GAAG,aAAa,GAAG,UAAU,CAAC,SAAS,CAAC,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,CAAA;CAClI;AAED,MAAM,WAAW,oBAAqB,SAAQ,2BAA2B;IACvE,cAAc,CAAC,OAAO,EAAE,OAAO,EAAE,WAAW,CAAC,EAAE,IAAI,GAAG,aAAa,GAAG,UAAU,CAAC,OAAO,CAAC,CAAA;IACzF,uBAAuB,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE,WAAW,CAAC,EAAE,IAAI,GAAG,aAAa,GAAG,UAAU,CAAC,MAAM,CAAC,OAAO,EAAE,yBAAyB,EAAE,CAAC,CAAC,CAAA;IACzI,qBAAqB,CAAC,OAAO,EAAE,OAAO,EAAE,WAAW,CAAC,EAAE,IAAI,GAAG,aAAa,GAAG,UAAU,CAAC,yBAAyB,EAAE,CAAC,CAAA;IACpH,eAAe,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE,WAAW,CAAC,EAAE,IAAI,GAAG,aAAa,GAAG,UAAU,CAAC,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAA;CAC9G"}
@@ -1,14 +1,17 @@
1
1
  import type { Hash, Promisable } from '@xylabs/sdk-js';
2
+ import type { Payload, WithHashMeta } from '@xyo-network/payload-model';
2
3
  import type { SignedHydratedBlockWithHashMeta, XL1BlockNumber } from '@xyo-network/xl1-protocol';
3
4
  export interface BlockViewerMethods {
4
5
  blocksByHash(hash: Hash, limit?: number): Promisable<SignedHydratedBlockWithHashMeta[]>;
5
6
  blocksByNumber(block: XL1BlockNumber, limit?: number): Promisable<SignedHydratedBlockWithHashMeta[]>;
6
7
  currentBlock(): Promisable<SignedHydratedBlockWithHashMeta>;
8
+ payloadsByHash(hashes: Hash[]): Promisable<WithHashMeta<Payload>[]>;
7
9
  }
8
10
  export interface BlockViewer extends BlockViewerMethods {
9
11
  blockByHash(hash: Hash): Promisable<SignedHydratedBlockWithHashMeta | null>;
10
12
  blockByNumber(block: XL1BlockNumber): Promisable<SignedHydratedBlockWithHashMeta | null>;
11
13
  currentBlockHash(): Promisable<Hash>;
12
14
  currentBlockNumber(): Promisable<XL1BlockNumber>;
15
+ payloadByHash(hash: Hash): Promisable<WithHashMeta<Payload> | null>;
13
16
  }
14
17
  //# sourceMappingURL=Block.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Block.d.ts","sourceRoot":"","sources":["../../../src/viewers/Block.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAA;AACtD,OAAO,KAAK,EAAE,+BAA+B,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAA;AAEhG,MAAM,WAAW,kBAAkB;IACjC,YAAY,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,UAAU,CAAC,+BAA+B,EAAE,CAAC,CAAA;IACvF,cAAc,CAAC,KAAK,EAAE,cAAc,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,UAAU,CAAC,+BAA+B,EAAE,CAAC,CAAA;IACpG,YAAY,IAAI,UAAU,CAAC,+BAA+B,CAAC,CAAA;CAC5D;AAED,MAAM,WAAW,WAAY,SAAQ,kBAAkB;IACrD,WAAW,CAAC,IAAI,EAAE,IAAI,GAAG,UAAU,CAAC,+BAA+B,GAAG,IAAI,CAAC,CAAA;IAC3E,aAAa,CAAC,KAAK,EAAE,cAAc,GAAG,UAAU,CAAC,+BAA+B,GAAG,IAAI,CAAC,CAAA;IACxF,gBAAgB,IAAI,UAAU,CAAC,IAAI,CAAC,CAAA;IACpC,kBAAkB,IAAI,UAAU,CAAC,cAAc,CAAC,CAAA;CACjD"}
1
+ {"version":3,"file":"Block.d.ts","sourceRoot":"","sources":["../../../src/viewers/Block.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAA;AACtD,OAAO,KAAK,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAA;AACvE,OAAO,KAAK,EAAE,+BAA+B,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAA;AAEhG,MAAM,WAAW,kBAAkB;IACjC,YAAY,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,UAAU,CAAC,+BAA+B,EAAE,CAAC,CAAA;IACvF,cAAc,CAAC,KAAK,EAAE,cAAc,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,UAAU,CAAC,+BAA+B,EAAE,CAAC,CAAA;IACpG,YAAY,IAAI,UAAU,CAAC,+BAA+B,CAAC,CAAA;IAC3D,cAAc,CAAC,MAAM,EAAE,IAAI,EAAE,GAAG,UAAU,CAAC,YAAY,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;CACpE;AAED,MAAM,WAAW,WAAY,SAAQ,kBAAkB;IACrD,WAAW,CAAC,IAAI,EAAE,IAAI,GAAG,UAAU,CAAC,+BAA+B,GAAG,IAAI,CAAC,CAAA;IAC3E,aAAa,CAAC,KAAK,EAAE,cAAc,GAAG,UAAU,CAAC,+BAA+B,GAAG,IAAI,CAAC,CAAA;IACxF,gBAAgB,IAAI,UAAU,CAAC,IAAI,CAAC,CAAA;IACpC,kBAAkB,IAAI,UAAU,CAAC,cAAc,CAAC,CAAA;IAChD,aAAa,CAAC,IAAI,EAAE,IAAI,GAAG,UAAU,CAAC,YAAY,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC,CAAA;CACpE"}
@@ -0,0 +1,8 @@
1
+ import type { Promisable } from '@xylabs/sdk-js';
2
+ import type { AttoXL1, XL1BlockNumber } from '@xyo-network/xl1-protocol';
3
+ export interface BlockRewardViewerMethods {
4
+ allowedRewardForBlock(block: XL1BlockNumber): Promisable<AttoXL1>;
5
+ }
6
+ export interface BlockRewardViewer extends BlockRewardViewerMethods {
7
+ }
8
+ //# sourceMappingURL=BlockReward.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BlockReward.d.ts","sourceRoot":"","sources":["../../../src/viewers/BlockReward.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAA;AAChD,OAAO,KAAK,EAAE,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAA;AAExE,MAAM,WAAW,wBAAwB;IAEvC,qBAAqB,CAAC,KAAK,EAAE,cAAc,GAAG,UAAU,CAAC,OAAO,CAAC,CAAA;CAClE;AAED,MAAM,WAAW,iBAAkB,SAAQ,wBAAwB;CAAG"}
@@ -0,0 +1,6 @@
1
+ import type { ChainViewer } from './Chain.ts';
2
+ import type { ChainContractViewer } from './ChainContract.ts';
3
+ import type { StakeTotalsViewer } from './StakeTotals.ts';
4
+ export interface ChainStakeViewer extends ChainContractViewer, StakeTotalsViewer, ChainViewer {
5
+ }
6
+ //# sourceMappingURL=ChainStakeViewer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ChainStakeViewer.d.ts","sourceRoot":"","sources":["../../../src/viewers/ChainStakeViewer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAA;AAC7C,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAA;AAC7D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAA;AAEzD,MAAM,WAAW,gBAAiB,SAAQ,mBAAmB,EAAE,iBAAiB,EAAE,WAAW;CAE5F"}
@@ -1,4 +1,4 @@
1
- import type { SignedHydratedTransactionWithHashMeta } from '@xyo-network/xl1-protocol';
1
+ import type { SignedHydratedBlockWithHashMeta, SignedHydratedTransactionWithHashMeta } from '@xyo-network/xl1-protocol';
2
2
  import z from 'zod';
3
3
  export declare const PendingTransactionsOptionsZod: z.ZodObject<{
4
4
  cursor: z.ZodOptional<z.ZodPipe<z.ZodString, z.ZodTransform<import("@xylabs/sdk-js").Hash, string>>>;
@@ -6,7 +6,14 @@ export declare const PendingTransactionsOptionsZod: z.ZodObject<{
6
6
  window: z.ZodOptional<z.ZodTuple<[z.ZodPipe<z.ZodNumber, z.ZodTransform<import("@xyo-network/xl1-protocol").XL1BlockNumber, number>>, z.ZodPipe<z.ZodNumber, z.ZodTransform<import("@xyo-network/xl1-protocol").XL1BlockNumber, number>>], null>>;
7
7
  }, z.z.core.$strip>;
8
8
  export type PendingTransactionsOptions = z.infer<typeof PendingTransactionsOptionsZod>;
9
+ export declare const PendingBlocksOptionsZod: z.ZodObject<{
10
+ cursor: z.ZodOptional<z.ZodPipe<z.ZodString, z.ZodTransform<import("@xylabs/sdk-js").Hash, string>>>;
11
+ limit: z.ZodOptional<z.ZodNumber>;
12
+ window: z.ZodOptional<z.ZodTuple<[z.ZodPipe<z.ZodNumber, z.ZodTransform<import("@xyo-network/xl1-protocol").XL1BlockNumber, number>>, z.ZodPipe<z.ZodNumber, z.ZodTransform<import("@xyo-network/xl1-protocol").XL1BlockNumber, number>>], null>>;
13
+ }, z.z.core.$strip>;
14
+ export type PendingBlocksOptions = z.infer<typeof PendingBlocksOptionsZod>;
9
15
  export interface MempoolViewerMethods {
16
+ pendingBlocks(options?: PendingBlocksOptions): Promise<SignedHydratedBlockWithHashMeta[]>;
10
17
  pendingTransactions(options?: PendingTransactionsOptions): Promise<SignedHydratedTransactionWithHashMeta[]>;
11
18
  }
12
19
  export interface MempoolViewer extends MempoolViewerMethods {
@@ -1 +1 @@
1
- {"version":3,"file":"Mempool.d.ts","sourceRoot":"","sources":["../../../src/viewers/Mempool.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,qCAAqC,EAAE,MAAM,2BAA2B,CAAA;AAEtF,OAAO,CAAC,MAAM,KAAK,CAAA;AAEnB,eAAO,MAAM,6BAA6B;;;;mBAIxC,CAAA;AAEF,MAAM,MAAM,0BAA0B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,6BAA6B,CAAC,CAAA;AAEtF,MAAM,WAAW,oBAAoB;IACnC,mBAAmB,CAAC,OAAO,CAAC,EAAE,0BAA0B,GAAG,OAAO,CAAC,qCAAqC,EAAE,CAAC,CAAA;CAC5G;AAED,MAAM,WAAW,aAAc,SAAQ,oBAAoB;CAAG"}
1
+ {"version":3,"file":"Mempool.d.ts","sourceRoot":"","sources":["../../../src/viewers/Mempool.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,+BAA+B,EAAE,qCAAqC,EAAE,MAAM,2BAA2B,CAAA;AAEvH,OAAO,CAAC,MAAM,KAAK,CAAA;AAEnB,eAAO,MAAM,6BAA6B;;;;mBAIxC,CAAA;AAEF,MAAM,MAAM,0BAA0B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,6BAA6B,CAAC,CAAA;AAEtF,eAAO,MAAM,uBAAuB;;;;mBAIlC,CAAA;AAEF,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAA;AAE1E,MAAM,WAAW,oBAAoB;IACnC,aAAa,CAAC,OAAO,CAAC,EAAE,oBAAoB,GAAG,OAAO,CAAC,+BAA+B,EAAE,CAAC,CAAA;IACzF,mBAAmB,CAAC,OAAO,CAAC,EAAE,0BAA0B,GAAG,OAAO,CAAC,qCAAqC,EAAE,CAAC,CAAA;CAC5G;AAED,MAAM,WAAW,aAAc,SAAQ,oBAAoB;CAAG"}
@@ -0,0 +1,10 @@
1
+ import type { Address, Hash, Promisable } from '@xylabs/sdk-js';
2
+ import type { ChainStakeIntent, XL1BlockRange } from '@xyo-network/xl1-protocol';
3
+ import type { Qualified } from '../model/index.ts';
4
+ export interface StakeIntentViewerMethods {
5
+ qualifiedIntentByAddress(address: Address, headOrRange?: Hash | XL1BlockRange): Promisable<Qualified<ChainStakeIntent | null>>;
6
+ }
7
+ export interface StakeIntentViewer extends StakeIntentViewerMethods {
8
+ intentByAddress(address: Address, headOrRange?: Hash | XL1BlockRange): Promisable<ChainStakeIntent | null>;
9
+ }
10
+ //# sourceMappingURL=StakeIntent.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"StakeIntent.d.ts","sourceRoot":"","sources":["../../../src/viewers/StakeIntent.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,OAAO,EAAE,IAAI,EAAE,UAAU,EAC1B,MAAM,gBAAgB,CAAA;AACvB,OAAO,KAAK,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAA;AAEhF,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAA;AAElD,MAAM,WAAW,wBAAwB;IACvC,wBAAwB,CAAC,OAAO,EAAE,OAAO,EAAE,WAAW,CAAC,EAAE,IAAI,GAAG,aAAa,GAAG,UAAU,CAAC,SAAS,CAAC,gBAAgB,GAAG,IAAI,CAAC,CAAC,CAAA;CAC/H;AAED,MAAM,WAAW,iBAAkB,SAAQ,wBAAwB;IACjE,eAAe,CAAC,OAAO,EAAE,OAAO,EAAE,WAAW,CAAC,EAAE,IAAI,GAAG,aAAa,GAAG,UAAU,CAAC,gBAAgB,GAAG,IAAI,CAAC,CAAA;CAC3G"}
@@ -1,7 +1,9 @@
1
1
  export * from './AccountBalance.ts';
2
2
  export * from './Block.ts';
3
+ export * from './BlockReward.ts';
3
4
  export * from './Chain.ts';
4
5
  export * from './ChainContract.ts';
6
+ export * from './ChainStakeViewer.ts';
5
7
  export * from './Fork.ts';
6
8
  export * from './Mempool.ts';
7
9
  export * from './NetworkStakeStepReward.ts';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/viewers/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAA;AACnC,cAAc,YAAY,CAAA;AAC1B,cAAc,YAAY,CAAA;AAC1B,cAAc,oBAAoB,CAAA;AAClC,cAAc,WAAW,CAAA;AACzB,cAAc,cAAc,CAAA;AAC5B,cAAc,6BAA6B,CAAA;AAC3C,cAAc,YAAY,CAAA;AAC1B,cAAc,kBAAkB,CAAA;AAChC,cAAc,kBAAkB,CAAA;AAChC,cAAc,gBAAgB,CAAA;AAC9B,cAAc,iBAAiB,CAAA;AAC/B,cAAc,eAAe,CAAA;AAC7B,cAAc,kBAAkB,CAAA;AAChC,cAAc,sBAAsB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/viewers/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAA;AACnC,cAAc,YAAY,CAAA;AAC1B,cAAc,kBAAkB,CAAA;AAChC,cAAc,YAAY,CAAA;AAC1B,cAAc,oBAAoB,CAAA;AAClC,cAAc,uBAAuB,CAAA;AACrC,cAAc,WAAW,CAAA;AACzB,cAAc,cAAc,CAAA;AAC5B,cAAc,6BAA6B,CAAA;AAC3C,cAAc,YAAY,CAAA;AAC1B,cAAc,kBAAkB,CAAA;AAChC,cAAc,kBAAkB,CAAA;AAChC,cAAc,gBAAgB,CAAA;AAC9B,cAAc,iBAAiB,CAAA;AAC/B,cAAc,eAAe,CAAA;AAC7B,cAAc,kBAAkB,CAAA;AAChC,cAAc,sBAAsB,CAAA"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "$schema": "http://json.schemastore.org/package.json",
3
3
  "name": "@xyo-network/xl1-protocol-sdk",
4
- "version": "1.17.0",
4
+ "version": "1.17.2",
5
5
  "description": "XYO Layer One SDK Protocol",
6
6
  "homepage": "https://xylabs.com",
7
7
  "bugs": {
@@ -39,34 +39,35 @@
39
39
  "!**/*.test.*"
40
40
  ],
41
41
  "dependencies": {
42
- "@xylabs/sdk-js": "~5.0.46",
43
- "@xylabs/telemetry": "~5.0.46",
44
- "@xyo-network/account": "~5.2.10",
45
- "@xyo-network/account-model": "~5.2.10",
46
- "@xyo-network/archivist-memory": "~5.2.10",
47
- "@xyo-network/archivist-model": "~5.2.10",
48
- "@xyo-network/boundwitness-builder": "~5.2.10",
49
- "@xyo-network/boundwitness-model": "~5.2.10",
50
- "@xyo-network/payload-builder": "~5.2.10",
51
- "@xyo-network/payload-model": "~5.2.10",
52
- "@xyo-network/wallet": "~5.2.10",
53
- "@xyo-network/wallet-model": "~5.2.10",
54
- "@xyo-network/xl1-protocol": "~1.14.15",
42
+ "@xylabs/sdk-js": "~5.0.50",
43
+ "@xylabs/telemetry": "~5.0.50",
44
+ "@xyo-network/account": "~5.2.17",
45
+ "@xyo-network/account-model": "~5.2.17",
46
+ "@xyo-network/archivist-memory": "~5.2.17",
47
+ "@xyo-network/archivist-model": "~5.2.17",
48
+ "@xyo-network/boundwitness-builder": "~5.2.17",
49
+ "@xyo-network/boundwitness-model": "~5.2.17",
50
+ "@xyo-network/payload-builder": "~5.2.17",
51
+ "@xyo-network/payload-model": "~5.2.17",
52
+ "@xyo-network/wallet": "~5.2.17",
53
+ "@xyo-network/wallet-model": "~5.2.17",
54
+ "@xyo-network/xl1-protocol": "~1.14.16",
55
55
  "async-mutex": "~0.5.0",
56
- "ethers": "~6.15.0",
57
- "lru-cache": "^11.2.2",
56
+ "ethers": "^6.16.0",
57
+ "lru-cache": "^11.2.4",
58
58
  "zod": "~4.1.13"
59
59
  },
60
60
  "devDependencies": {
61
61
  "@types/node": "~24.10.1",
62
62
  "@xylabs/ts-scripts-yarn3": "~7.2.8",
63
63
  "@xylabs/tsconfig": "~7.2.8",
64
- "@xyo-network/account": "~5.2.10",
65
- "@xyo-network/boundwitness-validator": "~5.2.10",
64
+ "@xylabs/vitest-extended": "~5.0.50",
65
+ "@xyo-network/account": "~5.2.17",
66
+ "@xyo-network/boundwitness-validator": "~5.2.17",
66
67
  "axios": "^1.13.2",
67
68
  "eslint": "^9.39.1",
68
69
  "typescript": "~5.9.3",
69
- "vitest": "~4.0.14"
70
+ "vitest": "~4.0.15"
70
71
  },
71
72
  "peerDependencies": {
72
73
  "axios": "^1.13.2"
@@ -1,13 +1,9 @@
1
- import type { ArchivistInstance, WriteArchivist } from '@xyo-network/archivist-model'
2
1
  import type { WalletInstance } from '@xyo-network/wallet-model'
3
2
 
3
+ import type { MempoolRunner } from './runners/index.ts'
4
+ import type { BlockProducerService } from './services/index.ts'
4
5
  import type {
5
- BlockProducerService, BlockRewardService,
6
- ChainStaker, ChainStakeViewer, ElectionService,
7
- StakeIntentService,
8
- } from './services/index.ts'
9
- import type {
10
- AccountBalanceViewer, BlockViewer, ChainContractViewer, MempoolViewer,
6
+ AccountBalanceViewer, BlockRewardViewer, BlockViewer, ChainContractViewer, ChainStakeViewer, MempoolViewer,
11
7
  } from './viewers/index.ts'
12
8
 
13
9
  export interface ChainServiceCollectionV2 {
@@ -29,31 +25,15 @@ export interface ChainServiceCollectionV2 {
29
25
  * from a contract
30
26
  */
31
27
  chainContractViewer: ChainContractViewer
28
+
32
29
  /**
33
30
  * Service for viewing stake information
34
31
  */
35
32
  chainStakeViewer: ChainStakeViewer
36
- /**
37
- * Service for staking
38
- */
39
- chainStaker: ChainStaker
40
- /**
41
- * The archivist which the chain submissions are stored in
42
- */
43
- chainSubmissionsArchivistWrite: WriteArchivist
44
- /**
45
- * Service for determining leader election
46
- */
47
- election: ElectionService
48
- /**
49
- * The archivist which the pending transactions are stored
50
- * as bundled transactions
51
- */
52
- pendingBundledTransactionsArchivistWrite: ArchivistInstance
53
- /**
54
- * Service for managing pending transactions
55
- */
56
- pendingTransactions: MempoolViewer
33
+
34
+ mempoolRunner: MempoolRunner
35
+ mempoolViewer: MempoolViewer
36
+
57
37
  /**
58
38
  * The block producer service
59
39
  */
@@ -61,9 +41,5 @@ export interface ChainServiceCollectionV2 {
61
41
  /**
62
42
  * Service response for calculating block rewards
63
43
  */
64
- reward: BlockRewardService
65
- /**
66
- * Services for working with staked intents
67
- */
68
- stakeIntent: StakeIntentService
44
+ reward: BlockRewardViewer
69
45
  }
@@ -1,7 +1,6 @@
1
- import type { Payload, WithHashMeta } from '@xyo-network/payload-model'
2
- import type { HydratedBlockWithHashMeta } from '@xyo-network/xl1-protocol'
1
+ import type { HydratedBlock } from '@xyo-network/xl1-protocol'
3
2
 
4
3
  import { flattenHydratedBlock } from './flattenHydratedBlock.ts'
5
4
 
6
- export const flattenHydratedBlocks = (hydratedBlocks: HydratedBlockWithHashMeta[]): WithHashMeta<Payload>[] =>
5
+ export const flattenHydratedBlocks = <T extends HydratedBlock>(hydratedBlocks: T[]): (T[0] | T[1][number])[] =>
7
6
  hydratedBlocks.flatMap(blk => flattenHydratedBlock(blk))
package/src/index.ts CHANGED
@@ -11,13 +11,14 @@ export * from './multipliers.ts'
11
11
  export * from './payloads/index.ts'
12
12
  export * from './primitives/index.ts'
13
13
  export * from './provider/index.ts'
14
+ export * from './runners/index.ts'
14
15
  export * from './services/index.ts'
15
16
  export * from './SignedBigInt.ts'
16
17
  export * from './simple/index.ts'
18
+ export * from './summary/index.ts'
17
19
  export * from './time/index.ts'
18
20
  export * from './transaction/index.ts'
19
21
  export * from './utils/index.ts'
20
22
  export * from './validation/index.ts'
21
23
  export * from './viewers/index.ts'
22
24
  export * from './wallet/index.ts'
23
- // export * from './zod/index.ts'
@@ -0,0 +1,14 @@
1
+ import { PayloadBuilder } from '@xyo-network/payload-builder'
2
+ import type { PayloadBundle, WithHashMeta } from '@xyo-network/payload-model'
3
+ import type { SignedHydratedBlockWithHashMeta } from '@xyo-network/xl1-protocol'
4
+ import { asSignedBlockBoundWitnessWithHashMeta } from '@xyo-network/xl1-protocol'
5
+
6
+ export const bundledPayloadToHydratedBlock = async (
7
+ payload: WithHashMeta<PayloadBundle>,
8
+ ): Promise<SignedHydratedBlockWithHashMeta | undefined> => {
9
+ const withHashMeta = await PayloadBuilder.addHashMeta(payload.payloads)
10
+ const tx = asSignedBlockBoundWitnessWithHashMeta(withHashMeta.find(p => p._hash === payload.root))
11
+ if (tx) {
12
+ return [tx, withHashMeta.filter(p => p._hash !== payload.root)]
13
+ }
14
+ }
@@ -0,0 +1,18 @@
1
+ import type { Hash } from '@xylabs/sdk-js'
2
+ import { PayloadBuilder } from '@xyo-network/payload-builder'
3
+ import { type PayloadBundle, PayloadBundleSchema } from '@xyo-network/payload-model'
4
+ import type { SignedHydratedBlockWithHashMeta } from '@xyo-network/xl1-protocol'
5
+
6
+ import { flattenHydratedBlock } from '../../block/index.ts'
7
+
8
+ export const hydratedBlockToPayloadBundle = (transaction: SignedHydratedBlockWithHashMeta): PayloadBundle => {
9
+ const root = transaction[0]._hash
10
+ return bundle(root, transaction)
11
+ }
12
+
13
+ const bundle = (root: Hash, transaction: SignedHydratedBlockWithHashMeta) => {
14
+ const payloads = flattenHydratedBlock(transaction).flatMap(p => PayloadBuilder.omitStorageMeta(p))
15
+ return new PayloadBuilder<PayloadBundle>({ schema: PayloadBundleSchema })
16
+ .fields({ payloads, root })
17
+ .build()
18
+ }
@@ -1,2 +1,4 @@
1
+ export * from './bundledPayloadToHydratedBlock.ts'
1
2
  export * from './bundledPayloadToHydratedTransaction.ts'
3
+ export * from './hydratedBlockToPayloadBundle.ts'
2
4
  export * from './hydratedTransactionToPayloadBundle.ts'
@@ -0,0 +1,9 @@
1
+ import { type Hash, HashZod } from '@xylabs/sdk-js'
2
+ import { type XL1BlockRange, XL1BlockRangeZod } from '@xyo-network/xl1-protocol'
3
+ import z from 'zod'
4
+
5
+ export type Qualified<T> = [T, XL1BlockRange, Hash]
6
+
7
+ export const QualifiedZod = <T>(zodType: z.ZodType<T>) => {
8
+ return z.tuple([zodType, XL1BlockRangeZod, HashZod])
9
+ }
@@ -5,5 +5,5 @@ export * from './ChainStore.ts'
5
5
  export * from './PayloadBundle/index.ts'
6
6
  export * from './PayloadMap.ts'
7
7
  export * from './Position.ts'
8
+ export * from './Qualified.ts'
8
9
  export * from './RecordKeyType.ts'
9
- export * from './summary.ts'
@@ -2,4 +2,3 @@ export * from './AddressPairPayload.ts'
2
2
  export * from './netBalancesForPayloads.ts'
3
3
  export * from './netSchemasForPayloads.ts'
4
4
  export * from './netTransfersForPayloads.ts'
5
- export * from './summary/index.ts'
@@ -1,6 +1,6 @@
1
1
  export * from './readPayloadMapFromStore.ts'
2
+ export * from './rewardFromBlockNumber.ts'
2
3
  export * from './state/index.ts'
3
4
  export * from './step/index.ts'
4
- export * from './summary/index.ts'
5
5
  export * from './timeBudget.ts'
6
6
  export * from './transaction/index.ts'
@@ -0,0 +1,25 @@
1
+ import { toFixedPoint } from '@xylabs/sdk-js'
2
+ import { asAttoXL1, type XL1BlockNumber } from '@xyo-network/xl1-protocol'
3
+
4
+ export const rewardFromBlockNumber = (places = 18) => {
5
+ return (
6
+ blockNumber: XL1BlockNumber,
7
+ startingReward = asAttoXL1(toFixedPoint(30_000n, places)),
8
+ blocksPerStep = 1_000_000,
9
+ stepFactorNumerator = 90n,
10
+ stepFactorDenominator = 100n,
11
+ minBlockReward = asAttoXL1(toFixedPoint(30n, places)),
12
+ creatorReward = asAttoXL1(toFixedPoint(20_000_000_000n, places)),
13
+ ) => {
14
+ if (blockNumber === 0) {
15
+ return creatorReward
16
+ }
17
+ const step = Math.floor((blockNumber + blocksPerStep) / blocksPerStep)
18
+ const stepExp = BigInt(step - 1)
19
+ const poweredNumerator = stepExp > 0 ? stepFactorNumerator ** stepExp : 1n
20
+ const poweredDenominator = stepExp > 0 ? stepFactorDenominator ** stepExp : 1n
21
+ let reward = (startingReward * poweredNumerator) / poweredDenominator
22
+ // eslint-disable-next-line unicorn/prefer-math-min-max
23
+ return asAttoXL1((reward < minBlockReward) ? minBlockReward : reward)
24
+ }
25
+ }
@@ -1,6 +1,12 @@
1
1
  import type { Hash, Promisable } from '@xylabs/sdk-js'
2
2
  import type { SignedHydratedTransaction } from '@xyo-network/xl1-protocol'
3
3
 
4
- export interface XyoRunner {
4
+ import type { MempoolRunner } from '../runners/index.ts'
5
+
6
+ export interface XyoRunnerMethods {
5
7
  broadcastTransaction(transaction: SignedHydratedTransaction): Promisable<Hash>
6
8
  }
9
+
10
+ export interface XyoRunner extends XyoRunnerMethods {
11
+ mempool?: MempoolRunner
12
+ }
@@ -1,10 +1,16 @@
1
1
  import type {
2
+ Address, Hash, Promisable,
3
+ } from '@xylabs/sdk-js'
4
+ import type { AttoXL1, XL1BlockRange } from '@xyo-network/xl1-protocol'
5
+
6
+ import type {
7
+ AccountBalanceHistoryItem,
2
8
  AccountBalanceViewer,
3
- AccountBalanceViewerMethods,
4
9
  BlockViewer,
5
10
  BlockViewerMethods,
6
11
  ChainViewerMethods,
7
12
  ForkViewerMethods,
13
+ MempoolViewer,
8
14
  NetworkStakeStepRewardViewer,
9
15
  StakeViewerMethods,
10
16
  StepViewer,
@@ -13,9 +19,11 @@ import type {
13
19
  } from '../../viewers/index.ts'
14
20
  import type { NetworkStakeViewer } from './NetworkStake/index.ts'
15
21
 
16
- export interface XyoViewerMethods extends AccountBalanceViewerMethods, TransferBalanceViewerMethods,
17
- NetworkStakeStepRewardViewer, AccountBalanceViewer,
18
- ChainViewerMethods, BlockViewerMethods, TransactionViewerMethods, StakeViewerMethods, ForkViewerMethods {
22
+ export interface XyoViewerMethods extends
23
+ TransferBalanceViewerMethods, NetworkStakeStepRewardViewer,
24
+ Pick<ChainViewerMethods, 'chainId'>, BlockViewerMethods, TransactionViewerMethods, StakeViewerMethods, ForkViewerMethods {
25
+ accountBalance(address: Address, headOrRange?: Hash | XL1BlockRange): Promisable<AttoXL1>
26
+ accountBalanceHistory(address: Address, headOrRange?: Hash | XL1BlockRange): Promisable<AccountBalanceHistoryItem[]>
19
27
  }
20
28
 
21
29
  export interface XyoViewer extends BlockViewer, XyoViewerMethods {
@@ -23,6 +31,7 @@ export interface XyoViewer extends BlockViewer, XyoViewerMethods {
23
31
  balance?: AccountBalanceViewer
24
32
  }
25
33
  block?: BlockViewer
34
+ mempool?: MempoolViewer
26
35
  networkStake?: NetworkStakeViewer
27
36
  step?: StepViewer
28
37
  }
@@ -0,0 +1,10 @@
1
+ import type { SignedBlockBoundWitnessWithHashMeta, SignedHydratedBlockWithHashMeta } from '@xyo-network/xl1-protocol'
2
+
3
+ export interface BlockRunnerMethods {
4
+ produceNextBlock(head: SignedBlockBoundWitnessWithHashMeta, force: true): Promise<SignedHydratedBlockWithHashMeta>
5
+ produceNextBlock(head: SignedBlockBoundWitnessWithHashMeta, force?: false): Promise<SignedHydratedBlockWithHashMeta | undefined>
6
+ }
7
+
8
+ export interface BlockRunner extends BlockRunnerMethods {
9
+
10
+ }
@@ -0,0 +1,9 @@
1
+ import type { Hash } from '@xylabs/sdk-js'
2
+ import type { SignedHydratedBlock, SignedHydratedTransaction } from '@xyo-network/xl1-protocol'
3
+
4
+ export interface MempoolRunnerMethods {
5
+ submitBlocks(blocks: SignedHydratedBlock[]): Promise<Hash[]>
6
+ submitTransactions(transactions: SignedHydratedTransaction[]): Promise<Hash[]>
7
+ }
8
+
9
+ export interface MempoolRunner extends MempoolRunnerMethods {}
@@ -0,0 +1,2 @@
1
+ export * from './Block.ts'
2
+ export * from './Mempool.ts'
@@ -1,8 +1,9 @@
1
1
  import type {
2
2
  Addressable,
3
- BlockBoundWitness, HydratedBlockWithHashMeta, IterableRepository,
3
+ BlockBoundWitness, IterableRepository,
4
+ SignedHydratedBlockWithHashMeta,
4
5
  } from '@xyo-network/xl1-protocol'
5
6
 
6
- export type NextBlockProducer = IterableRepository<BlockBoundWitness, HydratedBlockWithHashMeta | undefined>
7
+ export type NextBlockProducer = IterableRepository<BlockBoundWitness, SignedHydratedBlockWithHashMeta | undefined>
7
8
 
8
9
  export interface BlockProducerService extends Addressable, NextBlockProducer {}
@@ -1,5 +1,6 @@
1
- import type { ChainContractViewer, ChainViewer } from '../../viewers/index.ts'
1
+ import type {
2
+ ChainContractViewer, ChainStakeViewer, ChainViewer,
3
+ } from '../../viewers/index.ts'
2
4
  import type { BaseChainService } from './BaseChainService.ts'
3
- import type { ChainStaker, ChainStakeViewer } from './interfaces/index.ts'
4
5
 
5
- export interface ChainService extends ChainContractViewer, ChainStakeViewer, ChainViewer, ChainStaker, BaseChainService {}
6
+ export interface ChainService extends ChainContractViewer, ChainStakeViewer, ChainViewer, BaseChainService {}
@@ -1,4 +1,3 @@
1
1
  export * from './BaseChainService.ts'
2
2
  export * from './ChainHeadService.ts'
3
3
  export * from './ChainService.ts'
4
- export * from './interfaces/index.ts'
@@ -1,7 +1,5 @@
1
1
  export * from './AccountTransfersService.ts'
2
2
  export * from './BlockProducerService.ts'
3
- export * from './BlockRewardService.ts'
4
- export * from './BlockRewardServiceV2.ts'
5
3
  export * from './Chain/index.ts'
6
4
  export * from './ChainIterator/index.ts'
7
5
  export * from './Election.ts'