@the_library/public 1.0.0 → 2.0.1

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 (113) hide show
  1. package/README.md +201 -28
  2. package/assets/branding/pond-enterprise-logo.svg +1 -1
  3. package/dist/Book-CYyj_y_4.d.ts +621 -0
  4. package/dist/bookSearchService-YQskauJS.d.ts +300 -0
  5. package/dist/branding/index.js +1 -66
  6. package/dist/branding/index.js.map +1 -1
  7. package/dist/chunk-3XUKOVEF.js +2 -0
  8. package/dist/chunk-3XUKOVEF.js.map +1 -0
  9. package/dist/chunk-46FQHZNM.js +2 -0
  10. package/dist/chunk-46FQHZNM.js.map +1 -0
  11. package/dist/chunk-7G3BMGV2.js +2 -0
  12. package/dist/chunk-7G3BMGV2.js.map +1 -0
  13. package/dist/chunk-D4DXGA2W.js +2 -0
  14. package/dist/chunk-D4DXGA2W.js.map +1 -0
  15. package/dist/chunk-EMA2QJTW.js +2 -0
  16. package/dist/chunk-EMA2QJTW.js.map +1 -0
  17. package/dist/chunk-FN52YV7L.js +2 -0
  18. package/dist/chunk-FN52YV7L.js.map +1 -0
  19. package/dist/chunk-GWQNULP4.js +2 -0
  20. package/dist/chunk-GWQNULP4.js.map +1 -0
  21. package/dist/chunk-OELHBR4F.js +2 -0
  22. package/dist/chunk-OELHBR4F.js.map +1 -0
  23. package/dist/chunk-PV3X54EU.js +2 -0
  24. package/dist/chunk-PV3X54EU.js.map +1 -0
  25. package/dist/chunk-SD3INWZF.js +2 -0
  26. package/dist/chunk-SD3INWZF.js.map +1 -0
  27. package/dist/downloader/dl2-sw.js +1 -198
  28. package/dist/downloader/dl2-sw.js.map +1 -1
  29. package/dist/downloader/file-worker-v2.js +1 -257
  30. package/dist/downloader/file-worker-v2.js.map +1 -1
  31. package/dist/downloader/index.d.ts +30 -2
  32. package/dist/downloader/index.js +1 -537
  33. package/dist/downloader/index.js.map +1 -1
  34. package/dist/downloader/mu-worker-v2.js +1 -196
  35. package/dist/downloader/mu-worker-v2.js.map +1 -1
  36. package/dist/downloader/react.d.ts +1 -1
  37. package/dist/downloader/react.js +1 -31
  38. package/dist/downloader/react.js.map +1 -1
  39. package/dist/downloader/solid.d.ts +1 -1
  40. package/dist/downloader/solid.js +1 -18
  41. package/dist/downloader/solid.js.map +1 -1
  42. package/dist/downloader/sw.js +1 -118
  43. package/dist/downloader/sw.js.map +1 -1
  44. package/dist/downloader/vue.d.ts +1 -1
  45. package/dist/downloader/vue.js +1 -18
  46. package/dist/downloader/vue.js.map +1 -1
  47. package/dist/enriched-index-T0sDG7JR.d.ts +209 -0
  48. package/dist/global/public.global.js +68 -0
  49. package/dist/global/public.manifest.json +484 -0
  50. package/dist/level-state-DXqglpAX.d.ts +27 -0
  51. package/dist/models/astro.d.ts +4 -3
  52. package/dist/models/astro.js +1 -43
  53. package/dist/models/astro.js.map +1 -1
  54. package/dist/models/index.d.ts +449 -23
  55. package/dist/models/index.js +1 -339
  56. package/dist/models/index.js.map +1 -1
  57. package/dist/models/models.d.ts +195 -441
  58. package/dist/models/models.js +1 -45
  59. package/dist/models/patch-worker.js +1 -542
  60. package/dist/models/patch-worker.js.map +1 -1
  61. package/dist/models/react.d.ts +6 -5
  62. package/dist/models/react.js +1 -72
  63. package/dist/models/react.js.map +1 -1
  64. package/dist/models/solid.d.ts +16 -6
  65. package/dist/models/solid.js +1 -94
  66. package/dist/models/solid.js.map +1 -1
  67. package/dist/models/vue.d.ts +89 -7
  68. package/dist/models/vue.js +1 -97
  69. package/dist/models/vue.js.map +1 -1
  70. package/dist/orm-MJTHCG9E.d.ts +1003 -0
  71. package/dist/{session-vqOnyxga.d.ts → session-JudUKAV7.d.ts} +76 -74
  72. package/dist/{state-BTsp-E4v.d.ts → state-CkYavOSt.d.ts} +16 -0
  73. package/dist/{types-Dn0EFMO_.d.ts → types-B-IX3HBn.d.ts} +94 -21
  74. package/dist/{types-Xb8Ta9tZ.d.ts → types-Blyx2A7F.d.ts} +10 -36
  75. package/dist/web3/auth.d.ts +89 -0
  76. package/dist/web3/auth.js +13 -0
  77. package/dist/web3/auth.js.map +1 -0
  78. package/dist/web3/index.d.ts +1913 -126
  79. package/dist/web3/index.js +1 -1019
  80. package/dist/web3/index.js.map +1 -1
  81. package/dist/web3/network.d.ts +6 -0
  82. package/dist/web3/network.js +2 -0
  83. package/dist/web3/network.js.map +1 -0
  84. package/dist/web3/registry.d.ts +34 -9
  85. package/dist/web3/registry.js +1 -22
  86. package/dist/web3/vue.d.ts +31 -14
  87. package/dist/web3/vue.js +1 -390
  88. package/dist/web3/vue.js.map +1 -1
  89. package/package.json +36 -15
  90. package/dist/chunk-2HFOWE5R.js +0 -296
  91. package/dist/chunk-2HFOWE5R.js.map +0 -1
  92. package/dist/chunk-3L6LH2XK.js +0 -465
  93. package/dist/chunk-3L6LH2XK.js.map +0 -1
  94. package/dist/chunk-4CWVFPBN.js +0 -28
  95. package/dist/chunk-4CWVFPBN.js.map +0 -1
  96. package/dist/chunk-AGHPATVL.js +0 -65
  97. package/dist/chunk-AGHPATVL.js.map +0 -1
  98. package/dist/chunk-JDUYLUDJ.js +0 -4835
  99. package/dist/chunk-JDUYLUDJ.js.map +0 -1
  100. package/dist/chunk-OEZK7IX7.js +0 -77
  101. package/dist/chunk-OEZK7IX7.js.map +0 -1
  102. package/dist/chunk-PUYDAUCI.js +0 -2873
  103. package/dist/chunk-PUYDAUCI.js.map +0 -1
  104. package/dist/chunk-WHWMTS7D.js +0 -99
  105. package/dist/chunk-WHWMTS7D.js.map +0 -1
  106. package/dist/chunk-Y7RS6RTM.js +0 -342
  107. package/dist/chunk-Y7RS6RTM.js.map +0 -1
  108. package/dist/chunk-ZEZGI2TP.js +0 -197
  109. package/dist/chunk-ZEZGI2TP.js.map +0 -1
  110. package/dist/core-dao-core-logo-VDT2I5IW.svg +0 -33
  111. package/dist/level-state-J3pj64Tr.d.ts +0 -15
  112. package/dist/models/models_v2.global.js +0 -1
  113. package/dist/orm-BvkX0aBT.d.ts +0 -507
