@dxos/echo-pipeline 0.3.11-main.d3a2438 → 0.3.11-main.d56f337

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 (29) hide show
  1. package/dist/lib/browser/{chunk-W3SSYW3X.mjs → chunk-44D2XTQP.mjs} +33 -27
  2. package/dist/lib/browser/chunk-44D2XTQP.mjs.map +7 -0
  3. package/dist/lib/browser/index.mjs +3 -1
  4. package/dist/lib/browser/meta.json +1 -1
  5. package/dist/lib/browser/testing/index.mjs +29 -7
  6. package/dist/lib/browser/testing/index.mjs.map +4 -4
  7. package/dist/lib/node/{chunk-KTFCZMAY.cjs → chunk-PZONK23P.cjs} +36 -29
  8. package/dist/lib/node/chunk-PZONK23P.cjs.map +7 -0
  9. package/dist/lib/node/index.cjs +28 -26
  10. package/dist/lib/node/index.cjs.map +2 -2
  11. package/dist/lib/node/meta.json +1 -1
  12. package/dist/lib/node/testing/index.cjs +42 -21
  13. package/dist/lib/node/testing/index.cjs.map +4 -4
  14. package/dist/types/src/automerge/automerge-host.d.ts +12 -1
  15. package/dist/types/src/automerge/automerge-host.d.ts.map +1 -1
  16. package/dist/types/src/metadata/metadata-store.d.ts +1 -3
  17. package/dist/types/src/metadata/metadata-store.d.ts.map +1 -1
  18. package/dist/types/src/testing/change-metadata.d.ts +8 -0
  19. package/dist/types/src/testing/change-metadata.d.ts.map +1 -0
  20. package/dist/types/src/testing/index.d.ts +1 -0
  21. package/dist/types/src/testing/index.d.ts.map +1 -1
  22. package/package.json +33 -33
  23. package/src/automerge/automerge-host.test.ts +29 -1
  24. package/src/automerge/automerge-host.ts +10 -4
  25. package/src/metadata/metadata-store.ts +12 -2
  26. package/src/testing/change-metadata.ts +27 -0
  27. package/src/testing/index.ts +1 -0
  28. package/dist/lib/browser/chunk-W3SSYW3X.mjs.map +0 -7
  29. package/dist/lib/node/chunk-KTFCZMAY.cjs.map +0 -7
@@ -519,12 +519,12 @@ var emptyLargeSpaceMetadata = () => ({});
519
519
  var EchoMetadata = schema4.getCodecForType("dxos.echo.metadata.EchoMetadata");
520
520
  var LargeSpaceMetadata = schema4.getCodecForType("dxos.echo.metadata.LargeSpaceMetadata");
521
521
  var MetadataStore = class {
522
- constructor(_directory) {
523
- this._directory = _directory;
522
+ constructor(directory) {
524
523
  this._metadata = emptyEchoMetadata();
525
524
  this._spaceLargeMetadata = new ComplexMap3(PublicKey3.hash);
526
525
  this._metadataFile = void 0;
527
526
  this.update = new Event();
527
+ this._directory = directory;
528
528
  }
529
529
  get metadata() {
530
530
  return this._metadata;
@@ -553,7 +553,7 @@ var MetadataStore = class {
553
553
  name: file.filename
554
554
  }, {
555
555
  F: __dxlog_file4,
556
- L: 78,
556
+ L: 85,
557
557
  S: this,
558
558
  C: (f, a) => f(...a)
559
559
  });
@@ -573,6 +573,9 @@ var MetadataStore = class {
573
573
  await file.close();
574
574
  }
575
575
  }
576
+ /**
577
+ * @internal
578
+ */
576
579
  async _writeFile(file, codec2, data) {
577
580
  const encoded = arrayToBuffer(codec2.encode(data));
578
581
  const checksum = CRC32.buf(encoded);
@@ -586,7 +589,7 @@ var MetadataStore = class {
586
589
  checksum
587
590
  }, {
588
591
  F: __dxlog_file4,
589
- L: 110,
592
+ L: 120,
590
593
  S: this,
591
594
  C: (f, a) => f(...a)
592
595
  });
@@ -618,7 +621,7 @@ var MetadataStore = class {
618
621
  err
619
622
  }, {
620
623
  F: __dxlog_file4,
621
- L: 141,
624
+ L: 151,
622
625
  S: this,
623
626
  C: (f, a) => f(...a)
624
627
  });
@@ -635,7 +638,7 @@ var MetadataStore = class {
635
638
  err
636
639
  }, {
637
640
  F: __dxlog_file4,
638
- L: 153,
641
+ L: 163,
639
642
  S: this,
640
643
  C: (f, a) => f(...a)
641
644
  });
@@ -665,7 +668,7 @@ var MetadataStore = class {
665
668
  err
666
669
  }, {
667
670
  F: __dxlog_file4,
668
- L: 182,
671
+ L: 192,
669
672
  S: this,
670
673
  C: (f, a) => f(...a)
671
674
  });
