@xyo-network/xl1-providers 3.0.0 → 3.0.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 (142) hide show
  1. package/dist/browser/NodeXyoRunner.d.ts +2 -0
  2. package/dist/browser/NodeXyoRunner.d.ts.map +1 -1
  3. package/dist/browser/SimpleDeadLetterQueueRunner.d.ts +2 -0
  4. package/dist/browser/SimpleDeadLetterQueueRunner.d.ts.map +1 -1
  5. package/dist/browser/SimpleDeadLetterQueueViewer.d.ts +2 -0
  6. package/dist/browser/SimpleDeadLetterQueueViewer.d.ts.map +1 -1
  7. package/dist/browser/SimpleNetworkStakeViewer.d.ts +2 -0
  8. package/dist/browser/SimpleNetworkStakeViewer.d.ts.map +1 -1
  9. package/dist/browser/SimpleStepRewards/SimpleStepRewardsByPositionViewer.d.ts +2 -0
  10. package/dist/browser/SimpleStepRewards/SimpleStepRewardsByPositionViewer.d.ts.map +1 -1
  11. package/dist/browser/SimpleStepRewards/SimpleStepRewardsByStakerViewer.d.ts +2 -0
  12. package/dist/browser/SimpleStepRewards/SimpleStepRewardsByStakerViewer.d.ts.map +1 -1
  13. package/dist/browser/SimpleStepRewards/SimpleStepRewardsByStepViewer.d.ts +2 -0
  14. package/dist/browser/SimpleStepRewards/SimpleStepRewardsByStepViewer.d.ts.map +1 -1
  15. package/dist/browser/SimpleStepRewards/SimpleStepRewardsTotalViewer.d.ts +2 -0
  16. package/dist/browser/SimpleStepRewards/SimpleStepRewardsTotalViewer.d.ts.map +1 -1
  17. package/dist/browser/SimpleStepRewards/SimpleStepRewardsViewer.d.ts +2 -0
  18. package/dist/browser/SimpleStepRewards/SimpleStepRewardsViewer.d.ts.map +1 -1
  19. package/dist/browser/SimpleStepViewer.d.ts +2 -0
  20. package/dist/browser/SimpleStepViewer.d.ts.map +1 -1
  21. package/dist/browser/SimpleXyoConnectionRunner.d.ts +2 -0
  22. package/dist/browser/SimpleXyoConnectionRunner.d.ts.map +1 -1
  23. package/dist/browser/SimpleXyoConnectionViewer.d.ts +2 -0
  24. package/dist/browser/SimpleXyoConnectionViewer.d.ts.map +1 -1
  25. package/dist/browser/SimpleXyoViewer.d.ts +2 -0
  26. package/dist/browser/SimpleXyoViewer.d.ts.map +1 -1
  27. package/dist/browser/index.d.ts +0 -2
  28. package/dist/browser/index.d.ts.map +1 -1
  29. package/dist/browser/index.mjs +642 -735
  30. package/dist/browser/index.mjs.map +4 -4
  31. package/dist/browser/locators/commonLocatorFromConfig.d.ts +5 -6
  32. package/dist/browser/locators/commonLocatorFromConfig.d.ts.map +1 -1
  33. package/dist/browser/locators/commonProvidersFromConfig.d.ts +4 -0
  34. package/dist/browser/locators/commonProvidersFromConfig.d.ts.map +1 -1
  35. package/dist/browser/locators/index.d.ts +2 -0
  36. package/dist/browser/locators/index.d.ts.map +1 -1
  37. package/dist/browser/locators/locatorFromAdaptedConfig.d.ts +17 -0
  38. package/dist/browser/locators/locatorFromAdaptedConfig.d.ts.map +1 -0
  39. package/dist/browser/locators/providerCandidates.d.ts +4 -0
  40. package/dist/browser/locators/providerCandidates.d.ts.map +1 -0
  41. package/dist/browser/locators/remoteLocatorFromConfig.d.ts.map +1 -1
  42. package/dist/neutral/NodeXyoRunner.d.ts +2 -0
  43. package/dist/neutral/NodeXyoRunner.d.ts.map +1 -1
  44. package/dist/neutral/SimpleDeadLetterQueueRunner.d.ts +2 -0
  45. package/dist/neutral/SimpleDeadLetterQueueRunner.d.ts.map +1 -1
  46. package/dist/neutral/SimpleDeadLetterQueueViewer.d.ts +2 -0
  47. package/dist/neutral/SimpleDeadLetterQueueViewer.d.ts.map +1 -1
  48. package/dist/neutral/SimpleNetworkStakeViewer.d.ts +2 -0
  49. package/dist/neutral/SimpleNetworkStakeViewer.d.ts.map +1 -1
  50. package/dist/neutral/SimpleStepRewards/SimpleStepRewardsByPositionViewer.d.ts +2 -0
  51. package/dist/neutral/SimpleStepRewards/SimpleStepRewardsByPositionViewer.d.ts.map +1 -1
  52. package/dist/neutral/SimpleStepRewards/SimpleStepRewardsByStakerViewer.d.ts +2 -0
  53. package/dist/neutral/SimpleStepRewards/SimpleStepRewardsByStakerViewer.d.ts.map +1 -1
  54. package/dist/neutral/SimpleStepRewards/SimpleStepRewardsByStepViewer.d.ts +2 -0
  55. package/dist/neutral/SimpleStepRewards/SimpleStepRewardsByStepViewer.d.ts.map +1 -1
  56. package/dist/neutral/SimpleStepRewards/SimpleStepRewardsTotalViewer.d.ts +2 -0
  57. package/dist/neutral/SimpleStepRewards/SimpleStepRewardsTotalViewer.d.ts.map +1 -1
  58. package/dist/neutral/SimpleStepRewards/SimpleStepRewardsViewer.d.ts +2 -0
  59. package/dist/neutral/SimpleStepRewards/SimpleStepRewardsViewer.d.ts.map +1 -1
  60. package/dist/neutral/SimpleStepViewer.d.ts +2 -0
  61. package/dist/neutral/SimpleStepViewer.d.ts.map +1 -1
  62. package/dist/neutral/SimpleXyoConnectionRunner.d.ts +2 -0
  63. package/dist/neutral/SimpleXyoConnectionRunner.d.ts.map +1 -1
  64. package/dist/neutral/SimpleXyoConnectionViewer.d.ts +2 -0
  65. package/dist/neutral/SimpleXyoConnectionViewer.d.ts.map +1 -1
  66. package/dist/neutral/SimpleXyoViewer.d.ts +2 -0
  67. package/dist/neutral/SimpleXyoViewer.d.ts.map +1 -1
  68. package/dist/neutral/index.d.ts +0 -2
  69. package/dist/neutral/index.d.ts.map +1 -1
  70. package/dist/neutral/index.mjs +642 -735
  71. package/dist/neutral/index.mjs.map +4 -4
  72. package/dist/neutral/locators/commonLocatorFromConfig.d.ts +5 -6
  73. package/dist/neutral/locators/commonLocatorFromConfig.d.ts.map +1 -1
  74. package/dist/neutral/locators/commonProvidersFromConfig.d.ts +4 -0
  75. package/dist/neutral/locators/commonProvidersFromConfig.d.ts.map +1 -1
  76. package/dist/neutral/locators/index.d.ts +2 -0
  77. package/dist/neutral/locators/index.d.ts.map +1 -1
  78. package/dist/neutral/locators/locatorFromAdaptedConfig.d.ts +17 -0
  79. package/dist/neutral/locators/locatorFromAdaptedConfig.d.ts.map +1 -0
  80. package/dist/neutral/locators/providerCandidates.d.ts +4 -0
  81. package/dist/neutral/locators/providerCandidates.d.ts.map +1 -0
  82. package/dist/neutral/locators/remoteLocatorFromConfig.d.ts.map +1 -1
  83. package/dist/node/NodeXyoRunner.d.ts +2 -0
  84. package/dist/node/NodeXyoRunner.d.ts.map +1 -1
  85. package/dist/node/SimpleDeadLetterQueueRunner.d.ts +2 -0
  86. package/dist/node/SimpleDeadLetterQueueRunner.d.ts.map +1 -1
  87. package/dist/node/SimpleDeadLetterQueueViewer.d.ts +2 -0
  88. package/dist/node/SimpleDeadLetterQueueViewer.d.ts.map +1 -1
  89. package/dist/node/SimpleNetworkStakeViewer.d.ts +2 -0
  90. package/dist/node/SimpleNetworkStakeViewer.d.ts.map +1 -1
  91. package/dist/node/SimpleStepRewards/SimpleStepRewardsByPositionViewer.d.ts +2 -0
  92. package/dist/node/SimpleStepRewards/SimpleStepRewardsByPositionViewer.d.ts.map +1 -1
  93. package/dist/node/SimpleStepRewards/SimpleStepRewardsByStakerViewer.d.ts +2 -0
  94. package/dist/node/SimpleStepRewards/SimpleStepRewardsByStakerViewer.d.ts.map +1 -1
  95. package/dist/node/SimpleStepRewards/SimpleStepRewardsByStepViewer.d.ts +2 -0
  96. package/dist/node/SimpleStepRewards/SimpleStepRewardsByStepViewer.d.ts.map +1 -1
  97. package/dist/node/SimpleStepRewards/SimpleStepRewardsTotalViewer.d.ts +2 -0
  98. package/dist/node/SimpleStepRewards/SimpleStepRewardsTotalViewer.d.ts.map +1 -1
  99. package/dist/node/SimpleStepRewards/SimpleStepRewardsViewer.d.ts +2 -0
  100. package/dist/node/SimpleStepRewards/SimpleStepRewardsViewer.d.ts.map +1 -1
  101. package/dist/node/SimpleStepViewer.d.ts +2 -0
  102. package/dist/node/SimpleStepViewer.d.ts.map +1 -1
  103. package/dist/node/SimpleXyoConnectionRunner.d.ts +2 -0
  104. package/dist/node/SimpleXyoConnectionRunner.d.ts.map +1 -1
  105. package/dist/node/SimpleXyoConnectionViewer.d.ts +2 -0
  106. package/dist/node/SimpleXyoConnectionViewer.d.ts.map +1 -1
  107. package/dist/node/SimpleXyoViewer.d.ts +2 -0
  108. package/dist/node/SimpleXyoViewer.d.ts.map +1 -1
  109. package/dist/node/index.d.ts +0 -2
  110. package/dist/node/index.d.ts.map +1 -1
  111. package/dist/node/index.mjs +642 -735
  112. package/dist/node/index.mjs.map +4 -4
  113. package/dist/node/locators/commonLocatorFromConfig.d.ts +5 -6
  114. package/dist/node/locators/commonLocatorFromConfig.d.ts.map +1 -1
  115. package/dist/node/locators/commonProvidersFromConfig.d.ts +4 -0
  116. package/dist/node/locators/commonProvidersFromConfig.d.ts.map +1 -1
  117. package/dist/node/locators/index.d.ts +2 -0
  118. package/dist/node/locators/index.d.ts.map +1 -1
  119. package/dist/node/locators/locatorFromAdaptedConfig.d.ts +17 -0
  120. package/dist/node/locators/locatorFromAdaptedConfig.d.ts.map +1 -0
  121. package/dist/node/locators/providerCandidates.d.ts +4 -0
  122. package/dist/node/locators/providerCandidates.d.ts.map +1 -0
  123. package/dist/node/locators/remoteLocatorFromConfig.d.ts.map +1 -1
  124. package/package.json +9 -8
  125. package/dist/browser/buildLocalGateway.d.ts +0 -24
  126. package/dist/browser/buildLocalGateway.d.ts.map +0 -1
  127. package/dist/browser/buildProviderLocator.d.ts +0 -43
  128. package/dist/browser/buildProviderLocator.d.ts.map +0 -1
  129. package/dist/browser/buildProviderLocatorV2.d.ts +0 -24
  130. package/dist/browser/buildProviderLocatorV2.d.ts.map +0 -1
  131. package/dist/neutral/buildLocalGateway.d.ts +0 -24
  132. package/dist/neutral/buildLocalGateway.d.ts.map +0 -1
  133. package/dist/neutral/buildProviderLocator.d.ts +0 -43
  134. package/dist/neutral/buildProviderLocator.d.ts.map +0 -1
  135. package/dist/neutral/buildProviderLocatorV2.d.ts +0 -24
  136. package/dist/neutral/buildProviderLocatorV2.d.ts.map +0 -1
  137. package/dist/node/buildLocalGateway.d.ts +0 -24
  138. package/dist/node/buildLocalGateway.d.ts.map +0 -1
  139. package/dist/node/buildProviderLocator.d.ts +0 -43
  140. package/dist/node/buildProviderLocator.d.ts.map +0 -1
  141. package/dist/node/buildProviderLocatorV2.d.ts +0 -24
  142. package/dist/node/buildProviderLocatorV2.d.ts.map +0 -1
@@ -11,52 +11,269 @@ var __decorateClass = (decorators, target, key, kind) => {
11
11
  };
12
12
  var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
13
13
 
