@dxos/echo-db 2.33.8 → 2.33.9-dev.7c8c6a09
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/src/api/result-set.js +4 -4
- package/dist/src/api/result-set.js.map +1 -1
- package/dist/src/echo.js +2 -2
- package/dist/src/echo.js.map +1 -1
- package/dist/src/echo.test.js +2 -2
- package/dist/src/echo.test.js.map +1 -1
- package/dist/src/halo/halo-factory.d.ts +1 -1
- package/dist/src/halo/halo-factory.d.ts.map +1 -1
- package/dist/src/halo/halo-factory.js +15 -14
- package/dist/src/halo/halo-factory.js.map +1 -1
- package/dist/src/halo/halo-party.d.ts +4 -6
- package/dist/src/halo/halo-party.d.ts.map +1 -1
- package/dist/src/halo/halo-party.js +12 -6
- package/dist/src/halo/halo-party.js.map +1 -1
- package/dist/src/halo/halo.js +9 -9
- package/dist/src/halo/halo.js.map +1 -1
- package/dist/src/halo/identity-manager.d.ts.map +1 -1
- package/dist/src/halo/identity-manager.js +13 -7
- package/dist/src/halo/identity-manager.js.map +1 -1
- package/dist/src/halo/identity.js +2 -2
- package/dist/src/halo/identity.js.map +1 -1
- package/dist/src/halo/party-opener.d.ts.map +1 -1
- package/dist/src/halo/party-opener.js +2 -4
- package/dist/src/halo/party-opener.js.map +1 -1
- package/dist/src/halo/preferences.d.ts.map +1 -1
- package/dist/src/halo/preferences.js +9 -12
- package/dist/src/halo/preferences.js.map +1 -1
- package/dist/src/invitations/greeting-initiator.d.ts +5 -4
- package/dist/src/invitations/greeting-initiator.d.ts.map +1 -1
- package/dist/src/invitations/greeting-initiator.js +7 -7
- package/dist/src/invitations/greeting-initiator.js.map +1 -1
- package/dist/src/invitations/greeting-responder.d.ts +4 -7
- package/dist/src/invitations/greeting-responder.d.ts.map +1 -1
- package/dist/src/invitations/greeting-responder.js +9 -23
- package/dist/src/invitations/greeting-responder.js.map +1 -1
- package/dist/src/invitations/halo-recovery-initiator.js +6 -6
- package/dist/src/invitations/halo-recovery-initiator.js.map +1 -1
- package/dist/src/invitations/invitation-descriptor.js +9 -9
- package/dist/src/invitations/invitation-descriptor.js.map +1 -1
- package/dist/src/invitations/invitation-factory.d.ts +2 -1
- package/dist/src/invitations/invitation-factory.d.ts.map +1 -1
- package/dist/src/invitations/invitation-factory.js +6 -8
- package/dist/src/invitations/invitation-factory.js.map +1 -1
- package/dist/src/invitations/offline-invitation-claimer.js +7 -7
- package/dist/src/invitations/offline-invitation-claimer.js.map +1 -1
- package/dist/src/packlets/database/data-mirror.js +8 -8
- package/dist/src/packlets/database/data-mirror.js.map +1 -1
- package/dist/src/packlets/database/data-mirror.test.js +1 -1
- package/dist/src/packlets/database/data-mirror.test.js.map +1 -1
- package/dist/src/packlets/database/data-service-host.js +3 -3
- package/dist/src/packlets/database/data-service-host.js.map +1 -1
- package/dist/src/packlets/database/data-service-router.js +5 -5
- package/dist/src/packlets/database/data-service-router.js.map +1 -1
- package/dist/src/packlets/database/database-backend.js +3 -3
- package/dist/src/packlets/database/database-backend.js.map +1 -1
- package/dist/src/packlets/database/database.js +2 -2
- package/dist/src/packlets/database/database.js.map +1 -1
- package/dist/src/packlets/database/item-demuxer.js +14 -14
- package/dist/src/packlets/database/item-demuxer.js.map +1 -1
- package/dist/src/packlets/database/item-demuxer.test.js +1 -1
- package/dist/src/packlets/database/item-demuxer.test.js.map +1 -1
- package/dist/src/packlets/database/item-manager.js +18 -18
- package/dist/src/packlets/database/item-manager.js.map +1 -1
- package/dist/src/packlets/database/link.js +3 -3
- package/dist/src/packlets/database/link.js.map +1 -1
- package/dist/src/packlets/database/selection/result.js +2 -2
- package/dist/src/packlets/database/selection/result.js.map +1 -1
- package/dist/src/packlets/database/testing.js +1 -1
- package/dist/src/packlets/database/testing.js.map +1 -1
- package/dist/src/packlets/database/timeframe-clock.d.ts +2 -1
- package/dist/src/packlets/database/timeframe-clock.d.ts.map +1 -1
- package/dist/src/packlets/database/timeframe-clock.js +15 -5
- package/dist/src/packlets/database/timeframe-clock.js.map +1 -1
- package/dist/src/parties/data-party.d.ts +4 -3
- package/dist/src/parties/data-party.d.ts.map +1 -1
- package/dist/src/parties/data-party.js +18 -14
- package/dist/src/parties/data-party.js.map +1 -1
- package/dist/src/parties/data-party.test.js +12 -12
- package/dist/src/parties/data-party.test.js.map +1 -1
- package/dist/src/parties/party-factory.d.ts +2 -4
- package/dist/src/parties/party-factory.d.ts.map +1 -1
- package/dist/src/parties/party-factory.js +15 -12
- package/dist/src/parties/party-factory.js.map +1 -1
- package/dist/src/parties/party-manager.d.ts +1 -1
- package/dist/src/parties/party-manager.d.ts.map +1 -1
- package/dist/src/parties/party-manager.js +19 -19
- package/dist/src/parties/party-manager.js.map +1 -1
- package/dist/src/parties/party-manager.test.js +15 -12
- package/dist/src/parties/party-manager.test.js.map +1 -1
- package/dist/src/parties/party-preferences.js +2 -2
- package/dist/src/parties/party-preferences.js.map +1 -1
- package/dist/src/pipeline/feed-muxer.js +4 -4
- package/dist/src/pipeline/feed-muxer.js.map +1 -1
- package/dist/src/pipeline/feed-muxer.test.js +2 -2
- package/dist/src/pipeline/feed-muxer.test.js.map +1 -1
- package/dist/src/pipeline/message-selector.d.ts +1 -2
- package/dist/src/pipeline/message-selector.d.ts.map +1 -1
- package/dist/src/pipeline/message-selector.js +6 -33
- package/dist/src/pipeline/message-selector.js.map +1 -1
- package/dist/src/pipeline/metadata-store.d.ts +7 -2
- package/dist/src/pipeline/metadata-store.d.ts.map +1 -1
- package/dist/src/pipeline/metadata-store.js +12 -3
- package/dist/src/pipeline/metadata-store.js.map +1 -1
- package/dist/src/pipeline/party-feed-provider.d.ts +2 -2
- package/dist/src/pipeline/party-feed-provider.d.ts.map +1 -1
- package/dist/src/pipeline/party-feed-provider.js +5 -4
- package/dist/src/pipeline/party-feed-provider.js.map +1 -1
- package/dist/src/pipeline/party-pipeline.d.ts +5 -5
- package/dist/src/pipeline/party-pipeline.d.ts.map +1 -1
- package/dist/src/pipeline/party-pipeline.js +19 -20
- package/dist/src/pipeline/party-pipeline.js.map +1 -1
- package/dist/src/pipeline/party-pipeline.test.js +13 -18
- package/dist/src/pipeline/party-pipeline.test.js.map +1 -1
- package/dist/src/pipeline/party-processor.js +3 -3
- package/dist/src/pipeline/party-processor.js.map +1 -1
- package/dist/src/snapshots/snapshot-store.js +2 -2
- package/dist/src/snapshots/snapshot-store.js.map +1 -1
- package/dist/src/testing/testing-factories.js +2 -2
- package/dist/src/testing/testing-factories.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +21 -17
- package/src/api/result-set.ts +1 -1
- package/src/echo.test.ts +1 -1
- package/src/echo.ts +1 -1
- package/src/halo/halo-factory.ts +7 -7
- package/src/halo/halo-party.ts +15 -7
- package/src/halo/halo.ts +1 -1
- package/src/halo/identity-manager.ts +12 -3
- package/src/halo/identity.ts +1 -1
- package/src/halo/party-opener.ts +2 -4
- package/src/halo/preferences.ts +5 -9
- package/src/invitations/greeting-initiator.ts +9 -3
- package/src/invitations/greeting-responder.ts +8 -27
- package/src/invitations/halo-recovery-initiator.ts +1 -1
- package/src/invitations/invitation-descriptor.ts +1 -1
- package/src/invitations/invitation-factory.ts +3 -3
- package/src/invitations/offline-invitation-claimer.ts +1 -1
- package/src/packlets/database/data-mirror.test.ts +2 -2
- package/src/packlets/database/data-mirror.ts +1 -1
- package/src/packlets/database/data-service-host.ts +1 -1
- package/src/packlets/database/data-service-router.ts +1 -1
- package/src/packlets/database/database-backend.ts +1 -1
- package/src/packlets/database/database.ts +1 -1
- package/src/packlets/database/item-demuxer.test.ts +2 -2
- package/src/packlets/database/item-demuxer.ts +1 -1
- package/src/packlets/database/item-manager.ts +1 -1
- package/src/packlets/database/link.ts +1 -1
- package/src/packlets/database/selection/result.ts +1 -1
- package/src/packlets/database/testing.ts +2 -2
- package/src/packlets/database/timeframe-clock.ts +4 -1
- package/src/parties/data-party.test.ts +12 -12
- package/src/parties/data-party.ts +15 -7
- package/src/parties/party-factory.ts +18 -10
- package/src/parties/party-manager.test.ts +10 -7
- package/src/parties/party-manager.ts +15 -13
- package/src/parties/party-preferences.ts +1 -1
- package/src/pipeline/feed-muxer.test.ts +2 -2
- package/src/pipeline/feed-muxer.ts +3 -3
- package/src/pipeline/message-selector.ts +5 -36
- package/src/pipeline/metadata-store.ts +16 -3
- package/src/pipeline/party-feed-provider.ts +3 -3
- package/src/pipeline/party-pipeline.test.ts +13 -19
- package/src/pipeline/party-pipeline.ts +14 -13
- package/src/pipeline/party-processor.ts +1 -1
- package/src/snapshots/snapshot-store.ts +1 -1
- package/src/testing/testing-factories.ts +1 -1
|
@@ -7,8 +7,8 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
7
7
|
};
|
|
8
8
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
9
|
exports.sortItemsTopologically = exports.ItemDemuxer = void 0;
|
|
10
|
-
const assert_1 = __importDefault(require("assert"));
|
|
11
10
|
const debug_1 = __importDefault(require("debug"));
|
|
11
|
+
const node_assert_1 = __importDefault(require("node:assert"));
|
|
12
12
|
const async_1 = require("@dxos/async");
|
|
13
13
|
const debug_2 = require("@dxos/debug");
|
|
14
14
|
const log = (0, debug_1.default)('dxos:echo-db:item-demuxer');
|
|
@@ -36,13 +36,13 @@ class ItemDemuxer {
|
|
|
36
36
|
return async (message) => {
|
|
37
37
|
var _a, _b, _c;
|
|
38
38
|
const { data: { itemId, genesis, itemMutation, mutation, snapshot }, meta } = message;
|
|
39
|
-
(0,
|
|
39
|
+
(0, node_assert_1.default)(itemId);
|
|
40
40
|
//
|
|
41
41
|
// New item.
|
|
42
42
|
//
|
|
43
43
|
if (genesis) {
|
|
44
44
|
const { itemType, modelType } = genesis;
|
|
45
|
-
(0,
|
|
45
|
+
(0, node_assert_1.default)(modelType);
|
|
46
46
|
const modelOpts = {
|
|
47
47
|
itemId,
|
|
48
48
|
modelType: modelType,
|
|
@@ -66,21 +66,21 @@ class ItemDemuxer {
|
|
|
66
66
|
itemType
|
|
67
67
|
});
|
|
68
68
|
}
|
|
69
|
-
(0,
|
|
69
|
+
(0, node_assert_1.default)(entity.id === itemId);
|
|
70
70
|
}
|
|
71
71
|
//
|
|
72
72
|
// Set parent item references.
|
|
73
73
|
//
|
|
74
74
|
if (itemMutation) {
|
|
75
75
|
const item = this._itemManager.getItem(itemId);
|
|
76
|
-
(0,
|
|
76
|
+
(0, node_assert_1.default)(item);
|
|
77
77
|
item._processMutation(itemMutation, (itemId) => this._itemManager.getItem(itemId));
|
|
78
78
|
}
|
|
79
79
|
//
|
|
80
80
|
// Model mutations.
|
|
81
81
|
//
|
|
82
82
|
if (mutation && !genesis) {
|
|
83
|
-
(0,
|
|
83
|
+
(0, node_assert_1.default)(message.data.mutation);
|
|
84
84
|
const modelMessage = { meta, mutation };
|
|
85
85
|
// Forward mutations to the item's stream.
|
|
86
86
|
await this._itemManager.processModelMessage(itemId, modelMessage);
|
|
@@ -93,7 +93,7 @@ class ItemDemuxer {
|
|
|
93
93
|
};
|
|
94
94
|
}
|
|
95
95
|
createSnapshot() {
|
|
96
|
-
(0,
|
|
96
|
+
(0, node_assert_1.default)(this._options.snapshots, 'Snapshots are disabled');
|
|
97
97
|
return {
|
|
98
98
|
items: this._itemManager.items.map(item => this.createItemSnapshot(item)),
|
|
99
99
|
links: this._itemManager.links.map(link => this.createLinkSnapshot(link))
|
|
@@ -125,9 +125,9 @@ class ItemDemuxer {
|
|
|
125
125
|
const { items = [], links = [] } = snapshot;
|
|
126
126
|
log(`Restoring ${items.length} items from snapshot.`);
|
|
127
127
|
for (const item of (0, exports.sortItemsTopologically)(items)) {
|
|
128
|
-
(0,
|
|
129
|
-
(0,
|
|
130
|
-
(0,
|
|
128
|
+
(0, node_assert_1.default)(item.itemId);
|
|
129
|
+
(0, node_assert_1.default)(item.modelType);
|
|
130
|
+
(0, node_assert_1.default)(item.model);
|
|
131
131
|
await this._itemManager.constructItem({
|
|
132
132
|
itemId: item.itemId,
|
|
133
133
|
modelType: item.modelType,
|
|
@@ -138,9 +138,9 @@ class ItemDemuxer {
|
|
|
138
138
|
}
|
|
139
139
|
log(`Restoring ${links.length} links from snapshot.`);
|
|
140
140
|
for (const link of links) {
|
|
141
|
-
(0,
|
|
142
|
-
(0,
|
|
143
|
-
(0,
|
|
141
|
+
(0, node_assert_1.default)(link.linkId);
|
|
142
|
+
(0, node_assert_1.default)(link.modelType);
|
|
143
|
+
(0, node_assert_1.default)(link.model);
|
|
144
144
|
await this._itemManager.constructLink({
|
|
145
145
|
itemId: link.linkId,
|
|
146
146
|
itemType: link.linkType,
|
|
@@ -163,7 +163,7 @@ const sortItemsTopologically = (items) => {
|
|
|
163
163
|
while (snapshots.length !== items.length) {
|
|
164
164
|
const prevLength = snapshots.length;
|
|
165
165
|
for (const item of items) {
|
|
166
|
-
(0,
|
|
166
|
+
(0, node_assert_1.default)(item.itemId);
|
|
167
167
|
if (!seenIds.has(item.itemId) && (item.parentId == null || seenIds.has(item.parentId))) {
|
|
168
168
|
snapshots.push(item);
|
|
169
169
|
seenIds.add(item.itemId);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"item-demuxer.js","sourceRoot":"","sources":["../../../../src/packlets/database/item-demuxer.ts"],"names":[],"mappings":";AAAA,EAAE;AACF,0BAA0B;AAC1B,EAAE;;;;;;AAEF,
|
|
1
|
+
{"version":3,"file":"item-demuxer.js","sourceRoot":"","sources":["../../../../src/packlets/database/item-demuxer.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"item-demuxer.test.js","sourceRoot":"","sources":["../../../../src/packlets/database/item-demuxer.test.ts"],"names":[],"mappings":";AAAA,EAAE;AACF,0BAA0B;AAC1B,EAAE;;;;;AAEF,kDAA0B;AAC1B,oDAA4B;AAC5B,iCAAmC;AAEnC,uCAAoC;AACpC,yCAAwC;AACxC,uCAAwC;AACxC,
|
|
1
|
+
{"version":3,"file":"item-demuxer.test.js","sourceRoot":"","sources":["../../../../src/packlets/database/item-demuxer.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -13,8 +13,8 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
13
13
|
};
|
|
14
14
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
15
|
exports.ItemManager = void 0;
|
|
16
|
-
const assert_1 = __importDefault(require("assert"));
|
|
17
16
|
const debug_1 = __importDefault(require("debug"));
|
|
17
|
+
const node_assert_1 = __importDefault(require("node:assert"));
|
|
18
18
|
const async_1 = require("@dxos/async");
|
|
19
19
|
const crypto_1 = require("@dxos/crypto");
|
|
20
20
|
const debug_2 = require("@dxos/debug");
|
|
@@ -75,8 +75,8 @@ class ItemManager {
|
|
|
75
75
|
*/
|
|
76
76
|
async createItem(modelType, itemType, parentId, initProps // TODO(burdon): Remove/change to array of mutations.
|
|
77
77
|
) {
|
|
78
|
-
(0,
|
|
79
|
-
(0,
|
|
78
|
+
(0, node_assert_1.default)(this._writeStream); // TODO(burdon): Throw ReadOnlyError();
|
|
79
|
+
(0, node_assert_1.default)(modelType);
|
|
80
80
|
if (!this._modelFactory.hasModel(modelType)) {
|
|
81
81
|
throw new errors_1.UnknownModelError(modelType);
|
|
82
82
|
}
|
|
@@ -106,12 +106,12 @@ class ItemManager {
|
|
|
106
106
|
// Unlocked by construct.
|
|
107
107
|
log('Pending Item:', itemId);
|
|
108
108
|
const item = await waitForCreation();
|
|
109
|
-
(0,
|
|
109
|
+
(0, node_assert_1.default)(item instanceof item_1.Item);
|
|
110
110
|
return item;
|
|
111
111
|
}
|
|
112
112
|
async createLink(modelType, itemType, source, target, initProps) {
|
|
113
|
-
(0,
|
|
114
|
-
(0,
|
|
113
|
+
(0, node_assert_1.default)(this._writeStream);
|
|
114
|
+
(0, node_assert_1.default)(modelType);
|
|
115
115
|
if (!this._modelFactory.hasModel(modelType)) {
|
|
116
116
|
throw new errors_1.UnknownModelError(modelType);
|
|
117
117
|
}
|
|
@@ -141,7 +141,7 @@ class ItemManager {
|
|
|
141
141
|
// Unlocked by construct.
|
|
142
142
|
log('Pending Item:', itemId);
|
|
143
143
|
const link = await waitForCreation();
|
|
144
|
-
(0,
|
|
144
|
+
(0, node_assert_1.default)(link instanceof link_1.Link);
|
|
145
145
|
return link;
|
|
146
146
|
}
|
|
147
147
|
async _constructModel({ modelType, itemId, snapshot }) {
|
|
@@ -156,7 +156,7 @@ class ItemManager {
|
|
|
156
156
|
// TODO(burdon): Parent not used.
|
|
157
157
|
_addEntity(entity, parent) {
|
|
158
158
|
var _a;
|
|
159
|
-
(0,
|
|
159
|
+
(0, node_assert_1.default)(!this._entities.has(entity.id));
|
|
160
160
|
this._entities.set(entity.id, entity);
|
|
161
161
|
log('New entity:', String(entity));
|
|
162
162
|
// Notify Item was udpated.
|
|
@@ -173,13 +173,13 @@ class ItemManager {
|
|
|
173
173
|
* Constructs an item with the appropriate model.
|
|
174
174
|
*/
|
|
175
175
|
async constructItem({ itemId, itemType, modelType, parentId, snapshot }) {
|
|
176
|
-
(0,
|
|
177
|
-
(0,
|
|
176
|
+
(0, node_assert_1.default)(itemId);
|
|
177
|
+
(0, node_assert_1.default)(modelType);
|
|
178
178
|
const parent = parentId ? this._entities.get(parentId) : null;
|
|
179
179
|
if (parentId && !parent) {
|
|
180
180
|
throw new Error(`Missing parent: ${parentId}`);
|
|
181
181
|
}
|
|
182
|
-
(0,
|
|
182
|
+
(0, node_assert_1.default)(!parent || parent instanceof item_1.Item);
|
|
183
183
|
const modelStateManager = await this._constructModel({
|
|
184
184
|
itemId,
|
|
185
185
|
modelType,
|
|
@@ -197,8 +197,8 @@ class ItemManager {
|
|
|
197
197
|
*/
|
|
198
198
|
async constructLink({ itemId, // TODO(burdon): linkId?
|
|
199
199
|
itemType, modelType, snapshot, source, target }) {
|
|
200
|
-
(0,
|
|
201
|
-
(0,
|
|
200
|
+
(0, node_assert_1.default)(itemId);
|
|
201
|
+
(0, node_assert_1.default)(modelType);
|
|
202
202
|
const model = await this._constructModel({
|
|
203
203
|
itemId,
|
|
204
204
|
modelType,
|
|
@@ -230,7 +230,7 @@ class ItemManager {
|
|
|
230
230
|
*/
|
|
231
231
|
async processModelMessage(itemId, message) {
|
|
232
232
|
const item = this._entities.get(itemId);
|
|
233
|
-
(0,
|
|
233
|
+
(0, node_assert_1.default)(item);
|
|
234
234
|
await item._stateManager.processMessage(message.meta, message.mutation);
|
|
235
235
|
this.update.emit(item);
|
|
236
236
|
}
|
|
@@ -241,7 +241,7 @@ class ItemManager {
|
|
|
241
241
|
getItem(itemId) {
|
|
242
242
|
const entity = this._entities.get(itemId);
|
|
243
243
|
if (entity) {
|
|
244
|
-
(0,
|
|
244
|
+
(0, node_assert_1.default)(entity instanceof item_1.Item);
|
|
245
245
|
}
|
|
246
246
|
return entity;
|
|
247
247
|
}
|
|
@@ -254,7 +254,7 @@ class ItemManager {
|
|
|
254
254
|
*/
|
|
255
255
|
deconstructItem(itemId) {
|
|
256
256
|
const item = this._entities.get(itemId);
|
|
257
|
-
(0,
|
|
257
|
+
(0, node_assert_1.default)(item);
|
|
258
258
|
this._entities.delete(itemId);
|
|
259
259
|
if (item instanceof item_1.Item) {
|
|
260
260
|
if (item.parent) {
|
|
@@ -277,9 +277,9 @@ class ItemManager {
|
|
|
277
277
|
*/
|
|
278
278
|
async initializeModel(itemId) {
|
|
279
279
|
const item = this._entities.get(itemId);
|
|
280
|
-
(0,
|
|
280
|
+
(0, node_assert_1.default)(item);
|
|
281
281
|
const model = this._modelFactory.getModel(item._stateManager.modelType);
|
|
282
|
-
(0,
|
|
282
|
+
(0, node_assert_1.default)(model, 'Model not registered');
|
|
283
283
|
item._stateManager.initialize(model.constructor);
|
|
284
284
|
this.update.emit(item);
|
|
285
285
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"item-manager.js","sourceRoot":"","sources":["../../../../src/packlets/database/item-manager.ts"],"names":[],"mappings":";AAAA,EAAE;AACF,0BAA0B;AAC1B,EAAE;;;;;;;;;;;;AAEF,
|
|
1
|
+
{"version":3,"file":"item-manager.js","sourceRoot":"","sources":["../../../../src/packlets/database/item-manager.ts"],"names":[],"mappings":"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"}
|
|
@@ -7,7 +7,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
7
7
|
};
|
|
8
8
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
9
|
exports.Link = void 0;
|
|
10
|
-
const
|
|
10
|
+
const node_assert_1 = __importDefault(require("node:assert"));
|
|
11
11
|
const entity_1 = require("./entity");
|
|
12
12
|
/**
|
|
13
13
|
* Link variant of an item. Link two objects together. Can hold a custom model.
|
|
@@ -28,11 +28,11 @@ class Link extends entity_1.Entity {
|
|
|
28
28
|
return this._link.targetId;
|
|
29
29
|
}
|
|
30
30
|
get source() {
|
|
31
|
-
(0,
|
|
31
|
+
(0, node_assert_1.default)(this._link.source, 'Dangling link');
|
|
32
32
|
return this._link.source;
|
|
33
33
|
}
|
|
34
34
|
get target() {
|
|
35
|
-
(0,
|
|
35
|
+
(0, node_assert_1.default)(this._link.target, 'Dangling link');
|
|
36
36
|
return this._link.target;
|
|
37
37
|
}
|
|
38
38
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"link.js","sourceRoot":"","sources":["../../../../src/packlets/database/link.ts"],"names":[],"mappings":";AAAA,EAAE;AACF,0BAA0B;AAC1B,EAAE;;;;;;AAEF,
|
|
1
|
+
{"version":3,"file":"link.js","sourceRoot":"","sources":["../../../../src/packlets/database/link.ts"],"names":[],"mappings":";AAAA,EAAE;AACF,0BAA0B;AAC1B,EAAE;;;;;;AAEF,8DAAiC;AAKjC,qCAAkC;AAWlC;;GAEG;AACH,2CAA2C;AAC3C,MAAa,IACX,SAAQ,eAAS;IAMjB,YACE,WAAwB,EACxB,MAAc,EACd,QAA8B,EAC9B,YAA0C,EAC1C,IAAc;QAEd,KAAK,CACH,WAAW,EACX,MAAM,EACN,QAAQ,EACR,YAAY,CACb,CAAC;QACF,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;IACpB,CAAC;IAED,IAAI,MAAM;QACR,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IAAI,QAAQ;QACV,OAAO,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC;IAC7B,CAAC;IAED,IAAI,QAAQ;QACV,OAAO,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC;IAC7B,CAAC;IAED,IAAI,MAAM;QACR,IAAA,qBAAM,EAAC,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC;QAC3C,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC;IAC3B,CAAC;IAED,IAAI,MAAM;QACR,IAAA,qBAAM,EAAC,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC;QAC3C,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC;IAC3B,CAAC;IAED;;OAEG;IACH,WAAW;QACT,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC;IAClD,CAAC;CACF;AAnDD,oBAmDC"}
|
|
@@ -7,7 +7,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
7
7
|
};
|
|
8
8
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
9
|
exports.SelectionResult = void 0;
|
|
10
|
-
const
|
|
10
|
+
const node_assert_1 = __importDefault(require("node:assert"));
|
|
11
11
|
const async_1 = require("@dxos/async");
|
|
12
12
|
const util_1 = require("./util");
|
|
13
13
|
/**
|
|
@@ -83,7 +83,7 @@ class SelectionResult {
|
|
|
83
83
|
*/
|
|
84
84
|
expectOne() {
|
|
85
85
|
const entities = this.entities;
|
|
86
|
-
(0,
|
|
86
|
+
(0, node_assert_1.default)(entities.length === 1, `Expected one result; got ${entities.length}`);
|
|
87
87
|
return entities[0];
|
|
88
88
|
}
|
|
89
89
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"result.js","sourceRoot":"","sources":["../../../../../src/packlets/database/selection/result.ts"],"names":[],"mappings":";AAAA,EAAE;AACF,0BAA0B;AAC1B,EAAE;;;;;;AAEF,
|
|
1
|
+
{"version":3,"file":"result.js","sourceRoot":"","sources":["../../../../../src/packlets/database/selection/result.ts"],"names":[],"mappings":";AAAA,EAAE;AACF,0BAA0B;AAC1B,EAAE;;;;;;AAEF,8DAAiC;AAEjC,uCAAoC;AAIpC,iCAAgC;AAYhC;;;GAGG;AACH,MAAa,eAAe;IAS1B,YACmB,QAAsC,EACtC,OAAwB,EACxB,KAAoB,EACpB,QAAiB;QAHjB,aAAQ,GAAR,QAAQ,CAA8B;QACtC,YAAO,GAAP,OAAO,CAAiB;QACxB,UAAK,GAAL,KAAK,CAAe;QACpB,aAAQ,GAAR,QAAQ,CAAS;QAZpC;;;WAGG;QACM,WAAM,GAAG,IAAI,aAAK,EAAsB,CAAC,CAAC,sCAAsC;QAEjF,gBAAW,GAA2B,CAAC,EAAE,CAAC,CAAC;QAQjD,IAAI,CAAC,OAAO,EAAE,CAAC;QAEf,yBAAyB;QACzB,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,eAAe,CAAC,EAAE;YACvD,MAAM,CAAC,gBAAgB,CAAC,GAAG,IAAI,CAAC,WAAW,CAAC;YAC5C,IAAI,CAAC,OAAO,EAAE,CAAC;YAEf,gGAAgG;YAChG,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,gBAAgB,EAAE,GAAG,IAAI,CAAC,WAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YACpE,IAAI,IAAI,CAAC,QAAQ,IAAI,eAAe,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,MAAa,CAAC,CAAC,EAAE;gBAC3E,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;aACxB;QACH,CAAC,CAAC,CAAC,CAAC;IACN,CAAC;IAED,QAAQ;QACN,MAAM,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAC,WAAW,CAAC;QACpC,OAAO,mBAAmB,IAAI,CAAC,SAAS,CAAC;YACvC,QAAQ,EAAE,QAAQ,CAAC,MAAM;SAC1B,CAAC,GAAG,CAAC;IACR,CAAC;IAED;;OAEG;IACH,OAAO;QACL,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC;QAC3C,IAAI,CAAC,WAAW,GAAG,CAAC,IAAA,aAAM,EAAC,QAAQ,CAAC,EAAE,MAAM,CAAC,CAAC;QAC9C,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;OAEG;IACH,IAAI,IAAI;QACN,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;IAED;;OAEG;IACH,IAAI,QAAQ;QACV,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE;YACrB,IAAI,CAAC,OAAO,EAAE,CAAC;SAChB;QAED,MAAM,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAC,WAAY,CAAC;QACrC,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED;;OAEG;IACH,IAAI,KAAK;QACP,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE;YACrB,IAAI,CAAC,OAAO,EAAE,CAAC;SAChB;QAED,MAAM,CAAC,QAAQ,EAAE,KAAK,CAAC,GAAG,IAAI,CAAC,WAAY,CAAC;QAC5C,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAQ,CAAC;IACnD,CAAC;IAED;;OAEG;IACH,SAAS;QACP,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;QAC/B,IAAA,qBAAM,EAAC,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,4BAA4B,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;QAC7E,OAAO,QAAQ,CAAC,CAAC,CAAC,CAAC;IACrB,CAAC;CACF;AArFD,0CAqFC"}
|
|
@@ -12,7 +12,7 @@ const database_backend_1 = require("./database-backend");
|
|
|
12
12
|
const createInMemoryDatabase = async (modelFactory) => {
|
|
13
13
|
const feed = new echo_protocol_1.MockFeedWriter();
|
|
14
14
|
const backend = new database_backend_1.FeedDatabaseBackend(feed, undefined, { snapshots: true });
|
|
15
|
-
feed.written.on(([data, meta]) => backend.echoProcessor({ data, meta: { ...meta, memberKey: protocols_1.PublicKey.random(), timeframe: new
|
|
15
|
+
feed.written.on(([data, meta]) => backend.echoProcessor({ data, meta: { ...meta, memberKey: protocols_1.PublicKey.random(), timeframe: new protocols_1.Timeframe([[meta.feedKey, meta.seq]]) } }));
|
|
16
16
|
const database = new database_1.Database(modelFactory, backend, protocols_1.PublicKey.random());
|
|
17
17
|
await database.initialize();
|
|
18
18
|
return database;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"testing.js","sourceRoot":"","sources":["../../../../src/packlets/database/testing.ts"],"names":[],"mappings":";AAAA,EAAE;AACF,0BAA0B;AAC1B,EAAE;;;AAEF,
|
|
1
|
+
{"version":3,"file":"testing.js","sourceRoot":"","sources":["../../../../src/packlets/database/testing.ts"],"names":[],"mappings":";AAAA,EAAE;AACF,0BAA0B;AAC1B,EAAE;;;AAEF,uDAAmE;AAEnE,+CAAuD;AAGvD,+DAA0D;AAC1D,yCAAsC;AACtC,yDAAgF;AAEzE,MAAM,sBAAsB,GAAG,KAAK,EAAE,YAA0B,EAAE,EAAE;IACzE,MAAM,IAAI,GAAG,IAAI,8BAAc,EAAgB,CAAC;IAChD,MAAM,OAAO,GAAG,IAAI,sCAAmB,CAAC,IAAI,EAAE,SAAS,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC9E,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,aAAa,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,GAAG,IAAI,EAAE,SAAS,EAAE,qBAAS,CAAC,MAAM,EAAE,EAAE,SAAS,EAAE,IAAI,qBAAS,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;IAC3K,MAAM,QAAQ,GAAG,IAAI,mBAAQ,CAC3B,YAAY,EACZ,OAAO,EACP,qBAAS,CAAC,MAAM,EAAE,CACnB,CAAC;IAEF,MAAM,QAAQ,CAAC,UAAU,EAAE,CAAC;IAC5B,OAAO,QAAQ,CAAC;AAClB,CAAC,CAAC;AAZW,QAAA,sBAAsB,0BAYjC;AAEK,MAAM,uCAAuC,GAAG,KAAK,EAC1D,YAA0B,EAC1B,eAAgC,EAChC,EAAE;IACF,MAAM,QAAQ,GAAG,qBAAS,CAAC,MAAM,EAAE,CAAC;IACpC,MAAM,iBAAiB,GAAG,IAAI,uCAAiB,EAAE,CAAC;IAClD,iBAAiB,CAAC,UAAU,CAAC,QAAQ,EAAE,eAAe,CAAC,CAAC;IAExD,MAAM,QAAQ,GAAG,IAAI,mBAAQ,CAC3B,YAAY,EACZ,IAAI,wCAAqB,CAAC,iBAAiB,EAAE,QAAQ,CAAC,EACtD,qBAAS,CAAC,MAAM,EAAE,CACnB,CAAC;IACF,MAAM,QAAQ,CAAC,UAAU,EAAE,CAAC;IAC5B,OAAO,QAAQ,CAAC;AAClB,CAAC,CAAC;AAfW,QAAA,uCAAuC,2CAelD"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { Event } from '@dxos/async';
|
|
2
|
-
import { FeedKey
|
|
2
|
+
import { FeedKey } from '@dxos/echo-protocol';
|
|
3
|
+
import { Timeframe } from '@dxos/protocols';
|
|
3
4
|
/**
|
|
4
5
|
* Keeps state of the last timeframe that was processed by ECHO.
|
|
5
6
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"timeframe-clock.d.ts","sourceRoot":"","sources":["../../../../src/packlets/database/timeframe-clock.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"timeframe-clock.d.ts","sourceRoot":"","sources":["../../../../src/packlets/database/timeframe-clock.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAEpC,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAC9C,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAE5C;;GAEG;AACH,qBAAa,cAAc;IAIvB,OAAO,CAAC,UAAU;IAHpB,QAAQ,CAAC,MAAM,mBAA0B;gBAG/B,UAAU,YAAkB;IAGtC,IAAI,SAAS,cAEZ;IAED,eAAe,CAAE,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM;IAK1C,OAAO,CAAE,SAAS,EAAE,SAAS;IAMvB,gBAAgB,CAAE,MAAM,EAAE,SAAS;CAG1C"}
|
|
@@ -2,15 +2,22 @@
|
|
|
2
2
|
//
|
|
3
3
|
// Copyright 2020 DXOS.org
|
|
4
4
|
//
|
|
5
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
6
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
7
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
8
|
+
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;
|
|
9
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
10
|
+
};
|
|
5
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
12
|
exports.TimeframeClock = void 0;
|
|
7
13
|
const async_1 = require("@dxos/async");
|
|
8
|
-
const
|
|
14
|
+
const debug_1 = require("@dxos/debug");
|
|
15
|
+
const protocols_1 = require("@dxos/protocols");
|
|
9
16
|
/**
|
|
10
17
|
* Keeps state of the last timeframe that was processed by ECHO.
|
|
11
18
|
*/
|
|
12
19
|
class TimeframeClock {
|
|
13
|
-
constructor(_timeframe = new
|
|
20
|
+
constructor(_timeframe = new protocols_1.Timeframe()) {
|
|
14
21
|
this._timeframe = _timeframe;
|
|
15
22
|
this.update = new async_1.Event();
|
|
16
23
|
}
|
|
@@ -18,16 +25,19 @@ class TimeframeClock {
|
|
|
18
25
|
return this._timeframe;
|
|
19
26
|
}
|
|
20
27
|
updateTimeframe(key, seq) {
|
|
21
|
-
this._timeframe =
|
|
28
|
+
this._timeframe = protocols_1.Timeframe.merge(this._timeframe, new protocols_1.Timeframe([[key, seq]]));
|
|
22
29
|
this.update.emit(this._timeframe);
|
|
23
30
|
}
|
|
24
31
|
hasGaps(timeframe) {
|
|
25
|
-
const gaps =
|
|
32
|
+
const gaps = protocols_1.Timeframe.dependencies(timeframe, this._timeframe);
|
|
26
33
|
return !gaps.isEmpty();
|
|
27
34
|
}
|
|
28
35
|
async waitUntilReached(target) {
|
|
29
|
-
await this.update.waitForCondition(() =>
|
|
36
|
+
await this.update.waitForCondition(() => protocols_1.Timeframe.dependencies(target, this._timeframe).isEmpty());
|
|
30
37
|
}
|
|
31
38
|
}
|
|
39
|
+
__decorate([
|
|
40
|
+
(0, debug_1.timed)(5000)
|
|
41
|
+
], TimeframeClock.prototype, "waitUntilReached", null);
|
|
32
42
|
exports.TimeframeClock = TimeframeClock;
|
|
33
43
|
//# sourceMappingURL=timeframe-clock.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"timeframe-clock.js","sourceRoot":"","sources":["../../../../src/packlets/database/timeframe-clock.ts"],"names":[],"mappings":";AAAA,EAAE;AACF,0BAA0B;AAC1B,EAAE
|
|
1
|
+
{"version":3,"file":"timeframe-clock.js","sourceRoot":"","sources":["../../../../src/packlets/database/timeframe-clock.ts"],"names":[],"mappings":";AAAA,EAAE;AACF,0BAA0B;AAC1B,EAAE;;;;;;;;;AAEF,uCAAoC;AACpC,uCAAoC;AAEpC,+CAA4C;AAE5C;;GAEG;AACH,MAAa,cAAc;IAGzB,YACU,aAAa,IAAI,qBAAS,EAAE;QAA5B,eAAU,GAAV,UAAU,CAAkB;QAH7B,WAAM,GAAG,IAAI,aAAK,EAAa,CAAC;IAItC,CAAC;IAEJ,IAAI,SAAS;QACX,OAAO,IAAI,CAAC,UAAU,CAAC;IACzB,CAAC;IAED,eAAe,CAAE,GAAY,EAAE,GAAW;QACxC,IAAI,CAAC,UAAU,GAAG,qBAAS,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,qBAAS,CAAC,CAAC,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QAChF,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IACpC,CAAC;IAED,OAAO,CAAE,SAAoB;QAC3B,MAAM,IAAI,GAAG,qBAAS,CAAC,YAAY,CAAC,SAAS,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;QAChE,OAAO,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;IACzB,CAAC;IAGD,KAAK,CAAC,gBAAgB,CAAE,MAAiB;QACvC,MAAM,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC,GAAG,EAAE,CAAC,qBAAS,CAAC,YAAY,CAAC,MAAM,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;IACtG,CAAC;CACF;AAHC;IADC,IAAA,aAAK,EAAC,IAAK,CAAC;sDAGZ;AAxBH,wCAyBC"}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { Event } from '@dxos/async';
|
|
2
|
-
import { PartyKey, PartySnapshot
|
|
2
|
+
import { PartyKey, PartySnapshot } from '@dxos/echo-protocol';
|
|
3
3
|
import { FeedDescriptor } from '@dxos/feed-store';
|
|
4
4
|
import { ModelFactory } from '@dxos/model-factory';
|
|
5
5
|
import { NetworkManager } from '@dxos/network-manager';
|
|
6
6
|
import { ObjectModel } from '@dxos/object-model';
|
|
7
|
-
import { PublicKey } from '@dxos/protocols';
|
|
7
|
+
import { PublicKey, Timeframe } from '@dxos/protocols';
|
|
8
8
|
import { ResultSet } from '../api';
|
|
9
9
|
import { ActivationOptions, Preferences } from '../halo';
|
|
10
10
|
import { InvitationFactory } from '../invitations';
|
|
@@ -35,7 +35,7 @@ export declare class DataParty {
|
|
|
35
35
|
private readonly _preferences?;
|
|
36
36
|
private _invitationManager?;
|
|
37
37
|
private _protocol?;
|
|
38
|
-
private
|
|
38
|
+
private _genesisFeedKey?;
|
|
39
39
|
constructor(partyKey: PartyKey, modelFactory: ModelFactory, snapshotStore: SnapshotStore, _feedProvider: PartyFeedProvider, _metadataStore: MetadataStore, _credentialsSigner: CredentialsSigner, _profilePreferences: Preferences | undefined, _networkManager: NetworkManager, _initialTimeframe?: Timeframe | undefined, _options?: PipelineOptions);
|
|
40
40
|
get partyInfo(): {
|
|
41
41
|
key: string;
|
|
@@ -56,6 +56,7 @@ export declare class DataParty {
|
|
|
56
56
|
get credentialsWriter(): import("@dxos/echo-protocol").FeedWriter<import("@dxos/credentials").Message>;
|
|
57
57
|
get title(): any;
|
|
58
58
|
setTitle(title: string): Promise<void>;
|
|
59
|
+
get genesisFeedKey(): PublicKey;
|
|
59
60
|
/**
|
|
60
61
|
* Opens the pipeline and connects the streams.
|
|
61
62
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"data-party.d.ts","sourceRoot":"","sources":["../../../src/parties/data-party.ts"],"names":[],"mappings":"AAMA,OAAO,EAAgB,KAAK,EAAE,MAAM,aAAa,CAAC;AAElD,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,
|
|
1
|
+
{"version":3,"file":"data-party.d.ts","sourceRoot":"","sources":["../../../src/parties/data-party.ts"],"names":[],"mappings":"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"}
|