@dxos/echo-pipeline 0.3.9-next.7522f7a → 0.3.9

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.
@@ -15,7 +15,7 @@ var valueEncoding = createCodecEncoding(codec);
15
15
 
16
16
  // packages/core/echo/echo-pipeline/src/common/feeds.ts
17
17
  import { invariant } from "@dxos/invariant";
18
- var __dxlog_file = "/home/runner/work/dxos/dxos/packages/core/echo/echo-pipeline/src/common/feeds.ts";
18
+ var __dxlog_file = "/mnt/ramdisk/work/packages/core/echo/echo-pipeline/src/common/feeds.ts";
19
19
  var createMappedFeedWriter = (mapper, writer) => {
20
20
  invariant(mapper, void 0, {
21
21
  F: __dxlog_file,
@@ -49,7 +49,7 @@ import { invariant as invariant2 } from "@dxos/invariant";
49
49
  import { log } from "@dxos/log";
50
50
  import { EchoEvent } from "@dxos/protocols/proto/dxos/echo/service";
51
51
  import { ComplexMap } from "@dxos/util";
52
- var __dxlog_file2 = "/home/runner/work/dxos/dxos/packages/core/echo/echo-pipeline/src/db-host/data-service-host.ts";
52
+ var __dxlog_file2 = "/mnt/ramdisk/work/packages/core/echo/echo-pipeline/src/db-host/data-service-host.ts";
53
53
  var MUTATION_LIMIT_PER_OBJECT = 10;
54
54
  var DataServiceHost = class {
55
55
  constructor(_itemManager, _itemDemuxer, _flush, _writeStream, _opts = {}) {
@@ -378,7 +378,7 @@ import { invariant as invariant3 } from "@dxos/invariant";
378
378
  import { PublicKey as PublicKey2 } from "@dxos/keys";
379
379
  import { log as log2 } from "@dxos/log";
380
380
  import { ComplexMap as ComplexMap2 } from "@dxos/util";
381
- var __dxlog_file3 = "/home/runner/work/dxos/dxos/packages/core/echo/echo-pipeline/src/db-host/data-service.ts";
381
+ var __dxlog_file3 = "/mnt/ramdisk/work/packages/core/echo/echo-pipeline/src/db-host/data-service.ts";
382
382
  var DataServiceSubscriptions = class {
383
383
  constructor() {
384
384
  this._spaces = new ComplexMap2(PublicKey2.hash);
@@ -508,7 +508,7 @@ function _ts_decorate(decorators, target, key, desc) {
508
508
  r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
509
509
  return c > 3 && r && Object.defineProperty(target, key, r), r;
510
510
  }
511
- var __dxlog_file4 = "/home/runner/work/dxos/dxos/packages/core/echo/echo-pipeline/src/metadata/metadata-store.ts";
511
+ var __dxlog_file4 = "/mnt/ramdisk/work/packages/core/echo/echo-pipeline/src/metadata/metadata-store.ts";
512
512
  var emptyEchoMetadata = () => ({
513
513
  version: STORAGE_VERSION,
514
514
  spaces: [],
@@ -808,7 +808,7 @@ function _ts_decorate2(decorators, target, key, desc) {
808
808
  r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
809
809
  return c > 3 && r && Object.defineProperty(target, key, r), r;
810
810
  }
811
- var __dxlog_file5 = "/home/runner/work/dxos/dxos/packages/core/echo/echo-pipeline/src/pipeline/timeframe-clock.ts";
811
+ var __dxlog_file5 = "/mnt/ramdisk/work/packages/core/echo/echo-pipeline/src/pipeline/timeframe-clock.ts";
812
812
  var mapTimeframeToFeedIndexes = (timeframe) => timeframe.frames().map(([feedKey, index]) => ({
813
813
  feedKey,
814
814
  index
@@ -904,7 +904,7 @@ import { ComplexMap as ComplexMap4 } from "@dxos/util";
904
904
  // packages/core/echo/echo-pipeline/src/pipeline/message-selector.ts
905
905
  import { invariant as invariant5 } from "@dxos/invariant";
906
906
  import { log as log5 } from "@dxos/log";
907
- var __dxlog_file6 = "/home/runner/work/dxos/dxos/packages/core/echo/echo-pipeline/src/pipeline/message-selector.ts";
907
+ var __dxlog_file6 = "/mnt/ramdisk/work/packages/core/echo/echo-pipeline/src/pipeline/message-selector.ts";
908
908
  var createMessageSelector = (timeframeClock) => {
909
909
  return (messages) => {
910
910
  for (let i = 0; i < messages.length; i++) {
@@ -942,7 +942,7 @@ function _ts_decorate3(decorators, target, key, desc) {
942
942
  r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
943
943
  return c > 3 && r && Object.defineProperty(target, key, r), r;
944
944
  }
945
- var __dxlog_file7 = "/home/runner/work/dxos/dxos/packages/core/echo/echo-pipeline/src/pipeline/pipeline.ts";
945
+ var __dxlog_file7 = "/mnt/ramdisk/work/packages/core/echo/echo-pipeline/src/pipeline/pipeline.ts";
946
946
  var PipelineState = class {
947
947
  constructor(_feeds, _timeframeClock) {
948
948
  this._feeds = _feeds;
@@ -1354,7 +1354,7 @@ import { invariant as invariant7 } from "@dxos/invariant";
1354
1354
  import { log as log7 } from "@dxos/log";
1355
1355
  import { schema as schema5 } from "@dxos/protocols";
1356
1356
  import { RpcExtension } from "@dxos/teleport";
1357
- var __dxlog_file8 = "/home/runner/work/dxos/dxos/packages/core/echo/echo-pipeline/src/space/auth.ts";
1357
+ var __dxlog_file8 = "/mnt/ramdisk/work/packages/core/echo/echo-pipeline/src/space/auth.ts";
1358
1358
  var AuthExtension = class extends RpcExtension {
1359
1359
  constructor(_authParams) {
1360
1360
  super({
@@ -1474,7 +1474,7 @@ function _ts_decorate4(decorators, target, key, desc) {
1474
1474
  r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
1475
1475
  return c > 3 && r && Object.defineProperty(target, key, r), r;
1476
1476
  }
1477
- var __dxlog_file9 = "/home/runner/work/dxos/dxos/packages/core/echo/echo-pipeline/src/space/data-pipeline.ts";
1477
+ var __dxlog_file9 = "/mnt/ramdisk/work/packages/core/echo/echo-pipeline/src/space/data-pipeline.ts";
1478
1478
  var MESSAGES_PER_SNAPSHOT = 10;
1479
1479
  var AUTOMATIC_SNAPSHOT_DEBOUNCE_INTERVAL = 5e3;
1480
1480
  var TIMEFRAME_SAVE_DEBOUNCE_INTERVAL = 5e3;
@@ -1948,7 +1948,7 @@ function _ts_decorate5(decorators, target, key, desc) {
1948
1948
  r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
1949
1949
  return c > 3 && r && Object.defineProperty(target, key, r), r;
1950
1950
  }
1951
- var __dxlog_file10 = "/home/runner/work/dxos/dxos/packages/core/echo/echo-pipeline/src/space/control-pipeline.ts";
1951
+ var __dxlog_file10 = "/mnt/ramdisk/work/packages/core/echo/echo-pipeline/src/space/control-pipeline.ts";
1952
1952
  var TIMEFRAME_SAVE_DEBOUNCE_INTERVAL2 = 500;
1953
1953
  var CONTROL_PIPELINE_SNAPSHOT_DELAY = 1e4;
1954
1954
  var USE_SNAPSHOTS = true;
@@ -2197,7 +2197,7 @@ function _ts_decorate6(decorators, target, key, desc) {
2197
2197
  r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
2198
2198
  return c > 3 && r && Object.defineProperty(target, key, r), r;
2199
2199
  }
2200
- var __dxlog_file11 = "/home/runner/work/dxos/dxos/packages/core/echo/echo-pipeline/src/space/space.ts";
2200
+ var __dxlog_file11 = "/mnt/ramdisk/work/packages/core/echo/echo-pipeline/src/space/space.ts";
2201
2201
  var Space = class Space2 {
2202
2202
  constructor(params) {
2203
2203
  this._addFeedLock = new Lock();
@@ -2454,7 +2454,7 @@ function _ts_decorate7(decorators, target, key, desc) {
2454
2454
  r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
2455
2455
  return c > 3 && r && Object.defineProperty(target, key, r), r;
2456
2456
  }
2457
- var __dxlog_file12 = "/home/runner/work/dxos/dxos/packages/core/echo/echo-pipeline/src/space/space-protocol.ts";
2457
+ var __dxlog_file12 = "/mnt/ramdisk/work/packages/core/echo/echo-pipeline/src/space/space-protocol.ts";
2458
2458
  var MOCK_AUTH_PROVIDER = async (nonce) => Buffer.from("mock");
2459
2459
  var MOCK_AUTH_VERIFIER = async (nonce, credential) => true;
2460
2460
  var SpaceProtocol = class {
@@ -2659,7 +2659,7 @@ function _ts_decorate8(decorators, target, key, desc) {
2659
2659
  r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
2660
2660
  return c > 3 && r && Object.defineProperty(target, key, r), r;
2661
2661
  }
2662
- var __dxlog_file13 = "/home/runner/work/dxos/dxos/packages/core/echo/echo-pipeline/src/space/space-manager.ts";
2662
+ var __dxlog_file13 = "/mnt/ramdisk/work/packages/core/echo/echo-pipeline/src/space/space-manager.ts";
2663
2663
  var SpaceManager = class SpaceManager2 {
2664
2664
  constructor({ feedStore, networkManager, modelFactory, metadataStore, snapshotStore, blobStore }) {
2665
2665
  this._spaces = new ComplexMap6(PublicKey7.hash);
@@ -2687,7 +2687,7 @@ var SpaceManager = class SpaceManager2 {
2687
2687
  id: this._instanceId
2688
2688
  }), {
2689
2689
  F: __dxlog_file13,
2690
- L: 97,
2690
+ L: 100,
2691
2691
  S: this,
2692
2692
  C: (f, a) => f(...a)
2693
2693
  });
@@ -2695,7 +2695,7 @@ var SpaceManager = class SpaceManager2 {
2695
2695
  spaceKey: metadata.genesisFeedKey
2696
2696
  }, {
2697
2697
  F: __dxlog_file13,
2698
- L: 98,
2698
+ L: 101,
2699
2699
  S: this,
2700
2700
  C: (f, a) => f(...a)
2701
2701
  });
@@ -2725,7 +2725,7 @@ var SpaceManager = class SpaceManager2 {
2725
2725
  id: this._instanceId
2726
2726
  }), {
2727
2727
  F: __dxlog_file13,
2728
- L: 126,
2728
+ L: 129,
2729
2729
  S: this,
2730
2730
  C: (f, a) => f(...a)
2731
2731
  });
@@ -2746,8 +2746,10 @@ SpaceManager = _ts_decorate8([
2746
2746
  import { Repo, NetworkAdapter, StorageAdapter, cbor } from "@dxos/automerge/automerge-repo";
2747
2747
  import { Stream as Stream2 } from "@dxos/codec-protobuf";
2748
2748
  import { invariant as invariant10 } from "@dxos/invariant";
2749
+ import { log as log13 } from "@dxos/log";
2750
+ import { AutomergeReplicator } from "@dxos/teleport-extension-automerge-replicator";
2749
2751
  import { arrayToBuffer as arrayToBuffer2, bufferToArray } from "@dxos/util";
2750
- var __dxlog_file14 = "/home/runner/work/dxos/dxos/packages/core/echo/echo-pipeline/src/automerge/automerge-host.ts";
2752
+ var __dxlog_file14 = "/mnt/ramdisk/work/packages/core/echo/echo-pipeline/src/automerge/automerge-host.ts";
2751
2753
  var AutomergeHost = class {
2752
2754
  constructor(storageDirectory) {
2753
2755
  this._meshNetwork = new MeshNetworkAdapter();
@@ -2755,14 +2757,15 @@ var AutomergeHost = class {
2755
2757
  this._storage = new AutomergeStorageAdapter(storageDirectory);
2756
2758
  this._repo = new Repo({
2757
2759
  network: [
2758
- // this._meshNetwork,
2759
- this._clientNetwork
2760
+ this._clientNetwork,
2761
+ this._meshNetwork
2760
2762
  ],
2761
2763
  storage: this._storage,
2762
2764
  // TODO(dmaretskyi): Share based on HALO permissions and space affinity.
2763
2765
  sharePolicy: async (peerId, documentId) => true
2764
2766
  });
2765
2767
  this._clientNetwork.ready();
2768
+ this._meshNetwork.ready();
2766
2769
  }
2767
2770
  get repo() {
2768
2771
  return this._repo;
@@ -2782,6 +2785,12 @@ var AutomergeHost = class {
2782
2785
  getHostInfo() {
2783
2786
  return this._clientNetwork.getHostInfo();
2784
2787
  }
2788
+ //
2789
+ // Mesh replication.
2790
+ //
2791
+ createExtension() {
2792
+ return this._meshNetwork.createExtension();
2793
+ }
2785
2794
  };
2786
2795
  var LocalHostNetworkAdapter = class extends NetworkAdapter {
2787
2796
  constructor() {
@@ -2803,7 +2812,7 @@ var LocalHostNetworkAdapter = class extends NetworkAdapter {
2803
2812
  const peer = this._peers.get(message.targetId);
2804
2813
  invariant10(peer, "Peer not found.", {
2805
2814
  F: __dxlog_file14,
2806
- L: 100,
2815
+ L: 108,
2807
2816
  S: this,
2808
2817
  A: [
2809
2818
  "peer",
@@ -2823,7 +2832,7 @@ var LocalHostNetworkAdapter = class extends NetworkAdapter {
2823
2832
  return new Stream2(({ next, close }) => {
2824
2833
  invariant10(!this._peers.has(peerId), "Peer already connected.", {
2825
2834
  F: __dxlog_file14,
2826
- L: 118,
2835
+ L: 126,
2827
2836
  S: this,
2828
2837
  A: [
2829
2838
  "!this._peers.has(peerId)",
@@ -2857,7 +2866,7 @@ var LocalHostNetworkAdapter = class extends NetworkAdapter {
2857
2866
  getHostInfo() {
2858
2867
  invariant10(this.peerId, "Peer id not set.", {
2859
2868
  F: __dxlog_file14,
2860
- L: 147,
2869
+ L: 155,
2861
2870
  S: this,
2862
2871
  A: [
2863
2872
  "this.peerId",
@@ -2873,14 +2882,76 @@ var LocalHostNetworkAdapter = class extends NetworkAdapter {
2873
2882
  }
2874
2883
  };
2875
2884
  var MeshNetworkAdapter = class extends NetworkAdapter {
2885
+ constructor() {
2886
+ super(...arguments);
2887
+ this._extensions = /* @__PURE__ */ new Map();
2888
+ }
2889
+ /**
2890
+ * Emits `ready` event. That signals to `Repo` that it can start using the adapter.
2891
+ */
2892
+ ready() {
2893
+ this.emit("ready", {
2894
+ network: this
2895
+ });
2896
+ }
2876
2897
  connect(peerId) {
2877
- throw new Error("Method not implemented.");
2898
+ this.peerId = peerId;
2878
2899
  }
2879
2900
  send(message) {
2880
- throw new Error("Method not implemented.");
2901
+ const receiverId = message.targetId;
2902
+ const extension = this._extensions.get(receiverId);
2903
+ invariant10(extension, "Extension not found.", {
2904
+ F: __dxlog_file14,
2905
+ L: 190,
2906
+ S: this,
2907
+ A: [
2908
+ "extension",
2909
+ "'Extension not found.'"
2910
+ ]
2911
+ });
2912
+ extension.sendSyncMessage({
2913
+ payload: cbor.encode(message)
2914
+ }).catch((err) => log13.catch(err, void 0, {
2915
+ F: __dxlog_file14,
2916
+ L: 191,
2917
+ S: this,
2918
+ C: (f, a) => f(...a)
2919
+ }));
2881
2920
  }
2882
2921
  disconnect() {
2883
- throw new Error("Method not implemented.");
2922
+ }
2923
+ createExtension() {
2924
+ invariant10(this.peerId, "Peer id not set.", {
2925
+ F: __dxlog_file14,
2926
+ L: 199,
2927
+ S: this,
2928
+ A: [
2929
+ "this.peerId",
2930
+ "'Peer id not set.'"
2931
+ ]
2932
+ });
2933
+ let peerInfo;
2934
+ const extension = new AutomergeReplicator({
2935
+ peerId: this.peerId
2936
+ }, {
2937
+ onStartReplication: async (info) => {
2938
+ peerInfo = info;
2939
+ this._extensions.set(info.id, extension);
2940
+ this.emit("peer-candidate", {
2941
+ peerId: info.id
2942
+ });
2943
+ },
2944
+ onSyncMessage: async ({ payload }) => {
2945
+ const message = cbor.decode(payload);
2946
+ this.emit("message", message);
2947
+ },
2948
+ onClose: async () => {
2949
+ peerInfo && this.emit("peer-disconnected", {
2950
+ peerId: peerInfo.id
2951
+ });
2952
+ }
2953
+ });
2954
+ return extension;
2884
2955
  }
2885
2956
  };
2886
2957
  var AutomergeStorageAdapter = class extends StorageAdapter {
@@ -2966,4 +3037,4 @@ export {
2966
3037
  SpaceManager,
2967
3038
  AutomergeHost
2968
3039
  };
2969
- //# sourceMappingURL=chunk-RV3JOJQ4.mjs.map
3040
+ //# sourceMappingURL=chunk-BS3FHB7N.mjs.map