@fireproof/core 0.10.0-dev → 0.10.2-dev

Sign up to get free protection for your applications and to get access to all the features.
Files changed (96) hide show
  1. package/dist/fireproof.browser.js +2 -3
  2. package/dist/fireproof.browser.js.map +2 -2
  3. package/dist/fireproof.cjs.js +2 -3
  4. package/dist/fireproof.cjs.js.map +2 -2
  5. package/dist/fireproof.esm.js +2 -3
  6. package/dist/fireproof.esm.js.map +2 -2
  7. package/package.json +5 -1
  8. package/.eslintrc.cjs +0 -37
  9. package/.vscode/launch.json +0 -12
  10. package/dist/crdt-helpers.browser.js +0 -4961
  11. package/dist/crdt-helpers.browser.js.map +0 -7
  12. package/dist/crdt-helpers.cjs.js +0 -4823
  13. package/dist/crdt-helpers.cjs.js.map +0 -7
  14. package/dist/crdt-helpers.esm.js +0 -4788
  15. package/dist/crdt-helpers.esm.js.map +0 -7
  16. package/dist/crdt.browser.js +0 -18214
  17. package/dist/crdt.browser.js.map +0 -7
  18. package/dist/crdt.cjs.js +0 -8692
  19. package/dist/crdt.cjs.js.map +0 -7
  20. package/dist/crdt.esm.js +0 -8682
  21. package/dist/crdt.esm.js.map +0 -7
  22. package/dist/database.browser.js +0 -18867
  23. package/dist/database.browser.js.map +0 -7
  24. package/dist/database.cjs.js +0 -9296
  25. package/dist/database.cjs.js.map +0 -7
  26. package/dist/database.esm.js +0 -9288
  27. package/dist/database.esm.js.map +0 -7
  28. package/dist/loader-helpers.browser.js +0 -6943
  29. package/dist/loader-helpers.browser.js.map +0 -7
  30. package/dist/loader-helpers.cjs.js +0 -4419
  31. package/dist/loader-helpers.cjs.js.map +0 -7
  32. package/dist/loader-helpers.esm.js +0 -4408
  33. package/dist/loader-helpers.esm.js.map +0 -7
  34. package/dist/loader.browser.js +0 -15968
  35. package/dist/loader.browser.js.map +0 -7
  36. package/dist/loader.cjs.js +0 -6667
  37. package/dist/loader.cjs.js.map +0 -7
  38. package/dist/loader.esm.js +0 -6657
  39. package/dist/loader.esm.js.map +0 -7
  40. package/dist/store-browser.browser.js +0 -1414
  41. package/dist/store-browser.browser.js.map +0 -7
  42. package/dist/store-browser.cjs.js +0 -1387
  43. package/dist/store-browser.cjs.js.map +0 -7
  44. package/dist/store-browser.esm.js +0 -1358
  45. package/dist/store-browser.esm.js.map +0 -7
  46. package/dist/store-fs.browser.js +0 -16142
  47. package/dist/store-fs.browser.js.map +0 -7
  48. package/dist/store-fs.cjs.js +0 -1171
  49. package/dist/store-fs.cjs.js.map +0 -7
  50. package/dist/store-fs.esm.js +0 -1143
  51. package/dist/store-fs.esm.js.map +0 -7
  52. package/dist/store.browser.js +0 -1113
  53. package/dist/store.browser.js.map +0 -7
  54. package/dist/store.cjs.js +0 -1126
  55. package/dist/store.cjs.js.map +0 -7
  56. package/dist/store.esm.js +0 -1097
  57. package/dist/store.esm.js.map +0 -7
  58. package/dist/transaction.browser.js +0 -17241
  59. package/dist/transaction.browser.js.map +0 -7
  60. package/dist/transaction.cjs.js +0 -7842
  61. package/dist/transaction.cjs.js.map +0 -7
  62. package/dist/transaction.esm.js +0 -7831
  63. package/dist/transaction.esm.js.map +0 -7
  64. package/dist/types.d.browser.js +0 -4
  65. package/dist/types.d.browser.js.map +0 -7
  66. package/dist/types.d.cjs.js +0 -19
  67. package/dist/types.d.cjs.js.map +0 -7
  68. package/dist/types.d.esm.js +0 -1
  69. package/dist/types.d.esm.js.map +0 -7
  70. package/scripts/analyze.js +0 -31
  71. package/scripts/build.js +0 -20
  72. package/scripts/serve.js +0 -20
  73. package/scripts/settings.js +0 -65
  74. package/scripts/test.js +0 -14
  75. package/src/crdt-helpers.ts +0 -89
  76. package/src/crdt.ts +0 -45
  77. package/src/database.ts +0 -61
  78. package/src/fireproof.ts +0 -6
  79. package/src/loader-helpers.ts +0 -53
  80. package/src/loader.ts +0 -66
  81. package/src/store-browser.ts +0 -76
  82. package/src/store-fs.ts +0 -51
  83. package/src/store.ts +0 -32
  84. package/src/transaction.ts +0 -68
  85. package/src/types.d.ts +0 -38
  86. package/test/crdt.test.js +0 -142
  87. package/test/database.test.js +0 -144
  88. package/test/fireproof.test.js +0 -50
  89. package/test/globals.d.ts +0 -4
  90. package/test/hello.test.js +0 -9
  91. package/test/helpers.js +0 -34
  92. package/test/loader.test.js +0 -112
  93. package/test/store-fs.test.js +0 -105
  94. package/test/transaction.test.js +0 -90
  95. package/tsconfig.json +0 -18
  96. package/webpack.config.cjs +0 -17
