@automerge/subduction 0.10.1 → 0.11.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 (36) hide show
  1. package/dist/cjs/wasm-base64.cjs +1 -1
  2. package/dist/cjs/web-bindings.cjs +328 -132
  3. package/dist/cjs/web.cjs +329 -133
  4. package/dist/esm/wasm-base64.js +1 -1
  5. package/dist/iife/index.js +328 -133
  6. package/dist/index.d.ts +114 -40
  7. package/dist/subduction.wasm +0 -0
  8. package/dist/wasm_bindgen/bundler/subduction_wasm.d.ts +114 -40
  9. package/dist/wasm_bindgen/bundler/subduction_wasm.js +1 -1
  10. package/dist/wasm_bindgen/bundler/subduction_wasm_bg.js +332 -129
  11. package/dist/wasm_bindgen/bundler/subduction_wasm_bg.wasm +0 -0
  12. package/dist/wasm_bindgen/bundler/subduction_wasm_bg.wasm.d.ts +29 -19
  13. package/dist/wasm_bindgen/nodejs/subduction_wasm.cjs +337 -133
  14. package/dist/wasm_bindgen/nodejs/subduction_wasm.d.ts +114 -40
  15. package/dist/wasm_bindgen/nodejs/subduction_wasm_bg.wasm +0 -0
  16. package/dist/wasm_bindgen/nodejs/subduction_wasm_bg.wasm.d.ts +29 -19
  17. package/dist/wasm_bindgen/web/subduction_wasm.d.ts +143 -59
  18. package/dist/wasm_bindgen/web/subduction_wasm.js +336 -133
  19. package/dist/wasm_bindgen/web/subduction_wasm_bg.wasm +0 -0
  20. package/dist/wasm_bindgen/web/subduction_wasm_bg.wasm.d.ts +29 -19
  21. package/package.json +1 -1
  22. /package/dist/wasm_bindgen/bundler/snippets/{sedimentree_wasm-75027ecce41278de → sedimentree_wasm-8e1863d4f7634be2}/inline0.js +0 -0
  23. /package/dist/wasm_bindgen/bundler/snippets/{sedimentree_wasm-75027ecce41278de → sedimentree_wasm-8e1863d4f7634be2}/inline1.js +0 -0
  24. /package/dist/wasm_bindgen/bundler/snippets/{sedimentree_wasm-75027ecce41278de → sedimentree_wasm-8e1863d4f7634be2}/inline2.js +0 -0
  25. /package/dist/wasm_bindgen/bundler/snippets/{subduction_wasm-ec51bcf335db35bd → subduction_wasm-98b1f8c21c19bd5c}/inline0.js +0 -0
  26. /package/dist/wasm_bindgen/bundler/snippets/{subduction_wasm-ec51bcf335db35bd → subduction_wasm-98b1f8c21c19bd5c}/inline1.js +0 -0
  27. /package/dist/wasm_bindgen/nodejs/snippets/{sedimentree_wasm-75027ecce41278de → sedimentree_wasm-8e1863d4f7634be2}/inline0.js +0 -0
  28. /package/dist/wasm_bindgen/nodejs/snippets/{sedimentree_wasm-75027ecce41278de → sedimentree_wasm-8e1863d4f7634be2}/inline1.js +0 -0
  29. /package/dist/wasm_bindgen/nodejs/snippets/{sedimentree_wasm-75027ecce41278de → sedimentree_wasm-8e1863d4f7634be2}/inline2.js +0 -0
  30. /package/dist/wasm_bindgen/nodejs/snippets/{subduction_wasm-ec51bcf335db35bd → subduction_wasm-98b1f8c21c19bd5c}/inline0.js +0 -0
  31. /package/dist/wasm_bindgen/nodejs/snippets/{subduction_wasm-ec51bcf335db35bd → subduction_wasm-98b1f8c21c19bd5c}/inline1.js +0 -0
  32. /package/dist/wasm_bindgen/web/snippets/{sedimentree_wasm-75027ecce41278de → sedimentree_wasm-8e1863d4f7634be2}/inline0.js +0 -0
  33. /package/dist/wasm_bindgen/web/snippets/{sedimentree_wasm-75027ecce41278de → sedimentree_wasm-8e1863d4f7634be2}/inline1.js +0 -0
  34. /package/dist/wasm_bindgen/web/snippets/{sedimentree_wasm-75027ecce41278de → sedimentree_wasm-8e1863d4f7634be2}/inline2.js +0 -0
  35. /package/dist/wasm_bindgen/web/snippets/{subduction_wasm-ec51bcf335db35bd → subduction_wasm-98b1f8c21c19bd5c}/inline0.js +0 -0
  36. /package/dist/wasm_bindgen/web/snippets/{subduction_wasm-ec51bcf335db35bd → subduction_wasm-98b1f8c21c19bd5c}/inline1.js +0 -0
@@ -1,5 +1,5 @@
1
1
  /* @ts-self-types="./subduction_wasm.d.ts" */
2
- const { tryIntoJsSedimentreeIdsArray } = require(String.raw`./snippets/sedimentree_wasm-75027ecce41278de/inline2.js`);
2
+ const { tryIntoJsSedimentreeIdsArray } = require(String.raw`./snippets/sedimentree_wasm-8e1863d4f7634be2/inline2.js`);
3
3
 
