@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.
- package/dist/lib/browser/{chunk-RV3JOJQ4.mjs → chunk-BS3FHB7N.mjs} +97 -26
- package/dist/lib/browser/{chunk-RV3JOJQ4.mjs.map → chunk-BS3FHB7N.mjs.map} +3 -3
- package/dist/lib/browser/index.mjs +1 -1
- package/dist/lib/browser/meta.json +1 -1
- package/dist/lib/browser/testing/index.mjs +2 -2
- package/dist/lib/node/{chunk-QIIIHTAB.cjs → chunk-SF4JRMPZ.cjs} +100 -29
- package/dist/lib/node/{chunk-QIIIHTAB.cjs.map → chunk-SF4JRMPZ.cjs.map} +3 -3
- package/dist/lib/node/index.cjs +26 -26
- package/dist/lib/node/index.cjs.map +1 -1
- package/dist/lib/node/meta.json +1 -1
- package/dist/lib/node/testing/index.cjs +16 -16
- package/dist/types/src/automerge/automerge-host.d.ts +2 -0
- package/dist/types/src/automerge/automerge-host.d.ts.map +1 -1
- package/dist/types/src/space/space-manager.d.ts +3 -0
- package/dist/types/src/space/space-manager.d.ts.map +1 -1
- package/package.json +33 -32
- package/src/automerge/automerge-host.ts +64 -8
- package/src/space/space-manager.ts +3 -0
|
@@ -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 = "/
|
|
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 = "/
|
|
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 = "/
|
|
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 = "/
|
|
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 = "/
|
|
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 = "/
|
|
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 = "/
|
|
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 = "/
|
|
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 = "/
|
|
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 = "/
|
|
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 = "/
|
|
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 = "/
|
|
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 = "/
|
|
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:
|
|
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:
|
|
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:
|
|
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 = "/
|
|
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
|
-
|
|
2759
|
-
this.
|
|
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:
|
|
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:
|
|
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:
|
|
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
|
-
|
|
2898
|
+
this.peerId = peerId;
|
|
2878
2899
|
}
|
|
2879
2900
|
send(message) {
|
|
2880
|
-
|
|
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
|
-
|
|
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-
|
|
3040
|
+
//# sourceMappingURL=chunk-BS3FHB7N.mjs.map
|