package/dist/store.cjs.js DELETED
@@ -1,1126 +0,0 @@
1
- "use strict";
2
- var __defProp = Object.defineProperty;
3
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
- var __getOwnPropNames = Object.getOwnPropertyNames;
5
- var __hasOwnProp = Object.prototype.hasOwnProperty;
6
- var __export = (target, all) => {
7
- for (var name in all)
8
- __defProp(target, name, { get: all[name], enumerable: true });
9
- };
10
- var __copyProps = (to, from2, except, desc) => {
11
- if (from2 && typeof from2 === "object" || typeof from2 === "function") {
12
- for (let key of __getOwnPropNames(from2))
13
- if (!__hasOwnProp.call(to, key) && key !== except)
14
- __defProp(to, key, { get: () => from2[key], enumerable: !(desc = __getOwnPropDesc(from2, key)) || desc.enumerable });
15
- }
16
- return to;
17
- };
18
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
-
20
- // src/store.ts
21
- var store_exports = {};
22
- __export(store_exports, {
23
- CarStore: () => CarStore,
24
- HeaderStore: () => HeaderStore,
25
- StoredHeader: () => StoredHeader
26
- });
27
- module.exports = __toCommonJS(store_exports);
28
-
29
- // node_modules/multiformats/vendor/varint.js
30
- var encode_1 = encode;
31
- var MSB = 128;
32
- var REST = 127;
33
- var MSBALL = ~REST;
34
- var INT = Math.pow(2, 31);
35
- function encode(num, out, offset) {
36
- out = out || [];
37
- offset = offset || 0;
38
- var oldOffset = offset;
39
- while (num >= INT) {
40
- out[offset++] = num & 255 | MSB;
41
- num /= 128;
42
- }
43
- while (num & MSBALL) {
44
- out[offset++] = num & 255 | MSB;
45
- num >>>= 7;
46
- }
47
- out[offset] = num | 0;
48
- encode.bytes = offset - oldOffset + 1;
49
- return out;
50
- }
51
- var decode = read;
52
- var MSB$1 = 128;
53
- var REST$1 = 127;
54
- function read(buf, offset) {
55
- var res = 0, offset = offset || 0, shift = 0, counter = offset, b, l = buf.length;
56
- do {
57
- if (counter >= l) {
58
- read.bytes = 0;
59
- throw new RangeError("Could not decode varint");
60
- }
61
- b = buf[counter++];
62
- res += shift < 28 ? (b & REST$1) << shift : (b & REST$1) * Math.pow(2, shift);
63
- shift += 7;
64
- } while (b >= MSB$1);
65
- read.bytes = counter - offset;
66
- return res;
67
- }
68
- var N1 = Math.pow(2, 7);
69
- var N2 = Math.pow(2, 14);
70
- var N3 = Math.pow(2, 21);
71
- var N4 = Math.pow(2, 28);
72
- var N5 = Math.pow(2, 35);
73
- var N6 = Math.pow(2, 42);
74
- var N7 = Math.pow(2, 49);
75
- var N8 = Math.pow(2, 56);
76
- var N9 = Math.pow(2, 63);
77
- var length = function(value) {
78
- return value < N1 ? 1 : value < N2 ? 2 : value < N3 ? 3 : value < N4 ? 4 : value < N5 ? 5 : value < N6 ? 6 : value < N7 ? 7 : value < N8 ? 8 : value < N9 ? 9 : 10;
79
- };
80
- var varint = {
81
- encode: encode_1,
82
- decode,
83
- encodingLength: length
84
- };
85
- var _brrp_varint = varint;
86
- var varint_default = _brrp_varint;
87
-
88
- // node_modules/multiformats/src/varint.js
89
- var decode2 = (data, offset = 0) => {
90
- const code = varint_default.decode(data, offset);
91
- return [code, varint_default.decode.bytes];
92
- };
93
- var encodeTo = (int, target, offset = 0) => {
94
- varint_default.encode(int, target, offset);
95
- return target;
96
- };
97
- var encodingLength = (int) => {
98
- return varint_default.encodingLength(int);
99
- };
100
-
101
- // node_modules/multiformats/src/bytes.js
102
- var empty = new Uint8Array(0);
103
- var equals = (aa, bb) => {
104
- if (aa === bb)
105
- return true;
106
- if (aa.byteLength !== bb.byteLength) {
107
- return false;
108
- }
109
- for (let ii = 0; ii < aa.byteLength; ii++) {
110
- if (aa[ii] !== bb[ii]) {
111
- return false;
112
- }
113
- }
114
- return true;
115
- };
116
- var coerce = (o) => {
117
- if (o instanceof Uint8Array && o.constructor.name === "Uint8Array")
118
- return o;
119
- if (o instanceof ArrayBuffer)
120
- return new Uint8Array(o);
121
- if (ArrayBuffer.isView(o)) {
122
- return new Uint8Array(o.buffer, o.byteOffset, o.byteLength);
123
- }
124
- throw new Error("Unknown type, must be binary type");
125
- };
126
-
127
- // node_modules/multiformats/src/hashes/digest.js
128
- var create = (code, digest) => {
129
- const size = digest.byteLength;
130
- const sizeOffset = encodingLength(code);
131
- const digestOffset = sizeOffset + encodingLength(size);
132
- const bytes = new Uint8Array(digestOffset + size);
133
- encodeTo(code, bytes, 0);
134
- encodeTo(size, bytes, sizeOffset);
135
- bytes.set(digest, digestOffset);
136
- return new Digest(code, size, digest, bytes);
137
- };
138
- var decode3 = (multihash) => {
139
- const bytes = coerce(multihash);
140
- const [code, sizeOffset] = decode2(bytes);
141
- const [size, digestOffset] = decode2(bytes.subarray(sizeOffset));
142
- const digest = bytes.subarray(sizeOffset + digestOffset);
143
- if (digest.byteLength !== size) {
144
- throw new Error("Incorrect length");
145
- }
146
- return new Digest(code, size, digest, bytes);
147
- };
148
- var equals2 = (a, b) => {
149
- if (a === b) {
150
- return true;
151
- } else {
152
- const data = (
153
- /** @type {{code?:unknown, size?:unknown, bytes?:unknown}} */
154
- b
155
- );
156
- return a.code === data.code && a.size === data.size && data.bytes instanceof Uint8Array && equals(a.bytes, data.bytes);
157
- }
158
- };
159
- var Digest = class {
160
- /**
161
- * Creates a multihash digest.
162
- *
163
- * @param {Code} code
164
- * @param {Size} size
165
- * @param {Uint8Array} digest
166
- * @param {Uint8Array} bytes
167
- */
168
- constructor(code, size, digest, bytes) {
169
- this.code = code;
170
- this.size = size;
171
- this.digest = digest;
172
- this.bytes = bytes;
173
- }
174
- };
175
-
176
- // node_modules/multiformats/vendor/base-x.js
177
- function base(ALPHABET, name) {
178
- if (ALPHABET.length >= 255) {
179
- throw new TypeError("Alphabet too long");
180
- }
181
- var BASE_MAP = new Uint8Array(256);
182
- for (var j = 0; j < BASE_MAP.length; j++) {
183
- BASE_MAP[j] = 255;
184
- }
185
- for (var i = 0; i < ALPHABET.length; i++) {
186
- var x = ALPHABET.charAt(i);
187
- var xc = x.charCodeAt(0);
188
- if (BASE_MAP[xc] !== 255) {
189
- throw new TypeError(x + " is ambiguous");
190
- }
191
- BASE_MAP[xc] = i;
192
- }
193
- var BASE = ALPHABET.length;
194
- var LEADER = ALPHABET.charAt(0);
195
- var FACTOR = Math.log(BASE) / Math.log(256);
196
- var iFACTOR = Math.log(256) / Math.log(BASE);
197
- function encode3(source) {
198
- if (source instanceof Uint8Array)
199
- ;
200
- else if (ArrayBuffer.isView(source)) {
201
- source = new Uint8Array(source.buffer, source.byteOffset, source.byteLength);
202
- } else if (Array.isArray(source)) {
203
- source = Uint8Array.from(source);
204
- }
205
- if (!(source instanceof Uint8Array)) {
206
- throw new TypeError("Expected Uint8Array");
207
- }
208
- if (source.length === 0) {
209
- return "";
210
- }
211
- var zeroes = 0;
212
- var length2 = 0;
213
- var pbegin = 0;
214
- var pend = source.length;
215
- while (pbegin !== pend && source[pbegin] === 0) {
216
- pbegin++;
217
- zeroes++;
218
- }
219
- var size = (pend - pbegin) * iFACTOR + 1 >>> 0;
220
- var b58 = new Uint8Array(size);
221
- while (pbegin !== pend) {
222
- var carry = source[pbegin];
223
- var i2 = 0;
224
- for (var it1 = size - 1; (carry !== 0 || i2 < length2) && it1 !== -1; it1--, i2++) {
225
- carry += 256 * b58[it1] >>> 0;
226
- b58[it1] = carry % BASE >>> 0;
227
- carry = carry / BASE >>> 0;
228
- }
229
- if (carry !== 0) {
230
- throw new Error("Non-zero carry");
231
- }
232
- length2 = i2;
233
- pbegin++;
234
- }
235
- var it2 = size - length2;
236
- while (it2 !== size && b58[it2] === 0) {
237
- it2++;
238
- }
239
- var str = LEADER.repeat(zeroes);
240
- for (; it2 < size; ++it2) {
241
- str += ALPHABET.charAt(b58[it2]);
242
- }
243
- return str;
244
- }
245
- function decodeUnsafe(source) {
246
- if (typeof source !== "string") {
247
- throw new TypeError("Expected String");
248
- }
249
- if (source.length === 0) {
250
- return new Uint8Array();
251
- }
252
- var psz = 0;
253
- if (source[psz] === " ") {
254
- return;
255
- }
256
- var zeroes = 0;
257
- var length2 = 0;
258
- while (source[psz] === LEADER) {
259
- zeroes++;
260
- psz++;
261
- }
262
- var size = (source.length - psz) * FACTOR + 1 >>> 0;
263
- var b256 = new Uint8Array(size);
264
- while (source[psz]) {
265
- var carry = BASE_MAP[source.charCodeAt(psz)];
266
- if (carry === 255) {
267
- return;
268
- }
269
- var i2 = 0;
270
- for (var it3 = size - 1; (carry !== 0 || i2 < length2) && it3 !== -1; it3--, i2++) {
271
- carry += BASE * b256[it3] >>> 0;
272
- b256[it3] = carry % 256 >>> 0;
273
- carry = carry / 256 >>> 0;
274
- }
275
- if (carry !== 0) {
276
- throw new Error("Non-zero carry");
277
- }
278
- length2 = i2;
279
- psz++;
280
- }
281
- if (source[psz] === " ") {
282
- return;
283
- }
284
- var it4 = size - length2;
285
- while (it4 !== size && b256[it4] === 0) {
286
- it4++;
287
- }
288
- var vch = new Uint8Array(zeroes + (size - it4));
289
- var j2 = zeroes;
290
- while (it4 !== size) {
291
- vch[j2++] = b256[it4++];
292
- }
293
- return vch;
294
- }
295
- function decode5(string) {
296
- var buffer = decodeUnsafe(string);
297
- if (buffer) {
298
- return buffer;
299
- }
300
- throw new Error(`Non-${name} character`);
301
- }
302
- return {
303
- encode: encode3,
304
- decodeUnsafe,
305
- decode: decode5
306
- };
307
- }
308
- var src = base;
309
- var _brrp__multiformats_scope_baseX = src;
310
- var base_x_default = _brrp__multiformats_scope_baseX;
311
-
312
- // node_modules/multiformats/src/bases/base.js
313
- var Encoder = class {
314
- /**
315
- * @param {Base} name
316
- * @param {Prefix} prefix
317
- * @param {(bytes:Uint8Array) => string} baseEncode
318
- */
319
- constructor(name, prefix, baseEncode) {
320
- this.name = name;
321
- this.prefix = prefix;
322
- this.baseEncode = baseEncode;
323
- }
324
- /**
325
- * @param {Uint8Array} bytes
326
- * @returns {API.Multibase<Prefix>}
327
- */
328
- encode(bytes) {
329
- if (bytes instanceof Uint8Array) {
330
- return `${this.prefix}${this.baseEncode(bytes)}`;
331
- } else {
332
- throw Error("Unknown type, must be binary type");
333
- }
334
- }
335
- };
336
- var Decoder = class {
337
- /**
338
- * @param {Base} name
339
- * @param {Prefix} prefix
340
- * @param {(text:string) => Uint8Array} baseDecode
341
- */
342
- constructor(name, prefix, baseDecode) {
343
- this.name = name;
344
- this.prefix = prefix;
345
- if (prefix.codePointAt(0) === void 0) {
346
- throw new Error("Invalid prefix character");
347
- }
348
- this.prefixCodePoint = /** @type {number} */
349
- prefix.codePointAt(0);
350
- this.baseDecode = baseDecode;
351
- }
352
- /**
353
- * @param {string} text
354
- */
355
- decode(text) {
356
- if (typeof text === "string") {
357
- if (text.codePointAt(0) !== this.prefixCodePoint) {
358
- throw Error(`Unable to decode multibase string ${JSON.stringify(text)}, ${this.name} decoder only supports inputs prefixed with ${this.prefix}`);
359
- }
360
- return this.baseDecode(text.slice(this.prefix.length));
361
- } else {
362
- throw Error("Can only multibase decode strings");
363
- }
364
- }
365
- /**
366
- * @template {string} OtherPrefix
367
- * @param {API.UnibaseDecoder<OtherPrefix>|ComposedDecoder<OtherPrefix>} decoder
368
- * @returns {ComposedDecoder<Prefix|OtherPrefix>}
369
- */
370
- or(decoder) {
371
- return or(this, decoder);
372
- }
373
- };
374
- var ComposedDecoder = class {
375
- /**
376
- * @param {Decoders<Prefix>} decoders
377
- */
378
- constructor(decoders) {
379
- this.decoders = decoders;
380
- }
381
- /**
382
- * @template {string} OtherPrefix
383
- * @param {API.UnibaseDecoder<OtherPrefix>|ComposedDecoder<OtherPrefix>} decoder
384
- * @returns {ComposedDecoder<Prefix|OtherPrefix>}
385
- */
386
- or(decoder) {
387
- return or(this, decoder);
388
- }
389
- /**
390
- * @param {string} input
391
- * @returns {Uint8Array}
392
- */
393
- decode(input) {
394
- const prefix = (
395
- /** @type {Prefix} */
396
- input[0]
397
- );
398
- const decoder = this.decoders[prefix];
399
- if (decoder) {
400
- return decoder.decode(input);
401
- } else {
402
- throw RangeError(`Unable to decode multibase string ${JSON.stringify(input)}, only inputs prefixed with ${Object.keys(this.decoders)} are supported`);
403
- }
404
- }
405
- };
406
- var or = (left, right) => new ComposedDecoder(
407
- /** @type {Decoders<L|R>} */
408
- {
409
- ...left.decoders || { [
410
- /** @type API.UnibaseDecoder<L> */
411
- left.prefix
412
- ]: left },
413
- ...right.decoders || { [
414
- /** @type API.UnibaseDecoder<R> */
415
- right.prefix
416
- ]: right }
417
- }
418
- );
419
- var Codec = class {
420
- /**
421
- * @param {Base} name
422
- * @param {Prefix} prefix
423
- * @param {(bytes:Uint8Array) => string} baseEncode
424
- * @param {(text:string) => Uint8Array} baseDecode
425
- */
426
- constructor(name, prefix, baseEncode, baseDecode) {
427
- this.name = name;
428
- this.prefix = prefix;
429
- this.baseEncode = baseEncode;
430
- this.baseDecode = baseDecode;
431
- this.encoder = new Encoder(name, prefix, baseEncode);
432
- this.decoder = new Decoder(name, prefix, baseDecode);
433
- }
434
- /**
435
- * @param {Uint8Array} input
436
- */
437
- encode(input) {
438
- return this.encoder.encode(input);
439
- }
440
- /**
441
- * @param {string} input
442
- */
443
- decode(input) {
444
- return this.decoder.decode(input);
445
- }
446
- };
447
- var from = ({ name, prefix, encode: encode3, decode: decode5 }) => new Codec(name, prefix, encode3, decode5);
448
- var baseX = ({ prefix, name, alphabet }) => {
449
- const { encode: encode3, decode: decode5 } = base_x_default(alphabet, name);
450
- return from({
451
- prefix,
452
- name,
453
- encode: encode3,
454
- /**
455
- * @param {string} text
456
- */
457
- decode: (text) => coerce(decode5(text))
458
- });
459
- };
460
- var decode4 = (string, alphabet, bitsPerChar, name) => {
461
- const codes = {};
462
- for (let i = 0; i < alphabet.length; ++i) {
463
- codes[alphabet[i]] = i;
464
- }
465
- let end = string.length;
466
- while (string[end - 1] === "=") {
467
- --end;
468
- }
469
- const out = new Uint8Array(end * bitsPerChar / 8 | 0);
470
- let bits = 0;
471
- let buffer = 0;
472
- let written = 0;
473
- for (let i = 0; i < end; ++i) {
474
- const value = codes[string[i]];
475
- if (value === void 0) {
476
- throw new SyntaxError(`Non-${name} character`);
477
- }
478
- buffer = buffer << bitsPerChar | value;
479
- bits += bitsPerChar;
480
- if (bits >= 8) {
481
- bits -= 8;
482
- out[written++] = 255 & buffer >> bits;
483
- }
484
- }
485
- if (bits >= bitsPerChar || 255 & buffer << 8 - bits) {
486
- throw new SyntaxError("Unexpected end of data");
487
- }
488
- return out;
489
- };
490
- var encode2 = (data, alphabet, bitsPerChar) => {
491
- const pad = alphabet[alphabet.length - 1] === "=";
492
- const mask = (1 << bitsPerChar) - 1;
493
- let out = "";
494
- let bits = 0;
495
- let buffer = 0;
496
- for (let i = 0; i < data.length; ++i) {
497
- buffer = buffer << 8 | data[i];
498
- bits += 8;
499
- while (bits > bitsPerChar) {
500
- bits -= bitsPerChar;
501
- out += alphabet[mask & buffer >> bits];
502
- }
503
- }
504
- if (bits) {
505
- out += alphabet[mask & buffer << bitsPerChar - bits];
506
- }
507
- if (pad) {
508
- while (out.length * bitsPerChar & 7) {
509
- out += "=";
510
- }
511
- }
512
- return out;
513
- };
514
- var rfc4648 = ({ name, prefix, bitsPerChar, alphabet }) => {
515
- return from({
516
- prefix,
517
- name,
518
- encode(input) {
519
- return encode2(input, alphabet, bitsPerChar);
520
- },
521
- decode(input) {
522
- return decode4(input, alphabet, bitsPerChar, name);
523
- }
524
- });
525
- };
526
-
527
- // node_modules/multiformats/src/bases/base58.js
528
- var base58btc = baseX({
529
- name: "base58btc",
530
- prefix: "z",
531
- alphabet: "123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"
532
- });
533
- var base58flickr = baseX({
534
- name: "base58flickr",
535
- prefix: "Z",
536
- alphabet: "123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"
537
- });
538
-
539
- // node_modules/multiformats/src/bases/base32.js
540
- var base32 = rfc4648({
541
- prefix: "b",
542
- name: "base32",
543
- alphabet: "abcdefghijklmnopqrstuvwxyz234567",
544
- bitsPerChar: 5
545
- });
546
- var base32upper = rfc4648({
547
- prefix: "B",
548
- name: "base32upper",
549
- alphabet: "ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",
550
- bitsPerChar: 5
551
- });
552
- var base32pad = rfc4648({
553
- prefix: "c",
554
- name: "base32pad",
555
- alphabet: "abcdefghijklmnopqrstuvwxyz234567=",
556
- bitsPerChar: 5
557
- });
558
- var base32padupper = rfc4648({
559
- prefix: "C",
560
- name: "base32padupper",
561
- alphabet: "ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",
562
- bitsPerChar: 5
563
- });
564
- var base32hex = rfc4648({
565
- prefix: "v",
566
- name: "base32hex",
567
- alphabet: "0123456789abcdefghijklmnopqrstuv",
568
- bitsPerChar: 5
569
- });
570
- var base32hexupper = rfc4648({
571
- prefix: "V",
572
- name: "base32hexupper",
573
- alphabet: "0123456789ABCDEFGHIJKLMNOPQRSTUV",
574
- bitsPerChar: 5
575
- });
576
- var base32hexpad = rfc4648({
577
- prefix: "t",
578
- name: "base32hexpad",
579
- alphabet: "0123456789abcdefghijklmnopqrstuv=",
580
- bitsPerChar: 5
581
- });
582
- var base32hexpadupper = rfc4648({
583
- prefix: "T",
584
- name: "base32hexpadupper",
585
- alphabet: "0123456789ABCDEFGHIJKLMNOPQRSTUV=",
586
- bitsPerChar: 5
587
- });
588
- var base32z = rfc4648({
589
- prefix: "h",
590
- name: "base32z",
591
- alphabet: "ybndrfg8ejkmcpqxot1uwisza345h769",
592
- bitsPerChar: 5
593
- });
594
-
595
- // node_modules/multiformats/src/cid.js
596
- var format = (link, base2) => {
597
- const { bytes, version } = link;
598
- switch (version) {
599
- case 0:
600
- return toStringV0(
601
- bytes,
602
- baseCache(link),
603
- /** @type {API.MultibaseEncoder<"z">} */
604
- base2 || base58btc.encoder
605
- );
606
- default:
607
- return toStringV1(
608
- bytes,
609
- baseCache(link),
610
- /** @type {API.MultibaseEncoder<Prefix>} */
611
- base2 || base32.encoder
612
- );
613
- }
614
- };
615
- var cache = /* @__PURE__ */ new WeakMap();
616
- var baseCache = (cid) => {
617
- const baseCache2 = cache.get(cid);
618
- if (baseCache2 == null) {
619
- const baseCache3 = /* @__PURE__ */ new Map();
620
- cache.set(cid, baseCache3);
621
- return baseCache3;
622
- }
623
- return baseCache2;
624
- };
625
- var CID = class _CID {
626
- /**
627
- * @param {Version} version - Version of the CID
628
- * @param {Format} code - Code of the codec content is encoded in, see https://github.com/multiformats/multicodec/blob/master/table.csv
629
- * @param {API.MultihashDigest<Alg>} multihash - (Multi)hash of the of the content.
630
- * @param {Uint8Array} bytes
631
- *
632
- */
633
- constructor(version, code, multihash, bytes) {
634
- this.code = code;
635
- this.version = version;
636
- this.multihash = multihash;
637
- this.bytes = bytes;
638
- this["/"] = bytes;
639
- }
640
- /**
641
- * Signalling `cid.asCID === cid` has been replaced with `cid['/'] === cid.bytes`
642
- * please either use `CID.asCID(cid)` or switch to new signalling mechanism
643
- *
644
- * @deprecated
645
- */
646
- get asCID() {
647
- return this;
648
- }
649
- // ArrayBufferView
650
- get byteOffset() {
651
- return this.bytes.byteOffset;
652
- }
653
- // ArrayBufferView
654
- get byteLength() {
655
- return this.bytes.byteLength;
656
- }
657
- /**
658
- * @returns {CID<Data, API.DAG_PB, API.SHA_256, 0>}
659
- */
660
- toV0() {
661
- switch (this.version) {
662
- case 0: {
663
- return (
664
- /** @type {CID<Data, API.DAG_PB, API.SHA_256, 0>} */
665
- this
666
- );
667
- }
668
- case 1: {
669
- const { code, multihash } = this;
670
- if (code !== DAG_PB_CODE) {
671
- throw new Error("Cannot convert a non dag-pb CID to CIDv0");
672
- }
673
- if (multihash.code !== SHA_256_CODE) {
674
- throw new Error("Cannot convert non sha2-256 multihash CID to CIDv0");
675
- }
676
- return (
677
- /** @type {CID<Data, API.DAG_PB, API.SHA_256, 0>} */
678
- _CID.createV0(
679
- /** @type {API.MultihashDigest<API.SHA_256>} */
680
- multihash
681
- )
682
- );
683
- }
684
- default: {
685
- throw Error(
686
- `Can not convert CID version ${this.version} to version 0. This is a bug please report`
687
- );
688
- }
689
- }
690
- }
691
- /**
692
- * @returns {CID<Data, Format, Alg, 1>}
693
- */
694
- toV1() {
695
- switch (this.version) {
696
- case 0: {
697
- const { code, digest } = this.multihash;
698
- const multihash = create(code, digest);
699
- return (
700
- /** @type {CID<Data, Format, Alg, 1>} */
701
- _CID.createV1(this.code, multihash)
702
- );
703
- }
704
- case 1: {
705
- return (
706
- /** @type {CID<Data, Format, Alg, 1>} */
707
- this
708
- );
709
- }
710
- default: {
711
- throw Error(
712
- `Can not convert CID version ${this.version} to version 1. This is a bug please report`
713
- );
714
- }
715
- }
716
- }
717
- /**
718
- * @param {unknown} other
719
- * @returns {other is CID<Data, Format, Alg, Version>}
720
- */
721
- equals(other) {
722
- return _CID.equals(this, other);
723
- }
724
- /**
725
- * @template {unknown} Data
726
- * @template {number} Format
727
- * @template {number} Alg
728
- * @template {API.Version} Version
729
- * @param {API.Link<Data, Format, Alg, Version>} self
730
- * @param {unknown} other
731
- * @returns {other is CID}
732
- */
733
- static equals(self, other) {
734
- const unknown = (
735
- /** @type {{code?:unknown, version?:unknown, multihash?:unknown}} */
736
- other
737
- );
738
- return unknown && self.code === unknown.code && self.version === unknown.version && equals2(self.multihash, unknown.multihash);
739
- }
740
- /**
741
- * @param {API.MultibaseEncoder<string>} [base]
742
- * @returns {string}
743
- */
744
- toString(base2) {
745
- return format(this, base2);
746
- }
747
- toJSON() {
748
- return { "/": format(this) };
749
- }
750
- link() {
751
- return this;
752
- }
753
- get [Symbol.toStringTag]() {
754
- return "CID";
755
- }
756
- // Legacy
757
- [Symbol.for("nodejs.util.inspect.custom")]() {
758
- return `CID(${this.toString()})`;
759
- }
760
- /**
761
- * Takes any input `value` and returns a `CID` instance if it was
762
- * a `CID` otherwise returns `null`. If `value` is instanceof `CID`
763
- * it will return value back. If `value` is not instance of this CID
764
- * class, but is compatible CID it will return new instance of this
765
- * `CID` class. Otherwise returns null.
766
- *
767
- * This allows two different incompatible versions of CID library to
768
- * co-exist and interop as long as binary interface is compatible.
769
- *
770
- * @template {unknown} Data
771
- * @template {number} Format
772
- * @template {number} Alg
773
- * @template {API.Version} Version
774
- * @template {unknown} U
775
- * @param {API.Link<Data, Format, Alg, Version>|U} input
776
- * @returns {CID<Data, Format, Alg, Version>|null}
777
- */
778
- static asCID(input) {
779
- if (input == null) {
780
- return null;
781
- }
782
- const value = (
783
- /** @type {any} */
784
- input
785
- );
786
- if (value instanceof _CID) {
787
- return value;
788
- } else if (value["/"] != null && value["/"] === value.bytes || value.asCID === value) {
789
- const { version, code, multihash, bytes } = value;
790
- return new _CID(
791
- version,
792
- code,
793
- /** @type {API.MultihashDigest<Alg>} */
794
- multihash,
795
- bytes || encodeCID(version, code, multihash.bytes)
796
- );
797
- } else if (value[cidSymbol] === true) {
798
- const { version, multihash, code } = value;
799
- const digest = (
800
- /** @type {API.MultihashDigest<Alg>} */
801
- decode3(multihash)
802
- );
803
- return _CID.create(version, code, digest);
804
- } else {
805
- return null;
806
- }
807
- }
808
- /**
809
- *
810
- * @template {unknown} Data
811
- * @template {number} Format
812
- * @template {number} Alg
813
- * @template {API.Version} Version
814
- * @param {Version} version - Version of the CID
815
- * @param {Format} code - Code of the codec content is encoded in, see https://github.com/multiformats/multicodec/blob/master/table.csv
816
- * @param {API.MultihashDigest<Alg>} digest - (Multi)hash of the of the content.
817
- * @returns {CID<Data, Format, Alg, Version>}
818
- */
819
- static create(version, code, digest) {
820
- if (typeof code !== "number") {
821
- throw new Error("String codecs are no longer supported");
822
- }
823
- if (!(digest.bytes instanceof Uint8Array)) {
824
- throw new Error("Invalid digest");
825
- }
826
- switch (version) {
827
- case 0: {
828
- if (code !== DAG_PB_CODE) {
829
- throw new Error(
830
- `Version 0 CID must use dag-pb (code: ${DAG_PB_CODE}) block encoding`
831
- );
832
- } else {
833
- return new _CID(version, code, digest, digest.bytes);
834
- }
835
- }
836
- case 1: {
837
- const bytes = encodeCID(version, code, digest.bytes);
838
- return new _CID(version, code, digest, bytes);
839
- }
840
- default: {
841
- throw new Error("Invalid version");
842
- }
843
- }
844
- }
845
- /**
846
- * Simplified version of `create` for CIDv0.
847
- *
848
- * @template {unknown} [T=unknown]
849
- * @param {API.MultihashDigest<typeof SHA_256_CODE>} digest - Multihash.
850
- * @returns {CID<T, typeof DAG_PB_CODE, typeof SHA_256_CODE, 0>}
851
- */
852
- static createV0(digest) {
853
- return _CID.create(0, DAG_PB_CODE, digest);
854
- }
855
- /**
856
- * Simplified version of `create` for CIDv1.
857
- *
858
- * @template {unknown} Data
859
- * @template {number} Code
860
- * @template {number} Alg
861
- * @param {Code} code - Content encoding format code.
862
- * @param {API.MultihashDigest<Alg>} digest - Miltihash of the content.
863
- * @returns {CID<Data, Code, Alg, 1>}
864
- */
865
- static createV1(code, digest) {
866
- return _CID.create(1, code, digest);
867
- }
868
- /**
869
- * Decoded a CID from its binary representation. The byte array must contain
870
- * only the CID with no additional bytes.
871
- *
872
- * An error will be thrown if the bytes provided do not contain a valid
873
- * binary representation of a CID.
874
- *
875
- * @template {unknown} Data
876
- * @template {number} Code
877
- * @template {number} Alg
878
- * @template {API.Version} Ver
879
- * @param {API.ByteView<API.Link<Data, Code, Alg, Ver>>} bytes
880
- * @returns {CID<Data, Code, Alg, Ver>}
881
- */
882
- static decode(bytes) {
883
- const [cid, remainder] = _CID.decodeFirst(bytes);
884
- if (remainder.length) {
885
- throw new Error("Incorrect length");
886
- }
887
- return cid;
888
- }
889
- /**
890
- * Decoded a CID from its binary representation at the beginning of a byte
891
- * array.
892
- *
893
- * Returns an array with the first element containing the CID and the second
894
- * element containing the remainder of the original byte array. The remainder
895
- * will be a zero-length byte array if the provided bytes only contained a
896
- * binary CID representation.
897
- *
898
- * @template {unknown} T
899
- * @template {number} C
900
- * @template {number} A
901
- * @template {API.Version} V
902
- * @param {API.ByteView<API.Link<T, C, A, V>>} bytes
903
- * @returns {[CID<T, C, A, V>, Uint8Array]}
904
- */
905
- static decodeFirst(bytes) {
906
- const specs = _CID.inspectBytes(bytes);
907
- const prefixSize = specs.size - specs.multihashSize;
908
- const multihashBytes = coerce(
909
- bytes.subarray(prefixSize, prefixSize + specs.multihashSize)
910
- );
911
- if (multihashBytes.byteLength !== specs.multihashSize) {
912
- throw new Error("Incorrect length");
913
- }
914
- const digestBytes = multihashBytes.subarray(
915
- specs.multihashSize - specs.digestSize
916
- );
917
- const digest = new Digest(
918
- specs.multihashCode,
919
- specs.digestSize,
920
- digestBytes,
921
- multihashBytes
922
- );
923
- const cid = specs.version === 0 ? _CID.createV0(
924
- /** @type {API.MultihashDigest<API.SHA_256>} */
925
- digest
926
- ) : _CID.createV1(specs.codec, digest);
927
- return [
928
- /** @type {CID<T, C, A, V>} */
929
- cid,
930
- bytes.subarray(specs.size)
931
- ];
932
- }
933
- /**
934
- * Inspect the initial bytes of a CID to determine its properties.
935
- *
936
- * Involves decoding up to 4 varints. Typically this will require only 4 to 6
937
- * bytes but for larger multicodec code values and larger multihash digest
938
- * lengths these varints can be quite large. It is recommended that at least
939
- * 10 bytes be made available in the `initialBytes` argument for a complete
940
- * inspection.
941
- *
942
- * @template {unknown} T
943
- * @template {number} C
944
- * @template {number} A
945
- * @template {API.Version} V
946
- * @param {API.ByteView<API.Link<T, C, A, V>>} initialBytes
947
- * @returns {{ version:V, codec:C, multihashCode:A, digestSize:number, multihashSize:number, size:number }}
948
- */
949
- static inspectBytes(initialBytes) {
950
- let offset = 0;
951
- const next = () => {
952
- const [i, length2] = decode2(initialBytes.subarray(offset));
953
- offset += length2;
954
- return i;
955
- };
956
- let version = (
957
- /** @type {V} */
958
- next()
959
- );
960
- let codec = (
961
- /** @type {C} */
962
- DAG_PB_CODE
963
- );
964
- if (
965
- /** @type {number} */
966
- version === 18
967
- ) {
968
- version = /** @type {V} */
969
- 0;
970
- offset = 0;
971
- } else {
972
- codec = /** @type {C} */
973
- next();
974
- }
975
- if (version !== 0 && version !== 1) {
976
- throw new RangeError(`Invalid CID version ${version}`);
977
- }
978
- const prefixSize = offset;
979
- const multihashCode = (
980
- /** @type {A} */
981
- next()
982
- );
983
- const digestSize = next();
984
- const size = offset + digestSize;
985
- const multihashSize = size - prefixSize;
986
- return { version, codec, multihashCode, digestSize, multihashSize, size };
987
- }
988
- /**
989
- * Takes cid in a string representation and creates an instance. If `base`
990
- * decoder is not provided will use a default from the configuration. It will
991
- * throw an error if encoding of the CID is not compatible with supplied (or
992
- * a default decoder).
993
- *
994
- * @template {string} Prefix
995
- * @template {unknown} Data
996
- * @template {number} Code
997
- * @template {number} Alg
998
- * @template {API.Version} Ver
999
- * @param {API.ToString<API.Link<Data, Code, Alg, Ver>, Prefix>} source
1000
- * @param {API.MultibaseDecoder<Prefix>} [base]
1001
- * @returns {CID<Data, Code, Alg, Ver>}
1002
- */
1003
- static parse(source, base2) {
1004
- const [prefix, bytes] = parseCIDtoBytes(source, base2);
1005
- const cid = _CID.decode(bytes);
1006
- if (cid.version === 0 && source[0] !== "Q") {
1007
- throw Error("Version 0 CID string must not include multibase prefix");
1008
- }
1009
- baseCache(cid).set(prefix, source);
1010
- return cid;
1011
- }
1012
- };
1013
- var parseCIDtoBytes = (source, base2) => {
1014
- switch (source[0]) {
1015
- case "Q": {
1016
- const decoder = base2 || base58btc;
1017
- return [
1018
- /** @type {Prefix} */
1019
- base58btc.prefix,
1020
- decoder.decode(`${base58btc.prefix}${source}`)
1021
- ];
1022
- }
1023
- case base58btc.prefix: {
1024
- const decoder = base2 || base58btc;
1025
- return [
1026
- /** @type {Prefix} */
1027
- base58btc.prefix,
1028
- decoder.decode(source)
1029
- ];
1030
- }
1031
- case base32.prefix: {
1032
- const decoder = base2 || base32;
1033
- return [
1034
- /** @type {Prefix} */
1035
- base32.prefix,
1036
- decoder.decode(source)
1037
- ];
1038
- }
1039
- default: {
1040
- if (base2 == null) {
1041
- throw Error(
1042
- "To parse non base32 or base58btc encoded CID multibase decoder must be provided"
1043
- );
1044
- }
1045
- return [
1046
- /** @type {Prefix} */
1047
- source[0],
1048
- base2.decode(source)
1049
- ];
1050
- }
1051
- }
1052
- };
1053
- var toStringV0 = (bytes, cache2, base2) => {
1054
- const { prefix } = base2;
1055
- if (prefix !== base58btc.prefix) {
1056
- throw Error(`Cannot string encode V0 in ${base2.name} encoding`);
1057
- }
1058
- const cid = cache2.get(prefix);
1059
- if (cid == null) {
1060
- const cid2 = base2.encode(bytes).slice(1);
1061
- cache2.set(prefix, cid2);
1062
- return cid2;
1063
- } else {
1064
- return cid;
1065
- }
1066
- };
1067
- var toStringV1 = (bytes, cache2, base2) => {
1068
- const { prefix } = base2;
1069
- const cid = cache2.get(prefix);
1070
- if (cid == null) {
1071
- const cid2 = base2.encode(bytes);
1072
- cache2.set(prefix, cid2);
1073
- return cid2;
1074
- } else {
1075
- return cid;
1076
- }
1077
- };
1078
- var DAG_PB_CODE = 112;
1079
- var SHA_256_CODE = 18;
1080
- var encodeCID = (version, code, multihash) => {
1081
- const codeOffset = encodingLength(version);
1082
- const hashOffset = codeOffset + encodingLength(code);
1083
- const bytes = new Uint8Array(hashOffset + multihash.byteLength);
1084
- encodeTo(version, bytes, 0);
1085
- encodeTo(code, bytes, codeOffset);
1086
- bytes.set(multihash, hashOffset);
1087
- return bytes;
1088
- };
1089
- var cidSymbol = Symbol.for("@ipld/js-cid/CID");
1090
-
1091
- // node_modules/multiformats/src/link.js
1092
- var parse = (source, base2) => CID.parse(source, base2);
1093
-
1094
- // src/store.ts
1095
- var StoredHeader = class {
1096
- car;
1097
- constructor(jsonHeader) {
1098
- this.car = parse(jsonHeader.car);
1099
- }
1100
- };
1101
- var HeaderStore = class {
1102
- name;
1103
- constructor(name) {
1104
- this.name = name;
1105
- }
1106
- makeHeader(car) {
1107
- return JSON.stringify({ car: car.toString() });
1108
- }
1109
- parseHeader(headerData) {
1110
- const header = JSON.parse(headerData);
1111
- return new StoredHeader(header);
1112
- }
1113
- };
1114
- var CarStore = class {
1115
- name;
1116
- constructor(name) {
1117
- this.name = name;
1118
- }
1119
- };
1120
- // Annotate the CommonJS export names for ESM import in node:
1121
- 0 && (module.exports = {
1122
- CarStore,
1123
- HeaderStore,
1124
- StoredHeader
1125
- });
1126
- //# sourceMappingURL=store.cjs.js.map