14
- // src/buildProviderLocator.ts
14
+ // src/buildSimpleXyoSignerV2.ts
15
+ import { XyoSignerMoniker } from "@xyo-network/xl1-protocol-lib";
16
+ import { ProviderFactoryLocator, SimpleXyoSigner } from "@xyo-network/xl1-protocol-sdk";
17
+ async function buildSimpleXyoSignerV2(context, account) {
18
+ const locator = new ProviderFactoryLocator(context);
19
+ locator.register(
20
+ SimpleXyoSigner.factory(SimpleXyoSigner.dependencies, { account })
21
+ );
22
+ return await locator.getInstance(XyoSignerMoniker);
23
+ }
24
+
25
+ // src/creators/createRestDataLake.ts
26
+ import { RestDataLakeRunner as RestDataLakeRunner3, RestDataLakeViewer as RestDataLakeViewer4 } from "@xyo-network/xl1-protocol-sdk";
27
+
28
+ // src/locators/baseConfigFactoryLocator.ts
29
+ import {
30
+ BaseConfigZod,
31
+ ProviderFactoryLocator as ProviderFactoryLocator2
32
+ } from "@xyo-network/xl1-protocol-sdk";
33
+ async function baseConfigFactoryLocator() {
34
+ const config = BaseConfigZod.parse({});
35
+ return new ProviderFactoryLocator2({
36
+ config,
37
+ singletons: {},
38
+ caches: {}
39
+ }, {});
40
+ }
41
+
42
+ // src/locators/basicRemoteRunnerLocator.ts
43
+ import { isDefined as isDefined3 } from "@xylabs/sdk-js";
44
+ import {
45
+ ProviderFactoryLocator as ProviderFactoryLocator4,
46
+ RestDataLakeRunner as RestDataLakeRunner2,
47
+ RestDataLakeViewer as RestDataLakeViewer3,
48
+ SimpleXyoGatewayRunner as SimpleXyoGatewayRunner2
49
+ } from "@xyo-network/xl1-protocol-sdk";
50
+ import { JsonRpcXyoRunner as JsonRpcXyoRunner2, JsonRpcXyoSigner as JsonRpcXyoSigner2 } from "@xyo-network/xl1-rpc";
51
+
52
+ // src/SimpleXyoConnectionRunner.ts
53
+ import {
54
+ DataLakeRunnerMoniker,
55
+ DataLakeViewerMoniker,
56
+ XyoConnectionMoniker,
57
+ XyoRunnerMoniker,
58
+ XyoViewerMoniker
59
+ } from "@xyo-network/xl1-protocol-lib";
60
+ import { AbstractCreatableProvider, creatableProvider } from "@xyo-network/xl1-protocol-sdk";
61
+ var SimpleXyoConnectionRunner = class extends AbstractCreatableProvider {
62
+ moniker = SimpleXyoConnectionRunner.defaultMoniker;
63
+ _network;
64
+ _runner;
65
+ _storage;
66
+ _viewer;
67
+ get network() {
68
+ return this._network;
69
+ }
70
+ get runner() {
71
+ return this._runner;
72
+ }
73
+ get storage() {
74
+ return this._storage;
75
+ }
76
+ get viewer() {
77
+ return this._viewer;
78
+ }
79
+ async createHandler() {
80
+ await super.createHandler();
81
+ this._runner = await this.locator.getInstance(XyoRunnerMoniker);
82
+ this._viewer = await this.locator.getInstance(XyoViewerMoniker);
83
+ const dataLakeRunner = await this.locator.tryGetInstance(DataLakeRunnerMoniker);
84
+ const dataLakeViewer = await this.locator.tryGetInstance(DataLakeViewerMoniker);
85
+ this._storage = dataLakeRunner ?? dataLakeViewer;
86
+ }
87
+ };
88
+ __publicField(SimpleXyoConnectionRunner, "connectionTypes", []);
89
+ __publicField(SimpleXyoConnectionRunner, "defaultMoniker", XyoConnectionMoniker);
90
+ __publicField(SimpleXyoConnectionRunner, "dependencies", [XyoRunnerMoniker, XyoViewerMoniker]);
91
+ __publicField(SimpleXyoConnectionRunner, "monikers", [XyoConnectionMoniker]);
92
+ __publicField(SimpleXyoConnectionRunner, "surface", "node");
93
+ SimpleXyoConnectionRunner = __decorateClass([
94
+ creatableProvider()
95
+ ], SimpleXyoConnectionRunner);
96
+
97
+ // src/locators/basicRemoteViewerLocator.ts
98
+ import { isDefined as isDefined2 } from "@xylabs/sdk-js";
99
+ import {
100
+ ActorConfigZod,
101
+ RestDataLakeViewer as RestDataLakeViewer2,
102
+ SimpleXyoGateway as SimpleXyoGateway2
103
+ } from "@xyo-network/xl1-protocol-sdk";
104
+
105
+ // src/SimpleXyoConnectionViewer.ts
106
+ import {
107
+ DataLakeViewerMoniker as DataLakeViewerMoniker2,
108
+ XyoConnectionMoniker as XyoConnectionMoniker2,
109
+ XyoViewerMoniker as XyoViewerMoniker2
110
+ } from "@xyo-network/xl1-protocol-lib";
111
+ import { AbstractCreatableProvider as AbstractCreatableProvider2, creatableProvider as creatableProvider2 } from "@xyo-network/xl1-protocol-sdk";
112
+ var SimpleXyoConnectionViewer = class extends AbstractCreatableProvider2 {
113
+ moniker = SimpleXyoConnectionViewer.defaultMoniker;
114
+ _network;
115
+ _storage;
116
+ _viewer;
117
+ get network() {
118
+ return this._network;
119
+ }
120
+ get storage() {
121
+ return this._storage;
122
+ }
123
+ get viewer() {
124
+ return this._viewer;
125
+ }
126
+ async createHandler() {
127
+ await super.createHandler();
128
+ this._viewer = await this.locator.getInstance(XyoViewerMoniker2);
129
+ const dataLakeViewer = await this.locator.tryGetInstance(DataLakeViewerMoniker2);
130
+ this._storage = dataLakeViewer;
131
+ }
132
+ };
133
+ __publicField(SimpleXyoConnectionViewer, "connectionTypes", []);
134
+ __publicField(SimpleXyoConnectionViewer, "defaultMoniker", XyoConnectionMoniker2);
135
+ __publicField(SimpleXyoConnectionViewer, "dependencies", [XyoViewerMoniker2]);
136
+ __publicField(SimpleXyoConnectionViewer, "monikers", [XyoConnectionMoniker2]);
137
+ __publicField(SimpleXyoConnectionViewer, "surface", "node");
138
+ SimpleXyoConnectionViewer = __decorateClass([
139
+ creatableProvider2()
140
+ ], SimpleXyoConnectionViewer);
141
+
142
+ // src/locators/remoteLocatorFromConfig.ts
143
+ import {
144
+ adaptLegacyConfig as adaptLegacyConfig2,
145
+ needsFromConnectionTypes,
146
+ SimpleBlockValidationViewer as SimpleBlockValidationViewer2,
147
+ SimpleStakeEventsViewer as SimpleStakeEventsViewer2,
148
+ SimpleTransactionValidationViewer as SimpleTransactionValidationViewer2,
149
+ SimpleWindowedBlockViewer as SimpleWindowedBlockViewer2
150
+ } from "@xyo-network/xl1-protocol-sdk";
151
+
152
+ // src/locators/locatorFromAdaptedConfig.ts
15
153
  import {
16
- ConfigZod,
17
- getEmptyProviderContext,
18
- ProviderFactoryLocator,
154
+ adaptLegacyConfig,
155
+ locatorFromConfig,
156
+ needsFromProviderBindings,
157
+ ProviderFactoryLocator as ProviderFactoryLocator3,
158
+ registerFactoriesFromPlan,
159
+ resolveProvidersFromConfig
160
+ } from "@xyo-network/xl1-protocol-sdk";
161
+
162
+ // src/locators/providerCandidates.ts
163
+ import {
164
+ providerCandidatesFromClasses,
165
+ RestDataLakeRunner,
166
+ RestDataLakeViewer,
19
167
  SimpleAccountBalanceViewer,
168
+ SimpleBlockRewardViewer,
169
+ SimpleBlockValidationViewer,
20
170
  SimpleBlockViewer,
171
+ SimpleChainContractViewer,
172
+ SimpleFinalizationRunner,
21
173
  SimpleFinalizationViewer,
22
- SimpleMempoolRunner,
174
+ SimpleMempoolRunner as SimpleMempoolRunner2,
23
175
  SimpleMempoolViewer,
24
- SimpleStakeEventsViewer as SimpleStakeEventsViewer2,
25
- SimpleStakeViewer as SimpleStakeViewer2,
176
+ SimpleStakeEventsViewer,
177
+ SimpleStakeTotalsViewer,
178
+ SimpleStakeViewer,
26
179
  SimpleTimeSyncViewer,
180
+ SimpleTransactionValidationViewer,
181
+ SimpleTransactionViewer,
27
182
  SimpleWindowedBlockViewer,
183
+ SimpleXyoGateway,
184
+ SimpleXyoGatewayRunner,
28
185
  SimpleXyoRunner
29
186
  } from "@xyo-network/xl1-protocol-sdk";
30
187
  import {
31
- AccountBalanceViewerRpcSchemas,
32
- BlockViewerRpcSchemas,
33
188
  JsonRpcAccountBalanceViewer,
34
189
  JsonRpcBlockViewer,
190
+ JsonRpcFinalizationViewer,
35
191
  JsonRpcMempoolRunner,
36
192
  JsonRpcMempoolViewer,
37
- JsonRpcNetworkStakeStepRewardsViewer,
38
193
  JsonRpcNetworkStakeViewer,
39
194
  JsonRpcStakeTotalsViewer,
195
+ JsonRpcStakeViewer,
40
196
  JsonRpcTimeSyncViewer,
197
+ JsonRpcTransactionViewer,
41
198
  JsonRpcXyoRunner,
42
- JsonRpcXyoViewer,
43
- MempoolRunnerRpcSchemas,
44
- MempoolViewerRpcSchemas,
45
- NetworkStakeViewerRpcSchemas,
46
- StakeTotalsViewerRpcSchemas,
47
- TimeSyncViewerRpcSchemas,
48
- XyoRunnerRpcSchemas,
49
- XyoViewerRpcSchemas
199
+ JsonRpcXyoSigner,
200
+ JsonRpcXyoViewer
50
201
  } from "@xyo-network/xl1-rpc";
51
202
 
203
+ // src/NodeXyoRunner.ts
204
+ import { assertEx } from "@xylabs/sdk-js";
205
+ import { asArchivistInstance } from "@xyo-network/sdk-js";
206
+ import { XyoRunnerMoniker as XyoRunnerMoniker2 } from "@xyo-network/xl1-protocol-lib";
207
+ import {
208
+ AbstractCreatableProvider as AbstractCreatableProvider3,
209
+ creatableProvider as creatableProvider3,
210
+ SimpleMempoolRunner
211
+ } from "@xyo-network/xl1-protocol-sdk";
212
+ var NodeXyoRunner = class extends AbstractCreatableProvider3 {
213
+ moniker = NodeXyoRunner.defaultMoniker;
214
+ _mempoolRunner;
215
+ _pendingBlocksArchivist;
216
+ _pendingTransactionsArchivist;
217
+ get mempool() {
218
+ return this._mempoolRunner;
219
+ }
220
+ get node() {
221
+ return this.params.node;
222
+ }
223
+ get pendingBlocksArchivist() {
224
+ return this._pendingBlocksArchivist;
225
+ }
226
+ get pendingBlocksArchivistPath() {
227
+ return this.params.pendingBlocksArchivistPath ?? "XYOChain:Pending:Blocks";
228
+ }
229
+ get pendingTransactionsArchivist() {
230
+ return this._pendingTransactionsArchivist;
231
+ }
232
+ get pendingTransactionsArchivistPath() {
233
+ return this.params.pendingTransactionsArchivistPath ?? "XYOChain:Pending:Transactions";
234
+ }
235
+ async broadcastTransaction(transaction) {
236
+ const [txHash] = await this.mempool.submitTransactions([transaction]);
237
+ return txHash;
238
+ }
239
+ getArchivist = async (identifier) => {
240
+ const archivist = await this.node.resolve(identifier);
241
+ return assertEx(asArchivistInstance(archivist), () => `Could not resolve ${identifier} to an archivist instance`);
242
+ };
243
+ async startHandler() {
244
+ await super.startHandler();
245
+ this._pendingTransactionsArchivist = assertEx(
246
+ await this.getArchivist(this.pendingTransactionsArchivistPath),
247
+ () => `Could not resolve pending archivist at ${this.pendingTransactionsArchivistPath}`
248
+ );
249
+ this._pendingBlocksArchivist = assertEx(
250
+ await this.getArchivist(this.pendingBlocksArchivistPath),
251
+ () => `Could not resolve pending archivist at ${this.pendingBlocksArchivistPath}`
252
+ );
253
+ this._mempoolRunner = assertEx(await SimpleMempoolRunner.create({
254
+ context: this.context,
255
+ pendingTransactionsArchivist: this.pendingTransactionsArchivist,
256
+ pendingBlocksArchivist: this.pendingBlocksArchivist
257
+ }), () => "Failed to create SimpleMempoolRunner");
258
+ }
259
+ };
260
+ __publicField(NodeXyoRunner, "connectionTypes", ["lmdb", "mongo"]);
261
+ __publicField(NodeXyoRunner, "defaultMoniker", XyoRunnerMoniker2);
262
+ __publicField(NodeXyoRunner, "dependencies", []);
263
+ __publicField(NodeXyoRunner, "monikers", [XyoRunnerMoniker2]);
264
+ __publicField(NodeXyoRunner, "surface", "node");
265
+ NodeXyoRunner = __decorateClass([
266
+ creatableProvider3()
267
+ ], NodeXyoRunner);
268
+
52
269
  // src/NodeXyoViewer.ts
53
- import { assertEx as assertEx2 } from "@xylabs/sdk-js";
270
+ import { assertEx as assertEx3 } from "@xylabs/sdk-js";
54
271
  import { asAttachableArchivistInstance } from "@xyo-network/sdk-js";
55
- import { creatableProvider as creatableProvider2 } from "@xyo-network/xl1-protocol-sdk";
272
+ import { creatableProvider as creatableProvider5 } from "@xyo-network/xl1-protocol-sdk";
56
273
 
57
274
  // src/SimpleXyoViewer.ts
58
275
  import {
59
- assertEx,
276
+ assertEx as assertEx2,
60
277
  toAddress
61
278
  } from "@xylabs/sdk-js";