@@ -1,465 +0,0 @@
1
- // src/web3/registry/sidecar-sources.ts
2
- var DEFAULT_GATEWAY = "https://arweave.net";
3
- var txUrl = (gateway, txid) => txid ? `${gateway.replace(/\/+$/, "")}/${txid}` : void 0;
4
- function sidecarUrlsFromManifest(data, lang, gateway = DEFAULT_GATEWAY) {
5
- const out = [];
6
- for (const [objectType, byLang] of Object.entries(data.objects ?? {})) {
7
- const tiers = byLang[lang];
8
- if (!tiers) continue;
9
- out.push({
10
- objectType: Number(objectType),
11
- slimUrl: txUrl(gateway, tiers.slim?.[0]),
12
- extendedUrl: txUrl(gateway, tiers.extended?.[0]),
13
- provUrl: txUrl(gateway, tiers.prov?.[0])
14
- });
15
- }
16
- return out;
17
- }
18
-
19
- // src/web3/registry/loader.ts
20
- var CACHE_KEY_PREFIX = "dcode_registry_cache_v3_";
21
- var CACHE_DURATION_MS = 24 * 60 * 60 * 1e3;
22
- async function hashAbi(abi) {
23
- const bytes = new TextEncoder().encode(JSON.stringify(abi));
24
- const digest = await crypto.subtle.digest("SHA-256", bytes);
25
- return Array.from(new Uint8Array(digest)).map((b) => b.toString(16).padStart(2, "0")).join("");
26
- }
27
- var registryBaseUrl = "https://registry.worldbibliotech.com";
28
- function setRegistryBaseUrl(url) {
29
- registryBaseUrl = url.replace(/\/+$/, "");
30
- }
31
- function getRegistryBaseUrl() {
32
- return registryBaseUrl;
33
- }
34
- var LocalStorageCacheStorage = class {
35
- async get(key) {
36
- try {
37
- const data = localStorage.getItem(key);
38
- return data ? JSON.parse(data) : null;
39
- } catch {
40
- return null;
41
- }
42
- }
43
- async set(key, cache) {
44
- try {
45
- localStorage.setItem(key, JSON.stringify(cache));
46
- } catch (e) {
47
- console.warn("[RegistryLoader] Failed to save to localStorage:", e);
48
- }
49
- }
50
- };
51
- var NoopCacheStorage = class {
52
- async get() {
53
- return null;
54
- }
55
- async set() {
56
- }
57
- };
58
- var nodeFsPromisesSpecifier = ["node", "fs/promises"].join(":");
59
- var nodePathSpecifier = ["node", "path"].join(":");
60
- function getNodeProcess() {
61
- return globalThis[["proc", "ess"].join("")];
62
- }
63
- var NodeFileCacheStorage = class {
64
- constructor(cacheDir = `${getNodeProcess()?.cwd() ?? "."}/.dcode-registry-cache`) {
65
- this.cacheDir = cacheDir;
66
- }
67
- async filePath(key) {
68
- const { join } = await import(
69
- /* @vite-ignore */
70
- nodePathSpecifier
71
- );
72
- return join(this.cacheDir, `${key.replace(/[^a-zA-Z0-9_.-]/g, "_")}.json`);
73
- }
74
- async get(key) {
75
- try {
76
- const fs = await import(
77
- /* @vite-ignore */
78
- nodeFsPromisesSpecifier
79
- );
80
- const data = await fs.readFile(await this.filePath(key), "utf-8");
81
- return JSON.parse(data);
82
- } catch {
83
- return null;
84
- }
85
- }
86
- async set(key, cache) {
87
- try {
88
- const fs = await import(
89
- /* @vite-ignore */
90
- nodeFsPromisesSpecifier
91
- );
92
- const file = await this.filePath(key);
93
- const { dirname } = await import(
94
- /* @vite-ignore */
95
- nodePathSpecifier
96
- );
97
- await fs.mkdir(dirname(file), { recursive: true });
98
- await fs.writeFile(file, JSON.stringify(cache), "utf-8");
99
- } catch (e) {
100
- console.warn("[RegistryLoader] Failed to save Node file cache:", e);
101
- }
102
- }
103
- };
104
- function createNodeFileCacheStorage(cacheDir) {
105
- return new NodeFileCacheStorage(cacheDir);
106
- }
107
- function detectDefaultStorage() {
108
- if (typeof localStorage !== "undefined") return new LocalStorageCacheStorage();
109
- if (getNodeProcess()?.versions?.node) return new NodeFileCacheStorage();
110
- return new NoopCacheStorage();
111
- }
112
- var RegistryAddressLoader = class {
113
- constructor(storage) {
114
- this.memoryCache = /* @__PURE__ */ new Map();
115
- this.listeners = /* @__PURE__ */ new Set();
116
- this.loadingStatuses = /* @__PURE__ */ new Map();
117
- this.manifestPromises = /* @__PURE__ */ new Map();
118
- this.loadedManifests = /* @__PURE__ */ new Map();
119
- // Tracks the in-flight syncAbis() run kicked off by loadManifest() so
120
- // waitForAbis() (called from EvmClient.ready) can await the *same* run
121
- // instead of firing a redundant one or resolving before ABIs actually land.
122
- this.abiSyncPromises = /* @__PURE__ */ new Map();
123
- this.defered = {};
124
- this.storage = storage ?? detectDefaultStorage();
125
- }
126
- /** Swap the cache backend at runtime — e.g. a Node caller pointing NodeFileCacheStorage at a specific cache dir. */
127
- setStorage(storage) {
128
- this.storage = storage;
129
- }
130
- async fetchAbiFromRegistry(contractName) {
131
- const url = `${registryBaseUrl}/abis/evm/${contractName}.json`;
132
- try {
133
- const res = await fetch(url);
134
- if (res.ok) {
135
- const abi = await res.json();
136
- console.log(`[RegistryLoader] Fetched ABI: ${contractName}`);
137
- return abi;
138
- }
139
- console.error(`[RegistryLoader] ABI fetch failed for ${contractName}: ${res.status}`);
140
- } catch (e) {
141
- console.warn(`[RegistryLoader] Failed to fetch ABI for ${contractName}:`, e);
142
- }
143
- return null;
144
- }
145
- async syncAbis(chainId, environment, manifest) {
146
- const cacheKey = this.getCacheKey(chainId, environment);
147
- const cache = this.memoryCache.get(cacheKey);
148
- if (!cache) return;
149
- const chainIdStr = String(chainId);
150
- const network = manifest.networks.evm?.[chainIdStr];
151
- if (!network) return;
152
- let updated = false;
153
- await Promise.all(
154
- Object.entries(network.contracts).map(async ([name, entry]) => {
155
- if (!entry.abiHash) return;
156
- const normalizedName = name.toLowerCase();
157
- const cached = cache.entries[normalizedName];
158
- if (cached?.abiHash === entry.abiHash && cached?.abi) return;
159
- const abi = await this.fetchAbiFromRegistry(name);
160
- if (abi && cache.entries[normalizedName]) {
161
- cache.entries[normalizedName].abi = abi;
162
- cache.entries[normalizedName].abiHash = entry.abiHash;
163
- updated = true;
164
- }
165
- })
166
- );
167
- if (updated) {
168
- cache.timestamp = Date.now();
169
- await this.storage.set(cacheKey, cache);
170
- }
171
- }
172
- async performSync(chainId, registry, oldCache, resolve, environment = "production") {
173
- const cacheKey = this.getCacheKey(chainId, environment);
174
- const now = Date.now();
175
- try {
176
- const contractNames = await registry.getAllContractNames();
177
- console.log(`[RegistryLoader] performSync: ${contractNames.length} contracts for evm:${chainId}`);
178
- const status = {
179
- total: contractNames.length,
180
- loaded: 0,
181
- contracts: contractNames.map((name) => ({ name, status: "pending" }))
182
- };
183
- this.notify(chainId, status);
184
- const newEntries = {};
185
- const addresses = {};
186
- await Promise.all(
187
- contractNames.map(async (name) => {
188
- const contractStatus = status.contracts.find((c) => c.name === name);
189
- contractStatus.status = "loading";
190
- this.notify(chainId, { ...status });
191
- try {
192
- const [address, abiUrl] = await registry.getLatestContract(name);
193
- const envSuffix = environment === "staging" ? "_staging" : "_production";
194
- const baseName = name.endsWith(envSuffix) ? name.slice(0, -envSuffix.length) : name;
195
- const normalizedName = baseName.toLowerCase();
196
- const camelCaseName = baseName.charAt(0).toLowerCase() + baseName.slice(1);
197
- let abi = null;
198
- let abiHash = "";
199
- let source;
200
- if (oldCache?.entries[normalizedName]?.txId === abiUrl && oldCache.entries[normalizedName].abi) {
201
- abi = oldCache.entries[normalizedName].abi;
202
- abiHash = oldCache.entries[normalizedName].abiHash;
203
- source = "cache";
204
- } else {
205
- abi = await this.fetchAbiFromRegistry(baseName);
206
- abiHash = abi ? await hashAbi(abi) : "";
207
- source = "arweave";
208
- }
209
- newEntries[normalizedName] = { address, abi, txId: abiUrl, abiHash, originalName: baseName };
210
- addresses[camelCaseName] = address;
211
- contractStatus.status = "loaded";
212
- contractStatus.address = address;
213
- contractStatus.abiUrl = abiUrl;
214
- contractStatus.source = source;
215
- } catch (e) {
216
- console.warn(`[RegistryLoader] Failed to sync ${name} for evm:${chainId}:`, e);
217
- contractStatus.status = "error";
218
- } finally {
219
- status.loaded++;
220
- this.notify(chainId, { ...status });
221
- }
222
- })
223
- );
224
- const hasErrors = status.contracts.some((c) => c.status === "error");
225
- const newCache = {
226
- timestamp: hasErrors ? oldCache?.timestamp ?? 0 : now,
227
- entries: newEntries
228
- };
229
- this.memoryCache.set(cacheKey, newCache);
230
- await this.storage.set(cacheKey, newCache);
231
- resolve(true);
232
- return addresses;
233
- } catch (e) {
234
- console.error(`[RegistryLoader] performSync failed for evm:${chainId}:`, e);
235
- throw e;
236
- }
237
- }
238
- getCacheKey(chainId, environment = "production") {
239
- return `${CACHE_KEY_PREFIX}evm_${chainId}${environment === "staging" ? "_staging" : ""}`;
240
- }
241
- subscribe(listener) {
242
- this.listeners.add(listener);
243
- return () => this.listeners.delete(listener);
244
- }
245
- notify(chainId, status) {
246
- const key = `evm:${chainId}`;
247
- this.loadingStatuses.set(key, status);
248
- this.listeners.forEach((l) => l(chainId, status));
249
- }
250
- getLoadingStatus(chainId) {
251
- return this.loadingStatuses.get(`evm:${chainId}`);
252
- }
253
- /** @deprecated No-op. Kept for call-site compatibility. */
254
- seedDefaults(_snapshot, _environment = "production") {
255
- }
256
- manifestUrl(environment) {
257
- return `${registryBaseUrl}/${environment}/manifest.json`;
258
- }
259
- getLoadedManifest(environment) {
260
- return this.loadedManifests.get(environment) ?? null;
261
- }
262
- async loadManifest(environment = "production") {
263
- const existing = this.manifestPromises.get(environment);
264
- if (existing) return existing;
265
- const url = this.manifestUrl(environment);
266
- const promise = (async () => {
267
- console.log(`[RegistryLoader] Fetching manifest: ${url}`);
268
- let response;
269
- try {
270
- response = await fetch(url, { cache: "default" });
271
- } catch (e) {
272
- throw new Error(`Registry manifest network error (${url}): ${e?.message || e}`);
273
- }
274
- if (!response.ok) {
275
- throw new Error(`Registry manifest fetch failed (${response.status} ${response.statusText}) at ${url}`);
276
- }
277
- let manifest;
278
- try {
279
- manifest = await response.json();
280
- } catch (e) {
281
- throw new Error(`Registry manifest JSON parse failed at ${url}: ${e?.message || e}`);
282
- }
283
- if (!manifest?.networks?.evm) {
284
- throw new Error(`Registry manifest at ${url} missing networks.evm`);
285
- }
286
- this.loadedManifests.set(environment, manifest);
287
- await this.populateFromManifest(manifest, environment);
288
- console.log(`[RegistryLoader] Manifest loaded (${Object.keys(manifest.networks.evm).length} chains, generatedAt ${manifest.generatedAt})`);
289
- for (const chainId of Object.keys(manifest.networks.evm || {})) {
290
- const syncKey = this.getCacheKey(chainId, environment);
291
- const syncPromise = this.syncAbis(chainId, environment, manifest).catch(
292
- (e) => console.warn(`[RegistryLoader] ABI sync failed for ${chainId}:`, e)
293
- );
294
- this.abiSyncPromises.set(syncKey, syncPromise);
295
- syncPromise.finally(() => {
296
- if (this.abiSyncPromises.get(syncKey) === syncPromise) this.abiSyncPromises.delete(syncKey);
297
- });
298
- }
299
- return manifest;
300
- })();
301
- this.manifestPromises.set(environment, promise);
302
- promise.catch(() => this.manifestPromises.delete(environment));
303
- return promise;
304
- }
305
- async populateFromManifest(manifest, environment) {
306
- const evm = manifest.networks.evm || {};
307
- const now = Date.now();
308
- for (const [chainId, network] of Object.entries(evm)) {
309
- const cacheKey = this.getCacheKey(chainId, environment);
310
- const entries = {};
311
- const contracts = [];
312
- const existingCache = await this.storage.get(cacheKey) ?? this.memoryCache.get(cacheKey);
313
- for (const [name, entry] of Object.entries(network.contracts || {})) {
314
- const normalizedName = name.toLowerCase();
315
- const existing = existingCache?.entries[normalizedName];
316
- const abiStillValid = entry.abiHash && existing?.abiHash === entry.abiHash && existing?.abi;
317
- entries[normalizedName] = {
318
- address: entry.address || "",
319
- abi: abiStillValid ? existing.abi : null,
320
- txId: existing?.txId || "",
321
- abiHash: entry.abiHash || existing?.abiHash || "",
322
- originalName: name
323
- };
324
- contracts.push({
325
- name,
326
- status: "loaded",
327
- address: entry.address,
328
- source: "manifest"
329
- });
330
- }
331
- const cache = { timestamp: now, entries };
332
- this.memoryCache.set(cacheKey, cache);
333
- this.notify(chainId, {
334
- total: contracts.length,
335
- loaded: contracts.length,
336
- contracts
337
- });
338
- }
339
- }
340
- addressesFromCache(cache) {
341
- const addresses = {};
342
- for (const entry of Object.values(cache.entries)) {
343
- if (!entry.address) continue;
344
- const camelCaseName = entry.originalName.charAt(0).toLowerCase() + entry.originalName.slice(1);
345
- addresses[camelCaseName] = entry.address;
346
- }
347
- return addresses;
348
- }
349
- async loadAllKeys(chainId, environment = "production") {
350
- try {
351
- await this.loadManifest(environment);
352
- } catch (e) {
353
- }
354
- const cacheKey = this.getCacheKey(chainId, environment);
355
- let cache = this.memoryCache.get(cacheKey);
356
- if (!cache) {
357
- cache = await this.storage.get(cacheKey) ?? void 0;
358
- if (cache) this.memoryCache.set(cacheKey, cache);
359
- }
360
- if (!cache) {
361
- throw new Error(`No registry data found for evm:${chainId} (env: ${environment})`);
362
- }
363
- return this.addressesFromCache(cache);
364
- }
365
- // Manifest (off-chain, cheap) is the primary source — it's what's actually
366
- // exercised day to day. If it fails or comes back empty (e.g.
367
- // registry.worldbibliotech.com is down), fall back to a live on-chain sync
368
- // via `registry` (EvmClient's bootstrap AddressRegistryReadAPI, §4.2a — the
369
- // only thing that can resolve contract addresses without the manifest).
370
- //
371
- // `staleWhileRevalidate` controls how the on-chain fallback is awaited:
372
- // true returns whatever's already cached (possibly stale/empty) immediately
373
- // while the sync keeps running in the background and updates the cache for
374
- // the next call; false blocks until that sync completes.
375
- async Initialize(chainId, registry, _registryAddress, staleWhileRevalidate = false, environment = "production") {
376
- try {
377
- await this.loadManifest(environment);
378
- const manifestAddresses = await this.loadAllKeys(chainId, environment);
379
- if (Object.keys(manifestAddresses).length > 0) return manifestAddresses;
380
- } catch (e) {
381
- console.warn(`[RegistryLoader] Manifest load failed for evm:${chainId}, falling back to on-chain sync:`, e);
382
- }
383
- if (!registry) {
384
- throw new Error(`[RegistryLoader] No manifest data for evm:${chainId} and no on-chain registry API to fall back to`);
385
- }
386
- const promiseKey = `${chainId}-${environment}`;
387
- const cacheKey = this.getCacheKey(chainId, environment);
388
- const oldCache = this.memoryCache.get(cacheKey) ?? await this.storage.get(cacheKey);
389
- const staleAddresses = oldCache ? this.addressesFromCache(oldCache) : {};
390
- if (!this.defered[promiseKey]) {
391
- let resolveDefered;
392
- this.defered[promiseKey] = new Promise((res) => {
393
- resolveDefered = res;
394
- });
395
- this.performSync(chainId, registry, oldCache, resolveDefered, environment).catch(() => resolveDefered(true)).finally(() => {
396
- delete this.defered[promiseKey];
397
- });
398
- }
399
- if (staleWhileRevalidate) {
400
- return staleAddresses;
401
- }
402
- await this.defered[promiseKey];
403
- const cache = this.memoryCache.get(cacheKey);
404
- return cache ? this.addressesFromCache(cache) : staleAddresses;
405
- }
406
- getAddress(chainId, name, environment = "production") {
407
- const cacheKey = this.getCacheKey(chainId, environment);
408
- const cache = this.memoryCache.get(cacheKey);
409
- const addr = cache?.entries[name.toLowerCase()]?.address;
410
- return addr || void 0;
411
- }
412
- getAbi(chainId, name, environment = "production") {
413
- const cacheKey = this.getCacheKey(chainId, environment);
414
- const cache = this.memoryCache.get(cacheKey);
415
- return cache?.entries[name.toLowerCase()]?.abi;
416
- }
417
- /** @deprecated Retained for fallback compat. */
418
- getData(chainId, key, environment = "production") {
419
- return void 0;
420
- }
421
- sidecarUrlsForManifest(environment = "production", lang = "eng", gateway = "https://arweave.net") {
422
- const manifest = this.getLoadedManifest(environment);
423
- if (!manifest?.corpus) return [];
424
- return sidecarUrlsFromManifest(manifest.corpus, lang, gateway);
425
- }
426
- getProvenance(environment = "production") {
427
- return this.getLoadedManifest(environment)?.provenance;
428
- }
429
- getCorpus(environment = "production") {
430
- return this.getLoadedManifest(environment)?.corpus;
431
- }
432
- // loadManifest() kicks off syncAbis() in the background (fire-and-forget) so
433
- // browser callers get a fast manifest load and ABIs fill in progressively.
434
- // A one-shot Node caller (e.g. the lambda's prebuild script) that needs every
435
- // ABI resolved before it can write output should await this instead of
436
- // reading getAbi() immediately after loadManifest() resolves.
437
- async waitForAbis(chainId, environment = "production") {
438
- const cacheKey = this.getCacheKey(chainId, environment);
439
- const inFlight = this.abiSyncPromises.get(cacheKey);
440
- if (inFlight) {
441
- await inFlight;
442
- return;
443
- }
444
- const manifest = this.getLoadedManifest(environment);
445
- if (!manifest) return;
446
- await this.syncAbis(chainId, environment, manifest);
447
- }
448
- };
449
- var addressLoader = new RegistryAddressLoader();
450
- function getContractAbi(chainId, contractName, environment = "production") {
451
- return addressLoader.getAbi(chainId, contractName, environment);
452
- }
453
-
454
- export {
455
- sidecarUrlsFromManifest,
456
- CACHE_DURATION_MS,
457
- setRegistryBaseUrl,
458
- getRegistryBaseUrl,
459
- NodeFileCacheStorage,
460
- createNodeFileCacheStorage,
461
- RegistryAddressLoader,
462
- addressLoader,
463
- getContractAbi
464
- };
465
- //# sourceMappingURL=chunk-3L6LH2XK.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/web3/registry/sidecar-sources.ts","../src/web3/registry/loader.ts"],"mappings":"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","names":[]}
@@ -1,28 +0,0 @@
1
- // src/models/level-state.ts
2
- var _levels = /* @__PURE__ */ new Map();
3
- var _listeners = /* @__PURE__ */ new Set();
4
- if (typeof window !== "undefined") {
5
- window.addEventListener("LevelUpdate", (evt) => {
6
- const { username, level } = evt.detail;
7
- if (!username) {
8
- console.error("[models_v2 LevelState] LevelUpdate event missing username", evt);
9
- return;
10
- }
11
- _levels.set(username, {
12
- level: Math.floor(level) + 1,
13
- progress: 100 * (level - Math.floor(level))
14
- });
15
- _listeners.forEach((fn) => fn(username));
16
- });
17
- }
18
- var getLevel = (username) => _levels.get(username) ?? { level: 1, progress: 0 };
19
- var subscribeLevel = (listener) => {
20
- _listeners.add(listener);
21
- return () => _listeners.delete(listener);
22
- };
23
-
24
- export {
25
- getLevel,
26
- subscribeLevel
27
- };
28
- //# sourceMappingURL=chunk-4CWVFPBN.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/models/level-state.ts"],"mappings":";AAqBA,IAAM,UAAa,oBAAI,IAAwB;AAC/C,IAAM,aAAa,oBAAI,IAAgC;AAEvD,IAAI,OAAO,WAAW,aAAa;AAC/B,SAAO,iBAAiB,eAAe,CAAC,QAAe;AACnD,UAAM,EAAE,UAAU,MAAM,IAAK,IAAyD;AACtF,QAAI,CAAC,UAAU;AACX,cAAQ,MAAM,6DAA6D,GAAG;AAC9E;AAAA,IACJ;AACA,YAAQ,IAAI,UAAU;AAAA,MAClB,OAAU,KAAK,MAAM,KAAK,IAAI;AAAA,MAC9B,UAAU,OAAO,QAAQ,KAAK,MAAM,KAAK;AAAA,IAC7C,CAAC;AACD,eAAW,QAAQ,QAAM,GAAG,QAAQ,CAAC;AAAA,EACzC,CAAC;AACL;AAGO,IAAM,WAAW,CAAC,aACrB,QAAQ,IAAI,QAAQ,KAAK,EAAE,OAAO,GAAG,UAAU,EAAE;AAM9C,IAAM,iBAAiB,CAAC,aAAuD;AAClF,aAAW,IAAI,QAAQ;AACvB,SAAO,MAAM,WAAW,OAAO,QAAQ;AAC3C;","names":[]}
@@ -1,65 +0,0 @@
1
- // src/downloader/meta-db.ts
2
- var DB_NAME = "dl2_meta";
3
- var DB_VERSION = 1;
4
- var _db = null;
5
- var openMetaDb = () => {
6
- if (_db) return Promise.resolve(_db);
7
- return new Promise((resolve, reject) => {
8
- const req = indexedDB.open(DB_NAME, DB_VERSION);
9
- req.onupgradeneeded = (e) => {
10
- const db = e.target.result;
11
- if (!db.objectStoreNames.contains("book_data")) {
12
- db.createObjectStore("book_data", { keyPath: "txId" });
13
- }
14
- if (!db.objectStoreNames.contains("downloads")) {
15
- db.createObjectStore("downloads", { keyPath: "txId" });
16
- }
17
- if (!db.objectStoreNames.contains("migration_checkpoints")) {
18
- db.createObjectStore("migration_checkpoints", { keyPath: "cacheName" });
19
- }
20
- };
21
- req.onsuccess = (e) => {
22
- _db = e.target.result;
23
- resolve(_db);
24
- };
25
- req.onerror = () => reject(req.error);
26
- });
27
- };
28
- var idbGet = (store, key) => openMetaDb().then((db) => new Promise((resolve, reject) => {
29
- const tx = db.transaction(store, "readonly");
30
- const req = tx.objectStore(store).get(key);
31
- req.onsuccess = () => resolve(req.result);
32
- req.onerror = () => reject(req.error);
33
- }));
34
- var idbPut = (store, value) => openMetaDb().then((db) => new Promise((resolve, reject) => {
35
- const tx = db.transaction(store, "readwrite");
36
- const req = tx.objectStore(store).put(value);
37
- req.onsuccess = () => resolve();
38
- req.onerror = () => reject(req.error);
39
- }));
40
- var idbGetAll = (store) => openMetaDb().then((db) => new Promise((resolve, reject) => {
41
- const tx = db.transaction(store, "readonly");
42
- const req = tx.objectStore(store).getAll();
43
- req.onsuccess = () => resolve(req.result);
44
- req.onerror = () => reject(req.error);
45
- }));
46
- var getBookData = (txId) => idbGet("book_data", txId);
47
- var getAllBookData = () => idbGetAll("book_data");
48
- var getDownloadRecord = (txId) => idbGet("downloads", txId);
49
- var putDownloadRecord = (record) => idbPut("downloads", record);
50
- var getAllDownloadRecords = () => idbGetAll("downloads");
51
- var closeMetaDb = () => {
52
- _db?.close();
53
- _db = null;
54
- };
55
-
56
- export {
57
- openMetaDb,
58
- getBookData,
59
- getAllBookData,
60
- getDownloadRecord,
61
- putDownloadRecord,
62
- getAllDownloadRecords,
63
- closeMetaDb
64
- };
65
- //# sourceMappingURL=chunk-AGHPATVL.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/downloader/meta-db.ts"],"mappings":";AA8BA,IAAM,UAAa;AACnB,IAAM,aAAa;AAEnB,IAAI,MAA0B;AAEvB,IAAM,aAAa,MAA4B;AAClD,MAAI,IAAK,QAAO,QAAQ,QAAQ,GAAG;AACnC,SAAO,IAAI,QAAQ,CAAC,SAAS,WAAW;AACpC,UAAM,MAAM,UAAU,KAAK,SAAS,UAAU;AAC9C,QAAI,kBAAkB,CAAC,MAAM;AACzB,YAAM,KAAM,EAAE,OAA4B;AAC1C,UAAI,CAAC,GAAG,iBAAiB,SAAS,WAAW,GAAG;AAC5C,WAAG,kBAAkB,aAAa,EAAE,SAAS,OAAO,CAAC;AAAA,MACzD;AACA,UAAI,CAAC,GAAG,iBAAiB,SAAS,WAAW,GAAG;AAC5C,WAAG,kBAAkB,aAAa,EAAE,SAAS,OAAO,CAAC;AAAA,MACzD;AACA,UAAI,CAAC,GAAG,iBAAiB,SAAS,uBAAuB,GAAG;AACxD,WAAG,kBAAkB,yBAAyB,EAAE,SAAS,YAAY,CAAC;AAAA,MAC1E;AAAA,IACJ;AACA,QAAI,YAAY,CAAC,MAAM;AACnB,YAAO,EAAE,OAA4B;AACrC,cAAQ,GAAI;AAAA,IAChB;AACA,QAAI,UAAU,MAAM,OAAO,IAAI,KAAK;AAAA,EACxC,CAAC;AACL;AAEA,IAAM,SAAS,CAAI,OAAe,QAC9B,WAAW,EAAE,KAAK,QAAM,IAAI,QAAQ,CAAC,SAAS,WAAW;AACrD,QAAM,KAAM,GAAG,YAAY,OAAO,UAAU;AAC5C,QAAM,MAAM,GAAG,YAAY,KAAK,EAAE,IAAI,GAAG;AACzC,MAAI,YAAY,MAAM,QAAQ,IAAI,MAAuB;AACzD,MAAI,UAAY,MAAM,OAAO,IAAI,KAAK;AAC1C,CAAC,CAAC;AAEN,IAAM,SAAS,CAAC,OAAe,UAC3B,WAAW,EAAE,KAAK,QAAM,IAAI,QAAQ,CAAC,SAAS,WAAW;AACrD,QAAM,KAAM,GAAG,YAAY,OAAO,WAAW;AAC7C,QAAM,MAAM,GAAG,YAAY,KAAK,EAAE,IAAI,KAAK;AAC3C,MAAI,YAAY,MAAM,QAAQ;AAC9B,MAAI,UAAY,MAAM,OAAO,IAAI,KAAK;AAC1C,CAAC,CAAC;AAUN,IAAM,YAAY,CAAI,UAClB,WAAW,EAAE,KAAK,QAAM,IAAI,QAAQ,CAAC,SAAS,WAAW;AACrD,QAAM,KAAM,GAAG,YAAY,OAAO,UAAU;AAC5C,QAAM,MAAM,GAAG,YAAY,KAAK,EAAE,OAAO;AACzC,MAAI,YAAY,MAAM,QAAQ,IAAI,MAAa;AAC/C,MAAI,UAAY,MAAM,OAAO,IAAI,KAAK;AAC1C,CAAC,CAAC;AAEC,IAAM,cAAkB,CAAC,SAAiB,OAAiB,aAAa,IAAI;AAE5E,IAAM,iBAAmB,MAAM,UAAoB,WAAW;AAG9D,IAAM,oBAAuB,CAAC,SAAiB,OAAuB,aAAa,IAAI;AACvF,IAAM,oBAAuB,CAAC,WAA2B,OAAO,aAAa,MAAM;AACnF,IAAM,wBAAwB,MAAM,UAA0B,WAAW;AAezE,IAAM,cAAc,MAAY;AACnC,OAAK,MAAM;AACX,QAAM;AACV;","names":[]}