@automerge/sedimentree 0.4.0-alpha.0

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 (37) hide show
  1. package/README.md +14 -0
  2. package/dist/@automerge/sedimentree.wasm +0 -0
  3. package/dist/cjs/node.cjs +1 -0
  4. package/dist/cjs/slim.cjs +1668 -0
  5. package/dist/cjs/wasm-base64.cjs +1 -0
  6. package/dist/cjs/web.cjs +1619 -0
  7. package/dist/esm/bundler.js +1 -0
  8. package/dist/esm/node.js +1 -0
  9. package/dist/esm/slim.js +2 -0
  10. package/dist/esm/wasm-base64.js +1 -0
  11. package/dist/esm/web.js +5 -0
  12. package/dist/esm/workerd.js +5 -0
  13. package/dist/iife/index.js +1603 -0
  14. package/dist/index.d.ts +445 -0
  15. package/dist/wasm_bindgen/bundler/sedimentree_wasm.d.ts +445 -0
  16. package/dist/wasm_bindgen/bundler/sedimentree_wasm.js +9 -0
  17. package/dist/wasm_bindgen/bundler/sedimentree_wasm_bg.js +1617 -0
  18. package/dist/wasm_bindgen/bundler/sedimentree_wasm_bg.wasm +0 -0
  19. package/dist/wasm_bindgen/bundler/sedimentree_wasm_bg.wasm.d.ts +90 -0
  20. package/dist/wasm_bindgen/bundler/snippets/sedimentree_wasm-02bbe03284226492/inline0.js +2 -0
  21. package/dist/wasm_bindgen/bundler/snippets/sedimentree_wasm-02bbe03284226492/inline1.js +2 -0
  22. package/dist/wasm_bindgen/bundler/snippets/sedimentree_wasm-02bbe03284226492/inline2.js +2 -0
  23. package/dist/wasm_bindgen/nodejs/sedimentree_wasm.cjs +1635 -0
  24. package/dist/wasm_bindgen/nodejs/sedimentree_wasm.d.ts +445 -0
  25. package/dist/wasm_bindgen/nodejs/sedimentree_wasm_bg.wasm +0 -0
  26. package/dist/wasm_bindgen/nodejs/sedimentree_wasm_bg.wasm.d.ts +90 -0
  27. package/dist/wasm_bindgen/nodejs/snippets/sedimentree_wasm-02bbe03284226492/inline0.js +2 -0
  28. package/dist/wasm_bindgen/nodejs/snippets/sedimentree_wasm-02bbe03284226492/inline1.js +2 -0
  29. package/dist/wasm_bindgen/nodejs/snippets/sedimentree_wasm-02bbe03284226492/inline2.js +2 -0
  30. package/dist/wasm_bindgen/web/sedimentree_wasm.d.ts +560 -0
  31. package/dist/wasm_bindgen/web/sedimentree_wasm.js +1716 -0
  32. package/dist/wasm_bindgen/web/sedimentree_wasm_bg.wasm +0 -0
  33. package/dist/wasm_bindgen/web/sedimentree_wasm_bg.wasm.d.ts +90 -0
  34. package/dist/wasm_bindgen/web/snippets/sedimentree_wasm-02bbe03284226492/inline0.js +2 -0
  35. package/dist/wasm_bindgen/web/snippets/sedimentree_wasm-02bbe03284226492/inline1.js +2 -0
  36. package/dist/wasm_bindgen/web/snippets/sedimentree_wasm-02bbe03284226492/inline2.js +2 -0
  37. package/package.json +78 -0
