@xyo-network/chain-orchestration-storage 1.22.0 → 1.23.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.
- package/dist/neutral/index.mjs +5 -16
- package/dist/neutral/index.mjs.map +7 -1
- package/package.json +8 -15
package/dist/neutral/index.mjs
CHANGED
|
@@ -1,6 +1,3 @@
|
|
|
1
|
-
var __defProp = Object.defineProperty;
|
|
2
|
-
var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
|
|
3
|
-
|
|
4
1
|
// src/ChainFinalized/archivist.ts
|
|
5
2
|
import { timeBudget } from "@xylabs/sdk-js";
|
|
6
3
|
import { startupSpanAsync } from "@xyo-network/chain-utils";
|
|
@@ -10,12 +7,12 @@ import { Mutex as Mutex2 } from "async-mutex";
|
|
|
10
7
|
import { Mutex } from "async-mutex";
|
|
11
8
|
|
|
12
9
|
// src/lib/localPersistentArchivist.ts
|
|
13
|
-
import { rm } from "fs/promises";
|
|
14
|
-
import Path from "path";
|
|
10
|
+
import { rm } from "node:fs/promises";
|
|
11
|
+
import Path from "node:path";
|
|
15
12
|
import { LmdbArchivist, LmdbArchivistConfigSchema } from "@xyo-network/archivist-lmdb";
|
|
16
13
|
import { getStoreDirectory } from "@xyo-network/chain-protocol-driver-lmdb";
|
|
17
14
|
var DEFAULT_STORAGE_ROOT = Path.join(process.cwd(), ".store");
|
|
18
|
-
var getLocalPersistentArchivist =
|
|
15
|
+
var getLocalPersistentArchivist = (name, dbName, storeName, storageRoot, kind = "lmdb") => {
|
|
19
16
|
switch (kind) {
|
|
20
17
|
case "lmdb": {
|
|
21
18
|
const root = storageRoot ?? DEFAULT_STORAGE_ROOT;
|
|
@@ -32,7 +29,7 @@ var getLocalPersistentArchivist = /* @__PURE__ */ __name((name, dbName, storeNam
|
|
|
32
29
|
});
|
|
33
30
|
}
|
|
34
31
|
}
|
|
35
|
-
}
|
|
32
|
+
};
|
|
36
33
|
|
|
37
34
|
// src/ChainFinalized/local.ts
|
|
38
35
|
var mutex = new Mutex();
|
|
@@ -45,7 +42,6 @@ async function initLocalChainFinalizedArchivist({ config }) {
|
|
|
45
42
|
return singleton;
|
|
46
43
|
});
|
|
47
44
|
}
|
|
48
|
-
__name(initLocalChainFinalizedArchivist, "initLocalChainFinalizedArchivist");
|
|
49
45
|
|
|
50
46
|
// src/ChainFinalized/archivist.ts
|
|
51
47
|
var mutex2 = new Mutex2();
|
|
@@ -60,7 +56,6 @@ async function initChainFinalizedArchivist(context) {
|
|
|
60
56
|
}, 2e3, true);
|
|
61
57
|
});
|
|
62
58
|
}
|
|
63
|
-
__name(initChainFinalizedArchivist, "initChainFinalizedArchivist");
|
|
64
59
|
|
|
65
60
|
// src/PendingBlocks/archivist.ts
|
|
66
61
|
import { timeBudget as timeBudget2 } from "@xylabs/sdk-js";
|
|
@@ -79,7 +74,6 @@ async function initLocalPendingBlocksArchivist({ config }) {
|
|
|
79
74
|
return singleton3;
|
|
80
75
|
});
|
|
81
76
|
}
|
|
82
|
-
__name(initLocalPendingBlocksArchivist, "initLocalPendingBlocksArchivist");
|
|
83
77
|
|
|
84
78
|
// src/PendingBlocks/archivist.ts
|
|
85
79
|
var mutex4 = new Mutex4();
|
|
@@ -94,7 +88,6 @@ async function initPendingBlocksArchivist(context) {
|
|
|
94
88
|
}, 2e3, true);
|
|
95
89
|
});
|
|
96
90
|
}
|
|
97
|
-
__name(initPendingBlocksArchivist, "initPendingBlocksArchivist");
|
|
98
91
|
|
|
99
92
|
// src/RejectedTransactions/archivist.ts
|
|
100
93
|
import { timeBudget as timeBudget3 } from "@xylabs/sdk-js";
|
|
@@ -120,7 +113,6 @@ async function initLocalRejectedTransactionsArchivist() {
|
|
|
120
113
|
return singleton5;
|
|
121
114
|
});
|
|
122
115
|
}
|
|
123
|
-
__name(initLocalRejectedTransactionsArchivist, "initLocalRejectedTransactionsArchivist");
|
|
124
116
|
|
|
125
117
|
// src/RejectedTransactions/archivist.ts
|
|
126
118
|
var mutex6 = new Mutex6();
|
|
@@ -135,7 +127,6 @@ async function initRejectedTransactionsArchivist({ logger }) {
|
|
|
135
127
|
}, 2e3, true);
|
|
136
128
|
});
|
|
137
129
|
}
|
|
138
|
-
__name(initRejectedTransactionsArchivist, "initRejectedTransactionsArchivist");
|
|
139
130
|
|
|
140
131
|
// src/StakeIntentState/archivist.ts
|
|
141
132
|
import { assertEx as assertEx2, timeBudget as timeBudget4 } from "@xylabs/sdk-js";
|
|
@@ -155,7 +146,6 @@ async function initLocalStakeIntentStateArchivist({ config }) {
|
|
|
155
146
|
return assertEx(singleton7, () => new Error("Failed to initialize stake intent state archivist"));
|
|
156
147
|
});
|
|
157
148
|
}
|
|
158
|
-
__name(initLocalStakeIntentStateArchivist, "initLocalStakeIntentStateArchivist");
|
|
159
149
|
|
|
160
150
|
// src/StakeIntentState/archivist.ts
|
|
161
151
|
var mutex8 = new Mutex8();
|
|
@@ -170,11 +160,10 @@ async function initStakeIntentStateArchivist(context) {
|
|
|
170
160
|
}, 2e3, true);
|
|
171
161
|
});
|
|
172
162
|
}
|
|
173
|
-
__name(initStakeIntentStateArchivist, "initStakeIntentStateArchivist");
|
|
174
163
|
export {
|
|
175
164
|
initChainFinalizedArchivist,
|
|
176
165
|
initPendingBlocksArchivist,
|
|
177
166
|
initRejectedTransactionsArchivist,
|
|
178
167
|
initStakeIntentStateArchivist
|
|
179
168
|
};
|
|
180
|
-
//# sourceMappingURL=index.mjs.map
|
|
169
|
+
//# sourceMappingURL=index.mjs.map
|
|
@@ -1 +1,7 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/ChainFinalized/archivist.ts","../../src/ChainFinalized/local.ts","../../src/lib/localPersistentArchivist.ts","../../src/PendingBlocks/archivist.ts","../../src/PendingBlocks/local.ts","../../src/RejectedTransactions/archivist.ts","../../src/RejectedTransactions/local.ts","../../src/StakeIntentState/archivist.ts","../../src/StakeIntentState/local.ts"],"sourcesContent":["import { timeBudget } from '@xylabs/sdk-js'\nimport { startupSpanAsync } from '@xyo-network/chain-utils'\nimport type { ArchivistInstance } from '@xyo-network/sdk-js'\nimport type { CreatableProviderContext } from '@xyo-network/xl1-sdk'\nimport { Mutex } from 'async-mutex'\n\nimport { initLocalChainFinalizedArchivist } from './local.ts'\n\nconst mutex = new Mutex()\nlet singleton: ArchivistInstance | undefined\n\nexport async function initChainFinalizedArchivist(context: CreatableProviderContext) {\n return await mutex.runExclusive(async () => {\n if (singleton) return singleton\n return await timeBudget('initChainFinalizedArchivist', context.logger, async () => {\n const local = await startupSpanAsync('ChainFinalizedArchivist:initLocal', () => initLocalChainFinalizedArchivist(context))\n singleton = local\n return singleton\n }, 2000, true)\n })\n}\n","import type { ArchivistInstance } from '@xyo-network/sdk-js'\nimport type { CreatableProviderContext } from '@xyo-network/xl1-sdk'\nimport { Mutex } from 'async-mutex'\n\nimport { getLocalPersistentArchivist } from '../lib/index.ts'\n\nconst mutex = new Mutex()\nlet singleton: ArchivistInstance | undefined\n\nexport async function initLocalChainFinalizedArchivist({ config }: CreatableProviderContext): Promise<ArchivistInstance> {\n return await mutex.runExclusive(async () => {\n if (singleton) return singleton\n const { root } = config.storage\n singleton = await getLocalPersistentArchivist('local-finalized-chain', 'chain', 'finalized', root)\n return singleton\n })\n}\n","import { rm } from 'node:fs/promises'\nimport Path from 'node:path'\n\nimport { LmdbArchivist, LmdbArchivistConfigSchema } from '@xyo-network/archivist-lmdb'\nimport { getStoreDirectory, type StoreKind } from '@xyo-network/chain-protocol-driver-lmdb'\nimport type { ArchivistInstance } from '@xyo-network/sdk-js'\n\nconst DEFAULT_STORAGE_ROOT = Path.join(process.cwd(), '.store')\n\n/**\n * Returns a local persistent archivist\n * @param name The name of the archivist\n * @param dbName The name of the database\n * @param storeName The name of the store\n * @param storageRoot The root directory for storage (default is '.store' in the current working directory)\n * @param kind The kind of the archivist\n * @returns an archivist instance\n */\nexport const getLocalPersistentArchivist = (\n name: string,\n dbName: string,\n storeName: string,\n storageRoot?: string,\n kind: StoreKind = 'lmdb',\n): Promise<ArchivistInstance> => {\n switch (kind) {\n case 'lmdb': {\n const root = storageRoot ?? DEFAULT_STORAGE_ROOT\n return LmdbArchivist.create({\n account: 'random',\n config: {\n name,\n clearStoreOnStart: false,\n dbName,\n location: getStoreDirectory(dbName, root, 'lmdb'),\n schema: LmdbArchivistConfigSchema,\n storeName,\n },\n })\n }\n }\n}\n\n/**\n * Deletes a local persistent archivist\n * @param dbName The name of the database\n * @param storageRoot The root directory for storage (default is '.store' in the current working directory)\n * @param kind The kind of the archivist\n * @returns A promise that resolves when the archivist is deleted\n */\nexport const deleteLocalPersistentArchivist = async (dbName: string, storageRoot?: string, kind: StoreKind = 'lmdb'): Promise<void> => {\n await Promise.resolve()\n console.warn(`Deleting local persistent archivist for ${dbName} of kind ${kind}.`)\n let location = ''\n switch (kind) {\n case 'lmdb': {\n const root = storageRoot ?? DEFAULT_STORAGE_ROOT\n location = getStoreDirectory(dbName, root, 'lmdb')\n break\n }\n }\n await rm(location, { recursive: true, force: true })\n}\n","import { timeBudget } from '@xylabs/sdk-js'\nimport { startupSpanAsync } from '@xyo-network/chain-utils'\nimport type { ArchivistInstance } from '@xyo-network/sdk-js'\nimport type { BaseConfigContext } from '@xyo-network/xl1-sdk'\nimport { Mutex } from 'async-mutex'\n\nimport { initLocalPendingBlocksArchivist } from './local.ts'\n\nconst mutex = new Mutex()\nlet singleton: ArchivistInstance | undefined\n\nexport async function initPendingBlocksArchivist(context: BaseConfigContext) {\n return await mutex.runExclusive(async () => {\n if (singleton) return singleton\n return await timeBudget('initPendingBlocksArchivist', context.logger, async () => {\n const local = await startupSpanAsync('PendingBlocksArchivist:initLocal', () => initLocalPendingBlocksArchivist(context))\n singleton = local\n return singleton\n }, 2000, true)\n })\n}\n","import type { ArchivistInstance } from '@xyo-network/sdk-js'\nimport type { BaseConfigContext } from '@xyo-network/xl1-sdk'\nimport { Mutex } from 'async-mutex'\n\nimport { getLocalPersistentArchivist } from '../lib/index.ts'\n\nconst mutex = new Mutex()\nlet singleton: ArchivistInstance | undefined\n\nexport async function initLocalPendingBlocksArchivist({ config }: BaseConfigContext): Promise<ArchivistInstance> {\n return await mutex.runExclusive(async () => {\n if (singleton) return singleton\n const { root } = config.storage\n singleton = await getLocalPersistentArchivist('local-pending-blocks', 'chain', 'pending_block_bundles', root)\n return singleton\n })\n}\n","import { timeBudget } from '@xylabs/sdk-js'\nimport { startupSpanAsync } from '@xyo-network/chain-utils'\nimport type { ArchivistInstance } from '@xyo-network/sdk-js'\nimport type { BaseContext } from '@xyo-network/xl1-sdk'\nimport { Mutex } from 'async-mutex'\n\nimport { initLocalRejectedTransactionsArchivist } from './local.ts'\n\nconst mutex = new Mutex()\nlet singleton: ArchivistInstance | undefined\n\nexport async function initRejectedTransactionsArchivist({ logger }: BaseContext) {\n return await mutex.runExclusive(async () => {\n if (singleton) return singleton\n return await timeBudget('initRejectedTransactionsArchivist', logger, async () => {\n const local = await startupSpanAsync('RejectedTransactionsArchivist:initLocal', () => initLocalRejectedTransactionsArchivist())\n singleton = local\n return singleton\n }, 2000, true)\n })\n}\n","import type { ArchivistInstance } from '@xyo-network/sdk-js'\nimport { MemoryArchivist, MemoryArchivistConfigSchema } from '@xyo-network/sdk-js'\nimport { Mutex } from 'async-mutex'\n\nconst mutex = new Mutex()\nlet singleton: ArchivistInstance | undefined\n\nexport async function initLocalRejectedTransactionsArchivist(): Promise<ArchivistInstance> {\n return await mutex.runExclusive(async () => {\n if (singleton) return singleton\n singleton = await MemoryArchivist.create({\n account: 'random',\n config: {\n schema: MemoryArchivistConfigSchema, max: 1000, name: 'localRejectedTransactions',\n },\n })\n return singleton\n })\n}\n","import { assertEx, timeBudget } from '@xylabs/sdk-js'\nimport { startupSpanAsync } from '@xyo-network/chain-utils'\nimport type { ArchivistInstance } from '@xyo-network/sdk-js'\nimport type { BaseConfigContext } from '@xyo-network/xl1-sdk'\nimport { Mutex } from 'async-mutex'\n\nimport { initLocalStakeIntentStateArchivist } from './local.ts'\n\nconst mutex = new Mutex()\nlet singleton: ArchivistInstance | undefined\n\nexport async function initStakeIntentStateArchivist(context: BaseConfigContext): Promise<ArchivistInstance> {\n return await mutex.runExclusive(async () => {\n if (singleton) return singleton\n return await timeBudget('initStakeIntentStateArchivist', context.logger, async () => {\n const local = await startupSpanAsync('StakeIntentStateArchivist:initLocal', () => initLocalStakeIntentStateArchivist(context))\n singleton = local\n return assertEx(singleton, () => 'StakeIntentStateArchivist is undefined')\n }, 2000, true)\n })\n}\n","import { assertEx } from '@xylabs/sdk-js'\nimport type { ArchivistInstance } from '@xyo-network/sdk-js'\nimport type { BaseConfigContext } from '@xyo-network/xl1-sdk'\nimport { Mutex } from 'async-mutex'\n\nimport { getLocalPersistentArchivist } from '../lib/index.ts'\n\nconst mutex = new Mutex()\nlet singleton: ArchivistInstance | undefined\n\nexport async function initLocalStakeIntentStateArchivist({ config }: BaseConfigContext): Promise<ArchivistInstance> {\n return await mutex.runExclusive(async () => {\n if (singleton) return singleton\n const { root } = config.storage\n singleton = await getLocalPersistentArchivist('local-stake-intent-state', 'stakeIntent', 'state', root)\n return assertEx(singleton, () => new Error('Failed to initialize stake intent state archivist'))\n })\n}\n"],"mappings":"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","names":["timeBudget","startupSpanAsync","Mutex","Mutex","rm","Path","LmdbArchivist","LmdbArchivistConfigSchema","getStoreDirectory","DEFAULT_STORAGE_ROOT","Path","join","process","cwd","getLocalPersistentArchivist","name","dbName","storeName","storageRoot","kind","root","LmdbArchivist","create","account","config","clearStoreOnStart","location","getStoreDirectory","schema","LmdbArchivistConfigSchema","mutex","Mutex","singleton","initLocalChainFinalizedArchivist","config","runExclusive","root","storage","getLocalPersistentArchivist","mutex","Mutex","singleton","initChainFinalizedArchivist","context","runExclusive","timeBudget","logger","local","startupSpanAsync","initLocalChainFinalizedArchivist","timeBudget","startupSpanAsync","Mutex","Mutex","mutex","Mutex","singleton","initLocalPendingBlocksArchivist","config","runExclusive","root","storage","getLocalPersistentArchivist","mutex","Mutex","singleton","initPendingBlocksArchivist","context","runExclusive","timeBudget","logger","local","startupSpanAsync","initLocalPendingBlocksArchivist","timeBudget","startupSpanAsync","Mutex","MemoryArchivist","MemoryArchivistConfigSchema","Mutex","mutex","Mutex","singleton","initLocalRejectedTransactionsArchivist","runExclusive","MemoryArchivist","create","account","config","schema","MemoryArchivistConfigSchema","max","name","mutex","Mutex","singleton","initRejectedTransactionsArchivist","logger","runExclusive","timeBudget","local","startupSpanAsync","initLocalRejectedTransactionsArchivist","assertEx","timeBudget","startupSpanAsync","Mutex","assertEx","Mutex","mutex","Mutex","singleton","initLocalStakeIntentStateArchivist","config","runExclusive","root","storage","getLocalPersistentArchivist","assertEx","Error","mutex","Mutex","singleton","initStakeIntentStateArchivist","context","runExclusive","timeBudget","logger","local","startupSpanAsync","initLocalStakeIntentStateArchivist","assertEx"]}
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../src/ChainFinalized/archivist.ts", "../../src/ChainFinalized/local.ts", "../../src/lib/localPersistentArchivist.ts", "../../src/PendingBlocks/archivist.ts", "../../src/PendingBlocks/local.ts", "../../src/RejectedTransactions/archivist.ts", "../../src/RejectedTransactions/local.ts", "../../src/StakeIntentState/archivist.ts", "../../src/StakeIntentState/local.ts"],
|
|
4
|
+
"sourcesContent": ["import { timeBudget } from '@xylabs/sdk-js'\nimport { startupSpanAsync } from '@xyo-network/chain-utils'\nimport type { ArchivistInstance } from '@xyo-network/sdk-js'\nimport type { CreatableProviderContext } from '@xyo-network/xl1-sdk'\nimport { Mutex } from 'async-mutex'\n\nimport { initLocalChainFinalizedArchivist } from './local.ts'\n\nconst mutex = new Mutex()\nlet singleton: ArchivistInstance | undefined\n\nexport async function initChainFinalizedArchivist(context: CreatableProviderContext) {\n return await mutex.runExclusive(async () => {\n if (singleton) return singleton\n return await timeBudget('initChainFinalizedArchivist', context.logger, async () => {\n const local = await startupSpanAsync('ChainFinalizedArchivist:initLocal', () => initLocalChainFinalizedArchivist(context))\n singleton = local\n return singleton\n }, 2000, true)\n })\n}\n", "import type { ArchivistInstance } from '@xyo-network/sdk-js'\nimport type { CreatableProviderContext } from '@xyo-network/xl1-sdk'\nimport { Mutex } from 'async-mutex'\n\nimport { getLocalPersistentArchivist } from '../lib/index.ts'\n\nconst mutex = new Mutex()\nlet singleton: ArchivistInstance | undefined\n\nexport async function initLocalChainFinalizedArchivist({ config }: CreatableProviderContext): Promise<ArchivistInstance> {\n return await mutex.runExclusive(async () => {\n if (singleton) return singleton\n const { root } = config.storage\n singleton = await getLocalPersistentArchivist('local-finalized-chain', 'chain', 'finalized', root)\n return singleton\n })\n}\n", "import { rm } from 'node:fs/promises'\nimport Path from 'node:path'\n\nimport { LmdbArchivist, LmdbArchivistConfigSchema } from '@xyo-network/archivist-lmdb'\nimport { getStoreDirectory, type StoreKind } from '@xyo-network/chain-protocol-driver-lmdb'\nimport type { ArchivistInstance } from '@xyo-network/sdk-js'\n\nconst DEFAULT_STORAGE_ROOT = Path.join(process.cwd(), '.store')\n\n/**\n * Returns a local persistent archivist\n * @param name The name of the archivist\n * @param dbName The name of the database\n * @param storeName The name of the store\n * @param storageRoot The root directory for storage (default is '.store' in the current working directory)\n * @param kind The kind of the archivist\n * @returns an archivist instance\n */\nexport const getLocalPersistentArchivist = (\n name: string,\n dbName: string,\n storeName: string,\n storageRoot?: string,\n kind: StoreKind = 'lmdb',\n): Promise<ArchivistInstance> => {\n switch (kind) {\n case 'lmdb': {\n const root = storageRoot ?? DEFAULT_STORAGE_ROOT\n return LmdbArchivist.create({\n account: 'random',\n config: {\n name,\n clearStoreOnStart: false,\n dbName,\n location: getStoreDirectory(dbName, root, 'lmdb'),\n schema: LmdbArchivistConfigSchema,\n storeName,\n },\n })\n }\n }\n}\n\n/**\n * Deletes a local persistent archivist\n * @param dbName The name of the database\n * @param storageRoot The root directory for storage (default is '.store' in the current working directory)\n * @param kind The kind of the archivist\n * @returns A promise that resolves when the archivist is deleted\n */\nexport const deleteLocalPersistentArchivist = async (dbName: string, storageRoot?: string, kind: StoreKind = 'lmdb'): Promise<void> => {\n await Promise.resolve()\n console.warn(`Deleting local persistent archivist for ${dbName} of kind ${kind}.`)\n let location = ''\n switch (kind) {\n case 'lmdb': {\n const root = storageRoot ?? DEFAULT_STORAGE_ROOT\n location = getStoreDirectory(dbName, root, 'lmdb')\n break\n }\n }\n await rm(location, { recursive: true, force: true })\n}\n", "import { timeBudget } from '@xylabs/sdk-js'\nimport { startupSpanAsync } from '@xyo-network/chain-utils'\nimport type { ArchivistInstance } from '@xyo-network/sdk-js'\nimport type { BaseConfigContext } from '@xyo-network/xl1-sdk'\nimport { Mutex } from 'async-mutex'\n\nimport { initLocalPendingBlocksArchivist } from './local.ts'\n\nconst mutex = new Mutex()\nlet singleton: ArchivistInstance | undefined\n\nexport async function initPendingBlocksArchivist(context: BaseConfigContext) {\n return await mutex.runExclusive(async () => {\n if (singleton) return singleton\n return await timeBudget('initPendingBlocksArchivist', context.logger, async () => {\n const local = await startupSpanAsync('PendingBlocksArchivist:initLocal', () => initLocalPendingBlocksArchivist(context))\n singleton = local\n return singleton\n }, 2000, true)\n })\n}\n", "import type { ArchivistInstance } from '@xyo-network/sdk-js'\nimport type { BaseConfigContext } from '@xyo-network/xl1-sdk'\nimport { Mutex } from 'async-mutex'\n\nimport { getLocalPersistentArchivist } from '../lib/index.ts'\n\nconst mutex = new Mutex()\nlet singleton: ArchivistInstance | undefined\n\nexport async function initLocalPendingBlocksArchivist({ config }: BaseConfigContext): Promise<ArchivistInstance> {\n return await mutex.runExclusive(async () => {\n if (singleton) return singleton\n const { root } = config.storage\n singleton = await getLocalPersistentArchivist('local-pending-blocks', 'chain', 'pending_block_bundles', root)\n return singleton\n })\n}\n", "import { timeBudget } from '@xylabs/sdk-js'\nimport { startupSpanAsync } from '@xyo-network/chain-utils'\nimport type { ArchivistInstance } from '@xyo-network/sdk-js'\nimport type { BaseContext } from '@xyo-network/xl1-sdk'\nimport { Mutex } from 'async-mutex'\n\nimport { initLocalRejectedTransactionsArchivist } from './local.ts'\n\nconst mutex = new Mutex()\nlet singleton: ArchivistInstance | undefined\n\nexport async function initRejectedTransactionsArchivist({ logger }: BaseContext) {\n return await mutex.runExclusive(async () => {\n if (singleton) return singleton\n return await timeBudget('initRejectedTransactionsArchivist', logger, async () => {\n const local = await startupSpanAsync('RejectedTransactionsArchivist:initLocal', () => initLocalRejectedTransactionsArchivist())\n singleton = local\n return singleton\n }, 2000, true)\n })\n}\n", "import type { ArchivistInstance } from '@xyo-network/sdk-js'\nimport { MemoryArchivist, MemoryArchivistConfigSchema } from '@xyo-network/sdk-js'\nimport { Mutex } from 'async-mutex'\n\nconst mutex = new Mutex()\nlet singleton: ArchivistInstance | undefined\n\nexport async function initLocalRejectedTransactionsArchivist(): Promise<ArchivistInstance> {\n return await mutex.runExclusive(async () => {\n if (singleton) return singleton\n singleton = await MemoryArchivist.create({\n account: 'random',\n config: {\n schema: MemoryArchivistConfigSchema, max: 1000, name: 'localRejectedTransactions',\n },\n })\n return singleton\n })\n}\n", "import { assertEx, timeBudget } from '@xylabs/sdk-js'\nimport { startupSpanAsync } from '@xyo-network/chain-utils'\nimport type { ArchivistInstance } from '@xyo-network/sdk-js'\nimport type { BaseConfigContext } from '@xyo-network/xl1-sdk'\nimport { Mutex } from 'async-mutex'\n\nimport { initLocalStakeIntentStateArchivist } from './local.ts'\n\nconst mutex = new Mutex()\nlet singleton: ArchivistInstance | undefined\n\nexport async function initStakeIntentStateArchivist(context: BaseConfigContext): Promise<ArchivistInstance> {\n return await mutex.runExclusive(async () => {\n if (singleton) return singleton\n return await timeBudget('initStakeIntentStateArchivist', context.logger, async () => {\n const local = await startupSpanAsync('StakeIntentStateArchivist:initLocal', () => initLocalStakeIntentStateArchivist(context))\n singleton = local\n return assertEx(singleton, () => 'StakeIntentStateArchivist is undefined')\n }, 2000, true)\n })\n}\n", "import { assertEx } from '@xylabs/sdk-js'\nimport type { ArchivistInstance } from '@xyo-network/sdk-js'\nimport type { BaseConfigContext } from '@xyo-network/xl1-sdk'\nimport { Mutex } from 'async-mutex'\n\nimport { getLocalPersistentArchivist } from '../lib/index.ts'\n\nconst mutex = new Mutex()\nlet singleton: ArchivistInstance | undefined\n\nexport async function initLocalStakeIntentStateArchivist({ config }: BaseConfigContext): Promise<ArchivistInstance> {\n return await mutex.runExclusive(async () => {\n if (singleton) return singleton\n const { root } = config.storage\n singleton = await getLocalPersistentArchivist('local-stake-intent-state', 'stakeIntent', 'state', root)\n return assertEx(singleton, () => new Error('Failed to initialize stake intent state archivist'))\n })\n}\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["Mutex", "mutex", "Mutex", "singleton", "timeBudget", "startupSpanAsync", "Mutex", "Mutex", "mutex", "Mutex", "singleton", "mutex", "Mutex", "singleton", "timeBudget", "startupSpanAsync", "timeBudget", "startupSpanAsync", "Mutex", "Mutex", "mutex", "singleton", "mutex", "Mutex", "singleton", "timeBudget", "startupSpanAsync", "assertEx", "timeBudget", "startupSpanAsync", "Mutex", "Mutex", "mutex", "Mutex", "singleton", "mutex", "Mutex", "singleton", "timeBudget", "startupSpanAsync", "assertEx"]
|
|
7
|
+
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@xyo-network/chain-orchestration-storage",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.23.2",
|
|
4
4
|
"description": "XYO Layer One SDK Orchestration Storage",
|
|
5
5
|
"homepage": "https://xylabs.com",
|
|
6
6
|
"bugs": {
|
|
@@ -34,25 +34,24 @@
|
|
|
34
34
|
"README.md"
|
|
35
35
|
],
|
|
36
36
|
"dependencies": {
|
|
37
|
-
"@xyo-network/chain-
|
|
38
|
-
"@xyo-network/chain-
|
|
37
|
+
"@xyo-network/chain-utils": "~1.23.2",
|
|
38
|
+
"@xyo-network/chain-protocol-driver-lmdb": "~1.23.2"
|
|
39
39
|
},
|
|
40
40
|
"devDependencies": {
|
|
41
41
|
"@bitauth/libauth": "~3.0.0",
|
|
42
|
-
"@metamask/json-rpc-engine": "^10.
|
|
42
|
+
"@metamask/json-rpc-engine": "^10.5.0",
|
|
43
43
|
"@metamask/providers": "^22.1.1",
|
|
44
44
|
"@metamask/utils": "~11.11.0",
|
|
45
45
|
"@opentelemetry/api": "^1.9.1",
|
|
46
46
|
"@opentelemetry/sdk-trace-base": "^2.7.1",
|
|
47
47
|
"@scure/base": "~2.2.0",
|
|
48
48
|
"@scure/bip39": "~2.2.0",
|
|
49
|
-
"@types/node": ">=18",
|
|
50
49
|
"@xylabs/fetch": "~5.1.2",
|
|
51
50
|
"@xylabs/geo": "^5.1.2",
|
|
52
51
|
"@xylabs/sdk-js": "^5.1.2",
|
|
53
52
|
"@xylabs/threads": "~5.1.2",
|
|
54
|
-
"@xylabs/toolchain": "~
|
|
55
|
-
"@xylabs/tsconfig": "~
|
|
53
|
+
"@xylabs/toolchain": "~8.0.4",
|
|
54
|
+
"@xylabs/tsconfig": "~8.0.4",
|
|
56
55
|
"@xyo-network/account": "~5.6.2",
|
|
57
56
|
"@xyo-network/account-model": "~5.6.3",
|
|
58
57
|
"@xyo-network/api": "~5.6.2",
|
|
@@ -73,11 +72,9 @@
|
|
|
73
72
|
"@xyo-network/sdk-protocol-js": "~5.6.3",
|
|
74
73
|
"@xyo-network/wallet": "~5.6.2",
|
|
75
74
|
"@xyo-network/wallet-model": "^5.6.3",
|
|
76
|
-
"@xyo-network/xl1-sdk": "^1.
|
|
77
|
-
"acorn": "^6.0.0 || ^7.0.0 || ^8.0.0",
|
|
75
|
+
"@xyo-network/xl1-sdk": "^1.30.2",
|
|
78
76
|
"ajv": "^8.20.0",
|
|
79
77
|
"async-mutex": "^0.5.0",
|
|
80
|
-
"axios": "^1",
|
|
81
78
|
"bn.js": "^5.2.3",
|
|
82
79
|
"buffer": "^6.0.3",
|
|
83
80
|
"chalk": "^5.6.2",
|
|
@@ -85,7 +82,6 @@
|
|
|
85
82
|
"debug": "~4.4.3",
|
|
86
83
|
"eslint": "^10.3.0",
|
|
87
84
|
"ethers": "^6.16.0",
|
|
88
|
-
"firebase": "^12",
|
|
89
85
|
"hash-wasm": "~4.12.0",
|
|
90
86
|
"idb": "^8.0.3",
|
|
91
87
|
"lmdb": "^3.5.4",
|
|
@@ -93,10 +89,9 @@
|
|
|
93
89
|
"mapbox-gl": "^3.23.1",
|
|
94
90
|
"observable-fns": "~0.6.1",
|
|
95
91
|
"pako": "^2.1.0",
|
|
96
|
-
"rollup": "^3.29.4 || ^4",
|
|
97
92
|
"shallowequal": "~1.1.0",
|
|
98
93
|
"store2": "~2.14.4",
|
|
99
|
-
"typescript": "~
|
|
94
|
+
"typescript": "~6.0.3",
|
|
100
95
|
"uuid": "~14.0.0",
|
|
101
96
|
"wasm-feature-detect": "~1.8.0",
|
|
102
97
|
"webextension-polyfill": "^0.12.0",
|
|
@@ -138,14 +133,12 @@
|
|
|
138
133
|
"@xyo-network/xl1-sdk": "^1.28",
|
|
139
134
|
"ajv": "^8.20",
|
|
140
135
|
"async-mutex": "^0.5",
|
|
141
|
-
"axios": "^1",
|
|
142
136
|
"bn.js": "^5.2",
|
|
143
137
|
"buffer": "^6.0",
|
|
144
138
|
"chalk": "^5.6",
|
|
145
139
|
"cosmiconfig": "^9.0",
|
|
146
140
|
"debug": "~4.4",
|
|
147
141
|
"ethers": "^6.16",
|
|
148
|
-
"firebase": "^12",
|
|
149
142
|
"hash-wasm": "~4.12",
|
|
150
143
|
"idb": "^8.0",
|
|
151
144
|
"lmdb": "^3.5",
|