@dxos/echo-pipeline 0.4.8-main.27faba7 → 0.4.8-main.512e4c8
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-LED7X4WK.mjs → chunk-XR2636AC.mjs} +34 -25
- package/dist/lib/browser/{chunk-LED7X4WK.mjs.map → chunk-XR2636AC.mjs.map} +3 -3
- package/dist/lib/browser/index.mjs +3 -1
- package/dist/lib/browser/meta.json +1 -1
- package/dist/lib/browser/testing/index.mjs +4 -4
- package/dist/lib/browser/testing/index.mjs.map +2 -2
- package/dist/lib/node/{chunk-UKREXVZX.cjs → chunk-LD4R726W.cjs} +46 -36
- package/dist/lib/node/{chunk-UKREXVZX.cjs.map → chunk-LD4R726W.cjs.map} +3 -3
- package/dist/lib/node/index.cjs +31 -29
- package/dist/lib/node/index.cjs.map +2 -2
- package/dist/lib/node/meta.json +1 -1
- package/dist/lib/node/testing/index.cjs +19 -19
- package/dist/lib/node/testing/index.cjs.map +2 -2
- package/dist/types/src/automerge/automerge-host.d.ts +2 -1
- package/dist/types/src/automerge/automerge-host.d.ts.map +1 -1
- package/dist/types/src/automerge/automerge-storage-adapter.d.ts +2 -2
- package/dist/types/src/automerge/automerge-storage-adapter.d.ts.map +1 -1
- package/dist/types/src/testing/database-test-rig.d.ts.map +1 -1
- package/package.json +33 -33
- package/src/automerge/automerge-host.ts +24 -22
- package/src/automerge/automerge-storage-adapter.ts +8 -10
- package/src/testing/database-test-rig.ts +2 -0
- package/dist/types/src/tests/database-unit.test.d.ts +0 -2
- package/dist/types/src/tests/database-unit.test.d.ts.map +0 -1
- package/src/tests/database-unit.test.ts +0 -325
|
@@ -26,8 +26,8 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
|
|
|
26
26
|
mod
|
|
27
27
|
));
|
|
28
28
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
29
|
-
var
|
|
30
|
-
__export(
|
|
29
|
+
var chunk_LD4R726W_exports = {};
|
|
30
|
+
__export(chunk_LD4R726W_exports, {
|
|
31
31
|
AuthExtension: () => AuthExtension,
|
|
32
32
|
AuthStatus: () => AuthStatus,
|
|
33
33
|
AutomergeHost: () => AutomergeHost,
|
|
@@ -52,12 +52,13 @@ __export(chunk_UKREXVZX_exports, {
|
|
|
52
52
|
TimeframeClock: () => TimeframeClock,
|
|
53
53
|
codec: () => codec,
|
|
54
54
|
createMappedFeedWriter: () => createMappedFeedWriter,
|
|
55
|
+
getSpaceKeyFromDoc: () => getSpaceKeyFromDoc,
|
|
55
56
|
mapFeedIndexesToTimeframe: () => mapFeedIndexesToTimeframe,
|
|
56
57
|
mapTimeframeToFeedIndexes: () => mapTimeframeToFeedIndexes,
|
|
57
58
|
startAfter: () => startAfter,
|
|
58
59
|
valueEncoding: () => valueEncoding
|
|
59
60
|
});
|
|
60
|
-
module.exports = __toCommonJS(
|
|
61
|
+
module.exports = __toCommonJS(chunk_LD4R726W_exports);
|
|
61
62
|
var import_hypercore = require("@dxos/hypercore");
|
|
62
63
|
var import_protocols = require("@dxos/protocols");
|
|
63
64
|
var import_invariant = require("@dxos/invariant");
|
|
@@ -152,20 +153,19 @@ var import_keys7 = require("@dxos/keys");
|
|
|
152
153
|
var import_log12 = require("@dxos/log");
|
|
153
154
|
var import_protocols7 = require("@dxos/protocols");
|
|
154
155
|
var import_util9 = require("@dxos/util");
|
|
155
|
-
var import_automerge_repo = require("@dxos/automerge/automerge-repo");
|
|
156
156
|
var import_util10 = require("@dxos/util");
|
|
157
157
|
var import_async10 = require("@dxos/async");
|
|
158
|
-
var
|
|
158
|
+
var import_automerge_repo = require("@dxos/automerge/automerge-repo");
|
|
159
159
|
var import_codec_protobuf2 = require("@dxos/codec-protobuf");
|
|
160
160
|
var import_invariant10 = require("@dxos/invariant");
|
|
161
161
|
var import_log13 = require("@dxos/log");
|
|
162
162
|
var import_async11 = require("@dxos/async");
|
|
163
|
-
var
|
|
163
|
+
var import_automerge_repo2 = require("@dxos/automerge/automerge-repo");
|
|
164
164
|
var import_invariant11 = require("@dxos/invariant");
|
|
165
165
|
var import_log14 = require("@dxos/log");
|
|
166
166
|
var import_teleport_extension_automerge_replicator = require("@dxos/teleport-extension-automerge-replicator");
|
|
167
167
|
var import_automerge = require("@dxos/automerge/automerge");
|
|
168
|
-
var
|
|
168
|
+
var import_automerge_repo3 = require("@dxos/automerge/automerge-repo");
|
|
169
169
|
var import_automerge_repo_storage_indexeddb = require("@dxos/automerge/automerge-repo-storage-indexeddb");
|
|
170
170
|
var import_context8 = require("@dxos/context");
|
|
171
171
|
var import_keys8 = require("@dxos/keys");
|
|
@@ -2823,9 +2823,8 @@ _ts_decorate8([
|
|
|
2823
2823
|
SpaceManager = _ts_decorate8([
|
|
2824
2824
|
(0, import_async9.trackLeaks)("open", "close")
|
|
2825
2825
|
], SpaceManager);
|
|
2826
|
-
var AutomergeStorageAdapter = class
|
|
2826
|
+
var AutomergeStorageAdapter = class {
|
|
2827
2827
|
constructor(_directory) {
|
|
2828
|
-
super();
|
|
2829
2828
|
this._directory = _directory;
|
|
2830
2829
|
this._state = "opened";
|
|
2831
2830
|
}
|
|
@@ -2898,7 +2897,7 @@ var AutomergeStorageAdapter = class extends import_automerge_repo.StorageAdapter
|
|
|
2898
2897
|
}
|
|
2899
2898
|
};
|
|
2900
2899
|
var __dxlog_file14 = "/home/runner/work/dxos/dxos/packages/core/echo/echo-pipeline/src/automerge/local-host-network-adapter.ts";
|
|
2901
|
-
var LocalHostNetworkAdapter = class extends
|
|
2900
|
+
var LocalHostNetworkAdapter = class extends import_automerge_repo.NetworkAdapter {
|
|
2902
2901
|
constructor() {
|
|
2903
2902
|
super(...arguments);
|
|
2904
2903
|
this._peers = /* @__PURE__ */ new Map();
|
|
@@ -2951,7 +2950,7 @@ var LocalHostNetworkAdapter = class extends import_automerge_repo2.NetworkAdapte
|
|
|
2951
2950
|
connected: true,
|
|
2952
2951
|
send: (message) => {
|
|
2953
2952
|
next({
|
|
2954
|
-
syncMessage:
|
|
2953
|
+
syncMessage: import_automerge_repo.cbor.encode(message)
|
|
2955
2954
|
});
|
|
2956
2955
|
},
|
|
2957
2956
|
disconnect: () => {
|
|
@@ -2981,7 +2980,7 @@ var LocalHostNetworkAdapter = class extends import_automerge_repo2.NetworkAdapte
|
|
|
2981
2980
|
await this._connected.wait({
|
|
2982
2981
|
timeout: 1e3
|
|
2983
2982
|
});
|
|
2984
|
-
const message =
|
|
2983
|
+
const message = import_automerge_repo.cbor.decode(syncMessage);
|
|
2985
2984
|
this.emit("message", message);
|
|
2986
2985
|
}
|
|
2987
2986
|
async getHostInfo() {
|
|
@@ -3006,7 +3005,7 @@ var LocalHostNetworkAdapter = class extends import_automerge_repo2.NetworkAdapte
|
|
|
3006
3005
|
}
|
|
3007
3006
|
};
|
|
3008
3007
|
var __dxlog_file15 = "/home/runner/work/dxos/dxos/packages/core/echo/echo-pipeline/src/automerge/mesh-network-adapter.ts";
|
|
3009
|
-
var MeshNetworkAdapter = class extends
|
|
3008
|
+
var MeshNetworkAdapter = class extends import_automerge_repo2.NetworkAdapter {
|
|
3010
3009
|
constructor() {
|
|
3011
3010
|
super(...arguments);
|
|
3012
3011
|
this._extensions = /* @__PURE__ */ new Map();
|
|
@@ -3037,7 +3036,7 @@ var MeshNetworkAdapter = class extends import_automerge_repo3.NetworkAdapter {
|
|
|
3037
3036
|
]
|
|
3038
3037
|
});
|
|
3039
3038
|
extension.sendSyncMessage({
|
|
3040
|
-
payload:
|
|
3039
|
+
payload: import_automerge_repo2.cbor.encode(message)
|
|
3041
3040
|
}).catch((err) => import_log14.log.catch(err, void 0, {
|
|
3042
3041
|
F: __dxlog_file15,
|
|
3043
3042
|
L: 39,
|
|
@@ -3099,7 +3098,7 @@ var MeshNetworkAdapter = class extends import_automerge_repo3.NetworkAdapter {
|
|
|
3099
3098
|
if (!peerInfo) {
|
|
3100
3099
|
return;
|
|
3101
3100
|
}
|
|
3102
|
-
const message =
|
|
3101
|
+
const message = import_automerge_repo2.cbor.decode(payload);
|
|
3103
3102
|
this.emit("message", message);
|
|
3104
3103
|
},
|
|
3105
3104
|
onClose: async () => {
|
|
@@ -3173,7 +3172,7 @@ var AutomergeHost = class {
|
|
|
3173
3172
|
}
|
|
3174
3173
|
});
|
|
3175
3174
|
this._peerId = `host-${import_keys8.PublicKey.random().toHex()}`;
|
|
3176
|
-
this._repo = new
|
|
3175
|
+
this._repo = new import_automerge_repo3.Repo({
|
|
3177
3176
|
peerId: this._peerId,
|
|
3178
3177
|
network: [
|
|
3179
3178
|
this._clientNetwork,
|
|
@@ -3205,21 +3204,20 @@ var AutomergeHost = class {
|
|
|
3205
3204
|
return isRequested;
|
|
3206
3205
|
}
|
|
3207
3206
|
try {
|
|
3208
|
-
const
|
|
3209
|
-
if (!
|
|
3207
|
+
const spaceKey = getSpaceKeyFromDoc(doc);
|
|
3208
|
+
if (!spaceKey) {
|
|
3210
3209
|
(0, import_log15.log)("space key not found for share policy check", {
|
|
3211
3210
|
peerId,
|
|
3212
3211
|
documentId
|
|
3213
3212
|
}, {
|
|
3214
3213
|
F: __dxlog_file16,
|
|
3215
|
-
L:
|
|
3214
|
+
L: 103,
|
|
3216
3215
|
S: this,
|
|
3217
3216
|
C: (f, a) => f(...a)
|
|
3218
3217
|
});
|
|
3219
3218
|
return false;
|
|
3220
3219
|
}
|
|
3221
|
-
const
|
|
3222
|
-
const authorizedDevices = this._authorizedDevices.get(spaceKey);
|
|
3220
|
+
const authorizedDevices = this._authorizedDevices.get(import_keys8.PublicKey.from(spaceKey));
|
|
3223
3221
|
const deviceKeyHex = this.repo.peerMetadataByPeerId[peerId]?.dxos_deviceKey;
|
|
3224
3222
|
if (!deviceKeyHex) {
|
|
3225
3223
|
(0, import_log15.log)("device key not found for share policy check", {
|
|
@@ -3227,7 +3225,7 @@ var AutomergeHost = class {
|
|
|
3227
3225
|
documentId
|
|
3228
3226
|
}, {
|
|
3229
3227
|
F: __dxlog_file16,
|
|
3230
|
-
L:
|
|
3228
|
+
L: 112,
|
|
3231
3229
|
S: this,
|
|
3232
3230
|
C: (f, a) => f(...a)
|
|
3233
3231
|
});
|
|
@@ -3244,7 +3242,7 @@ var AutomergeHost = class {
|
|
|
3244
3242
|
isAuthorized
|
|
3245
3243
|
}, {
|
|
3246
3244
|
F: __dxlog_file16,
|
|
3247
|
-
L:
|
|
3245
|
+
L: 118,
|
|
3248
3246
|
S: this,
|
|
3249
3247
|
C: (f, a) => f(...a)
|
|
3250
3248
|
});
|
|
@@ -3252,7 +3250,7 @@ var AutomergeHost = class {
|
|
|
3252
3250
|
} catch (err) {
|
|
3253
3251
|
import_log15.log.catch(err, void 0, {
|
|
3254
3252
|
F: __dxlog_file16,
|
|
3255
|
-
L:
|
|
3253
|
+
L: 128,
|
|
3256
3254
|
S: this,
|
|
3257
3255
|
C: (f, a) => f(...a)
|
|
3258
3256
|
});
|
|
@@ -3287,8 +3285,8 @@ var AutomergeHost = class {
|
|
|
3287
3285
|
});
|
|
3288
3286
|
}
|
|
3289
3287
|
_onUpdate(event) {
|
|
3290
|
-
const spaceKey = event.doc
|
|
3291
|
-
if (!spaceKey) {
|
|
3288
|
+
const spaceKey = getSpaceKeyFromDoc(event.doc);
|
|
3289
|
+
if (!spaceKey || this._metadata == null) {
|
|
3292
3290
|
return;
|
|
3293
3291
|
}
|
|
3294
3292
|
const objectIds = getInlineChanges(event);
|
|
@@ -3300,17 +3298,21 @@ var AutomergeHost = class {
|
|
|
3300
3298
|
if (!lastAvailableHash) {
|
|
3301
3299
|
return;
|
|
3302
3300
|
}
|
|
3303
|
-
const
|
|
3304
|
-
|
|
3305
|
-
|
|
3306
|
-
|
|
3307
|
-
|
|
3308
|
-
|
|
3301
|
+
const encodedIds = objectIds.map((objectId) => import_protocols8.idCodec.encode({
|
|
3302
|
+
documentId: event.handle.documentId,
|
|
3303
|
+
objectId,
|
|
3304
|
+
spaceKey
|
|
3305
|
+
}));
|
|
3306
|
+
const idToLastHash = new Map(encodedIds.map((id) => [
|
|
3307
|
+
id,
|
|
3308
|
+
lastAvailableHash
|
|
3309
|
+
]));
|
|
3310
|
+
const markingDirtyPromise = this._metadata.markDirty(idToLastHash).then(() => {
|
|
3309
3311
|
this._updatingMetadata.delete(event.handle.documentId);
|
|
3310
3312
|
}).catch((err) => {
|
|
3311
|
-
|
|
3313
|
+
this._ctx.disposed && import_log15.log.catch(err, void 0, {
|
|
3312
3314
|
F: __dxlog_file16,
|
|
3313
|
-
L:
|
|
3315
|
+
L: 191,
|
|
3314
3316
|
S: this,
|
|
3315
3317
|
C: (f, a) => f(...a)
|
|
3316
3318
|
});
|
|
@@ -3371,7 +3373,7 @@ var AutomergeHost = class {
|
|
|
3371
3373
|
deviceKey
|
|
3372
3374
|
}, {
|
|
3373
3375
|
F: __dxlog_file16,
|
|
3374
|
-
L:
|
|
3376
|
+
L: 258,
|
|
3375
3377
|
S: this,
|
|
3376
3378
|
C: (f, a) => f(...a)
|
|
3377
3379
|
});
|
|
@@ -3412,6 +3414,13 @@ var getInlineChanges = (event) => {
|
|
|
3412
3414
|
...inlineChangedObjectIds
|
|
3413
3415
|
];
|
|
3414
3416
|
};
|
|
3417
|
+
var getSpaceKeyFromDoc = (doc) => {
|
|
3418
|
+
const rawSpaceKey = doc.access?.spaceKey ?? doc.experimental_spaceKey;
|
|
3419
|
+
if (rawSpaceKey == null) {
|
|
3420
|
+
return null;
|
|
3421
|
+
}
|
|
3422
|
+
return String(rawSpaceKey);
|
|
3423
|
+
};
|
|
3415
3424
|
// Annotate the CommonJS export names for ESM import in node:
|
|
3416
3425
|
0 && (module.exports = {
|
|
3417
3426
|
AuthExtension,
|
|
@@ -3438,9 +3447,10 @@ var getInlineChanges = (event) => {
|
|
|
3438
3447
|
TimeframeClock,
|
|
3439
3448
|
codec,
|
|
3440
3449
|
createMappedFeedWriter,
|
|
3450
|
+
getSpaceKeyFromDoc,
|
|
3441
3451
|
mapFeedIndexesToTimeframe,
|
|
3442
3452
|
mapTimeframeToFeedIndexes,
|
|
3443
3453
|
startAfter,
|
|
3444
3454
|
valueEncoding
|
|
3445
3455
|
});
|
|
3446
|
-
//# sourceMappingURL=chunk-
|
|
3456
|
+
//# sourceMappingURL=chunk-LD4R726W.cjs.map
|