4
4
  /**
5
5
  * An authenticated HTTP long-poll transport.
@@ -447,6 +447,143 @@ class CallError {
447
447
  if (Symbol.dispose) CallError.prototype[Symbol.dispose] = CallError.prototype.free;
448
448
  exports.CallError = CallError;
449
449
 
450
+ /**
451
+ * A user-supplied opaque identifier for a loose commit.
452
+ *
453
+ * Unlike [`Digest`](crate::digest::WasmDigest), which is a content hash
454
+ * computed by the system, `CommitId` is provided by the caller at construction
455
+ * time. This is the identity used for DAG traversal, fragment boundaries,
456
+ * and sync.
457
+ */
458
+ class CommitId {
459
+ static __wrap(ptr) {
460
+ ptr = ptr >>> 0;
461
+ const obj = Object.create(CommitId.prototype);
462
+ obj.__wbg_ptr = ptr;
463
+ CommitIdFinalization.register(obj, obj.__wbg_ptr, obj);
464
+ return obj;
465
+ }
466
+ __destroy_into_raw() {
467
+ const ptr = this.__wbg_ptr;
468
+ this.__wbg_ptr = 0;
469
+ CommitIdFinalization.unregister(this);
470
+ return ptr;
471
+ }
472
+ free() {
473
+ const ptr = this.__destroy_into_raw();
474
+ wasm.__wbg_commitid_free(ptr, 0);
475
+ }
476
+ /**
477
+ * Upcasts; to the JS-import type for [`WasmCommitId`].
478
+ * @returns {CommitId}
479
+ */
480
+ __wasm_refgen_toWasmCommitId() {
481
+ const ret = wasm.commitid___wasm_refgen_toWasmCommitId(this.__wbg_ptr);
482
+ return CommitId.__wrap(ret);
483
+ }
484
+ /**
485
+ * Creates a new commit identifier from its Base58 string representation.
486
+ *
487
+ * # Errors
488
+ *
489
+ * Returns an error if the string cannot be decoded or is not 32 bytes.
490
+ * @param {string} s
491
+ * @returns {CommitId}
492
+ */
493
+ static fromBase58(s) {
494
+ const ptr0 = passStringToWasm0(s, wasm.__wbindgen_export, wasm.__wbindgen_export2);
495
+ const len0 = WASM_VECTOR_LEN;
496
+ const ret = wasm.commitid_fromBase58(ptr0, len0);
497
+ if (ret[2]) {
498
+ throw takeFromExternrefTable0(ret[1]);
499
+ }
500
+ return CommitId.__wrap(ret[0]);
501
+ }
502
+ /**
503
+ * Creates a new commit identifier from its byte representation.
504
+ *
505
+ * # Errors
506
+ *
507
+ * Returns an error if the byte slice is not exactly 32 bytes.
508
+ * @param {Uint8Array} bytes
509
+ * @returns {CommitId}
510
+ */
511
+ static fromBytes(bytes) {
512
+ const ptr0 = passArray8ToWasm0(bytes, wasm.__wbindgen_export);
513
+ const len0 = WASM_VECTOR_LEN;
514
+ const ret = wasm.commitid_fromBytes(ptr0, len0);
515
+ if (ret[2]) {
516
+ throw takeFromExternrefTable0(ret[1]);
517
+ }
518
+ return CommitId.__wrap(ret[0]);
519
+ }
520
+ /**
521
+ * Creates a new commit identifier from its hexadecimal string representation.
522
+ *
523
+ * # Errors
524
+ *
525
+ * Returns an error if the string is not valid hex or not 32 bytes.
526
+ * @param {string} s
527
+ * @returns {CommitId}
528
+ */
529
+ static fromHexString(s) {
530
+ const ptr0 = passStringToWasm0(s, wasm.__wbindgen_export, wasm.__wbindgen_export2);
531
+ const len0 = WASM_VECTOR_LEN;
532
+ const ret = wasm.commitid_fromHexString(ptr0, len0);
533
+ if (ret[2]) {
534
+ throw takeFromExternrefTable0(ret[1]);
535
+ }
536
+ return CommitId.__wrap(ret[0]);
537
+ }
538
+ /**
539
+ * Creates a new commit identifier from its byte representation.
540
+ *
541
+ * # Errors
542
+ *
543
+ * Returns an error if the byte slice is not exactly 32 bytes.
544
+ * @param {Uint8Array} bytes
545
+ */
546
+ constructor(bytes) {
547
+ const ptr0 = passArray8ToWasm0(bytes, wasm.__wbindgen_export);
548
+ const len0 = WASM_VECTOR_LEN;
549
+ const ret = wasm.commitid_new(ptr0, len0);
550
+ if (ret[2]) {
551
+ throw takeFromExternrefTable0(ret[1]);
552
+ }
553
+ this.__wbg_ptr = ret[0] >>> 0;
554
+ CommitIdFinalization.register(this, this.__wbg_ptr, this);
555
+ return this;
556
+ }
557
+ /**
558
+ * Returns the byte representation of the commit identifier.
559
+ * @returns {Uint8Array}
560
+ */
561
+ toBytes() {
562
+ const ret = wasm.commitid_toBytes(this.__wbg_ptr);
563
+ var v1 = getArrayU8FromWasm0(ret[0], ret[1]).slice();
564
+ wasm.__wbindgen_export5(ret[0], ret[1] * 1, 1);
565
+ return v1;
566
+ }
567
+ /**
568
+ * Returns the hexadecimal string representation.
569
+ * @returns {string}
570
+ */
571
+ toHexString() {
572
+ let deferred1_0;
573
+ let deferred1_1;
574
+ try {
575
+ const ret = wasm.commitid_toHexString(this.__wbg_ptr);
576
+ deferred1_0 = ret[0];
577
+ deferred1_1 = ret[1];
578
+ return getStringFromWasm0(ret[0], ret[1]);
579
+ } finally {
580
+ wasm.__wbindgen_export5(deferred1_0, deferred1_1, 1);
581
+ }
582
+ }
583
+ }
584
+ if (Symbol.dispose) CommitId.prototype[Symbol.dispose] = CommitId.prototype.free;
585
+ exports.CommitId = CommitId;
586
+
450
587
  /**
451
588
  * A commit stored with its associated blob.
452
589
  */
@@ -754,8 +891,8 @@ class Fragment {
754
891
  return BlobMeta.__wrap(ret);
755
892
  }
756
893
  /**
757
- * Get the boundary digests of the fragment.
758
- * @returns {Digest[]}
894
+ * Get the boundary commit identifiers of the fragment.
895
+ * @returns {CommitId[]}
759
896
  */
