@dxos/echo-pipeline 0.8.3 → 0.8.4-main.2e9d522
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-TQJTKNMS.mjs → chunk-ANZAS5CC.mjs} +2 -2
- package/dist/lib/browser/{chunk-35I6ERLG.mjs → chunk-GBFX5J5B.mjs} +27 -27
- package/dist/lib/browser/filter/index.mjs +1 -1
- package/dist/lib/browser/index.mjs +162 -93
- package/dist/lib/browser/index.mjs.map +3 -3
- package/dist/lib/browser/meta.json +1 -1
- package/dist/lib/browser/testing/index.mjs +13 -13
- package/dist/lib/node-esm/{chunk-RVK35BS7.mjs → chunk-2SAZ7CCF.mjs} +2 -2
- package/dist/lib/node-esm/{chunk-5BHLPT24.mjs → chunk-FQFKWA3X.mjs} +27 -27
- package/dist/lib/node-esm/filter/index.mjs +1 -1
- package/dist/lib/node-esm/index.mjs +162 -93
- package/dist/lib/node-esm/index.mjs.map +3 -3
- package/dist/lib/node-esm/meta.json +1 -1
- package/dist/lib/node-esm/testing/index.mjs +13 -13
- package/dist/types/src/automerge/echo-network-adapter.d.ts.map +1 -1
- package/dist/types/src/automerge/echo-replicator.d.ts +1 -1
- package/dist/types/src/automerge/echo-replicator.d.ts.map +1 -1
- package/dist/types/src/automerge/index.d.ts +1 -1
- package/dist/types/src/automerge/index.d.ts.map +1 -1
- package/dist/types/src/db-host/documents-synchronizer.d.ts.map +1 -1
- package/dist/types/src/db-host/query-service.d.ts.map +1 -1
- package/dist/types/src/edge/echo-edge-replicator.d.ts.map +1 -1
- package/dist/types/src/query/errors.d.ts +17 -5
- package/dist/types/src/query/errors.d.ts.map +1 -1
- package/dist/types/tsconfig.tsbuildinfo +1 -1
- package/package.json +38 -38
- package/src/automerge/echo-network-adapter.ts +2 -1
- package/src/automerge/echo-replicator.ts +2 -1
- package/src/automerge/index.ts +1 -1
- package/src/db-host/documents-synchronizer.ts +4 -1
- package/src/db-host/query-service.ts +6 -0
- package/src/edge/echo-edge-replicator.ts +31 -11
- package/dist/lib/node/chunk-HOPOFWAL.cjs +0 -147
- package/dist/lib/node/chunk-HOPOFWAL.cjs.map +0 -7
- package/dist/lib/node/chunk-JXX6LF5U.cjs +0 -2084
- package/dist/lib/node/chunk-JXX6LF5U.cjs.map +0 -7
- package/dist/lib/node/chunk-Q7SFCCGT.cjs +0 -33
- package/dist/lib/node/chunk-Q7SFCCGT.cjs.map +0 -7
- package/dist/lib/node/filter/index.cjs +0 -32
- package/dist/lib/node/filter/index.cjs.map +0 -7
- package/dist/lib/node/index.cjs +0 -4699
- package/dist/lib/node/index.cjs.map +0 -7
- package/dist/lib/node/meta.json +0 -1
- package/dist/lib/node/testing/index.cjs +0 -753
- package/dist/lib/node/testing/index.cjs.map +0 -7
- /package/dist/lib/browser/{chunk-TQJTKNMS.mjs.map → chunk-ANZAS5CC.mjs.map} +0 -0
- /package/dist/lib/browser/{chunk-35I6ERLG.mjs.map → chunk-GBFX5J5B.mjs.map} +0 -0
- /package/dist/lib/node-esm/{chunk-RVK35BS7.mjs.map → chunk-2SAZ7CCF.mjs.map} +0 -0
- /package/dist/lib/node-esm/{chunk-5BHLPT24.mjs.map → chunk-FQFKWA3X.mjs.map} +0 -0
|
@@ -2,7 +2,7 @@ import "@dxos/node-std/globals";
|
|
|
2
2
|
import {
|
|
3
3
|
filterMatchObject,
|
|
4
4
|
filterMatchValue
|
|
5
|
-
} from "./chunk-
|
|
5
|
+
} from "./chunk-ANZAS5CC.mjs";
|
|
6
6
|
import {
|
|
7
7
|
AuthExtension,
|
|
8
8
|
AuthStatus,
|
|
@@ -25,24 +25,24 @@ import {
|
|
|
25
25
|
mapTimeframeToFeedIndexes,
|
|
26
26
|
startAfter,
|
|
27
27
|
valueEncoding
|
|
28
|
-
} from "./chunk-
|
|
28
|
+
} from "./chunk-GBFX5J5B.mjs";
|
|
29
29
|
import "./chunk-CGS2ULMK.mjs";
|
|
30
30
|
|
|
31
|
-
//
|
|
31
|
+
// src/db-host/data-service.ts
|
|
32
32
|
import { UpdateScheduler as UpdateScheduler2 } from "@dxos/async";
|
|
33
33
|
import { Stream } from "@dxos/codec-protobuf/stream";
|
|
34
34
|
import { invariant as invariant7 } from "@dxos/invariant";
|
|
35
35
|
import { SpaceId as SpaceId2 } from "@dxos/keys";
|
|
36
36
|
import { log as log7 } from "@dxos/log";
|
|
37
37
|
|
|
38
|
-
//
|
|
38
|
+
// src/db-host/documents-synchronizer.ts
|
|
39
39
|
import { next as A2 } from "@automerge/automerge";
|
|
40
40
|
import { UpdateScheduler } from "@dxos/async";
|
|
41
|
-
import { Resource as Resource5 } from "@dxos/context";
|
|
41
|
+
import { LifecycleState as LifecycleState3, Resource as Resource5 } from "@dxos/context";
|
|
42
42
|
import { invariant as invariant6 } from "@dxos/invariant";
|
|
43
43
|
import { log as log6 } from "@dxos/log";
|
|
44
44
|
|
|
45
|
-
//
|
|
45
|
+
// src/automerge/automerge-host.ts
|
|
46
46
|
import { getBackend, getHeads, isAutomerge, equals as headsEquals, save } from "@automerge/automerge";
|
|
47
47
|
import { Repo, interpretAsDocumentId } from "@automerge/automerge-repo";
|
|
48
48
|
import { Event as Event2, asyncTimeout } from "@dxos/async";
|
|
@@ -55,7 +55,7 @@ import { objectPointerCodec } from "@dxos/protocols";
|
|
|
55
55
|
import { trace as trace2 } from "@dxos/tracing";
|
|
56
56
|
import { bufferToArray } from "@dxos/util";
|
|
57
57
|
|
|
58
|
-
//
|
|
58
|
+
// src/automerge/collection-synchronizer.ts
|
|
59
59
|
import { next as am } from "@automerge/automerge";
|
|
60
60
|
import { asyncReturn, Event, scheduleTask, scheduleTaskInterval } from "@dxos/async";
|
|
61
61
|
import { Resource } from "@dxos/context";
|
|
@@ -68,7 +68,7 @@ function _ts_decorate(decorators, target, key, desc) {
|
|
|
68
68
|
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
69
69
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
70
70
|
}
|
|
71
|
-
var __dxlog_file = "/
|
|
71
|
+
var __dxlog_file = "/__w/dxos/dxos/packages/core/echo/echo-pipeline/src/automerge/collection-synchronizer.ts";
|
|
72
72
|
var MIN_QUERY_INTERVAL = 5e3;
|
|
73
73
|
var POLL_INTERVAL = 3e4;
|
|
74
74
|
var CollectionSynchronizer = class extends Resource {
|
|
@@ -307,7 +307,7 @@ var getSpanName = (peerId) => {
|
|
|
307
307
|
return `collection-sync-${peerId}`;
|
|
308
308
|
};
|
|
309
309
|
|
|
310
|
-
//
|
|
310
|
+
// src/automerge/echo-network-adapter.ts
|
|
311
311
|
import { NetworkAdapter } from "@automerge/automerge-repo";
|
|
312
312
|
import { synchronized, Trigger } from "@dxos/async";
|
|
313
313
|
import { LifecycleState } from "@dxos/context";
|
|
@@ -315,19 +315,19 @@ import { invariant } from "@dxos/invariant";
|
|
|
315
315
|
import { log as log2 } from "@dxos/log";
|
|
316
316
|
import { isNonNullable } from "@dxos/util";
|
|
317
317
|
|
|
318
|
-
//
|
|
318
|
+
// src/automerge/network-protocol.ts
|
|
319
319
|
import { MESSAGE_TYPE_COLLECTION_QUERY, MESSAGE_TYPE_COLLECTION_STATE } from "@dxos/protocols";
|
|
320
320
|
var isCollectionQueryMessage = (message) => message.type === MESSAGE_TYPE_COLLECTION_QUERY;
|
|
321
321
|
var isCollectionStateMessage = (message) => message.type === MESSAGE_TYPE_COLLECTION_STATE;
|
|
322
322
|
|
|
323
|
-
//
|
|
323
|
+
// src/automerge/echo-network-adapter.ts
|
|
324
324
|
function _ts_decorate2(decorators, target, key, desc) {
|
|
325
325
|
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
326
326
|
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
327
327
|
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
328
328
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
329
329
|
}
|
|
330
|
-
var __dxlog_file2 = "/
|
|
330
|
+
var __dxlog_file2 = "/__w/dxos/dxos/packages/core/echo/echo-pipeline/src/automerge/echo-network-adapter.ts";
|
|
331
331
|
var EchoNetworkAdapter = class extends NetworkAdapter {
|
|
332
332
|
constructor(_params) {
|
|
333
333
|
super(), this._params = _params, this._replicators = /* @__PURE__ */ new Set(), this._connections = /* @__PURE__ */ new Map(), this._lifecycleState = LifecycleState.CLOSED, this._connected = new Trigger(), this._ready = new Trigger();
|
|
@@ -592,13 +592,13 @@ var EchoNetworkAdapter = class extends NetworkAdapter {
|
|
|
592
592
|
peerId: connection.peerId
|
|
593
593
|
});
|
|
594
594
|
this._params.monitor?.recordPeerDisconnected(connection.peerId);
|
|
595
|
-
void entry.
|
|
595
|
+
void entry.writer.abort().catch((err) => log2.catch(err, void 0, {
|
|
596
596
|
F: __dxlog_file2,
|
|
597
597
|
L: 284,
|
|
598
598
|
S: this,
|
|
599
599
|
C: (f, a) => f(...a)
|
|
600
600
|
}));
|
|
601
|
-
void entry.
|
|
601
|
+
void entry.reader.cancel().catch((err) => log2.catch(err, void 0, {
|
|
602
602
|
F: __dxlog_file2,
|
|
603
603
|
L: 285,
|
|
604
604
|
S: this,
|
|
@@ -615,14 +615,14 @@ var EchoNetworkAdapter = class extends NetworkAdapter {
|
|
|
615
615
|
peerId: connection.peerId
|
|
616
616
|
}, {
|
|
617
617
|
F: __dxlog_file2,
|
|
618
|
-
L:
|
|
618
|
+
L: 295,
|
|
619
619
|
S: this,
|
|
620
620
|
C: (f, a) => f(...a)
|
|
621
621
|
});
|
|
622
622
|
const entry = this._connections.get(connection.peerId);
|
|
623
623
|
invariant(entry, void 0, {
|
|
624
624
|
F: __dxlog_file2,
|
|
625
|
-
L:
|
|
625
|
+
L: 297,
|
|
626
626
|
S: this,
|
|
627
627
|
A: [
|
|
628
628
|
"entry",
|
|
@@ -659,7 +659,7 @@ var createEchoPeerMetadata = () => ({
|
|
|
659
659
|
});
|
|
660
660
|
var isEchoPeerMetadata = (metadata) => metadata?.dxos_peerSource === "EchoNetworkAdapter";
|
|
661
661
|
|
|
662
|
-
//
|
|
662
|
+
// src/automerge/heads-store.ts
|
|
663
663
|
import { headsEncoding } from "@dxos/indexing";
|
|
664
664
|
var HeadsStore = class {
|
|
665
665
|
constructor({ db }) {
|
|
@@ -681,7 +681,7 @@ var HeadsStore = class {
|
|
|
681
681
|
}
|
|
682
682
|
};
|
|
683
683
|
|
|
684
|
-
//
|
|
684
|
+
// src/automerge/leveldb-storage-adapter.ts
|
|
685
685
|
import { LifecycleState as LifecycleState2, Resource as Resource2 } from "@dxos/context";
|
|
686
686
|
var LevelDBStorageAdapter = class extends Resource2 {
|
|
687
687
|
constructor(_params) {
|
|
@@ -786,14 +786,14 @@ var encodingOptions = {
|
|
|
786
786
|
};
|
|
787
787
|
var isLevelDbNotFoundError = (err) => err.code === "LEVEL_NOT_FOUND";
|
|
788
788
|
|
|
789
|
-
//
|
|
789
|
+
// src/automerge/automerge-host.ts
|
|
790
790
|
function _ts_decorate3(decorators, target, key, desc) {
|
|
791
791
|
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
792
792
|
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
793
793
|
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
794
794
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
795
795
|
}
|
|
796
|
-
var __dxlog_file3 = "/
|
|
796
|
+
var __dxlog_file3 = "/__w/dxos/dxos/packages/core/echo/echo-pipeline/src/automerge/automerge-host.ts";
|
|
797
797
|
var FIND_PARAMS = {
|
|
798
798
|
allowableStates: [
|
|
799
799
|
"ready",
|
|
@@ -1290,20 +1290,20 @@ var encodeCollectionState = (state) => {
|
|
|
1290
1290
|
return state;
|
|
1291
1291
|
};
|
|
1292
1292
|
|
|
1293
|
-
//
|
|
1293
|
+
// src/automerge/mesh-echo-replicator.ts
|
|
1294
1294
|
import { invariant as invariant5 } from "@dxos/invariant";
|
|
1295
1295
|
import { PublicKey as PublicKey2 } from "@dxos/keys";
|
|
1296
1296
|
import { log as log5 } from "@dxos/log";
|
|
1297
1297
|
import { ComplexSet, defaultMap as defaultMap2 } from "@dxos/util";
|
|
1298
1298
|
|
|
1299
|
-
//
|
|
1299
|
+
// src/automerge/mesh-echo-replicator-connection.ts
|
|
1300
1300
|
import * as A from "@automerge/automerge";
|
|
1301
1301
|
import { cbor } from "@automerge/automerge-repo";
|
|
1302
1302
|
import { Resource as Resource4 } from "@dxos/context";
|
|
1303
1303
|
import { invariant as invariant3 } from "@dxos/invariant";
|
|
1304
1304
|
import { log as log4 } from "@dxos/log";
|
|
1305
1305
|
import { AutomergeReplicator } from "@dxos/teleport-extension-automerge-replicator";
|
|
1306
|
-
var __dxlog_file4 = "/
|
|
1306
|
+
var __dxlog_file4 = "/__w/dxos/dxos/packages/core/echo/echo-pipeline/src/automerge/mesh-echo-replicator-connection.ts";
|
|
1307
1307
|
var DEFAULT_FACTORY = (params) => new AutomergeReplicator(...params);
|
|
1308
1308
|
var MeshReplicatorConnection = class extends Resource4 {
|
|
1309
1309
|
constructor(_params) {
|
|
@@ -1441,10 +1441,10 @@ var logSendSync = (message) => {
|
|
|
1441
1441
|
});
|
|
1442
1442
|
};
|
|
1443
1443
|
|
|
1444
|
-
//
|
|
1444
|
+
// src/automerge/space-collection.ts
|
|
1445
1445
|
import { invariant as invariant4 } from "@dxos/invariant";
|
|
1446
1446
|
import { SpaceId } from "@dxos/keys";
|
|
1447
|
-
var __dxlog_file5 = "/
|
|
1447
|
+
var __dxlog_file5 = "/__w/dxos/dxos/packages/core/echo/echo-pipeline/src/automerge/space-collection.ts";
|
|
1448
1448
|
var deriveCollectionIdFromSpaceId = (spaceId, rootDocumentId) => rootDocumentId ? `space:${spaceId}:${rootDocumentId}` : `space:${spaceId}`;
|
|
1449
1449
|
var getSpaceIdFromCollectionId = (collectionId) => {
|
|
1450
1450
|
const spaceId = collectionId.split(":")[1];
|
|
@@ -1460,8 +1460,8 @@ var getSpaceIdFromCollectionId = (collectionId) => {
|
|
|
1460
1460
|
return spaceId;
|
|
1461
1461
|
};
|
|
1462
1462
|
|
|
1463
|
-
//
|
|
1464
|
-
var __dxlog_file6 = "/
|
|
1463
|
+
// src/automerge/mesh-echo-replicator.ts
|
|
1464
|
+
var __dxlog_file6 = "/__w/dxos/dxos/packages/core/echo/echo-pipeline/src/automerge/mesh-echo-replicator.ts";
|
|
1465
1465
|
var MeshEchoReplicator = class {
|
|
1466
1466
|
constructor() {
|
|
1467
1467
|
/**
|
|
@@ -1695,7 +1695,7 @@ var MeshEchoReplicator = class {
|
|
|
1695
1695
|
}
|
|
1696
1696
|
};
|
|
1697
1697
|
|
|
1698
|
-
//
|
|
1698
|
+
// src/automerge/echo-data-monitor.ts
|
|
1699
1699
|
import { trace as trace3 } from "@dxos/tracing";
|
|
1700
1700
|
import { CircularBuffer, mapValues, SlidingWindowSummary } from "@dxos/util";
|
|
1701
1701
|
function _ts_decorate4(decorators, target, key, desc) {
|
|
@@ -2056,8 +2056,8 @@ var getByteCount = (message) => {
|
|
|
2056
2056
|
return message.type.length + message.senderId.length + message.targetId.length + (message.data?.byteLength ?? 0) + (message.documentId?.length ?? 0);
|
|
2057
2057
|
};
|
|
2058
2058
|
|
|
2059
|
-
//
|
|
2060
|
-
var __dxlog_file7 = "/
|
|
2059
|
+
// src/db-host/documents-synchronizer.ts
|
|
2060
|
+
var __dxlog_file7 = "/__w/dxos/dxos/packages/core/echo/echo-pipeline/src/db-host/documents-synchronizer.ts";
|
|
2061
2061
|
var MAX_UPDATE_FREQ = 10;
|
|
2062
2062
|
var DocumentsSynchronizer = class extends Resource5 {
|
|
2063
2063
|
constructor(_params) {
|
|
@@ -2193,10 +2193,13 @@ var DocumentsSynchronizer = class extends Resource5 {
|
|
|
2193
2193
|
return mutation;
|
|
2194
2194
|
}
|
|
2195
2195
|
_writeMutation(documentId, mutation) {
|
|
2196
|
+
if (this._lifecycleState === LifecycleState3.CLOSED) {
|
|
2197
|
+
return;
|
|
2198
|
+
}
|
|
2196
2199
|
const syncState = this._syncStates.get(documentId);
|
|
2197
2200
|
invariant6(syncState, "Sync state for document not found", {
|
|
2198
2201
|
F: __dxlog_file7,
|
|
2199
|
-
L:
|
|
2202
|
+
L: 165,
|
|
2200
2203
|
S: this,
|
|
2201
2204
|
A: [
|
|
2202
2205
|
"syncState",
|
|
@@ -2214,8 +2217,8 @@ var DocumentsSynchronizer = class extends Resource5 {
|
|
|
2214
2217
|
}
|
|
2215
2218
|
};
|
|
2216
2219
|
|
|
2217
|
-
//
|
|
2218
|
-
var __dxlog_file8 = "/
|
|
2220
|
+
// src/db-host/data-service.ts
|
|
2221
|
+
var __dxlog_file8 = "/__w/dxos/dxos/packages/core/echo/echo-pipeline/src/db-host/data-service.ts";
|
|
2219
2222
|
var DataServiceImpl = class {
|
|
2220
2223
|
constructor(params) {
|
|
2221
2224
|
/**
|
|
@@ -2356,8 +2359,8 @@ var DataServiceImpl = class {
|
|
|
2356
2359
|
}
|
|
2357
2360
|
};
|
|
2358
2361
|
|
|
2359
|
-
//
|
|
2360
|
-
import { LifecycleState as
|
|
2362
|
+
// src/db-host/echo-host.ts
|
|
2363
|
+
import { LifecycleState as LifecycleState6, Resource as Resource9 } from "@dxos/context";
|
|
2361
2364
|
import { todo } from "@dxos/debug";
|
|
2362
2365
|
import { createIdFromSpaceKey as createIdFromSpaceKey2, SpaceDocVersion as SpaceDocVersion3 } from "@dxos/echo-protocol";
|
|
2363
2366
|
import { IndexMetadataStore, IndexStore, Indexer } from "@dxos/indexing";
|
|
@@ -2365,14 +2368,14 @@ import { invariant as invariant13 } from "@dxos/invariant";
|
|
|
2365
2368
|
import { IndexKind } from "@dxos/protocols/proto/dxos/echo/indexing";
|
|
2366
2369
|
import { trace as trace5 } from "@dxos/tracing";
|
|
2367
2370
|
|
|
2368
|
-
//
|
|
2371
|
+
// src/db-host/documents-iterator.ts
|
|
2369
2372
|
import * as A3 from "@automerge/automerge";
|
|
2370
2373
|
import { Context as Context2 } from "@dxos/context";
|
|
2371
2374
|
import { DatabaseDirectory as DatabaseDirectory2, SpaceDocVersion } from "@dxos/echo-protocol";
|
|
2372
2375
|
import { invariant as invariant8 } from "@dxos/invariant";
|
|
2373
2376
|
import { log as log8 } from "@dxos/log";
|
|
2374
2377
|
import { ObjectPointerVersion, objectPointerCodec as objectPointerCodec2 } from "@dxos/protocols";
|
|
2375
|
-
var __dxlog_file9 = "/
|
|
2378
|
+
var __dxlog_file9 = "/__w/dxos/dxos/packages/core/echo/echo-pipeline/src/db-host/documents-iterator.ts";
|
|
2376
2379
|
var LOG_VIEW_OPERATION_THRESHOLD = 300;
|
|
2377
2380
|
var createSelectedDocumentsIterator = (automergeHost) => (
|
|
2378
2381
|
/**
|
|
@@ -2453,7 +2456,7 @@ var createSelectedDocumentsIterator = (automergeHost) => (
|
|
|
2453
2456
|
}
|
|
2454
2457
|
);
|
|
2455
2458
|
|
|
2456
|
-
//
|
|
2459
|
+
// src/db-host/query-service.ts
|
|
2457
2460
|
import { getHeads as getHeads3 } from "@automerge/automerge";
|
|
2458
2461
|
import { Schema } from "effect";
|
|
2459
2462
|
import { DeferredTask, scheduleMicroTask, synchronized as synchronized2 } from "@dxos/async";
|
|
@@ -2465,9 +2468,9 @@ import { log as log10 } from "@dxos/log";
|
|
|
2465
2468
|
import { objectPointerCodec as objectPointerCodec4 } from "@dxos/protocols";
|
|
2466
2469
|
import { trace as trace4 } from "@dxos/tracing";
|
|
2467
2470
|
|
|
2468
|
-
//
|
|
2471
|
+
// src/query/query-executor.ts
|
|
2469
2472
|
import { Match } from "effect";
|
|
2470
|
-
import { Context as Context3, ContextDisposedError, LifecycleState as
|
|
2473
|
+
import { Context as Context3, ContextDisposedError, LifecycleState as LifecycleState4, Resource as Resource6 } from "@dxos/context";
|
|
2471
2474
|
import { DatabaseDirectory as DatabaseDirectory3, isEncodedReference, ObjectStructure } from "@dxos/echo-protocol";
|
|
2472
2475
|
import { EscapedPropPath } from "@dxos/indexing";
|
|
2473
2476
|
import { invariant as invariant10 } from "@dxos/invariant";
|
|
@@ -2476,15 +2479,15 @@ import { log as log9 } from "@dxos/log";
|
|
|
2476
2479
|
import { objectPointerCodec as objectPointerCodec3 } from "@dxos/protocols";
|
|
2477
2480
|
import { getDeep, isNonNullable as isNonNullable2 } from "@dxos/util";
|
|
2478
2481
|
|
|
2479
|
-
//
|
|
2482
|
+
// src/query/query-planner.ts
|
|
2480
2483
|
import { invariant as invariant9 } from "@dxos/invariant";
|
|
2481
2484
|
|
|
2482
|
-
//
|
|
2485
|
+
// src/query/errors.ts
|
|
2483
2486
|
import { BaseError } from "@dxos/errors";
|
|
2484
2487
|
var QueryError = class extends BaseError.extend("QUERY_ERROR") {
|
|
2485
2488
|
};
|
|
2486
2489
|
|
|
2487
|
-
//
|
|
2490
|
+
// src/query/plan.ts
|
|
2488
2491
|
(function(QueryPlan2) {
|
|
2489
2492
|
QueryPlan2.Plan = Object.freeze({
|
|
2490
2493
|
make: (steps) => ({
|
|
@@ -2505,8 +2508,8 @@ var QueryError = class extends BaseError.extend("QUERY_ERROR") {
|
|
|
2505
2508
|
})(QueryPlan || (QueryPlan = {}));
|
|
2506
2509
|
var QueryPlan;
|
|
2507
2510
|
|
|
2508
|
-
//
|
|
2509
|
-
var __dxlog_file10 = "/
|
|
2511
|
+
// src/query/query-planner.ts
|
|
2512
|
+
var __dxlog_file10 = "/__w/dxos/dxos/packages/core/echo/echo-pipeline/src/query/query-planner.ts";
|
|
2510
2513
|
var DEFAULT_OPTIONS = {
|
|
2511
2514
|
defaultTextSearchKind: "full-text"
|
|
2512
2515
|
};
|
|
@@ -2950,8 +2953,8 @@ var isTrivialTypenameFilter = (filter) => {
|
|
|
2950
2953
|
return filter.type === "object" && filter.typename !== null && Object.keys(filter.props).length === 0 && (filter.id === void 0 || filter.id.length === 0) && (filter.foreignKeys === void 0 || filter.foreignKeys.length === 0);
|
|
2951
2954
|
};
|
|
2952
2955
|
|
|
2953
|
-
//
|
|
2954
|
-
var __dxlog_file11 = "/
|
|
2956
|
+
// src/query/query-executor.ts
|
|
2957
|
+
var __dxlog_file11 = "/__w/dxos/dxos/packages/core/echo/echo-pipeline/src/query/query-executor.ts";
|
|
2955
2958
|
var ExecutionTrace = Object.freeze({
|
|
2956
2959
|
makeEmpty: () => ({
|
|
2957
2960
|
name: "Empty",
|
|
@@ -3014,7 +3017,7 @@ var QueryExecutor = class extends Resource6 {
|
|
|
3014
3017
|
}));
|
|
3015
3018
|
}
|
|
3016
3019
|
async execQuery() {
|
|
3017
|
-
invariant10(this._lifecycleState ===
|
|
3020
|
+
invariant10(this._lifecycleState === LifecycleState4.OPEN, void 0, {
|
|
3018
3021
|
F: __dxlog_file11,
|
|
3019
3022
|
L: 173,
|
|
3020
3023
|
S: this,
|
|
@@ -3513,14 +3516,14 @@ var QueryExecutor = class extends Resource6 {
|
|
|
3513
3516
|
}
|
|
3514
3517
|
};
|
|
3515
3518
|
|
|
3516
|
-
//
|
|
3519
|
+
// src/db-host/query-service.ts
|
|
3517
3520
|
function _ts_decorate5(decorators, target, key, desc) {
|
|
3518
3521
|
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
3519
3522
|
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
3520
3523
|
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
3521
3524
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
3522
3525
|
}
|
|
3523
|
-
var __dxlog_file12 = "/
|
|
3526
|
+
var __dxlog_file12 = "/__w/dxos/dxos/packages/core/echo/echo-pipeline/src/db-host/query-service.ts";
|
|
3524
3527
|
var QueryServiceImpl = class extends Resource7 {
|
|
3525
3528
|
// TODO(burdon): OK for options, but not params. Pass separately and type readonly here.
|
|
3526
3529
|
constructor(_params) {
|
|
@@ -3552,6 +3555,18 @@ var QueryServiceImpl = class extends Resource7 {
|
|
|
3552
3555
|
}
|
|
3553
3556
|
execQuery(request) {
|
|
3554
3557
|
return new Stream2(({ next, close, ctx }) => {
|
|
3558
|
+
if (this._params.indexer.config?.enabled !== true) {
|
|
3559
|
+
log10.error("indexer is disabled", {
|
|
3560
|
+
config: this._params.indexer.config
|
|
3561
|
+
}, {
|
|
3562
|
+
F: __dxlog_file12,
|
|
3563
|
+
L: 100,
|
|
3564
|
+
S: this,
|
|
3565
|
+
C: (f, a) => f(...a)
|
|
3566
|
+
});
|
|
3567
|
+
close();
|
|
3568
|
+
return;
|
|
3569
|
+
}
|
|
3555
3570
|
const queryEntry = this._createQuery(ctx, request, next, close, close);
|
|
3556
3571
|
scheduleMicroTask(ctx, async () => {
|
|
3557
3572
|
await queryEntry.executor.open();
|
|
@@ -3567,7 +3582,7 @@ var QueryServiceImpl = class extends Resource7 {
|
|
|
3567
3582
|
async reindex() {
|
|
3568
3583
|
log10("Reindexing all documents...", void 0, {
|
|
3569
3584
|
F: __dxlog_file12,
|
|
3570
|
-
L:
|
|
3585
|
+
L: 119,
|
|
3571
3586
|
S: this,
|
|
3572
3587
|
C: (f, a) => f(...a)
|
|
3573
3588
|
});
|
|
@@ -3582,7 +3597,7 @@ var QueryServiceImpl = class extends Resource7 {
|
|
|
3582
3597
|
count: ids.size
|
|
3583
3598
|
}, {
|
|
3584
3599
|
F: __dxlog_file12,
|
|
3585
|
-
L:
|
|
3600
|
+
L: 127,
|
|
3586
3601
|
S: this,
|
|
3587
3602
|
C: (f, a) => f(...a)
|
|
3588
3603
|
});
|
|
@@ -3592,7 +3607,7 @@ var QueryServiceImpl = class extends Resource7 {
|
|
|
3592
3607
|
count: ids.size
|
|
3593
3608
|
}, {
|
|
3594
3609
|
F: __dxlog_file12,
|
|
3595
|
-
L:
|
|
3610
|
+
L: 131,
|
|
3596
3611
|
S: this,
|
|
3597
3612
|
C: (f, a) => f(...a)
|
|
3598
3613
|
});
|
|
@@ -3658,7 +3673,7 @@ var QueryServiceImpl = class extends Resource7 {
|
|
|
3658
3673
|
} catch (err) {
|
|
3659
3674
|
log10.catch(err, void 0, {
|
|
3660
3675
|
F: __dxlog_file12,
|
|
3661
|
-
L:
|
|
3676
|
+
L: 202,
|
|
3662
3677
|
S: this,
|
|
3663
3678
|
C: (f, a) => f(...a)
|
|
3664
3679
|
});
|
|
@@ -3669,7 +3684,7 @@ var QueryServiceImpl = class extends Resource7 {
|
|
|
3669
3684
|
duration: performance.now() - begin
|
|
3670
3685
|
}, {
|
|
3671
3686
|
F: __dxlog_file12,
|
|
3672
|
-
L:
|
|
3687
|
+
L: 206,
|
|
3673
3688
|
S: this,
|
|
3674
3689
|
C: (f, a) => f(...a)
|
|
3675
3690
|
});
|
|
@@ -3720,7 +3735,7 @@ var createDocumentsIterator = (automergeHost) => (
|
|
|
3720
3735
|
}
|
|
3721
3736
|
const linkHandle = await automergeHost.loadDoc(Context4.default(void 0, {
|
|
3722
3737
|
F: __dxlog_file12,
|
|
3723
|
-
L:
|
|
3738
|
+
L: 246
|
|
3724
3739
|
}), urlString);
|
|
3725
3740
|
for await (const result of getObjectsFromHandle(linkHandle)) {
|
|
3726
3741
|
yield result;
|
|
@@ -3741,22 +3756,22 @@ var createDocumentsIterator = (automergeHost) => (
|
|
|
3741
3756
|
}
|
|
3742
3757
|
);
|
|
3743
3758
|
|
|
3744
|
-
//
|
|
3759
|
+
// src/db-host/space-state-manager.ts
|
|
3745
3760
|
import { interpretAsDocumentId as interpretAsDocumentId3 } from "@automerge/automerge-repo";
|
|
3746
3761
|
import isEqual from "lodash.isequal";
|
|
3747
3762
|
import { Event as Event3, UpdateScheduler as UpdateScheduler3 } from "@dxos/async";
|
|
3748
|
-
import { Resource as Resource8, Context as Context5, LifecycleState as
|
|
3763
|
+
import { Resource as Resource8, Context as Context5, LifecycleState as LifecycleState5 } from "@dxos/context";
|
|
3749
3764
|
import { invariant as invariant12 } from "@dxos/invariant";
|
|
3750
3765
|
|
|
3751
|
-
//
|
|
3766
|
+
// src/db-host/database-root.ts
|
|
3752
3767
|
import { interpretAsDocumentId as interpretAsDocumentId2 } from "@automerge/automerge-repo";
|
|
3753
3768
|
import { DatabaseDirectory as DatabaseDirectory5, SpaceDocVersion as SpaceDocVersion2 } from "@dxos/echo-protocol";
|
|
3754
3769
|
import { invariant as invariant11 } from "@dxos/invariant";
|
|
3755
3770
|
|
|
3756
|
-
//
|
|
3771
|
+
// src/db-host/automerge-metrics.ts
|
|
3757
3772
|
import * as A4 from "@automerge/automerge";
|
|
3758
3773
|
import { log as log11 } from "@dxos/log";
|
|
3759
|
-
var __dxlog_file13 = "/
|
|
3774
|
+
var __dxlog_file13 = "/__w/dxos/dxos/packages/core/echo/echo-pipeline/src/db-host/automerge-metrics.ts";
|
|
3760
3775
|
var measureDocMetrics = (doc) => {
|
|
3761
3776
|
const snapshot = A4.save(doc);
|
|
3762
3777
|
const start = Date.now();
|
|
@@ -3783,8 +3798,8 @@ var measureDocMetrics = (doc) => {
|
|
|
3783
3798
|
};
|
|
3784
3799
|
};
|
|
3785
3800
|
|
|
3786
|
-
//
|
|
3787
|
-
var __dxlog_file14 = "/
|
|
3801
|
+
// src/db-host/database-root.ts
|
|
3802
|
+
var __dxlog_file14 = "/__w/dxos/dxos/packages/core/echo/echo-pipeline/src/db-host/database-root.ts";
|
|
3788
3803
|
var DatabaseRoot = class {
|
|
3789
3804
|
static mapLinks(doc, mapping) {
|
|
3790
3805
|
doc.change((d) => {
|
|
@@ -3867,8 +3882,8 @@ var DatabaseRoot = class {
|
|
|
3867
3882
|
}
|
|
3868
3883
|
};
|
|
3869
3884
|
|
|
3870
|
-
//
|
|
3871
|
-
var __dxlog_file15 = "/
|
|
3885
|
+
// src/db-host/space-state-manager.ts
|
|
3886
|
+
var __dxlog_file15 = "/__w/dxos/dxos/packages/core/echo/echo-pipeline/src/db-host/space-state-manager.ts";
|
|
3872
3887
|
var SpaceStateManager = class extends Resource8 {
|
|
3873
3888
|
constructor() {
|
|
3874
3889
|
super(...arguments);
|
|
@@ -3894,7 +3909,7 @@ var SpaceStateManager = class extends Resource8 {
|
|
|
3894
3909
|
return this._rootBySpace.get(spaceId);
|
|
3895
3910
|
}
|
|
3896
3911
|
getRootBySpaceId(spaceId) {
|
|
3897
|
-
invariant12(this._lifecycleState ===
|
|
3912
|
+
invariant12(this._lifecycleState === LifecycleState5.OPEN, void 0, {
|
|
3898
3913
|
F: __dxlog_file15,
|
|
3899
3914
|
L: 44,
|
|
3900
3915
|
S: this,
|
|
@@ -3960,8 +3975,8 @@ var SpaceDocumentListUpdatedEvent = class {
|
|
|
3960
3975
|
}
|
|
3961
3976
|
};
|
|
3962
3977
|
|
|
3963
|
-
//
|
|
3964
|
-
var __dxlog_file16 = "/
|
|
3978
|
+
// src/db-host/echo-host.ts
|
|
3979
|
+
var __dxlog_file16 = "/__w/dxos/dxos/packages/core/echo/echo-pipeline/src/db-host/echo-host.ts";
|
|
3965
3980
|
var DEFAULT_INDEXING_CONFIG = {
|
|
3966
3981
|
// TODO(dmaretskyi): Disabled by default since embedding generation is expensive.
|
|
3967
3982
|
fullText: false,
|
|
@@ -4135,7 +4150,7 @@ var EchoHost = class extends Resource9 {
|
|
|
4135
4150
|
* Create new space root.
|
|
4136
4151
|
*/
|
|
4137
4152
|
async createSpaceRoot(spaceKey) {
|
|
4138
|
-
invariant13(this._lifecycleState ===
|
|
4153
|
+
invariant13(this._lifecycleState === LifecycleState6.OPEN, void 0, {
|
|
4139
4154
|
F: __dxlog_file16,
|
|
4140
4155
|
L: 255,
|
|
4141
4156
|
S: this,
|
|
@@ -4163,7 +4178,7 @@ var EchoHost = class extends Resource9 {
|
|
|
4163
4178
|
}
|
|
4164
4179
|
// TODO(dmaretskyi): Change to document id.
|
|
4165
4180
|
async openSpaceRoot(spaceId, automergeUrl) {
|
|
4166
|
-
invariant13(this._lifecycleState ===
|
|
4181
|
+
invariant13(this._lifecycleState === LifecycleState6.OPEN, void 0, {
|
|
4167
4182
|
F: __dxlog_file16,
|
|
4168
4183
|
L: 274,
|
|
4169
4184
|
S: this,
|
|
@@ -4194,7 +4209,7 @@ var EchoHost = class extends Resource9 {
|
|
|
4194
4209
|
}
|
|
4195
4210
|
};
|
|
4196
4211
|
|
|
4197
|
-
//
|
|
4212
|
+
// src/edge/echo-edge-replicator.ts
|
|
4198
4213
|
import { cbor as cbor2 } from "@automerge/automerge-repo";
|
|
4199
4214
|
import { Mutex, scheduleTask as scheduleTask2, scheduleMicroTask as scheduleMicroTask2 } from "@dxos/async";
|
|
4200
4215
|
import { Context as Context6, Resource as Resource11 } from "@dxos/context";
|
|
@@ -4206,11 +4221,11 @@ import { buf } from "@dxos/protocols/buf";
|
|
|
4206
4221
|
import { MessageSchema as RouterMessageSchema } from "@dxos/protocols/buf/dxos/edge/messenger_pb";
|
|
4207
4222
|
import { bufferToArray as bufferToArray2 } from "@dxos/util";
|
|
4208
4223
|
|
|
4209
|
-
//
|
|
4224
|
+
// src/edge/inflight-request-limiter.ts
|
|
4210
4225
|
import { Trigger as Trigger2 } from "@dxos/async";
|
|
4211
4226
|
import { Resource as Resource10 } from "@dxos/context";
|
|
4212
4227
|
import { log as log12 } from "@dxos/log";
|
|
4213
|
-
var __dxlog_file17 = "/
|
|
4228
|
+
var __dxlog_file17 = "/__w/dxos/dxos/packages/core/echo/echo-pipeline/src/edge/inflight-request-limiter.ts";
|
|
4214
4229
|
var InflightRequestLimiter = class extends Resource10 {
|
|
4215
4230
|
constructor(_config) {
|
|
4216
4231
|
super(), this._config = _config, this._inflightRequestBalance = 0, this._requestBarrier = new Trigger2();
|
|
@@ -4259,7 +4274,7 @@ var InflightRequestLimiter = class extends Resource10 {
|
|
|
4259
4274
|
}
|
|
4260
4275
|
};
|
|
4261
4276
|
|
|
4262
|
-
//
|
|
4277
|
+
// src/edge/echo-edge-replicator.ts
|
|
4263
4278
|
function _ts_add_disposable_resource(env, value, async) {
|
|
4264
4279
|
if (value !== null && value !== void 0) {
|
|
4265
4280
|
if (typeof value !== "object" && typeof value !== "function") throw new TypeError("Object expected.");
|
|
@@ -4325,7 +4340,7 @@ function _ts_dispose_resources(env) {
|
|
|
4325
4340
|
return next();
|
|
4326
4341
|
})(env);
|
|
4327
4342
|
}
|
|
4328
|
-
var __dxlog_file18 = "/
|
|
4343
|
+
var __dxlog_file18 = "/__w/dxos/dxos/packages/core/echo/echo-pipeline/src/edge/echo-edge-replicator.ts";
|
|
4329
4344
|
var INITIAL_RESTART_DELAY = 500;
|
|
4330
4345
|
var RESTART_DELAY_JITTER = 250;
|
|
4331
4346
|
var MAX_RESTART_DELAY = 5e3;
|
|
@@ -4475,9 +4490,25 @@ var EchoEdgeReplicator = class {
|
|
|
4475
4490
|
context: this._context,
|
|
4476
4491
|
sharedPolicyEnabled: this._sharePolicyEnabled,
|
|
4477
4492
|
onRemoteConnected: async () => {
|
|
4493
|
+
log13.trace("dxos.echo.edge.replicator.onRemoteConnected", {
|
|
4494
|
+
spaceId
|
|
4495
|
+
}, {
|
|
4496
|
+
F: __dxlog_file18,
|
|
4497
|
+
L: 135,
|
|
4498
|
+
S: this,
|
|
4499
|
+
C: (f, a) => f(...a)
|
|
4500
|
+
});
|
|
4478
4501
|
this._context?.onConnectionOpen(connection);
|
|
4479
4502
|
},
|
|
4480
4503
|
onRemoteDisconnected: async () => {
|
|
4504
|
+
log13.trace("dxos.echo.edge.replicator.onRemoteDisconnected", {
|
|
4505
|
+
spaceId
|
|
4506
|
+
}, {
|
|
4507
|
+
F: __dxlog_file18,
|
|
4508
|
+
L: 139,
|
|
4509
|
+
S: this,
|
|
4510
|
+
C: (f, a) => f(...a)
|
|
4511
|
+
});
|
|
4481
4512
|
this._context?.onConnectionClosed(connection);
|
|
4482
4513
|
},
|
|
4483
4514
|
onRestartRequested: async () => {
|
|
@@ -4491,7 +4522,7 @@ var EchoEdgeReplicator = class {
|
|
|
4491
4522
|
restartDelay
|
|
4492
4523
|
}, {
|
|
4493
4524
|
F: __dxlog_file18,
|
|
4494
|
-
L:
|
|
4525
|
+
L: 150,
|
|
4495
4526
|
S: this,
|
|
4496
4527
|
C: (f, a) => f(...a)
|
|
4497
4528
|
});
|
|
@@ -4513,6 +4544,16 @@ var EchoEdgeReplicator = class {
|
|
|
4513
4544
|
if (ctx?.disposed) {
|
|
4514
4545
|
return;
|
|
4515
4546
|
}
|
|
4547
|
+
log13.trace("dxos.echo.edge.replicator.restart", {
|
|
4548
|
+
spaceId,
|
|
4549
|
+
reconnects,
|
|
4550
|
+
restartDelay
|
|
4551
|
+
}, {
|
|
4552
|
+
F: __dxlog_file18,
|
|
4553
|
+
L: 167,
|
|
4554
|
+
S: this,
|
|
4555
|
+
C: (f, a) => f(...a)
|
|
4556
|
+
});
|
|
4516
4557
|
await this._openConnection(spaceId, reconnects + 1);
|
|
4517
4558
|
} catch (e) {
|
|
4518
4559
|
env.error = e;
|
|
@@ -4561,7 +4602,7 @@ var EdgeReplicatorConnection = class extends Resource11 {
|
|
|
4561
4602
|
async _open(ctx) {
|
|
4562
4603
|
log13("opening...", void 0, {
|
|
4563
4604
|
F: __dxlog_file18,
|
|
4564
|
-
L:
|
|
4605
|
+
L: 254,
|
|
4565
4606
|
S: this,
|
|
4566
4607
|
C: (f, a) => f(...a)
|
|
4567
4608
|
});
|
|
@@ -4569,12 +4610,29 @@ var EdgeReplicatorConnection = class extends Resource11 {
|
|
|
4569
4610
|
this._ctx.onDispose(this._edgeConnection.onMessage((msg) => {
|
|
4570
4611
|
this._onMessage(msg);
|
|
4571
4612
|
}));
|
|
4613
|
+
let firstReconnect = true;
|
|
4614
|
+
this._ctx.onDispose(
|
|
4615
|
+
// NOTE: This will fire immediately if the connection is already open.
|
|
4616
|
+
this._edgeConnection.onReconnected(async () => {
|
|
4617
|
+
if (firstReconnect) {
|
|
4618
|
+
log13.verbose("first reconnect skipped", void 0, {
|
|
4619
|
+
F: __dxlog_file18,
|
|
4620
|
+
L: 269,
|
|
4621
|
+
S: this,
|
|
4622
|
+
C: (f, a) => f(...a)
|
|
4623
|
+
});
|
|
4624
|
+
firstReconnect = false;
|
|
4625
|
+
return;
|
|
4626
|
+
}
|
|
4627
|
+
this._onRestartRequested();
|
|
4628
|
+
})
|
|
4629
|
+
);
|
|
4572
4630
|
await this._onRemoteConnected();
|
|
4573
4631
|
}
|
|
4574
4632
|
async _close() {
|
|
4575
4633
|
log13("closing...", void 0, {
|
|
4576
4634
|
F: __dxlog_file18,
|
|
4577
|
-
L:
|
|
4635
|
+
L: 282,
|
|
4578
4636
|
S: this,
|
|
4579
4637
|
C: (f, a) => f(...a)
|
|
4580
4638
|
});
|
|
@@ -4585,7 +4643,7 @@ var EdgeReplicatorConnection = class extends Resource11 {
|
|
|
4585
4643
|
get peerId() {
|
|
4586
4644
|
invariant14(this._remotePeerId, "Not connected", {
|
|
4587
4645
|
F: __dxlog_file18,
|
|
4588
|
-
L:
|
|
4646
|
+
L: 291,
|
|
4589
4647
|
S: this,
|
|
4590
4648
|
A: [
|
|
4591
4649
|
"this._remotePeerId",
|
|
@@ -4610,7 +4668,7 @@ var EdgeReplicatorConnection = class extends Resource11 {
|
|
|
4610
4668
|
remoteId: this._remotePeerId
|
|
4611
4669
|
}, {
|
|
4612
4670
|
F: __dxlog_file18,
|
|
4613
|
-
L:
|
|
4671
|
+
L: 306,
|
|
4614
4672
|
S: this,
|
|
4615
4673
|
C: (f, a) => f(...a)
|
|
4616
4674
|
});
|
|
@@ -4636,7 +4694,7 @@ var EdgeReplicatorConnection = class extends Resource11 {
|
|
|
4636
4694
|
remoteId: this._remotePeerId
|
|
4637
4695
|
}, {
|
|
4638
4696
|
F: __dxlog_file18,
|
|
4639
|
-
L:
|
|
4697
|
+
L: 335,
|
|
4640
4698
|
S: this,
|
|
4641
4699
|
C: (f, a) => f(...a)
|
|
4642
4700
|
});
|
|
@@ -4659,26 +4717,37 @@ var EdgeReplicatorConnection = class extends Resource11 {
|
|
|
4659
4717
|
remoteId: this._remotePeerId
|
|
4660
4718
|
}, {
|
|
4661
4719
|
F: __dxlog_file18,
|
|
4662
|
-
L:
|
|
4720
|
+
L: 364,
|
|
4663
4721
|
S: this,
|
|
4664
4722
|
C: (f, a) => f(...a)
|
|
4665
4723
|
});
|
|
4666
4724
|
const encoded = cbor2.encode(message);
|
|
4667
|
-
|
|
4668
|
-
|
|
4669
|
-
|
|
4670
|
-
|
|
4671
|
-
|
|
4672
|
-
|
|
4673
|
-
|
|
4674
|
-
|
|
4675
|
-
|
|
4676
|
-
|
|
4725
|
+
try {
|
|
4726
|
+
await this._edgeConnection.send(buf.create(RouterMessageSchema, {
|
|
4727
|
+
serviceId: this._targetServiceId,
|
|
4728
|
+
source: {
|
|
4729
|
+
identityKey: this._edgeConnection.identityKey,
|
|
4730
|
+
peerKey: this._edgeConnection.peerKey
|
|
4731
|
+
},
|
|
4732
|
+
payload: {
|
|
4733
|
+
value: bufferToArray2(encoded)
|
|
4734
|
+
}
|
|
4735
|
+
}));
|
|
4736
|
+
} catch (err) {
|
|
4737
|
+
log13.error("failed to send message", {
|
|
4738
|
+
err
|
|
4739
|
+
}, {
|
|
4740
|
+
F: __dxlog_file18,
|
|
4741
|
+
L: 384,
|
|
4742
|
+
S: this,
|
|
4743
|
+
C: (f, a) => f(...a)
|
|
4744
|
+
});
|
|
4745
|
+
}
|
|
4677
4746
|
}
|
|
4678
4747
|
};
|
|
4679
4748
|
var isForbiddenErrorMessage = (message) => message.type === "error" && message.message === "Forbidden";
|
|
4680
4749
|
|
|
4681
|
-
//
|
|
4750
|
+
// src/util.ts
|
|
4682
4751
|
import { decodeReference, ObjectStructure as ObjectStructure2 } from "@dxos/echo-protocol";
|
|
4683
4752
|
var findInlineObjectOfType = (spaceDoc, typename) => {
|
|
4684
4753
|
for (const id in spaceDoc.objects ?? {}) {
|