@fireproof/core 0.17.2 → 0.17.4
Sign up to get free protection for your applications and to get access to all the features.
- package/dist/browser/fireproof.cjs +10 -6
- package/dist/browser/fireproof.cjs.map +1 -1
- package/dist/browser/fireproof.d.cts +15 -12
- package/dist/browser/fireproof.d.ts +15 -12
- package/dist/browser/fireproof.global.js +174 -107
- package/dist/browser/fireproof.global.js.map +1 -1
- package/dist/browser/fireproof.js +14 -6
- package/dist/browser/fireproof.js.map +1 -1
- package/dist/browser/metafile-cjs.json +1 -1
- package/dist/browser/metafile-esm.json +1 -1
- package/dist/browser/metafile-iife.json +1 -1
- package/dist/memory/fireproof.cjs +10 -6
- package/dist/memory/fireproof.cjs.map +1 -1
- package/dist/memory/fireproof.d.cts +15 -12
- package/dist/memory/fireproof.d.ts +15 -12
- package/dist/memory/fireproof.global.js +174 -107
- package/dist/memory/fireproof.global.js.map +1 -1
- package/dist/memory/fireproof.js +14 -6
- package/dist/memory/fireproof.js.map +1 -1
- package/dist/memory/metafile-cjs.json +1 -1
- package/dist/memory/metafile-esm.json +1 -1
- package/dist/memory/metafile-iife.json +1 -1
- package/dist/node/fireproof.cjs +4 -5
- package/dist/node/fireproof.cjs.map +1 -1
- package/dist/node/fireproof.d.cts +15 -12
- package/dist/node/fireproof.d.ts +15 -12
- package/dist/node/fireproof.global.js +169 -98
- package/dist/node/fireproof.global.js.map +1 -1
- package/dist/node/fireproof.js +4 -5
- package/dist/node/fireproof.js.map +1 -1
- package/dist/node/metafile-cjs.json +1 -1
- package/dist/node/metafile-esm.json +1 -1
- package/dist/node/metafile-iife.json +1 -1
- package/package.json +8 -5
@@ -4136,22 +4136,6 @@ var Fireproof = (() => {
|
|
4136
4136
|
}
|
4137
4137
|
}
|
4138
4138
|
};
|
4139
|
-
var MultiBlockFetcher = class {
|
4140
|
-
/** @type {API.BlockFetcher[]} */
|
4141
|
-
#fetchers;
|
4142
|
-
/** @param {API.BlockFetcher[]} fetchers */
|
4143
|
-
constructor(...fetchers) {
|
4144
|
-
this.#fetchers = fetchers;
|
4145
|
-
}
|
4146
|
-
/** @type {API.BlockFetcher['get']} */
|
4147
|
-
async get(link2) {
|
4148
|
-
for (const f of this.#fetchers) {
|
4149
|
-
const v = await f.get(link2);
|
4150
|
-
if (v)
|
4151
|
-
return v;
|
4152
|
-
}
|
4153
|
-
}
|
4154
|
-
};
|
4155
4139
|
|
4156
4140
|
// ../../node_modules/.pnpm/yocto-queue@1.0.0/node_modules/yocto-queue/index.js
|
4157
4141
|
var Node = class {
|
@@ -9952,8 +9936,7 @@ You can use close({ resize: true }) to resize header`);
|
|
9952
9936
|
return uint8Array;
|
9953
9937
|
}
|
9954
9938
|
async function encryptedEncodeCarFile(crypto22, key, rootCid, t) {
|
9955
|
-
const
|
9956
|
-
const encryptionKey = encryptionKeyUint8.buffer.slice(0, encryptionKeyUint8.byteLength);
|
9939
|
+
const encryptionKey = hexStringToUint8Array(key);
|
9957
9940
|
const encryptedBlocks = new MemoryBlockstore();
|
9958
9941
|
const cidsToEncrypt = [];
|
9959
9942
|
for (const { cid } of t.entries()) {
|
@@ -10030,7 +10013,7 @@ You can use close({ resize: true }) to resize header`);
|
|
10030
10013
|
}
|
10031
10014
|
return bytes;
|
10032
10015
|
}
|
10033
|
-
var PACKAGE_VERSION = "0.
|
10016
|
+
var PACKAGE_VERSION = "0.17.3";
|
10034
10017
|
var match = PACKAGE_VERSION.match(/^([^.]*\.[^.]*)/);
|
10035
10018
|
if (!match)
|
10036
10019
|
throw new Error("invalid version: " + PACKAGE_VERSION);
|
@@ -10106,11 +10089,11 @@ You can use close({ resize: true }) to resize header`);
|
|
10106
10089
|
constructor(name7, ebOpts) {
|
10107
10090
|
this.name = name7;
|
10108
10091
|
this.ebOpts = ebOpts;
|
10109
|
-
this.
|
10110
|
-
this.
|
10111
|
-
this.
|
10112
|
-
this.remoteWAL = new ebOpts.store.RemoteWAL(this);
|
10092
|
+
this.carStore = ebOpts.store.makeDataStore(this.name);
|
10093
|
+
this.fileStore = ebOpts.store.makeDataStore(this.name);
|
10094
|
+
this.remoteWAL = ebOpts.store.makeRemoteWAL(this);
|
10113
10095
|
this.ready = Promise.resolve().then(async () => {
|
10096
|
+
this.metaStore = ebOpts.store.makeMetaStore(this);
|
10114
10097
|
if (!this.metaStore || !this.carStore || !this.remoteWAL)
|
10115
10098
|
throw new Error("stores not initialized");
|
10116
10099
|
const metas = this.ebOpts.meta ? [this.ebOpts.meta] : await this.metaStore.load("main");
|
@@ -10284,19 +10267,30 @@ You can use close({ resize: true }) to resize header`);
|
|
10284
10267
|
const sCid = cid.toString();
|
10285
10268
|
if (this.getBlockCache.has(sCid))
|
10286
10269
|
return this.getBlockCache.get(sCid);
|
10287
|
-
const
|
10288
|
-
|
10289
|
-
|
10290
|
-
|
10291
|
-
|
10292
|
-
|
10293
|
-
|
10294
|
-
|
10295
|
-
|
10296
|
-
|
10297
|
-
|
10298
|
-
|
10299
|
-
|
10270
|
+
const getCarCid = async (carCid) => {
|
10271
|
+
const reader = await this.loadCar(carCid);
|
10272
|
+
if (!reader) {
|
10273
|
+
throw new Error(`missing car reader ${carCid.toString()}`);
|
10274
|
+
}
|
10275
|
+
await this.cacheCarReader(reader);
|
10276
|
+
if (this.getBlockCache.has(sCid))
|
10277
|
+
return this.getBlockCache.get(sCid);
|
10278
|
+
throw new Error(`block not in reader: ${cid.toString()}`);
|
10279
|
+
};
|
10280
|
+
let got;
|
10281
|
+
const batchSize = 5;
|
10282
|
+
for (let i = 0; i < this.carLog.length; i += batchSize) {
|
10283
|
+
const promises = [];
|
10284
|
+
for (let j = i; j < Math.min(i + batchSize, this.carLog.length); j++) {
|
10285
|
+
promises.push(getCarCid(this.carLog[j]));
|
10286
|
+
}
|
10287
|
+
try {
|
10288
|
+
got = await Promise.any(promises);
|
10289
|
+
} catch {
|
10290
|
+
}
|
10291
|
+
if (got)
|
10292
|
+
break;
|
10293
|
+
}
|
10300
10294
|
if (got) {
|
10301
10295
|
this.getBlockCache.set(sCid, got);
|
10302
10296
|
}
|
@@ -18766,12 +18760,15 @@ ${key.data.toString("base64")}
|
|
18766
18760
|
DataStore: () => DataStore2,
|
18767
18761
|
MetaStore: () => MetaStore2,
|
18768
18762
|
RemoteWAL: () => RemoteWAL2,
|
18763
|
+
makeDataStore: () => makeDataStore,
|
18764
|
+
makeMetaStore: () => makeMetaStore,
|
18765
|
+
makeRemoteWAL: () => makeRemoteWAL,
|
18769
18766
|
testConfig: () => testConfig
|
18770
18767
|
});
|
18771
18768
|
var import_path = __require("path");
|
18772
18769
|
var import_os = __require("os");
|
18773
18770
|
var import_promises = __require("fs/promises");
|
18774
|
-
var PACKAGE_VERSION2 = "0.
|
18771
|
+
var PACKAGE_VERSION2 = "0.17.3";
|
18775
18772
|
var match2 = PACKAGE_VERSION2.match(/^([^.]*\.[^.]*)/);
|
18776
18773
|
if (!match2)
|
18777
18774
|
throw new Error("invalid version: " + PACKAGE_VERSION2);
|
@@ -18859,14 +18856,14 @@ ${key.data.toString("base64")}
|
|
18859
18856
|
processQueue = new CommitQueue2();
|
18860
18857
|
constructor(loader) {
|
18861
18858
|
this.loader = loader;
|
18862
|
-
this.ready = (async () => {
|
18859
|
+
this.ready = Promise.resolve().then(async () => {
|
18863
18860
|
const walState = await this.load().catch((e) => {
|
18864
18861
|
console.error("error loading wal", e);
|
18865
18862
|
return null;
|
18866
18863
|
});
|
18867
18864
|
this.walState.operations = walState?.operations || [];
|
18868
18865
|
this.walState.fileOperations = walState?.fileOperations || [];
|
18869
|
-
})
|
18866
|
+
});
|
18870
18867
|
}
|
18871
18868
|
async enqueue(dbMeta, opts) {
|
18872
18869
|
await this.ready;
|
@@ -18965,6 +18962,9 @@ ${key.data.toString("base64")}
|
|
18965
18962
|
await rmlp;
|
18966
18963
|
}
|
18967
18964
|
};
|
18965
|
+
var makeDataStore = (name7) => new DataStore2(name7);
|
18966
|
+
var makeMetaStore = (loader) => new MetaStore2(loader.name);
|
18967
|
+
var makeRemoteWAL = (loader) => new RemoteWAL2(loader);
|
18968
18968
|
var RemoteWAL2 = class extends RemoteWAL {
|
18969
18969
|
filePathForBranch(branch) {
|
18970
18970
|
return (0, import_path.join)(MetaStore2.dataDir, this.loader.name, "wal", branch + ".json");
|
@@ -19034,7 +19034,7 @@ ${key.data.toString("base64")}
|
|
19034
19034
|
return await (0, import_promises.writeFile)(path, data);
|
19035
19035
|
}
|
19036
19036
|
|
19037
|
-
// ../../node_modules/.pnpm/@web3-storage+pail@0.4.
|
19037
|
+
// ../../node_modules/.pnpm/@web3-storage+pail@0.4.1/node_modules/@web3-storage/pail/src/clock/index.js
|
19038
19038
|
var advance = async (blocks, head, event) => {
|
19039
19039
|
const events = new EventFetcher(blocks);
|
19040
19040
|
const headmap = new Map(head.map((cid) => [cid.toString(), cid]));
|
@@ -19160,7 +19160,7 @@ ${key.data.toString("base64")}
|
|
19160
19160
|
};
|
19161
19161
|
var shortLink = (l) => `${String(l).slice(0, 4)}..${String(l).slice(-4)}`;
|
19162
19162
|
|
19163
|
-
// ../../node_modules/.pnpm/@web3-storage+pail@0.4.
|
19163
|
+
// ../../node_modules/.pnpm/@web3-storage+pail@0.4.1/node_modules/@web3-storage/pail/src/shard.js
|
19164
19164
|
var MaxKeyLength = 64;
|
19165
19165
|
var MaxShardSize = 512 * 1024;
|
19166
19166
|
var CID_TAG2 = new Token(Type.tag, 42);
|
@@ -19291,41 +19291,8 @@ ${key.data.toString("base64")}
|
|
19291
19291
|
}
|
19292
19292
|
}
|
19293
19293
|
};
|
19294
|
-
var encodedLength = (shard) => {
|
19295
|
-
let entriesLength = 0;
|
19296
|
-
for (const entry of shard.entries) {
|
19297
|
-
entriesLength += entryEncodedLength(entry);
|
19298
|
-
}
|
19299
|
-
const tokens = [
|
19300
|
-
new Token(Type.map, 3),
|
19301
|
-
new Token(Type.string, "entries"),
|
19302
|
-
new Token(Type.array, shard.entries.length),
|
19303
|
-
new Token(Type.string, "maxKeyLength"),
|
19304
|
-
new Token(Type.uint, shard.maxKeyLength),
|
19305
|
-
new Token(Type.string, "maxSize"),
|
19306
|
-
new Token(Type.uint, shard.maxSize)
|
19307
|
-
];
|
19308
|
-
return tokensToLength(tokens) + entriesLength;
|
19309
|
-
};
|
19310
|
-
var entryEncodedLength = (entry) => {
|
19311
|
-
const tokens = [
|
19312
|
-
new Token(Type.array, entry.length),
|
19313
|
-
new Token(Type.string, entry[0])
|
19314
|
-
];
|
19315
|
-
if (Array.isArray(entry[1])) {
|
19316
|
-
tokens.push(new Token(Type.array, entry[1].length));
|
19317
|
-
for (const link2 of entry[1]) {
|
19318
|
-
tokens.push(CID_TAG2);
|
19319
|
-
tokens.push(new Token(Type.bytes, { length: link2.byteLength + 1 }));
|
19320
|
-
}
|
19321
|
-
} else {
|
19322
|
-
tokens.push(CID_TAG2);
|
19323
|
-
tokens.push(new Token(Type.bytes, { length: entry[1].byteLength + 1 }));
|
19324
|
-
}
|
19325
|
-
return tokensToLength(tokens);
|
19326
|
-
};
|
19327
19294
|
|
19328
|
-
// ../../node_modules/.pnpm/@web3-storage+pail@0.4.
|
19295
|
+
// ../../node_modules/.pnpm/@web3-storage+pail@0.4.1/node_modules/@web3-storage/pail/src/index.js
|
19329
19296
|
var put = async (blocks, root2, key, value) => {
|
19330
19297
|
const shards = new ShardFetcher(blocks);
|
19331
19298
|
const rshard = await shards.get(root2);
|
@@ -19528,15 +19495,118 @@ ${key.data.toString("base64")}
|
|
19528
19495
|
return [shard];
|
19529
19496
|
};
|
19530
19497
|
|
19531
|
-
// ../../node_modules/.pnpm/@web3-storage+pail@0.4.
|
19498
|
+
// ../../node_modules/.pnpm/@web3-storage+pail@0.4.1/node_modules/@web3-storage/pail/src/block.js
|
19499
|
+
var MemoryBlockstore2 = class {
|
19500
|
+
/** @type {Map<string, Uint8Array>} */
|
19501
|
+
#blocks = /* @__PURE__ */ new Map();
|
19502
|
+
/**
|
19503
|
+
* @param {Array<import('multiformats').Block>} [blocks]
|
19504
|
+
*/
|
19505
|
+
constructor(blocks) {
|
19506
|
+
if (blocks) {
|
19507
|
+
this.#blocks = new Map(blocks.map((b) => [b.cid.toString(), b.bytes]));
|
19508
|
+
}
|
19509
|
+
}
|
19510
|
+
/** @type {API.BlockFetcher['get']} */
|
19511
|
+
async get(cid) {
|
19512
|
+
const bytes = this.#blocks.get(cid.toString());
|
19513
|
+
if (!bytes)
|
19514
|
+
return;
|
19515
|
+
return { cid, bytes };
|
19516
|
+
}
|
19517
|
+
/**
|
19518
|
+
* @param {API.UnknownLink} cid
|
19519
|
+
* @param {Uint8Array} bytes
|
19520
|
+
*/
|
19521
|
+
async put(cid, bytes) {
|
19522
|
+
this.#blocks.set(cid.toString(), bytes);
|
19523
|
+
}
|
19524
|
+
/**
|
19525
|
+
* @param {API.UnknownLink} cid
|
19526
|
+
* @param {Uint8Array} bytes
|
19527
|
+
*/
|
19528
|
+
putSync(cid, bytes) {
|
19529
|
+
this.#blocks.set(cid.toString(), bytes);
|
19530
|
+
}
|
19531
|
+
/** @param {API.UnknownLink} cid */
|
19532
|
+
async delete(cid) {
|
19533
|
+
this.#blocks.delete(cid.toString());
|
19534
|
+
}
|
19535
|
+
/** @param {API.UnknownLink} cid */
|
19536
|
+
deleteSync(cid) {
|
19537
|
+
this.#blocks.delete(cid.toString());
|
19538
|
+
}
|
19539
|
+
*entries() {
|
19540
|
+
for (const [str, bytes] of this.#blocks) {
|
19541
|
+
yield { cid: parse(str), bytes };
|
19542
|
+
}
|
19543
|
+
}
|
19544
|
+
};
|
19545
|
+
var MultiBlockFetcher = class {
|
19546
|
+
/** @type {API.BlockFetcher[]} */
|
19547
|
+
#fetchers;
|
19548
|
+
/** @param {API.BlockFetcher[]} fetchers */
|
19549
|
+
constructor(...fetchers) {
|
19550
|
+
this.#fetchers = fetchers;
|
19551
|
+
}
|
19552
|
+
/** @type {API.BlockFetcher['get']} */
|
19553
|
+
async get(link2) {
|
19554
|
+
for (const f of this.#fetchers) {
|
19555
|
+
const v = await f.get(link2);
|
19556
|
+
if (v)
|
19557
|
+
return v;
|
19558
|
+
}
|
19559
|
+
}
|
19560
|
+
};
|
19561
|
+
|
19562
|
+
// ../../node_modules/.pnpm/@web3-storage+pail@0.4.1/node_modules/@web3-storage/pail/src/batch/shard.js
|
19563
|
+
var ShardLinkByteLength = 36;
|
19564
|
+
var CID_TAG3 = new Token(Type.tag, 42);
|
19532
19565
|
var create8 = (init2) => ({
|
19533
19566
|
base: init2?.base,
|
19534
19567
|
prefix: init2?.prefix ?? "",
|
19535
|
-
entries: init2?.entries ?? [],
|
19568
|
+
entries: [...init2?.entries ?? []],
|
19536
19569
|
...configure(init2)
|
19537
19570
|
});
|
19571
|
+
var encodedLength = (shard) => {
|
19572
|
+
let entriesLength = 0;
|
19573
|
+
for (const entry of shard.entries) {
|
19574
|
+
entriesLength += entryEncodedLength(entry);
|
19575
|
+
}
|
19576
|
+
const tokens = [
|
19577
|
+
new Token(Type.map, 3),
|
19578
|
+
new Token(Type.string, "entries"),
|
19579
|
+
new Token(Type.array, shard.entries.length),
|
19580
|
+
new Token(Type.string, "maxKeyLength"),
|
19581
|
+
new Token(Type.uint, shard.maxKeyLength),
|
19582
|
+
new Token(Type.string, "maxSize"),
|
19583
|
+
new Token(Type.uint, shard.maxSize)
|
19584
|
+
];
|
19585
|
+
return tokensToLength(tokens) + entriesLength;
|
19586
|
+
};
|
19587
|
+
var entryEncodedLength = (entry) => {
|
19588
|
+
const tokens = [
|
19589
|
+
new Token(Type.array, entry.length),
|
19590
|
+
new Token(Type.string, entry[0])
|
19591
|
+
];
|
19592
|
+
if (Array.isArray(entry[1])) {
|
19593
|
+
tokens.push(new Token(Type.array, entry[1].length));
|
19594
|
+
for (const item of entry[1]) {
|
19595
|
+
tokens.push(CID_TAG3);
|
19596
|
+
if (isLink(item)) {
|
19597
|
+
tokens.push(new Token(Type.bytes, { length: item.byteLength + 1 }));
|
19598
|
+
} else {
|
19599
|
+
tokens.push(new Token(Type.bytes, { length: ShardLinkByteLength + 1 }));
|
19600
|
+
}
|
19601
|
+
}
|
19602
|
+
} else {
|
19603
|
+
tokens.push(CID_TAG3);
|
19604
|
+
tokens.push(new Token(Type.bytes, { length: entry[1].byteLength + 1 }));
|
19605
|
+
}
|
19606
|
+
return tokensToLength(tokens);
|
19607
|
+
};
|
19538
19608
|
|
19539
|
-
// ../../node_modules/.pnpm/@web3-storage+pail@0.4.
|
19609
|
+
// ../../node_modules/.pnpm/@web3-storage+pail@0.4.1/node_modules/@web3-storage/pail/src/batch/index.js
|
19540
19610
|
var Batcher = class _Batcher {
|
19541
19611
|
#committed = false;
|
19542
19612
|
/**
|
@@ -19551,7 +19621,7 @@ ${key.data.toString("base64")}
|
|
19551
19621
|
constructor({ blocks, entries: entries3, prefix, maxSize, maxKeyLength, base: base4 }) {
|
19552
19622
|
this.blocks = blocks;
|
19553
19623
|
this.prefix = prefix;
|
19554
|
-
this.entries = entries3;
|
19624
|
+
this.entries = [...entries3];
|
19555
19625
|
this.base = base4;
|
19556
19626
|
this.maxSize = maxSize;
|
19557
19627
|
this.maxKeyLength = maxKeyLength;
|
@@ -19581,7 +19651,7 @@ ${key.data.toString("base64")}
|
|
19581
19651
|
static async create({ blocks, link: link2, prefix }) {
|
19582
19652
|
const shards = new ShardFetcher(blocks);
|
19583
19653
|
const base4 = await shards.get(link2);
|
19584
|
-
return new _Batcher({ blocks,
|
19654
|
+
return new _Batcher({ blocks, prefix, base: base4, ...base4.value });
|
19585
19655
|
}
|
19586
19656
|
};
|
19587
19657
|
var put2 = async (blocks, shard, key, value) => {
|
@@ -19618,7 +19688,7 @@ ${key.data.toString("base64")}
|
|
19618
19688
|
entry = [pfxskeys[0].key, [batcher]];
|
19619
19689
|
}
|
19620
19690
|
shard.entries = putEntry(asShardEntries(shard.entries), asShardEntry(entry));
|
19621
|
-
const size = encodedLength(
|
19691
|
+
const size = encodedLength(shard);
|
19622
19692
|
if (size > shard.maxSize) {
|
19623
19693
|
const common = findCommonPrefix(
|
19624
19694
|
asShardEntries(shard.entries),
|
@@ -19655,14 +19725,16 @@ ${key.data.toString("base64")}
|
|
19655
19725
|
}
|
19656
19726
|
};
|
19657
19727
|
var traverse2 = async (shards, key, shard) => {
|
19658
|
-
for (
|
19659
|
-
const [k, v] =
|
19728
|
+
for (let i = 0; i < shard.entries.length; i++) {
|
19729
|
+
const [k, v] = shard.entries[i];
|
19660
19730
|
if (key <= k)
|
19661
19731
|
break;
|
19662
19732
|
if (key.startsWith(k) && Array.isArray(v)) {
|
19663
19733
|
if (isShardLink(v[0])) {
|
19664
19734
|
const blk = await shards.get(v[0], shard.prefix + k);
|
19665
|
-
|
19735
|
+
const batcher = create8({ base: blk, prefix: blk.prefix, ...blk.value });
|
19736
|
+
shard.entries[i] = [k, v[1] == null ? [batcher] : [batcher, v[1]]];
|
19737
|
+
return traverse2(shards, key.slice(k.length), batcher);
|
19666
19738
|
}
|
19667
19739
|
return traverse2(shards, key.slice(k.length), v[0]);
|
19668
19740
|
}
|
@@ -19716,9 +19788,9 @@ ${key.data.toString("base64")}
|
|
19716
19788
|
static code = "ERR_BATCH_COMMITTED";
|
19717
19789
|
};
|
19718
19790
|
|
19719
|
-
// ../../node_modules/.pnpm/@web3-storage+pail@0.4.
|
19791
|
+
// ../../node_modules/.pnpm/@web3-storage+pail@0.4.1/node_modules/@web3-storage/pail/src/crdt/index.js
|
19720
19792
|
var put3 = async (blocks, head, key, value) => {
|
19721
|
-
const mblocks = new
|
19793
|
+
const mblocks = new MemoryBlockstore2();
|
19722
19794
|
blocks = new MultiBlockFetcher(mblocks, blocks);
|
19723
19795
|
if (!head.length) {
|
19724
19796
|
const shard = await ShardBlock.create();
|
@@ -19802,7 +19874,7 @@ ${key.data.toString("base64")}
|
|
19802
19874
|
var root = async (blocks, head) => {
|
19803
19875
|
if (!head.length)
|
19804
19876
|
throw new Error("cannot determine root of headless clock");
|
19805
|
-
const mblocks = new
|
19877
|
+
const mblocks = new MemoryBlockstore2();
|
19806
19878
|
blocks = new MultiBlockFetcher(mblocks, blocks);
|
19807
19879
|
const events = new EventFetcher(blocks);
|
19808
19880
|
if (head.length === 1) {
|
@@ -19861,7 +19933,7 @@ ${key.data.toString("base64")}
|
|
19861
19933
|
return;
|
19862
19934
|
const result = await root(blocks, head);
|
19863
19935
|
if (result.additions.length) {
|
19864
|
-
blocks = new MultiBlockFetcher(new
|
19936
|
+
blocks = new MultiBlockFetcher(new MemoryBlockstore2(result.additions), blocks);
|
19865
19937
|
}
|
19866
19938
|
return get2(blocks, result.root, key);
|
19867
19939
|
};
|
@@ -19870,7 +19942,7 @@ ${key.data.toString("base64")}
|
|
19870
19942
|
return;
|
19871
19943
|
const result = await root(blocks, head);
|
19872
19944
|
if (result.additions.length) {
|
19873
|
-
blocks = new MultiBlockFetcher(new
|
19945
|
+
blocks = new MultiBlockFetcher(new MemoryBlockstore2(result.additions), blocks);
|
19874
19946
|
}
|
19875
19947
|
yield* entries(blocks, result.root, options);
|
19876
19948
|
};
|
@@ -19954,7 +20026,7 @@ ${key.data.toString("base64")}
|
|
19954
20026
|
return acc.concat(...rest);
|
19955
20027
|
};
|
19956
20028
|
|
19957
|
-
// ../../node_modules/.pnpm/@web3-storage+pail@0.4.
|
20029
|
+
// ../../node_modules/.pnpm/@web3-storage+pail@0.4.1/node_modules/@web3-storage/pail/src/crdt/batch/index.js
|
19958
20030
|
var Batcher2 = class _Batcher {
|
19959
20031
|
#committed = false;
|
19960
20032
|
/**
|
@@ -19973,7 +20045,7 @@ ${key.data.toString("base64")}
|
|
19973
20045
|
this.blocks = blocks;
|
19974
20046
|
this.head = head;
|
19975
20047
|
this.prefix = prefix;
|
19976
|
-
this.entries = entries3;
|
20048
|
+
this.entries = [...entries3];
|
19977
20049
|
this.base = base4;
|
19978
20050
|
this.maxSize = maxSize;
|
19979
20051
|
this.maxKeyLength = maxKeyLength;
|
@@ -19999,7 +20071,7 @@ ${key.data.toString("base64")}
|
|
19999
20071
|
const res = await commit(this);
|
20000
20072
|
const data = { type: "batch", ops: this.ops, root: res.root };
|
20001
20073
|
const event = await EventBlock.create(data, this.head);
|
20002
|
-
const mblocks = new
|
20074
|
+
const mblocks = new MemoryBlockstore2();
|
20003
20075
|
const blocks = new MultiBlockFetcher(mblocks, this.blocks);
|
20004
20076
|
mblocks.putSync(event.cid, event.bytes);
|
20005
20077
|
const head = await advance(blocks, this.head, event.cid);
|
@@ -20039,7 +20111,7 @@ ${key.data.toString("base64")}
|
|
20039
20111
|
* @param {string} init.prefix
|
20040
20112
|
*/
|
20041
20113
|
static async create({ blocks, head, prefix }) {
|
20042
|
-
const mblocks = new
|
20114
|
+
const mblocks = new MemoryBlockstore2();
|
20043
20115
|
blocks = new MultiBlockFetcher(mblocks, blocks);
|
20044
20116
|
if (!head.length) {
|
20045
20117
|
const base5 = await ShardBlock.create();
|
@@ -28480,10 +28552,8 @@ ${key.data.toString("base64")}
|
|
28480
28552
|
|
28481
28553
|
// src/crdt-helpers.ts
|
28482
28554
|
function time(tag2) {
|
28483
|
-
console.time(tag2);
|
28484
28555
|
}
|
28485
28556
|
function timeEnd(tag2) {
|
28486
|
-
console.timeEnd(tag2);
|
28487
28557
|
}
|
28488
28558
|
async function applyBulkUpdateToCrdt(tblocks, head, updates) {
|
28489
28559
|
let result = null;
|
@@ -28610,6 +28680,7 @@ ${key.data.toString("base64")}
|
|
28610
28680
|
if (!block)
|
28611
28681
|
throw new Error(`Missing linked block ${link2.toString()}`);
|
28612
28682
|
const { value } = await decode11({ bytes: block.bytes, hasher: sha256, codec: src_exports });
|
28683
|
+
value.cid = link2;
|
28613
28684
|
readFiles(blocks, value);
|
28614
28685
|
return value;
|
28615
28686
|
}
|
@@ -29531,7 +29602,7 @@ ${key.data.toString("base64")}
|
|
29531
29602
|
try {
|
29532
29603
|
head = await advance(tblocks, head, cid);
|
29533
29604
|
} catch (e) {
|
29534
|
-
console.
|
29605
|
+
console.log("failed to advance head:", cid.toString());
|
29535
29606
|
continue;
|
29536
29607
|
}
|
29537
29608
|
}
|
@@ -29561,8 +29632,8 @@ ${key.data.toString("base64")}
|
|
29561
29632
|
return { head: this.clock.head };
|
29562
29633
|
},
|
29563
29634
|
autoCompact: this.opts.autoCompact || 100,
|
29564
|
-
crypto: crypto_node_exports,
|
29565
|
-
store: store_node_exports,
|
29635
|
+
crypto: this.opts.crypto || crypto_node_exports,
|
29636
|
+
store: this.opts.store || store_node_exports,
|
29566
29637
|
public: this.opts.public,
|
29567
29638
|
meta: this.opts.meta
|
29568
29639
|
});
|