760
897
  get boundary() {
761
898
  const ret = wasm.fragment_boundary(this.__wbg_ptr);
@@ -764,25 +901,25 @@ class Fragment {
764
901
  return v1;
765
902
  }
766
903
  /**
767
- * Get the head digest of the fragment.
768
- * @returns {Digest}
904
+ * Get the head commit identifier of the fragment.
905
+ * @returns {CommitId}
769
906
  */
770
907
  get head() {
771
908
  const ret = wasm.fragment_head(this.__wbg_ptr);
772
- return Digest.__wrap(ret);
909
+ return CommitId.__wrap(ret);
773
910
  }
774
911
  /**
775
912
  * Create a new fragment from the given sedimentree ID, head, boundary, checkpoints, and blob metadata.
776
913
  * @param {SedimentreeId} sedimentree_id
777
- * @param {Digest} head
778
- * @param {Digest[]} boundary
779
- * @param {Digest[]} checkpoints
914
+ * @param {CommitId} head
915
+ * @param {CommitId[]} boundary
916
+ * @param {CommitId[]} checkpoints
780
917
  * @param {BlobMeta} blob_meta
781
918
  */
782
919
  constructor(sedimentree_id, head, boundary, checkpoints, blob_meta) {
783
920
  _assertClass(sedimentree_id, SedimentreeId);
784
921
  var ptr0 = sedimentree_id.__destroy_into_raw();
785
- _assertClass(head, Digest);
922
+ _assertClass(head, CommitId);
786
923
  var ptr1 = head.__destroy_into_raw();
787
924
  const ptr2 = passArrayJsValueToWasm0(boundary, wasm.__wbindgen_export);
788
925
  const len2 = WASM_VECTOR_LEN;
@@ -829,22 +966,22 @@ class FragmentRequested {
829
966
  return Depth.__wrap(ret);
830
967
  }
831
968
  /**
832
- * Get the digest of the requested fragment.
833
- * @returns {Digest}
969
+ * Get the head commit identifier of the requested fragment.
970
+ * @returns {CommitId}
834
971
  */
835
972
  get head() {
836
973
  const ret = wasm.fragmentrequested_head(this.__wbg_ptr);
837
- return Digest.__wrap(ret);
974
+ return CommitId.__wrap(ret);
838
975
  }
839
976
  /**
840
- * Create a new fragment request from the given digest.
841
- * @param {Digest} digest
977
+ * Create a new fragment request from the given commit ID.
978
+ * @param {CommitId} commit_id
842
979
  * @param {Depth} depth
843
980
  */
844
- constructor(digest, depth) {
845
- _assertClass(digest, Digest);
981
+ constructor(commit_id, depth) {
982
+ _assertClass(commit_id, CommitId);
846
983
  _assertClass(depth, Depth);
847
- const ret = wasm.fragmentrequested_new(digest.__wbg_ptr, depth.__wbg_ptr);
984
+ const ret = wasm.fragmentrequested_new(commit_id.__wbg_ptr, depth.__wbg_ptr);
848
985
  this.__wbg_ptr = ret >>> 0;
849
986
  FragmentRequestedFinalization.register(this, this.__wbg_ptr, this);
850
987
  return this;
@@ -1013,7 +1150,15 @@ class LooseCommit {
1013
1150
  return BlobMeta.__wrap(ret);
1014
1151
  }
1015
1152
  /**
1016
- * Get the digest of the commit.
1153
+ * Get the commit's head identifier.
1154
+ * @returns {CommitId}
1155
+ */
1156
+ get commitId() {
1157
+ const ret = wasm.loosecommit_commitId(this.__wbg_ptr);
1158
+ return CommitId.__wrap(ret);
1159
+ }
1160
+ /**
1161
+ * Get the digest of the commit (content hash).
1017
1162
  * @returns {Digest}
1018
1163
  */
1019
1164
  get digest() {
@@ -1021,25 +1166,28 @@ class LooseCommit {
1021
1166
  return Digest.__wrap(ret);
1022
1167
  }
1023
1168
  /**
1024
- * Create a new `LooseCommit` from the given sedimentree ID, parents, and blob metadata.
1169
+ * Create a new `LooseCommit` from the given sedimentree ID, head, parents, and blob metadata.
1025
1170
  * @param {SedimentreeId} sedimentree_id
1026
- * @param {Digest[]} parents
1171
+ * @param {CommitId} head
1172
+ * @param {CommitId[]} parents
1027
1173
  * @param {BlobMeta} blob_meta
1028
1174
  */
1029
- constructor(sedimentree_id, parents, blob_meta) {
1175
+ constructor(sedimentree_id, head, parents, blob_meta) {
1030
1176
  _assertClass(sedimentree_id, SedimentreeId);
1031
1177
  var ptr0 = sedimentree_id.__destroy_into_raw();
1032
- const ptr1 = passArrayJsValueToWasm0(parents, wasm.__wbindgen_export);
1033
- const len1 = WASM_VECTOR_LEN;
1178
+ _assertClass(head, CommitId);
1179
+ var ptr1 = head.__destroy_into_raw();
1180
+ const ptr2 = passArrayJsValueToWasm0(parents, wasm.__wbindgen_export);
1181
+ const len2 = WASM_VECTOR_LEN;
1034
1182
  _assertClass(blob_meta, BlobMeta);
1035
- const ret = wasm.loosecommit_new(ptr0, ptr1, len1, blob_meta.__wbg_ptr);
1183
+ const ret = wasm.loosecommit_new(ptr0, ptr1, ptr2, len2, blob_meta.__wbg_ptr);
1036
1184
  this.__wbg_ptr = ret >>> 0;
1037
1185
  LooseCommitFinalization.register(this, this.__wbg_ptr, this);
1038
1186
  return this;
1039
1187
  }
1040
1188
  /**
1041
- * Get the parent digests of the commit.
1042
- * @returns {Digest[]}
1189
+ * Get the parent commit identifiers.
1190
+ * @returns {CommitId[]}
1043
1191
  */
1044
1192
  get parents() {
1045
1193
  const ret = wasm.loosecommit_parents(this.__wbg_ptr);
@@ -1203,27 +1351,27 @@ class MemoryStorage {
1203
1351
  return ret;
1204
1352
  }
1205
1353
  /**
1206
- * Delete a commit by digest.
1354
+ * Delete a single commit by its ID.
1207
1355
  * @param {SedimentreeId} sedimentree_id
1208
- * @param {Digest} digest
1356
+ * @param {CommitId} commit_id
1209
1357
  * @returns {Promise<any>}
1210
1358
  */
1211
- deleteCommit(sedimentree_id, digest) {
1359
+ deleteCommit(sedimentree_id, commit_id) {
1212
1360
  _assertClass(sedimentree_id, SedimentreeId);
1213
- _assertClass(digest, Digest);
1214
- const ret = wasm.memorystorage_deleteCommit(this.__wbg_ptr, sedimentree_id.__wbg_ptr, digest.__wbg_ptr);
1361
+ _assertClass(commit_id, CommitId);
1362
+ const ret = wasm.memorystorage_deleteCommit(this.__wbg_ptr, sedimentree_id.__wbg_ptr, commit_id.__wbg_ptr);
1215
1363
  return ret;
1216
1364
  }
1217
1365
  /**
1218
- * Delete a fragment by digest.
1366
+ * Delete a fragment by its identifier.
1219
1367
  * @param {SedimentreeId} sedimentree_id
1220
- * @param {Digest} digest
1368
+ * @param {CommitId} fragment_head
1221
1369
  * @returns {Promise<any>}
1222
1370
  */
1223
- deleteFragment(sedimentree_id, digest) {
1371
+ deleteFragment(sedimentree_id, fragment_head) {
1224
1372
  _assertClass(sedimentree_id, SedimentreeId);
1225
- _assertClass(digest, Digest);
1226
- const ret = wasm.memorystorage_deleteFragment(this.__wbg_ptr, sedimentree_id.__wbg_ptr, digest.__wbg_ptr);
1373
+ _assertClass(fragment_head, CommitId);
1374
+ const ret = wasm.memorystorage_deleteFragment(this.__wbg_ptr, sedimentree_id.__wbg_ptr, fragment_head.__wbg_ptr);
1227
1375
  return ret;
1228
1376
  }
1229
1377
  /**
@@ -1237,23 +1385,23 @@ class MemoryStorage {
1237
1385
  return ret;
1238
1386
  }
1239
1387
  /**
1240
- * List all commit digests for a sedimentree.
1388
+ * List all commit IDs for a sedimentree.
1241
1389
  * @param {SedimentreeId} sedimentree_id
1242
1390
  * @returns {Promise<any>}
1243
1391
  */
1244
- listCommitDigests(sedimentree_id) {
1392
+ listCommitIds(sedimentree_id) {
1245
1393
  _assertClass(sedimentree_id, SedimentreeId);
1246
- const ret = wasm.memorystorage_listCommitDigests(this.__wbg_ptr, sedimentree_id.__wbg_ptr);
1394
+ const ret = wasm.memorystorage_listCommitIds(this.__wbg_ptr, sedimentree_id.__wbg_ptr);
1247
1395
  return ret;
1248
1396
  }
1249
1397
  /**
1250
- * List all fragment digests for a sedimentree.
1398
+ * List all fragment IDs for a sedimentree.
1251
1399
  * @param {SedimentreeId} sedimentree_id
1252
1400
  * @returns {Promise<any>}
1253
1401
  */
1254
- listFragmentDigests(sedimentree_id) {
1402
+ listFragmentIds(sedimentree_id) {
1255
1403
  _assertClass(sedimentree_id, SedimentreeId);
1256
- const ret = wasm.memorystorage_listFragmentDigests(this.__wbg_ptr, sedimentree_id.__wbg_ptr);
1404
+ const ret = wasm.memorystorage_listFragmentIds(this.__wbg_ptr, sedimentree_id.__wbg_ptr);
1257
1405
  return ret;
1258
1406
  }
1259
1407
  /**
@@ -1285,27 +1433,27 @@ class MemoryStorage {
1285
1433
  return ret;
1286
1434
  }
1287
1435
  /**
1288
- * Load a commit by digest, returning `CommitWithBlob` or null.
1436
+ * Load a single commit by its ID, returning `CommitWithBlob` or null.
1289
1437
  * @param {SedimentreeId} sedimentree_id
1290
- * @param {Digest} digest
1438
+ * @param {CommitId} commit_id
1291
1439
  * @returns {Promise<any>}
1292
1440
  */
1293
- loadCommit(sedimentree_id, digest) {
1441
+ loadCommit(sedimentree_id, commit_id) {
1294
1442
  _assertClass(sedimentree_id, SedimentreeId);
1295
- _assertClass(digest, Digest);
1296
- const ret = wasm.memorystorage_loadCommit(this.__wbg_ptr, sedimentree_id.__wbg_ptr, digest.__wbg_ptr);
1443
+ _assertClass(commit_id, CommitId);
1444
+ const ret = wasm.memorystorage_loadCommit(this.__wbg_ptr, sedimentree_id.__wbg_ptr, commit_id.__wbg_ptr);
1297
1445
  return ret;
1298
1446
  }
1299
1447
  /**
1300
- * Load a fragment by digest, returning `FragmentWithBlob` or null.
1448
+ * Load a fragment by its identifier, returning `FragmentWithBlob` or null.
1301
1449
  * @param {SedimentreeId} sedimentree_id
1302
- * @param {Digest} digest
1450
+ * @param {CommitId} fragment_head
1303
1451
  * @returns {Promise<any>}
1304
1452
  */
1305
- loadFragment(sedimentree_id, digest) {
1453
+ loadFragment(sedimentree_id, fragment_head) {
1306
1454
  _assertClass(sedimentree_id, SedimentreeId);
1307
- _assertClass(digest, Digest);
1308
- const ret = wasm.memorystorage_loadFragment(this.__wbg_ptr, sedimentree_id.__wbg_ptr, digest.__wbg_ptr);
1455
+ _assertClass(fragment_head, CommitId);
1456
+ const ret = wasm.memorystorage_loadFragment(this.__wbg_ptr, sedimentree_id.__wbg_ptr, fragment_head.__wbg_ptr);
1309
1457
  return ret;
1310
1458
  }
1311
1459
  /**
@@ -1317,34 +1465,55 @@ class MemoryStorage {
1317
1465
  MemoryStorageFinalization.register(this, this.__wbg_ptr, this);
1318
1466
  return this;
1319
1467
  }
1468
+ /**
1469
+ * Save commits and fragments in a single batch.
1470
+ * @param {SedimentreeId} sedimentree_id
1471
+ * @param {Array<any>} commits
1472
+ * @param {Array<any>} fragments
1473
+ * @returns {Promise<any>}
1474
+ */
1475
+ saveBatchAll(sedimentree_id, commits, fragments) {
1476
+ _assertClass(sedimentree_id, SedimentreeId);
1477
+ const ret = wasm.memorystorage_saveBatchAll(this.__wbg_ptr, sedimentree_id.__wbg_ptr, commits, fragments);
1478
+ return ret;
1479
+ }
1320
1480
  /**
1321
1481
  * Save a commit with its blob.
1482
+ *
1483
+ * The `commit_id` parameter must match the `head()` embedded in
1484
+ * the signed commit payload. Returns an error if they differ.
1485
+ *
1486
+ * # Errors
1487
+ *
1488
+ * Returns a JS error if:
1489
+ * - The signed payload cannot be decoded
1490
+ * - The `commit_id` does not match the embedded `head()`
1322
1491
  * @param {SedimentreeId} sedimentree_id
1323
- * @param {Digest} _digest
1492
+ * @param {CommitId} commit_id
1324
1493
  * @param {SignedLooseCommit} signed_commit
1325
1494
  * @param {Uint8Array} blob
1326
1495
  * @returns {Promise<any>}
1327
1496
  */
1328
- saveCommit(sedimentree_id, _digest, signed_commit, blob) {
1497
+ saveCommit(sedimentree_id, commit_id, signed_commit, blob) {
1329
1498
  _assertClass(sedimentree_id, SedimentreeId);
1330
- _assertClass(_digest, Digest);
1499
+ _assertClass(commit_id, CommitId);
1331
1500
  _assertClass(signed_commit, SignedLooseCommit);
1332
- const ret = wasm.memorystorage_saveCommit(this.__wbg_ptr, sedimentree_id.__wbg_ptr, _digest.__wbg_ptr, signed_commit.__wbg_ptr, blob);
1501
+ const ret = wasm.memorystorage_saveCommit(this.__wbg_ptr, sedimentree_id.__wbg_ptr, commit_id.__wbg_ptr, signed_commit.__wbg_ptr, blob);
1333
1502
  return ret;
1334
1503
  }
1335
1504
  /**
1336
1505
  * Save a fragment with its blob.
1337
1506
  * @param {SedimentreeId} sedimentree_id
1338
- * @param {Digest} _digest
1507
+ * @param {CommitId} _fragment_head
1339
1508
  * @param {SignedFragment} signed_fragment
1340
1509
  * @param {Uint8Array} blob
1341
1510
  * @returns {Promise<any>}
1342
1511
  */
1343
- saveFragment(sedimentree_id, _digest, signed_fragment, blob) {
1512
+ saveFragment(sedimentree_id, _fragment_head, signed_fragment, blob) {
1344
1513
  _assertClass(sedimentree_id, SedimentreeId);
1345
- _assertClass(_digest, Digest);
1514
+ _assertClass(_fragment_head, CommitId);
1346
1515
  _assertClass(signed_fragment, SignedFragment);
1347
- const ret = wasm.memorystorage_saveFragment(this.__wbg_ptr, sedimentree_id.__wbg_ptr, _digest.__wbg_ptr, signed_fragment.__wbg_ptr, blob);
1516
+ const ret = wasm.memorystorage_saveFragment(this.__wbg_ptr, sedimentree_id.__wbg_ptr, _fragment_head.__wbg_ptr, signed_fragment.__wbg_ptr, blob);
1348
1517
  return ret;
1349
1518
  }
1350
1519
  /**
@@ -1904,6 +2073,12 @@ class SignedFragment {
1904
2073
  SignedFragmentFinalization.register(obj, obj.__wbg_ptr, obj);
1905
2074
  return obj;
1906
2075
  }
2076
+ static __unwrap(jsValue) {
2077
+ if (!(jsValue instanceof SignedFragment)) {
2078
+ return 0;
2079
+ }
2080
+ return jsValue.__destroy_into_raw();
2081
+ }
1907
2082
  __destroy_into_raw() {
1908
2083
  const ptr = this.__wbg_ptr;
1909
2084
  this.__wbg_ptr = 0;
@@ -1976,6 +2151,12 @@ class SignedLooseCommit {
1976
2151
  SignedLooseCommitFinalization.register(obj, obj.__wbg_ptr, obj);
1977
2152
  return obj;
1978
2153
  }
2154
+ static __unwrap(jsValue) {
2155
+ if (!(jsValue instanceof SignedLooseCommit)) {
2156
+ return 0;
2157
+ }
2158
+ return jsValue.__destroy_into_raw();
2159
+ }
1979
2160
  __destroy_into_raw() {
1980
2161
  const ptr = this.__wbg_ptr;
1981
2162
  this.__wbg_ptr = 0;
@@ -2092,15 +2273,17 @@ class Subduction {
2092
2273
  *
2093
2274
  * Returns a [`WasmWriteError`] if storage, networking, or policy fail.
2094
2275
  * @param {SedimentreeId} id
2095
- * @param {Digest[]} parents
2276
+ * @param {CommitId} head
2277
+ * @param {CommitId[]} parents
2096
2278
  * @param {Uint8Array} blob
2097
2279
  * @returns {Promise<FragmentRequested | undefined>}
2098
2280
  */
2099
- addCommit(id, parents, blob) {
2281
+ addCommit(id, head, parents, blob) {
2100
2282
  _assertClass(id, SedimentreeId);
2283
+ _assertClass(head, CommitId);
2101
2284
  const ptr0 = passArrayJsValueToWasm0(parents, wasm.__wbindgen_export);
2102
2285
  const len0 = WASM_VECTOR_LEN;
2103
- const ret = wasm.subduction_addCommit(this.__wbg_ptr, id.__wbg_ptr, ptr0, len0, blob);
2286
+ const ret = wasm.subduction_addCommit(this.__wbg_ptr, id.__wbg_ptr, head.__wbg_ptr, ptr0, len0, blob);
2104
2287
  return ret;
2105
2288
  }
2106
2289
  /**
@@ -2140,15 +2323,15 @@ class Subduction {
2140
2323
  *
2141
2324
  * Returns a [`WasmWriteError`] if storage, networking, or policy fail.
2142
2325
  * @param {SedimentreeId} id
2143
- * @param {Digest} head
2144
- * @param {Digest[]} boundary
2145
- * @param {Digest[]} checkpoints
2326
+ * @param {CommitId} head
2327
+ * @param {CommitId[]} boundary
2328
+ * @param {CommitId[]} checkpoints
2146
2329
  * @param {Uint8Array} blob
2147
2330
  * @returns {Promise<void>}
2148
2331
  */
2149
2332
  addFragment(id, head, boundary, checkpoints, blob) {
2150
2333
  _assertClass(id, SedimentreeId);
2151
- _assertClass(head, Digest);
2334
+ _assertClass(head, CommitId);
2152
2335
  const ptr0 = passArrayJsValueToWasm0(boundary, wasm.__wbindgen_export);
2153
2336
  const len0 = WASM_VECTOR_LEN;
2154
2337
  const ptr1 = passArrayJsValueToWasm0(checkpoints, wasm.__wbindgen_export);
@@ -3250,7 +3433,7 @@ class SyncStats {
3250
3433
  }
3251
3434
  /**
3252
3435
  * The remote peer's heads for this sedimentree.
3253
- * @returns {Digest[]}
3436
+ * @returns {CommitId[]}
3254
3437
  */
3255
3438
  get remoteHeads() {
3256
3439
  const ret = wasm.syncstats_remoteHeads(this.__wbg_ptr);
@@ -3467,43 +3650,49 @@ function start() {
3467
3650
  wasm.start();
3468
3651
  }
3469
3652
  exports.start = start;
3470
- const import1 = require("./snippets/subduction_wasm-ec51bcf335db35bd/inline0.js");
3471
- const import2 = require("./snippets/subduction_wasm-ec51bcf335db35bd/inline1.js");
3653
+ const import1 = require("./snippets/subduction_wasm-98b1f8c21c19bd5c/inline0.js");
3654
+ const import2 = require("./snippets/subduction_wasm-98b1f8c21c19bd5c/inline1.js");
3472
3655
 
3473
3656
  function __wbg_get_imports() {
3474
3657
  const import0 = {
3475
3658
  __proto__: null,
3476
- __wbg___wasm_refgen_toWasmCommitWithBlob_fcbd230cf952f128: function(arg0) {
3659
+ __wbg___wasm_refgen_toWasmCommitId_65b818e358f27de6: function(arg0) {
3660
+ const ret = arg0.__wasm_refgen_toWasmCommitId();
3661
+ _assertClass(ret, CommitId);
3662
+ var ptr1 = ret.__destroy_into_raw();
3663
+ return ptr1;
3664
+ },
3665
+ __wbg___wasm_refgen_toWasmCommitWithBlob_4ee001b6d734dc9e: function(arg0) {
3477
3666
  const ret = arg0.__wasm_refgen_toWasmCommitWithBlob();
3478
3667
  _assertClass(ret, CommitWithBlob);
3479
3668
  var ptr1 = ret.__destroy_into_raw();
3480
3669
  return ptr1;
3481
3670
  },
3482
- __wbg___wasm_refgen_toWasmDepth_4f8de5b877457c3d: function(arg0) {
3671
+ __wbg___wasm_refgen_toWasmDepth_c561b40f337714d7: function(arg0) {
3483
3672
  const ret = arg0.__wasm_refgen_toWasmDepth();
3484
3673
  _assertClass(ret, Depth);
3485
3674
  var ptr1 = ret.__destroy_into_raw();
3486
3675
  return ptr1;
3487
3676
  },
3488
- __wbg___wasm_refgen_toWasmDigest_d0fbca90d003e5b2: function(arg0) {
3677
+ __wbg___wasm_refgen_toWasmDigest_19e9d6dad971a705: function(arg0) {
3489
3678
  const ret = arg0.__wasm_refgen_toWasmDigest();
3490
3679
  _assertClass(ret, Digest);
3491
3680
  var ptr1 = ret.__destroy_into_raw();
3492
3681
  return ptr1;
3493
3682
  },
3494
- __wbg___wasm_refgen_toWasmFragmentWithBlob_814bb2b3d862ac90: function(arg0) {
3683
+ __wbg___wasm_refgen_toWasmFragmentWithBlob_e8ef521f2984e238: function(arg0) {
3495
3684
  const ret = arg0.__wasm_refgen_toWasmFragmentWithBlob();
3496
3685
  _assertClass(ret, FragmentWithBlob);
3497
3686
  var ptr1 = ret.__destroy_into_raw();
3498
3687
  return ptr1;
3499
3688
  },
3500
- __wbg___wasm_refgen_toWasmFragment_32ab33a0a1cf967b: function(arg0) {
3689
+ __wbg___wasm_refgen_toWasmFragment_38ddb9958dbdc455: function(arg0) {
3501
3690
  const ret = arg0.__wasm_refgen_toWasmFragment();
3502
3691
  _assertClass(ret, Fragment);
3503
3692
  var ptr1 = ret.__destroy_into_raw();
3504
3693
  return ptr1;
3505
3694
  },
3506
- __wbg___wasm_refgen_toWasmLooseCommit_6deda612421ca7e6: function(arg0) {
3695
+ __wbg___wasm_refgen_toWasmLooseCommit_876edb05490f6350: function(arg0) {
3507
3696
  const ret = arg0.__wasm_refgen_toWasmLooseCommit();
3508
3697
  _assertClass(ret, LooseCommit);
3509
3698
  var ptr1 = ret.__destroy_into_raw();
@@ -3577,23 +3766,23 @@ function __wbg_get_imports() {
3577
3766
  const ret = AuthenticatedWebSocket.__wrap(arg0);
3578
3767
  return ret;
3579
3768
  },
3580
- __wbg_authorizeConnect_8e2609308bbbbcfd: function() { return handleError(function (arg0, arg1) {
3769
+ __wbg_authorizeConnect_21fe4159e45997db: function() { return handleError(function (arg0, arg1) {
3581
3770
  const ret = arg0.authorizeConnect(PeerId.__wrap(arg1));
3582
3771
  return ret;
3583
3772
  }, arguments); },
3584
- __wbg_authorizeFetch_b7bcc4e437112c73: function() { return handleError(function (arg0, arg1, arg2) {
3773
+ __wbg_authorizeFetch_03f9af424032be8f: function() { return handleError(function (arg0, arg1, arg2) {
3585
3774
  const ret = arg0.authorizeFetch(PeerId.__wrap(arg1), SedimentreeId.__wrap(arg2));
3586
3775
  return ret;
3587
3776
  }, arguments); },
3588
- __wbg_authorizePublish_7e546fc3d8103532: function() { return handleError(function (arg0, arg1, arg2) {
3777
+ __wbg_authorizePublish_25c669bb7ef08215: function() { return handleError(function (arg0, arg1, arg2) {
3589
3778
  const ret = arg0.authorizePublish(PeerId.__wrap(arg1), Topic.__wrap(arg2));
3590
3779
  return ret;
3591
3780
  }, arguments); },
3592
- __wbg_authorizePut_ba5a5e36c9e9bbfa: function() { return handleError(function (arg0, arg1, arg2, arg3) {
3781
+ __wbg_authorizePut_a25e6f1145209b09: function() { return handleError(function (arg0, arg1, arg2, arg3) {
3593
3782
  const ret = arg0.authorizePut(PeerId.__wrap(arg1), PeerId.__wrap(arg2), SedimentreeId.__wrap(arg3));
3594
3783
  return ret;
3595
3784
  }, arguments); },
3596
- __wbg_authorizeSubscribe_34f5ba6f23bab853: function() { return handleError(function (arg0, arg1, arg2) {
3785
+ __wbg_authorizeSubscribe_b0a4693c31b61926: function() { return handleError(function (arg0, arg1, arg2) {
3597
3786
  const ret = arg0.authorizeSubscribe(PeerId.__wrap(arg1), Topic.__wrap(arg2));
3598
3787
  return ret;
3599
3788
  }, arguments); },
@@ -3613,14 +3802,18 @@ function __wbg_get_imports() {
3613
3802
  const ret = arg0.call(arg1, arg2, arg3, arg4);
3614
3803
  return ret;
3615
3804
  }, arguments); },
3805
+ __wbg_close_23a850186a1bff7e: function(arg0) {
3806
+ arg0.close();
3807
+ },
3616
3808
  __wbg_close_af26905c832a88cb: function() { return handleError(function (arg0) {
3617
3809
  arg0.close();
3618
3810
  }, arguments); },
3619
3811
  __wbg_close_cbf870bdad0aad99: function(arg0) {
3620
3812
  arg0.close();
3621
3813
  },
3622
- __wbg_close_f85b3643ad9ed8d4: function(arg0) {
3623
- arg0.close();
3814
+ __wbg_commitid_new: function(arg0) {
3815
+ const ret = CommitId.__wrap(arg0);
3816
+ return ret;
3624
3817
  },
3625
3818
  __wbg_commitwithblob_new: function(arg0) {
3626
3819
  const ret = CommitWithBlob.__wrap(arg0);
@@ -3642,11 +3835,11 @@ function __wbg_get_imports() {
3642
3835
  const ret = arg0.data;
3643
3836
  return ret;
3644
3837
  },
3645
- __wbg_deleteAllCommits_87e95e34aba169ea: function(arg0, arg1) {
3838
+ __wbg_deleteAllCommits_010500ef54b293ad: function(arg0, arg1) {
3646
3839
  const ret = arg0.deleteAllCommits(arg1);
3647
3840
  return ret;
3648
3841
  },
3649
- __wbg_deleteAllFragments_b5a40f8b94689ee5: function(arg0, arg1) {
3842
+ __wbg_deleteAllFragments_ab9739674b79c634: function(arg0, arg1) {
3650
3843
  const ret = arg0.deleteAllFragments(arg1);
3651
3844
  return ret;
3652
3845
  },
@@ -3658,7 +3851,7 @@ function __wbg_get_imports() {
3658
3851
  const ret = Digest.__unwrap(arg0);
3659
3852
  return ret;
3660
3853
  },
3661
- __wbg_disconnect_91312bb506e834b1: function(arg0) {
3854
+ __wbg_disconnect_9e7aaa7f19eca5a1: function(arg0) {
3662
3855
  const ret = arg0.disconnect();
3663
3856
  return ret;
3664
3857
  },
@@ -3685,13 +3878,13 @@ function __wbg_get_imports() {
3685
3878
  const ret = arg0.fetch(arg1);
3686
3879
  return ret;
3687
3880
  },
3688
- __wbg_filterAuthorizedFetch_a647f13dc33948f1: function() { return handleError(function (arg0, arg1, arg2, arg3) {
3881
+ __wbg_filterAuthorizedFetch_6200c76db1af659a: function() { return handleError(function (arg0, arg1, arg2, arg3) {
3689
3882
  var v0 = getArrayJsValueFromWasm0(arg2, arg3).slice();
3690
3883
  wasm.__wbindgen_export5(arg2, arg3 * 4, 4);
3691
3884
  const ret = arg0.filterAuthorizedFetch(PeerId.__wrap(arg1), v0);
3692
3885
  return ret;
3693
3886
  }, arguments); },
3694
- __wbg_filterAuthorizedSubscribers_34bdeaaac0eb31a5: function() { return handleError(function (arg0, arg1, arg2, arg3) {
3887
+ __wbg_filterAuthorizedSubscribers_68da0bf57e85166c: function() { return handleError(function (arg0, arg1, arg2, arg3) {
3695
3888
  var v0 = getArrayJsValueFromWasm0(arg2, arg3).slice();
3696
3889
  wasm.__wbindgen_export5(arg2, arg3 * 4, 4);
3697
3890
  const ret = arg0.filterAuthorizedSubscribers(Topic.__wrap(arg1), v0);
@@ -3885,15 +4078,15 @@ function __wbg_get_imports() {
3885
4078
  const ret = arg0.length;
3886
4079
  return ret;
3887
4080
  },
3888
- __wbg_loadAllCommits_1b040f2bd61f63de: function(arg0, arg1) {
4081
+ __wbg_loadAllCommits_66f201365cd0de6b: function(arg0, arg1) {
3889
4082
  const ret = arg0.loadAllCommits(arg1);
3890
4083
  return ret;
3891
4084
  },
3892
- __wbg_loadAllFragments_cf081afbfee53965: function(arg0, arg1) {
4085
+ __wbg_loadAllFragments_e9d859acefaaecfb: function(arg0, arg1) {
3893
4086
  const ret = arg0.loadAllFragments(arg1);
3894
4087
  return ret;
3895
4088
  },
3896
- __wbg_loadAllSedimentreeIds_a9046bfade082517: function(arg0) {
4089
+ __wbg_loadAllSedimentreeIds_940b75def2a4f752: function(arg0) {
3897
4090
  const ret = arg0.loadAllSedimentreeIds();
3898
4091
  return ret;
3899
4092
  },
@@ -3936,7 +4129,7 @@ function __wbg_get_imports() {
3936
4129
  const a = state0.a;
3937
4130
  state0.a = 0;
3938
4131
  try {
3939
- return __wasm_bindgen_func_elem_1651_194(a, state0.b, arg0, arg1);
4132
+ return __wasm_bindgen_func_elem_1666_203(a, state0.b, arg0, arg1);
3940
4133
  } finally {
3941
4134
  state0.a = a;
3942
4135
  }
@@ -3970,7 +4163,7 @@ function __wbg_get_imports() {
3970
4163
  const a = state0.a;
3971
4164
  state0.a = 0;
3972
4165
  try {
3973
- return __wasm_bindgen_func_elem_1651_195(a, state0.b, arg0, arg1);
4166
+ return __wasm_bindgen_func_elem_1666_204(a, state0.b, arg0, arg1);
3974
4167
  } finally {
3975
4168
  state0.a = a;
3976
4169
  }
@@ -4021,7 +4214,7 @@ function __wbg_get_imports() {
4021
4214
  const ret = Array.of(arg0, arg1);
4022
4215
  return ret;
4023
4216
  },
4024
- __wbg_onDisconnect_a24437def131c941: function(arg0, arg1) {
4217
+ __wbg_onDisconnect_9a45cfe08cc17d33: function(arg0, arg1) {
4025
4218
  arg0.onDisconnect(arg1);
4026
4219
  },
4027
4220
  __wbg_open_e7a9d3d6344572f6: function() { return handleError(function (arg0, arg1, arg2, arg3) {
@@ -4048,7 +4241,7 @@ function __wbg_get_imports() {
4048
4241
  const ret = arg0.port2;
4049
4242
  return ret;
4050
4243
  },
4051
- __wbg_postMessage_fb1c205fdbbf796d: function(arg0, arg1) {
4244
+ __wbg_postMessage_a6e9396a4a5452a0: function(arg0, arg1) {
4052
4245
  arg0.postMessage(arg1);
4053
4246
  },
4054
4247
  __wbg_process_44c7a14e11e9f69e: function(arg0) {
@@ -4080,7 +4273,7 @@ function __wbg_get_imports() {
4080
4273
  const ret = arg0.readyState;
4081
4274
  return ret;
4082
4275
  },
4083
- __wbg_recvBytes_e13f381294da16db: function(arg0) {
4276
+ __wbg_recvBytes_4eb8483c95417eaa: function(arg0) {
4084
4277
  const ret = arg0.recvBytes();
4085
4278
  return ret;
4086
4279
  },
@@ -4096,19 +4289,19 @@ function __wbg_get_imports() {
4096
4289
  const ret = arg0.result;
4097
4290
  return ret;
4098
4291
  }, arguments); },
4099
- __wbg_saveBatchAll_b9359532f5a65936: function(arg0, arg1, arg2, arg3) {
4292
+ __wbg_saveBatchAll_c5596fcba8bd2a15: function(arg0, arg1, arg2, arg3) {
4100
4293
  const ret = arg0.saveBatchAll(arg1, arg2, arg3);
4101
4294
  return ret;
4102
4295
  },
4103
- __wbg_saveCommit_f6c4180a159edfdf: function(arg0, arg1, arg2, arg3, arg4) {
4296
+ __wbg_saveCommit_acfb018dfd6c3f76: function(arg0, arg1, arg2, arg3, arg4) {
4104
4297
  const ret = arg0.saveCommit(arg1, arg2, arg3, arg4);
4105
4298
  return ret;
4106
4299
  },
4107
- __wbg_saveFragment_49505af74bd5abe3: function(arg0, arg1, arg2, arg3, arg4) {
4300
+ __wbg_saveFragment_af45ae70254a194a: function(arg0, arg1, arg2, arg3, arg4) {
4108
4301
  const ret = arg0.saveFragment(arg1, arg2, arg3, arg4);
4109
4302
  return ret;
4110
4303
  },
4111
- __wbg_saveSedimentreeId_7b6b4310628fe78c: function(arg0, arg1) {
4304
+ __wbg_saveSedimentreeId_78191f33b235abff: function(arg0, arg1) {
4112
4305
  const ret = arg0.saveSedimentreeId(arg1);
4113
4306
  return ret;
4114
4307
  },
@@ -4120,14 +4313,14 @@ function __wbg_get_imports() {
4120
4313
  const ret = SedimentreeId.__unwrap(arg0);
4121
4314
  return ret;
4122
4315
  },
4123
- __wbg_sendBytes_9a00cdaf7c891eff: function(arg0, arg1) {
4316
+ __wbg_sendBytes_9eb20f735c0b8c5d: function(arg0, arg1) {
4124
4317
  const ret = arg0.sendBytes(arg1);
4125
4318
  return ret;
4126
4319
  },
4127
4320
  __wbg_send_d31a693c975dea74: function() { return handleError(function (arg0, arg1, arg2) {
4128
4321
  arg0.send(getArrayU8FromWasm0(arg1, arg2));
4129
4322
  }, arguments); },
4130
- __wbg_setTimeout_43db2c2050a4d3d2: function(arg0, arg1) {
4323
+ __wbg_setTimeout_37e1d1c4bd350e8e: function(arg0, arg1) {
4131
4324
  const ret = setTimeout(arg0, arg1);
4132
4325
  return ret;
4133
4326
  },
@@ -4168,10 +4361,10 @@ function __wbg_get_imports() {
4168
4361
  __wbg_set_onerror_901ca711f94a5bbb: function(arg0, arg1) {
4169
4362
  arg0.onerror = arg1;
4170
4363
  },
4171
- __wbg_set_onmessage_284248c97c42cb93: function(arg0, arg1) {
4364
+ __wbg_set_onmessage_6f80ab771bf151aa: function(arg0, arg1) {
4172
4365
  arg0.onmessage = arg1;
4173
4366
  },
4174
- __wbg_set_onmessage_6f80ab771bf151aa: function(arg0, arg1) {
4367
+ __wbg_set_onmessage_a5e9c6dfb75369b5: function(arg0, arg1) {
4175
4368
  arg0.onmessage = arg1;
4176
4369
  },
4177
4370
  __wbg_set_onopen_34e3e24cf9337ddd: function(arg0, arg1) {
@@ -4187,7 +4380,7 @@ function __wbg_get_imports() {
4187
4380
  const ret = arg0.sign(arg1, arg2, getArrayU8FromWasm0(arg3, arg4));
4188
4381
  return ret;
4189
4382
  }, arguments); },
4190
- __wbg_sign_e6fa76bd4ef9c75a: function(arg0, arg1) {
4383
+ __wbg_sign_c34ae159953b0497: function(arg0, arg1) {
4191
4384
  const ret = arg0.sign(arg1);
4192
4385
  return ret;
4193
4386
  },
@@ -4195,10 +4388,18 @@ function __wbg_get_imports() {
4195
4388
  const ret = SignedFragment.__wrap(arg0);
4196
4389
  return ret;
4197
4390
  },
4391
+ __wbg_signedfragment_unwrap: function(arg0) {
4392
+ const ret = SignedFragment.__unwrap(arg0);
4393
+ return ret;
4394
+ },
4198
4395
  __wbg_signedloosecommit_new: function(arg0) {
4199
4396
  const ret = SignedLooseCommit.__wrap(arg0);
4200
4397
  return ret;
4201
4398
  },
4399
+ __wbg_signedloosecommit_unwrap: function(arg0) {
4400
+ const ret = SignedLooseCommit.__unwrap(arg0);
4401
+ return ret;
4402
+ },
4202
4403
  __wbg_stack_3b0d974bbf31e44f: function(arg0, arg1) {
4203
4404
  const ret = arg1.stack;
4204
4405
  const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_export, wasm.__wbindgen_export2);
@@ -4277,14 +4478,14 @@ function __wbg_get_imports() {
4277
4478
  const ret = arg0.transaction(getStringFromWasm0(arg1, arg2));
4278
4479
  return ret;
4279
4480
  }, arguments); },
4280
- __wbg_tryIntoJsSedimentreeIdsArray_6803cc05ac20ff4f: function() { return handleError(function (arg0, arg1) {
4481
+ __wbg_tryIntoJsSedimentreeIdsArray_e5ce060b44a1b912: function() { return handleError(function (arg0, arg1) {
4281
4482
  const ret = tryIntoJsSedimentreeIdsArray(arg1);
4282
4483
  const ptr1 = passArrayJsValueToWasm0(ret, wasm.__wbindgen_export);
4283
4484
  const len1 = WASM_VECTOR_LEN;
4284
4485
  getDataViewMemory0().setInt32(arg0 + 4 * 1, len1, true);
4285
4486
  getDataViewMemory0().setInt32(arg0 + 4 * 0, ptr1, true);
4286
4487
  }, arguments); },
4287
- __wbg_verifyingKey_28c38fc6525caed5: function(arg0) {
4488
+ __wbg_verifyingKey_cff7231a6c8624d7: function(arg0) {
4288
4489
  const ret = arg0.verifyingKey();
4289
4490
  return ret;
4290
4491
  },
@@ -4298,32 +4499,32 @@ function __wbg_get_imports() {
4298
4499
  },
4299
4500
  __wbindgen_cast_0000000000000001: function(arg0, arg1) {
4300
4501
  // Cast intrinsic for `Closure(Closure { dtor_idx: 11, function: Function { arguments: [Externref], shim_idx: 12, ret: Unit, inner_ret: Some(Unit) }, mutable: true }) -> Externref`.
4301
- const ret = makeMutClosure(arg0, arg1, wasm.__wasm_bindgen_func_elem_285, __wasm_bindgen_func_elem_638);
4502
+ const ret = makeMutClosure(arg0, arg1, wasm.__wasm_bindgen_func_elem_291, __wasm_bindgen_func_elem_658);
4302
4503
  return ret;
4303
4504
  },
4304
4505
  __wbindgen_cast_0000000000000002: function(arg0, arg1) {
4305
4506
  // Cast intrinsic for `Closure(Closure { dtor_idx: 11, function: Function { arguments: [NamedExternref("Event")], shim_idx: 12, ret: Unit, inner_ret: Some(Unit) }, mutable: true }) -> Externref`.
4306
- const ret = makeMutClosure(arg0, arg1, wasm.__wasm_bindgen_func_elem_285, __wasm_bindgen_func_elem_638_1);
4507
+ const ret = makeMutClosure(arg0, arg1, wasm.__wasm_bindgen_func_elem_291, __wasm_bindgen_func_elem_658_1);
4307
4508
  return ret;
4308
4509
  },
4309
4510
  __wbindgen_cast_0000000000000003: function(arg0, arg1) {
4310
4511
  // Cast intrinsic for `Closure(Closure { dtor_idx: 11, function: Function { arguments: [NamedExternref("IDBVersionChangeEvent")], shim_idx: 12, ret: Unit, inner_ret: Some(Unit) }, mutable: true }) -> Externref`.
4311
- const ret = makeMutClosure(arg0, arg1, wasm.__wasm_bindgen_func_elem_285, __wasm_bindgen_func_elem_638_2);
4512
+ const ret = makeMutClosure(arg0, arg1, wasm.__wasm_bindgen_func_elem_291, __wasm_bindgen_func_elem_658_2);
4312
4513
  return ret;
4313
4514
  },
4314
4515
  __wbindgen_cast_0000000000000004: function(arg0, arg1) {
4315
4516
  // Cast intrinsic for `Closure(Closure { dtor_idx: 11, function: Function { arguments: [NamedExternref("MessageEvent")], shim_idx: 12, ret: Unit, inner_ret: Some(Unit) }, mutable: true }) -> Externref`.
4316
- const ret = makeMutClosure(arg0, arg1, wasm.__wasm_bindgen_func_elem_285, __wasm_bindgen_func_elem_638_3);
4517
+ const ret = makeMutClosure(arg0, arg1, wasm.__wasm_bindgen_func_elem_291, __wasm_bindgen_func_elem_658_3);
4317
4518
  return ret;
4318
4519
  },
4319
4520
  __wbindgen_cast_0000000000000005: function(arg0, arg1) {
4320
4521
  // Cast intrinsic for `Closure(Closure { dtor_idx: 11, function: Function { arguments: [], shim_idx: 13, ret: Unit, inner_ret: Some(Unit) }, mutable: false }) -> Externref`.
4321
- const ret = makeClosure(arg0, arg1, wasm.__wasm_bindgen_func_elem_285, __wasm_bindgen_func_elem_637);
4522
+ const ret = makeClosure(arg0, arg1, wasm.__wasm_bindgen_func_elem_291, __wasm_bindgen_func_elem_657);
4322
4523
  return ret;
4323
4524
  },
4324
4525
  __wbindgen_cast_0000000000000006: function(arg0, arg1) {
4325
- // Cast intrinsic for `Closure(Closure { dtor_idx: 672, function: Function { arguments: [Externref], shim_idx: 756, ret: Result(Unit), inner_ret: Some(Result(Unit)) }, mutable: true }) -> Externref`.
4326
- const ret = makeMutClosure(arg0, arg1, wasm.__wasm_bindgen_func_elem_285, __wasm_bindgen_func_elem_1651);
4526
+ // Cast intrinsic for `Closure(Closure { dtor_idx: 686, function: Function { arguments: [Externref], shim_idx: 772, ret: Result(Unit), inner_ret: Some(Result(Unit)) }, mutable: true }) -> Externref`.
4527
+ const ret = makeMutClosure(arg0, arg1, wasm.__wasm_bindgen_func_elem_291, __wasm_bindgen_func_elem_1666);
4327
4528
  return ret;
4328
4529
  },
4329
4530
  __wbindgen_cast_0000000000000007: function(arg0) {
@@ -4389,44 +4590,44 @@ function __wbg_get_imports() {
4389
4590
  return {
4390
4591
  __proto__: null,
4391
4592
  "./subduction_wasm_bg.js": import0,
4392
- "./snippets/subduction_wasm-ec51bcf335db35bd/inline0.js": import1,
4393
- "./snippets/subduction_wasm-ec51bcf335db35bd/inline1.js": import2,
4593
+ "./snippets/subduction_wasm-98b1f8c21c19bd5c/inline0.js": import1,
4594
+ "./snippets/subduction_wasm-98b1f8c21c19bd5c/inline1.js": import2,
4394
4595
  };
4395
4596
  }
4396
4597
 
4397
- function __wasm_bindgen_func_elem_637(arg0, arg1) {
4398
- wasm.__wasm_bindgen_func_elem_637(arg0, arg1);
4598
+ function __wasm_bindgen_func_elem_657(arg0, arg1) {
4599
+ wasm.__wasm_bindgen_func_elem_657(arg0, arg1);
4399
4600
  }
4400
4601
 
4401
- function __wasm_bindgen_func_elem_638(arg0, arg1, arg2) {
4402
- wasm.__wasm_bindgen_func_elem_638(arg0, arg1, arg2);
4602
+ function __wasm_bindgen_func_elem_658(arg0, arg1, arg2) {
4603
+ wasm.__wasm_bindgen_func_elem_658(arg0, arg1, arg2);
4403
4604
  }
4404
4605
 
4405
- function __wasm_bindgen_func_elem_638_1(arg0, arg1, arg2) {
4406
- wasm.__wasm_bindgen_func_elem_638_1(arg0, arg1, arg2);
4606
+ function __wasm_bindgen_func_elem_658_1(arg0, arg1, arg2) {
4607
+ wasm.__wasm_bindgen_func_elem_658_1(arg0, arg1, arg2);
4407
4608
  }
4408
4609
 
4409
- function __wasm_bindgen_func_elem_638_2(arg0, arg1, arg2) {
4410
- wasm.__wasm_bindgen_func_elem_638_2(arg0, arg1, arg2);
4610
+ function __wasm_bindgen_func_elem_658_2(arg0, arg1, arg2) {
4611
+ wasm.__wasm_bindgen_func_elem_658_2(arg0, arg1, arg2);
4411
4612
  }
4412
4613
 
4413
- function __wasm_bindgen_func_elem_638_3(arg0, arg1, arg2) {
4414
- wasm.__wasm_bindgen_func_elem_638_3(arg0, arg1, arg2);
4614
+ function __wasm_bindgen_func_elem_658_3(arg0, arg1, arg2) {
4615
+ wasm.__wasm_bindgen_func_elem_658_3(arg0, arg1, arg2);
4415
4616
  }
4416
4617
 
4417
- function __wasm_bindgen_func_elem_1651(arg0, arg1, arg2) {
4418
- const ret = wasm.__wasm_bindgen_func_elem_1651(arg0, arg1, arg2);
4618
+ function __wasm_bindgen_func_elem_1666(arg0, arg1, arg2) {
4619
+ const ret = wasm.__wasm_bindgen_func_elem_1666(arg0, arg1, arg2);
4419
4620
  if (ret[1]) {
4420
4621
  throw takeFromExternrefTable0(ret[0]);
4421
4622
  }
4422
4623
  }
4423
4624
 
4424
- function __wasm_bindgen_func_elem_1651_194(arg0, arg1, arg2, arg3) {
4425
- wasm.__wasm_bindgen_func_elem_1651_194(arg0, arg1, arg2, arg3);
4625
+ function __wasm_bindgen_func_elem_1666_203(arg0, arg1, arg2, arg3) {
4626
+ wasm.__wasm_bindgen_func_elem_1666_203(arg0, arg1, arg2, arg3);
4426
4627
  }
4427
4628
 
4428
- function __wasm_bindgen_func_elem_1651_195(arg0, arg1, arg2, arg3) {
4429
- wasm.__wasm_bindgen_func_elem_1651_195(arg0, arg1, arg2, arg3);
4629
+ function __wasm_bindgen_func_elem_1666_204(arg0, arg1, arg2, arg3) {
4630
+ wasm.__wasm_bindgen_func_elem_1666_204(arg0, arg1, arg2, arg3);
4430
4631
  }
4431
4632
 
4432
4633
 
@@ -4467,6 +4668,9 @@ const BlobMetaFinalization = (typeof FinalizationRegistry === 'undefined')
4467
4668
  const CallErrorFinalization = (typeof FinalizationRegistry === 'undefined')
4468
4669
  ? { register: () => {}, unregister: () => {} }
4469
4670
  : new FinalizationRegistry(ptr => wasm.__wbg_callerror_free(ptr >>> 0, 1));
4671
+ const CommitIdFinalization = (typeof FinalizationRegistry === 'undefined')
4672
+ ? { register: () => {}, unregister: () => {} }
4673
+ : new FinalizationRegistry(ptr => wasm.__wbg_commitid_free(ptr >>> 0, 1));
4470
4674
  const CommitWithBlobFinalization = (typeof FinalizationRegistry === 'undefined')
4471
4675
  ? { register: () => {}, unregister: () => {} }
4472
4676
  : new FinalizationRegistry(ptr => wasm.__wbg_commitwithblob_free(ptr >>> 0, 1));