@dxos/echo-db 2.28.3-dev.e4579238 → 2.28.4-dev.9a10ff66
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/{database → api}/database.d.ts +2 -4
- package/dist/src/api/database.d.ts.map +1 -0
- package/dist/src/{database → api}/database.js +6 -9
- package/dist/src/api/database.js.map +1 -0
- package/dist/src/{database → api}/database.test.d.ts +0 -0
- package/dist/src/api/database.test.d.ts.map +1 -0
- package/dist/src/{database → api}/database.test.js +17 -19
- package/dist/src/api/database.test.js.map +1 -0
- package/dist/src/{database → api}/entity.d.ts +1 -1
- package/dist/src/api/entity.d.ts.map +1 -0
- package/dist/src/{database → api}/entity.js +0 -0
- package/dist/src/api/entity.js.map +1 -0
- package/dist/src/api/index.d.ts +7 -0
- package/dist/src/api/index.d.ts.map +1 -0
- package/dist/src/api/index.js +22 -0
- package/dist/src/api/index.js.map +1 -0
- package/dist/src/{database → api}/item.d.ts +1 -1
- package/dist/src/api/item.d.ts.map +1 -0
- package/dist/src/{database → api}/item.js +0 -0
- package/dist/src/api/item.js.map +1 -0
- package/dist/src/{database → api}/link.d.ts +1 -1
- package/dist/src/api/link.d.ts.map +1 -0
- package/dist/src/{database → api}/link.js +0 -0
- package/dist/src/api/link.js.map +1 -0
- package/dist/src/{result.d.ts → api/result-set.d.ts} +1 -1
- package/dist/src/api/result-set.d.ts.map +1 -0
- package/dist/src/{result.js → api/result-set.js} +1 -1
- package/dist/src/api/result-set.js.map +1 -0
- package/dist/src/{database → api}/selection.d.ts +25 -11
- package/dist/src/api/selection.d.ts.map +1 -0
- package/dist/src/{database → api}/selection.js +64 -38
- package/dist/src/api/selection.js.map +1 -0
- package/dist/src/{database → api}/selection.test.d.ts +0 -0
- package/dist/src/api/selection.test.d.ts.map +1 -0
- package/dist/src/{database → api}/selection.test.js +18 -19
- package/dist/src/api/selection.test.js.map +1 -0
- package/dist/src/database/data-mirror.test.js.map +1 -1
- package/dist/src/database/data-service-host.d.ts.map +1 -1
- package/dist/src/database/data-service-host.js +3 -4
- package/dist/src/database/data-service-host.js.map +1 -1
- package/dist/src/database/index.d.ts +4 -6
- package/dist/src/database/index.d.ts.map +1 -1
- package/dist/src/database/index.js +4 -6
- package/dist/src/database/index.js.map +1 -1
- package/dist/src/database/item-demuxer.d.ts +1 -1
- package/dist/src/database/item-demuxer.d.ts.map +1 -1
- package/dist/src/database/item-demuxer.js +3 -3
- package/dist/src/database/item-demuxer.js.map +1 -1
- package/dist/src/database/item-demuxer.test.js +2 -2
- package/dist/src/database/item-demuxer.test.js.map +1 -1
- package/dist/src/database/item-manager.d.ts +1 -3
- package/dist/src/database/item-manager.d.ts.map +1 -1
- package/dist/src/database/item-manager.js +10 -11
- package/dist/src/database/item-manager.js.map +1 -1
- package/dist/src/database/testing.d.ts +1 -1
- package/dist/src/database/testing.d.ts.map +1 -1
- package/dist/src/database/testing.js +3 -3
- package/dist/src/database/testing.js.map +1 -1
- package/dist/src/echo.d.ts +1 -1
- package/dist/src/echo.d.ts.map +1 -1
- package/dist/src/echo.js +4 -4
- package/dist/src/echo.js.map +1 -1
- package/dist/src/echo.test.js +25 -28
- package/dist/src/echo.test.js.map +1 -1
- package/dist/src/halo/contact-manager.d.ts +1 -2
- package/dist/src/halo/contact-manager.d.ts.map +1 -1
- package/dist/src/halo/contact-manager.js +6 -6
- package/dist/src/halo/contact-manager.js.map +1 -1
- package/dist/src/halo/halo.d.ts +1 -1
- package/dist/src/halo/halo.d.ts.map +1 -1
- package/dist/src/halo/preferences.d.ts +1 -1
- package/dist/src/halo/preferences.d.ts.map +1 -1
- package/dist/src/halo/preferences.js +9 -9
- package/dist/src/halo/preferences.js.map +1 -1
- package/dist/src/index.d.ts +2 -1
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +2 -1
- package/dist/src/index.js.map +1 -1
- package/dist/src/parties/party-core.d.ts +1 -1
- package/dist/src/parties/party-core.d.ts.map +1 -1
- package/dist/src/parties/party-core.js +2 -1
- package/dist/src/parties/party-core.js.map +1 -1
- package/dist/src/parties/party-core.test.js +3 -3
- package/dist/src/parties/party-core.test.js.map +1 -1
- package/dist/src/parties/party-internal.d.ts +2 -3
- package/dist/src/parties/party-internal.d.ts.map +1 -1
- package/dist/src/parties/party-internal.js +4 -5
- package/dist/src/parties/party-internal.js.map +1 -1
- package/dist/src/parties/party-manager.test.js +19 -18
- package/dist/src/parties/party-manager.test.js.map +1 -1
- package/dist/src/snapshots/snapshot.test.js +3 -3
- package/dist/src/snapshots/snapshot.test.js.map +1 -1
- package/dist/src/testing/index.d.ts +3 -0
- package/dist/src/testing/index.d.ts.map +1 -0
- package/dist/src/testing/index.js +18 -0
- package/dist/src/testing/index.js.map +1 -0
- package/dist/src/{util → testing}/testing-factories.d.ts +1 -1
- package/dist/src/testing/testing-factories.d.ts.map +1 -0
- package/dist/src/{util → testing}/testing-factories.js +0 -0
- package/dist/src/testing/testing-factories.js.map +1 -0
- package/dist/src/{util → testing}/testing.d.ts +1 -1
- package/dist/src/testing/testing.d.ts.map +1 -0
- package/dist/src/{util → testing}/testing.js +2 -2
- package/dist/src/testing/testing.js.map +1 -0
- package/dist/src/util/index.d.ts +0 -2
- package/dist/src/util/index.d.ts.map +1 -1
- package/dist/src/util/index.js +0 -2
- package/dist/src/util/index.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +25 -22
- package/src/{database → api}/database.test.ts +15 -18
- package/src/{database → api}/database.ts +7 -14
- package/src/{database → api}/entity.ts +1 -1
- package/src/api/index.ts +10 -0
- package/src/{database → api}/item.ts +1 -1
- package/src/{database → api}/link.ts +1 -1
- package/src/{result.ts → api/result-set.ts} +0 -0
- package/src/{database → api}/selection.test.ts +24 -23
- package/src/{database → api}/selection.ts +72 -43
- package/src/database/data-mirror.test.ts +1 -1
- package/src/database/data-mirror.ts +1 -1
- package/src/database/data-service-host.ts +1 -2
- package/src/database/index.ts +4 -6
- package/src/database/item-demuxer.test.ts +1 -1
- package/src/database/item-demuxer.ts +3 -6
- package/src/database/item-manager.ts +1 -3
- package/src/database/testing.ts +1 -1
- package/src/echo.test.ts +28 -29
- package/src/echo.ts +2 -2
- package/src/halo/contact-manager.ts +5 -6
- package/src/halo/halo.ts +1 -1
- package/src/halo/preferences.ts +12 -11
- package/src/index.ts +2 -1
- package/src/parties/party-core.test.ts +3 -3
- package/src/parties/party-core.ts +2 -1
- package/src/parties/party-internal.ts +3 -4
- package/src/parties/party-manager.test.ts +19 -18
- package/src/snapshots/snapshot.test.ts +1 -1
- package/src/testing/index.ts +6 -0
- package/src/{util → testing}/testing-factories.ts +6 -2
- package/src/{util → testing}/testing.ts +2 -2
- package/src/util/index.ts +0 -2
- package/dist/src/conflict.test.d.ts +0 -2
- package/dist/src/conflict.test.d.ts.map +0 -1
- package/dist/src/conflict.test.js +0 -33
- package/dist/src/conflict.test.js.map +0 -1
- package/dist/src/database/database.d.ts.map +0 -1
- package/dist/src/database/database.js.map +0 -1
- package/dist/src/database/database.test.d.ts.map +0 -1
- package/dist/src/database/database.test.js.map +0 -1
- package/dist/src/database/entity.d.ts.map +0 -1
- package/dist/src/database/entity.js.map +0 -1
- package/dist/src/database/item.d.ts.map +0 -1
- package/dist/src/database/item.js.map +0 -1
- package/dist/src/database/link.d.ts.map +0 -1
- package/dist/src/database/link.js.map +0 -1
- package/dist/src/database/selection.d.ts.map +0 -1
- package/dist/src/database/selection.js.map +0 -1
- package/dist/src/database/selection.test.d.ts.map +0 -1
- package/dist/src/database/selection.test.js.map +0 -1
- package/dist/src/result.d.ts.map +0 -1
- package/dist/src/result.js.map +0 -1
- package/dist/src/util/testing-factories.d.ts.map +0 -1
- package/dist/src/util/testing-factories.js.map +0 -1
- package/dist/src/util/testing.d.ts.map +0 -1
- package/dist/src/util/testing.js.map +0 -1
- package/src/conflict.test.ts +0 -37
package/dist/src/echo.d.ts
CHANGED
|
@@ -4,10 +4,10 @@ import { FeedStore } from '@dxos/feed-store';
|
|
|
4
4
|
import { ModelFactory } from '@dxos/model-factory';
|
|
5
5
|
import { NetworkManager, NetworkManagerOptions } from '@dxos/network-manager';
|
|
6
6
|
import { IStorage } from '@dxos/random-access-multi-storage';
|
|
7
|
+
import { ResultSet } from './api';
|
|
7
8
|
import { HALO } from './halo';
|
|
8
9
|
import { InvitationDescriptor } from './invitations';
|
|
9
10
|
import { OpenProgress, PartyInternal } from './parties';
|
|
10
|
-
import { ResultSet } from './result';
|
|
11
11
|
import { SnapshotStore } from './snapshots';
|
|
12
12
|
export interface PartyFilter {
|
|
13
13
|
}
|
package/dist/src/echo.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"echo.d.ts","sourceRoot":"","sources":["../../src/echo.ts"],"names":[],"mappings":"AAQA,OAAO,EAAqB,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAGtE,OAAO,EAAS,WAAW,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAClF,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC7C,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,cAAc,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAE9E,OAAO,EAAE,QAAQ,EAAE,MAAM,mCAAmC,CAAC;
|
|
1
|
+
{"version":3,"file":"echo.d.ts","sourceRoot":"","sources":["../../src/echo.ts"],"names":[],"mappings":"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"}
|
package/dist/src/echo.js
CHANGED
|
@@ -18,7 +18,8 @@ const model_factory_1 = require("@dxos/model-factory");
|
|
|
18
18
|
const network_manager_1 = require("@dxos/network-manager");
|
|
19
19
|
const object_model_1 = require("@dxos/object-model");
|
|
20
20
|
const util_1 = require("@dxos/util");
|
|
21
|
-
const
|
|
21
|
+
const api_1 = require("./api");
|
|
22
|
+
const database_1 = require("./database");
|
|
22
23
|
const errors_1 = require("./errors");
|
|
23
24
|
const halo_1 = require("./halo");
|
|
24
25
|
const party_opener_1 = require("./halo/party-opener");
|
|
@@ -26,7 +27,6 @@ const invitations_1 = require("./invitations");
|
|
|
26
27
|
const metadata_1 = require("./metadata");
|
|
27
28
|
const parties_1 = require("./parties");
|
|
28
29
|
const pipeline_1 = require("./pipeline");
|
|
29
|
-
const result_1 = require("./result");
|
|
30
30
|
const snapshots_1 = require("./snapshots");
|
|
31
31
|
const util_2 = require("./util");
|
|
32
32
|
const log = (0, debug_1.default)('dxos:echo');
|
|
@@ -86,7 +86,7 @@ class ECHO {
|
|
|
86
86
|
this._subs.push((0, party_opener_1.autoPartyOpener)(this.halo.identity.preferences, this._partyManager));
|
|
87
87
|
}
|
|
88
88
|
});
|
|
89
|
-
this._dataServiceRouter = new
|
|
89
|
+
this._dataServiceRouter = new database_1.DataServiceRouter();
|
|
90
90
|
this._partyManager.update.on(party => {
|
|
91
91
|
log('New party to be included in data service router: %s', party.key);
|
|
92
92
|
void party.update.waitForCondition(() => party.isOpen).then(() => {
|
|
@@ -233,7 +233,7 @@ class ECHO {
|
|
|
233
233
|
if (!this._partyManager.isOpen) {
|
|
234
234
|
throw new debug_2.InvalidStateError();
|
|
235
235
|
}
|
|
236
|
-
return new
|
|
236
|
+
return new api_1.ResultSet(this._partyManager.update.discardParameter(), () => this._partyManager.parties);
|
|
237
237
|
}
|
|
238
238
|
/**
|
|
239
239
|
* Joins a party that was created by another peer and starts replicating with it.
|
package/dist/src/echo.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"echo.js","sourceRoot":"","sources":["../../src/echo.ts"],"names":[],"mappings":";AAAA,EAAE;AACF,0BAA0B;AAC1B,EAAE;;;;;;AAEF,oDAA4B;AAC5B,kDAA0B;AAC1B,sDAA8B;AAE9B,mDAAsE;AAEtE,uCAAgD;AAChD,uDAAkF;AAClF,iDAA6C;AAC7C,uDAAmD;AACnD,2DAA8E;AAC9E,qDAAiD;AAEjD,qCAA+C;AAE/C,
|
|
1
|
+
{"version":3,"file":"echo.js","sourceRoot":"","sources":["../../src/echo.ts"],"names":[],"mappings":"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"}
|
package/dist/src/echo.test.js
CHANGED
|
@@ -17,7 +17,7 @@ const object_model_1 = require("@dxos/object-model");
|
|
|
17
17
|
const testutils_1 = require("@dxos/testutils");
|
|
18
18
|
const echo_1 = require("./echo");
|
|
19
19
|
const invitations_1 = require("./invitations");
|
|
20
|
-
const
|
|
20
|
+
const testing_1 = require("./testing");
|
|
21
21
|
const log = (0, debug_1.default)('dxos:echo:test');
|
|
22
22
|
describe('ECHO', () => {
|
|
23
23
|
const setup = async ({ createProfile, displayName } = {}) => {
|
|
@@ -51,13 +51,13 @@ describe('ECHO', () => {
|
|
|
51
51
|
// TODO(burdon): Update currently called after all mutations below have completed?
|
|
52
52
|
(0, expect_1.default)(parties).toHaveLength(1);
|
|
53
53
|
parties.map(async (party) => {
|
|
54
|
-
const
|
|
55
|
-
|
|
54
|
+
const result1 = party.database.select().query();
|
|
55
|
+
result1.entities.forEach(item => {
|
|
56
56
|
log('Item:', String(item));
|
|
57
57
|
});
|
|
58
58
|
// TODO(burdon): Check item mutations.
|
|
59
|
-
const
|
|
60
|
-
(0, expect_1.default)(
|
|
59
|
+
const result2 = party.database.select({ type: 'dxos:item/document' }).query();
|
|
60
|
+
(0, expect_1.default)(result2.entities).toHaveLength(2);
|
|
61
61
|
onUpdate();
|
|
62
62
|
});
|
|
63
63
|
});
|
|
@@ -84,11 +84,11 @@ describe('ECHO', () => {
|
|
|
84
84
|
log('Updated:', parties.map(party => party.key.humanize()));
|
|
85
85
|
(0, expect_1.default)(parties).toHaveLength(1);
|
|
86
86
|
parties.map(async (party) => {
|
|
87
|
-
const items = party.database.select().query().
|
|
87
|
+
const items = party.database.select().query().entities;
|
|
88
88
|
items.forEach(item => {
|
|
89
89
|
log('Item:', String(item));
|
|
90
90
|
});
|
|
91
|
-
const item = party.database.select({ type: 'dxos:item/document' }).query().
|
|
91
|
+
const item = party.database.select({ type: 'dxos:item/document' }).query().entities[0];
|
|
92
92
|
(0, expect_1.default)(item.children).toHaveLength(1);
|
|
93
93
|
(0, expect_1.default)(item.children[0].type).toBe(undefined);
|
|
94
94
|
// TODO(burdon): Test parent.
|
|
@@ -145,7 +145,7 @@ describe('ECHO', () => {
|
|
|
145
145
|
const echo1 = await setup({ createProfile: true });
|
|
146
146
|
const echo2 = await setup({ createProfile: true });
|
|
147
147
|
const party1 = await echo1.createParty();
|
|
148
|
-
await (0,
|
|
148
|
+
await (0, testing_1.inviteTestPeer)(party1, echo2);
|
|
149
149
|
await echo1.close();
|
|
150
150
|
await echo2.close();
|
|
151
151
|
await echo2.open();
|
|
@@ -153,7 +153,7 @@ describe('ECHO', () => {
|
|
|
153
153
|
const party = echo2.getParty(party1.key);
|
|
154
154
|
(0, assert_1.default)(party);
|
|
155
155
|
log('Initialized party');
|
|
156
|
-
const items = party.database.select().query().
|
|
156
|
+
const items = party.database.select().query().entities;
|
|
157
157
|
await (0, async_1.waitForCondition)(() => items.length > 0);
|
|
158
158
|
(0, expect_1.default)(items.length).toBeGreaterThan(0);
|
|
159
159
|
});
|
|
@@ -234,7 +234,7 @@ describe('ECHO', () => {
|
|
|
234
234
|
let itemA = null;
|
|
235
235
|
// Subscribe to Item updates on B.
|
|
236
236
|
const updated = partyB.database.select({ type: 'example:item/test' }).query()
|
|
237
|
-
.update.waitFor(
|
|
237
|
+
.update.waitFor(result => !!itemA && !!result.entities.find(item => item.id === (itemA === null || itemA === void 0 ? void 0 : itemA.id)));
|
|
238
238
|
// Create a new Item on A.
|
|
239
239
|
itemA = await partyA.database
|
|
240
240
|
.createItem({ model: object_model_1.ObjectModel, type: 'example:item/test' });
|
|
@@ -309,7 +309,7 @@ describe('ECHO', () => {
|
|
|
309
309
|
// Empty across the board.
|
|
310
310
|
for (const node of [a1, a2, b1, b2]) {
|
|
311
311
|
const [party] = node.queryParties().value;
|
|
312
|
-
(0, expect_1.default)(party.database.select({ type: 'example:item/test' }).query().
|
|
312
|
+
(0, expect_1.default)(party.database.select({ type: 'example:item/test' }).query().entities.length).toBe(0);
|
|
313
313
|
}
|
|
314
314
|
for await (const node of [a1, a2, b1, b2]) {
|
|
315
315
|
let item = null;
|
|
@@ -319,8 +319,8 @@ describe('ECHO', () => {
|
|
|
319
319
|
const [otherParty] = otherNode.queryParties().value;
|
|
320
320
|
const [updated, onUpdate] = (0, async_1.latch)();
|
|
321
321
|
otherParty.database.select({ type: 'example:item/test' }).query()
|
|
322
|
-
.update.on(
|
|
323
|
-
if (
|
|
322
|
+
.update.on(result => {
|
|
323
|
+
if (result.entities.find(current => current.id === (item === null || item === void 0 ? void 0 : item.id))) {
|
|
324
324
|
log(`other has ${item === null || item === void 0 ? void 0 : item.id}`);
|
|
325
325
|
onUpdate();
|
|
326
326
|
}
|
|
@@ -357,8 +357,8 @@ describe('ECHO', () => {
|
|
|
357
357
|
{
|
|
358
358
|
let itemA = null;
|
|
359
359
|
// Subscribe to Item updates on B.
|
|
360
|
-
const updated = b.queryParties().value[0].database.select({ type: 'example:item/test' })
|
|
361
|
-
.update.waitFor(items => !!itemA && !!items.find(item => item.id === (itemA === null || itemA === void 0 ? void 0 : itemA.id)));
|
|
360
|
+
const updated = b.queryParties().value[0].database.select({ type: 'example:item/test' })
|
|
361
|
+
.query().update.waitFor(items => !!itemA && !!items.entities.find(item => item.id === (itemA === null || itemA === void 0 ? void 0 : itemA.id)));
|
|
362
362
|
// Create a new Item on A.
|
|
363
363
|
itemA = await a.queryParties().value[0].database
|
|
364
364
|
.createItem({ model: object_model_1.ObjectModel, type: 'example:item/test' });
|
|
@@ -371,8 +371,8 @@ describe('ECHO', () => {
|
|
|
371
371
|
(0, mocha_1.it)('Contacts', async () => {
|
|
372
372
|
const a = await setup({ createProfile: true });
|
|
373
373
|
const b = await setup({ createProfile: true });
|
|
374
|
-
const updatedA = a.halo.queryContacts().update.waitFor(contacts => contacts.some(c => { var _a; return (_a = b.halo.identityKey) === null || _a === void 0 ? void 0 : _a.publicKey.equals(c.publicKey); }));
|
|
375
|
-
const updatedB = b.halo.queryContacts().update.waitFor(contacts => contacts.some(c => { var _a; return (_a = a.halo.identityKey) === null || _a === void 0 ? void 0 : _a.publicKey.equals(c.publicKey); }));
|
|
374
|
+
const updatedA = a.halo.queryContacts().update.waitFor((contacts) => contacts.some(c => { var _a; return (_a = b.halo.identityKey) === null || _a === void 0 ? void 0 : _a.publicKey.equals(c.publicKey); }));
|
|
375
|
+
const updatedB = b.halo.queryContacts().update.waitFor((contacts) => contacts.some(c => { var _a; return (_a = a.halo.identityKey) === null || _a === void 0 ? void 0 : _a.publicKey.equals(c.publicKey); }));
|
|
376
376
|
// Create the Party.
|
|
377
377
|
const partyA = await a.createParty();
|
|
378
378
|
log(`Created ${partyA.key.toHex()}`);
|
|
@@ -453,9 +453,9 @@ describe('ECHO', () => {
|
|
|
453
453
|
let itemA = null;
|
|
454
454
|
const [updated, onUpdate] = (0, async_1.latch)();
|
|
455
455
|
partyA.database.select({ type: 'example:item/test' }).query()
|
|
456
|
-
.update.on(
|
|
457
|
-
if (
|
|
458
|
-
const [receivedItem] =
|
|
456
|
+
.update.on(result => {
|
|
457
|
+
if (result.entities.length) {
|
|
458
|
+
const [receivedItem] = result.entities;
|
|
459
459
|
if (itemA && itemA.id === receivedItem.id) {
|
|
460
460
|
onUpdate();
|
|
461
461
|
}
|
|
@@ -463,19 +463,16 @@ describe('ECHO', () => {
|
|
|
463
463
|
});
|
|
464
464
|
itemA = await partyA.database.createItem({ model: object_model_1.ObjectModel, type: 'example:item/test' });
|
|
465
465
|
await updated; // Wait for update.
|
|
466
|
-
(0, expect_1.default)(partyA.database.select({ type: 'example:item/test' }).query()
|
|
467
|
-
.result.length)
|
|
468
|
-
.toEqual(1);
|
|
466
|
+
(0, expect_1.default)(partyA.database.select({ type: 'example:item/test' }).query().entities.length).toEqual(1);
|
|
469
467
|
await partyA.deactivate({ global: true });
|
|
470
468
|
await partyA.activate({ global: true });
|
|
471
469
|
(0, expect_1.default)(partyA.isOpen).toBe(true);
|
|
472
470
|
(0, expect_1.default)(partyA.isActive).toBe(true);
|
|
473
471
|
await partyA.database
|
|
474
|
-
.select({ type: 'example:item/test' })
|
|
475
|
-
.
|
|
476
|
-
|
|
477
|
-
|
|
478
|
-
.length).toEqual(1);
|
|
472
|
+
.select({ type: 'example:item/test' })
|
|
473
|
+
.query()
|
|
474
|
+
.update.waitFor(result => result.entities.length > 0);
|
|
475
|
+
(0, expect_1.default)(partyA.database.select({ type: 'example:item/test' }).query().entities.length).toEqual(1);
|
|
479
476
|
}).timeout(10000);
|
|
480
477
|
(0, mocha_1.it)('Deactivate Party - multi device', async () => {
|
|
481
478
|
const a = await setup({ createProfile: true });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"echo.test.js","sourceRoot":"","sources":["../../src/echo.test.ts"],"names":[],"mappings":";AAAA,EAAE;AACF,0BAA0B;AAC1B,EAAE;;;;;AAEF,oDAA4B;AAC5B,kDAA0B;AAC1B,oDAA4B;AAC5B,iCAAmC;AAEnC,uCAAsD;AACtD,mDAAkF;AAClF,yCAAwF;AACxF,qDAAiD;AACjD,+CAA4C;AAG5C,iCAA8B;AAC9B,+CAA+D;AAC/D,iCAAwC;AAExC,MAAM,GAAG,GAAG,IAAA,eAAK,EAAC,gBAAgB,CAAC,CAAC;AAEpC,QAAQ,CAAC,MAAM,EAAE,GAAG,EAAE;IAMpB,MAAM,KAAK,GAAG,KAAK,EAAE,EAAE,aAAa,EAAE,WAAW,KAAmB,EAAE,EAAE,EAAE;QACxE,MAAM,IAAI,GAAG,IAAI,WAAI,EAAE,CAAC;QAExB,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC;QAClB,IAAA,qBAAS,EAAC,GAAG,EAAE,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;QAE9B,IAAI,aAAa,EAAE;YACjB,MAAM,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,EAAE,GAAG,IAAA,sBAAa,GAAE,EAAE,CAAC,CAAC;YACvD,MAAM,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,wBAAwB;SAC9D;QAED,OAAO,IAAI,CAAC;IACd,CAAC,CAAC;IAEF,IAAA,UAAI,EAAC,qCAAqC,EAAE,KAAK,IAAI,EAAE;QACrD,MAAM,IAAI,GAAG,MAAM,KAAK,CAAC,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;QAClD,MAAM,OAAO,GAAG,IAAI,CAAC,YAAY,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;QAClD,GAAG,CAAC,UAAU,EAAE,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;QAClE,IAAA,gBAAM,EAAC,OAAO,CAAC,KAAK,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;QAEtC,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;QACvC,IAAA,gBAAM,EAAC,KAAK,CAAC,MAAM,CAAC,CAAC,UAAU,EAAE,CAAC;QAClC,MAAM,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QAC7B,IAAA,gBAAM,EAAC,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACnC,CAAC,CAAC,CAAC;IAEH,IAAA,UAAI,EAAC,yBAAyB,EAAE,KAAK,IAAI,EAAE;QACzC,MAAM,IAAI,GAAG,MAAM,KAAK,CAAC,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;QAClD,MAAM,OAAO,GAAG,IAAI,CAAC,YAAY,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;QAClD,GAAG,CAAC,UAAU,EAAE,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;QAClE,IAAA,gBAAM,EAAC,OAAO,CAAC,KAAK,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;QAEtC,MAAM,CAAC,OAAO,EAAE,QAAQ,CAAC,GAAG,IAAA,aAAK,GAAE,CAAC;QACpC,MAAM,WAAW,GAAG,OAAO,CAAC,SAAS,CAAC,KAAK,EAAC,OAAO,EAAC,EAAE;YACpD,GAAG,CAAC,UAAU,EAAE,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;YAE5D,kFAAkF;YAClF,IAAA,gBAAM,EAAC,OAAO,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;YAChC,OAAO,CAAC,GAAG,CAAC,KAAK,EAAC,KAAK,EAAC,EAAE;gBACxB,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,KAAK,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,CAAC;gBAC1D,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;oBACnB,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;gBAC7B,CAAC,CAAC,CAAC;gBAEH,sCAAsC;gBACtC,MAAM,EAAE,MAAM,EAAE,GAAG,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,oBAAoB,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC;gBACjF,IAAA,gBAAM,EAAC,MAAM,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;gBAC/B,QAAQ,EAAE,CAAC;YACb,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;QACvC,IAAA,gBAAM,EAAC,KAAK,CAAC,MAAM,CAAC,CAAC,UAAU,EAAE,CAAC;QAElC,MAAM,OAAO,GAAG,KAAK,CAAC,YAAY,EAAE,CAAC,KAAK,CAAC;QAC3C,IAAA,gBAAM,EAAC,OAAO,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAC/B,0DAA0D;QAC1D,IAAA,gBAAM,EAAC,OAAO,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC,CAAC;QAExE,qCAAqC;QACrC,MAAM,KAAK,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,KAAK,EAAE,0BAAW,EAAE,IAAI,EAAE,oBAAoB,EAAE,CAAC,CAAC;QACpF,MAAM,KAAK,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,KAAK,EAAE,0BAAW,EAAE,IAAI,EAAE,oBAAoB,EAAE,CAAC,CAAC;QACpF,MAAM,KAAK,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,KAAK,EAAE,0BAAW,EAAE,IAAI,EAAE,kBAAkB,EAAE,CAAC,CAAC;QAElF,MAAM,OAAO,CAAC;QACd,WAAW,EAAE,CAAC;IAChB,CAAC,CAAC,CAAC;IAEH,IAAA,UAAI,EAAC,wCAAwC,EAAE,KAAK,IAAI,EAAE;QACxD,MAAM,IAAI,GAAG,MAAM,KAAK,CAAC,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;QAElD,MAAM,OAAO,GAAG,IAAI,CAAC,YAAY,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;QAClD,GAAG,CAAC,UAAU,EAAE,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;QAClE,IAAA,gBAAM,EAAC,OAAO,CAAC,KAAK,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;QAEtC,MAAM,CAAC,OAAO,EAAE,QAAQ,CAAC,GAAG,IAAA,aAAK,GAAE,CAAC;QACpC,MAAM,WAAW,GAAG,OAAO,CAAC,SAAS,CAAC,KAAK,EAAC,OAAO,EAAC,EAAE;YACpD,GAAG,CAAC,UAAU,EAAE,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;YAE5D,IAAA,gBAAM,EAAC,OAAO,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;YAChC,OAAO,CAAC,GAAG,CAAC,KAAK,EAAC,KAAK,EAAC,EAAE;gBACxB,MAAM,KAAK,GAAG,KAAK,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,CAAC,MAAM,CAAC;gBACrD,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;oBACnB,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;gBAC7B,CAAC,CAAC,CAAC;gBAEH,MAAM,IAAI,GAAG,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,oBAAoB,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;gBACrF,IAAA,gBAAM,EAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;gBACtC,IAAA,gBAAM,EAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;gBAC9C,6BAA6B;gBAC7B,QAAQ,EAAE,CAAC;YACb,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;QACvC,IAAA,gBAAM,EAAC,KAAK,CAAC,MAAM,CAAC,CAAC,UAAU,EAAE,CAAC;QAElC,MAAM,OAAO,GAAG,KAAK,CAAC,YAAY,EAAE,CAAC,KAAK,CAAC;QAC3C,IAAA,gBAAM,EAAC,OAAO,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAC/B,0DAA0D;QAC1D,IAAA,gBAAM,EAAC,OAAO,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC,CAAC;QAExE,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,KAAK,EAAE,0BAAW,EAAE,IAAI,EAAE,oBAAoB,EAAE,CAAC,CAAC;QACnG,MAAM,KAAK,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,KAAK,EAAE,0BAAW,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC;QAE3E,MAAM,OAAO,CAAC;QACd,WAAW,EAAE,CAAC;IAChB,CAAC,CAAC,CAAC;IAEH,IAAA,UAAI,EAAC,gEAAgE,EAAE,KAAK,IAAI,EAAE;QAChF,MAAM,IAAI,GAAG,MAAM,KAAK,CAAC,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;QAElD,MAAM,OAAO,GAAG,IAAI,CAAC,YAAY,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;QAClD,GAAG,CAAC,UAAU,EAAE,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;QAClE,IAAA,gBAAM,EAAC,OAAO,CAAC,KAAK,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;QAEtC,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;QACvC,IAAA,gBAAM,EAAC,KAAK,CAAC,MAAM,CAAC,CAAC,UAAU,EAAE,CAAC;QAElC,MAAM,OAAO,GAAG,KAAK,CAAC,YAAY,EAAE,CAAC,KAAK,CAAC;QAC3C,IAAA,gBAAM,EAAC,OAAO,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAC/B,0DAA0D;QAC1D,IAAA,gBAAM,EAAC,OAAO,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC,CAAC;QAExE,MAAM,OAAO,GAAG,MAAM,KAAK,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,KAAK,EAAE,0BAAW,EAAE,IAAI,EAAE,oBAAoB,EAAE,CAAC,CAAC;QACpG,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,KAAK,EAAE,0BAAW,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,EAAE,CAAC,CAAC;QAC3F,IAAA,gBAAM,EAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;QACzC,IAAA,gBAAM,EAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAElD,MAAM,OAAO,GAAG,MAAM,KAAK,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,KAAK,EAAE,0BAAW,EAAE,IAAI,EAAE,oBAAoB,EAAE,CAAC,CAAC;QACpG,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,KAAK,EAAE,0BAAW,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,EAAE,CAAC,CAAC;QAC3F,IAAA,gBAAM,EAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;QACzC,IAAA,gBAAM,EAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAElD,MAAM,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QACnC,IAAA,gBAAM,EAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;QACzC,IAAA,gBAAM,EAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAClD,IAAA,gBAAM,EAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAClD,IAAA,gBAAM,EAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;IAC3C,CAAC,CAAC,CAAC;IAEH,IAAA,UAAI,EAAC,uBAAuB,EAAE,KAAK,IAAI,EAAE;QACvC,MAAM,IAAI,GAAG,MAAM,KAAK,CAAC,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;QAClD,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;QAEvC,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC;QACnB,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC;QAElB,MAAM,IAAA,wBAAgB,EAAC,KAAK,IAAI,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,SAAS,CAAC,CAAC;QAC3E,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAE,CAAC;QAEzC,IAAA,gBAAM,EAAC,MAAM,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACtC,IAAA,gBAAM,EAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACnC,CAAC,CAAC,CAAC,OAAO,CAAC,KAAM,CAAC,CAAC;IAEnB,IAAA,UAAI,EAAC,kCAAkC,EAAE,KAAK,IAAI,EAAE;QAClD,MAAM,KAAK,GAAG,MAAM,KAAK,CAAC,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;QACnD,MAAM,KAAK,GAAG,MAAM,KAAK,CAAC,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;QAEnD,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,WAAW,EAAE,CAAC;QACzC,MAAM,IAAA,qBAAc,EAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QAEpC,MAAM,KAAK,CAAC,KAAK,EAAE,CAAC;QACpB,MAAM,KAAK,CAAC,KAAK,EAAE,CAAC;QAEpB,MAAM,KAAK,CAAC,IAAI,EAAE,CAAC;QACnB,MAAM,IAAA,wBAAgB,EAAC,KAAK,IAAI,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,SAAS,CAAC,CAAC;QAE7E,MAAM,KAAK,GAAG,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QACzC,IAAA,gBAAM,EAAC,KAAK,CAAC,CAAC;QACd,GAAG,CAAC,mBAAmB,CAAC,CAAC;QAEzB,MAAM,KAAK,GAAG,KAAK,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,CAAC,MAAM,CAAC;QACrD,MAAM,IAAA,wBAAgB,EAAC,GAAG,EAAE,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QAC/C,IAAA,gBAAM,EAAC,KAAK,CAAC,MAAM,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;IAC1C,CAAC,CAAC,CAAC;IAEH,IAAA,UAAI,EAAC,mCAAmC,EAAE,KAAK,IAAI,EAAE;QACnD,MAAM,IAAI,GAAG,MAAM,KAAK,CAAC,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;QAElD,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;QAEvC,MAAM,IAAI,GAAG,MAAM,KAAK,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,KAAK,EAAE,0BAAW,EAAE,KAAK,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC;QAEtG,IAAA,gBAAM,EAAC,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QACrD,IAAA,gBAAM,EAAC,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IACrD,CAAC,CAAC,CAAC;IAEH,IAAA,UAAI,EAAC,gBAAgB,EAAE,KAAK,IAAI,EAAE;QAChC,MAAM,IAAI,GAAG,IAAI,WAAI,EAAE,CAAC;QACxB,IAAA,gBAAM,EAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAChC,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC;QAClB,IAAA,gBAAM,EAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC/B,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC;QACnB,IAAA,gBAAM,EAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAClC,CAAC,CAAC,CAAC;IAEH,IAAA,UAAI,EAAC,yBAAyB,EAAE,KAAK,IAAI,EAAE;QACzC,MAAM,IAAI,GAAG,IAAI,WAAI,EAAE,CAAC;QACxB,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC;QAClB,MAAM,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,IAAA,sBAAa,GAAE,CAAC,CAAC;QAChD,MAAM,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;QACzB,IAAA,gBAAM,EAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,WAAW,EAAE,CAAC;QAC5C,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC;IACrB,CAAC,CAAC,CAAC;IAEH,IAAA,UAAI,EAAC,sBAAsB,EAAE,KAAK,IAAI,EAAE;QACtC,MAAM,IAAI,GAAG,IAAI,WAAI,EAAE,CAAC;QACxB,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC;QAClB,MAAM,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,IAAA,sBAAa,GAAE,CAAC,CAAC;QAChD,MAAM,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;QACzB,IAAA,gBAAM,EAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,WAAW,EAAE,CAAC;QAC5C,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC;QAEnB,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC;QAClB,IAAA,gBAAM,EAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC/B,IAAA,gBAAM,EAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,WAAW,EAAE,CAAC;QAC5C,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC;IACrB,CAAC,CAAC,CAAC;IAEH,IAAA,UAAI,EAAC,kCAAkC,EAAE,KAAK,IAAI,EAAE;QAClD,MAAM,IAAI,GAAG,IAAI,WAAI,EAAE,CAAC;QAExB,MAAM,IAAA,gBAAM,EAAC,GAAG,EAAE,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC;IAC/D,CAAC,CAAC,CAAC;IAEH,IAAA,UAAI,EAAC,OAAO,EAAE,KAAK,IAAI,EAAE;QACvB,MAAM,IAAI,GAAG,IAAI,WAAI,EAAE,CAAC;QACxB,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC;QAClB,MAAM,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,IAAA,sBAAa,GAAE,CAAC,CAAC;QAChD,MAAM,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;QACzB,IAAA,gBAAM,EAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,WAAW,EAAE,CAAC;QAE5C,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC;QACnB,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC;IACrB,CAAC,CAAC,CAAC;IAEH,IAAA,UAAI,EAAC,uBAAuB,EAAE,KAAK,IAAI,EAAE;QACvC,MAAM,CAAC,GAAG,MAAM,KAAK,CAAC,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;QAC/C,MAAM,CAAC,GAAG,MAAM,KAAK,EAAE,CAAC;QAExB,IAAA,gBAAM,EAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAC3C,IAAA,gBAAM,EAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QAE5C,IAAA,gBAAM,EAAC,CAAC,CAAC,YAAY,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAC9C,MAAM,CAAC,CAAC,WAAW,EAAE,CAAC;QACtB,IAAA,gBAAM,EAAC,CAAC,CAAC,YAAY,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAE9C,iCAAiC;QACjC,MAAM,UAAU,GAAG,MAAM,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC;YAC/C,eAAe,EAAE,oCAAsB;YACvC,cAAc,EAAE,mCAAqB;SACtC,CAAC,CAAC;QAEH,+BAA+B;QAC/B,IAAA,gBAAM,EAAC,CAAC,CAAC,YAAY,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAE9C,+BAA+B;QAC/B,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,mCAAqB,CAAC,CAAC;QACrD,IAAA,gBAAM,EAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAC3C,IAAA,gBAAM,EAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAE3C,qCAAqC;QACrC,MAAM,IAAA,wBAAgB,EAAC,GAAG,EAAE,CAAC,CAAC,CAAC,YAAY,EAAE,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,IAAI,CAAC,CAAC;QAExE,MAAM,MAAM,GAAG,CAAC,CAAC,YAAY,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QACzC,MAAM,MAAM,CAAC,IAAI,EAAE,CAAC;QACpB,MAAM,MAAM,GAAG,CAAC,CAAC,YAAY,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QACzC,MAAM,MAAM,CAAC,IAAI,EAAE,CAAC;QAEpB;YACE,IAAI,KAAK,GAAqB,IAAI,CAAC;YAEnC,kCAAkC;YAClC,MAAM,OAAO,GAAG,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,mBAAmB,EAAE,CAAC,CAAC,KAAK,EAAE;iBAC1E,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,MAAK,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,EAAE,CAAA,CAAC,CAAC,CAAC;YAEnF,0BAA0B;YAC1B,KAAK,GAAG,MAAM,MAAM,CAAC,QAAQ;iBAC1B,UAAU,CAAC,EAAE,KAAK,EAAE,0BAAW,EAAE,IAAI,EAAE,mBAAmB,EAAE,CAAc,CAAC;YAC9E,GAAG,CAAC,aAAa,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC;YAE7B,2BAA2B;YAC3B,MAAM,OAAO,CAAC;YACd,GAAG,CAAC,SAAS,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC;SAC1B;QAED,MAAM,YAAY,GAAG,CAAC,CAAC,YAAY,EAAE,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;QAE7D,wEAAwE;QACxE,MAAM,OAAO,GAAG,MAAM,CAAC,CAAC,WAAW,EAAE,CAAC;QACtC,GAAG,CAAC,0BAA0B,CAAC,CAAC;QAChC,MAAM,OAAO,CAAC,IAAI,EAAE,CAAC;QACrB,IAAA,gBAAM,EAAC,CAAC,CAAC,YAAY,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAE9C,MAAM,YAAY,CAAC;QACnB,GAAG,CAAC,oBAAoB,CAAC,CAAC;QAC1B,IAAA,gBAAM,EAAC,CAAC,CAAC,YAAY,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAC9C,IAAA,gBAAM,EAAC,CAAC,CAAC,YAAY,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,YAAY,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;QAC7E,IAAA,gBAAM,EAAC,CAAC,CAAC,YAAY,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,YAAY,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;IAC/E,CAAC,CAAC,CAAC,OAAO,CAAC,KAAM,CAAC,CAAC;IAEnB,IAAA,UAAI,EAAC,6BAA6B,EAAE,KAAK,IAAI,EAAE;QAC7C,MAAM,EAAE,GAAG,MAAM,KAAK,CAAC,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;QAChD,MAAM,EAAE,GAAG,MAAM,KAAK,EAAE,CAAC;QACzB,MAAM,EAAE,GAAG,MAAM,KAAK,CAAC,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;QAChD,MAAM,EAAE,GAAG,MAAM,KAAK,EAAE,CAAC;QAEzB,IAAA,gBAAM,EAAC,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,UAAU,EAAE,CAAC;QAC3C,IAAA,gBAAM,EAAC,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,SAAS,EAAE,CAAC;QAE1C,IAAA,gBAAM,EAAC,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,UAAU,EAAE,CAAC;QAC3C,IAAA,gBAAM,EAAC,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,SAAS,EAAE,CAAC;QAE1C,MAAM,OAAO,CAAC,GAAG,CAAC;YAChB,CAAC,KAAK,IAAI,EAAE;gBACV,iCAAiC;gBACjC,MAAM,UAAU,GAAG,MAAM,EAAE,CAAC,IAAI,CAAC,gBAAgB,CAAC,4CAA8B,CAAC,CAAC;gBAElF,+BAA+B;gBAC/B,MAAM,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,mCAAqB,CAAC,CAAC;YACxD,CAAC,CAAC,EAAE;YACJ,CAAC,KAAK,IAAI,EAAE;gBACV,iCAAiC;gBACjC,MAAM,UAAU,GAAG,MAAM,EAAE,CAAC,IAAI,CAAC,gBAAgB,CAAC,4CAA8B,CAAC,CAAC;gBAElF,+BAA+B;gBAC/B,MAAM,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,mCAAqB,CAAC,CAAC;YACxD,CAAC,CAAC,EAAE;SACL,CAAC,CAAC;QAEH,wEAAwE;QACxE,IAAI,MAAM,CAAC;QACX;YACE,IAAA,gBAAM,EAAC,EAAE,CAAC,YAAY,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAC/C,IAAA,gBAAM,EAAC,EAAE,CAAC,YAAY,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAE/C,MAAM,CAAC,aAAa,EAAE,cAAc,CAAC,GAAG,IAAA,aAAK,GAAE,CAAC;YAChD,EAAE,CAAC,YAAY,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,cAAc,CAAC,CAAC;YAE5C,MAAM,GAAG,MAAM,EAAE,CAAC,WAAW,EAAE,CAAC;YAChC,MAAM,aAAa,CAAC;YAEpB,IAAA,gBAAM,EAAC,EAAE,CAAC,YAAY,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAC/C,IAAA,gBAAM,EAAC,EAAE,CAAC,YAAY,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAC/C,IAAA,gBAAM,EAAC,EAAE,CAAC,YAAY,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,YAAY,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;SAChF;QAED,8BAA8B;QAC9B;YACE,IAAA,gBAAM,EAAC,EAAE,CAAC,YAAY,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAC/C,IAAA,gBAAM,EAAC,EAAE,CAAC,YAAY,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAE/C,MAAM,CAAC,aAAa,EAAE,cAAc,CAAC,GAAG,IAAA,aAAK,GAAE,CAAC;YAChD,EAAE,CAAC,YAAY,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,cAAc,CAAC,CAAC;YAE5C,MAAM,UAAU,GAAG,MAAM,MAAM,CAAC,iBAAiB,CAAC,gBAAgB,EAAE,CAAC;YACrE,MAAM,EAAE,CAAC,SAAS,CAAC,UAAU,EAAE,mCAAqB,CAAC,CAAC;YAEtD,MAAM,aAAa,CAAC;YACpB,IAAA,gBAAM,EAAC,EAAE,CAAC,YAAY,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAC/C,IAAA,gBAAM,EAAC,EAAE,CAAC,YAAY,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAC/C,IAAA,gBAAM,EAAC,EAAE,CAAC,YAAY,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,YAAY,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;YAE/E,wCAAwC;YACxC,IAAA,gBAAM,EAAC,EAAE,CAAC,YAAY,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,YAAY,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;SAChF;QAED,0BAA0B;QAC1B,KAAK,MAAM,IAAI,IAAI,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE;YACnC,MAAM,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC,KAAK,CAAC;YAC1C,IAAA,gBAAM,EAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,mBAAmB,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;SAC5F;QAED,IAAI,KAAK,EAAE,MAAM,IAAI,IAAI,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE;YACzC,IAAI,IAAI,GAAqB,IAAI,CAAC;YAClC,MAAM,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC,KAAK,CAAC;YAC1C,MAAM,YAAY,GAAG,EAAE,CAAC;YAExB,KAAK,MAAM,SAAS,IAAI,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC,EAAE;gBAChE,MAAM,CAAC,UAAU,CAAC,GAAG,SAAS,CAAC,YAAY,EAAE,CAAC,KAAK,CAAC;gBACpD,MAAM,CAAC,OAAO,EAAE,QAAQ,CAAC,GAAG,IAAA,aAAK,GAAE,CAAC;gBACpC,UAAU,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,mBAAmB,EAAE,CAAC,CAAC,KAAK,EAAE;qBAC9D,MAAM,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE;oBACjB,IAAI,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,MAAK,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,EAAE,CAAA,CAAC,EAAE;wBAClD,GAAG,CAAC,aAAa,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,EAAE,EAAE,CAAC,CAAC;wBAC7B,QAAQ,EAAE,CAAC;qBACZ;gBACH,CAAC,CAAC,CAAC;gBACL,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;aAC5B;YAED,IAAI,GAAG,MAAM,KAAK,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,KAAK,EAAE,0BAAW,EAAE,IAAI,EAAE,mBAAmB,EAAE,CAAc,CAAC;YACvG,MAAM,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;SACjC;IACH,CAAC,CAAC,CAAC,OAAO,CAAC,KAAM,CAAC,CAAC;IAEnB,IAAA,UAAI,EAAC,iEAAiE,EAAE,KAAK,IAAI,EAAE;QACjF,MAAM,CAAC,GAAG,IAAI,WAAI,EAAE,CAAC;QACrB,MAAM,CAAC,CAAC,IAAI,EAAE,CAAC;QACf,IAAA,qBAAS,EAAC,GAAG,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;QAE3B,MAAM,UAAU,GAAG,IAAA,2BAAkB,GAAE,CAAC;QACxC,MAAM,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,IAAA,8BAAqB,EAAC,UAAU,CAAC,CAAC,CAAC;QAC/D,MAAM,CAAC,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;QAEtB,MAAM,CAAC,GAAG,MAAM,KAAK,EAAE,CAAC;QAExB,IAAA,gBAAM,EAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,UAAU,EAAE,CAAC;QAC1C,IAAA,gBAAM,EAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,SAAS,EAAE,CAAC;QAEzC,+BAA+B;QAC/B,MAAM,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;QACjC,IAAA,gBAAM,EAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,UAAU,EAAE,CAAC;QAC1C,IAAA,gBAAM,EAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,UAAU,EAAE,CAAC;QAE1C,wEAAwE;QACxE,IAAA,gBAAM,EAAC,CAAC,CAAC,YAAY,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAC9C,IAAA,gBAAM,EAAC,CAAC,CAAC,YAAY,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAE9C,MAAM,YAAY,GAAG,CAAC,CAAC,YAAY,EAAE,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;QAE7D,MAAM,CAAC,CAAC,WAAW,EAAE,CAAC;QACtB,IAAA,gBAAM,EAAC,CAAC,CAAC,YAAY,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAE9C,MAAM,YAAY,CAAC;QACnB,IAAA,gBAAM,EAAC,CAAC,CAAC,YAAY,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAC9C,IAAA,gBAAM,EAAC,CAAC,CAAC,YAAY,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,YAAY,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;QAE7E;YACE,IAAI,KAAK,GAAqB,IAAI,CAAC;YAEnC,kCAAkC;YAClC,MAAM,OAAO,GAAG,CAAC,CAAC,YAAY,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,mBAAmB,EAAE,CAAC,CAAC,KAAK,EAAE;iBAC7F,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,MAAK,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,EAAE,CAAA,CAAC,CAAC,CAAC;YAEnF,0BAA0B;YAC1B,KAAK,GAAG,MAAM,CAAC,CAAC,YAAY,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ;iBAC7C,UAAU,CAAC,EAAE,KAAK,EAAE,0BAAW,EAAE,IAAI,EAAE,mBAAmB,EAAE,CAAc,CAAC;YAC9E,GAAG,CAAC,aAAa,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC;YAE7B,2BAA2B;YAC3B,MAAM,OAAO,CAAC;YACd,GAAG,CAAC,SAAS,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC;SAC1B;IACH,CAAC,CAAC,CAAC,OAAO,CAAC,KAAM,CAAC,CAAC;IAEnB,IAAA,UAAI,EAAC,UAAU,EAAE,KAAK,IAAI,EAAE;QAC1B,MAAM,CAAC,GAAG,MAAM,KAAK,CAAC,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;QAC/C,MAAM,CAAC,GAAG,MAAM,KAAK,CAAC,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;QAE/C,MAAM,QAAQ,GAAG,CAAC,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,WAAC,OAAA,MAAA,CAAC,CAAC,IAAI,CAAC,WAAW,0CAAE,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAA,EAAA,CAAC,CAAC,CAAC;QAC1I,MAAM,QAAQ,GAAG,CAAC,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,WAAC,OAAA,MAAA,CAAC,CAAC,IAAI,CAAC,WAAW,0CAAE,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAA,EAAA,CAAC,CAAC,CAAC;QAE1I,oBAAoB;QACpB,MAAM,MAAM,GAAG,MAAM,CAAC,CAAC,WAAW,EAAE,CAAC;QACrC,GAAG,CAAC,WAAW,MAAM,CAAC,GAAG,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;QAErC,MAAM,oBAAoB,GAAG,MAAM,MAAM,CAAC,iBAAiB,CAAC,uBAAuB,CAAC,CAAC,CAAC,IAAI,CAAC,WAAY,CAAC,SAAS,CAAC,CAAC;QAEnH,8BAA8B;QAC9B,MAAM,MAAM,GAAG,MAAM,CAAC,CAAC,SAAS,CAAC,oBAAoB,CAAC,CAAC;QACvD,IAAA,gBAAM,EAAC,MAAM,CAAC,CAAC,WAAW,EAAE,CAAC;QAC7B,GAAG,CAAC,UAAU,MAAM,CAAC,GAAG,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;QAEpC,MAAM,QAAQ,CAAC;QACf,MAAM,QAAQ,CAAC;QAEf,IAAA,gBAAM,EAAC,CAAC,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACpD,IAAA,gBAAM,EAAC,CAAC,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACtD,CAAC,CAAC,CAAC;IAEH,IAAA,UAAI,EAAC,oCAAoC,EAAE,KAAK,IAAI,EAAE;QACpD,MAAM,CAAC,GAAG,MAAM,KAAK,CAAC,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;QAC/C,MAAM,MAAM,GAAG,MAAM,CAAC,CAAC,WAAW,EAAE,CAAC;QAErC,IAAA,gBAAM,EAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACjC,IAAA,gBAAM,EAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAEnC,MAAM,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;QAC3B,IAAA,gBAAM,EAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC/B,IAAA,gBAAM,EAAC,CAAC,MAAM,MAAM,CAAC,iBAAiB,EAAE,CAAC,CAAC,KAAK,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAEhF,MAAM,MAAM,CAAC,UAAU,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;QAC1C,IAAA,gBAAM,EAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAClC,IAAA,gBAAM,EAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACpC,IAAA,gBAAM,EAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAE/B,MAAM,MAAM,CAAC,QAAQ,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;QACxC,IAAA,gBAAM,EAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACjC,IAAA,gBAAM,EAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACnC,IAAA,gBAAM,EAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAE/B,MAAM,IAAA,wBAAgB,EAAC,KAAK,IAAI,EAAE,CAAC,CAAC,MAAM,MAAM,CAAC,iBAAiB,EAAE,CAAC,CAAC,KAAK,CAAC,WAAW,CAAC,OAAO,CAAC,KAAK,GAAG,EAAE,IAAI,CAAC,CAAC;IAClH,CAAC,CAAC,CAAC;IAEH,IAAA,UAAI,EAAC,6DAA6D,EAAE,KAAK,IAAI,EAAE;QAC7E,MAAM,CAAC,GAAG,MAAM,KAAK,CAAC,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;QAC/C,MAAM,MAAM,GAAG,MAAM,CAAC,CAAC,WAAW,EAAE,CAAC;QAErC,IAAA,gBAAM,EAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACjC,IAAA,gBAAM,EAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAEnC,MAAM,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;QAC3B,IAAA,gBAAM,EAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAE/B,MAAM,MAAM,CAAC,UAAU,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;QAC1C,IAAA,gBAAM,EAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAClC,IAAA,gBAAM,EAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACpC,IAAA,gBAAM,EAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAE/B,MAAM,MAAM,CAAC,QAAQ,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;QACxC,IAAA,gBAAM,EAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACjC,IAAA,gBAAM,EAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACnC,IAAA,gBAAM,EAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAE/B,kHAAkH;QAClH,MAAM,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAC5B,IAAA,gBAAM,EAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAClC,CAAC,CAAC,CAAC;IAEH,IAAA,UAAI,EAAC,kCAAkC,EAAE,KAAK,IAAI,EAAE;QAClD,MAAM,CAAC,GAAG,MAAM,KAAK,CAAC,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;QAC/C,MAAM,MAAM,GAAG,MAAM,CAAC,CAAC,WAAW,EAAE,CAAC;QACrC,MAAM,MAAM,GAAG,MAAM,CAAC,CAAC,WAAW,EAAE,CAAC;QAErC,IAAA,gBAAM,EAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACjC,IAAA,gBAAM,EAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAEjC,MAAM,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;QAC3B,MAAM,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;QAE3B,IAAA,gBAAM,EAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC/B,IAAA,gBAAM,EAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAE/B,MAAM,MAAM,CAAC,UAAU,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;QAE1C,IAAA,gBAAM,EAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACjC,IAAA,gBAAM,EAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAElC,IAAA,gBAAM,EAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC/B,IAAA,gBAAM,EAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAE/B,MAAM,MAAM,CAAC,QAAQ,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;QAExC,IAAA,gBAAM,EAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACjC,IAAA,gBAAM,EAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAEjC,IAAA,gBAAM,EAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC/B,IAAA,gBAAM,EAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACjC,CAAC,CAAC,CAAC;IAEH,IAAA,UAAI,EAAC,qCAAqC,EAAE,KAAK,IAAI,EAAE;QACrD,MAAM,CAAC,GAAG,MAAM,KAAK,CAAC,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;QAC/C,MAAM,MAAM,GAAG,MAAM,CAAC,CAAC,WAAW,EAAE,CAAC;QAErC,IAAA,gBAAM,EAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACjC,IAAA,gBAAM,EAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAEnC,kBAAkB;QAClB,IAAI,KAAK,GAAqB,IAAI,CAAC;QACnC,MAAM,CAAC,OAAO,EAAE,QAAQ,CAAC,GAAG,IAAA,aAAK,GAAE,CAAC;QAEpC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,mBAAmB,EAAE,CAAC,CAAC,KAAK,EAAE;aAC1D,MAAM,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE;YACjB,IAAI,KAAK,CAAC,MAAM,EAAE;gBAChB,MAAM,CAAC,YAAY,CAAC,GAAG,KAAK,CAAC;gBAC7B,IAAI,KAAK,IAAI,KAAK,CAAC,EAAE,KAAK,YAAY,CAAC,EAAE,EAAE;oBACzC,QAAQ,EAAE,CAAC;iBACZ;aACF;QACH,CAAC,CAAC,CAAC;QAEL,KAAK,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,KAAK,EAAE,0BAAW,EAAE,IAAI,EAAE,mBAAmB,EAAE,CAAc,CAAC;QACzG,MAAM,OAAO,CAAC,CAAC,mBAAmB;QAElC,IAAA,gBAAM,EAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,mBAAmB,EAAE,CAAC,CAAC,KAAK,EAAE;aACjE,MAAM,CAAC,MAAM,CAAC;aACd,OAAO,CAAC,CAAC,CAAC,CAAC;QAEd,MAAM,MAAM,CAAC,UAAU,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;QAC1C,MAAM,MAAM,CAAC,QAAQ,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;QAExC,IAAA,gBAAM,EAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACjC,IAAA,gBAAM,EAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAEnC,MAAM,MAAM,CAAC,QAAQ;aAClB,MAAM,CAAC,EAAE,IAAI,EAAE,mBAAmB,EAAE,CAAC,CAAC,KAAK,EAAE;aAC7C,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QAC7C,IAAA,gBAAM,EAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,mBAAmB,EAAE,CAAC,CAAC,KAAK,EAAE;aACjE,MAAM;aACN,MAAM,CACR,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IACf,CAAC,CAAC,CAAC,OAAO,CAAC,KAAM,CAAC,CAAC;IAEnB,IAAA,UAAI,EAAC,iCAAiC,EAAE,KAAK,IAAI,EAAE;QACjD,MAAM,CAAC,GAAG,MAAM,KAAK,CAAC,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;QAC/C,MAAM,CAAC,GAAG,MAAM,KAAK,EAAE,CAAC;QAExB;YACE,MAAM,UAAU,GAAG,MAAM,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,4CAA8B,CAAC,CAAC;YACjF,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,mCAAqB,CAAC,CAAC;SACtD;QAED,MAAM,CAAC,CAAC,WAAW,EAAE,CAAC;QACtB,MAAM,IAAA,wBAAgB,EAAC,GAAG,EAAE,CAAC,CAAC,CAAC,YAAY,EAAE,CAAC,KAAK,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;QAElE,IAAA,gBAAM,EAAC,CAAC,CAAC,YAAY,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACpD,IAAA,gBAAM,EAAC,CAAC,CAAC,YAAY,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAEpD,MAAM,CAAC,CAAC,YAAY,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;QAC7D,MAAM,IAAA,wBAAgB,EAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,YAAY,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;QAEhE,IAAA,gBAAM,EAAC,CAAC,CAAC,YAAY,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACrD,IAAA,gBAAM,EAAC,CAAC,CAAC,YAAY,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAEpD,MAAM,CAAC,CAAC,YAAY,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;QAC7D,MAAM,IAAA,wBAAgB,EAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,YAAY,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;QAEtE,IAAA,gBAAM,EAAC,CAAC,CAAC,YAAY,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACrD,IAAA,gBAAM,EAAC,CAAC,CAAC,YAAY,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAErD,MAAM,CAAC,CAAC,YAAY,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;QAC3D,MAAM,IAAA,wBAAgB,EAAC,GAAG,EAAE,CAAC,CAAC,CAAC,YAAY,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,YAAY,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;QAEzG,IAAA,gBAAM,EAAC,CAAC,CAAC,YAAY,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACpD,IAAA,gBAAM,EAAC,CAAC,CAAC,YAAY,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACtD,CAAC,CAAC,CAAC;IAEH,IAAA,UAAI,EAAC,mEAAmE,EAAE,KAAK,IAAI,EAAE;QACnF,2BAA2B;QAC3B,MAAM,CAAC,GAAG,IAAI,WAAI,EAAE,CAAC;QACrB,MAAM,CAAC,CAAC,IAAI,EAAE,CAAC;QACf,IAAA,qBAAS,EAAC,GAAG,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;QAE3B,MAAM,UAAU,GAAG,IAAA,2BAAkB,GAAE,CAAC;QACxC,MAAM,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,IAAA,8BAAqB,EAAC,UAAU,CAAC,CAAC,CAAC;QAC/D,MAAM,CAAC,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;QAEtB,oDAAoD;QACpD,MAAM,CAAC,GAAG,MAAM,KAAK,EAAE,CAAC;QAExB,wDAAwD;QACxD,MAAM,CAAC,GAAG,MAAM,KAAK,EAAE,CAAC;QAExB,6BAA6B;QAC7B,MAAM,CAAC,GAAG,MAAM,KAAK,CAAC,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;QAE/C,MAAM,MAAM,GAAG,MAAM,CAAC,CAAC,WAAW,EAAE,CAAC;QACrC,IAAA,gBAAM,EAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACjC,IAAA,gBAAM,EAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAEnC,qDAAqD;QAErD,MAAM,UAAU,GAAG,MAAM,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,4CAA8B,CAAC,CAAC;QAEjF,IAAA,gBAAM,EAAC,CAAC,CAAC,YAAY,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAC9C,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,mCAAqB,CAAC,CAAC;QACrD,IAAA,gBAAM,EAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,UAAU,EAAE,CAAC;QAC1C,MAAM,IAAA,wBAAgB,EAAC,GAAG,EAAE,CAAC,CAAC,CAAC,YAAY,EAAE,CAAC,KAAK,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;QAClE,IAAA,gBAAM,EAAC,CAAC,CAAC,YAAY,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAC9C,MAAM,MAAM,GAAG,CAAC,CAAC,YAAY,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAEzC,wDAAwD;QAExD,MAAM,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;QACjC,IAAA,gBAAM,EAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,UAAU,EAAE,CAAC;QAC1C,MAAM,IAAA,wBAAgB,EAAC,GAAG,EAAE,CAAC,CAAC,CAAC,YAAY,EAAE,CAAC,KAAK,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;QAClE,IAAA,gBAAM,EAAC,CAAC,CAAC,YAAY,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAC9C,MAAM,MAAM,GAAG,CAAC,CAAC,YAAY,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAEzC,0CAA0C;QAC1C,MAAM,oBAAoB,GAAG,MAAM,CAAC,CAAC,YAAY,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,iBAAiB,CAAC,gBAAgB,EAAE,CAAC;QAClG,IAAA,gBAAM,EAAC,CAAC,CAAC,YAAY,EAAE,CAAC,KAAK,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;QAC/C,MAAM,MAAM,GAAG,MAAM,CAAC,CAAC,SAAS,CAAC,oBAAoB,EAAE,mCAAqB,CAAC,CAAC;QAC9E,IAAA,gBAAM,EAAC,MAAM,CAAC,CAAC,WAAW,EAAE,CAAC;QAC7B,IAAA,gBAAM,EAAC,CAAC,CAAC,YAAY,EAAE,CAAC,KAAK,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;QAE/C,iCAAiC;QAEjC,IAAA,gBAAM,EAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACrC,IAAA,gBAAM,EAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACrC,IAAA,gBAAM,EAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACrC,IAAA,gBAAM,EAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAErC,MAAM,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QAE9B,KAAK,MAAM,KAAK,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE;YAC5C,MAAM,IAAA,wBAAgB,EAAC,KAAK,IAAI,EAAE,CAAC,CAAC,MAAM,MAAM,CAAC,iBAAiB,EAAE,CAAC,CAAC,KAAK,CAAC,WAAW,CAAC,OAAO,CAAC,KAAK,MAAM,EAAE,IAAI,CAAC,CAAC;YACnH,MAAM,IAAA,wBAAgB,EAAC,GAAG,EAAE,CAAC,KAAK,CAAC,KAAK,KAAK,MAAM,EAAE,IAAI,CAAC,CAAC;YAC3D,IAAA,gBAAM,EAAC,KAAK,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;SACrC;QAED,yEAAyE;QACzE,MAAM,IAAA,wBAAgB,EAAC,KAAK,IAAI,EAAE,CAAC,CAAC,MAAM,MAAM,CAAC,iBAAiB,EAAE,CAAC,CAAC,KAAK,CAAC,WAAW,CAAC,OAAO,CAAC,KAAK,MAAM,EAAE,IAAI,CAAC,CAAC;QACnH,MAAM,IAAA,wBAAgB,EAAC,GAAG,EAAE,CAAC,MAAM,CAAC,KAAK,KAAK,MAAM,EAAE,IAAI,CAAC,CAAC;QAC5D,IAAA,gBAAM,EAAC,MAAM,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,yBAAyB;IACjE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAEd,IAAA,UAAI,EAAC,qDAAqD,EAAE,KAAK,IAAI,EAAE;QACrE,MAAM,CAAC,GAAG,MAAM,KAAK,CAAC,EAAE,aAAa,EAAE,IAAI,EAAE,WAAW,EAAE,GAAG,EAAE,CAAC,CAAC;QACjE,MAAM,CAAC,GAAG,MAAM,KAAK,CAAC,EAAE,aAAa,EAAE,IAAI,EAAE,WAAW,EAAE,GAAG,EAAE,CAAC,CAAC;QAEjE,MAAM,MAAM,GAAG,MAAM,CAAC,CAAC,WAAW,EAAE,CAAC;QAErC,MAAM,cAAc,GAAG,MAAM,CAAC,YAAY,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC;QAEtF,MAAM,UAAU,GAAG,MAAM,MAAM,CAAC,iBAAiB,CAAC,gBAAgB,CAAC,4CAA8B,CAAC,CAAC;QACnG,MAAM,CAAC,CAAC,SAAS,CAAC,UAAU,EAAE,mCAAqB,CAAC,CAAC;QAErD,MAAM,OAAO,GAAG,MAAM,cAAc,CAAC;QAErC,IAAA,gBAAM,EAAC,OAAO,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACzC,IAAA,gBAAM,EAAC,OAAO,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC3C,CAAC,CAAC,CAAC;IAEH,qBAAqB;IACrB,qGAAqG;IACrG,wFAAwF;IACxF,qEAAqE;IACrE,oDAAoD;IACpD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;MA6DE;AACJ,CAAC,CAAC,CAAC"}
|
|
1
|
+
{"version":3,"file":"echo.test.js","sourceRoot":"","sources":["../../src/echo.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import { ObjectModel } from '@dxos/object-model';
|
|
2
|
-
import { Item } from '../
|
|
2
|
+
import { Item, ResultSet } from '../api';
|
|
3
3
|
import { PartyInternal, PartyMember } from '../parties';
|
|
4
|
-
import { ResultSet } from '../result';
|
|
5
4
|
export declare type Contact = PartyMember;
|
|
6
5
|
/**
|
|
7
6
|
* Manages contacts.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"contact-manager.d.ts","sourceRoot":"","sources":["../../../src/halo/contact-manager.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEjD,OAAO,EAAE,IAAI,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"contact-manager.d.ts","sourceRoot":"","sources":["../../../src/halo/contact-manager.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEjD,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AACzC,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAIxD,oBAAY,OAAO,GAAG,WAAW,CAAC;AAElC;;GAEG;AACH,qBAAa,cAAc;IAEvB,OAAO,CAAC,QAAQ,CAAC,MAAM;gBAAN,MAAM,EAAE,aAAa;IAGxC,kBAAkB,IAAK,IAAI,CAAC,WAAW,CAAC,GAAG,SAAS;IAIpD,aAAa,IAAK,SAAS,CAAC,OAAO,CAAC;CAkBrC"}
|
|
@@ -6,7 +6,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
6
6
|
exports.ContactManager = void 0;
|
|
7
7
|
const async_1 = require("@dxos/async");
|
|
8
8
|
const crypto_1 = require("@dxos/crypto");
|
|
9
|
-
const
|
|
9
|
+
const api_1 = require("../api");
|
|
10
10
|
const halo_party_1 = require("./halo-party");
|
|
11
11
|
/**
|
|
12
12
|
* Manages contacts.
|
|
@@ -16,23 +16,23 @@ class ContactManager {
|
|
|
16
16
|
this._party = _party;
|
|
17
17
|
}
|
|
18
18
|
getContactListItem() {
|
|
19
|
-
return this._party.database.select({ type: halo_party_1.HALO_PARTY_CONTACT_LIST_TYPE }).query().
|
|
19
|
+
return this._party.database.select({ type: halo_party_1.HALO_PARTY_CONTACT_LIST_TYPE }).query().entities[0];
|
|
20
20
|
}
|
|
21
21
|
queryContacts() {
|
|
22
22
|
const event = new async_1.Event();
|
|
23
|
-
const
|
|
24
|
-
|
|
23
|
+
const result = this._party.database.select({ type: halo_party_1.HALO_PARTY_CONTACT_LIST_TYPE }).query();
|
|
24
|
+
result.update.on(() => {
|
|
25
25
|
event.emit();
|
|
26
26
|
});
|
|
27
27
|
const getter = () => {
|
|
28
|
-
const [contactListItem] =
|
|
28
|
+
const [contactListItem] = result.entities;
|
|
29
29
|
const contacts = contactListItem === null || contactListItem === void 0 ? void 0 : contactListItem.model.toObject();
|
|
30
30
|
return Object.values(contacts !== null && contacts !== void 0 ? contacts : {}).map((contact) => ({
|
|
31
31
|
publicKey: crypto_1.PublicKey.from(contact.publicKey._value),
|
|
32
32
|
displayName: contact.displayName
|
|
33
33
|
}));
|
|
34
34
|
};
|
|
35
|
-
return new
|
|
35
|
+
return new api_1.ResultSet(event, getter);
|
|
36
36
|
}
|
|
37
37
|
}
|
|
38
38
|
exports.ContactManager = ContactManager;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"contact-manager.js","sourceRoot":"","sources":["../../../src/halo/contact-manager.ts"],"names":[],"mappings":";AAAA,EAAE;AACF,0BAA0B;AAC1B,EAAE;;;AAEF,uCAAoC;AACpC,yCAAyC;
|
|
1
|
+
{"version":3,"file":"contact-manager.js","sourceRoot":"","sources":["../../../src/halo/contact-manager.ts"],"names":[],"mappings":";AAAA,EAAE;AACF,0BAA0B;AAC1B,EAAE;;;AAEF,uCAAoC;AACpC,yCAAyC;AAGzC,gCAAyC;AAEzC,6CAA4D;AAK5D;;GAEG;AACH,MAAa,cAAc;IACzB,YACmB,MAAqB;QAArB,WAAM,GAAN,MAAM,CAAe;IACrC,CAAC;IAEJ,kBAAkB;QAChB,OAAO,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,yCAA4B,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;IACjG,CAAC;IAED,aAAa;QACX,MAAM,KAAK,GAAG,IAAI,aAAK,EAAE,CAAC;QAC1B,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,yCAA4B,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC;QAC3F,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,GAAG,EAAE;YACpB,KAAK,CAAC,IAAI,EAAE,CAAC;QACf,CAAC,CAAC,CAAC;QAEH,MAAM,MAAM,GAAG,GAAc,EAAE;YAC7B,MAAM,CAAC,eAAe,CAAC,GAAG,MAAM,CAAC,QAAQ,CAAC;YAC1C,MAAM,QAAQ,GAAG,eAAe,aAAf,eAAe,uBAAf,eAAe,CAAE,KAAK,CAAC,QAAQ,EAAE,CAAC;YACnD,OAAO,MAAM,CAAC,MAAM,CAAC,QAAQ,aAAR,QAAQ,cAAR,QAAQ,GAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,OAAY,EAAE,EAAE,CAAC,CAAC;gBAC1D,SAAS,EAAE,kBAAS,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,MAAM,CAAC;gBACnD,WAAW,EAAE,OAAO,CAAC,WAAW;aACjC,CAAC,CAAC,CAAC;QACN,CAAC,CAAC;QAEF,OAAO,IAAI,eAAS,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;IACtC,CAAC;CACF;AA3BD,wCA2BC"}
|
package/dist/src/halo/halo.d.ts
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { KeyRecord, Keyring, SecretProvider } from '@dxos/credentials';
|
|
2
2
|
import { KeyPair, PublicKey } from '@dxos/crypto';
|
|
3
3
|
import { NetworkManager } from '@dxos/network-manager';
|
|
4
|
+
import { ResultSet } from '../api';
|
|
4
5
|
import { InvitationAuthenticator, InvitationDescriptor, InvitationOptions } from '../invitations';
|
|
5
6
|
import { MetadataStore } from '../metadata';
|
|
6
7
|
import { PartyFactory, PartyManager } from '../parties';
|
|
7
|
-
import { ResultSet } from '../result';
|
|
8
8
|
import { Contact } from './contact-manager';
|
|
9
9
|
import type { CreateProfileOptions } from './types';
|
|
10
10
|
export interface ProfileInfo {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"halo.d.ts","sourceRoot":"","sources":["../../../src/halo/halo.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,SAAS,EAAE,OAAO,EAAW,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAChF,OAAO,EAAiB,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACjE,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAEvD,OAAO,EAAE,uBAAuB,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAClG,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,YAAY,EAAgB,YAAY,EAAE,MAAM,YAAY,CAAC;AACtE,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"halo.d.ts","sourceRoot":"","sources":["../../../src/halo/halo.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,SAAS,EAAE,OAAO,EAAW,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAChF,OAAO,EAAiB,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACjE,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAEvD,OAAO,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AACnC,OAAO,EAAE,uBAAuB,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAClG,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,YAAY,EAAgB,YAAY,EAAE,MAAM,YAAY,CAAC;AACtE,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAG5C,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAC;AAIpD,MAAM,WAAW,WAAW;IAC1B,SAAS,EAAE,SAAS,CAAC;IACrB,QAAQ,EAAE,MAAM,GAAG,SAAS,CAAA;CAC7B;AAED,MAAM,WAAW,iBAAiB;IAChC,OAAO,EAAE,OAAO,CAAC;IACjB,YAAY,EAAE,YAAY,CAAC;IAC3B,cAAc,EAAE,cAAc,CAAC;IAC/B,YAAY,EAAE,YAAY,CAAC;IAC3B,aAAa,EAAE,aAAa,CAAA;CAC7B;AAED;;GAEG;AACH,qBAAa,IAAI;IACf,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAU;IACnC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAe;IAC7C,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAkB;gBAEtC,EACX,OAAO,EACP,YAAY,EACZ,YAAY,EACZ,cAAc,EACd,aAAa,EACd,EAAE,iBAAiB;IAapB,QAAQ;IAIR,IAAI;;;;;IAQJ;;OAEG;IACH,IAAI,aAAa,IAAK,OAAO,CAE5B;IAED;;OAEG;IACH,IAAI,QAAQ,kCAEX;IAED;;OAEG;IACH,IAAI,aAAa,sCAEhB;IAED;;OAEG;IACH,IAAI,WAAW,IAAK,SAAS,GAAG,SAAS,CAExC;IAED;;OAEG;IAEH,IAAI,mBAAmB,IAAK,MAAM,GAAG,SAAS,CAE7C;IAED;;OAEG;IACH,IAAI,OAAO,IAAK,OAAO,CAEtB;IAiBD;;OAEG;IACG,KAAK;IAKX;;OAEG;IACG,KAAK;IAQX;;;;OAIG;IAEG,cAAc,CAAE,OAAO,EAAE,OAAO;IActC;;OAEG;IAEG,MAAM,CAAE,WAAW,CAAC,EAAE,MAAM;IAclC;;OAEG;IACG,OAAO,CAAE,UAAU,EAAE,MAAM;IAQjC;;OAEG;IACG,IAAI,CAAE,oBAAoB,EAAE,oBAAoB,EAAE,cAAc,EAAE,cAAc;IAOtF;;OAEG;IACG,gBAAgB,CAAE,qBAAqB,EAAE,uBAAuB,EAAE,OAAO,CAAC,EAAE,iBAAiB;IAMnG;;OAEG;IAEH,aAAa,IAAK,SAAS,CAAC,OAAO,CAAC;IAMpC;;;;OAIG;IAGG,aAAa,CAAE,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,GAAE,oBAAyB,GAAG,OAAO,CAAC,WAAW,CAAC;IAmBzG;;OAEG;IAEH,UAAU,IAAK,WAAW,GAAG,SAAS;IAYtC,kBAAkB,CAAE,EAAE,EAAE,MAAM,IAAI,GAAG,MAAM,IAAI;CAGhD"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"preferences.d.ts","sourceRoot":"","sources":["../../../src/halo/preferences.ts"],"names":[],"mappings":"AAUA,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAGzC,OAAO,EAAE,IAAI,
|
|
1
|
+
{"version":3,"file":"preferences.d.ts","sourceRoot":"","sources":["../../../src/halo/preferences.ts"],"names":[],"mappings":"AAUA,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAGzC,OAAO,EAAE,IAAI,EAAa,MAAM,QAAQ,CAAC;AACzC,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAC3C,OAAO,EACwF,WAAW,EACzG,MAAM,cAAc,CAAC;AAEtB;;GAEG;AAEH,qBAAa,WAAW;IAGpB,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,UAAU;gBADV,MAAM,EAAE,aAAa,EACrB,UAAU,EAAE,SAAS;IAGxC,IAAI,MAAM,QAKT;IAGD,aAAa,CAAE,QAAQ,EAAE,SAAS;IAKlC,sBAAsB,CAAE,QAAQ,EAAE,CAAC,WAAW,EAAE,GAAG,KAAK,IAAI;IAgC5D,oBAAoB;IAQpB,oBAAoB;IAQb,wBAAwB,CAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,EAAE,MAAM;IAMpD,wBAAwB,CAAE,KAAK,EAAE,aAAa,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG;IAM7E,wBAAwB,CAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,EAAE,MAAM;IAMpD,wBAAwB,CAAE,KAAK,EAAE,aAAa,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG;IAO7E,mBAAmB,CAAE,WAAW,EAAE,IAAI,CAAC,GAAG,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,EAAE,MAAM;IAOvE,mBAAmB,CAAE,WAAW,EAAE,IAAI,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,aAAa,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG;IAQjG,kBAAkB,CAAE,WAAW,EAAE,WAAW;IAkBlD,0BAA0B,CAAE,QAAQ,EAAE,CAAC,OAAO,EAAE,WAAW,EAAE,KAAK,IAAI,GAAG,MAAM,IAAI;CA0BpF"}
|
|
@@ -13,7 +13,7 @@ const defaultsDeep_1 = __importDefault(require("lodash/defaultsDeep"));
|
|
|
13
13
|
const async_1 = require("@dxos/async");
|
|
14
14
|
const crypto_1 = require("@dxos/crypto");
|
|
15
15
|
const object_model_1 = require("@dxos/object-model");
|
|
16
|
-
const
|
|
16
|
+
const api_1 = require("../api");
|
|
17
17
|
const halo_party_1 = require("./halo-party");
|
|
18
18
|
/**
|
|
19
19
|
* Manage settings.
|
|
@@ -67,14 +67,14 @@ class Preferences {
|
|
|
67
67
|
if (!this._party.isOpen) {
|
|
68
68
|
return null;
|
|
69
69
|
}
|
|
70
|
-
const [globalItem] = this._party.database.select({ type: halo_party_1.HALO_PARTY_PREFERENCES_TYPE }).query().
|
|
70
|
+
const [globalItem] = this._party.database.select({ type: halo_party_1.HALO_PARTY_PREFERENCES_TYPE }).query().entities;
|
|
71
71
|
return globalItem;
|
|
72
72
|
}
|
|
73
73
|
getDevicePreferences() {
|
|
74
74
|
if (!this._party.isOpen) {
|
|
75
75
|
return null;
|
|
76
76
|
}
|
|
77
|
-
const deviceItems = this._party.database.select({ type: halo_party_1.HALO_PARTY_DEVICE_PREFERENCES_TYPE }).query().
|
|
77
|
+
const deviceItems = this._party.database.select({ type: halo_party_1.HALO_PARTY_DEVICE_PREFERENCES_TYPE }).query().entities;
|
|
78
78
|
return deviceItems.find(item => this._deviceKey.equals(item.model.getProperty('publicKey')));
|
|
79
79
|
}
|
|
80
80
|
getGlobalPartyPreference(partyKey, key) {
|
|
@@ -115,7 +115,7 @@ class Preferences {
|
|
|
115
115
|
const [partyDesc] = this._party.database
|
|
116
116
|
.select({ type: halo_party_1.HALO_PARTY_DESCRIPTOR_TYPE })
|
|
117
117
|
.filter(partyMarker => joinedParty.partyKey.equals(partyMarker.model.getProperty('publicKey')))
|
|
118
|
-
.query().
|
|
118
|
+
.query().entities;
|
|
119
119
|
(0, assert_1.default)(!partyDesc, `Descriptor already exists for Party: ${joinedParty.partyKey.toHex()}`);
|
|
120
120
|
await this._party.database.createItem({
|
|
121
121
|
model: object_model_1.ObjectModel,
|
|
@@ -138,13 +138,13 @@ class Preferences {
|
|
|
138
138
|
}))
|
|
139
139
|
};
|
|
140
140
|
};
|
|
141
|
-
const
|
|
141
|
+
const result = this._party.database.select({ type: halo_party_1.HALO_PARTY_DESCRIPTOR_TYPE }).query();
|
|
142
142
|
// Wrap the query event so we can have manual control.
|
|
143
143
|
const event = new async_1.Event();
|
|
144
|
-
|
|
145
|
-
const
|
|
146
|
-
const unsubscribe =
|
|
147
|
-
if (
|
|
144
|
+
result.update.on(() => event.emit());
|
|
145
|
+
const resultSet = new api_1.ResultSet(event, () => result.entities.map(converter));
|
|
146
|
+
const unsubscribe = resultSet.subscribe(callback);
|
|
147
|
+
if (resultSet.value.length) {
|
|
148
148
|
event.emit();
|
|
149
149
|
}
|
|
150
150
|
return unsubscribe;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"preferences.js","sourceRoot":"","sources":["../../../src/halo/preferences.ts"],"names":[],"mappings":";AAAA,EAAE;AACF,0BAA0B;AAC1B,EAAE;;;;;;AAEF,oDAA4B;AAC5B,kFAAoD;AACpD,uEAA+C;AAE/C,uCAAoC;AAEpC,yCAAyC;AACzC,qDAAiD;
|
|
1
|
+
{"version":3,"file":"preferences.js","sourceRoot":"","sources":["../../../src/halo/preferences.ts"],"names":[],"mappings":"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"}
|
package/dist/src/index.d.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
export { codec } from '@dxos/echo-protocol';
|
|
2
|
+
export * from './api';
|
|
2
3
|
export * from './database';
|
|
3
4
|
export * from './echo';
|
|
4
5
|
export * from './errors';
|
|
@@ -7,7 +8,7 @@ export * from './invitations';
|
|
|
7
8
|
export * from './metadata';
|
|
8
9
|
export * from './parties';
|
|
9
10
|
export * from './pipeline';
|
|
10
|
-
export * from './result';
|
|
11
11
|
export * from './snapshots';
|
|
12
|
+
export * from './testing';
|
|
12
13
|
export * from './util';
|
|
13
14
|
//# sourceMappingURL=index.d.ts.map
|