62
279
  import {
@@ -75,13 +292,13 @@ import {
75
292
  TransactionViewerMoniker,
76
293
  XYO_NETWORK_STAKING_ADDRESS,
77
294
  XYO_ZERO_ADDRESS,
78
- XyoViewerMoniker
295
+ XyoViewerMoniker as XyoViewerMoniker3
79
296
  } from "@xyo-network/xl1-protocol-lib";
80
297
  import {
81
- AbstractCreatableProvider,
298
+ AbstractCreatableProvider as AbstractCreatableProvider4,
82
299
  allStakersForStep,
83
300
  blockRangeSteps,
84
- creatableProvider,
301
+ creatableProvider as creatableProvider4,
85
302
  externalBlockRangeFromStep,
86
303
  externalBlockRangeFromXL1BlockRange,
87
304
  networkStakeStepRewardPositionWeight,
@@ -90,7 +307,7 @@ import {
90
307
  weightedStakeForRangeByPosition,
91
308
  withContextCacheResponse
92
309
  } from "@xyo-network/xl1-protocol-sdk";
93
- var SimpleXyoViewer = class extends AbstractCreatableProvider {
310
+ var SimpleXyoViewer = class extends AbstractCreatableProvider4 {
94
311
  moniker = SimpleXyoViewer.defaultMoniker;
95
312
  _tracer;
96
313
  _accountBalanceViewer;
@@ -172,7 +389,7 @@ var SimpleXyoViewer = class extends AbstractCreatableProvider {
172
389
  }
173
390
  async chainId(blockNumber = "latest") {
174
391
  return await this.spanAsync("SimpleXyoViewer:chainId", async () => {
175
- const chainId = assertEx(
392
+ const chainId = assertEx2(
176
393
  blockNumber === "latest" ? this._chainId : await this.chainContractViewer.chainIdAtBlockNumber(blockNumber),
177
394
  () => `Could not find block for chainId at block ${blockNumber}`
178
395
  );
@@ -408,7 +625,8 @@ var SimpleXyoViewer = class extends AbstractCreatableProvider {
408
625
  });
409
626
  }
410
627
  };
411
- __publicField(SimpleXyoViewer, "defaultMoniker", XyoViewerMoniker);
628
+ __publicField(SimpleXyoViewer, "connectionTypes", ["lmdb", "mongo"]);
629
+ __publicField(SimpleXyoViewer, "defaultMoniker", XyoViewerMoniker3);
412
630
  __publicField(SimpleXyoViewer, "dependencies", [
413
631
  AccountBalanceViewerMoniker,
414
632
  BlockViewerMoniker,
@@ -420,9 +638,10 @@ __publicField(SimpleXyoViewer, "dependencies", [
420
638
  StepViewerMoniker,
421
639
  TimeSyncViewerMoniker
422
640
  ]);
423
- __publicField(SimpleXyoViewer, "monikers", [XyoViewerMoniker]);
641
+ __publicField(SimpleXyoViewer, "monikers", [XyoViewerMoniker3]);
642
+ __publicField(SimpleXyoViewer, "surface", "node");
424
643
  SimpleXyoViewer = __decorateClass([
425
- creatableProvider()
644
+ creatableProvider4()
426
645
  ], SimpleXyoViewer);
427
646
 
428
647
  // src/NodeXyoViewer.ts
@@ -432,104 +651,203 @@ var NodeXyoViewer = class extends SimpleXyoViewer {
432
651
  }
433
652
  static async getFinalizedArchivistFromNode(node) {
434
653
  const resolved = await this.getArchivist(node, this.finalizedArchivistPath);
435
- return assertEx2(resolved, () => `Could not resolve finalized archivist at ${this.finalizedArchivistPath}`);
654
+ return assertEx3(resolved, () => `Could not resolve finalized archivist at ${this.finalizedArchivistPath}`);
436
655
  }
437
656
  };
438
657
  __publicField(NodeXyoViewer, "finalizedArchivistPath", "XYOChain:Chain:Finalized");
439
658
  __publicField(NodeXyoViewer, "getArchivist", async (node, identifier) => {
440
659
  const archivist = await node.resolve(identifier);
441
- return assertEx2(asAttachableArchivistInstance(archivist), () => `Could not resolve ${identifier} to an archivist instance`);
660
+ return assertEx3(asAttachableArchivistInstance(archivist), () => `Could not resolve ${identifier} to an archivist instance`);
442
661
  });
443
662
  NodeXyoViewer = __decorateClass([
444
- creatableProvider2()
663
+ creatableProvider5()
445
664
  ], NodeXyoViewer);
446
665
 
447
- // src/registerHelpers.ts
448
- import {
449
- SimpleStakeEventsViewer,
450
- SimpleStakeViewer,
451
- SimpleXyoGateway,
452
- SimpleXyoGatewayRunner,
453
- SimpleXyoSigner
454
- } from "@xyo-network/xl1-protocol-sdk";
455
-
456
- // src/SimpleXyoConnectionRunner.ts
666
+ // src/SimpleDeadLetterQueueRunner.ts
667
+ import { assertEx as assertEx4 } from "@xylabs/sdk-js";
668
+ import { isHashMeta, PayloadBuilder } from "@xyo-network/sdk-js";
457
669
  import {
458
- DataLakeRunnerMoniker,
459
- DataLakeViewerMoniker,
460
- XyoConnectionMoniker,
461
- XyoRunnerMoniker,
462
- XyoViewerMoniker as XyoViewerMoniker2
670
+ DeadLetterQueueRunnerMoniker,
671
+ isBlockRejection,
672
+ isTransactionRejection
463
673
  } from "@xyo-network/xl1-protocol-lib";
464
- import { AbstractCreatableProvider as AbstractCreatableProvider2, creatableProvider as creatableProvider3 } from "@xyo-network/xl1-protocol-sdk";
465
- var SimpleXyoConnectionRunner = class extends AbstractCreatableProvider2 {
466
- moniker = SimpleXyoConnectionRunner.defaultMoniker;
467
- _network;
468
- _runner;
469
- _storage;
470
- _viewer;
471
- get network() {
472
- return this._network;
473
- }
474
- get runner() {
475
- return this._runner;
476
- }
477
- get storage() {
478
- return this._storage;
674
+ import { AbstractCreatableProvider as AbstractCreatableProvider5, creatableProvider as creatableProvider6 } from "@xyo-network/xl1-protocol-sdk";
675
+ var SimpleDeadLetterQueueRunner = class extends AbstractCreatableProvider5 {
676
+ moniker = SimpleDeadLetterQueueRunner.defaultMoniker;
677
+ get rejectedBlocksArchivist() {
678
+ return this.params.rejectedBlocksArchivist;
479
679
  }
480
- get viewer() {
481
- return this._viewer;
680
+ get rejectedTransactionsArchivist() {
681
+ return this.params.rejectedTransactionsArchivist;
482
682
  }
483
- async createHandler() {
484
- await super.createHandler();
485
- this._runner = await this.locator.getInstance(XyoRunnerMoniker);
486
- this._viewer = await this.locator.getInstance(XyoViewerMoniker2);
487
- const dataLakeRunner = await this.locator.tryGetInstance(DataLakeRunnerMoniker);
488
- const dataLakeViewer = await this.locator.tryGetInstance(DataLakeViewerMoniker);
489
- this._storage = dataLakeRunner ?? dataLakeViewer;
683
+ static async paramsHandler(params) {
684
+ return {
685
+ ...await super.paramsHandler(params),
686
+ rejectedBlocksArchivist: assertEx4(params?.rejectedBlocksArchivist, () => "rejectedBlocksArchivist is required"),
687
+ rejectedTransactionsArchivist: assertEx4(params?.rejectedTransactionsArchivist, () => "rejectedTransactionsArchivist is required")
688
+ };
490
689
  }
491
- };
492
- __publicField(SimpleXyoConnectionRunner, "defaultMoniker", XyoConnectionMoniker);
493
- __publicField(SimpleXyoConnectionRunner, "dependencies", [XyoRunnerMoniker, XyoViewerMoniker2]);
494
- __publicField(SimpleXyoConnectionRunner, "monikers", [XyoConnectionMoniker]);
495
- SimpleXyoConnectionRunner = __decorateClass([
496
- creatableProvider3()
497
- ], SimpleXyoConnectionRunner);
498
-
499
- // src/registerHelpers.ts
500
- var registerGatewayRunnerWithLocatorIfProvided = (locator, params) => {
501
- const account = params?.signerAccount;
502
- if (account) {
503
- locator.registerMany([
504
- SimpleXyoSigner.factory(SimpleXyoSigner.dependencies, { account }),
505
- SimpleXyoGatewayRunner.factory(SimpleXyoGatewayRunner.dependencies, {})
506
- ]);
690
+ async pruneRejectedBlocks({
691
+ batchSize = 10,
692
+ maxPrune = 1e3,
693
+ maxCheck = 1e3
694
+ } = {}) {
695
+ let total = 0;
696
+ let pruned = 0;
697
+ let cursor;
698
+ let batch = await this.rejectedBlocksArchivist.next({
699
+ limit: batchSize,
700
+ cursor,
701
+ order: "desc"
702
+ });
703
+ while (batch.length > 0 && pruned < maxPrune && total < maxCheck) {
704
+ const pruneHashes = batch.filter(isHashMeta).filter((p) => !isBlockRejection(p)).map((p) => p._hash);
705
+ pruned += pruneHashes.length;
706
+ total += batch.length;
707
+ if (pruneHashes.length > 0) {
708
+ await this.rejectedBlocksArchivist.delete(pruneHashes);
709
+ }
710
+ const pruneSet = new Set(pruneHashes);
711
+ const lastSurvivor = batch.findLast((p) => isHashMeta(p) && !pruneSet.has(p._hash));
712
+ cursor = lastSurvivor?._sequence ?? cursor;
713
+ batch = await this.rejectedBlocksArchivist.next({
714
+ limit: batchSize,
715
+ cursor,
716
+ order: "desc"
717
+ });
718
+ }
719
+ return [pruned, total];
507
720
  }
508
- return locator;
509
- };
510
- var registerGatewayWithLocator = (locator, account) => {
511
- locator.registerMany([
512
- SimpleXyoConnectionRunner.factory(SimpleXyoConnectionRunner.dependencies, {}),
513
- SimpleXyoGateway.factory(SimpleXyoGateway.dependencies, {})
514
- ]);
515
- if (account) {
516
- locator.registerMany([
517
- SimpleXyoSigner.factory(SimpleXyoSigner.dependencies, { account }),
518
- SimpleXyoGatewayRunner.factory(SimpleXyoGatewayRunner.dependencies, {})
519
- ]);
721
+ async pruneRejectedTransactions({
722
+ batchSize = 10,
723
+ maxPrune = 1e3,
724
+ maxCheck = 1e3
725
+ } = {}) {
726
+ let total = 0;
727
+ let pruned = 0;
728
+ let cursor;
729
+ let batch = await this.rejectedTransactionsArchivist.next({
730
+ limit: batchSize,
731
+ cursor,
732
+ order: "desc"
733
+ });
734
+ while (batch.length > 0 && pruned < maxPrune && total < maxCheck) {
735
+ const pruneHashes = batch.filter(isHashMeta).filter((p) => !isTransactionRejection(p)).map((p) => p._hash);
736
+ pruned += pruneHashes.length;
737
+ total += batch.length;
738
+ if (pruneHashes.length > 0) {
739
+ await this.rejectedTransactionsArchivist.delete(pruneHashes);
740
+ }
741
+ const pruneSet = new Set(pruneHashes);
742
+ const lastSurvivor = batch.findLast((p) => isHashMeta(p) && !pruneSet.has(p._hash));
743
+ cursor = lastSurvivor?._sequence ?? cursor;
744
+ batch = await this.rejectedTransactionsArchivist.next({
745
+ limit: batchSize,
746
+ cursor,
747
+ order: "desc"
748
+ });
749
+ }
750
+ return [pruned, total];
751
+ }
752
+ async rejectBlock(rejection) {
753
+ const withMeta = await PayloadBuilder.addHashMeta(rejection);
754
+ const inserted = await this.rejectedBlocksArchivist.insert([withMeta]);
755
+ return inserted.length > 0;
756
+ }
757
+ async rejectTransaction(rejection) {
758
+ const withMeta = await PayloadBuilder.addHashMeta(rejection);
759
+ const inserted = await this.rejectedTransactionsArchivist.insert([withMeta]);
760
+ return inserted.length > 0;
520
761
  }
521
- return locator;
522
762
  };
523
- var registerSimpleStakeViewerWithLocator = (locator, positions) => {
524
- locator.registerMany([
525
- SimpleStakeViewer.factory(SimpleStakeViewer.dependencies, { positions }),
526
- SimpleStakeEventsViewer.factory(SimpleStakeEventsViewer.dependencies, { positions })
527
- ]);
528
- return locator;
763
+ __publicField(SimpleDeadLetterQueueRunner, "connectionTypes", ["lmdb", "mongo"]);
764
+ __publicField(SimpleDeadLetterQueueRunner, "defaultMoniker", DeadLetterQueueRunnerMoniker);
765
+ __publicField(SimpleDeadLetterQueueRunner, "dependencies", []);
766
+ __publicField(SimpleDeadLetterQueueRunner, "monikers", [DeadLetterQueueRunnerMoniker]);
767
+ __publicField(SimpleDeadLetterQueueRunner, "surface", "node");
768
+ SimpleDeadLetterQueueRunner = __decorateClass([
769
+ creatableProvider6()
770
+ ], SimpleDeadLetterQueueRunner);
771
+
772
+ // src/SimpleDeadLetterQueueViewer.ts
773
+ import {
774
+ exists,
775
+ isDefined,
776
+ isHash
777
+ } from "@xylabs/sdk-js";
778
+ import { isHashMeta as isHashMeta2 } from "@xyo-network/sdk-js";
779
+ import {
780
+ DeadLetterQueueViewerMoniker,
781
+ isBlockRejection as isBlockRejection2,
782
+ isTransactionRejection as isTransactionRejection2
783
+ } from "@xyo-network/xl1-protocol-lib";
784
+ import { AbstractCreatableProvider as AbstractCreatableProvider6, creatableProvider as creatableProvider7 } from "@xyo-network/xl1-protocol-sdk";
785
+ var SimpleDeadLetterQueueViewer = class extends AbstractCreatableProvider6 {
786
+ moniker = SimpleDeadLetterQueueViewer.defaultMoniker;
787
+ get rejectedBlocksArchivist() {
788
+ return this.params.rejectedBlocksArchivist;
789
+ }
790
+ get rejectedTransactionsArchivist() {
791
+ return this.params.rejectedTransactionsArchivist;
792
+ }
793
+ async rejectedBlocks({
794
+ cursor: providedCursor,
795
+ limit = 100,
796
+ rejector
797
+ } = {}) {
798
+ let cursor;
799
+ if (isHash(providedCursor)) {
800
+ const [p] = await this.rejectedBlocksArchivist.get([providedCursor]);
801
+ if (isDefined(p)) {
802
+ cursor = p._sequence;
803
+ }
804
+ }
805
+ const payloads = await this.rejectedBlocksArchivist.next({
806
+ order: "desc",
807
+ limit,
808
+ cursor
809
+ });
810
+ const rejections = payloads.filter(isHashMeta2).map((p) => isBlockRejection2(p) ? p : void 0).filter(exists);
811
+ if (rejector !== void 0) {
812
+ return rejections.filter((r) => r.rejector === rejector);
813
+ }
814
+ return rejections;
815
+ }
816
+ async rejectedTransactions({
817
+ cursor: providedCursor,
818
+ limit = 100,
819
+ rejector
820
+ } = {}) {
821
+ let cursor;
822
+ if (isHash(providedCursor)) {
823
+ const [p] = await this.rejectedTransactionsArchivist.get([providedCursor]);
824
+ if (isDefined(p)) {
825
+ cursor = p._sequence;
826
+ }
827
+ }
828
+ const payloads = await this.rejectedTransactionsArchivist.next({
829
+ order: "desc",
830
+ limit,
831
+ cursor
832
+ });
833
+ const rejections = payloads.filter(isHashMeta2).map((p) => isTransactionRejection2(p) ? p : void 0).filter(exists);
834
+ if (rejector !== void 0) {
835
+ return rejections.filter((r) => r.rejector === rejector);
836
+ }
837
+ return rejections;
838
+ }
529
839
  };
840
+ __publicField(SimpleDeadLetterQueueViewer, "connectionTypes", ["lmdb", "mongo"]);
841
+ __publicField(SimpleDeadLetterQueueViewer, "defaultMoniker", DeadLetterQueueViewerMoniker);
842
+ __publicField(SimpleDeadLetterQueueViewer, "dependencies", []);
843
+ __publicField(SimpleDeadLetterQueueViewer, "monikers", [DeadLetterQueueViewerMoniker]);
844
+ __publicField(SimpleDeadLetterQueueViewer, "surface", "node");
845
+ SimpleDeadLetterQueueViewer = __decorateClass([
846
+ creatableProvider7()
847
+ ], SimpleDeadLetterQueueViewer);
530
848
 
531
849
  // src/SimpleNetworkStakeViewer.ts
532
- import { assertEx as assertEx3 } from "@xylabs/sdk-js";
850
+ import { assertEx as assertEx5 } from "@xylabs/sdk-js";
533
851
  import {
534
852
  FinalizationViewerMoniker as FinalizationViewerMoniker2,
535
853
  NetworkStakeStepRewardsViewerMoniker,
@@ -538,17 +856,17 @@ import {
538
856
  StakeViewerMoniker as StakeViewerMoniker2
539
857
  } from "@xyo-network/xl1-protocol-lib";
540
858
  import {
541
- AbstractCreatableProvider as AbstractCreatableProvider3,
542
- creatableProvider as creatableProvider4
859
+ AbstractCreatableProvider as AbstractCreatableProvider7,
860
+ creatableProvider as creatableProvider8
543
861
  } from "@xyo-network/xl1-protocol-sdk";
544
- var SimpleNetworkStakeViewer = class extends AbstractCreatableProvider3 {
862
+ var SimpleNetworkStakeViewer = class extends AbstractCreatableProvider7 {
545
863
  moniker = SimpleNetworkStakeViewer.defaultMoniker;
546
864
  _finalizationViewer;
547
865
  _stake;
548
866
  _stakeTotals;
549
867
  _stepRewardsViewer;
550
868
  get stepRewards() {
551
- return assertEx3(this._stepRewardsViewer, () => "Step rewards viewer not initialized");
869
+ return assertEx5(this._stepRewardsViewer, () => "Step rewards viewer not initialized");
552
870
  }
553
871
  get finalizationViewer() {
554
872
  return this._finalizationViewer;
@@ -574,11 +892,13 @@ var SimpleNetworkStakeViewer = class extends AbstractCreatableProvider3 {
574
892
  this._stepRewardsViewer = await this.locator.getInstance(NetworkStakeStepRewardsViewerMoniker);
575
893
  }
576
894
  };
895
+ __publicField(SimpleNetworkStakeViewer, "connectionTypes", ["lmdb", "mongo"]);
577
896
  __publicField(SimpleNetworkStakeViewer, "defaultMoniker", NetworkStakeViewerMoniker2);
578
897
  __publicField(SimpleNetworkStakeViewer, "dependencies", [NetworkStakeStepRewardsViewerMoniker]);
579
898
  __publicField(SimpleNetworkStakeViewer, "monikers", [NetworkStakeViewerMoniker2]);
899
+ __publicField(SimpleNetworkStakeViewer, "surface", "node");
580
900
  SimpleNetworkStakeViewer = __decorateClass([
581
- creatableProvider4()
901
+ creatableProvider8()
582
902
  ], SimpleNetworkStakeViewer);
583
903
 
584
904
  // src/SimpleStepRewards/SimpleStepRewardsByPositionViewer.ts
@@ -592,9 +912,9 @@ import {
592
912
  StakeViewerMoniker as StakeViewerMoniker3
593
913
  } from "@xyo-network/xl1-protocol-lib";
594
914
  import {
595
- AbstractCreatableProvider as AbstractCreatableProvider4,
915
+ AbstractCreatableProvider as AbstractCreatableProvider8,
596
916
  blockRangeSteps as blockRangeSteps2,
597
- creatableProvider as creatableProvider5
917
+ creatableProvider as creatableProvider9
598
918
  } from "@xyo-network/xl1-protocol-sdk";
599
919
 
600
920
  // src/SimpleStepRewards/primitives/networkStakeStepRewardEarned.ts
@@ -683,7 +1003,7 @@ async function networkStakeStepRewardEarnedForStaker(context, blockViewer, stake
683
1003
  }
684
1004
 
685
1005
  // src/SimpleStepRewards/SimpleStepRewardsByPositionViewer.ts
686
- var SimpleStepRewardsByPositionViewer = class extends AbstractCreatableProvider4 {
1006
+ var SimpleStepRewardsByPositionViewer = class extends AbstractCreatableProvider8 {
687
1007
  moniker = SimpleStepRewardsByPositionViewer.defaultMoniker;
688
1008
  _blockViewer;
689
1009
  _finalizationViewer;
@@ -754,11 +1074,13 @@ var SimpleStepRewardsByPositionViewer = class extends AbstractCreatableProvider4
754
1074
  return result;
755
1075
  }
756
1076
  };
1077
+ __publicField(SimpleStepRewardsByPositionViewer, "connectionTypes", ["lmdb", "mongo", "rpc"]);
757
1078
  __publicField(SimpleStepRewardsByPositionViewer, "defaultMoniker", NetworkStakeStepRewardsByPositionViewerMoniker2);
758
1079
  __publicField(SimpleStepRewardsByPositionViewer, "dependencies", [BlockViewerMoniker2]);
759
1080
  __publicField(SimpleStepRewardsByPositionViewer, "monikers", [NetworkStakeStepRewardsByPositionViewerMoniker2]);
1081
+ __publicField(SimpleStepRewardsByPositionViewer, "surface", "node");
760
1082
  SimpleStepRewardsByPositionViewer = __decorateClass([
761
- creatableProvider5()
1083
+ creatableProvider9()
762
1084
  ], SimpleStepRewardsByPositionViewer);
763
1085
 
764
1086
  // src/SimpleStepRewards/SimpleStepRewardsByStakerViewer.ts
@@ -772,11 +1094,11 @@ import {
772
1094
  StakeViewerMoniker as StakeViewerMoniker4
773
1095
  } from "@xyo-network/xl1-protocol-lib";
774
1096
  import {
775
- AbstractCreatableProvider as AbstractCreatableProvider5,
1097
+ AbstractCreatableProvider as AbstractCreatableProvider9,
776
1098
  blockRangeSteps as blockRangeSteps3,
777
- creatableProvider as creatableProvider6
1099
+ creatableProvider as creatableProvider10
778
1100
  } from "@xyo-network/xl1-protocol-sdk";
779
- var SimpleStepRewardsByStakerViewer = class extends AbstractCreatableProvider5 {
1101
+ var SimpleStepRewardsByStakerViewer = class extends AbstractCreatableProvider9 {
780
1102
  moniker = SimpleStepRewardsByStakerViewer.defaultMoniker;
781
1103
  _blockViewer;
782
1104
  _finalizationViewer;
@@ -844,11 +1166,13 @@ var SimpleStepRewardsByStakerViewer = class extends AbstractCreatableProvider5 {
844
1166
  return result;
845
1167
  }
846
1168
  };
1169
+ __publicField(SimpleStepRewardsByStakerViewer, "connectionTypes", ["lmdb", "mongo", "rpc"]);
847
1170
  __publicField(SimpleStepRewardsByStakerViewer, "defaultMoniker", NetworkStakeStepRewardsByStakerViewerMoniker);
848
1171
  __publicField(SimpleStepRewardsByStakerViewer, "dependencies", [BlockViewerMoniker3]);
849
1172
  __publicField(SimpleStepRewardsByStakerViewer, "monikers", [NetworkStakeStepRewardsByStakerViewerMoniker]);
1173
+ __publicField(SimpleStepRewardsByStakerViewer, "surface", "node");
850
1174
  SimpleStepRewardsByStakerViewer = __decorateClass([
851
- creatableProvider6()
1175
+ creatableProvider10()
852
1176
  ], SimpleStepRewardsByStakerViewer);
853
1177
 
854
1178
  // src/SimpleStepRewards/SimpleStepRewardsByStepViewer.ts
@@ -861,12 +1185,12 @@ import {
861
1185
  StakeViewerMoniker as StakeViewerMoniker5
862
1186
  } from "@xyo-network/xl1-protocol-lib";
863
1187
  import {
864
- AbstractCreatableProvider as AbstractCreatableProvider6,
1188
+ AbstractCreatableProvider as AbstractCreatableProvider10,
865
1189
  blockRangeSteps as blockRangeSteps4,
866
- creatableProvider as creatableProvider7,
1190
+ creatableProvider as creatableProvider11,
867
1191
  toStepIdentityString as toStepIdentityString3
868
1192
  } from "@xyo-network/xl1-protocol-sdk";
869
- var SimpleStepRewardsByStepViewer = class extends AbstractCreatableProvider6 {
1193
+ var SimpleStepRewardsByStepViewer = class extends AbstractCreatableProvider10 {
870
1194
  moniker = SimpleStepRewardsByStepViewer.defaultMoniker;
871
1195
  _blockViewer;
872
1196
  _finalizationViewer;
@@ -943,20 +1267,22 @@ var SimpleStepRewardsByStepViewer = class extends AbstractCreatableProvider6 {
943
1267
  throw new Error("Method [unclaimed] ot implemented.");
944
1268
  }
945
1269
  };
1270
+ __publicField(SimpleStepRewardsByStepViewer, "connectionTypes", ["lmdb", "mongo", "rpc"]);
946
1271
  __publicField(SimpleStepRewardsByStepViewer, "defaultMoniker", NetworkStakeStepRewardsByStepViewerMoniker);
947
1272
  __publicField(SimpleStepRewardsByStepViewer, "dependencies", [BlockViewerMoniker4]);
948
1273
  __publicField(SimpleStepRewardsByStepViewer, "monikers", [NetworkStakeStepRewardsByStepViewerMoniker]);
1274
+ __publicField(SimpleStepRewardsByStepViewer, "surface", "node");
949
1275
  SimpleStepRewardsByStepViewer = __decorateClass([
950
- creatableProvider7()
1276
+ creatableProvider11()
951
1277
  ], SimpleStepRewardsByStepViewer);
952
1278
 
953
1279
  // src/SimpleStepRewards/SimpleStepRewardsTotalViewer.ts
954
1280
  import { asAttoXL1 as asAttoXL15, NetworkStakeStepRewardsTotalViewerMoniker } from "@xyo-network/xl1-protocol-lib";
955
1281
  import {
956
- AbstractCreatableProvider as AbstractCreatableProvider7,
957
- creatableProvider as creatableProvider8
1282
+ AbstractCreatableProvider as AbstractCreatableProvider11,
1283
+ creatableProvider as creatableProvider12
958
1284
  } from "@xyo-network/xl1-protocol-sdk";
959
- var SimpleStepRewardsTotalViewer = class extends AbstractCreatableProvider7 {
1285
+ var SimpleStepRewardsTotalViewer = class extends AbstractCreatableProvider11 {
960
1286
  moniker = SimpleStepRewardsTotalViewer.defaultMoniker;
961
1287
  get rewardMultipliers() {
962
1288
  return this.params.rewardMultipliers ?? {};
@@ -982,15 +1308,17 @@ var SimpleStepRewardsTotalViewer = class extends AbstractCreatableProvider7 {
982
1308
  throw new Error("Method [calculateRewards] not implemented.");
983
1309
  }
984
1310
  };
1311
+ __publicField(SimpleStepRewardsTotalViewer, "connectionTypes", ["lmdb", "mongo", "rpc"]);
985
1312
  __publicField(SimpleStepRewardsTotalViewer, "defaultMoniker", NetworkStakeStepRewardsTotalViewerMoniker);
986
1313
  __publicField(SimpleStepRewardsTotalViewer, "dependencies", []);
987
1314
  __publicField(SimpleStepRewardsTotalViewer, "monikers", [NetworkStakeStepRewardsTotalViewerMoniker]);
1315
+ __publicField(SimpleStepRewardsTotalViewer, "surface", "node");
988
1316
  SimpleStepRewardsTotalViewer = __decorateClass([
989
- creatableProvider8()
1317
+ creatableProvider12()
990
1318
  ], SimpleStepRewardsTotalViewer);
991
1319
 
992
1320
  // src/SimpleStepRewards/SimpleStepRewardsViewer.ts
993
- import { assertEx as assertEx4 } from "@xylabs/sdk-js";
1321
+ import { assertEx as assertEx6 } from "@xylabs/sdk-js";
994
1322
  import {
995
1323
  BlockViewerMoniker as BlockViewerMoniker5,
996
1324
  NetworkStakeStepRewardsByPositionViewerMoniker as NetworkStakeStepRewardsByPositionViewerMoniker3,
@@ -999,23 +1327,23 @@ import {
999
1327
  NetworkStakeStepRewardsViewerMoniker as NetworkStakeStepRewardsViewerMoniker2
1000
1328
  } from "@xyo-network/xl1-protocol-lib";
1001
1329
  import {
1002
- AbstractCreatableProvider as AbstractCreatableProvider8,
1003
- creatableProvider as creatableProvider9
1330
+ AbstractCreatableProvider as AbstractCreatableProvider12,
1331
+ creatableProvider as creatableProvider13
1004
1332
  } from "@xyo-network/xl1-protocol-sdk";
1005
- var SimpleStepRewardsViewer = class extends AbstractCreatableProvider8 {
1333
+ var SimpleStepRewardsViewer = class extends AbstractCreatableProvider12 {
1006
1334
  moniker = SimpleStepRewardsViewer.defaultMoniker;
1007
1335
  _blockViewer;
1008
1336
  _position;
1009
1337
  _staker;
1010
1338
  _step;
1011
1339
  get position() {
1012
- return assertEx4(this._position, () => "Position viewer not initialized");
1340
+ return assertEx6(this._position, () => "Position viewer not initialized");
1013
1341
  }
1014
1342
  get staker() {
1015
- return assertEx4(this._staker, () => "Position viewer not initialized");
1343
+ return assertEx6(this._staker, () => "Position viewer not initialized");
1016
1344
  }
1017
1345
  get step() {
1018
- return assertEx4(this._step, () => "Step viewer not initialized");
1346
+ return assertEx6(this._step, () => "Step viewer not initialized");
1019
1347
  }
1020
1348
  get total() {
1021
1349
  throw new Error("Method [total] not implemented.");
@@ -1032,11 +1360,12 @@ var SimpleStepRewardsViewer = class extends AbstractCreatableProvider8 {
1032
1360
  }
1033
1361
  async startHandler() {
1034
1362
  await super.startHandler();
1035
- await assertEx4(this._position, () => "Position viewer not created").start();
1036
- await assertEx4(this._staker, () => "Staker viewer not created").start();
1037
- await assertEx4(this._step, () => "Step viewer not created").start();
1363
+ await assertEx6(this._position, () => "Position viewer not created").start();
1364
+ await assertEx6(this._staker, () => "Staker viewer not created").start();
1365
+ await assertEx6(this._step, () => "Step viewer not created").start();
1038
1366
  }
1039
1367
  };
1368
+ __publicField(SimpleStepRewardsViewer, "connectionTypes", ["lmdb", "mongo", "rpc"]);
1040
1369
  __publicField(SimpleStepRewardsViewer, "defaultMoniker", NetworkStakeStepRewardsViewerMoniker2);
1041
1370
  __publicField(SimpleStepRewardsViewer, "dependencies", [
1042
1371
  BlockViewerMoniker5,
@@ -1045,8 +1374,9 @@ __publicField(SimpleStepRewardsViewer, "dependencies", [
1045
1374
  NetworkStakeStepRewardsByStepViewerMoniker2
1046
1375
  ]);
1047
1376
  __publicField(SimpleStepRewardsViewer, "monikers", [NetworkStakeStepRewardsViewerMoniker2]);
1377
+ __publicField(SimpleStepRewardsViewer, "surface", "node");
1048
1378
  SimpleStepRewardsViewer = __decorateClass([
1049
- creatableProvider9()
1379
+ creatableProvider13()
1050
1380
  ], SimpleStepRewardsViewer);
1051
1381
 
1052
1382
  // src/SimpleStepViewer.ts
@@ -1058,11 +1388,11 @@ import {
1058
1388
  StepViewerMoniker as StepViewerMoniker2
1059
1389
  } from "@xyo-network/xl1-protocol-lib";
1060
1390
  import {
1061
- AbstractCreatableProvider as AbstractCreatableProvider9,
1062
- creatableProvider as creatableProvider10,
1391
+ AbstractCreatableProvider as AbstractCreatableProvider13,
1392
+ creatableProvider as creatableProvider14,
1063
1393
  externalBlockRangeFromStep as externalBlockRangeFromStep3
1064
1394
  } from "@xyo-network/xl1-protocol-sdk";
1065
- var SimpleStepViewer = class extends AbstractCreatableProvider9 {
1395
+ var SimpleStepViewer = class extends AbstractCreatableProvider13 {
1066
1396
  moniker = SimpleStepViewer.defaultMoniker;
1067
1397
  _blockViewer;
1068
1398
  _networkStakeStepRewardsViewer;
@@ -1115,6 +1445,7 @@ var SimpleStepViewer = class extends AbstractCreatableProvider9 {
1115
1445
  throw new Error("Method [weight] not implemented.");
1116
1446
  }
1117
1447
  };
1448
+ __publicField(SimpleStepViewer, "connectionTypes", ["lmdb", "mongo", "rpc"]);
1118
1449
  __publicField(SimpleStepViewer, "defaultMoniker", StepViewerMoniker2);
1119
1450
  __publicField(SimpleStepViewer, "dependencies", [
1120
1451
  BlockViewerMoniker6,
@@ -1123,348 +1454,131 @@ __publicField(SimpleStepViewer, "dependencies", [
1123
1454
  StakeEventsViewerMoniker
1124
1455
  ]);
1125
1456
  __publicField(SimpleStepViewer, "monikers", [StepViewerMoniker2]);
1457
+ __publicField(SimpleStepViewer, "surface", "node");
1126
1458
  SimpleStepViewer = __decorateClass([
1127
- creatableProvider10()
1459
+ creatableProvider14()
1128
1460
  ], SimpleStepViewer);
1129
1461
 
1130
- // src/buildProviderLocator.ts
1131
- function buildProviderLocator({ context = getEmptyProviderContext(ConfigZod.parse({})) } = {}) {
1132
- const {
1133
- config,
1134
- locator,
1135
- singletons = {},
1136
- caches = {},
1137
- ...restOfContext
1138
- } = context;
1139
- return new ProviderFactoryLocator({
1140
- ...restOfContext,
1141
- config,
1142
- singletons,
1143
- caches
1144
- }, locator?.registry);
1145
- }
1146
- function buildSimpleProviderLocator(params) {
1147
- const locator = buildProviderLocator(params);
1148
- const positions = [];
1149
- locator.registerMany([
1150
- SimpleStakeViewer2.factory(SimpleStakeViewer2.dependencies, { positions }),
1151
- SimpleStakeEventsViewer2.factory(SimpleStakeEventsViewer2.dependencies, { positions }),
1152
- SimpleNetworkStakeViewer.factory(SimpleNetworkStakeViewer.dependencies, {}),
1153
- SimpleTimeSyncViewer.factory(SimpleTimeSyncViewer.dependencies, {}),
1154
- SimpleStepViewer.factory(SimpleStepViewer.dependencies, {}),
1155
- SimpleStepRewardsViewer.factory(SimpleStepRewardsViewer.dependencies, {}),
1156
- SimpleStepRewardsByPositionViewer.factory(SimpleStepRewardsByPositionViewer.dependencies, {}),
1157
- SimpleStepRewardsByStakerViewer.factory(SimpleStepRewardsByStakerViewer.dependencies, {}),
1158
- SimpleStepRewardsByStepViewer.factory(SimpleStepRewardsByStepViewer.dependencies, {}),
1159
- SimpleStepRewardsTotalViewer.factory(SimpleStepRewardsTotalViewer.dependencies, {})
1160
- ]);
1161
- return registerGatewayWithLocator(locator, params?.signerAccount);
1162
- }
1163
- async function buildJsonRpcProviderLocator(params) {
1164
- const locator = buildProviderLocator(params);
1165
- const transportFactory = params.transportFactory;
1166
- const positions = [];
1167
- locator.registerMany([
1168
- JsonRpcStakeTotalsViewer.factory(
1169
- JsonRpcStakeTotalsViewer.dependencies,
1170
- { transport: await transportFactory(StakeTotalsViewerRpcSchemas) }
1171
- ),
1172
- JsonRpcAccountBalanceViewer.factory(
1173
- JsonRpcAccountBalanceViewer.dependencies,
1174
- { transport: await transportFactory(AccountBalanceViewerRpcSchemas) }
1175
- ),
1176
- JsonRpcBlockViewer.factory(JsonRpcBlockViewer.dependencies, { transport: await transportFactory(BlockViewerRpcSchemas) }),
1177
- JsonRpcMempoolRunner.factory(JsonRpcMempoolRunner.dependencies, { transport: await transportFactory(MempoolRunnerRpcSchemas) }),
1178
- JsonRpcMempoolViewer.factory(JsonRpcMempoolViewer.dependencies, { transport: await transportFactory(MempoolViewerRpcSchemas) }),
1179
- JsonRpcNetworkStakeViewer.factory(
1180
- JsonRpcNetworkStakeViewer.dependencies,
1181
- { transport: await transportFactory(NetworkStakeViewerRpcSchemas) }
1182
- ),
1183
- JsonRpcTimeSyncViewer.factory(JsonRpcTimeSyncViewer.dependencies, { transport: await transportFactory(TimeSyncViewerRpcSchemas) }),
1184
- JsonRpcNetworkStakeStepRewardsViewer.factory(
1185
- JsonRpcNetworkStakeStepRewardsViewer.dependencies,
1186
- { transport: await transportFactory({}) }
1187
- ),
1188
- JsonRpcXyoRunner.factory(JsonRpcXyoRunner.dependencies, { transport: await transportFactory(XyoRunnerRpcSchemas) }),
1189
- JsonRpcXyoViewer.factory(JsonRpcXyoViewer.dependencies, { transport: await transportFactory(XyoViewerRpcSchemas) }),
1190
- SimpleStakeViewer2.factory(SimpleStakeViewer2.dependencies, { positions }),
1191
- SimpleStakeEventsViewer2.factory(SimpleStakeEventsViewer2.dependencies, { positions }),
1192
- SimpleStepViewer.factory(SimpleStepViewer.dependencies, {})
1193
- ]);
1194
- return registerGatewayWithLocator(locator, params?.signerAccount);
1462
+ // src/locators/providerCandidates.ts
1463
+ var PROVIDER_IMPLEMENTATIONS = [
1464
+ JsonRpcAccountBalanceViewer,
1465
+ JsonRpcBlockViewer,
1466
+ JsonRpcFinalizationViewer,
1467
+ JsonRpcMempoolRunner,
1468
+ JsonRpcMempoolViewer,
1469
+ JsonRpcNetworkStakeViewer,
1470
+ JsonRpcStakeTotalsViewer,
1471
+ JsonRpcStakeViewer,
1472
+ JsonRpcTimeSyncViewer,
1473
+ JsonRpcTransactionViewer,
1474
+ JsonRpcXyoRunner,
1475
+ JsonRpcXyoSigner,
1476
+ JsonRpcXyoViewer,
1477
+ NodeXyoRunner,
1478
+ NodeXyoViewer,
1479
+ RestDataLakeRunner,
1480
+ RestDataLakeViewer,
1481
+ SimpleAccountBalanceViewer,
1482
+ SimpleBlockRewardViewer,
1483
+ SimpleBlockValidationViewer,
1484
+ SimpleBlockViewer,
1485
+ SimpleChainContractViewer,
1486
+ SimpleDeadLetterQueueRunner,
1487
+ SimpleDeadLetterQueueViewer,
1488
+ SimpleFinalizationRunner,
1489
+ SimpleFinalizationViewer,
1490
+ SimpleMempoolRunner2,
1491
+ SimpleMempoolViewer,
1492
+ SimpleNetworkStakeViewer,
1493
+ SimpleStakeEventsViewer,
1494
+ SimpleStakeTotalsViewer,
1495
+ SimpleStakeViewer,
1496
+ SimpleStepRewardsByPositionViewer,
1497
+ SimpleStepRewardsByStakerViewer,
1498
+ SimpleStepRewardsByStepViewer,
1499
+ SimpleStepRewardsTotalViewer,
1500
+ SimpleStepRewardsViewer,
1501
+ SimpleStepViewer,
1502
+ SimpleTimeSyncViewer,
1503
+ SimpleTransactionValidationViewer,
1504
+ SimpleTransactionViewer,
1505
+ SimpleWindowedBlockViewer,
1506
+ SimpleXyoConnectionRunner,
1507
+ SimpleXyoConnectionViewer,
1508
+ SimpleXyoGateway,
1509
+ SimpleXyoGatewayRunner,
1510
+ SimpleXyoRunner,
1511
+ SimpleXyoViewer
1512
+ ];
1513
+ function allProviderCandidates() {
1514
+ return providerCandidatesFromClasses(PROVIDER_IMPLEMENTATIONS);
1195
1515
  }
1196
- function buildLocalProviderLocator(params) {
1197
- const locator = buildSimpleProviderLocator(params);
1198
- const {
1199
- pendingTransactionsArchivist,
1200
- pendingBlocksArchivist,
1201
- balancesSummaryMap,
1202
- transfersSummaryMap,
1203
- finalizedArchivist,
1204
- node
1205
- } = params;
1206
- locator.registerMany([
1207
- SimpleMempoolViewer.factory(SimpleMempoolViewer.dependencies, { pendingTransactionsArchivist, pendingBlocksArchivist }),
1208
- SimpleMempoolRunner.factory(SimpleMempoolRunner.dependencies, { pendingTransactionsArchivist, pendingBlocksArchivist }),
1209
- SimpleAccountBalanceViewer.factory(SimpleAccountBalanceViewer.dependencies, { balancesSummaryMap, transfersSummaryMap }),
1210
- SimpleFinalizationViewer.factory(SimpleFinalizationViewer.dependencies, { finalizedArchivist }),
1211
- SimpleBlockViewer.factory(SimpleBlockViewer.dependencies, { finalizedArchivist }),
1212
- SimpleXyoRunner.factory(SimpleXyoRunner.dependencies, {}),
1213
- SimpleWindowedBlockViewer.factory(SimpleWindowedBlockViewer.dependencies, { maxWindowSize: 1e4, syncInterval: 1e4 }),
1214
- NodeXyoViewer.factory(NodeXyoViewer.dependencies, { node })
1215
- ]);
1216
- return registerGatewayWithLocator(locator, params?.signerAccount);
1516
+
1517
+ // src/locators/locatorFromAdaptedConfig.ts
1518
+ function locatorFromAdaptedConfig(options) {
1519
+ const adapted = adaptLegacyConfig(options.config);
1520
+ const needs = options.needs ?? needsFromProviderBindings(adapted);
1521
+ const candidates = options.candidates ?? allProviderCandidates();
1522
+ if (options.validateDepsOnRegister === true) {
1523
+ const plan = resolveProvidersFromConfig(needs, candidates, adapted);
1524
+ const locator = new ProviderFactoryLocator3({
1525
+ singletons: {},
1526
+ caches: {},
1527
+ ...options.context,
1528
+ config: adapted
1529
+ }, {}, true);
1530
+ registerFactoriesFromPlan(locator, plan);
1531
+ return locator;
1532
+ }
1533
+ return locatorFromConfig({
1534
+ candidates,
1535
+ config: adapted,
1536
+ context: options.context,
1537
+ needs
1538
+ });
1217
1539
  }
1218
1540
 
1219
- // src/buildProviderLocatorV2.ts
1220
- import {
1221
- ProviderFactoryLocator as ProviderFactoryLocator2,
1222
- SimpleAccountBalanceViewer as SimpleAccountBalanceViewer2,
1223
- SimpleBlockViewer as SimpleBlockViewer2,
1224
- SimpleFinalizationViewer as SimpleFinalizationViewer2,
1225
- SimpleMempoolRunner as SimpleMempoolRunner2,
1226
- SimpleMempoolViewer as SimpleMempoolViewer2,
1227
- SimpleTimeSyncViewer as SimpleTimeSyncViewer2,
1228
- SimpleWindowedBlockViewer as SimpleWindowedBlockViewer2,
1229
- SimpleXyoRunner as SimpleXyoRunner2
1230
- } from "@xyo-network/xl1-protocol-sdk";
1231
- import {
1232
- AccountBalanceViewerRpcSchemas as AccountBalanceViewerRpcSchemas2,
1233
- BlockViewerRpcSchemas as BlockViewerRpcSchemas2,
1234
- JsonRpcAccountBalanceViewer as JsonRpcAccountBalanceViewer2,
1235
- JsonRpcBlockViewer as JsonRpcBlockViewer2,
1236
- JsonRpcMempoolRunner as JsonRpcMempoolRunner2,
1237
- JsonRpcMempoolViewer as JsonRpcMempoolViewer2,
1238
- JsonRpcNetworkStakeStepRewardsViewer as JsonRpcNetworkStakeStepRewardsViewer2,
1239
- JsonRpcNetworkStakeViewer as JsonRpcNetworkStakeViewer2,
1240
- JsonRpcStakeTotalsViewer as JsonRpcStakeTotalsViewer2,
1241
- JsonRpcTimeSyncViewer as JsonRpcTimeSyncViewer2,
1242
- JsonRpcXyoRunner as JsonRpcXyoRunner2,
1243
- JsonRpcXyoViewer as JsonRpcXyoViewer2,
1244
- MempoolRunnerRpcSchemas as MempoolRunnerRpcSchemas2,
1245
- MempoolViewerRpcSchemas as MempoolViewerRpcSchemas2,
1246
- NetworkStakeViewerRpcSchemas as NetworkStakeViewerRpcSchemas2,
1247
- StakeTotalsViewerRpcSchemas as StakeTotalsViewerRpcSchemas2,
1248
- TimeSyncViewerRpcSchemas as TimeSyncViewerRpcSchemas2,
1249
- XyoRunnerRpcSchemas as XyoRunnerRpcSchemas2,
1250
- XyoViewerRpcSchemas as XyoViewerRpcSchemas2
1251
- } from "@xyo-network/xl1-rpc";
1252
- function buildEmptyProviderLocator(config) {
1253
- return new ProviderFactoryLocator2({
1541
+ // src/locators/remoteLocatorFromConfig.ts
1542
+ function remoteLocatorFromConfig(context, validateDepsOnRegister = false, validators) {
1543
+ const config = adaptLegacyConfig2(context.config);
1544
+ const locator = locatorFromAdaptedConfig({
1254
1545
  config,
1255
- singletons: {},
1256
- caches: {}
1546
+ context: {
1547
+ caches: context.caches,
1548
+ singletons: context.singletons
1549
+ },
1550
+ needs: needsFromConnectionTypes(config, ["rpc"]),
1551
+ validateDepsOnRegister
1257
1552
  });
1258
- }
1259
- function buildSimpleProviderLocatorV2(config, account) {
1260
- const locator = buildEmptyProviderLocator(config);
1261
- locator.registerMany([
1262
- SimpleNetworkStakeViewer.factory(SimpleNetworkStakeViewer.dependencies, {}),
1263
- SimpleTimeSyncViewer2.factory(SimpleTimeSyncViewer2.dependencies, {}),
1264
- SimpleStepViewer.factory(SimpleStepViewer.dependencies, {}),
1265
- SimpleStepRewardsViewer.factory(SimpleStepRewardsViewer.dependencies, {}),
1266
- SimpleStepRewardsByPositionViewer.factory(SimpleStepRewardsByPositionViewer.dependencies, {}),
1267
- SimpleStepRewardsByStakerViewer.factory(SimpleStepRewardsByStakerViewer.dependencies, {}),
1268
- SimpleStepRewardsByStepViewer.factory(SimpleStepRewardsByStepViewer.dependencies, {}),
1269
- SimpleStepRewardsTotalViewer.factory(SimpleStepRewardsTotalViewer.dependencies, {})
1270
- ]);
1271
- return registerGatewayWithLocator(locator, account);
1272
- }
1273
- async function buildJsonRpcProviderLocatorV2(config, transportFactory, account) {
1274
- const locator = buildEmptyProviderLocator(config);
1275
- locator.registerMany([
1276
- JsonRpcStakeTotalsViewer2.factory(
1277
- JsonRpcStakeTotalsViewer2.dependencies,
1278
- { transport: await transportFactory(StakeTotalsViewerRpcSchemas2) }
1279
- ),
1280
- JsonRpcAccountBalanceViewer2.factory(
1281
- JsonRpcAccountBalanceViewer2.dependencies,
1282
- { transport: await transportFactory(AccountBalanceViewerRpcSchemas2) }
1283
- ),
1284
- JsonRpcBlockViewer2.factory(JsonRpcBlockViewer2.dependencies, { transport: await transportFactory(BlockViewerRpcSchemas2) }),
1285
- JsonRpcMempoolRunner2.factory(JsonRpcMempoolRunner2.dependencies, { transport: await transportFactory(MempoolRunnerRpcSchemas2) }),
1286
- JsonRpcMempoolViewer2.factory(JsonRpcMempoolViewer2.dependencies, { transport: await transportFactory(MempoolViewerRpcSchemas2) }),
1287
- JsonRpcNetworkStakeViewer2.factory(
1288
- JsonRpcNetworkStakeViewer2.dependencies,
1289
- { transport: await transportFactory(NetworkStakeViewerRpcSchemas2) }
1290
- ),
1291
- JsonRpcTimeSyncViewer2.factory(JsonRpcTimeSyncViewer2.dependencies, { transport: await transportFactory(TimeSyncViewerRpcSchemas2) }),
1292
- JsonRpcNetworkStakeStepRewardsViewer2.factory(
1293
- JsonRpcNetworkStakeStepRewardsViewer2.dependencies,
1294
- { transport: await transportFactory({}) }
1295
- ),
1296
- JsonRpcXyoRunner2.factory(JsonRpcXyoRunner2.dependencies, { transport: await transportFactory(XyoRunnerRpcSchemas2) }),
1297
- JsonRpcXyoViewer2.factory(JsonRpcXyoViewer2.dependencies, { transport: await transportFactory(XyoViewerRpcSchemas2) })
1298
- ]);
1299
- return registerGatewayWithLocator(locator, account);
1300
- }
1301
- function buildLocalProviderLocatorV2(config, params) {
1302
- const {
1303
- account,
1304
- pendingTransactionsArchivist,
1305
- pendingBlocksArchivist,
1306
- balancesSummaryMap,
1307
- transfersSummaryMap,
1308
- finalizedArchivist
1309
- } = params;
1310
- const locator = buildSimpleProviderLocatorV2(config, account);
1311
- locator.registerMany([
1312
- SimpleMempoolViewer2.factory(SimpleMempoolViewer2.dependencies, { pendingTransactionsArchivist, pendingBlocksArchivist }),
1313
- SimpleMempoolRunner2.factory(SimpleMempoolRunner2.dependencies, { pendingTransactionsArchivist, pendingBlocksArchivist }),
1314
- SimpleAccountBalanceViewer2.factory(SimpleAccountBalanceViewer2.dependencies, { balancesSummaryMap, transfersSummaryMap }),
1315
- SimpleFinalizationViewer2.factory(SimpleFinalizationViewer2.dependencies, { finalizedArchivist }),
1316
- SimpleBlockViewer2.factory(SimpleBlockViewer2.dependencies, { finalizedArchivist }),
1317
- SimpleXyoRunner2.factory(SimpleXyoRunner2.dependencies, {}),
1318
- SimpleWindowedBlockViewer2.factory(SimpleWindowedBlockViewer2.dependencies, { maxWindowSize: 1e4, syncInterval: 1e4 }),
1319
- SimpleXyoViewer.factory(SimpleXyoViewer.dependencies, {})
1320
- ]);
1321
- return locator;
1322
- }
1323
-
1324
- // src/buildSimpleXyoSignerV2.ts
1325
- import { XyoSignerMoniker } from "@xyo-network/xl1-protocol-lib";
1326
- import { ProviderFactoryLocator as ProviderFactoryLocator3, SimpleXyoSigner as SimpleXyoSigner2 } from "@xyo-network/xl1-protocol-sdk";
1327
- async function buildSimpleXyoSignerV2(context, account) {
1328
- const locator = new ProviderFactoryLocator3(context);
1329
1553
  locator.register(
1330
- SimpleXyoSigner2.factory(SimpleXyoSigner2.dependencies, { account })
1554
+ SimpleStakeEventsViewer2.factory(
1555
+ SimpleStakeEventsViewer2.dependencies,
1556
+ { positions: [] }
1557
+ )
1331
1558
  );
1332
- return await locator.getInstance(XyoSignerMoniker);
1333
- }
1334
-
1335
- // src/creators/createRestDataLake.ts
1336
- import { RestDataLakeRunner as RestDataLakeRunner2, RestDataLakeViewer as RestDataLakeViewer3 } from "@xyo-network/xl1-protocol-sdk";
1337
-
1338
- // src/locators/baseConfigFactoryLocator.ts
1339
- import {
1340
- BaseConfigZod,
1341
- ProviderFactoryLocator as ProviderFactoryLocator4
1342
- } from "@xyo-network/xl1-protocol-sdk";
1343
- async function baseConfigFactoryLocator() {
1344
- const config = BaseConfigZod.parse({});
1345
- return new ProviderFactoryLocator4({
1346
- config,
1347
- singletons: {},
1348
- caches: {}
1349
- }, {});
1350
- }
1351
-
1352
- // src/locators/basicRemoteRunnerLocator.ts
1353
- import { isDefined as isDefined2 } from "@xylabs/sdk-js";
1354
- import {
1355
- ProviderFactoryLocator as ProviderFactoryLocator6,
1356
- RestDataLakeRunner,
1357
- RestDataLakeViewer as RestDataLakeViewer2,
1358
- SimpleXyoGatewayRunner as SimpleXyoGatewayRunner2
1359
- } from "@xyo-network/xl1-protocol-sdk";
1360
- import { JsonRpcXyoRunner as JsonRpcXyoRunner3, JsonRpcXyoSigner } from "@xyo-network/xl1-rpc";
1361
-
1362
- // src/locators/basicRemoteViewerLocator.ts
1363
- import { isDefined } from "@xylabs/sdk-js";
1364
- import {
1365
- ActorConfigZod,
1366
- RestDataLakeViewer,
1367
- SimpleXyoGateway as SimpleXyoGateway2
1368
- } from "@xyo-network/xl1-protocol-sdk";
1369
-
1370
- // src/SimpleXyoConnectionViewer.ts
1371
- import {
1372
- DataLakeViewerMoniker as DataLakeViewerMoniker2,
1373
- XyoConnectionMoniker as XyoConnectionMoniker2,
1374
- XyoViewerMoniker as XyoViewerMoniker3
1375
- } from "@xyo-network/xl1-protocol-lib";
1376
- import { AbstractCreatableProvider as AbstractCreatableProvider10, creatableProvider as creatableProvider11 } from "@xyo-network/xl1-protocol-sdk";
1377
- var SimpleXyoConnectionViewer = class extends AbstractCreatableProvider10 {
1378
- moniker = SimpleXyoConnectionViewer.defaultMoniker;
1379
- _network;
1380
- _storage;
1381
- _viewer;
1382
- get network() {
1383
- return this._network;
1384
- }
1385
- get storage() {
1386
- return this._storage;
1387
- }
1388
- get viewer() {
1389
- return this._viewer;
1390
- }
1391
- async createHandler() {
1392
- await super.createHandler();
1393
- this._viewer = await this.locator.getInstance(XyoViewerMoniker3);
1394
- const dataLakeViewer = await this.locator.tryGetInstance(DataLakeViewerMoniker2);
1395
- this._storage = dataLakeViewer;
1396
- }
1397
- };
1398
- __publicField(SimpleXyoConnectionViewer, "defaultMoniker", XyoConnectionMoniker2);
1399
- __publicField(SimpleXyoConnectionViewer, "dependencies", [XyoViewerMoniker3]);
1400
- __publicField(SimpleXyoConnectionViewer, "monikers", [XyoConnectionMoniker2]);
1401
- SimpleXyoConnectionViewer = __decorateClass([
1402
- creatableProvider11()
1403
- ], SimpleXyoConnectionViewer);
1404
-
1405
- // src/locators/remoteLocatorFromConfig.ts
1406
- import {
1407
- ProviderFactoryLocator as ProviderFactoryLocator5,
1408
- SimpleBlockValidationViewer,
1409
- SimpleStakeEventsViewer as SimpleStakeEventsViewer3
1410
- } from "@xyo-network/xl1-protocol-sdk";
1411
- import {
1412
- JsonRpcAccountBalanceViewer as JsonRpcAccountBalanceViewer3,
1413
- JsonRpcBlockViewer as JsonRpcBlockViewer3,
1414
- JsonRpcFinalizationViewer,
1415
- JsonRpcMempoolRunner as JsonRpcMempoolRunner3,
1416
- JsonRpcMempoolViewer as JsonRpcMempoolViewer3,
1417
- JsonRpcNetworkStakeViewer as JsonRpcNetworkStakeViewer3,
1418
- JsonRpcStakeViewer,
1419
- JsonRpcTransactionViewer,
1420
- JsonRpcXyoViewer as JsonRpcXyoViewer3
1421
- } from "@xyo-network/xl1-rpc";
1422
-
1423
- // src/locators/commonProvidersFromConfig.ts
1424
- import {
1425
- SimpleBlockRewardViewer,
1426
- SimpleTimeSyncViewer as SimpleTimeSyncViewer3,
1427
- SimpleTransactionValidationViewer,
1428
- SimpleTransactionViewer,
1429
- SimpleWindowedBlockViewer as SimpleWindowedBlockViewer3
1430
- } from "@xyo-network/xl1-protocol-sdk";
1431
- function commonProvidersFromConfig() {
1432
- return [
1433
- SimpleNetworkStakeViewer.factory(SimpleNetworkStakeViewer.dependencies, {}),
1434
- SimpleTimeSyncViewer3.factory(SimpleTimeSyncViewer3.dependencies, {}),
1435
- SimpleStepViewer.factory(SimpleStepViewer.dependencies, {}),
1436
- SimpleStepRewardsViewer.factory(SimpleStepRewardsViewer.dependencies, {}),
1437
- SimpleStepRewardsByPositionViewer.factory(SimpleStepRewardsByPositionViewer.dependencies, {}),
1438
- SimpleStepRewardsByStakerViewer.factory(SimpleStepRewardsByStakerViewer.dependencies, {}),
1439
- SimpleStepRewardsByStepViewer.factory(SimpleStepRewardsByStepViewer.dependencies, {}),
1440
- SimpleStepRewardsTotalViewer.factory(SimpleStepRewardsTotalViewer.dependencies, {}),
1441
- SimpleWindowedBlockViewer3.factory(SimpleWindowedBlockViewer3.dependencies, { maxWindowSize: 1e3, syncInterval: 1e4 }),
1442
- SimpleBlockRewardViewer.factory(SimpleBlockRewardViewer.dependencies, {}),
1443
- SimpleTransactionViewer.factory(SimpleTransactionViewer.dependencies, {}),
1444
- SimpleTransactionValidationViewer.factory(SimpleTransactionValidationViewer.dependencies, {})
1445
- ];
1446
- }
1447
-
1448
- // src/locators/remoteLocatorFromConfig.ts
1449
- function remoteLocatorFromConfig(context, validateDepsOnRegister = false, validators) {
1450
- const locator = new ProviderFactoryLocator5(context, {}, validateDepsOnRegister);
1451
- locator.registerMany([
1452
- ...commonProvidersFromConfig(),
1453
- JsonRpcMempoolViewer3.factory(JsonRpcMempoolViewer3.dependencies, {}),
1454
- JsonRpcMempoolRunner3.factory(JsonRpcMempoolRunner3.dependencies, {}),
1455
- JsonRpcAccountBalanceViewer3.factory(JsonRpcAccountBalanceViewer3.dependencies, {}),
1456
- JsonRpcFinalizationViewer.factory(JsonRpcFinalizationViewer.dependencies, {}),
1457
- JsonRpcBlockViewer3.factory(JsonRpcBlockViewer3.dependencies, {}),
1458
- JsonRpcTransactionViewer.factory(JsonRpcTransactionViewer.dependencies, {}),
1459
- JsonRpcNetworkStakeViewer3.factory(JsonRpcNetworkStakeViewer3.dependencies, {}),
1460
- JsonRpcStakeViewer.factory(JsonRpcStakeViewer.dependencies, {}),
1461
- SimpleStakeEventsViewer3.factory(SimpleStakeEventsViewer3.dependencies, { positions: [] }),
1462
- JsonRpcXyoViewer3.factory(JsonRpcXyoViewer3.dependencies, {}),
1463
- SimpleBlockValidationViewer.factory(
1464
- SimpleBlockValidationViewer.dependencies,
1465
- { state: validators?.validateHydratedBlockState, protocol: validators?.validateHydratedBlock }
1559
+ locator.register(
1560
+ SimpleWindowedBlockViewer2.factory(
1561
+ SimpleWindowedBlockViewer2.dependencies,
1562
+ { maxWindowSize: 1e3, syncInterval: 1e4 }
1466
1563
  )
1467
- ]);
1564
+ );
1565
+ locator.register(
1566
+ SimpleTransactionValidationViewer2.factory(
1567
+ SimpleTransactionValidationViewer2.dependencies,
1568
+ {}
1569
+ )
1570
+ );
1571
+ if (validators?.validateHydratedBlock !== void 0 || validators?.validateHydratedBlockState !== void 0) {
1572
+ locator.register(
1573
+ SimpleBlockValidationViewer2.factory(
1574
+ SimpleBlockValidationViewer2.dependencies,
1575
+ {
1576
+ protocol: validators.validateHydratedBlock,
1577
+ state: validators.validateHydratedBlockState
1578
+ }
1579
+ )
1580
+ );
1581
+ }
1468
1582
  return locator;
1469
1583
  }
1470
1584
 
@@ -1485,9 +1599,9 @@ async function basicRemoteViewerLocator(name, remoteConfig, dataLakeEndpoint, op
1485
1599
  SimpleXyoConnectionViewer.factory(SimpleXyoConnectionViewer.dependencies, {}),
1486
1600
  ...options?.additionalProviders ?? []
1487
1601
  ]);
1488
- if (isDefined(dataLakeEndpoint)) {
1602
+ if (isDefined2(dataLakeEndpoint)) {
1489
1603
  const dataLakeViewerParams = { endpoint: dataLakeEndpoint };
1490
- locator.register(RestDataLakeViewer.factory(RestDataLakeViewer.dependencies, dataLakeViewerParams));
1604
+ locator.register(RestDataLakeViewer2.factory(RestDataLakeViewer2.dependencies, dataLakeViewerParams));
1491
1605
  }
1492
1606
  locator.freeze();
1493
1607
  return locator;
@@ -1496,10 +1610,10 @@ async function basicRemoteViewerLocator(name, remoteConfig, dataLakeEndpoint, op
1496
1610
  // src/locators/basicRemoteRunnerLocator.ts
1497
1611
  async function basicRemoteRunnerLocator(name, remoteConfig, signerTransport, dataLakeEndpoint, options) {
1498
1612
  const remoteViewerLocator = await basicRemoteViewerLocator(name, remoteConfig, dataLakeEndpoint, options);
1499
- const locator = new ProviderFactoryLocator6(remoteViewerLocator.context, {});
1613
+ const locator = new ProviderFactoryLocator4(remoteViewerLocator.context, {});
1500
1614
  const providers = [
1501
1615
  SimpleXyoConnectionRunner.factory(SimpleXyoConnectionRunner.dependencies, {}),
1502
- JsonRpcXyoRunner3.factory(JsonRpcXyoRunner3.dependencies, {})
1616
+ JsonRpcXyoRunner2.factory(JsonRpcXyoRunner2.dependencies, {})
1503
1617
  ];
1504
1618
  if (options?.skipGatewayRunner !== true) {
1505
1619
  providers.push(
@@ -1512,36 +1626,39 @@ async function basicRemoteRunnerLocator(name, remoteConfig, signerTransport, dat
1512
1626
  ]);
1513
1627
  if (options?.signerFactory) {
1514
1628
  locator.register(options.signerFactory);
1515
- } else if (isDefined2(signerTransport)) {
1629
+ } else if (isDefined3(signerTransport)) {
1516
1630
  locator.register(
1517
- JsonRpcXyoSigner.factory(JsonRpcXyoSigner.dependencies, { transport: signerTransport })
1631
+ JsonRpcXyoSigner2.factory(JsonRpcXyoSigner2.dependencies, { transport: signerTransport })
1518
1632
  );
1519
1633
  } else {
1520
1634
  throw new Error("basicRemoteRunnerLocator requires either signerTransport or options.signerFactory");
1521
1635
  }
1522
- if (isDefined2(dataLakeEndpoint)) {
1636
+ if (isDefined3(dataLakeEndpoint)) {
1523
1637
  const dataLakeParams = { endpoint: dataLakeEndpoint };
1524
- locator.register(RestDataLakeViewer2.factory(RestDataLakeViewer2.dependencies, dataLakeParams));
1525
- locator.register(RestDataLakeRunner.factory(RestDataLakeRunner.dependencies, dataLakeParams));
1638
+ locator.register(RestDataLakeViewer3.factory(RestDataLakeViewer3.dependencies, dataLakeParams));
1639
+ locator.register(RestDataLakeRunner2.factory(RestDataLakeRunner2.dependencies, dataLakeParams));
1526
1640
  }
1527
1641
  locator.freeze();
1528
1642
  return locator;
1529
1643
  }
1530
1644
 
1531
1645
  // src/locators/commonLocatorFromConfig.ts
1532
- import { ProviderFactoryLocator as ProviderFactoryLocator7 } from "@xyo-network/xl1-protocol-sdk";
1646
+ import { ProviderFactoryLocator as ProviderFactoryLocator5 } from "@xyo-network/xl1-protocol-sdk";
1533
1647
  function commonLocatorFromConfig(context, validateDepsOnRegister = false) {
1534
- const locator = new ProviderFactoryLocator7(context, {}, validateDepsOnRegister);
1535
- locator.registerMany(commonProvidersFromConfig());
1536
- return locator;
1648
+ return new ProviderFactoryLocator5(context, {}, validateDepsOnRegister);
1649
+ }
1650
+
1651
+ // src/locators/commonProvidersFromConfig.ts
1652
+ function commonProvidersFromConfig() {
1653
+ return [];
1537
1654
  }
1538
1655
 
1539
1656
  // src/locators/rootLocatorFromConfig.ts
1540
- import { assertEx as assertEx5 } from "@xylabs/sdk-js";
1657
+ import { assertEx as assertEx7 } from "@xylabs/sdk-js";
1541
1658
  async function rootLocatorFromConfig(context, validateDepsOnRegister = false, validators) {
1542
1659
  const { config } = context;
1543
1660
  const newLocator = config.remote.rpc ? await remoteLocatorFromConfig(context, validateDepsOnRegister, validators) : void 0;
1544
- const locator = assertEx5(newLocator, () => "Root locator could not be created from config. No supported configuration found.");
1661
+ const locator = assertEx7(newLocator, () => "Root locator could not be created from config. No supported configuration found.");
1545
1662
  locator.freeze();
1546
1663
  return locator;
1547
1664
  }
@@ -1550,260 +1667,56 @@ async function rootLocatorFromConfig(context, validateDepsOnRegister = false, va
1550
1667
  async function createRestDataLakeViewer(dataLakeEndpoint) {
1551
1668
  const locator = await baseConfigFactoryLocator();
1552
1669
  const dataLakeViewerParams = { endpoint: dataLakeEndpoint };
1553
- locator.register(RestDataLakeViewer3.factory(RestDataLakeViewer3.dependencies, dataLakeViewerParams));
1670
+ locator.register(RestDataLakeViewer4.factory(RestDataLakeViewer4.dependencies, dataLakeViewerParams));
1554
1671
  locator.freeze();
1555
- return await locator.getInstance(RestDataLakeViewer3.defaultMoniker);
1672
+ return await locator.getInstance(RestDataLakeViewer4.defaultMoniker);
1556
1673
  }
1557
1674
  async function createRestDataLakeRunner(dataLakeEndpoint) {
1558
1675
  const locator = await baseConfigFactoryLocator();
1559
1676
  const dataLakeRunnerParams = { endpoint: dataLakeEndpoint };
1560
- locator.register(RestDataLakeRunner2.factory(RestDataLakeRunner2.dependencies, dataLakeRunnerParams));
1677
+ locator.register(RestDataLakeRunner3.factory(RestDataLakeRunner3.dependencies, dataLakeRunnerParams));
1561
1678
  locator.freeze();
1562
- return await locator.getInstance(RestDataLakeRunner2.defaultMoniker);
1679
+ return await locator.getInstance(RestDataLakeRunner3.defaultMoniker);
1563
1680
  }
1564
1681
 
1565
- // src/NodeXyoRunner.ts
1566
- import { assertEx as assertEx6 } from "@xylabs/sdk-js";
1567
- import { asArchivistInstance } from "@xyo-network/sdk-js";
1568
- import { XyoRunnerMoniker as XyoRunnerMoniker2 } from "@xyo-network/xl1-protocol-lib";
1682
+ // src/registerHelpers.ts
1569
1683
  import {
1570
- AbstractCreatableProvider as AbstractCreatableProvider11,
1571
- creatableProvider as creatableProvider12,
1572
- SimpleMempoolRunner as SimpleMempoolRunner3
1684
+ SimpleStakeEventsViewer as SimpleStakeEventsViewer3,
1685
+ SimpleStakeViewer as SimpleStakeViewer2,
1686
+ SimpleXyoGateway as SimpleXyoGateway3,
1687
+ SimpleXyoGatewayRunner as SimpleXyoGatewayRunner3,
1688
+ SimpleXyoSigner as SimpleXyoSigner2
1573
1689
  } from "@xyo-network/xl1-protocol-sdk";
1574
- var NodeXyoRunner = class extends AbstractCreatableProvider11 {
1575
- moniker = NodeXyoRunner.defaultMoniker;
1576
- _mempoolRunner;
1577
- _pendingBlocksArchivist;
1578
- _pendingTransactionsArchivist;
1579
- get mempool() {
1580
- return this._mempoolRunner;
1581
- }
1582
- get node() {
1583
- return this.params.node;
1584
- }
1585
- get pendingBlocksArchivist() {
1586
- return this._pendingBlocksArchivist;
1587
- }
1588
- get pendingBlocksArchivistPath() {
1589
- return this.params.pendingBlocksArchivistPath ?? "XYOChain:Pending:Blocks";
1590
- }
1591
- get pendingTransactionsArchivist() {
1592
- return this._pendingTransactionsArchivist;
1593
- }
1594
- get pendingTransactionsArchivistPath() {
1595
- return this.params.pendingTransactionsArchivistPath ?? "XYOChain:Pending:Transactions";
1596
- }
1597
- async broadcastTransaction(transaction) {
1598
- const [txHash] = await this.mempool.submitTransactions([transaction]);
1599
- return txHash;
1600
- }
1601
- getArchivist = async (identifier) => {
1602
- const archivist = await this.node.resolve(identifier);
1603
- return assertEx6(asArchivistInstance(archivist), () => `Could not resolve ${identifier} to an archivist instance`);
1604
- };
1605
- async startHandler() {
1606
- await super.startHandler();
1607
- this._pendingTransactionsArchivist = assertEx6(
1608
- await this.getArchivist(this.pendingTransactionsArchivistPath),
1609
- () => `Could not resolve pending archivist at ${this.pendingTransactionsArchivistPath}`
1610
- );
1611
- this._pendingBlocksArchivist = assertEx6(
1612
- await this.getArchivist(this.pendingBlocksArchivistPath),
1613
- () => `Could not resolve pending archivist at ${this.pendingBlocksArchivistPath}`
1614
- );
1615
- this._mempoolRunner = assertEx6(await SimpleMempoolRunner3.create({
1616
- context: this.context,
1617
- pendingTransactionsArchivist: this.pendingTransactionsArchivist,
1618
- pendingBlocksArchivist: this.pendingBlocksArchivist
1619
- }), () => "Failed to create SimpleMempoolRunner");
1690
+ var registerGatewayRunnerWithLocatorIfProvided = (locator, params) => {
1691
+ const account = params?.signerAccount;
1692
+ if (account) {
1693
+ locator.registerMany([
1694
+ SimpleXyoSigner2.factory(SimpleXyoSigner2.dependencies, { account }),
1695
+ SimpleXyoGatewayRunner3.factory(SimpleXyoGatewayRunner3.dependencies, {})
1696
+ ]);
1620
1697
  }
1698
+ return locator;
1621
1699
  };
1622
- __publicField(NodeXyoRunner, "defaultMoniker", XyoRunnerMoniker2);
1623
- __publicField(NodeXyoRunner, "dependencies", []);
1624
- __publicField(NodeXyoRunner, "monikers", [XyoRunnerMoniker2]);
1625
- NodeXyoRunner = __decorateClass([
1626
- creatableProvider12()
1627
- ], NodeXyoRunner);
1628
-
1629
- // src/SimpleDeadLetterQueueRunner.ts
1630
- import { assertEx as assertEx7 } from "@xylabs/sdk-js";
1631
- import { isHashMeta, PayloadBuilder } from "@xyo-network/sdk-js";
1632
- import {
1633
- DeadLetterQueueRunnerMoniker,
1634
- isBlockRejection,
1635
- isTransactionRejection
1636
- } from "@xyo-network/xl1-protocol-lib";
1637
- import { AbstractCreatableProvider as AbstractCreatableProvider12, creatableProvider as creatableProvider13 } from "@xyo-network/xl1-protocol-sdk";
1638
- var SimpleDeadLetterQueueRunner = class extends AbstractCreatableProvider12 {
1639
- moniker = SimpleDeadLetterQueueRunner.defaultMoniker;
1640
- get rejectedBlocksArchivist() {
1641
- return this.params.rejectedBlocksArchivist;
1642
- }
1643
- get rejectedTransactionsArchivist() {
1644
- return this.params.rejectedTransactionsArchivist;
1645
- }
1646
- static async paramsHandler(params) {
1647
- return {
1648
- ...await super.paramsHandler(params),
1649
- rejectedBlocksArchivist: assertEx7(params?.rejectedBlocksArchivist, () => "rejectedBlocksArchivist is required"),
1650
- rejectedTransactionsArchivist: assertEx7(params?.rejectedTransactionsArchivist, () => "rejectedTransactionsArchivist is required")
1651
- };
1652
- }
1653
- async pruneRejectedBlocks({
1654
- batchSize = 10,
1655
- maxPrune = 1e3,
1656
- maxCheck = 1e3
1657
- } = {}) {
1658
- let total = 0;
1659
- let pruned = 0;
1660
- let cursor;
1661
- let batch = await this.rejectedBlocksArchivist.next({
1662
- limit: batchSize,
1663
- cursor,
1664
- order: "desc"
1665
- });
1666
- while (batch.length > 0 && pruned < maxPrune && total < maxCheck) {
1667
- const pruneHashes = batch.filter(isHashMeta).filter((p) => !isBlockRejection(p)).map((p) => p._hash);
1668
- pruned += pruneHashes.length;
1669
- total += batch.length;
1670
- if (pruneHashes.length > 0) {
1671
- await this.rejectedBlocksArchivist.delete(pruneHashes);
1672
- }
1673
- const pruneSet = new Set(pruneHashes);
1674
- const lastSurvivor = batch.findLast((p) => isHashMeta(p) && !pruneSet.has(p._hash));
1675
- cursor = lastSurvivor?._sequence ?? cursor;
1676
- batch = await this.rejectedBlocksArchivist.next({
1677
- limit: batchSize,
1678
- cursor,
1679
- order: "desc"
1680
- });
1681
- }
1682
- return [pruned, total];
1683
- }
1684
- async pruneRejectedTransactions({
1685
- batchSize = 10,
1686
- maxPrune = 1e3,
1687
- maxCheck = 1e3
1688
- } = {}) {
1689
- let total = 0;
1690
- let pruned = 0;
1691
- let cursor;
1692
- let batch = await this.rejectedTransactionsArchivist.next({
1693
- limit: batchSize,
1694
- cursor,
1695
- order: "desc"
1696
- });
1697
- while (batch.length > 0 && pruned < maxPrune && total < maxCheck) {
1698
- const pruneHashes = batch.filter(isHashMeta).filter((p) => !isTransactionRejection(p)).map((p) => p._hash);
1699
- pruned += pruneHashes.length;
1700
- total += batch.length;
1701
- if (pruneHashes.length > 0) {
1702
- await this.rejectedTransactionsArchivist.delete(pruneHashes);
1703
- }
1704
- const pruneSet = new Set(pruneHashes);
1705
- const lastSurvivor = batch.findLast((p) => isHashMeta(p) && !pruneSet.has(p._hash));
1706
- cursor = lastSurvivor?._sequence ?? cursor;
1707
- batch = await this.rejectedTransactionsArchivist.next({
1708
- limit: batchSize,
1709
- cursor,
1710
- order: "desc"
1711
- });
1712
- }
1713
- return [pruned, total];
1714
- }
1715
- async rejectBlock(rejection) {
1716
- const withMeta = await PayloadBuilder.addHashMeta(rejection);
1717
- const inserted = await this.rejectedBlocksArchivist.insert([withMeta]);
1718
- return inserted.length > 0;
1719
- }
1720
- async rejectTransaction(rejection) {
1721
- const withMeta = await PayloadBuilder.addHashMeta(rejection);
1722
- const inserted = await this.rejectedTransactionsArchivist.insert([withMeta]);
1723
- return inserted.length > 0;
1700
+ var registerGatewayWithLocator = (locator, account) => {
1701
+ locator.registerMany([
1702
+ SimpleXyoConnectionRunner.factory(SimpleXyoConnectionRunner.dependencies, {}),
1703
+ SimpleXyoGateway3.factory(SimpleXyoGateway3.dependencies, {})
1704
+ ]);
1705
+ if (account) {
1706
+ locator.registerMany([
1707
+ SimpleXyoSigner2.factory(SimpleXyoSigner2.dependencies, { account }),
1708
+ SimpleXyoGatewayRunner3.factory(SimpleXyoGatewayRunner3.dependencies, {})
1709
+ ]);
1724
1710
  }
1711
+ return locator;
1725
1712
  };
1726
- __publicField(SimpleDeadLetterQueueRunner, "defaultMoniker", DeadLetterQueueRunnerMoniker);
1727
- __publicField(SimpleDeadLetterQueueRunner, "dependencies", []);
1728
- __publicField(SimpleDeadLetterQueueRunner, "monikers", [DeadLetterQueueRunnerMoniker]);
1729
- SimpleDeadLetterQueueRunner = __decorateClass([
1730
- creatableProvider13()
1731
- ], SimpleDeadLetterQueueRunner);
1732
-
1733
- // src/SimpleDeadLetterQueueViewer.ts
1734
- import {
1735
- exists,
1736
- isDefined as isDefined3,
1737
- isHash
1738
- } from "@xylabs/sdk-js";
1739
- import { isHashMeta as isHashMeta2 } from "@xyo-network/sdk-js";
1740
- import {
1741
- DeadLetterQueueViewerMoniker,
1742
- isBlockRejection as isBlockRejection2,
1743
- isTransactionRejection as isTransactionRejection2
1744
- } from "@xyo-network/xl1-protocol-lib";
1745
- import { AbstractCreatableProvider as AbstractCreatableProvider13, creatableProvider as creatableProvider14 } from "@xyo-network/xl1-protocol-sdk";
1746
- var SimpleDeadLetterQueueViewer = class extends AbstractCreatableProvider13 {
1747
- moniker = SimpleDeadLetterQueueViewer.defaultMoniker;
1748
- get rejectedBlocksArchivist() {
1749
- return this.params.rejectedBlocksArchivist;
1750
- }
1751
- get rejectedTransactionsArchivist() {
1752
- return this.params.rejectedTransactionsArchivist;
1753
- }
1754
- async rejectedBlocks({
1755
- cursor: providedCursor,
1756
- limit = 100,
1757
- rejector
1758
- } = {}) {
1759
- let cursor;
1760
- if (isHash(providedCursor)) {
1761
- const [p] = await this.rejectedBlocksArchivist.get([providedCursor]);
1762
- if (isDefined3(p)) {
1763
- cursor = p._sequence;
1764
- }
1765
- }
1766
- const payloads = await this.rejectedBlocksArchivist.next({
1767
- order: "desc",
1768
- limit,
1769
- cursor
1770
- });
1771
- const rejections = payloads.filter(isHashMeta2).map((p) => isBlockRejection2(p) ? p : void 0).filter(exists);
1772
- if (rejector !== void 0) {
1773
- return rejections.filter((r) => r.rejector === rejector);
1774
- }
1775
- return rejections;
1776
- }
1777
- async rejectedTransactions({
1778
- cursor: providedCursor,
1779
- limit = 100,
1780
- rejector
1781
- } = {}) {
1782
- let cursor;
1783
- if (isHash(providedCursor)) {
1784
- const [p] = await this.rejectedTransactionsArchivist.get([providedCursor]);
1785
- if (isDefined3(p)) {
1786
- cursor = p._sequence;
1787
- }
1788
- }
1789
- const payloads = await this.rejectedTransactionsArchivist.next({
1790
- order: "desc",
1791
- limit,
1792
- cursor
1793
- });
1794
- const rejections = payloads.filter(isHashMeta2).map((p) => isTransactionRejection2(p) ? p : void 0).filter(exists);
1795
- if (rejector !== void 0) {
1796
- return rejections.filter((r) => r.rejector === rejector);
1797
- }
1798
- return rejections;
1799
- }
1713
+ var registerSimpleStakeViewerWithLocator = (locator, positions) => {
1714
+ locator.registerMany([
1715
+ SimpleStakeViewer2.factory(SimpleStakeViewer2.dependencies, { positions }),
1716
+ SimpleStakeEventsViewer3.factory(SimpleStakeEventsViewer3.dependencies, { positions })
1717
+ ]);
1718
+ return locator;
1800
1719
  };
1801
- __publicField(SimpleDeadLetterQueueViewer, "defaultMoniker", DeadLetterQueueViewerMoniker);
1802
- __publicField(SimpleDeadLetterQueueViewer, "dependencies", []);
1803
- __publicField(SimpleDeadLetterQueueViewer, "monikers", [DeadLetterQueueViewerMoniker]);
1804
- SimpleDeadLetterQueueViewer = __decorateClass([
1805
- creatableProvider14()
1806
- ], SimpleDeadLetterQueueViewer);
1807
1720
  export {
1808
1721
  NodeXyoRunner,
1809
1722
  NodeXyoViewer,
@@ -1819,22 +1732,16 @@ export {
1819
1732
  SimpleXyoConnectionRunner,
1820
1733
  SimpleXyoConnectionViewer,
1821
1734
  SimpleXyoViewer,
1735
+ allProviderCandidates,
1822
1736
  baseConfigFactoryLocator,
1823
1737
  basicRemoteRunnerLocator,
1824
1738
  basicRemoteViewerLocator,
1825
- buildEmptyProviderLocator,
1826
- buildJsonRpcProviderLocator,
1827
- buildJsonRpcProviderLocatorV2,
1828
- buildLocalProviderLocator,
1829
- buildLocalProviderLocatorV2,
1830
- buildProviderLocator,
1831
- buildSimpleProviderLocator,
1832
- buildSimpleProviderLocatorV2,
1833
1739
  buildSimpleXyoSignerV2,
1834
1740
  commonLocatorFromConfig,
1835
1741
  commonProvidersFromConfig,
1836
1742
  createRestDataLakeRunner,
1837
1743
  createRestDataLakeViewer,
1744
+ locatorFromAdaptedConfig,
1838
1745
  registerGatewayRunnerWithLocatorIfProvided,
1839
1746
  registerGatewayWithLocator,
1840
1747
  registerSimpleStakeViewerWithLocator,