@@ -0,0 +1,1617 @@
1
+ /**
2
+ * A Wasm wrapper around the [`BlobMeta`] type.
3
+ */
4
+ export class BlobMeta {
5
+ static __wrap(ptr) {
6
+ ptr = ptr >>> 0;
7
+ const obj = Object.create(BlobMeta.prototype);
8
+ obj.__wbg_ptr = ptr;
9
+ BlobMetaFinalization.register(obj, obj.__wbg_ptr, obj);
10
+ return obj;
11
+ }
12
+ __destroy_into_raw() {
13
+ const ptr = this.__wbg_ptr;
14
+ this.__wbg_ptr = 0;
15
+ BlobMetaFinalization.unregister(this);
16
+ return ptr;
17
+ }
18
+ free() {
19
+ const ptr = this.__destroy_into_raw();
20
+ wasm.__wbg_blobmeta_free(ptr, 0);
21
+ }
22
+ /**
23
+ * Get the digest of the blob.
24
+ * @returns {Digest}
25
+ */
26
+ digest() {
27
+ const ret = wasm.blobmeta_digest(this.__wbg_ptr);
28
+ return Digest.__wrap(ret);
29
+ }
30
+ /**
31
+ * Create a `BlobMeta` from a digest and size.
32
+ *
33
+ * This is useful for deserialization when the original blob is not available.
34
+ * Since this is manual, the caller must ensure the digest and size are correct.
35
+ * @param {Digest} digest
36
+ * @param {bigint} size_bytes
37
+ * @returns {BlobMeta}
38
+ */
39
+ static fromDigestSize(digest, size_bytes) {
40
+ _assertClass(digest, Digest);
41
+ const ret = wasm.blobmeta_fromDigestSize(digest.__wbg_ptr, size_bytes);
42
+ return BlobMeta.__wrap(ret);
43
+ }
44
+ /**
45
+ * Create a new `BlobMeta` from the given blob contents.
46
+ * @param {Uint8Array} blob
47
+ */
48
+ constructor(blob) {
49
+ const ptr0 = passArray8ToWasm0(blob, wasm.__wbindgen_export2);
50
+ const len0 = WASM_VECTOR_LEN;
51
+ const ret = wasm.blobmeta_new(ptr0, len0);
52
+ this.__wbg_ptr = ret >>> 0;
53
+ BlobMetaFinalization.register(this, this.__wbg_ptr, this);
54
+ return this;
55
+ }
56
+ /**
57
+ * Get the size of the blob in bytes.
58
+ * @returns {bigint}
59
+ */
60
+ get sizeBytes() {
61
+ const ret = wasm.blobmeta_sizeBytes(this.__wbg_ptr);
62
+ return BigInt.asUintN(64, ret);
63
+ }
64
+ }
65
+ if (Symbol.dispose) BlobMeta.prototype[Symbol.dispose] = BlobMeta.prototype.free;
66
+
67
+ /**
68
+ * A commit stored with its associated blob.
69
+ */
70
+ export class CommitWithBlob {
71
+ static __wrap(ptr) {
72
+ ptr = ptr >>> 0;
73
+ const obj = Object.create(CommitWithBlob.prototype);
74
+ obj.__wbg_ptr = ptr;
75
+ CommitWithBlobFinalization.register(obj, obj.__wbg_ptr, obj);
76
+ return obj;
77
+ }
78
+ __destroy_into_raw() {
79
+ const ptr = this.__wbg_ptr;
80
+ this.__wbg_ptr = 0;
81
+ CommitWithBlobFinalization.unregister(this);
82
+ return ptr;
83
+ }
84
+ free() {
85
+ const ptr = this.__destroy_into_raw();
86
+ wasm.__wbg_commitwithblob_free(ptr, 0);
87
+ }
88
+ /**
89
+ * Upcasts; to the JS-import type for [`WasmCommitWithBlob`].
90
+ * @returns {CommitWithBlob}
91
+ */
92
+ __wasm_refgen_toWasmCommitWithBlob() {
93
+ const ret = wasm.commitwithblob___wasm_refgen_toWasmCommitWithBlob(this.__wbg_ptr);
94
+ return CommitWithBlob.__wrap(ret);
95
+ }
96
+ /**
97
+ * Get the blob.
98
+ * @returns {Uint8Array}
99
+ */
100
+ get blob() {
101
+ const ret = wasm.commitwithblob_blob(this.__wbg_ptr);
102
+ return takeObject(ret);
103
+ }
104
+ /**
105
+ * Create a new commit with blob.
106
+ * @param {SignedLooseCommit} signed
107
+ * @param {Uint8Array} blob
108
+ */
109
+ constructor(signed, blob) {
110
+ _assertClass(signed, SignedLooseCommit);
111
+ var ptr0 = signed.__destroy_into_raw();
112
+ const ret = wasm.commitwithblob_new(ptr0, addHeapObject(blob));
113
+ this.__wbg_ptr = ret >>> 0;
114
+ CommitWithBlobFinalization.register(this, this.__wbg_ptr, this);
115
+ return this;
116
+ }
117
+ /**
118
+ * Get the signed commit.
119
+ * @returns {SignedLooseCommit}
120
+ */
121
+ get signed() {
122
+ const ret = wasm.commitwithblob_signed(this.__wbg_ptr);
123
+ return SignedLooseCommit.__wrap(ret);
124
+ }
125
+ }
126
+ if (Symbol.dispose) CommitWithBlob.prototype[Symbol.dispose] = CommitWithBlob.prototype.free;
127
+
128
+ /**
129
+ * A JavaScript wrapper around `Depth`.
130
+ */
131
+ export class Depth {
132
+ static __wrap(ptr) {
133
+ ptr = ptr >>> 0;
134
+ const obj = Object.create(Depth.prototype);
135
+ obj.__wbg_ptr = ptr;
136
+ DepthFinalization.register(obj, obj.__wbg_ptr, obj);
137
+ return obj;
138
+ }
139
+ __destroy_into_raw() {
140
+ const ptr = this.__wbg_ptr;
141
+ this.__wbg_ptr = 0;
142
+ DepthFinalization.unregister(this);
143
+ return ptr;
144
+ }
145
+ free() {
146
+ const ptr = this.__destroy_into_raw();
147
+ wasm.__wbg_depth_free(ptr, 0);
148
+ }
149
+ /**
150
+ * Internal method for a hack crossing the JS boundary.
151
+ * @returns {Depth}
152
+ */
153
+ __subduction_castToDepth() {
154
+ const ret = wasm.depth___subduction_castToDepth(this.__wbg_ptr);
155
+ return Depth.__wrap(ret);
156
+ }
157
+ /**
158
+ * Upcasts; to the JS-import type for [`WasmDepth`].
159
+ * @returns {Depth}
160
+ */
161
+ __wasm_refgen_toWasmDepth() {
162
+ const ret = wasm.depth___subduction_castToDepth(this.__wbg_ptr);
163
+ return Depth.__wrap(ret);
164
+ }
165
+ /**
166
+ * Creates a new `WasmDepth` from a JavaScript value.
167
+ *
168
+ * # Errors
169
+ *
170
+ * Returns a `NotU32Error` if the JS value is not safely coercible to `u32`.
171
+ * @param {any} js_value
172
+ */
173
+ constructor(js_value) {
174
+ try {
175
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
176
+ wasm.depth_new(retptr, addBorrowedObject(js_value));
177
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
178
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
179
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
180
+ if (r2) {
181
+ throw takeObject(r1);
182
+ }
183
+ this.__wbg_ptr = r0 >>> 0;
184
+ DepthFinalization.register(this, this.__wbg_ptr, this);
185
+ return this;
186
+ } finally {
187
+ wasm.__wbindgen_add_to_stack_pointer(16);
188
+ heap[stack_pointer++] = undefined;
189
+ }
190
+ }
191
+ /**
192
+ * The depth value as an integer.
193
+ * @returns {number}
194
+ */
195
+ get value() {
196
+ const ret = wasm.depth_value(this.__wbg_ptr);
197
+ return ret >>> 0;
198
+ }
199
+ }
200
+ if (Symbol.dispose) Depth.prototype[Symbol.dispose] = Depth.prototype.free;
201
+
202
+ /**
203
+ * A wrapper around digest bytes for use in JavaScript via wasm-bindgen.
204
+ *
205
+ * Since JavaScript doesn't have Rust's type system, this stores raw bytes
206
+ * and converts to/from typed `Digest<T>` at the Rust boundary.
207
+ */
208
+ export class Digest {
209
+ static __wrap(ptr) {
210
+ ptr = ptr >>> 0;
211
+ const obj = Object.create(Digest.prototype);
212
+ obj.__wbg_ptr = ptr;
213
+ DigestFinalization.register(obj, obj.__wbg_ptr, obj);
214
+ return obj;
215
+ }
216
+ __destroy_into_raw() {
217
+ const ptr = this.__wbg_ptr;
218
+ this.__wbg_ptr = 0;
219
+ DigestFinalization.unregister(this);
220
+ return ptr;
221
+ }
222
+ free() {
223
+ const ptr = this.__destroy_into_raw();
224
+ wasm.__wbg_digest_free(ptr, 0);
225
+ }
226
+ /**
227
+ * Upcasts; to the JS-import type for [`WasmDigest`].
228
+ * @returns {Digest}
229
+ */
230
+ __wasm_refgen_toWasmDigest() {
231
+ const ret = wasm.digest___wasm_refgen_toWasmDigest(this.__wbg_ptr);
232
+ return Digest.__wrap(ret);
233
+ }
234
+ /**
235
+ * Creates a new digest from its Base58 string representation.
236
+ *
237
+ * # Errors
238
+ *
239
+ * Returns a `WasmInvalidDigest` error if the string cannot be decoded or is not a valid digest.
240
+ * @param {string} s
241
+ * @returns {Digest}
242
+ */
243
+ static fromBase58(s) {
244
+ try {
245
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
246
+ const ptr0 = passStringToWasm0(s, wasm.__wbindgen_export2, wasm.__wbindgen_export3);
247
+ const len0 = WASM_VECTOR_LEN;
248
+ wasm.digest_fromBase58(retptr, ptr0, len0);
249
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
250
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
251
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
252
+ if (r2) {
253
+ throw takeObject(r1);
254
+ }
255
+ return Digest.__wrap(r0);
256
+ } finally {
257
+ wasm.__wbindgen_add_to_stack_pointer(16);
258
+ }
259
+ }
260
+ /**
261
+ * Creates a new digest from its byte representation.
262
+ *
263
+ * # Errors
264
+ *
265
+ * Returns a `WasmValue` error if the byte slice is not a valid digest.
266
+ * @param {Uint8Array} bytes
267
+ * @returns {Digest}
268
+ */
269
+ static fromBytes(bytes) {
270
+ try {
271
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
272
+ const ptr0 = passArray8ToWasm0(bytes, wasm.__wbindgen_export2);
273
+ const len0 = WASM_VECTOR_LEN;
274
+ wasm.digest_fromBytes(retptr, ptr0, len0);
275
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
276
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
277
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
278
+ if (r2) {
279
+ throw takeObject(r1);
280
+ }
281
+ return Digest.__wrap(r0);
282
+ } finally {
283
+ wasm.__wbindgen_add_to_stack_pointer(16);
284
+ }
285
+ }
286
+ /**
287
+ * Creates a new digest from its hexadecimal string representation.
288
+ *
289
+ * # Errors
290
+ *
291
+ * Returns a [`WasmInvalidDigest`] if the string is not a valid digest.
292
+ * @param {string} s
293
+ * @returns {Digest}
294
+ */
295
+ static fromHexString(s) {
296
+ try {
297
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
298
+ const ptr0 = passStringToWasm0(s, wasm.__wbindgen_export2, wasm.__wbindgen_export3);
299
+ const len0 = WASM_VECTOR_LEN;
300
+ wasm.digest_fromHexString(retptr, ptr0, len0);
301
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
302
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
303
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
304
+ if (r2) {
305
+ throw takeObject(r1);
306
+ }
307
+ return Digest.__wrap(r0);
308
+ } finally {
309
+ wasm.__wbindgen_add_to_stack_pointer(16);
310
+ }
311
+ }
312
+ /**
313
+ * Creates a new digest from its byte representation.
314
+ *
315
+ * # Errors
316
+ *
317
+ * Returns a `WasmValue` error if the byte slice is not a valid digest.
318
+ * @param {Uint8Array} bytes
319
+ */
320
+ constructor(bytes) {
321
+ try {
322
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
323
+ const ptr0 = passArray8ToWasm0(bytes, wasm.__wbindgen_export2);
324
+ const len0 = WASM_VECTOR_LEN;
325
+ wasm.digest_new(retptr, ptr0, len0);
326
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
327
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
328
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
329
+ if (r2) {
330
+ throw takeObject(r1);
331
+ }
332
+ this.__wbg_ptr = r0 >>> 0;
333
+ DigestFinalization.register(this, this.__wbg_ptr, this);
334
+ return this;
335
+ } finally {
336
+ wasm.__wbindgen_add_to_stack_pointer(16);
337
+ }
338
+ }
339
+ /**
340
+ * Returns the byte representation of the digest.
341
+ * @returns {Uint8Array}
342
+ */
343
+ toBytes() {
344
+ try {
345
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
346
+ wasm.digest_toBytes(retptr, this.__wbg_ptr);
347
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
348
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
349
+ var v1 = getArrayU8FromWasm0(r0, r1).slice();
350
+ wasm.__wbindgen_export4(r0, r1 * 1, 1);
351
+ return v1;
352
+ } finally {
353
+ wasm.__wbindgen_add_to_stack_pointer(16);
354
+ }
355
+ }
356
+ /**
357
+ * Returns the hexadecimal string representation of the digest.
358
+ * @returns {string}
359
+ */
360
+ toHexString() {
361
+ let deferred1_0;
362
+ let deferred1_1;
363
+ try {
364
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
365
+ wasm.digest_toHexString(retptr, this.__wbg_ptr);
366
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
367
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
368
+ deferred1_0 = r0;
369
+ deferred1_1 = r1;
370
+ return getStringFromWasm0(r0, r1);
371
+ } finally {
372
+ wasm.__wbindgen_add_to_stack_pointer(16);
373
+ wasm.__wbindgen_export4(deferred1_0, deferred1_1, 1);
374
+ }
375
+ }
376
+ }
377
+ if (Symbol.dispose) Digest.prototype[Symbol.dispose] = Digest.prototype.free;
378
+
379
+ /**
380
+ * A data fragment used in the Sedimentree system.
381
+ */
382
+ export class Fragment {
383
+ static __wrap(ptr) {
384
+ ptr = ptr >>> 0;
385
+ const obj = Object.create(Fragment.prototype);
386
+ obj.__wbg_ptr = ptr;
387
+ FragmentFinalization.register(obj, obj.__wbg_ptr, obj);
388
+ return obj;
389
+ }
390
+ __destroy_into_raw() {
391
+ const ptr = this.__wbg_ptr;
392
+ this.__wbg_ptr = 0;
393
+ FragmentFinalization.unregister(this);
394
+ return ptr;
395
+ }
396
+ free() {
397
+ const ptr = this.__destroy_into_raw();
398
+ wasm.__wbg_fragment_free(ptr, 0);
399
+ }
400
+ /**
401
+ * Upcasts; to the JS-import type for [`WasmFragment`].
402
+ * @returns {Fragment}
403
+ */
404
+ __wasm_refgen_toWasmFragment() {
405
+ const ret = wasm.fragment___wasm_refgen_toWasmFragment(this.__wbg_ptr);
406
+ return Fragment.__wrap(ret);
407
+ }
408
+ /**
409
+ * Get the blob metadata of the fragment.
410
+ * @returns {BlobMeta}
411
+ */
412
+ get blobMeta() {
413
+ const ret = wasm.fragment_blobMeta(this.__wbg_ptr);
414
+ return BlobMeta.__wrap(ret);
415
+ }
416
+ /**
417
+ * Get the boundary digests of the fragment.
418
+ * @returns {Digest[]}
419
+ */
420
+ get boundary() {
421
+ try {
422
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
423
+ wasm.fragment_boundary(retptr, this.__wbg_ptr);
424
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
425
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
426
+ var v1 = getArrayJsValueFromWasm0(r0, r1).slice();
427
+ wasm.__wbindgen_export4(r0, r1 * 4, 4);
428
+ return v1;
429
+ } finally {
430
+ wasm.__wbindgen_add_to_stack_pointer(16);
431
+ }
432
+ }
433
+ /**
434
+ * Get the head digest of the fragment.
435
+ * @returns {Digest}
436
+ */
437
+ get head() {
438
+ const ret = wasm.fragment_head(this.__wbg_ptr);
439
+ return Digest.__wrap(ret);
440
+ }
441
+ /**
442
+ * Create a new fragment from the given sedimentree ID, head, boundary, checkpoints, and blob metadata.
443
+ * @param {SedimentreeId} sedimentree_id
444
+ * @param {Digest} head
445
+ * @param {Digest[]} boundary
446
+ * @param {Digest[]} checkpoints
447
+ * @param {BlobMeta} blob_meta
448
+ */
449
+ constructor(sedimentree_id, head, boundary, checkpoints, blob_meta) {
450
+ _assertClass(sedimentree_id, SedimentreeId);
451
+ var ptr0 = sedimentree_id.__destroy_into_raw();
452
+ _assertClass(head, Digest);
453
+ var ptr1 = head.__destroy_into_raw();
454
+ const ptr2 = passArrayJsValueToWasm0(boundary, wasm.__wbindgen_export2);
455
+ const len2 = WASM_VECTOR_LEN;
456
+ const ptr3 = passArrayJsValueToWasm0(checkpoints, wasm.__wbindgen_export2);
457
+ const len3 = WASM_VECTOR_LEN;
458
+ _assertClass(blob_meta, BlobMeta);
459
+ var ptr4 = blob_meta.__destroy_into_raw();
460
+ const ret = wasm.fragment_new(ptr0, ptr1, ptr2, len2, ptr3, len3, ptr4);
461
+ this.__wbg_ptr = ret >>> 0;
462
+ FragmentFinalization.register(this, this.__wbg_ptr, this);
463
+ return this;
464
+ }
465
+ }
466
+ if (Symbol.dispose) Fragment.prototype[Symbol.dispose] = Fragment.prototype.free;
467
+
468
+ /**
469
+ * A fragment stored with its associated blob.
470
+ */
471
+ export class FragmentWithBlob {
472
+ static __wrap(ptr) {
473
+ ptr = ptr >>> 0;
474
+ const obj = Object.create(FragmentWithBlob.prototype);
475
+ obj.__wbg_ptr = ptr;
476
+ FragmentWithBlobFinalization.register(obj, obj.__wbg_ptr, obj);
477
+ return obj;
478
+ }
479
+ __destroy_into_raw() {
480
+ const ptr = this.__wbg_ptr;
481
+ this.__wbg_ptr = 0;
482
+ FragmentWithBlobFinalization.unregister(this);
483
+ return ptr;
484
+ }
485
+ free() {
486
+ const ptr = this.__destroy_into_raw();
487
+ wasm.__wbg_fragmentwithblob_free(ptr, 0);
488
+ }
489
+ /**
490
+ * Upcasts; to the JS-import type for [`WasmFragmentWithBlob`].
491
+ * @returns {FragmentWithBlob}
492
+ */
493
+ __wasm_refgen_toWasmFragmentWithBlob() {
494
+ const ret = wasm.fragmentwithblob___wasm_refgen_toWasmFragmentWithBlob(this.__wbg_ptr);
495
+ return FragmentWithBlob.__wrap(ret);
496
+ }
497
+ /**
498
+ * Get the blob.
499
+ * @returns {Uint8Array}
500
+ */
501
+ get blob() {
502
+ const ret = wasm.commitwithblob_blob(this.__wbg_ptr);
503
+ return takeObject(ret);
504
+ }
505
+ /**
506
+ * Create a new fragment with blob.
507
+ * @param {SignedFragment} signed
508
+ * @param {Uint8Array} blob
509
+ */
510
+ constructor(signed, blob) {
511
+ _assertClass(signed, SignedFragment);
512
+ var ptr0 = signed.__destroy_into_raw();
513
+ const ret = wasm.commitwithblob_new(ptr0, addHeapObject(blob));
514
+ this.__wbg_ptr = ret >>> 0;
515
+ FragmentWithBlobFinalization.register(this, this.__wbg_ptr, this);
516
+ return this;
517
+ }
518
+ /**
519
+ * Get the signed fragment.
520
+ * @returns {SignedFragment}
521
+ */
522
+ get signed() {
523
+ const ret = wasm.fragmentwithblob_signed(this.__wbg_ptr);
524
+ return SignedFragment.__wrap(ret);
525
+ }
526
+ }
527
+ if (Symbol.dispose) FragmentWithBlob.prototype[Symbol.dispose] = FragmentWithBlob.prototype.free;
528
+
529
+ export class FragmentsArray {
530
+ static __wrap(ptr) {
531
+ ptr = ptr >>> 0;
532
+ const obj = Object.create(FragmentsArray.prototype);
533
+ obj.__wbg_ptr = ptr;
534
+ FragmentsArrayFinalization.register(obj, obj.__wbg_ptr, obj);
535
+ return obj;
536
+ }
537
+ __destroy_into_raw() {
538
+ const ptr = this.__wbg_ptr;
539
+ this.__wbg_ptr = 0;
540
+ FragmentsArrayFinalization.unregister(this);
541
+ return ptr;
542
+ }
543
+ free() {
544
+ const ptr = this.__destroy_into_raw();
545
+ wasm.__wbg_fragmentsarray_free(ptr, 0);
546
+ }
547
+ /**
548
+ * Upcasts; to the JS-import type for [`WasmFragmentsArray`].
549
+ * @returns {FragmentsArray}
550
+ */
551
+ __wasm_refgen_toWasmFragmentsArray() {
552
+ const ret = wasm.fragmentsarray___wasm_refgen_toWasmFragmentsArray(this.__wbg_ptr);
553
+ return FragmentsArray.__wrap(ret);
554
+ }
555
+ }
556
+ if (Symbol.dispose) FragmentsArray.prototype[Symbol.dispose] = FragmentsArray.prototype.free;
557
+
558
+ /**
559
+ * A Wasm wrapper around the [`LooseCommit`] type.
560
+ */
561
+ export class LooseCommit {
562
+ static __wrap(ptr) {
563
+ ptr = ptr >>> 0;
564
+ const obj = Object.create(LooseCommit.prototype);
565
+ obj.__wbg_ptr = ptr;
566
+ LooseCommitFinalization.register(obj, obj.__wbg_ptr, obj);
567
+ return obj;
568
+ }
569
+ __destroy_into_raw() {
570
+ const ptr = this.__wbg_ptr;
571
+ this.__wbg_ptr = 0;
572
+ LooseCommitFinalization.unregister(this);
573
+ return ptr;
574
+ }
575
+ free() {
576
+ const ptr = this.__destroy_into_raw();
577
+ wasm.__wbg_loosecommit_free(ptr, 0);
578
+ }
579
+ /**
580
+ * Upcasts; to the JS-import type for [`WasmLooseCommit`].
581
+ * @returns {LooseCommit}
582
+ */
583
+ __wasm_refgen_toWasmLooseCommit() {
584
+ const ret = wasm.loosecommit___wasm_refgen_toWasmLooseCommit(this.__wbg_ptr);
585
+ return LooseCommit.__wrap(ret);
586
+ }
587
+ /**
588
+ * Get the blob metadata of the commit.
589
+ * @returns {BlobMeta}
590
+ */
591
+ get blobMeta() {
592
+ const ret = wasm.loosecommit_blobMeta(this.__wbg_ptr);
593
+ return BlobMeta.__wrap(ret);
594
+ }
595
+ /**
596
+ * Get the digest of the commit.
597
+ * @returns {Digest}
598
+ */
599
+ get digest() {
600
+ const ret = wasm.loosecommit_digest(this.__wbg_ptr);
601
+ return Digest.__wrap(ret);
602
+ }
603
+ /**
604
+ * Create a new `LooseCommit` from the given sedimentree ID, parents, and blob metadata.
605
+ * @param {SedimentreeId} sedimentree_id
606
+ * @param {Digest[]} parents
607
+ * @param {BlobMeta} blob_meta
608
+ */
609
+ constructor(sedimentree_id, parents, blob_meta) {
610
+ _assertClass(sedimentree_id, SedimentreeId);
611
+ var ptr0 = sedimentree_id.__destroy_into_raw();
612
+ const ptr1 = passArrayJsValueToWasm0(parents, wasm.__wbindgen_export2);
613
+ const len1 = WASM_VECTOR_LEN;
614
+ _assertClass(blob_meta, BlobMeta);
615
+ const ret = wasm.loosecommit_new(ptr0, ptr1, len1, blob_meta.__wbg_ptr);
616
+ this.__wbg_ptr = ret >>> 0;
617
+ LooseCommitFinalization.register(this, this.__wbg_ptr, this);
618
+ return this;
619
+ }
620
+ /**
621
+ * Get the parent digests of the commit.
622
+ * @returns {Digest[]}
623
+ */
624
+ get parents() {
625
+ try {
626
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
627
+ wasm.loosecommit_parents(retptr, this.__wbg_ptr);
628
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
629
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
630
+ var v1 = getArrayJsValueFromWasm0(r0, r1).slice();
631
+ wasm.__wbindgen_export4(r0, r1 * 4, 4);
632
+ return v1;
633
+ } finally {
634
+ wasm.__wbindgen_add_to_stack_pointer(16);
635
+ }
636
+ }
637
+ }
638
+ if (Symbol.dispose) LooseCommit.prototype[Symbol.dispose] = LooseCommit.prototype.free;
639
+
640
+ /**
641
+ * An in-memory storage implementation for use in tests and development.
642
+ *
643
+ * This wraps the core `MemoryStorage` and exposes it via the `SedimentreeStorage` interface.
644
+ */
645
+ export class MemoryStorage {
646
+ __destroy_into_raw() {
647
+ const ptr = this.__wbg_ptr;
648
+ this.__wbg_ptr = 0;
649
+ MemoryStorageFinalization.unregister(this);
650
+ return ptr;
651
+ }
652
+ free() {
653
+ const ptr = this.__destroy_into_raw();
654
+ wasm.__wbg_memorystorage_free(ptr, 0);
655
+ }
656
+ /**
657
+ * Delete all commits for a sedimentree.
658
+ * @param {SedimentreeId} sedimentree_id
659
+ * @returns {Promise<any>}
660
+ */
661
+ deleteAllCommits(sedimentree_id) {
662
+ _assertClass(sedimentree_id, SedimentreeId);
663
+ const ret = wasm.memorystorage_deleteAllCommits(this.__wbg_ptr, sedimentree_id.__wbg_ptr);
664
+ return takeObject(ret);
665
+ }
666
+ /**
667
+ * Delete all fragments for a sedimentree.
668
+ * @param {SedimentreeId} sedimentree_id
669
+ * @returns {Promise<any>}
670
+ */
671
+ deleteAllFragments(sedimentree_id) {
672
+ _assertClass(sedimentree_id, SedimentreeId);
673
+ const ret = wasm.memorystorage_deleteAllFragments(this.__wbg_ptr, sedimentree_id.__wbg_ptr);
674
+ return takeObject(ret);
675
+ }
676
+ /**
677
+ * Delete a commit by digest.
678
+ * @param {SedimentreeId} sedimentree_id
679
+ * @param {Digest} digest
680
+ * @returns {Promise<any>}
681
+ */
682
+ deleteCommit(sedimentree_id, digest) {
683
+ _assertClass(sedimentree_id, SedimentreeId);
684
+ _assertClass(digest, Digest);
685
+ const ret = wasm.memorystorage_deleteCommit(this.__wbg_ptr, sedimentree_id.__wbg_ptr, digest.__wbg_ptr);
686
+ return takeObject(ret);
687
+ }
688
+ /**
689
+ * Delete a fragment by digest.
690
+ * @param {SedimentreeId} sedimentree_id
691
+ * @param {Digest} digest
692
+ * @returns {Promise<any>}
693
+ */
694
+ deleteFragment(sedimentree_id, digest) {
695
+ _assertClass(sedimentree_id, SedimentreeId);
696
+ _assertClass(digest, Digest);
697
+ const ret = wasm.memorystorage_deleteFragment(this.__wbg_ptr, sedimentree_id.__wbg_ptr, digest.__wbg_ptr);
698
+ return takeObject(ret);
699
+ }
700
+ /**
701
+ * Delete a sedimentree ID.
702
+ * @param {SedimentreeId} sedimentree_id
703
+ * @returns {Promise<any>}
704
+ */
705
+ deleteSedimentreeId(sedimentree_id) {
706
+ _assertClass(sedimentree_id, SedimentreeId);
707
+ const ret = wasm.memorystorage_deleteSedimentreeId(this.__wbg_ptr, sedimentree_id.__wbg_ptr);
708
+ return takeObject(ret);
709
+ }
710
+ /**
711
+ * List all commit digests for a sedimentree.
712
+ * @param {SedimentreeId} sedimentree_id
713
+ * @returns {Promise<any>}
714
+ */
715
+ listCommitDigests(sedimentree_id) {
716
+ _assertClass(sedimentree_id, SedimentreeId);
717
+ const ret = wasm.memorystorage_listCommitDigests(this.__wbg_ptr, sedimentree_id.__wbg_ptr);
718
+ return takeObject(ret);
719
+ }
720
+ /**
721
+ * List all fragment digests for a sedimentree.
722
+ * @param {SedimentreeId} sedimentree_id
723
+ * @returns {Promise<any>}
724
+ */
725
+ listFragmentDigests(sedimentree_id) {
726
+ _assertClass(sedimentree_id, SedimentreeId);
727
+ const ret = wasm.memorystorage_listFragmentDigests(this.__wbg_ptr, sedimentree_id.__wbg_ptr);
728
+ return takeObject(ret);
729
+ }
730
+ /**
731
+ * Load all commits for a sedimentree, returning `CommitWithBlob[]`.
732
+ * @param {SedimentreeId} sedimentree_id
733
+ * @returns {Promise<any>}
734
+ */
735
+ loadAllCommits(sedimentree_id) {
736
+ _assertClass(sedimentree_id, SedimentreeId);
737
+ const ret = wasm.memorystorage_loadAllCommits(this.__wbg_ptr, sedimentree_id.__wbg_ptr);
738
+ return takeObject(ret);
739
+ }
740
+ /**
741
+ * Load all fragments for a sedimentree, returning `FragmentWithBlob[]`.
742
+ * @param {SedimentreeId} sedimentree_id
743
+ * @returns {Promise<any>}
744
+ */
745
+ loadAllFragments(sedimentree_id) {
746
+ _assertClass(sedimentree_id, SedimentreeId);
747
+ const ret = wasm.memorystorage_loadAllFragments(this.__wbg_ptr, sedimentree_id.__wbg_ptr);
748
+ return takeObject(ret);
749
+ }
750
+ /**
751
+ * Load all sedimentree IDs.
752
+ * @returns {Promise<any>}
753
+ */
754
+ loadAllSedimentreeIds() {
755
+ const ret = wasm.memorystorage_loadAllSedimentreeIds(this.__wbg_ptr);
756
+ return takeObject(ret);
757
+ }
758
+ /**
759
+ * Load a commit by digest, returning `CommitWithBlob` or null.
760
+ * @param {SedimentreeId} sedimentree_id
761
+ * @param {Digest} digest
762
+ * @returns {Promise<any>}
763
+ */
764
+ loadCommit(sedimentree_id, digest) {
765
+ _assertClass(sedimentree_id, SedimentreeId);
766
+ _assertClass(digest, Digest);
767
+ const ret = wasm.memorystorage_loadCommit(this.__wbg_ptr, sedimentree_id.__wbg_ptr, digest.__wbg_ptr);
768
+ return takeObject(ret);
769
+ }
770
+ /**
771
+ * Load a fragment by digest, returning `FragmentWithBlob` or null.
772
+ * @param {SedimentreeId} sedimentree_id
773
+ * @param {Digest} digest
774
+ * @returns {Promise<any>}
775
+ */
776
+ loadFragment(sedimentree_id, digest) {
777
+ _assertClass(sedimentree_id, SedimentreeId);
778
+ _assertClass(digest, Digest);
779
+ const ret = wasm.memorystorage_loadFragment(this.__wbg_ptr, sedimentree_id.__wbg_ptr, digest.__wbg_ptr);
780
+ return takeObject(ret);
781
+ }
782
+ /**
783
+ * Create a new in-memory storage instance.
784
+ */
785
+ constructor() {
786
+ const ret = wasm.memorystorage_new();
787
+ this.__wbg_ptr = ret >>> 0;
788
+ MemoryStorageFinalization.register(this, this.__wbg_ptr, this);
789
+ return this;
790
+ }
791
+ /**
792
+ * Save a commit with its blob.
793
+ * @param {SedimentreeId} sedimentree_id
794
+ * @param {Digest} _digest
795
+ * @param {SignedLooseCommit} signed_commit
796
+ * @param {Uint8Array} blob
797
+ * @returns {Promise<any>}
798
+ */
799
+ saveCommit(sedimentree_id, _digest, signed_commit, blob) {
800
+ try {
801
+ _assertClass(sedimentree_id, SedimentreeId);
802
+ _assertClass(_digest, Digest);
803
+ _assertClass(signed_commit, SignedLooseCommit);
804
+ const ret = wasm.memorystorage_saveCommit(this.__wbg_ptr, sedimentree_id.__wbg_ptr, _digest.__wbg_ptr, signed_commit.__wbg_ptr, addBorrowedObject(blob));
805
+ return takeObject(ret);
806
+ } finally {
807
+ heap[stack_pointer++] = undefined;
808
+ }
809
+ }
810
+ /**
811
+ * Save a fragment with its blob.
812
+ * @param {SedimentreeId} sedimentree_id
813
+ * @param {Digest} _digest
814
+ * @param {SignedFragment} signed_fragment
815
+ * @param {Uint8Array} blob
816
+ * @returns {Promise<any>}
817
+ */
818
+ saveFragment(sedimentree_id, _digest, signed_fragment, blob) {
819
+ try {
820
+ _assertClass(sedimentree_id, SedimentreeId);
821
+ _assertClass(_digest, Digest);
822
+ _assertClass(signed_fragment, SignedFragment);
823
+ const ret = wasm.memorystorage_saveFragment(this.__wbg_ptr, sedimentree_id.__wbg_ptr, _digest.__wbg_ptr, signed_fragment.__wbg_ptr, addBorrowedObject(blob));
824
+ return takeObject(ret);
825
+ } finally {
826
+ heap[stack_pointer++] = undefined;
827
+ }
828
+ }
829
+ /**
830
+ * Save a sedimentree ID.
831
+ * @param {SedimentreeId} sedimentree_id
832
+ * @returns {Promise<any>}
833
+ */
834
+ saveSedimentreeId(sedimentree_id) {
835
+ _assertClass(sedimentree_id, SedimentreeId);
836
+ const ret = wasm.memorystorage_saveSedimentreeId(this.__wbg_ptr, sedimentree_id.__wbg_ptr);
837
+ return takeObject(ret);
838
+ }
839
+ }
840
+ if (Symbol.dispose) MemoryStorage.prototype[Symbol.dispose] = MemoryStorage.prototype.free;
841
+
842
+ /**
843
+ * The main Sedimentree data structure.
844
+ */
845
+ export class Sedimentree {
846
+ static __wrap(ptr) {
847
+ ptr = ptr >>> 0;
848
+ const obj = Object.create(Sedimentree.prototype);
849
+ obj.__wbg_ptr = ptr;
850
+ SedimentreeFinalization.register(obj, obj.__wbg_ptr, obj);
851
+ return obj;
852
+ }
853
+ __destroy_into_raw() {
854
+ const ptr = this.__wbg_ptr;
855
+ this.__wbg_ptr = 0;
856
+ SedimentreeFinalization.unregister(this);
857
+ return ptr;
858
+ }
859
+ free() {
860
+ const ptr = this.__destroy_into_raw();
861
+ wasm.__wbg_sedimentree_free(ptr, 0);
862
+ }
863
+ /**
864
+ * Create an empty Sedimentree.
865
+ * @returns {Sedimentree}
866
+ */
867
+ static empty() {
868
+ const ret = wasm.sedimentree_empty();
869
+ return Sedimentree.__wrap(ret);
870
+ }
871
+ /**
872
+ * Create a new Sedimentree from fragments and loose commits.
873
+ * @param {Fragment[]} fragments
874
+ * @param {LooseCommit[]} commits
875
+ */
876
+ constructor(fragments, commits) {
877
+ const ptr0 = passArrayJsValueToWasm0(fragments, wasm.__wbindgen_export2);
878
+ const len0 = WASM_VECTOR_LEN;
879
+ const ptr1 = passArrayJsValueToWasm0(commits, wasm.__wbindgen_export2);
880
+ const len1 = WASM_VECTOR_LEN;
881
+ const ret = wasm.sedimentree_new(ptr0, len0, ptr1, len1);
882
+ this.__wbg_ptr = ret >>> 0;
883
+ SedimentreeFinalization.register(this, this.__wbg_ptr, this);
884
+ return this;
885
+ }
886
+ }
887
+ if (Symbol.dispose) Sedimentree.prototype[Symbol.dispose] = Sedimentree.prototype.free;
888
+
889
+ /**
890
+ * A Wasm wrapper around the [`SedimentreeId`] type.
891
+ */
892
+ export class SedimentreeId {
893
+ static __wrap(ptr) {
894
+ ptr = ptr >>> 0;
895
+ const obj = Object.create(SedimentreeId.prototype);
896
+ obj.__wbg_ptr = ptr;
897
+ SedimentreeIdFinalization.register(obj, obj.__wbg_ptr, obj);
898
+ return obj;
899
+ }
900
+ __destroy_into_raw() {
901
+ const ptr = this.__wbg_ptr;
902
+ this.__wbg_ptr = 0;
903
+ SedimentreeIdFinalization.unregister(this);
904
+ return ptr;
905
+ }
906
+ free() {
907
+ const ptr = this.__destroy_into_raw();
908
+ wasm.__wbg_sedimentreeid_free(ptr, 0);
909
+ }
910
+ /**
911
+ * Upcasts; to the JS-import type for [`WasmSedimentreeId`].
912
+ * @returns {SedimentreeId}
913
+ */
914
+ __wasm_refgen_toWasmSedimentreeId() {
915
+ const ret = wasm.digest___wasm_refgen_toWasmDigest(this.__wbg_ptr);
916
+ return SedimentreeId.__wrap(ret);
917
+ }
918
+ /**
919
+ * Create an ID from a byte array.
920
+ *
921
+ * # Errors
922
+ *
923
+ * Returns `Not32Bytes` if the provided byte array is not exactly 32 bytes long.
924
+ * @param {Uint8Array} bytes
925
+ * @returns {SedimentreeId}
926
+ */
927
+ static fromBytes(bytes) {
928
+ try {
929
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
930
+ const ptr0 = passArray8ToWasm0(bytes, wasm.__wbindgen_export2);
931
+ const len0 = WASM_VECTOR_LEN;
932
+ wasm.sedimentreeid_fromBytes(retptr, ptr0, len0);
933
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
934
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
935
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
936
+ if (r2) {
937
+ throw takeObject(r1);
938
+ }
939
+ return SedimentreeId.__wrap(r0);
940
+ } finally {
941
+ wasm.__wbindgen_add_to_stack_pointer(16);
942
+ }
943
+ }
944
+ /**
945
+ * Returns the raw bytes of this ID.
946
+ * @returns {Uint8Array}
947
+ */
948
+ toBytes() {
949
+ try {
950
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
951
+ wasm.digest_toBytes(retptr, this.__wbg_ptr);
952
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
953
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
954
+ var v1 = getArrayU8FromWasm0(r0, r1).slice();
955
+ wasm.__wbindgen_export4(r0, r1 * 1, 1);
956
+ return v1;
957
+ } finally {
958
+ wasm.__wbindgen_add_to_stack_pointer(16);
959
+ }
960
+ }
961
+ /**
962
+ * Returns the string representation of the ID.
963
+ * @returns {string}
964
+ */
965
+ toString() {
966
+ let deferred1_0;
967
+ let deferred1_1;
968
+ try {
969
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
970
+ wasm.sedimentreeid_toString(retptr, this.__wbg_ptr);
971
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
972
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
973
+ deferred1_0 = r0;
974
+ deferred1_1 = r1;
975
+ return getStringFromWasm0(r0, r1);
976
+ } finally {
977
+ wasm.__wbindgen_add_to_stack_pointer(16);
978
+ wasm.__wbindgen_export4(deferred1_0, deferred1_1, 1);
979
+ }
980
+ }
981
+ }
982
+ if (Symbol.dispose) SedimentreeId.prototype[Symbol.dispose] = SedimentreeId.prototype.free;
983
+
984
+ export class SedimentreeIdsArray {
985
+ static __wrap(ptr) {
986
+ ptr = ptr >>> 0;
987
+ const obj = Object.create(SedimentreeIdsArray.prototype);
988
+ obj.__wbg_ptr = ptr;
989
+ SedimentreeIdsArrayFinalization.register(obj, obj.__wbg_ptr, obj);
990
+ return obj;
991
+ }
992
+ __destroy_into_raw() {
993
+ const ptr = this.__wbg_ptr;
994
+ this.__wbg_ptr = 0;
995
+ SedimentreeIdsArrayFinalization.unregister(this);
996
+ return ptr;
997
+ }
998
+ free() {
999
+ const ptr = this.__destroy_into_raw();
1000
+ wasm.__wbg_sedimentreeidsarray_free(ptr, 0);
1001
+ }
1002
+ /**
1003
+ * Upcasts; to the JS-import type for [`WasmSedimentreeIdsArray`].
1004
+ * @returns {SedimentreeIdsArray}
1005
+ */
1006
+ __wasm_refgen_toWasmSedimentreeIdsArray() {
1007
+ const ret = wasm.sedimentreeidsarray___wasm_refgen_toWasmSedimentreeIdsArray(this.__wbg_ptr);
1008
+ return SedimentreeIdsArray.__wrap(ret);
1009
+ }
1010
+ }
1011
+ if (Symbol.dispose) SedimentreeIdsArray.prototype[Symbol.dispose] = SedimentreeIdsArray.prototype.free;
1012
+
1013
+ /**
1014
+ * A Wasm wrapper around `Signed<Fragment>`.
1015
+ */
1016
+ export class SignedFragment {
1017
+ static __wrap(ptr) {
1018
+ ptr = ptr >>> 0;
1019
+ const obj = Object.create(SignedFragment.prototype);
1020
+ obj.__wbg_ptr = ptr;
1021
+ SignedFragmentFinalization.register(obj, obj.__wbg_ptr, obj);
1022
+ return obj;
1023
+ }
1024
+ __destroy_into_raw() {
1025
+ const ptr = this.__wbg_ptr;
1026
+ this.__wbg_ptr = 0;
1027
+ SignedFragmentFinalization.unregister(this);
1028
+ return ptr;
1029
+ }
1030
+ free() {
1031
+ const ptr = this.__destroy_into_raw();
1032
+ wasm.__wbg_signedfragment_free(ptr, 0);
1033
+ }
1034
+ /**
1035
+ * Upcasts; to the JS-import type for [`WasmSignedFragment`].
1036
+ * @returns {SignedFragment}
1037
+ */
1038
+ __wasm_refgen_toWasmSignedFragment() {
1039
+ const ret = wasm.signedfragment___wasm_refgen_toWasmSignedFragment(this.__wbg_ptr);
1040
+ return SignedFragment.__wrap(ret);
1041
+ }
1042
+ /**
1043
+ * Encode this signed fragment to raw bytes.
1044
+ * @returns {Uint8Array}
1045
+ */
1046
+ encode() {
1047
+ const ret = wasm.signedfragment_encode(this.__wbg_ptr);
1048
+ return takeObject(ret);
1049
+ }
1050
+ /**
1051
+ * Get the unsigned payload without re-verifying the signature.
1052
+ *
1053
+ * # Errors
1054
+ *
1055
+ * Returns an error if the payload cannot be decoded.
1056
+ * @returns {Fragment}
1057
+ */
1058
+ get payload() {
1059
+ try {
1060
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
1061
+ wasm.signedfragment_payload(retptr, this.__wbg_ptr);
1062
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
1063
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
1064
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
1065
+ if (r2) {
1066
+ throw takeObject(r1);
1067
+ }
1068
+ return Fragment.__wrap(r0);
1069
+ } finally {
1070
+ wasm.__wbindgen_add_to_stack_pointer(16);
1071
+ }
1072
+ }
1073
+ /**
1074
+ * Decode a `SignedFragment` from raw bytes.
1075
+ *
1076
+ * # Errors
1077
+ *
1078
+ * Returns an error if the bytes are not a valid signed fragment.
1079
+ * @param {Uint8Array} bytes
1080
+ * @returns {SignedFragment}
1081
+ */
1082
+ static tryDecode(bytes) {
1083
+ try {
1084
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
1085
+ wasm.signedfragment_tryDecode(retptr, addBorrowedObject(bytes));
1086
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
1087
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
1088
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
1089
+ if (r2) {
1090
+ throw takeObject(r1);
1091
+ }
1092
+ return SignedFragment.__wrap(r0);
1093
+ } finally {
1094
+ wasm.__wbindgen_add_to_stack_pointer(16);
1095
+ heap[stack_pointer++] = undefined;
1096
+ }
1097
+ }
1098
+ }
1099
+ if (Symbol.dispose) SignedFragment.prototype[Symbol.dispose] = SignedFragment.prototype.free;
1100
+
1101
+ /**
1102
+ * A Wasm wrapper around `Signed<LooseCommit>`.
1103
+ */
1104
+ export class SignedLooseCommit {
1105
+ static __wrap(ptr) {
1106
+ ptr = ptr >>> 0;
1107
+ const obj = Object.create(SignedLooseCommit.prototype);
1108
+ obj.__wbg_ptr = ptr;
1109
+ SignedLooseCommitFinalization.register(obj, obj.__wbg_ptr, obj);
1110
+ return obj;
1111
+ }
1112
+ __destroy_into_raw() {
1113
+ const ptr = this.__wbg_ptr;
1114
+ this.__wbg_ptr = 0;
1115
+ SignedLooseCommitFinalization.unregister(this);
1116
+ return ptr;
1117
+ }
1118
+ free() {
1119
+ const ptr = this.__destroy_into_raw();
1120
+ wasm.__wbg_signedloosecommit_free(ptr, 0);
1121
+ }
1122
+ /**
1123
+ * Upcasts; to the JS-import type for [`WasmSignedLooseCommit`].
1124
+ * @returns {SignedLooseCommit}
1125
+ */
1126
+ __wasm_refgen_toWasmSignedLooseCommit() {
1127
+ const ret = wasm.signedloosecommit___wasm_refgen_toWasmSignedLooseCommit(this.__wbg_ptr);
1128
+ return SignedLooseCommit.__wrap(ret);
1129
+ }
1130
+ /**
1131
+ * Encode this signed loose commit to raw bytes.
1132
+ * @returns {Uint8Array}
1133
+ */
1134
+ encode() {
1135
+ const ret = wasm.signedloosecommit_encode(this.__wbg_ptr);
1136
+ return takeObject(ret);
1137
+ }
1138
+ /**
1139
+ * Get the unsigned payload without re-verifying the signature.
1140
+ *
1141
+ * # Errors
1142
+ *
1143
+ * Returns an error if the payload cannot be decoded.
1144
+ * @returns {LooseCommit}
1145
+ */
1146
+ get payload() {
1147
+ try {
1148
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
1149
+ wasm.signedloosecommit_payload(retptr, this.__wbg_ptr);
1150
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
1151
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
1152
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
1153
+ if (r2) {
1154
+ throw takeObject(r1);
1155
+ }
1156
+ return LooseCommit.__wrap(r0);
1157
+ } finally {
1158
+ wasm.__wbindgen_add_to_stack_pointer(16);
1159
+ }
1160
+ }
1161
+ /**
1162
+ * Decode a `SignedLooseCommit` from raw bytes.
1163
+ *
1164
+ * # Errors
1165
+ *
1166
+ * Returns an error if the bytes are not a valid signed loose commit.
1167
+ * @param {Uint8Array} bytes
1168
+ * @returns {SignedLooseCommit}
1169
+ */
1170
+ static tryDecode(bytes) {
1171
+ try {
1172
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
1173
+ wasm.signedloosecommit_tryDecode(retptr, addBorrowedObject(bytes));
1174
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
1175
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
1176
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
1177
+ if (r2) {
1178
+ throw takeObject(r1);
1179
+ }
1180
+ return SignedLooseCommit.__wrap(r0);
1181
+ } finally {
1182
+ wasm.__wbindgen_add_to_stack_pointer(16);
1183
+ heap[stack_pointer++] = undefined;
1184
+ }
1185
+ }
1186
+ }
1187
+ if (Symbol.dispose) SignedLooseCommit.prototype[Symbol.dispose] = SignedLooseCommit.prototype.free;
1188
+ export function __wbg___wasm_refgen_toWasmDigest_66d1df4db7cdd9a2(arg0) {
1189
+ const ret = getObject(arg0).__wasm_refgen_toWasmDigest();
1190
+ _assertClass(ret, Digest);
1191
+ var ptr1 = ret.__destroy_into_raw();
1192
+ return ptr1;
1193
+ }
1194
+ export function __wbg___wasm_refgen_toWasmFragment_02267ee4c333bd43(arg0) {
1195
+ const ret = getObject(arg0).__wasm_refgen_toWasmFragment();
1196
+ _assertClass(ret, Fragment);
1197
+ var ptr1 = ret.__destroy_into_raw();
1198
+ return ptr1;
1199
+ }
1200
+ export function __wbg___wasm_refgen_toWasmLooseCommit_899ec4675da39a86(arg0) {
1201
+ const ret = getObject(arg0).__wasm_refgen_toWasmLooseCommit();
1202
+ _assertClass(ret, LooseCommit);
1203
+ var ptr1 = ret.__destroy_into_raw();
1204
+ return ptr1;
1205
+ }
1206
+ export function __wbg___wbindgen_is_function_d633e708baf0d146(arg0) {
1207
+ const ret = typeof(getObject(arg0)) === 'function';
1208
+ return ret;
1209
+ }
1210
+ export function __wbg___wbindgen_is_undefined_c18285b9fc34cb7d(arg0) {
1211
+ const ret = getObject(arg0) === undefined;
1212
+ return ret;
1213
+ }
1214
+ export function __wbg___wbindgen_number_get_5854912275df1894(arg0, arg1) {
1215
+ const obj = getObject(arg1);
1216
+ const ret = typeof(obj) === 'number' ? obj : undefined;
1217
+ getDataViewMemory0().setFloat64(arg0 + 8 * 1, isLikeNone(ret) ? 0 : ret, true);
1218
+ getDataViewMemory0().setInt32(arg0 + 4 * 0, !isLikeNone(ret), true);
1219
+ }
1220
+ export function __wbg___wbindgen_throw_39bc967c0e5a9b58(arg0, arg1) {
1221
+ throw new Error(getStringFromWasm0(arg0, arg1));
1222
+ }
1223
+ export function __wbg__wbg_cb_unref_b6d832240a919168(arg0) {
1224
+ getObject(arg0)._wbg_cb_unref();
1225
+ }
1226
+ export function __wbg_call_08ad0d89caa7cb79() { return handleError(function (arg0, arg1, arg2) {
1227
+ const ret = getObject(arg0).call(getObject(arg1), getObject(arg2));
1228
+ return addHeapObject(ret);
1229
+ }, arguments); }
1230
+ export function __wbg_commitwithblob_new(arg0) {
1231
+ const ret = CommitWithBlob.__wrap(arg0);
1232
+ return addHeapObject(ret);
1233
+ }
1234
+ export function __wbg_digest_new(arg0) {
1235
+ const ret = Digest.__wrap(arg0);
1236
+ return addHeapObject(ret);
1237
+ }
1238
+ export function __wbg_fragmentwithblob_new(arg0) {
1239
+ const ret = FragmentWithBlob.__wrap(arg0);
1240
+ return addHeapObject(ret);
1241
+ }
1242
+ export function __wbg_isSafeInteger_10e4151eb694e42a(arg0) {
1243
+ const ret = Number.isSafeInteger(getObject(arg0));
1244
+ return ret;
1245
+ }
1246
+ export function __wbg_length_5855c1f289dfffc1(arg0) {
1247
+ const ret = getObject(arg0).length;
1248
+ return ret;
1249
+ }
1250
+ export function __wbg_new_1213b57bccbdbb66(arg0, arg1) {
1251
+ const ret = new Error(getStringFromWasm0(arg0, arg1));
1252
+ return addHeapObject(ret);
1253
+ }
1254
+ export function __wbg_new_cbee8c0d5c479eac() {
1255
+ const ret = new Array();
1256
+ return addHeapObject(ret);
1257
+ }
1258
+ export function __wbg_new_from_slice_d7e202fdbee3c396(arg0, arg1) {
1259
+ const ret = new Uint8Array(getArrayU8FromWasm0(arg0, arg1));
1260
+ return addHeapObject(ret);
1261
+ }
1262
+ export function __wbg_new_typed_8258a0d8488ef2a2(arg0, arg1) {
1263
+ try {
1264
+ var state0 = {a: arg0, b: arg1};
1265
+ var cb0 = (arg0, arg1) => {
1266
+ const a = state0.a;
1267
+ state0.a = 0;
1268
+ try {
1269
+ return __wasm_bindgen_func_elem_1606(a, state0.b, arg0, arg1);
1270
+ } finally {
1271
+ state0.a = a;
1272
+ }
1273
+ };
1274
+ const ret = new Promise(cb0);
1275
+ return addHeapObject(ret);
1276
+ } finally {
1277
+ state0.a = state0.b = 0;
1278
+ }
1279
+ }
1280
+ export function __wbg_prototypesetcall_f034d444741426c3(arg0, arg1, arg2) {
1281
+ Uint8Array.prototype.set.call(getArrayU8FromWasm0(arg0, arg1), getObject(arg2));
1282
+ }
1283
+ export function __wbg_push_a6f9488ffd3fae3b(arg0, arg1) {
1284
+ const ret = getObject(arg0).push(getObject(arg1));
1285
+ return ret;
1286
+ }
1287
+ export function __wbg_queueMicrotask_2c8dfd1056f24fdc(arg0) {
1288
+ const ret = getObject(arg0).queueMicrotask;
1289
+ return addHeapObject(ret);
1290
+ }
1291
+ export function __wbg_queueMicrotask_8985ad63815852e7(arg0) {
1292
+ queueMicrotask(getObject(arg0));
1293
+ }
1294
+ export function __wbg_resolve_5d61e0d10c14730a(arg0) {
1295
+ const ret = Promise.resolve(getObject(arg0));
1296
+ return addHeapObject(ret);
1297
+ }
1298
+ export function __wbg_sedimentreeid_new(arg0) {
1299
+ const ret = SedimentreeId.__wrap(arg0);
1300
+ return addHeapObject(ret);
1301
+ }
1302
+ export function __wbg_set_name_1965d19c3010e94a(arg0, arg1, arg2) {
1303
+ getObject(arg0).name = getStringFromWasm0(arg1, arg2);
1304
+ }
1305
+ export function __wbg_static_accessor_GLOBAL_THIS_14325d8cca34bb77() {
1306
+ const ret = typeof globalThis === 'undefined' ? null : globalThis;
1307
+ return isLikeNone(ret) ? 0 : addHeapObject(ret);
1308
+ }
1309
+ export function __wbg_static_accessor_GLOBAL_f3a1e69f9c5a7e8e() {
1310
+ const ret = typeof global === 'undefined' ? null : global;
1311
+ return isLikeNone(ret) ? 0 : addHeapObject(ret);
1312
+ }
1313
+ export function __wbg_static_accessor_SELF_50cdb5b517789aca() {
1314
+ const ret = typeof self === 'undefined' ? null : self;
1315
+ return isLikeNone(ret) ? 0 : addHeapObject(ret);
1316
+ }
1317
+ export function __wbg_static_accessor_WINDOW_d6c4126e4c244380() {
1318
+ const ret = typeof window === 'undefined' ? null : window;
1319
+ return isLikeNone(ret) ? 0 : addHeapObject(ret);
1320
+ }
1321
+ export function __wbg_then_f1c954fe00733701(arg0, arg1) {
1322
+ const ret = getObject(arg0).then(getObject(arg1));
1323
+ return addHeapObject(ret);
1324
+ }
1325
+ export function __wbindgen_cast_0000000000000001(arg0, arg1) {
1326
+ // Cast intrinsic for `Closure(Closure { dtor_idx: 64, function: Function { arguments: [Externref], shim_idx: 125, ret: Result(Unit), inner_ret: Some(Result(Unit)) }, mutable: true }) -> Externref`.
1327
+ const ret = makeMutClosure(arg0, arg1, wasm.__wasm_bindgen_func_elem_628, __wasm_bindgen_func_elem_1601);
1328
+ return addHeapObject(ret);
1329
+ }
1330
+ export function __wbindgen_cast_0000000000000002(arg0) {
1331
+ // Cast intrinsic for `F64 -> Externref`.
1332
+ const ret = arg0;
1333
+ return addHeapObject(ret);
1334
+ }
1335
+ export function __wbindgen_cast_0000000000000003(arg0, arg1) {
1336
+ // Cast intrinsic for `Ref(String) -> Externref`.
1337
+ const ret = getStringFromWasm0(arg0, arg1);
1338
+ return addHeapObject(ret);
1339
+ }
1340
+ export function __wbindgen_object_clone_ref(arg0) {
1341
+ const ret = getObject(arg0);
1342
+ return addHeapObject(ret);
1343
+ }
1344
+ export function __wbindgen_object_drop_ref(arg0) {
1345
+ takeObject(arg0);
1346
+ }
1347
+ function __wasm_bindgen_func_elem_1601(arg0, arg1, arg2) {
1348
+ try {
1349
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
1350
+ wasm.__wasm_bindgen_func_elem_1601(retptr, arg0, arg1, addHeapObject(arg2));
1351
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
1352
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
1353
+ if (r1) {
1354
+ throw takeObject(r0);
1355
+ }
1356
+ } finally {
1357
+ wasm.__wbindgen_add_to_stack_pointer(16);
1358
+ }
1359
+ }
1360
+
1361
+ function __wasm_bindgen_func_elem_1606(arg0, arg1, arg2, arg3) {
1362
+ wasm.__wasm_bindgen_func_elem_1606(arg0, arg1, addHeapObject(arg2), addHeapObject(arg3));
1363
+ }
1364
+
1365
+ const BlobMetaFinalization = (typeof FinalizationRegistry === 'undefined')
1366
+ ? { register: () => {}, unregister: () => {} }
1367
+ : new FinalizationRegistry(ptr => wasm.__wbg_blobmeta_free(ptr >>> 0, 1));
1368
+ const CommitWithBlobFinalization = (typeof FinalizationRegistry === 'undefined')
1369
+ ? { register: () => {}, unregister: () => {} }
1370
+ : new FinalizationRegistry(ptr => wasm.__wbg_commitwithblob_free(ptr >>> 0, 1));
1371
+ const DepthFinalization = (typeof FinalizationRegistry === 'undefined')
1372
+ ? { register: () => {}, unregister: () => {} }
1373
+ : new FinalizationRegistry(ptr => wasm.__wbg_depth_free(ptr >>> 0, 1));
1374
+ const DigestFinalization = (typeof FinalizationRegistry === 'undefined')
1375
+ ? { register: () => {}, unregister: () => {} }
1376
+ : new FinalizationRegistry(ptr => wasm.__wbg_digest_free(ptr >>> 0, 1));
1377
+ const FragmentFinalization = (typeof FinalizationRegistry === 'undefined')
1378
+ ? { register: () => {}, unregister: () => {} }
1379
+ : new FinalizationRegistry(ptr => wasm.__wbg_fragment_free(ptr >>> 0, 1));
1380
+ const FragmentWithBlobFinalization = (typeof FinalizationRegistry === 'undefined')
1381
+ ? { register: () => {}, unregister: () => {} }
1382
+ : new FinalizationRegistry(ptr => wasm.__wbg_fragmentwithblob_free(ptr >>> 0, 1));
1383
+ const FragmentsArrayFinalization = (typeof FinalizationRegistry === 'undefined')
1384
+ ? { register: () => {}, unregister: () => {} }
1385
+ : new FinalizationRegistry(ptr => wasm.__wbg_fragmentsarray_free(ptr >>> 0, 1));
1386
+ const LooseCommitFinalization = (typeof FinalizationRegistry === 'undefined')
1387
+ ? { register: () => {}, unregister: () => {} }
1388
+ : new FinalizationRegistry(ptr => wasm.__wbg_loosecommit_free(ptr >>> 0, 1));
1389
+ const MemoryStorageFinalization = (typeof FinalizationRegistry === 'undefined')
1390
+ ? { register: () => {}, unregister: () => {} }
1391
+ : new FinalizationRegistry(ptr => wasm.__wbg_memorystorage_free(ptr >>> 0, 1));
1392
+ const SedimentreeFinalization = (typeof FinalizationRegistry === 'undefined')
1393
+ ? { register: () => {}, unregister: () => {} }
1394
+ : new FinalizationRegistry(ptr => wasm.__wbg_sedimentree_free(ptr >>> 0, 1));
1395
+ const SedimentreeIdFinalization = (typeof FinalizationRegistry === 'undefined')
1396
+ ? { register: () => {}, unregister: () => {} }
1397
+ : new FinalizationRegistry(ptr => wasm.__wbg_sedimentreeid_free(ptr >>> 0, 1));
1398
+ const SedimentreeIdsArrayFinalization = (typeof FinalizationRegistry === 'undefined')
1399
+ ? { register: () => {}, unregister: () => {} }
1400
+ : new FinalizationRegistry(ptr => wasm.__wbg_sedimentreeidsarray_free(ptr >>> 0, 1));
1401
+ const SignedFragmentFinalization = (typeof FinalizationRegistry === 'undefined')
1402
+ ? { register: () => {}, unregister: () => {} }
1403
+ : new FinalizationRegistry(ptr => wasm.__wbg_signedfragment_free(ptr >>> 0, 1));
1404
+ const SignedLooseCommitFinalization = (typeof FinalizationRegistry === 'undefined')
1405
+ ? { register: () => {}, unregister: () => {} }
1406
+ : new FinalizationRegistry(ptr => wasm.__wbg_signedloosecommit_free(ptr >>> 0, 1));
1407
+
1408
+ function addHeapObject(obj) {
1409
+ if (heap_next === heap.length) heap.push(heap.length + 1);
1410
+ const idx = heap_next;
1411
+ heap_next = heap[idx];
1412
+
1413
+ heap[idx] = obj;
1414
+ return idx;
1415
+ }
1416
+
1417
+ function _assertClass(instance, klass) {
1418
+ if (!(instance instanceof klass)) {
1419
+ throw new Error(`expected instance of ${klass.name}`);
1420
+ }
1421
+ }
1422
+
1423
+ function addBorrowedObject(obj) {
1424
+ if (stack_pointer == 1) throw new Error('out of js stack');
1425
+ heap[--stack_pointer] = obj;
1426
+ return stack_pointer;
1427
+ }
1428
+
1429
+ const CLOSURE_DTORS = (typeof FinalizationRegistry === 'undefined')
1430
+ ? { register: () => {}, unregister: () => {} }
1431
+ : new FinalizationRegistry(state => state.dtor(state.a, state.b));
1432
+
1433
+ function dropObject(idx) {
1434
+ if (idx < 132) return;
1435
+ heap[idx] = heap_next;
1436
+ heap_next = idx;
1437
+ }
1438
+
1439
+ function getArrayJsValueFromWasm0(ptr, len) {
1440
+ ptr = ptr >>> 0;
1441
+ const mem = getDataViewMemory0();
1442
+ const result = [];
1443
+ for (let i = ptr; i < ptr + 4 * len; i += 4) {
1444
+ result.push(takeObject(mem.getUint32(i, true)));
1445
+ }
1446
+ return result;
1447
+ }
1448
+
1449
+ function getArrayU8FromWasm0(ptr, len) {
1450
+ ptr = ptr >>> 0;
1451
+ return getUint8ArrayMemory0().subarray(ptr / 1, ptr / 1 + len);
1452
+ }
1453
+
1454
+ let cachedDataViewMemory0 = null;
1455
+ function getDataViewMemory0() {
1456
+ if (cachedDataViewMemory0 === null || cachedDataViewMemory0.buffer.detached === true || (cachedDataViewMemory0.buffer.detached === undefined && cachedDataViewMemory0.buffer !== wasm.memory.buffer)) {
1457
+ cachedDataViewMemory0 = new DataView(wasm.memory.buffer);
1458
+ }
1459
+ return cachedDataViewMemory0;
1460
+ }
1461
+
1462
+ function getStringFromWasm0(ptr, len) {
1463
+ ptr = ptr >>> 0;
1464
+ return decodeText(ptr, len);
1465
+ }
1466
+
1467
+ let cachedUint8ArrayMemory0 = null;
1468
+ function getUint8ArrayMemory0() {
1469
+ if (cachedUint8ArrayMemory0 === null || cachedUint8ArrayMemory0.byteLength === 0) {
1470
+ cachedUint8ArrayMemory0 = new Uint8Array(wasm.memory.buffer);
1471
+ }
1472
+ return cachedUint8ArrayMemory0;
1473
+ }
1474
+
1475
+ function getObject(idx) { return heap[idx]; }
1476
+
1477
+ function handleError(f, args) {
1478
+ try {
1479
+ return f.apply(this, args);
1480
+ } catch (e) {
1481
+ wasm.__wbindgen_export(addHeapObject(e));
1482
+ }
1483
+ }
1484
+
1485
+ let heap = new Array(128).fill(undefined);
1486
+ heap.push(undefined, null, true, false);
1487
+
1488
+ let heap_next = heap.length;
1489
+
1490
+ function isLikeNone(x) {
1491
+ return x === undefined || x === null;
1492
+ }
1493
+
1494
+ function makeMutClosure(arg0, arg1, dtor, f) {
1495
+ const state = { a: arg0, b: arg1, cnt: 1, dtor };
1496
+ const real = (...args) => {
1497
+
1498
+ // First up with a closure we increment the internal reference
1499
+ // count. This ensures that the Rust closure environment won't
1500
+ // be deallocated while we're invoking it.
1501
+ state.cnt++;
1502
+ const a = state.a;
1503
+ state.a = 0;
1504
+ try {
1505
+ return f(a, state.b, ...args);
1506
+ } finally {
1507
+ state.a = a;
1508
+ real._wbg_cb_unref();
1509
+ }
1510
+ };
1511
+ real._wbg_cb_unref = () => {
1512
+ if (--state.cnt === 0) {
1513
+ state.dtor(state.a, state.b);
1514
+ state.a = 0;
1515
+ CLOSURE_DTORS.unregister(state);
1516
+ }
1517
+ };
1518
+ CLOSURE_DTORS.register(real, state, state);
1519
+ return real;
1520
+ }
1521
+
1522
+ function passArray8ToWasm0(arg, malloc) {
1523
+ const ptr = malloc(arg.length * 1, 1) >>> 0;
1524
+ getUint8ArrayMemory0().set(arg, ptr / 1);
1525
+ WASM_VECTOR_LEN = arg.length;
1526
+ return ptr;
1527
+ }
1528
+
1529
+ function passArrayJsValueToWasm0(array, malloc) {
1530
+ const ptr = malloc(array.length * 4, 4) >>> 0;
1531
+ const mem = getDataViewMemory0();
1532
+ for (let i = 0; i < array.length; i++) {
1533
+ mem.setUint32(ptr + 4 * i, addHeapObject(array[i]), true);
1534
+ }
1535
+ WASM_VECTOR_LEN = array.length;
1536
+ return ptr;
1537
+ }
1538
+
1539
+ function passStringToWasm0(arg, malloc, realloc) {
1540
+ if (realloc === undefined) {
1541
+ const buf = cachedTextEncoder.encode(arg);
1542
+ const ptr = malloc(buf.length, 1) >>> 0;
1543
+ getUint8ArrayMemory0().subarray(ptr, ptr + buf.length).set(buf);
1544
+ WASM_VECTOR_LEN = buf.length;
1545
+ return ptr;
1546
+ }
1547
+
1548
+ let len = arg.length;
1549
+ let ptr = malloc(len, 1) >>> 0;
1550
+
1551
+ const mem = getUint8ArrayMemory0();
1552
+
1553
+ let offset = 0;
1554
+
1555
+ for (; offset < len; offset++) {
1556
+ const code = arg.charCodeAt(offset);
1557
+ if (code > 0x7F) break;
1558
+ mem[ptr + offset] = code;
1559
+ }
1560
+ if (offset !== len) {
1561
+ if (offset !== 0) {
1562
+ arg = arg.slice(offset);
1563
+ }
1564
+ ptr = realloc(ptr, len, len = offset + arg.length * 3, 1) >>> 0;
1565
+ const view = getUint8ArrayMemory0().subarray(ptr + offset, ptr + len);
1566
+ const ret = cachedTextEncoder.encodeInto(arg, view);
1567
+
1568
+ offset += ret.written;
1569
+ ptr = realloc(ptr, len, offset, 1) >>> 0;
1570
+ }
1571
+
1572
+ WASM_VECTOR_LEN = offset;
1573
+ return ptr;
1574
+ }
1575
+
1576
+ let stack_pointer = 128;
1577
+
1578
+ function takeObject(idx) {
1579
+ const ret = getObject(idx);
1580
+ dropObject(idx);
1581
+ return ret;
1582
+ }
1583
+
1584
+ let cachedTextDecoder = new TextDecoder('utf-8', { ignoreBOM: true, fatal: true });
1585
+ cachedTextDecoder.decode();
1586
+ const MAX_SAFARI_DECODE_BYTES = 2146435072;
1587
+ let numBytesDecoded = 0;
1588
+ function decodeText(ptr, len) {
1589
+ numBytesDecoded += len;
1590
+ if (numBytesDecoded >= MAX_SAFARI_DECODE_BYTES) {
1591
+ cachedTextDecoder = new TextDecoder('utf-8', { ignoreBOM: true, fatal: true });
1592
+ cachedTextDecoder.decode();
1593
+ numBytesDecoded = len;
1594
+ }
1595
+ return cachedTextDecoder.decode(getUint8ArrayMemory0().subarray(ptr, ptr + len));
1596
+ }
1597
+
1598
+ const cachedTextEncoder = new TextEncoder();
1599
+
1600
+ if (!('encodeInto' in cachedTextEncoder)) {
1601
+ cachedTextEncoder.encodeInto = function (arg, view) {
1602
+ const buf = cachedTextEncoder.encode(arg);
1603
+ view.set(buf);
1604
+ return {
1605
+ read: arg.length,
1606
+ written: buf.length
1607
+ };
1608
+ };
1609
+ }
1610
+
1611
+ let WASM_VECTOR_LEN = 0;
1612
+
1613
+
1614
+ let wasm;
1615
+ export function __wbg_set_wasm(val) {
1616
+ wasm = val;
1617
+ }