@fireproof/core 0.19.112-dev-web → 0.19.112-dev-dyn
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/{chunk-GZANCVTS.js → chunk-D4E6UX6S.js} +1 -8
- package/{chunk-GZANCVTS.js.map → chunk-D4E6UX6S.js.map} +1 -1
- package/{web/chunk-S4HRSKEO.js → chunk-PWEDYV5H.js} +26 -30
- package/chunk-PWEDYV5H.js.map +1 -0
- package/chunk-PZ5AY32C.js +10 -0
- package/{gateway@skip-iife-OZ2V32XH.js → gateway-72EUHYEL.js} +5 -4
- package/gateway-72EUHYEL.js.map +1 -0
- package/gateway-SK2ERWD3.js +70 -0
- package/gateway-SK2ERWD3.js.map +1 -0
- package/index.cjs +105 -286
- package/index.cjs.map +1 -1
- package/index.d.cts +2 -3
- package/index.d.ts +2 -3
- package/index.global.js +233 -188
- package/index.global.js.map +1 -1
- package/index.js +17 -17
- package/index.js.map +1 -1
- package/{key-bag-file-4TYN2H7F.js → key-bag-file-VP6Y7N26.js} +4 -3
- package/{key-bag-file-4TYN2H7F.js.map → key-bag-file-VP6Y7N26.js.map} +1 -1
- package/{key-bag-indexdb-JEOAS4WM.js → key-bag-indexdb-N5GQ5GSH.js} +4 -3
- package/{key-bag-indexdb-JEOAS4WM.js.map → key-bag-indexdb-N5GQ5GSH.js.map} +1 -1
- package/metafile-cjs.json +1 -1
- package/metafile-esm.json +1 -1
- package/metafile-iife.json +1 -1
- package/node/chunk-4A4RAVNS.js +17 -0
- package/node/chunk-4A4RAVNS.js.map +1 -0
- package/node/mem-filesystem.cjs +72 -0
- package/node/mem-filesystem.cjs.map +1 -0
- package/node/mem-filesystem.d.cts +25 -0
- package/node/mem-filesystem.d.ts +25 -0
- package/{mem-filesystem@skip-iife-CJI7IIKV.js → node/mem-filesystem.js} +3 -4
- package/node/mem-filesystem.js.map +1 -0
- package/node/metafile-cjs.json +1 -0
- package/node/metafile-esm.json +1 -0
- package/node/node-filesystem.cjs +86 -0
- package/node/node-filesystem.cjs.map +1 -0
- package/node/node-filesystem.d.cts +36 -0
- package/node/node-filesystem.d.ts +36 -0
- package/{node-filesystem@skip-iife-O74VAABQ.js → node/node-filesystem.js} +3 -4
- package/node/node-filesystem.js.map +1 -0
- package/node/types-DARSfXlb.d.cts +23 -0
- package/node/types-DARSfXlb.d.ts +23 -0
- package/package.json +1 -1
- package/utils-WS4AZWA7.js +13 -0
- package/web/gateway-impl.cjs +319 -0
- package/web/gateway-impl.cjs.map +1 -0
- package/web/gateway-impl.d.cts +86 -0
- package/web/gateway-impl.d.ts +86 -0
- package/{gateway@skip-esm-O655UEIP.js → web/gateway-impl.js} +165 -20
- package/web/gateway-impl.js.map +1 -0
- package/web/metafile-cjs.json +1 -1
- package/web/metafile-esm.json +1 -1
- package/chunk-LNFBDD6E.js +0 -75
- package/chunk-LNFBDD6E.js.map +0 -1
- package/chunk-PB4BKL4O.js +0 -7
- package/chunk-PB4BKL4O.js.map +0 -1
- package/gateway@skip-esm-O655UEIP.js.map +0 -1
- package/gateway@skip-iife-OZ2V32XH.js.map +0 -1
- package/mem-filesystem@skip-iife-CJI7IIKV.js.map +0 -1
- package/node-filesystem@skip-iife-O74VAABQ.js.map +0 -1
- package/utils-L7MUZUJX.js +0 -14
- package/web/bundle-not-impl-UH74NK5L.js +0 -5
- package/web/bundle-not-impl-UH74NK5L.js.map +0 -1
- package/web/chunk-2DC5ZIR4.js +0 -7
- package/web/chunk-2DC5ZIR4.js.map +0 -1
- package/web/chunk-Q5W7UNMP.js +0 -292
- package/web/chunk-Q5W7UNMP.js.map +0 -1
- package/web/chunk-S4HRSKEO.js.map +0 -1
- package/web/gateway@skip-esm-GI5PRACF.js +0 -165
- package/web/gateway@skip-esm-GI5PRACF.js.map +0 -1
- package/web/index.cjs +0 -4138
- package/web/index.cjs.map +0 -1
- package/web/index.d.cts +0 -1139
- package/web/index.d.ts +0 -1139
- package/web/index.js +0 -3478
- package/web/index.js.map +0 -1
- package/web/key-bag-file-4SJQGORQ.js +0 -54
- package/web/key-bag-file-4SJQGORQ.js.map +0 -1
- package/web/key-bag-indexdb-GSQOUUVQ.js +0 -50
- package/web/key-bag-indexdb-GSQOUUVQ.js.map +0 -1
- package/web/utils-EFZJNXH5.js +0 -14
- /package/{utils-L7MUZUJX.js.map → chunk-PZ5AY32C.js.map} +0 -0
- /package/{web/utils-EFZJNXH5.js.map → utils-WS4AZWA7.js.map} +0 -0
package/index.cjs
CHANGED
@@ -294,95 +294,44 @@ var init_utils = __esm({
|
|
294
294
|
}
|
295
295
|
});
|
296
296
|
|
297
|
-
// src/runtime/gateways/file/
|
298
|
-
|
299
|
-
|
300
|
-
|
301
|
-
|
302
|
-
|
303
|
-
|
304
|
-
|
305
|
-
|
306
|
-
|
307
|
-
|
308
|
-
|
309
|
-
|
310
|
-
|
311
|
-
|
312
|
-
|
313
|
-
|
314
|
-
|
315
|
-
|
316
|
-
|
317
|
-
|
318
|
-
|
319
|
-
|
320
|
-
|
321
|
-
|
322
|
-
|
323
|
-
|
324
|
-
|
325
|
-
|
326
|
-
return toArrayBuffer(ret);
|
327
|
-
}
|
328
|
-
stat(path) {
|
329
|
-
return import_memfs.fs.promises.stat(path);
|
330
|
-
}
|
331
|
-
unlink(path) {
|
332
|
-
return import_memfs.fs.promises.unlink(path);
|
333
|
-
}
|
334
|
-
writefile(path, data) {
|
335
|
-
return import_memfs.fs.promises.writeFile(path, Buffer.from(data));
|
336
|
-
}
|
337
|
-
};
|
297
|
+
// src/runtime/gateways/file/get-file-system-dynamic.ts
|
298
|
+
async function getFileSystem(url) {
|
299
|
+
const name = url.getParam("fs", "node");
|
300
|
+
let fs;
|
301
|
+
switch (name) {
|
302
|
+
case "mem":
|
303
|
+
fs = await externalLoaders.get(name).once(async () => {
|
304
|
+
const memjs = "./node/mem-filesystem.js";
|
305
|
+
const { MemFileSystem } = await import(
|
306
|
+
/* @vite-ignore */
|
307
|
+
memjs
|
308
|
+
);
|
309
|
+
return new MemFileSystem();
|
310
|
+
});
|
311
|
+
break;
|
312
|
+
// case 'deno': {
|
313
|
+
// const { DenoFileSystem } = await import("./deno-filesystem.js");
|
314
|
+
// fs = new DenoFileSystem();
|
315
|
+
// break;
|
316
|
+
// }
|
317
|
+
default:
|
318
|
+
fs = await externalLoaders.get(name).once(async () => {
|
319
|
+
const nodejs = "./node/node-filesystem.js";
|
320
|
+
const { NodeFileSystem } = await import(
|
321
|
+
/* @vite-ignore */
|
322
|
+
nodejs
|
323
|
+
);
|
324
|
+
return new NodeFileSystem();
|
325
|
+
});
|
338
326
|
}
|
339
|
-
|
340
|
-
|
341
|
-
|
342
|
-
var
|
343
|
-
|
344
|
-
NodeFileSystem: () => NodeFileSystem
|
345
|
-
});
|
346
|
-
var import_cement4, NodeFileSystem;
|
347
|
-
var init_node_filesystem_skip_iife = __esm({
|
348
|
-
"src/runtime/gateways/file/node-filesystem@skip-iife.ts"() {
|
327
|
+
return fs.start();
|
328
|
+
}
|
329
|
+
var import_cement4, externalLoaders;
|
330
|
+
var init_get_file_system_dynamic = __esm({
|
331
|
+
"src/runtime/gateways/file/get-file-system-dynamic.ts"() {
|
349
332
|
"use strict";
|
350
|
-
init_utils2();
|
351
333
|
import_cement4 = require("@adviser/cement");
|
352
|
-
|
353
|
-
async start() {
|
354
|
-
this.fs = await import("fs/promises");
|
355
|
-
return this;
|
356
|
-
}
|
357
|
-
async mkdir(path, options) {
|
358
|
-
return this.fs?.mkdir(path, options);
|
359
|
-
}
|
360
|
-
async readdir(path, options) {
|
361
|
-
return this.fs?.readdir(path, options);
|
362
|
-
}
|
363
|
-
async rm(path, options) {
|
364
|
-
return this.fs?.rm(path, options);
|
365
|
-
}
|
366
|
-
async copyFile(source, destination) {
|
367
|
-
return this.fs?.copyFile(source, destination);
|
368
|
-
}
|
369
|
-
async readfile(path, options) {
|
370
|
-
const ret = await this.fs?.readFile(path, options);
|
371
|
-
return toArrayBuffer(ret);
|
372
|
-
}
|
373
|
-
stat(path) {
|
374
|
-
return this.fs?.stat(path);
|
375
|
-
}
|
376
|
-
async unlink(path) {
|
377
|
-
return this.fs?.unlink(path);
|
378
|
-
}
|
379
|
-
async writefile(path, data) {
|
380
|
-
if ((0, import_cement4.runtimeFn)().isDeno) {
|
381
|
-
return this.fs?.writeFile(path, data);
|
382
|
-
}
|
383
|
-
return this.fs?.writeFile(path, Buffer.from(data));
|
384
|
-
}
|
385
|
-
};
|
334
|
+
externalLoaders = new import_cement4.KeyedResolvOnce();
|
386
335
|
}
|
387
336
|
});
|
388
337
|
|
@@ -391,36 +340,8 @@ var utils_exports = {};
|
|
391
340
|
__export(utils_exports, {
|
392
341
|
getFileName: () => getFileName,
|
393
342
|
getFileSystem: () => getFileSystem,
|
394
|
-
getPath: () => getPath
|
395
|
-
toArrayBuffer: () => toArrayBuffer
|
343
|
+
getPath: () => getPath
|
396
344
|
});
|
397
|
-
async function getFileSystem(url) {
|
398
|
-
const name = url.getParam("fs");
|
399
|
-
let fs2;
|
400
|
-
switch (name) {
|
401
|
-
case "mem":
|
402
|
-
{
|
403
|
-
const { MemFileSystem: MemFileSystem2 } = await Promise.resolve().then(() => (init_mem_filesystem_skip_iife(), mem_filesystem_skip_iife_exports));
|
404
|
-
fs2 = new MemFileSystem2();
|
405
|
-
}
|
406
|
-
break;
|
407
|
-
// case 'deno': {
|
408
|
-
// const { DenoFileSystem } = await import("./deno-filesystem.js");
|
409
|
-
// fs = new DenoFileSystem();
|
410
|
-
// break;
|
411
|
-
// }
|
412
|
-
case "node": {
|
413
|
-
const { NodeFileSystem: NodeFileSystem2 } = await Promise.resolve().then(() => (init_node_filesystem_skip_iife(), node_filesystem_skip_iife_exports));
|
414
|
-
fs2 = new NodeFileSystem2();
|
415
|
-
break;
|
416
|
-
}
|
417
|
-
case "sys":
|
418
|
-
default: {
|
419
|
-
return getFileSystem(url.build().setParam("fs", "node").URI());
|
420
|
-
}
|
421
|
-
}
|
422
|
-
return fs2.start();
|
423
|
-
}
|
424
345
|
function getPath(url, sthis) {
|
425
346
|
const basePath = url.pathname;
|
426
347
|
const name = url.getParam("name");
|
@@ -445,21 +366,11 @@ function getFileName(url, sthis) {
|
|
445
366
|
throw sthis.logger.Error().Url(url).Msg(`unsupported store type`).AsError();
|
446
367
|
}
|
447
368
|
}
|
448
|
-
function toArrayBuffer(buffer) {
|
449
|
-
if (typeof buffer === "string") {
|
450
|
-
buffer = Buffer.from(buffer);
|
451
|
-
}
|
452
|
-
const ab = new ArrayBuffer(buffer.length);
|
453
|
-
const view = new Uint8Array(ab);
|
454
|
-
for (let i = 0; i < buffer.length; ++i) {
|
455
|
-
view[i] = buffer[i];
|
456
|
-
}
|
457
|
-
return view;
|
458
|
-
}
|
459
369
|
var init_utils2 = __esm({
|
460
370
|
"src/runtime/gateways/file/utils.ts"() {
|
461
371
|
"use strict";
|
462
372
|
init_utils();
|
373
|
+
init_get_file_system_dynamic();
|
463
374
|
}
|
464
375
|
});
|
465
376
|
|
@@ -583,15 +494,15 @@ var init_version = __esm({
|
|
583
494
|
}
|
584
495
|
});
|
585
496
|
|
586
|
-
// src/runtime/gateways/file/gateway
|
587
|
-
var
|
588
|
-
__export(
|
497
|
+
// src/runtime/gateways/file/gateway.ts
|
498
|
+
var gateway_exports = {};
|
499
|
+
__export(gateway_exports, {
|
589
500
|
FileGateway: () => FileGateway,
|
590
501
|
FileTestStore: () => FileTestStore
|
591
502
|
});
|
592
503
|
var import_cement11, versionFiles, FileGateway, FileTestStore;
|
593
|
-
var
|
594
|
-
"src/runtime/gateways/file/gateway
|
504
|
+
var init_gateway = __esm({
|
505
|
+
"src/runtime/gateways/file/gateway.ts"() {
|
595
506
|
"use strict";
|
596
507
|
init_version();
|
597
508
|
import_cement11 = require("@adviser/cement");
|
@@ -722,173 +633,80 @@ var init_gateway_skip_iife = __esm({
|
|
722
633
|
}
|
723
634
|
});
|
724
635
|
|
725
|
-
// src/runtime/gateways/indexdb/
|
726
|
-
|
727
|
-
|
728
|
-
|
636
|
+
// src/runtime/gateways/indexdb/gateway-import-dynamic.ts
|
637
|
+
function gatewayImport() {
|
638
|
+
const gwimpl = "./web/gateway-impl.js";
|
639
|
+
return import(
|
640
|
+
/* @vite-ignore */
|
641
|
+
gwimpl
|
642
|
+
);
|
643
|
+
}
|
644
|
+
var init_gateway_import_dynamic = __esm({
|
645
|
+
"src/runtime/gateways/indexdb/gateway-import-dynamic.ts"() {
|
729
646
|
"use strict";
|
730
|
-
INDEXDB_VERSION = "v0.19-indexdb";
|
731
647
|
}
|
732
648
|
});
|
733
649
|
|
734
|
-
// src/runtime/gateways/indexdb/gateway
|
735
|
-
var
|
736
|
-
__export(
|
650
|
+
// src/runtime/gateways/indexdb/gateway.ts
|
651
|
+
var gateway_exports2 = {};
|
652
|
+
__export(gateway_exports2, {
|
737
653
|
IndexDBGateway: () => IndexDBGateway,
|
738
|
-
IndexDBTestStore: () => IndexDBTestStore
|
739
|
-
getIndexDBName: () => getIndexDBName
|
654
|
+
IndexDBTestStore: () => IndexDBTestStore
|
740
655
|
});
|
741
|
-
|
742
|
-
|
743
|
-
|
744
|
-
function sanitzeKey(key) {
|
745
|
-
if (key.length === 1) {
|
746
|
-
key = key[0];
|
747
|
-
}
|
748
|
-
return key;
|
749
|
-
}
|
750
|
-
async function connectIdb(url, sthis) {
|
751
|
-
const dbName = getIndexDBName(url, sthis);
|
752
|
-
const once = await onceIndexDB.get(dbName.fullDb).once(async () => {
|
753
|
-
const db = await (0, import_idb2.openDB)(dbName.fullDb, 1, {
|
754
|
-
upgrade(db2) {
|
755
|
-
["version", "data", "wal", "meta", "idx.data", "idx.wal", "idx.meta"].map((store) => {
|
756
|
-
db2.createObjectStore(store, {
|
757
|
-
autoIncrement: false
|
758
|
-
});
|
759
|
-
});
|
760
|
-
}
|
761
|
-
});
|
762
|
-
const found = await db.get("version", "version");
|
763
|
-
const version = ensureVersion(url).getParam("version");
|
764
|
-
if (!found) {
|
765
|
-
await db.put("version", { version }, "version");
|
766
|
-
} else if (found.version !== version) {
|
767
|
-
sthis.logger.Warn().Str("url", url.toString()).Str("version", version).Str("found", found.version).Msg("version mismatch");
|
768
|
-
}
|
769
|
-
return { db, dbName, version, url };
|
770
|
-
});
|
771
|
-
return {
|
772
|
-
...once,
|
773
|
-
url: url.build().setParam("version", once.version).URI()
|
774
|
-
};
|
775
|
-
}
|
776
|
-
function joinDBName(...names) {
|
777
|
-
return names.map((i) => i.replace(/^[^a-zA-Z0-9]+/g, "").replace(/[^a-zA-Z0-9]+/g, "_")).filter((i) => i.length).join(".");
|
778
|
-
}
|
779
|
-
function getIndexDBName(iurl, sthis) {
|
780
|
-
const url = ensureVersion(iurl);
|
781
|
-
const fullDb = url.pathname.replace(/^\/+/, "").replace(/\?.*$/, "");
|
782
|
-
const dbName = url.getParam("name");
|
783
|
-
if (!dbName) throw sthis.logger.Error().Str("url", url.toString()).Msg(`name not found`).AsError();
|
784
|
-
const result = joinDBName(fullDb, dbName);
|
785
|
-
const objStore = getStore(url, sthis, joinDBName).name;
|
786
|
-
const connectionKey = [result, objStore].join(":");
|
787
|
-
return {
|
788
|
-
fullDb: result,
|
789
|
-
objStore,
|
790
|
-
connectionKey,
|
791
|
-
dbName
|
792
|
-
};
|
793
|
-
}
|
794
|
-
var import_idb2, import_cement12, onceIndexDB, IndexDBGateway, IndexDBTestStore;
|
795
|
-
var init_gateway_skip_esm = __esm({
|
796
|
-
"src/runtime/gateways/indexdb/gateway@skip-esm.ts"() {
|
656
|
+
var import_cement12, loadExternal, IndexDBGateway, IndexDBTestStore;
|
657
|
+
var init_gateway2 = __esm({
|
658
|
+
"src/runtime/gateways/indexdb/gateway.ts"() {
|
797
659
|
"use strict";
|
798
|
-
import_idb2 = require("idb");
|
799
660
|
import_cement12 = require("@adviser/cement");
|
800
|
-
|
801
|
-
|
802
|
-
onceIndexDB = new import_cement12.KeyedResolvOnce();
|
661
|
+
init_gateway_import_dynamic();
|
662
|
+
loadExternal = new import_cement12.ResolveOnce();
|
803
663
|
IndexDBGateway = class {
|
804
664
|
constructor(sthis) {
|
805
|
-
this._db = {};
|
806
|
-
this.logger = ensureLogger(sthis, "IndexDBGateway");
|
807
665
|
this.sthis = sthis;
|
808
666
|
}
|
809
|
-
|
810
|
-
return
|
811
|
-
|
812
|
-
await this.sthis.start();
|
813
|
-
const ic = await connectIdb(baseURL, this.sthis);
|
814
|
-
this._db = ic.db;
|
815
|
-
this.logger.Debug().Url(ic.url).Msg("started");
|
816
|
-
return ic.url;
|
667
|
+
getGateway() {
|
668
|
+
return loadExternal.once(() => {
|
669
|
+
return gatewayImport().then(({ IndexDBGatewayImpl }) => new IndexDBGatewayImpl(this.sthis));
|
817
670
|
});
|
818
671
|
}
|
819
|
-
|
820
|
-
return
|
672
|
+
buildUrl(baseUrl, key) {
|
673
|
+
return this.getGateway().then((gw) => gw.buildUrl(baseUrl, key));
|
821
674
|
}
|
822
|
-
|
823
|
-
return (
|
824
|
-
const type = getStore(baseUrl, this.sthis, joinDBName).name;
|
825
|
-
const idb = this._db;
|
826
|
-
const trans = idb.transaction(type, "readwrite");
|
827
|
-
const object_store = trans.objectStore(type);
|
828
|
-
const toDelete = [];
|
829
|
-
for (let cursor = await object_store.openCursor(); cursor; cursor = await cursor.continue()) {
|
830
|
-
toDelete.push(cursor.primaryKey);
|
831
|
-
}
|
832
|
-
for (const key of toDelete) {
|
833
|
-
await trans.db.delete(type, key);
|
834
|
-
}
|
835
|
-
await trans.done;
|
836
|
-
});
|
675
|
+
start(baseUrl) {
|
676
|
+
return this.getGateway().then((gw) => gw.start(baseUrl));
|
837
677
|
}
|
838
|
-
|
839
|
-
return
|
678
|
+
close(baseUrl) {
|
679
|
+
return this.getGateway().then((gw) => gw.close(baseUrl));
|
840
680
|
}
|
841
|
-
|
842
|
-
return
|
843
|
-
const key = getKey(url, this.logger);
|
844
|
-
const store = getStore(url, this.sthis, joinDBName).name;
|
845
|
-
this.logger.Debug().Url(url).Str("key", key).Str("store", store).Msg("getting");
|
846
|
-
const tx = this._db.transaction([store], "readonly");
|
847
|
-
const bytes = await tx.objectStore(store).get(sanitzeKey(key));
|
848
|
-
await tx.done;
|
849
|
-
if (!bytes) {
|
850
|
-
return import_cement12.Result.Err(new NotFoundError(`missing ${key}`));
|
851
|
-
}
|
852
|
-
return import_cement12.Result.Ok(bytes);
|
853
|
-
});
|
681
|
+
destroy(baseUrl) {
|
682
|
+
return this.getGateway().then((gw) => gw.destroy(baseUrl));
|
854
683
|
}
|
855
|
-
|
856
|
-
return (
|
857
|
-
const key = getKey(url, this.logger);
|
858
|
-
const store = getStore(url, this.sthis, joinDBName).name;
|
859
|
-
this.logger.Debug().Url(url).Str("key", key).Str("store", store).Msg("putting");
|
860
|
-
const tx = this._db.transaction([store], "readwrite");
|
861
|
-
await tx.objectStore(store).put(value, sanitzeKey(key));
|
862
|
-
await tx.done;
|
863
|
-
});
|
684
|
+
put(url, body) {
|
685
|
+
return this.getGateway().then((gw) => gw.put(url, body));
|
864
686
|
}
|
865
|
-
|
866
|
-
return (
|
867
|
-
const key = getKey(url, this.logger);
|
868
|
-
const store = getStore(url, this.sthis, joinDBName).name;
|
869
|
-
this.logger.Debug().Url(url).Str("key", key).Str("store", store).Msg("deleting");
|
870
|
-
const tx = this._db.transaction([store], "readwrite");
|
871
|
-
await tx.objectStore(store).delete(sanitzeKey(key));
|
872
|
-
await tx.done;
|
873
|
-
return import_cement12.Result.Ok(void 0);
|
874
|
-
});
|
687
|
+
get(url) {
|
688
|
+
return this.getGateway().then((gw) => gw.get(url));
|
875
689
|
}
|
690
|
+
delete(url) {
|
691
|
+
return this.getGateway().then((gw) => gw.delete(url));
|
692
|
+
}
|
693
|
+
// subscribe?(url: URI, callback: (meta: Uint8Array) => void): Promise<UnsubscribeResult> {
|
694
|
+
// // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
|
695
|
+
// return this.getGateway().then(gw => gw.subscribe!(url, callback));
|
696
|
+
// }
|
876
697
|
};
|
877
698
|
IndexDBTestStore = class {
|
878
699
|
constructor(sthis) {
|
700
|
+
this.loadExternal = new import_cement12.ResolveOnce();
|
879
701
|
this.sthis = sthis;
|
880
|
-
this.logger = ensureLogger(sthis, "IndexDBTestStore", {});
|
881
702
|
}
|
882
|
-
|
883
|
-
|
884
|
-
|
885
|
-
|
886
|
-
|
887
|
-
|
888
|
-
|
889
|
-
bytes = this.sthis.txt.encode(bytes);
|
890
|
-
}
|
891
|
-
return bytes;
|
703
|
+
getGateway() {
|
704
|
+
return this.loadExternal.once(() => {
|
705
|
+
return gatewayImport().then(({ IndexDBTestStore: IndexDBTestStore2 }) => new IndexDBTestStore2(this.sthis));
|
706
|
+
});
|
707
|
+
}
|
708
|
+
get(url, key) {
|
709
|
+
return this.getGateway().then((gw) => gw.get(url, key));
|
892
710
|
}
|
893
711
|
};
|
894
712
|
}
|
@@ -3129,22 +2947,22 @@ function toStoreRuntime(opts, sthis) {
|
|
3129
2947
|
registerStoreProtocol({
|
3130
2948
|
protocol: "file:",
|
3131
2949
|
gateway: async (sthis) => {
|
3132
|
-
const { FileGateway: FileGateway2 } = await Promise.resolve().then(() => (
|
2950
|
+
const { FileGateway: FileGateway2 } = await Promise.resolve().then(() => (init_gateway(), gateway_exports));
|
3133
2951
|
return new FileGateway2(sthis);
|
3134
2952
|
},
|
3135
2953
|
test: async (sthis) => {
|
3136
|
-
const { FileTestStore: FileTestStore2 } = await Promise.resolve().then(() => (
|
2954
|
+
const { FileTestStore: FileTestStore2 } = await Promise.resolve().then(() => (init_gateway(), gateway_exports));
|
3137
2955
|
return new FileTestStore2(sthis);
|
3138
2956
|
}
|
3139
2957
|
});
|
3140
2958
|
registerStoreProtocol({
|
3141
2959
|
protocol: "indexdb:",
|
3142
2960
|
gateway: async (sthis) => {
|
3143
|
-
const { IndexDBGateway: IndexDBGateway2 } = await Promise.resolve().then(() => (
|
2961
|
+
const { IndexDBGateway: IndexDBGateway2 } = await Promise.resolve().then(() => (init_gateway2(), gateway_exports2));
|
3144
2962
|
return new IndexDBGateway2(sthis);
|
3145
2963
|
},
|
3146
2964
|
test: async (sthis) => {
|
3147
|
-
const { IndexDBTestStore: IndexDBTestStore2 } = await Promise.resolve().then(() => (
|
2965
|
+
const { IndexDBTestStore: IndexDBTestStore2 } = await Promise.resolve().then(() => (init_gateway2(), gateway_exports2));
|
3148
2966
|
return new IndexDBTestStore2(sthis);
|
3149
2967
|
}
|
3150
2968
|
});
|
@@ -3522,7 +3340,7 @@ var import_sha26 = require("multiformats/hashes/sha2");
|
|
3522
3340
|
var codec2 = __toESM(require("@ipld/dag-cbor"), 1);
|
3523
3341
|
var import_charwise = __toESM(require("charwise"), 1);
|
3524
3342
|
var DbIndex = __toESM(require("prolly-trees/db-index"), 1);
|
3525
|
-
var
|
3343
|
+
var import_utils13 = require("prolly-trees/utils");
|
3526
3344
|
var import_cache = require("prolly-trees/cache");
|
3527
3345
|
var IndexTree = class {
|
3528
3346
|
};
|
@@ -3530,17 +3348,17 @@ function refCompare(aRef, bRef) {
|
|
3530
3348
|
if (Number.isNaN(aRef)) return -1;
|
3531
3349
|
if (Number.isNaN(bRef)) throw new Error("ref may not be Infinity or NaN");
|
3532
3350
|
if (aRef === Infinity) return 1;
|
3533
|
-
return (0,
|
3351
|
+
return (0, import_utils13.simpleCompare)(aRef, bRef);
|
3534
3352
|
}
|
3535
3353
|
function compare(a, b) {
|
3536
3354
|
const [aKey, aRef] = a;
|
3537
3355
|
const [bKey, bRef] = b;
|
3538
|
-
const comp = (0,
|
3356
|
+
const comp = (0, import_utils13.simpleCompare)(aKey, bKey);
|
3539
3357
|
if (comp !== 0) return comp;
|
3540
3358
|
return refCompare(aRef, bRef);
|
3541
3359
|
}
|
3542
|
-
var byKeyOpts = { cache: import_cache.nocache, chunker: (0,
|
3543
|
-
var byIdOpts = { cache: import_cache.nocache, chunker: (0,
|
3360
|
+
var byKeyOpts = { cache: import_cache.nocache, chunker: (0, import_utils13.bf)(30), codec: codec2, hasher: import_sha26.sha256, compare };
|
3361
|
+
var byIdOpts = { cache: import_cache.nocache, chunker: (0, import_utils13.bf)(30), codec: codec2, hasher: import_sha26.sha256, compare: import_utils13.simpleCompare };
|
3544
3362
|
function indexEntriesForChanges(changes, mapFn) {
|
3545
3363
|
const indexEntries = [];
|
3546
3364
|
changes.forEach(({ id: key, value, del }) => {
|
@@ -4331,8 +4149,7 @@ __export(runtime_exports, {
|
|
4331
4149
|
kb: () => key_bag_exports,
|
4332
4150
|
kc: () => keyed_crypto_exports,
|
4333
4151
|
mf: () => wait_pr_multiformats_exports,
|
4334
|
-
runtimeFn: () => import_cement17.runtimeFn
|
4335
|
-
toArrayBuffer: () => toArrayBuffer
|
4152
|
+
runtimeFn: () => import_cement17.runtimeFn
|
4336
4153
|
});
|
4337
4154
|
init_utils2();
|
4338
4155
|
|
@@ -4349,13 +4166,15 @@ var codec_interface_exports = {};
|
|
4349
4166
|
// src/runtime/index.ts
|
4350
4167
|
var import_cement17 = require("@adviser/cement");
|
4351
4168
|
init_version();
|
4352
|
-
|
4169
|
+
|
4170
|
+
// src/runtime/gateways/indexdb/version.ts
|
4171
|
+
var INDEXDB_VERSION = "v0.19-indexdb";
|
4353
4172
|
|
4354
4173
|
// src/index.ts
|
4355
4174
|
init_utils();
|
4356
4175
|
|
4357
4176
|
// src/version.ts
|
4358
4177
|
var PACKAGE_VERSION = Object.keys({
|
4359
|
-
"0.19.112-dev-
|
4178
|
+
"0.19.112-dev-dyn": "xxxx"
|
4360
4179
|
})[0];
|
4361
4180
|
//# sourceMappingURL=index.cjs.map
|