@@ -686,7 +689,7 @@ var MetadataStore = class {
686
689
  const space = this.spaces.find((space2) => space2.key === spaceKey);
687
690
  invariant4(space, "Space not found", {
688
691
  F: __dxlog_file4,
689
- L: 204,
692
+ L: 214,
690
693
  S: this,
691
694
  A: [
692
695
  "space",
@@ -710,7 +713,7 @@ var MetadataStore = class {
710
713
  async clear() {
711
714
  log3("clearing all metadata", void 0, {
712
715
  F: __dxlog_file4,
713
- L: 223,
716
+ L: 233,
714
717
  S: this,
715
718
  C: (f, a) => f(...a)
716
719
  });
@@ -723,7 +726,7 @@ var MetadataStore = class {
723
726
  async setIdentityRecord(record) {
724
727
  invariant4(!this._metadata.identity, "Cannot overwrite existing identity in metadata", {
725
728
  F: __dxlog_file4,
726
- L: 233,
729
+ L: 243,
727
730
  S: this,
728
731
  A: [
729
732
  "!this._metadata.identity",
@@ -737,7 +740,7 @@ var MetadataStore = class {
737
740
  async addSpace(record) {
738
741
  invariant4(!(this._metadata.spaces ?? []).find((space) => space.key === record.key), "Cannot overwrite existing space in metadata", {
739
742
  F: __dxlog_file4,
740
- L: 241,
743
+ L: 251,
741
744
  S: this,
742
745
  A: [
743
746
  "!(this._metadata.spaces ?? []).find((space) => space.key === record.key)",
@@ -1478,7 +1481,7 @@ var __dxlog_file9 = "/home/runner/work/dxos/dxos/packages/core/echo/echo-pipelin
1478
1481
  var MESSAGES_PER_SNAPSHOT = 10;
1479
1482
  var AUTOMATIC_SNAPSHOT_DEBOUNCE_INTERVAL = 5e3;
1480
1483
  var TIMEFRAME_SAVE_DEBOUNCE_INTERVAL = 5e3;
1481
- var DataPipeline = class DataPipeline2 {
1484
+ var DataPipeline = class {
1482
1485
  constructor(_params) {
1483
1486
  this._params = _params;
1484
1487
  this._ctx = new Context4();
@@ -1952,7 +1955,7 @@ var __dxlog_file10 = "/home/runner/work/dxos/dxos/packages/core/echo/echo-pipeli
1952
1955
  var TIMEFRAME_SAVE_DEBOUNCE_INTERVAL2 = 500;
1953
1956
  var CONTROL_PIPELINE_SNAPSHOT_DELAY = 1e4;
1954
1957
  var USE_SNAPSHOTS = true;
1955
- var ControlPipeline = class ControlPipeline2 {
1958
+ var ControlPipeline = class {
1956
1959
  constructor({ spaceKey, genesisFeed, feedProvider, metadataStore }) {
1957
1960
  this._ctx = new Context5();
1958
1961
  this._lastTimeframeSaveTime = Date.now();
@@ -2198,7 +2201,7 @@ function _ts_decorate6(decorators, target, key, desc) {
2198
2201
  return c > 3 && r && Object.defineProperty(target, key, r), r;
2199
2202
  }
2200
2203
  var __dxlog_file11 = "/home/runner/work/dxos/dxos/packages/core/echo/echo-pipeline/src/space/space.ts";
2201
- var Space = class Space2 {
2204
+ var Space = class {
2202
2205
  constructor(params) {
2203
2206
  this._addFeedLock = new Lock();
2204
2207
  this.onCredentialProcessed = new Callback2();
@@ -2582,7 +2585,7 @@ var SpaceProtocolSession = class {
2582
2585
  this.replicator = new ReplicatorExtension().setOptions({
2583
2586
  upload: true
2584
2587
  });
2585
- this._authStatus = AuthStatus.INITIAL;
2588
+ this._authStatus = "INITIAL";
2586
2589
  this._wireParams = wireParams;
2587
2590
  this._swarmIdentity = swarmIdentity;
2588
2591
  this._onSessionAuth = onSessionAuth;
@@ -2611,11 +2614,11 @@ var SpaceProtocolSession = class {
2611
2614
  S: this,
2612
2615
  C: (f, a) => f(...a)
2613
2616
  });
2614
- this._authStatus = AuthStatus.SUCCESS;
2617
+ this._authStatus = "SUCCESS";
2615
2618
  this._onSessionAuth?.(this._teleport);
2616
2619
  },
2617
2620
  onAuthFailure: () => {
2618
- this._authStatus = AuthStatus.FAILURE;
2621
+ this._authStatus = "FAILURE";
2619
2622
  this._onAuthFailure?.(this._teleport);
2620
2623
  }
2621
2624
  }));
@@ -2660,7 +2663,7 @@ function _ts_decorate8(decorators, target, key, desc) {
2660
2663
  return c > 3 && r && Object.defineProperty(target, key, r), r;
2661
2664
  }
2662
2665
  var __dxlog_file13 = "/home/runner/work/dxos/dxos/packages/core/echo/echo-pipeline/src/space/space-manager.ts";
2663
- var SpaceManager = class SpaceManager2 {
2666
+ var SpaceManager = class {
2664
2667
  constructor({ feedStore, networkManager, modelFactory, metadataStore, snapshotStore, blobStore }) {
2665
2668
  this._spaces = new ComplexMap6(PublicKey7.hash);
2666
2669
  this._instanceId = PublicKey7.random().toHex();
@@ -2744,9 +2747,11 @@ SpaceManager = _ts_decorate8([
2744
2747
 
2745
2748
  // packages/core/echo/echo-pipeline/src/automerge/automerge-host.ts
2746
2749
  import { Repo, NetworkAdapter, StorageAdapter, cbor } from "@dxos/automerge/automerge-repo";
2750
+ import { IndexedDBStorageAdapter } from "@dxos/automerge/automerge-repo-storage-indexeddb";
2747
2751
  import { Stream as Stream2 } from "@dxos/codec-protobuf";
2748
2752
  import { invariant as invariant10 } from "@dxos/invariant";
2749
2753
  import { log as log13 } from "@dxos/log";
2754
+ import { StorageType } from "@dxos/random-access-storage";
2750
2755
  import { AutomergeReplicator } from "@dxos/teleport-extension-automerge-replicator";
2751
2756
  import { arrayToBuffer as arrayToBuffer2, bufferToArray } from "@dxos/util";
2752
2757
  var __dxlog_file14 = "/home/runner/work/dxos/dxos/packages/core/echo/echo-pipeline/src/automerge/automerge-host.ts";
@@ -2754,7 +2759,7 @@ var AutomergeHost = class {
2754
2759
  constructor(storageDirectory) {
2755
2760
  this._meshNetwork = new MeshNetworkAdapter();
2756
2761
  this._clientNetwork = new LocalHostNetworkAdapter();
2757
- this._storage = new AutomergeStorageAdapter(storageDirectory);
2762
+ this._storage = storageDirectory.type === StorageType.IDB ? new IndexedDBStorageAdapter(storageDirectory.path, "data") : new AutomergeStorageAdapter(storageDirectory);
2758
2763
  this._repo = new Repo({
2759
2764
  network: [
2760
2765
  this._clientNetwork,
@@ -2812,7 +2817,7 @@ var LocalHostNetworkAdapter = class extends NetworkAdapter {
2812
2817
  const peer = this._peers.get(message.targetId);
2813
2818
  invariant10(peer, "Peer not found.", {
2814
2819
  F: __dxlog_file14,
2815
- L: 108,
2820
+ L: 114,
2816
2821
  S: this,
2817
2822
  A: [
2818
2823
  "peer",
@@ -2832,7 +2837,7 @@ var LocalHostNetworkAdapter = class extends NetworkAdapter {
2832
2837
  return new Stream2(({ next, close }) => {
2833
2838
  invariant10(!this._peers.has(peerId), "Peer already connected.", {
2834
2839
  F: __dxlog_file14,
2835
- L: 126,
2840
+ L: 132,
2836
2841
  S: this,
2837
2842
  A: [
2838
2843
  "!this._peers.has(peerId)",
@@ -2866,7 +2871,7 @@ var LocalHostNetworkAdapter = class extends NetworkAdapter {
2866
2871
  getHostInfo() {
2867
2872
  invariant10(this.peerId, "Peer id not set.", {
2868
2873
  F: __dxlog_file14,
2869
- L: 155,
2874
+ L: 161,
2870
2875
  S: this,
2871
2876
  A: [
2872
2877
  "this.peerId",
@@ -2902,7 +2907,7 @@ var MeshNetworkAdapter = class extends NetworkAdapter {
2902
2907
  const extension = this._extensions.get(receiverId);
2903
2908
  invariant10(extension, "Extension not found.", {
2904
2909
  F: __dxlog_file14,
2905
- L: 190,
2910
+ L: 196,
2906
2911
  S: this,
2907
2912
  A: [
2908
2913
  "extension",
@@ -2913,7 +2918,7 @@ var MeshNetworkAdapter = class extends NetworkAdapter {
2913
2918
  payload: cbor.encode(message)
2914
2919
  }).catch((err) => log13.catch(err, void 0, {
2915
2920
  F: __dxlog_file14,
2916
- L: 191,
2921
+ L: 197,
2917
2922
  S: this,
2918
2923
  C: (f, a) => f(...a)
2919
2924
  }));
@@ -2923,7 +2928,7 @@ var MeshNetworkAdapter = class extends NetworkAdapter {
2923
2928
  createExtension() {
2924
2929
  invariant10(this.peerId, "Peer id not set.", {
2925
2930
  F: __dxlog_file14,
2926
- L: 199,
2931
+ L: 205,
2927
2932
  S: this,
2928
2933
  A: [
2929
2934
  "this.peerId",
@@ -3038,6 +3043,7 @@ export {
3038
3043
  AuthStatus,
3039
3044
  SpaceProtocolSession,
3040
3045
  SpaceManager,
3041
- AutomergeHost
3046
+ AutomergeHost,
3047
+ AutomergeStorageAdapter
3042
3048
  };
3043
- //# sourceMappingURL=chunk-W3SSYW3X.mjs.map
3049
+ //# sourceMappingURL=chunk-44D2XTQP.mjs.map