@xyo-network/chain-orchestration 1.16.21 → 1.16.23
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.
- package/dist/neutral/ConfigContext.d.ts +8 -0
- package/dist/neutral/ConfigContext.d.ts.map +1 -0
- package/dist/neutral/index.d.ts +3 -3
- package/dist/neutral/index.d.ts.map +1 -1
- package/dist/neutral/index.mjs +687 -21
- package/dist/neutral/index.mjs.map +1 -1
- package/dist/neutral/init/index.d.ts +9 -0
- package/dist/neutral/init/index.d.ts.map +1 -0
- package/dist/neutral/init/initBalanceSummaryMap.d.ts +5 -0
- package/dist/neutral/init/initBalanceSummaryMap.d.ts.map +1 -0
- package/dist/neutral/init/initBridgedModule.d.ts.map +1 -0
- package/dist/neutral/init/initChainStakeViewer.d.ts.map +1 -0
- package/dist/neutral/init/initProducerAccount.d.ts.map +1 -0
- package/dist/neutral/init/initSeedPhrase.d.ts +6 -0
- package/dist/neutral/init/initSeedPhrase.d.ts.map +1 -0
- package/dist/neutral/init/initServerNode.d.ts +16 -0
- package/dist/neutral/init/initServerNode.d.ts.map +1 -0
- package/dist/neutral/init/initServerWallet.d.ts +3 -0
- package/dist/neutral/init/initServerWallet.d.ts.map +1 -0
- package/dist/neutral/init/initTransferSummaryMap.d.ts +5 -0
- package/dist/neutral/init/initTransferSummaryMap.d.ts.map +1 -0
- package/dist/neutral/manifest/getLocator.d.ts +14 -0
- package/dist/neutral/manifest/getLocator.d.ts.map +1 -0
- package/dist/neutral/manifest/index.d.ts +6 -0
- package/dist/neutral/manifest/index.d.ts.map +1 -0
- package/dist/neutral/manifest/loadNode.d.ts +14 -0
- package/dist/neutral/manifest/loadNode.d.ts.map +1 -0
- package/dist/neutral/manifest/nodeManifest.d.ts +6 -0
- package/dist/neutral/manifest/nodeManifest.d.ts.map +1 -0
- package/dist/neutral/manifest/private/index.d.ts +5 -0
- package/dist/neutral/manifest/private/index.d.ts.map +1 -0
- package/dist/neutral/manifest/public/WithMempool/index.d.ts +6 -0
- package/dist/neutral/manifest/public/WithMempool/index.d.ts.map +1 -0
- package/dist/neutral/manifest/public/WithoutMempool/index.d.ts +6 -0
- package/dist/neutral/manifest/public/WithoutMempool/index.d.ts.map +1 -0
- package/dist/neutral/manifest/public/index.d.ts +3 -0
- package/dist/neutral/manifest/public/index.d.ts.map +1 -0
- package/package.json +24 -7
- package/src/ConfigContext.ts +9 -0
- package/src/index.ts +3 -3
- package/src/init/index.ts +8 -0
- package/src/init/initBalanceSummaryMap.ts +33 -0
- package/src/{initChainStakeViewer.ts → init/initChainStakeViewer.ts} +6 -3
- package/src/init/initSeedPhrase.ts +29 -0
- package/src/init/initServerNode.ts +45 -0
- package/src/init/initServerWallet.ts +17 -0
- package/src/init/initTransferSummaryMap.ts +33 -0
- package/src/manifest/getLocator.ts +103 -0
- package/src/manifest/index.ts +5 -0
- package/src/manifest/loadNode.ts +37 -0
- package/src/manifest/node.json +17 -0
- package/src/manifest/nodeManifest.ts +8 -0
- package/src/manifest/private/index.ts +4 -0
- package/src/manifest/public/WithMempool/Chain.json +175 -0
- package/src/manifest/public/WithMempool/Pending.json +35 -0
- package/src/manifest/public/WithMempool/index.ts +20 -0
- package/src/manifest/public/WithoutMempool/Chain.json +97 -0
- package/src/manifest/public/WithoutMempool/Pending.json +35 -0
- package/src/manifest/public/WithoutMempool/index.ts +20 -0
- package/src/manifest/public/index.ts +2 -0
- package/dist/neutral/initBridgedModule.d.ts.map +0 -1
- package/dist/neutral/initChainStakeViewer.d.ts.map +0 -1
- package/dist/neutral/initProducerAccount.d.ts.map +0 -1
- /package/dist/neutral/{initBridgedModule.d.ts → init/initBridgedModule.d.ts} +0 -0
- /package/dist/neutral/{initChainStakeViewer.d.ts → init/initChainStakeViewer.d.ts} +0 -0
- /package/dist/neutral/{initProducerAccount.d.ts → init/initProducerAccount.d.ts} +0 -0
- /package/src/{initBridgedModule.ts → init/initBridgedModule.ts} +0 -0
- /package/src/{initProducerAccount.ts → init/initProducerAccount.ts} +0 -0
package/dist/neutral/index.mjs
CHANGED
|
@@ -134,8 +134,44 @@ async function createProducerChainStakeIntentBlock(prevBlock, producerAccount, r
|
|
|
134
134
|
}
|
|
135
135
|
__name(createProducerChainStakeIntentBlock, "createProducerChainStakeIntentBlock");
|
|
136
136
|
|
|
137
|
-
// src/
|
|
137
|
+
// src/init/initBalanceSummaryMap.ts
|
|
138
|
+
import { BaseMongoSdk } from "@xylabs/mongo";
|
|
138
139
|
import { assertEx } from "@xylabs/sdk-js";
|
|
140
|
+
import { MongoMap } from "@xyo-network/chain-protocol";
|
|
141
|
+
import { hasMongoConfig, MemoryMap } from "@xyo-network/xl1-protocol-sdk";
|
|
142
|
+
async function initBalanceSummaryMap({ config, logger }) {
|
|
143
|
+
const mongoConfig = config.storage?.mongo;
|
|
144
|
+
if (hasMongoConfig(mongoConfig)) {
|
|
145
|
+
const { connectionString: dbConnectionString, database: dbName, domain: dbDomain, password: dbPassword, username: dbUserName } = mongoConfig;
|
|
146
|
+
const payloadSdkConfig = {
|
|
147
|
+
dbConnectionString,
|
|
148
|
+
dbDomain,
|
|
149
|
+
dbName,
|
|
150
|
+
dbPassword,
|
|
151
|
+
dbUserName
|
|
152
|
+
};
|
|
153
|
+
const sdkBalanceSummaryMap = new BaseMongoSdk({
|
|
154
|
+
...payloadSdkConfig,
|
|
155
|
+
collection: "balance_summary_map"
|
|
156
|
+
});
|
|
157
|
+
const result = await MongoMap.create({
|
|
158
|
+
sdk: sdkBalanceSummaryMap,
|
|
159
|
+
getCache: {
|
|
160
|
+
enabled: true,
|
|
161
|
+
maxEntries: 5e3
|
|
162
|
+
}
|
|
163
|
+
});
|
|
164
|
+
assertEx(await result.start(), () => "Failed to start transfer summary map");
|
|
165
|
+
return result;
|
|
166
|
+
} else {
|
|
167
|
+
logger?.warn("[API] Mongo configuration not found. Using MemoryMap for BalanceSummaryMap.");
|
|
168
|
+
return new MemoryMap();
|
|
169
|
+
}
|
|
170
|
+
}
|
|
171
|
+
__name(initBalanceSummaryMap, "initBalanceSummaryMap");
|
|
172
|
+
|
|
173
|
+
// src/init/initBridgedModule.ts
|
|
174
|
+
import { assertEx as assertEx2 } from "@xylabs/sdk-js";
|
|
139
175
|
import { asAttachableArchivistInstance } from "@xyo-network/archivist-model";
|
|
140
176
|
import { asAttachableModuleInstance } from "@xyo-network/module-model";
|
|
141
177
|
import { Mutex as Mutex2 } from "async-mutex";
|
|
@@ -145,8 +181,8 @@ var initBridgedModule = /* @__PURE__ */ __name(async ({ bridge, moduleName }) =>
|
|
|
145
181
|
return await initMutex2.runExclusive(async () => {
|
|
146
182
|
const existing = bridgedModuleDictionary?.[bridge.address]?.[moduleName];
|
|
147
183
|
if (existing) return existing;
|
|
148
|
-
const mod =
|
|
149
|
-
const moduleInstance =
|
|
184
|
+
const mod = assertEx2(await bridge.resolve(moduleName), () => `Could not resolve ${moduleName}`);
|
|
185
|
+
const moduleInstance = assertEx2(asAttachableModuleInstance(mod), () => `Could not convert ${moduleName} to attachable module instance`);
|
|
150
186
|
let moduleMap = bridgedModuleDictionary[bridge.address];
|
|
151
187
|
if (moduleMap === void 0) {
|
|
152
188
|
moduleMap = {};
|
|
@@ -157,32 +193,32 @@ var initBridgedModule = /* @__PURE__ */ __name(async ({ bridge, moduleName }) =>
|
|
|
157
193
|
});
|
|
158
194
|
}, "initBridgedModule");
|
|
159
195
|
var initBridgedArchivistModule = /* @__PURE__ */ __name(async ({ bridge, moduleName }) => {
|
|
160
|
-
return
|
|
196
|
+
return assertEx2(asAttachableArchivistInstance(await initBridgedModule({
|
|
161
197
|
bridge,
|
|
162
198
|
moduleName
|
|
163
199
|
})), () => `Could not convert ${moduleName} to attachable archivist instance`);
|
|
164
200
|
}, "initBridgedArchivistModule");
|
|
165
201
|
|
|
166
|
-
// src/initChainStakeViewer.ts
|
|
167
|
-
import { assertEx as
|
|
202
|
+
// src/init/initChainStakeViewer.ts
|
|
203
|
+
import { asAddress, assertEx as assertEx7, toAddress, toEthAddress } from "@xylabs/sdk-js";
|
|
168
204
|
import { EthereumChainStakeEvents, EthereumChainStakeViewer } from "@xyo-network/chain-sdk";
|
|
169
205
|
import { StakedXyoChainV2__factory } from "@xyo-network/typechain";
|
|
170
206
|
import { SimpleChainStakeViewer } from "@xyo-network/xl1-protocol-sdk";
|
|
171
207
|
|
|
172
208
|
// src/evm/initEvmProvider.ts
|
|
173
|
-
import { assertEx as
|
|
209
|
+
import { assertEx as assertEx6 } from "@xylabs/sdk-js";
|
|
174
210
|
|
|
175
211
|
// src/evm/initInfuraProvider.ts
|
|
176
|
-
import { assertEx as
|
|
212
|
+
import { assertEx as assertEx4, isDefined as isDefined2 } from "@xylabs/sdk-js";
|
|
177
213
|
import { InfuraProvider } from "ethers/providers";
|
|
178
214
|
|
|
179
215
|
// src/evm/initChainId.ts
|
|
180
|
-
import { assertEx as
|
|
216
|
+
import { assertEx as assertEx3, hexFrom, isDefined, isHex } from "@xylabs/sdk-js";
|
|
181
217
|
var canUseChainId = /* @__PURE__ */ __name((config) => {
|
|
182
218
|
return isDefined(config.evm.chainId);
|
|
183
219
|
}, "canUseChainId");
|
|
184
220
|
var getChainId = /* @__PURE__ */ __name((config) => {
|
|
185
|
-
const chainId =
|
|
221
|
+
const chainId = assertEx3(config.evm.chainId, () => "Missing config.evm.chainId");
|
|
186
222
|
if (isHex(chainId, {
|
|
187
223
|
prefix: true
|
|
188
224
|
})) {
|
|
@@ -207,8 +243,8 @@ var canUseInfuraProvider = /* @__PURE__ */ __name((config) => {
|
|
|
207
243
|
return canUseChainId(config) && isDefined2(config.evm?.infura?.projectId) && isDefined2(config.evm?.infura?.projectSecret);
|
|
208
244
|
}, "canUseInfuraProvider");
|
|
209
245
|
var getInfuraProviderConfig = /* @__PURE__ */ __name((config) => {
|
|
210
|
-
const projectId =
|
|
211
|
-
const projectSecret =
|
|
246
|
+
const projectId = assertEx4(config.evm?.infura?.projectId, () => "Missing config.evm.infura.projectId");
|
|
247
|
+
const projectSecret = assertEx4(config.evm?.infura?.projectSecret, () => "Missing config.evm.infura.projectSecret");
|
|
212
248
|
return [
|
|
213
249
|
getChainId(config),
|
|
214
250
|
projectId,
|
|
@@ -217,7 +253,7 @@ var getInfuraProviderConfig = /* @__PURE__ */ __name((config) => {
|
|
|
217
253
|
}, "getInfuraProviderConfig");
|
|
218
254
|
|
|
219
255
|
// src/evm/initJsonRpcProvider.ts
|
|
220
|
-
import { assertEx as
|
|
256
|
+
import { assertEx as assertEx5, isDefined as isDefined3 } from "@xylabs/sdk-js";
|
|
221
257
|
import { JsonRpcProvider } from "ethers/providers";
|
|
222
258
|
var initJsonRpcProvider = /* @__PURE__ */ __name((config) => {
|
|
223
259
|
const providerConfig = getJsonRpcProviderConfig(config);
|
|
@@ -227,7 +263,7 @@ var canUseJsonRpcProvider = /* @__PURE__ */ __name((config) => {
|
|
|
227
263
|
return canUseChainId(config) && isDefined3(config.evm.jsonRpc?.url);
|
|
228
264
|
}, "canUseJsonRpcProvider");
|
|
229
265
|
var getJsonRpcProviderConfig = /* @__PURE__ */ __name((config) => {
|
|
230
|
-
const jsonRpcUrl =
|
|
266
|
+
const jsonRpcUrl = assertEx5(config.evm.jsonRpc?.url, () => "Missing config.evm.jsonRpc.url");
|
|
231
267
|
return [
|
|
232
268
|
jsonRpcUrl,
|
|
233
269
|
getChainId(config)
|
|
@@ -243,40 +279,41 @@ var initEvmProvider = /* @__PURE__ */ __name(async ({ config }) => {
|
|
|
243
279
|
} else if (canUseJsonRpcProvider(config)) {
|
|
244
280
|
provider = initJsonRpcProvider(config);
|
|
245
281
|
}
|
|
246
|
-
return
|
|
282
|
+
return assertEx6(await provider, () => "No provider available");
|
|
247
283
|
}, "initEvmProvider");
|
|
248
284
|
var canUseEvmProvider = /* @__PURE__ */ __name(({ config }) => {
|
|
249
285
|
return canUseInfuraProvider(config) || canUseJsonRpcProvider(config);
|
|
250
286
|
}, "canUseEvmProvider");
|
|
251
287
|
|
|
252
|
-
// src/initChainStakeViewer.ts
|
|
288
|
+
// src/init/initChainStakeViewer.ts
|
|
253
289
|
async function initEvmChainStakeViewer(config, logger) {
|
|
254
290
|
const provider2 = await initEvmProvider({
|
|
255
291
|
config,
|
|
256
292
|
logger
|
|
257
293
|
});
|
|
258
|
-
const contractAddress =
|
|
294
|
+
const contractAddress = assertEx7(config.chain.id, () => "Missing config.evm.chainId");
|
|
259
295
|
const contract = StakedXyoChainV2__factory.connect(toEthAddress(contractAddress), provider2);
|
|
260
296
|
const stakeEventsViewer = await EthereumChainStakeEvents.create({
|
|
261
297
|
contract,
|
|
262
298
|
logger
|
|
263
299
|
});
|
|
264
|
-
|
|
300
|
+
assertEx7(await stakeEventsViewer.start(), () => "Failed to start EthereumChainStakeEvents reader");
|
|
265
301
|
const stakeChainViewer = await EthereumChainStakeViewer.create({
|
|
266
302
|
contract,
|
|
267
303
|
stakeEventsViewer,
|
|
268
304
|
logger
|
|
269
305
|
});
|
|
270
|
-
|
|
306
|
+
assertEx7(await stakeChainViewer.start(), () => "Failed to start EthereumChainStake viewer");
|
|
271
307
|
return stakeChainViewer;
|
|
272
308
|
}
|
|
273
309
|
__name(initEvmChainStakeViewer, "initEvmChainStakeViewer");
|
|
274
310
|
async function initSimpleStakeViewer(config, logger) {
|
|
275
311
|
const stakeChainViewer = await SimpleChainStakeViewer.create({
|
|
312
|
+
chainId: asAddress(toAddress(1n), true),
|
|
276
313
|
logger,
|
|
277
314
|
positions: []
|
|
278
315
|
});
|
|
279
|
-
|
|
316
|
+
assertEx7(await stakeChainViewer.start(), () => "Failed to start SimpleChainStake viewer");
|
|
280
317
|
return stakeChainViewer;
|
|
281
318
|
}
|
|
282
319
|
__name(initSimpleStakeViewer, "initSimpleStakeViewer");
|
|
@@ -292,7 +329,7 @@ async function initChainStakeViewer(config, logger) {
|
|
|
292
329
|
}
|
|
293
330
|
__name(initChainStakeViewer, "initChainStakeViewer");
|
|
294
331
|
|
|
295
|
-
// src/initProducerAccount.ts
|
|
332
|
+
// src/init/initProducerAccount.ts
|
|
296
333
|
import { isUndefined } from "@xylabs/sdk-js";
|
|
297
334
|
import { HDWallet } from "@xyo-network/wallet";
|
|
298
335
|
import { ADDRESS_INDEX, generateXyoBaseWalletFromPhrase } from "@xyo-network/xl1-protocol-sdk";
|
|
@@ -315,17 +352,646 @@ ${randomMnemonic}
|
|
|
315
352
|
accountServiceSingleton = account;
|
|
316
353
|
return accountServiceSingleton;
|
|
317
354
|
}, "initProducerAccount");
|
|
355
|
+
|
|
356
|
+
// src/init/initSeedPhrase.ts
|
|
357
|
+
import { assertEx as assertEx8, isString } from "@xylabs/sdk-js";
|
|
358
|
+
import { HDWallet as HDWallet2 } from "@xyo-network/wallet";
|
|
359
|
+
async function initSeedPhrase({ config, logger, bios }) {
|
|
360
|
+
const storedSeedPhrase = await bios.seedPhraseStore.get("os");
|
|
361
|
+
logger?.debug(`[API] Stored mnemonic: ${storedSeedPhrase}`);
|
|
362
|
+
const { mnemonic } = config.api;
|
|
363
|
+
if (isString(storedSeedPhrase) && isString(mnemonic)) {
|
|
364
|
+
logger?.warn("[API] Stored mnemonic does not match supplied. Updating stored mnemonic to supplied.");
|
|
365
|
+
await bios.seedPhraseStore.set("os", mnemonic);
|
|
366
|
+
} else {
|
|
367
|
+
let seedPhrase;
|
|
368
|
+
if (isString(mnemonic)) {
|
|
369
|
+
seedPhrase = mnemonic;
|
|
370
|
+
} else {
|
|
371
|
+
seedPhrase = HDWallet2.generateMnemonic();
|
|
372
|
+
logger?.log("[API] No mnemonic provided, using random mnemonic. This is not recommended for production use.");
|
|
373
|
+
logger?.log(`[API] Mnemonic: ${seedPhrase}`);
|
|
374
|
+
}
|
|
375
|
+
await bios.seedPhraseStore.set("os", seedPhrase);
|
|
376
|
+
}
|
|
377
|
+
return assertEx8(await bios.seedPhraseStore.get("os"), () => "Unable to acquire mnemonic from bios");
|
|
378
|
+
}
|
|
379
|
+
__name(initSeedPhrase, "initSeedPhrase");
|
|
380
|
+
|
|
381
|
+
// src/init/initServerNode.ts
|
|
382
|
+
import { assertEx as assertEx10 } from "@xylabs/sdk-js";
|
|
383
|
+
import { asArchivistInstance } from "@xyo-network/archivist-model";
|
|
384
|
+
|
|
385
|
+
// src/manifest/getLocator.ts
|
|
386
|
+
import { asAddress as asAddress2, assertEx as assertEx9, isDefined as isDefined4, ZERO_ADDRESS } from "@xylabs/sdk-js";
|
|
387
|
+
import { MemoryArchivist as MemoryArchivist2 } from "@xyo-network/archivist-memory";
|
|
388
|
+
import { MongoDBArchivistV2 } from "@xyo-network/archivist-mongodb";
|
|
389
|
+
import { ViewArchivist } from "@xyo-network/archivist-view";
|
|
390
|
+
import { AddressBalanceDivinerV2, AddressTransferDiviner, ArchivistSyncDiviner as ArchivistSyncDiviner2, HeadValidationDiviner } from "@xyo-network/chain-modules";
|
|
391
|
+
import { initTelemetry } from "@xyo-network/chain-telemetry";
|
|
392
|
+
import { AbstractModule, LoggerModuleStatusReporter } from "@xyo-network/module-abstract";
|
|
393
|
+
import { ModuleFactoryLocator } from "@xyo-network/module-factory-locator";
|
|
394
|
+
import { MemorySentinel as MemorySentinel2 } from "@xyo-network/sentinel-memory";
|
|
395
|
+
import { StepSizes } from "@xyo-network/xl1-protocol";
|
|
396
|
+
import { hasMongoConfig as hasMongoConfig2 } from "@xyo-network/xl1-protocol-sdk";
|
|
397
|
+
import { Semaphore } from "async-mutex";
|
|
398
|
+
var getLocator = /* @__PURE__ */ __name(async ({ config, logger, balanceSummaryMap, transferSummaryMap }) => {
|
|
399
|
+
const { otlpEndpoint } = config.telemetry?.otel ?? {};
|
|
400
|
+
const { traceProvider, meterProvider } = await initTelemetry({
|
|
401
|
+
attributes: {
|
|
402
|
+
serviceName: "xl1-api",
|
|
403
|
+
serviceVersion: "1.0.0"
|
|
404
|
+
},
|
|
405
|
+
otlpEndpoint,
|
|
406
|
+
metricsConfig: {
|
|
407
|
+
endpoint: "/metrics",
|
|
408
|
+
port: 9465
|
|
409
|
+
}
|
|
410
|
+
});
|
|
411
|
+
if (isDefined4(logger)) AbstractModule.defaultLogger = logger;
|
|
412
|
+
const statusReporter = logger ? new LoggerModuleStatusReporter(logger) : void 0;
|
|
413
|
+
const locator = new ModuleFactoryLocator();
|
|
414
|
+
const mongoConfig = config.storage?.mongo;
|
|
415
|
+
if (hasMongoConfig2(mongoConfig)) {
|
|
416
|
+
const { connectionString: dbConnectionString, database: dbName, domain: dbDomain, password: dbPassword, username: dbUserName } = mongoConfig;
|
|
417
|
+
const payloadSdkConfig = {
|
|
418
|
+
dbConnectionString,
|
|
419
|
+
dbDomain,
|
|
420
|
+
dbName,
|
|
421
|
+
dbPassword,
|
|
422
|
+
dbUserName
|
|
423
|
+
};
|
|
424
|
+
const params = {
|
|
425
|
+
meterProvider,
|
|
426
|
+
payloadSdkConfig,
|
|
427
|
+
statusReporter,
|
|
428
|
+
traceProvider
|
|
429
|
+
};
|
|
430
|
+
locator.register(MongoDBArchivistV2.factory(params), void 0, true);
|
|
431
|
+
}
|
|
432
|
+
locator.register(AddressBalanceDivinerV2.factory({
|
|
433
|
+
traceProvider,
|
|
434
|
+
meterProvider,
|
|
435
|
+
statusReporter,
|
|
436
|
+
summaryMap: balanceSummaryMap,
|
|
437
|
+
stepSemaphores: StepSizes.map(() => new Semaphore(20))
|
|
438
|
+
}));
|
|
439
|
+
locator.register(AddressTransferDiviner.factory({
|
|
440
|
+
traceProvider,
|
|
441
|
+
meterProvider,
|
|
442
|
+
statusReporter,
|
|
443
|
+
summaryMap: transferSummaryMap,
|
|
444
|
+
stepSemaphores: StepSizes.map(() => new Semaphore(20))
|
|
445
|
+
}));
|
|
446
|
+
const chainId = isDefined4(config.chain.id) ? assertEx9(asAddress2(config.chain.id), () => "chain.id must be an Address") : ZERO_ADDRESS;
|
|
447
|
+
locator.register(HeadValidationDiviner.factory({
|
|
448
|
+
traceProvider,
|
|
449
|
+
meterProvider,
|
|
450
|
+
statusReporter,
|
|
451
|
+
chainId,
|
|
452
|
+
allowedProducers: config.producer.allowlist
|
|
453
|
+
}));
|
|
454
|
+
locator.register(MemoryArchivist2.factory({
|
|
455
|
+
traceProvider,
|
|
456
|
+
meterProvider,
|
|
457
|
+
statusReporter
|
|
458
|
+
}));
|
|
459
|
+
locator.register(MemorySentinel2.factory({
|
|
460
|
+
traceProvider,
|
|
461
|
+
meterProvider,
|
|
462
|
+
statusReporter
|
|
463
|
+
}));
|
|
464
|
+
locator.register(ViewArchivist.factory({
|
|
465
|
+
traceProvider,
|
|
466
|
+
meterProvider,
|
|
467
|
+
statusReporter
|
|
468
|
+
}));
|
|
469
|
+
locator.register(ArchivistSyncDiviner2.factory({
|
|
470
|
+
traceProvider,
|
|
471
|
+
meterProvider,
|
|
472
|
+
statusReporter
|
|
473
|
+
}));
|
|
474
|
+
return locator;
|
|
475
|
+
}, "getLocator");
|
|
476
|
+
|
|
477
|
+
// src/manifest/loadNode.ts
|
|
478
|
+
import { ManifestWrapper } from "@xyo-network/manifest-wrapper";
|
|
479
|
+
|
|
480
|
+
// src/manifest/node.json
|
|
481
|
+
var node_default = {
|
|
482
|
+
$schema: "https://raw.githubusercontent.com/XYOracleNetwork/sdk-xyo-client-js/main/packages/manifest/src/schema.json",
|
|
483
|
+
nodes: [
|
|
484
|
+
{
|
|
485
|
+
config: {
|
|
486
|
+
accountPath: "44'/60'/1",
|
|
487
|
+
name: "XYOChain",
|
|
488
|
+
schema: "network.xyo.node.config"
|
|
489
|
+
},
|
|
490
|
+
modules: {
|
|
491
|
+
private: [],
|
|
492
|
+
public: []
|
|
493
|
+
}
|
|
494
|
+
}
|
|
495
|
+
],
|
|
496
|
+
schema: "network.xyo.manifest"
|
|
497
|
+
};
|
|
498
|
+
|
|
499
|
+
// src/manifest/nodeManifest.ts
|
|
500
|
+
var NodeManifest = node_default;
|
|
501
|
+
|
|
502
|
+
// src/manifest/private/index.ts
|
|
503
|
+
var PrivateChildManifests = [];
|
|
504
|
+
|
|
505
|
+
// src/manifest/public/WithMempool/Chain.json
|
|
506
|
+
var Chain_default = {
|
|
507
|
+
$schema: "https://raw.githubusercontent.com/XYOracleNetwork/sdk-xyo-client-js/main/packages/manifest/src/schema.json",
|
|
508
|
+
nodes: [
|
|
509
|
+
{
|
|
510
|
+
config: {
|
|
511
|
+
accountPath: "1",
|
|
512
|
+
name: "Chain",
|
|
513
|
+
schema: "network.xyo.node.config"
|
|
514
|
+
},
|
|
515
|
+
modules: {
|
|
516
|
+
private: [
|
|
517
|
+
{
|
|
518
|
+
config: {
|
|
519
|
+
accountPath: "1/1'/1'",
|
|
520
|
+
name: "Validated",
|
|
521
|
+
getCache: {
|
|
522
|
+
enabled: true,
|
|
523
|
+
maxEntries: 5e3
|
|
524
|
+
},
|
|
525
|
+
payloadSdkConfig: {
|
|
526
|
+
collection: "chain_validated"
|
|
527
|
+
},
|
|
528
|
+
schema: "network.xyo.archivist.config"
|
|
529
|
+
}
|
|
530
|
+
},
|
|
531
|
+
{
|
|
532
|
+
config: {
|
|
533
|
+
accountPath: "1/1'/2'",
|
|
534
|
+
schema: "network.xyo.diviner.chain.head.validation.config",
|
|
535
|
+
eventSubscriptions: [
|
|
536
|
+
{
|
|
537
|
+
sourceEvent: "inserted",
|
|
538
|
+
sourceModule: "Submissions",
|
|
539
|
+
targetModuleFunction: "divine"
|
|
540
|
+
}
|
|
541
|
+
],
|
|
542
|
+
inArchivist: "Submissions",
|
|
543
|
+
outArchivist: "Validated",
|
|
544
|
+
name: "HeadValidationDiviner"
|
|
545
|
+
}
|
|
546
|
+
},
|
|
547
|
+
{
|
|
548
|
+
config: {
|
|
549
|
+
accountPath: "1/1'/3'",
|
|
550
|
+
automations: [
|
|
551
|
+
{
|
|
552
|
+
frequency: 1e3,
|
|
553
|
+
frequencyUnits: "millis",
|
|
554
|
+
schema: "network.xyo.automation.interval",
|
|
555
|
+
type: "interval"
|
|
556
|
+
}
|
|
557
|
+
],
|
|
558
|
+
name: "ChainValidationSentinel",
|
|
559
|
+
schema: "network.xyo.sentinel.config",
|
|
560
|
+
synchronous: true,
|
|
561
|
+
tasks: [
|
|
562
|
+
{
|
|
563
|
+
mod: "HeadValidationDiviner",
|
|
564
|
+
endPoint: "divine"
|
|
565
|
+
}
|
|
566
|
+
]
|
|
567
|
+
}
|
|
568
|
+
},
|
|
569
|
+
{
|
|
570
|
+
config: {
|
|
571
|
+
accountPath: "1/1'/4'",
|
|
572
|
+
automations: [
|
|
573
|
+
{
|
|
574
|
+
frequency: 1e4,
|
|
575
|
+
frequencyUnits: "millis",
|
|
576
|
+
schema: "network.xyo.automation.interval",
|
|
577
|
+
type: "interval"
|
|
578
|
+
}
|
|
579
|
+
],
|
|
580
|
+
name: "AddressBalancePollingSentinel",
|
|
581
|
+
schema: "network.xyo.sentinel.config",
|
|
582
|
+
synchronous: true,
|
|
583
|
+
tasks: [
|
|
584
|
+
{
|
|
585
|
+
mod: "AddressBalanceDiviner",
|
|
586
|
+
endPoint: "divine"
|
|
587
|
+
}
|
|
588
|
+
]
|
|
589
|
+
}
|
|
590
|
+
},
|
|
591
|
+
{
|
|
592
|
+
config: {
|
|
593
|
+
accountPath: "1/1'/5'",
|
|
594
|
+
automations: [
|
|
595
|
+
{
|
|
596
|
+
frequency: 1e4,
|
|
597
|
+
frequencyUnits: "millis",
|
|
598
|
+
schema: "network.xyo.automation.interval",
|
|
599
|
+
type: "interval"
|
|
600
|
+
}
|
|
601
|
+
],
|
|
602
|
+
name: "AddressTransferPollingSentinel",
|
|
603
|
+
schema: "network.xyo.sentinel.config",
|
|
604
|
+
synchronous: true,
|
|
605
|
+
tasks: [
|
|
606
|
+
{
|
|
607
|
+
mod: "AddressTransferDiviner",
|
|
608
|
+
endPoint: "divine"
|
|
609
|
+
}
|
|
610
|
+
]
|
|
611
|
+
}
|
|
612
|
+
}
|
|
613
|
+
],
|
|
614
|
+
public: [
|
|
615
|
+
{
|
|
616
|
+
config: {
|
|
617
|
+
accountPath: "1/1/1",
|
|
618
|
+
name: "Submissions",
|
|
619
|
+
getCache: {
|
|
620
|
+
enabled: true,
|
|
621
|
+
maxEntries: 5e3
|
|
622
|
+
},
|
|
623
|
+
payloadSdkConfig: {
|
|
624
|
+
collection: "chain_submissions"
|
|
625
|
+
},
|
|
626
|
+
schema: "network.xyo.archivist.config"
|
|
627
|
+
}
|
|
628
|
+
},
|
|
629
|
+
{
|
|
630
|
+
config: {
|
|
631
|
+
accountPath: "1/1/2",
|
|
632
|
+
name: "Finalized",
|
|
633
|
+
allowedQueries: [
|
|
634
|
+
"network.xyo.query.archivist.get",
|
|
635
|
+
"network.xyo.query.archivist.next"
|
|
636
|
+
],
|
|
637
|
+
getCache: {
|
|
638
|
+
enabled: true,
|
|
639
|
+
maxEntries: 5e4
|
|
640
|
+
},
|
|
641
|
+
originArchivist: "Validated",
|
|
642
|
+
schema: "network.xyo.archivist.view.config"
|
|
643
|
+
}
|
|
644
|
+
},
|
|
645
|
+
{
|
|
646
|
+
config: {
|
|
647
|
+
accountPath: "1/1/3'",
|
|
648
|
+
name: "AddressBalanceDiviner",
|
|
649
|
+
schema: "network.xyo.diviner.chain.address.balance.config",
|
|
650
|
+
map: {
|
|
651
|
+
lmdb: {
|
|
652
|
+
dbName: "summaries",
|
|
653
|
+
storeName: "address_balance",
|
|
654
|
+
location: ".store"
|
|
655
|
+
}
|
|
656
|
+
},
|
|
657
|
+
archivist: "Validated"
|
|
658
|
+
}
|
|
659
|
+
},
|
|
660
|
+
{
|
|
661
|
+
config: {
|
|
662
|
+
accountPath: "1/1/4'",
|
|
663
|
+
name: "AddressTransferDiviner",
|
|
664
|
+
schema: "network.xyo.diviner.chain.address.transfer.config",
|
|
665
|
+
map: {
|
|
666
|
+
lmdb: {
|
|
667
|
+
dbName: "summaries",
|
|
668
|
+
storeName: "address_transfer",
|
|
669
|
+
location: ".store"
|
|
670
|
+
}
|
|
671
|
+
},
|
|
672
|
+
archivist: "Validated"
|
|
673
|
+
}
|
|
674
|
+
}
|
|
675
|
+
]
|
|
676
|
+
}
|
|
677
|
+
}
|
|
678
|
+
],
|
|
679
|
+
schema: "network.xyo.manifest"
|
|
680
|
+
};
|
|
681
|
+
|
|
682
|
+
// src/manifest/public/WithMempool/Pending.json
|
|
683
|
+
var Pending_default = {
|
|
684
|
+
$schema: "https://raw.githubusercontent.com/XYOracleNetwork/sdk-xyo-client-js/main/packages/manifest/src/schema.json",
|
|
685
|
+
nodes: [
|
|
686
|
+
{
|
|
687
|
+
config: {
|
|
688
|
+
accountPath: "2",
|
|
689
|
+
name: "Pending",
|
|
690
|
+
schema: "network.xyo.node.config"
|
|
691
|
+
},
|
|
692
|
+
modules: {
|
|
693
|
+
private: [],
|
|
694
|
+
public: [
|
|
695
|
+
{
|
|
696
|
+
config: {
|
|
697
|
+
accountPath: "2/1/1",
|
|
698
|
+
name: "PendingTransactions",
|
|
699
|
+
getCache: {
|
|
700
|
+
enabled: true,
|
|
701
|
+
maxEntries: 5e3
|
|
702
|
+
},
|
|
703
|
+
labels: {
|
|
704
|
+
"network.xyo.storage.class": "mongodb"
|
|
705
|
+
},
|
|
706
|
+
payloadSdkConfig: {
|
|
707
|
+
collection: "pending_bundles"
|
|
708
|
+
},
|
|
709
|
+
schema: "network.xyo.archivist.config"
|
|
710
|
+
}
|
|
711
|
+
}
|
|
712
|
+
]
|
|
713
|
+
}
|
|
714
|
+
}
|
|
715
|
+
],
|
|
716
|
+
schema: "network.xyo.manifest"
|
|
717
|
+
};
|
|
718
|
+
|
|
719
|
+
// src/manifest/public/WithMempool/index.ts
|
|
720
|
+
var ChainNodeManifest = Chain_default;
|
|
721
|
+
var PendingNodeManifest = Pending_default;
|
|
722
|
+
var PublicChildManifestsWithMempool = [
|
|
723
|
+
...ChainNodeManifest.nodes,
|
|
724
|
+
...PendingNodeManifest.nodes
|
|
725
|
+
];
|
|
726
|
+
|
|
727
|
+
// src/manifest/public/WithoutMempool/Chain.json
|
|
728
|
+
var Chain_default2 = {
|
|
729
|
+
$schema: "https://raw.githubusercontent.com/XYOracleNetwork/sdk-xyo-client-js/main/packages/manifest/src/schema.json",
|
|
730
|
+
nodes: [
|
|
731
|
+
{
|
|
732
|
+
config: {
|
|
733
|
+
accountPath: "1",
|
|
734
|
+
name: "Chain",
|
|
735
|
+
schema: "network.xyo.node.config"
|
|
736
|
+
},
|
|
737
|
+
modules: {
|
|
738
|
+
private: [
|
|
739
|
+
{
|
|
740
|
+
config: {
|
|
741
|
+
accountPath: "1/1'/1'",
|
|
742
|
+
name: "Validated",
|
|
743
|
+
allowedQueries: [
|
|
744
|
+
"network.xyo.query.archivist.get",
|
|
745
|
+
"network.xyo.query.archivist.next"
|
|
746
|
+
],
|
|
747
|
+
getCache: {
|
|
748
|
+
enabled: true,
|
|
749
|
+
maxEntries: 5e3
|
|
750
|
+
},
|
|
751
|
+
payloadSdkConfig: {
|
|
752
|
+
collection: "chain_validated"
|
|
753
|
+
},
|
|
754
|
+
schema: "network.xyo.archivist.config"
|
|
755
|
+
}
|
|
756
|
+
}
|
|
757
|
+
],
|
|
758
|
+
public: [
|
|
759
|
+
{
|
|
760
|
+
config: {
|
|
761
|
+
accountPath: "1/1/1",
|
|
762
|
+
name: "Submissions",
|
|
763
|
+
getCache: {
|
|
764
|
+
enabled: true,
|
|
765
|
+
maxEntries: 5e3
|
|
766
|
+
},
|
|
767
|
+
payloadSdkConfig: {
|
|
768
|
+
collection: "chain_submissions"
|
|
769
|
+
},
|
|
770
|
+
schema: "network.xyo.archivist.config"
|
|
771
|
+
}
|
|
772
|
+
},
|
|
773
|
+
{
|
|
774
|
+
config: {
|
|
775
|
+
accountPath: "1/1/2",
|
|
776
|
+
name: "Finalized",
|
|
777
|
+
allowedQueries: [
|
|
778
|
+
"network.xyo.query.archivist.get",
|
|
779
|
+
"network.xyo.query.archivist.next"
|
|
780
|
+
],
|
|
781
|
+
getCache: {
|
|
782
|
+
enabled: true,
|
|
783
|
+
maxEntries: 5e4
|
|
784
|
+
},
|
|
785
|
+
originArchivist: "Validated",
|
|
786
|
+
schema: "network.xyo.archivist.view.config"
|
|
787
|
+
}
|
|
788
|
+
},
|
|
789
|
+
{
|
|
790
|
+
config: {
|
|
791
|
+
accountPath: "1/1/3'",
|
|
792
|
+
name: "AddressBalanceDiviner",
|
|
793
|
+
schema: "network.xyo.diviner.chain.address.balance.config",
|
|
794
|
+
map: {
|
|
795
|
+
lmdb: {
|
|
796
|
+
dbName: "summaries",
|
|
797
|
+
storeName: "address_balance",
|
|
798
|
+
location: ".store"
|
|
799
|
+
}
|
|
800
|
+
},
|
|
801
|
+
archivist: "Validated"
|
|
802
|
+
}
|
|
803
|
+
},
|
|
804
|
+
{
|
|
805
|
+
config: {
|
|
806
|
+
accountPath: "1/1/4'",
|
|
807
|
+
name: "AddressTransferDiviner",
|
|
808
|
+
schema: "network.xyo.diviner.chain.address.transfer.config",
|
|
809
|
+
map: {
|
|
810
|
+
lmdb: {
|
|
811
|
+
dbName: "summaries",
|
|
812
|
+
storeName: "address_transfer",
|
|
813
|
+
location: ".store"
|
|
814
|
+
}
|
|
815
|
+
},
|
|
816
|
+
archivist: "Validated"
|
|
817
|
+
}
|
|
818
|
+
}
|
|
819
|
+
]
|
|
820
|
+
}
|
|
821
|
+
}
|
|
822
|
+
],
|
|
823
|
+
schema: "network.xyo.manifest"
|
|
824
|
+
};
|
|
825
|
+
|
|
826
|
+
// src/manifest/public/WithoutMempool/Pending.json
|
|
827
|
+
var Pending_default2 = {
|
|
828
|
+
$schema: "https://raw.githubusercontent.com/XYOracleNetwork/sdk-xyo-client-js/main/packages/manifest/src/schema.json",
|
|
829
|
+
nodes: [
|
|
830
|
+
{
|
|
831
|
+
config: {
|
|
832
|
+
accountPath: "2",
|
|
833
|
+
name: "Pending",
|
|
834
|
+
schema: "network.xyo.node.config"
|
|
835
|
+
},
|
|
836
|
+
modules: {
|
|
837
|
+
private: [],
|
|
838
|
+
public: [
|
|
839
|
+
{
|
|
840
|
+
config: {
|
|
841
|
+
accountPath: "2/1/1",
|
|
842
|
+
name: "PendingTransactions",
|
|
843
|
+
getCache: {
|
|
844
|
+
enabled: true,
|
|
845
|
+
maxEntries: 5e3
|
|
846
|
+
},
|
|
847
|
+
labels: {
|
|
848
|
+
"network.xyo.storage.class": "mongodb"
|
|
849
|
+
},
|
|
850
|
+
payloadSdkConfig: {
|
|
851
|
+
collection: "pending_bundles"
|
|
852
|
+
},
|
|
853
|
+
schema: "network.xyo.archivist.config"
|
|
854
|
+
}
|
|
855
|
+
}
|
|
856
|
+
]
|
|
857
|
+
}
|
|
858
|
+
}
|
|
859
|
+
],
|
|
860
|
+
schema: "network.xyo.manifest"
|
|
861
|
+
};
|
|
862
|
+
|
|
863
|
+
// src/manifest/public/WithoutMempool/index.ts
|
|
864
|
+
var ChainNodeManifest2 = Chain_default2;
|
|
865
|
+
var PendingNodeManifest2 = Pending_default2;
|
|
866
|
+
var PublicChildManifestsWithoutMempool = [
|
|
867
|
+
...ChainNodeManifest2.nodes,
|
|
868
|
+
...PendingNodeManifest2.nodes
|
|
869
|
+
];
|
|
870
|
+
|
|
871
|
+
// src/manifest/loadNode.ts
|
|
872
|
+
var loadNode = /* @__PURE__ */ __name(async ({ wallet, config, balanceSummaryMap, transferSummaryMap }) => {
|
|
873
|
+
const { enabled: mempoolEnabled } = config.mempool;
|
|
874
|
+
const PublicChildManifests = mempoolEnabled ? PublicChildManifestsWithoutMempool : PublicChildManifestsWithMempool;
|
|
875
|
+
const locator = await getLocator({
|
|
876
|
+
config,
|
|
877
|
+
balanceSummaryMap,
|
|
878
|
+
transferSummaryMap
|
|
879
|
+
});
|
|
880
|
+
const wrapper = new ManifestWrapper(NodeManifest, wallet, locator, PublicChildManifests, PrivateChildManifests);
|
|
881
|
+
const [node, ...childNodes] = await wrapper.loadNodes();
|
|
882
|
+
if (childNodes?.length > 0) {
|
|
883
|
+
await Promise.all(childNodes.map((childNode) => node.register(childNode)));
|
|
884
|
+
await Promise.all(childNodes.map((childNode) => node.attach(childNode.address, true)));
|
|
885
|
+
}
|
|
886
|
+
return node;
|
|
887
|
+
}, "loadNode");
|
|
888
|
+
|
|
889
|
+
// src/init/initServerNode.ts
|
|
890
|
+
async function chainArchivistFromNode(node) {
|
|
891
|
+
const chainArchivist = assertEx10(asArchivistInstance(await node.resolve("Chain:Validated"), {
|
|
892
|
+
required: true
|
|
893
|
+
}), () => "FinalizedArchivist not found in node");
|
|
894
|
+
return chainArchivist;
|
|
895
|
+
}
|
|
896
|
+
__name(chainArchivistFromNode, "chainArchivistFromNode");
|
|
897
|
+
async function pendingArchivistFromNode(node) {
|
|
898
|
+
const pendingArchivist = assertEx10(asArchivistInstance(await node.resolve("XYOChain:Pending:PendingTransactions"), {
|
|
899
|
+
required: true
|
|
900
|
+
}), () => "PendingArchivist not found in node");
|
|
901
|
+
return pendingArchivist;
|
|
902
|
+
}
|
|
903
|
+
__name(pendingArchivistFromNode, "pendingArchivistFromNode");
|
|
904
|
+
async function initServerNode({ wallet, logger, config, node: providedNode, transferSummaryMap, balanceSummaryMap }) {
|
|
905
|
+
const node = providedNode ?? await loadNode({
|
|
906
|
+
wallet,
|
|
907
|
+
logger,
|
|
908
|
+
config,
|
|
909
|
+
transferSummaryMap,
|
|
910
|
+
balanceSummaryMap
|
|
911
|
+
});
|
|
912
|
+
const chainArchivist = await chainArchivistFromNode(node);
|
|
913
|
+
const pendingArchivist = await pendingArchivistFromNode(node);
|
|
914
|
+
return {
|
|
915
|
+
node,
|
|
916
|
+
chainArchivist,
|
|
917
|
+
pendingArchivist
|
|
918
|
+
};
|
|
919
|
+
}
|
|
920
|
+
__name(initServerNode, "initServerNode");
|
|
921
|
+
|
|
922
|
+
// src/init/initServerWallet.ts
|
|
923
|
+
import { isDefined as isDefined5 } from "@xylabs/sdk-js";
|
|
924
|
+
import { boot } from "@xyo-network/bios";
|
|
925
|
+
import { HDWallet as HDWallet3 } from "@xyo-network/wallet";
|
|
926
|
+
async function initServerWallet({ config, logger }) {
|
|
927
|
+
const { mnemonic } = config.api;
|
|
928
|
+
const bios = await boot();
|
|
929
|
+
const seedPhrase = isDefined5(mnemonic) ? mnemonic : await initSeedPhrase({
|
|
930
|
+
bios,
|
|
931
|
+
config,
|
|
932
|
+
logger
|
|
933
|
+
});
|
|
934
|
+
return await HDWallet3.fromPhrase(seedPhrase);
|
|
935
|
+
}
|
|
936
|
+
__name(initServerWallet, "initServerWallet");
|
|
937
|
+
|
|
938
|
+
// src/init/initTransferSummaryMap.ts
|
|
939
|
+
import { BaseMongoSdk as BaseMongoSdk2 } from "@xylabs/mongo";
|
|
940
|
+
import { assertEx as assertEx11 } from "@xylabs/sdk-js";
|
|
941
|
+
import { MongoMap as MongoMap2 } from "@xyo-network/chain-protocol";
|
|
942
|
+
import { hasMongoConfig as hasMongoConfig3, MemoryMap as MemoryMap2 } from "@xyo-network/xl1-protocol-sdk";
|
|
943
|
+
async function initTransferSummaryMap({ config, logger }) {
|
|
944
|
+
const mongoConfig = config.storage?.mongo;
|
|
945
|
+
if (hasMongoConfig3(mongoConfig)) {
|
|
946
|
+
const { connectionString: dbConnectionString, database: dbName, domain: dbDomain, password: dbPassword, username: dbUserName } = mongoConfig;
|
|
947
|
+
const payloadSdkConfig = {
|
|
948
|
+
dbConnectionString,
|
|
949
|
+
dbDomain,
|
|
950
|
+
dbName,
|
|
951
|
+
dbPassword,
|
|
952
|
+
dbUserName
|
|
953
|
+
};
|
|
954
|
+
const sdkTransferSummaryMap = new BaseMongoSdk2({
|
|
955
|
+
...payloadSdkConfig,
|
|
956
|
+
collection: "transfer_summary_map"
|
|
957
|
+
});
|
|
958
|
+
const result = await MongoMap2.create({
|
|
959
|
+
sdk: sdkTransferSummaryMap,
|
|
960
|
+
getCache: {
|
|
961
|
+
enabled: true,
|
|
962
|
+
maxEntries: 5e3
|
|
963
|
+
}
|
|
964
|
+
});
|
|
965
|
+
assertEx11(await result.start(), () => "Failed to start transfer summary map");
|
|
966
|
+
return result;
|
|
967
|
+
} else {
|
|
968
|
+
logger?.warn("[API] Mongo configuration not found. Using MemoryMap for TransferSummaryMap.");
|
|
969
|
+
return new MemoryMap2();
|
|
970
|
+
}
|
|
971
|
+
}
|
|
972
|
+
__name(initTransferSummaryMap, "initTransferSummaryMap");
|
|
318
973
|
export {
|
|
319
974
|
DefaultReadCachingArchivistConfig,
|
|
975
|
+
NodeManifest,
|
|
976
|
+
PrivateChildManifests,
|
|
977
|
+
PublicChildManifestsWithMempool,
|
|
978
|
+
PublicChildManifestsWithoutMempool,
|
|
320
979
|
createProducerChainStakeIntentBlock,
|
|
980
|
+
getLocator,
|
|
321
981
|
initArchivistSync,
|
|
982
|
+
initBalanceSummaryMap,
|
|
322
983
|
initBridge,
|
|
323
984
|
initBridgedArchivistModule,
|
|
324
985
|
initBridgedModule,
|
|
325
986
|
initChainStakeViewer,
|
|
326
987
|
initEvmChainStakeViewer,
|
|
327
988
|
initProducerAccount,
|
|
989
|
+
initSeedPhrase,
|
|
990
|
+
initServerNode,
|
|
991
|
+
initServerWallet,
|
|
328
992
|
initSimpleStakeViewer,
|
|
993
|
+
initTransferSummaryMap,
|
|
994
|
+
loadNode,
|
|
329
995
|
wrapWithReadCachingArchivist
|
|
330
996
|
};
|
|
331
997
|
//# sourceMappingURL=index.mjs.map
|