@dxos/echo-db 2.33.1 → 2.33.2-dev.18eaaced
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/echo.d.ts +8 -8
- package/dist/src/echo.d.ts.map +1 -1
- package/dist/src/echo.js +15 -16
- package/dist/src/echo.js.map +1 -1
- package/dist/src/echo.test.js +7 -13
- package/dist/src/echo.test.js.map +1 -1
- package/dist/src/halo/contact-manager.d.ts +4 -4
- package/dist/src/halo/contact-manager.d.ts.map +1 -1
- package/dist/src/halo/contact-manager.js +10 -4
- package/dist/src/halo/contact-manager.js.map +1 -1
- package/dist/src/halo/halo-factory.d.ts +14 -9
- package/dist/src/halo/halo-factory.d.ts.map +1 -1
- package/dist/src/halo/halo-factory.js +47 -14
- package/dist/src/halo/halo-factory.js.map +1 -1
- package/dist/src/halo/halo-party.d.ts +35 -7
- package/dist/src/halo/halo-party.d.ts.map +1 -1
- package/dist/src/halo/halo-party.js +97 -18
- package/dist/src/halo/halo-party.js.map +1 -1
- package/dist/src/halo/halo.d.ts +14 -12
- package/dist/src/halo/halo.d.ts.map +1 -1
- package/dist/src/halo/halo.js +31 -29
- package/dist/src/halo/halo.js.map +1 -1
- package/dist/src/halo/halo.test.d.ts +2 -0
- package/dist/src/halo/halo.test.d.ts.map +1 -0
- package/dist/src/halo/halo.test.js +162 -0
- package/dist/src/halo/halo.test.js.map +1 -0
- package/dist/src/halo/identity-manager.d.ts +10 -8
- package/dist/src/halo/identity-manager.d.ts.map +1 -1
- package/dist/src/halo/identity-manager.js +24 -20
- package/dist/src/halo/identity-manager.js.map +1 -1
- package/dist/src/halo/identity.d.ts +12 -6
- package/dist/src/halo/identity.d.ts.map +1 -1
- package/dist/src/halo/identity.js +11 -15
- package/dist/src/halo/identity.js.map +1 -1
- package/dist/src/halo/index.d.ts +1 -1
- package/dist/src/halo/index.d.ts.map +1 -1
- package/dist/src/halo/index.js +1 -1
- package/dist/src/halo/index.js.map +1 -1
- package/dist/src/halo/party-opener.js +1 -1
- package/dist/src/halo/party-opener.js.map +1 -1
- package/dist/src/halo/preferences.d.ts +9 -9
- package/dist/src/halo/preferences.d.ts.map +1 -1
- package/dist/src/halo/preferences.js +25 -15
- package/dist/src/halo/preferences.js.map +1 -1
- package/dist/src/index.d.ts +1 -1
- package/dist/src/index.js +1 -1
- package/dist/src/invitations/greeting-initiator.d.ts +14 -4
- package/dist/src/invitations/greeting-initiator.d.ts.map +1 -1
- package/dist/src/invitations/greeting-initiator.js +15 -16
- package/dist/src/invitations/greeting-initiator.js.map +1 -1
- package/dist/src/invitations/greeting-responder.d.ts +3 -3
- package/dist/src/invitations/greeting-responder.d.ts.map +1 -1
- package/dist/src/invitations/greeting-responder.js +3 -4
- package/dist/src/invitations/greeting-responder.js.map +1 -1
- package/dist/src/invitations/halo-recovery-initiator.d.ts +6 -4
- package/dist/src/invitations/halo-recovery-initiator.d.ts.map +1 -1
- package/dist/src/invitations/halo-recovery-initiator.js +15 -26
- package/dist/src/invitations/halo-recovery-initiator.js.map +1 -1
- package/dist/src/invitations/index.d.ts +1 -1
- package/dist/src/invitations/index.js +1 -1
- package/dist/src/invitations/{invitation-manager.d.ts → invitation-factory.d.ts} +5 -6
- package/dist/src/invitations/invitation-factory.d.ts.map +1 -0
- package/dist/src/invitations/{invitation-manager.js → invitation-factory.js} +9 -15
- package/dist/src/invitations/invitation-factory.js.map +1 -0
- package/dist/src/invitations/offline-invitation-claimer.d.ts +3 -3
- package/dist/src/invitations/offline-invitation-claimer.js +1 -1
- package/dist/src/parties/{party-internal.d.ts → data-party.d.ts} +13 -11
- package/dist/src/parties/data-party.d.ts.map +1 -0
- package/dist/src/parties/{party-internal.js → data-party.js} +27 -37
- package/dist/src/parties/data-party.js.map +1 -0
- package/dist/src/parties/index.d.ts +1 -2
- package/dist/src/parties/index.d.ts.map +1 -1
- package/dist/src/parties/index.js +1 -2
- package/dist/src/parties/index.js.map +1 -1
- package/dist/src/parties/party-factory.d.ts +10 -11
- package/dist/src/parties/party-factory.d.ts.map +1 -1
- package/dist/src/parties/party-factory.js +25 -16
- package/dist/src/parties/party-factory.js.map +1 -1
- package/dist/src/parties/party-manager.d.ts +9 -9
- package/dist/src/parties/party-manager.d.ts.map +1 -1
- package/dist/src/parties/party-manager.js +13 -13
- package/dist/src/parties/party-manager.js.map +1 -1
- package/dist/src/parties/party-manager.test.js +69 -68
- package/dist/src/parties/party-manager.test.js.map +1 -1
- package/dist/src/{halo → parties}/party-preferences.d.ts +3 -3
- package/dist/src/parties/party-preferences.d.ts.map +1 -0
- package/dist/src/{halo → parties}/party-preferences.js +3 -3
- package/dist/src/parties/party-preferences.js.map +1 -0
- package/dist/src/pipeline/index.d.ts +3 -1
- package/dist/src/pipeline/index.d.ts.map +1 -1
- package/dist/src/pipeline/index.js +3 -1
- package/dist/src/pipeline/index.js.map +1 -1
- package/dist/src/{metadata → pipeline}/metadata-store.d.ts +0 -0
- package/dist/src/{metadata → pipeline}/metadata-store.d.ts.map +1 -1
- package/dist/src/{metadata → pipeline}/metadata-store.js +0 -0
- package/dist/src/{metadata → pipeline}/metadata-store.js.map +1 -1
- package/dist/src/{metadata → pipeline}/metadata-store.test.d.ts +0 -0
- package/dist/src/pipeline/metadata-store.test.d.ts.map +1 -0
- package/dist/src/{metadata → pipeline}/metadata-store.test.js +0 -0
- package/dist/src/{metadata → pipeline}/metadata-store.test.js.map +1 -1
- package/dist/src/{parties → pipeline}/party-core.d.ts +0 -0
- package/dist/src/pipeline/party-core.d.ts.map +1 -0
- package/dist/src/{parties → pipeline}/party-core.js +8 -4
- package/dist/src/pipeline/party-core.js.map +1 -0
- package/dist/src/{parties → pipeline}/party-core.test.d.ts +0 -0
- package/dist/src/pipeline/party-core.test.d.ts.map +1 -0
- package/dist/src/{parties → pipeline}/party-core.test.js +3 -4
- package/dist/src/pipeline/party-core.test.js.map +1 -0
- package/dist/src/pipeline/party-feed-provider.d.ts +3 -2
- package/dist/src/pipeline/party-feed-provider.d.ts.map +1 -1
- package/dist/src/pipeline/party-feed-provider.js +40 -19
- package/dist/src/pipeline/party-feed-provider.js.map +1 -1
- package/dist/src/protocol/auth-plugin.d.ts +7 -0
- package/dist/src/protocol/auth-plugin.d.ts.map +1 -0
- package/dist/src/protocol/auth-plugin.js +16 -0
- package/dist/src/protocol/auth-plugin.js.map +1 -0
- package/dist/src/protocol/authenticator.d.ts +14 -0
- package/dist/src/protocol/authenticator.d.ts.map +1 -0
- package/dist/src/protocol/authenticator.js +31 -0
- package/dist/src/protocol/authenticator.js.map +1 -0
- package/dist/src/protocol/authenticator.test.d.ts +2 -0
- package/dist/src/protocol/authenticator.test.d.ts.map +1 -0
- package/dist/src/protocol/authenticator.test.js +45 -0
- package/dist/src/protocol/authenticator.test.js.map +1 -0
- package/dist/src/protocol/credentials-signer.d.ts +31 -0
- package/dist/src/protocol/credentials-signer.d.ts.map +1 -0
- package/dist/src/protocol/credentials-signer.js +53 -0
- package/dist/src/protocol/credentials-signer.js.map +1 -0
- package/dist/src/protocol/halo-recovery-plugin.d.ts +10 -0
- package/dist/src/protocol/halo-recovery-plugin.d.ts.map +1 -0
- package/dist/src/protocol/halo-recovery-plugin.js +18 -0
- package/dist/src/protocol/halo-recovery-plugin.js.map +1 -0
- package/dist/src/protocol/index.d.ts +7 -0
- package/dist/src/protocol/index.d.ts.map +1 -0
- package/dist/src/{metadata → protocol}/index.js +7 -2
- package/dist/src/protocol/index.js.map +1 -0
- package/dist/src/protocol/offline-invitation-plugin.d.ts +9 -0
- package/dist/src/protocol/offline-invitation-plugin.d.ts.map +1 -0
- package/dist/src/protocol/offline-invitation-plugin.js +17 -0
- package/dist/src/protocol/offline-invitation-plugin.js.map +1 -0
- package/dist/src/{pipeline → protocol}/party-protocol-factory.d.ts +7 -17
- package/dist/src/protocol/party-protocol-factory.d.ts.map +1 -0
- package/dist/src/{pipeline → protocol}/party-protocol-factory.js +7 -47
- package/dist/src/protocol/party-protocol-factory.js.map +1 -0
- package/dist/src/snapshots/snapshot-generator.d.ts +1 -1
- package/dist/src/snapshots/snapshot-generator.d.ts.map +1 -1
- package/dist/src/testing/testing-factories.js.map +1 -1
- package/dist/src/testing/testing.d.ts +2 -2
- package/dist/src/testing/testing.d.ts.map +1 -1
- package/dist/src/testing/testing.js +1 -7
- package/dist/src/testing/testing.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +17 -17
- package/src/echo.test.ts +8 -14
- package/src/echo.ts +107 -109
- package/src/halo/contact-manager.ts +9 -5
- package/src/halo/halo-factory.ts +82 -19
- package/src/halo/halo-party.ts +137 -21
- package/src/halo/halo.test.ts +198 -0
- package/src/halo/halo.ts +40 -38
- package/src/halo/identity-manager.ts +33 -28
- package/src/halo/identity.ts +19 -23
- package/src/halo/index.ts +1 -1
- package/src/halo/party-opener.ts +1 -1
- package/src/halo/preferences.ts +29 -18
- package/src/index.ts +1 -1
- package/src/invitations/greeting-initiator.ts +37 -32
- package/src/invitations/greeting-responder.ts +4 -5
- package/src/invitations/halo-recovery-initiator.ts +16 -24
- package/src/invitations/index.ts +1 -1
- package/src/invitations/{invitation-manager.ts → invitation-factory.ts} +8 -15
- package/src/invitations/offline-invitation-claimer.ts +3 -3
- package/src/parties/{party-internal.ts → data-party.ts} +30 -55
- package/src/parties/index.ts +1 -2
- package/src/parties/party-factory.ts +31 -21
- package/src/parties/party-manager.test.ts +99 -73
- package/src/parties/party-manager.ts +17 -17
- package/src/{halo → parties}/party-preferences.ts +3 -3
- package/src/pipeline/index.ts +3 -1
- package/src/{metadata → pipeline}/metadata-store.test.ts +0 -0
- package/src/{metadata → pipeline}/metadata-store.ts +0 -0
- package/src/{parties → pipeline}/party-core.test.ts +1 -2
- package/src/{parties → pipeline}/party-core.ts +12 -7
- package/src/pipeline/party-feed-provider.ts +32 -21
- package/src/protocol/auth-plugin.ts +14 -0
- package/src/protocol/authenticator.test.ts +66 -0
- package/src/protocol/authenticator.ts +56 -0
- package/src/protocol/credentials-signer.ts +60 -0
- package/src/protocol/halo-recovery-plugin.ts +20 -0
- package/src/protocol/index.ts +10 -0
- package/src/protocol/offline-invitation-plugin.ts +19 -0
- package/src/{pipeline → protocol}/party-protocol-factory.ts +10 -82
- package/src/snapshots/snapshot-generator.ts +1 -1
- package/src/testing/testing-factories.ts +2 -2
- package/src/testing/testing.ts +3 -9
- package/dist/src/halo/party-preferences.d.ts.map +0 -1
- package/dist/src/halo/party-preferences.js.map +0 -1
- package/dist/src/invitations/invitation-manager.d.ts.map +0 -1
- package/dist/src/invitations/invitation-manager.js.map +0 -1
- package/dist/src/metadata/index.d.ts +0 -2
- package/dist/src/metadata/index.d.ts.map +0 -1
- package/dist/src/metadata/index.js.map +0 -1
- package/dist/src/metadata/metadata-store.test.d.ts.map +0 -1
- package/dist/src/parties/authenticator.d.ts +0 -5
- package/dist/src/parties/authenticator.d.ts.map +0 -1
- package/dist/src/parties/authenticator.js +0 -27
- package/dist/src/parties/authenticator.js.map +0 -1
- package/dist/src/parties/party-core.d.ts.map +0 -1
- package/dist/src/parties/party-core.js.map +0 -1
- package/dist/src/parties/party-core.test.d.ts.map +0 -1
- package/dist/src/parties/party-core.test.js.map +0 -1
- package/dist/src/parties/party-internal.d.ts.map +0 -1
- package/dist/src/parties/party-internal.js.map +0 -1
- package/dist/src/pipeline/party-protocol-factory.d.ts.map +0 -1
- package/dist/src/pipeline/party-protocol-factory.js.map +0 -1
- package/src/metadata/index.ts +0 -5
- package/src/parties/authenticator.ts +0 -31
package/dist/src/echo.d.ts
CHANGED
|
@@ -7,7 +7,7 @@ import { IStorage } from '@dxos/random-access-multi-storage';
|
|
|
7
7
|
import { ResultSet } from './api';
|
|
8
8
|
import { HALO } from './halo';
|
|
9
9
|
import { InvitationDescriptor } from './invitations';
|
|
10
|
-
import { OpenProgress,
|
|
10
|
+
import { OpenProgress, DataParty } from './parties';
|
|
11
11
|
import { SnapshotStore } from './snapshots';
|
|
12
12
|
export interface PartyFilter {
|
|
13
13
|
}
|
|
@@ -103,29 +103,29 @@ export declare class ECHO {
|
|
|
103
103
|
*/
|
|
104
104
|
reset(): Promise<void>;
|
|
105
105
|
/**
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
createParty(): Promise<
|
|
106
|
+
* Creates a new party.
|
|
107
|
+
*/
|
|
108
|
+
createParty(): Promise<DataParty>;
|
|
109
109
|
/**
|
|
110
110
|
* Clones an existing party from a snapshot.
|
|
111
111
|
* @param snapshot
|
|
112
112
|
*/
|
|
113
|
-
cloneParty(snapshot: PartySnapshot): Promise<
|
|
113
|
+
cloneParty(snapshot: PartySnapshot): Promise<DataParty>;
|
|
114
114
|
/**
|
|
115
115
|
* Returns an individual party by it's key.
|
|
116
116
|
* @param {PartyKey} partyKey
|
|
117
117
|
*/
|
|
118
|
-
getParty(partyKey: PartyKey):
|
|
118
|
+
getParty(partyKey: PartyKey): DataParty | undefined;
|
|
119
119
|
/**
|
|
120
120
|
* Queries for a set of Parties matching the optional filter.
|
|
121
121
|
* @param {PartyFilter} filter
|
|
122
122
|
*/
|
|
123
|
-
queryParties(filter?: PartyFilter): ResultSet<
|
|
123
|
+
queryParties(filter?: PartyFilter): ResultSet<DataParty>;
|
|
124
124
|
/**
|
|
125
125
|
* Joins a party that was created by another peer and starts replicating with it.
|
|
126
126
|
* @param invitationDescriptor Invitation descriptor passed from another peer.
|
|
127
127
|
* @param secretProvider Shared secret provider, the other peer creating the invitation must have the same secret.
|
|
128
128
|
*/
|
|
129
|
-
joinParty(invitationDescriptor: InvitationDescriptor, secretProvider?: SecretProvider): Promise<
|
|
129
|
+
joinParty(invitationDescriptor: InvitationDescriptor, secretProvider?: SecretProvider): Promise<DataParty>;
|
|
130
130
|
}
|
|
131
131
|
//# sourceMappingURL=echo.d.ts.map
|
package/dist/src/echo.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"echo.d.ts","sourceRoot":"","sources":["../../src/echo.ts"],"names":[],"mappings":"AASA,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;AAG7D,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAGlC,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAE9B,OAAO,EAAE,oBAAoB,EAA4B,MAAM,eAAe,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
|
@@ -31,7 +31,6 @@ const errors_1 = require("./errors");
|
|
|
31
31
|
const halo_1 = require("./halo");
|
|
32
32
|
const party_opener_1 = require("./halo/party-opener");
|
|
33
33
|
const invitations_1 = require("./invitations");
|
|
34
|
-
const metadata_1 = require("./metadata");
|
|
35
34
|
const parties_1 = require("./parties");
|
|
36
35
|
const pipeline_1 = require("./pipeline");
|
|
37
36
|
const snapshots_1 = require("./snapshots");
|
|
@@ -65,10 +64,10 @@ class ECHO {
|
|
|
65
64
|
.registerModel(object_model_1.ObjectModel);
|
|
66
65
|
this._networkManager = new network_manager_1.NetworkManager(networkManagerOptions);
|
|
67
66
|
this._snapshotStore = new snapshots_1.SnapshotStore(snapshotStorage);
|
|
68
|
-
this._metadataStore = new
|
|
67
|
+
this._metadataStore = new pipeline_1.MetadataStore(metadataStorage);
|
|
69
68
|
this._keyring = new credentials_1.Keyring(new credentials_1.KeyStore(keyStorage));
|
|
70
69
|
this._feedStore = new feed_store_1.FeedStore(feedStorage, { valueEncoding: echo_protocol_1.codec });
|
|
71
|
-
const
|
|
70
|
+
const feedProviderFactory = (partyKey) => new pipeline_1.PartyFeedProvider(this._metadataStore, this._keyring, this._feedStore, partyKey);
|
|
72
71
|
// TODO(burdon): Restructure options (e.g., hierarchical options for snapshots).
|
|
73
72
|
const options = {
|
|
74
73
|
snapshots,
|
|
@@ -76,20 +75,21 @@ class ECHO {
|
|
|
76
75
|
readLogger,
|
|
77
76
|
writeLogger
|
|
78
77
|
};
|
|
79
|
-
const partyFactory = new parties_1.PartyFactory(() => this.halo.identity, this._networkManager, this._modelFactory, this._snapshotStore,
|
|
78
|
+
const partyFactory = new parties_1.PartyFactory(() => this.halo.identity, this._networkManager, this._modelFactory, this._snapshotStore, feedProviderFactory, options);
|
|
80
79
|
this._partyManager = new parties_1.PartyManager(this._metadataStore, this._snapshotStore, () => this.halo.identity, partyFactory);
|
|
81
|
-
// TODO(burdon): Why does this need both PartyManager and PartyFactory?
|
|
82
80
|
this._halo = new halo_1.HALO({
|
|
83
81
|
keyring: this._keyring,
|
|
84
|
-
partyManager: this._partyManager,
|
|
85
|
-
partyFactory,
|
|
86
82
|
networkManager: this._networkManager,
|
|
87
|
-
metadataStore: this._metadataStore
|
|
83
|
+
metadataStore: this._metadataStore,
|
|
84
|
+
feedProviderFactory: feedProviderFactory,
|
|
85
|
+
modelFactory: this._modelFactory,
|
|
86
|
+
snapshotStore: this._snapshotStore,
|
|
87
|
+
options
|
|
88
88
|
});
|
|
89
89
|
this._halo.identityReady.once(() => {
|
|
90
90
|
var _a;
|
|
91
91
|
// It might be the case that halo gets closed before this has a chance to execute.
|
|
92
|
-
if ((_a = this.halo.identity
|
|
92
|
+
if ((_a = this.halo.identity) === null || _a === void 0 ? void 0 : _a.halo.isOpen) {
|
|
93
93
|
this._subs.push((0, party_opener_1.autoPartyOpener)(this.halo.identity.preferences, this._partyManager));
|
|
94
94
|
}
|
|
95
95
|
});
|
|
@@ -145,8 +145,8 @@ class ECHO {
|
|
|
145
145
|
return;
|
|
146
146
|
}
|
|
147
147
|
await this._metadataStore.load();
|
|
148
|
-
if (this._metadataStore.version !==
|
|
149
|
-
throw new errors_1.InvalidStorageVersionError(
|
|
148
|
+
if (this._metadataStore.version !== pipeline_1.STORAGE_VERSION) {
|
|
149
|
+
throw new errors_1.InvalidStorageVersionError(pipeline_1.STORAGE_VERSION, this._metadataStore.version);
|
|
150
150
|
}
|
|
151
151
|
await this._keyring.load();
|
|
152
152
|
await this._metadataStore.load();
|
|
@@ -161,9 +161,7 @@ class ECHO {
|
|
|
161
161
|
return;
|
|
162
162
|
}
|
|
163
163
|
this._subs.unsubscribe();
|
|
164
|
-
// TODO(marik-d): Should be `_identityManager.close()`.
|
|
165
164
|
await this.halo.close();
|
|
166
|
-
// TODO(marik-d): Close network manager.
|
|
167
165
|
await this._partyManager.close();
|
|
168
166
|
await this._feedStore.close();
|
|
169
167
|
await this.networkManager.destroy();
|
|
@@ -202,8 +200,8 @@ class ECHO {
|
|
|
202
200
|
// Parties.
|
|
203
201
|
//
|
|
204
202
|
/**
|
|
205
|
-
|
|
206
|
-
|
|
203
|
+
* Creates a new party.
|
|
204
|
+
*/
|
|
207
205
|
async createParty() {
|
|
208
206
|
await this.open();
|
|
209
207
|
const party = await this._partyManager.createParty();
|
|
@@ -248,8 +246,9 @@ class ECHO {
|
|
|
248
246
|
* @param secretProvider Shared secret provider, the other peer creating the invitation must have the same secret.
|
|
249
247
|
*/
|
|
250
248
|
async joinParty(invitationDescriptor, secretProvider) {
|
|
249
|
+
var _a;
|
|
251
250
|
(0, assert_1.default)(this._partyManager.isOpen, new debug_2.InvalidStateError());
|
|
252
|
-
const actualSecretProvider = secretProvider !== null && secretProvider !== void 0 ? secretProvider : invitations_1.OfflineInvitationClaimer.createSecretProvider(this.halo.identity);
|
|
251
|
+
const actualSecretProvider = secretProvider !== null && secretProvider !== void 0 ? secretProvider : invitations_1.OfflineInvitationClaimer.createSecretProvider((_a = this.halo.identity) !== null && _a !== void 0 ? _a : (0, debug_2.raise)(new errors_1.IdentityNotInitializedError()));
|
|
253
252
|
return this._partyManager.joinParty(invitationDescriptor, actualSecretProvider);
|
|
254
253
|
}
|
|
255
254
|
}
|
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,uCAA2C;AAC3C,mDAAsE;AAEtE,
|
|
1
|
+
{"version":3,"file":"echo.js","sourceRoot":"","sources":["../../src/echo.ts"],"names":[],"mappings":"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"}
|
package/dist/src/echo.test.js
CHANGED
|
@@ -25,8 +25,7 @@ describe('ECHO', () => {
|
|
|
25
25
|
await echo.open();
|
|
26
26
|
(0, testutils_1.afterTest)(() => echo.close());
|
|
27
27
|
if (createProfile) {
|
|
28
|
-
await echo.halo.
|
|
29
|
-
await echo.halo.create(displayName); // TODO(burdon): Rename.
|
|
28
|
+
await echo.halo.createProfile({ username: displayName });
|
|
30
29
|
}
|
|
31
30
|
return echo;
|
|
32
31
|
};
|
|
@@ -175,16 +174,14 @@ describe('ECHO', () => {
|
|
|
175
174
|
(0, mocha_1.it)('open and create profile', async () => {
|
|
176
175
|
const echo = new echo_1.ECHO();
|
|
177
176
|
await echo.open();
|
|
178
|
-
await echo.halo.
|
|
179
|
-
await echo.halo.create();
|
|
177
|
+
await echo.halo.createProfile();
|
|
180
178
|
(0, expect_1.default)(echo.halo.identityKey).toBeDefined();
|
|
181
179
|
await echo.close();
|
|
182
180
|
});
|
|
183
181
|
(0, mocha_1.it)('close and open again', async () => {
|
|
184
182
|
const echo = new echo_1.ECHO();
|
|
185
183
|
await echo.open();
|
|
186
|
-
await echo.halo.
|
|
187
|
-
await echo.halo.create();
|
|
184
|
+
await echo.halo.createProfile();
|
|
188
185
|
(0, expect_1.default)(echo.halo.identityKey).toBeDefined();
|
|
189
186
|
await echo.close();
|
|
190
187
|
await echo.open();
|
|
@@ -199,8 +196,7 @@ describe('ECHO', () => {
|
|
|
199
196
|
(0, mocha_1.it)('reset', async () => {
|
|
200
197
|
const echo = new echo_1.ECHO();
|
|
201
198
|
await echo.open();
|
|
202
|
-
await echo.halo.
|
|
203
|
-
await echo.halo.create();
|
|
199
|
+
await echo.halo.createProfile();
|
|
204
200
|
(0, expect_1.default)(echo.halo.identityKey).toBeDefined();
|
|
205
201
|
await echo.reset();
|
|
206
202
|
await echo.close();
|
|
@@ -288,7 +284,7 @@ describe('ECHO', () => {
|
|
|
288
284
|
(0, expect_1.default)(partyA.database.select({ type: 'example:item/test' }).exec().entities.length > 0).toEqual(true);
|
|
289
285
|
}
|
|
290
286
|
}).timeout(10000);
|
|
291
|
-
|
|
287
|
+
mocha_1.it.skip('3 devices', async () => {
|
|
292
288
|
const a = await setup({ createProfile: true });
|
|
293
289
|
const b = await setup();
|
|
294
290
|
await a.createParty();
|
|
@@ -406,8 +402,7 @@ describe('ECHO', () => {
|
|
|
406
402
|
await a.open();
|
|
407
403
|
(0, testutils_1.afterTest)(() => a.close());
|
|
408
404
|
const seedPhrase = (0, crypto_1.generateSeedPhrase)();
|
|
409
|
-
await a.halo.
|
|
410
|
-
await a.halo.create();
|
|
405
|
+
await a.halo.createProfile({ ...(0, crypto_1.keyPairFromSeedPhrase)(seedPhrase) });
|
|
411
406
|
const b = await setup();
|
|
412
407
|
(0, expect_1.default)(a.halo.isInitialized).toBeTruthy();
|
|
413
408
|
(0, expect_1.default)(b.halo.isInitialized).toBeFalsy();
|
|
@@ -574,8 +569,7 @@ describe('ECHO', () => {
|
|
|
574
569
|
await a.open();
|
|
575
570
|
(0, testutils_1.afterTest)(() => a.close());
|
|
576
571
|
const seedPhrase = (0, crypto_1.generateSeedPhrase)();
|
|
577
|
-
await a.halo.
|
|
578
|
-
await a.halo.create();
|
|
572
|
+
await a.halo.createProfile({ ...(0, crypto_1.keyPairFromSeedPhrase)(seedPhrase) });
|
|
579
573
|
// User's other device, joined by device invitation.
|
|
580
574
|
const b = await setup();
|
|
581
575
|
// User's other device, joined by seed phrase recovery.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"echo.test.js","sourceRoot":"","sources":["../../src/echo.test.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"echo.test.js","sourceRoot":"","sources":["../../src/echo.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import { ObjectModel } from '@dxos/object-model';
|
|
2
|
-
import { Item, ResultSet } from '../api';
|
|
3
|
-
import {
|
|
2
|
+
import { Database, Item, ResultSet } from '../api';
|
|
3
|
+
import { PartyMember } from '../parties';
|
|
4
4
|
export declare type Contact = PartyMember;
|
|
5
5
|
/**
|
|
6
6
|
* Manages contacts.
|
|
7
7
|
*/
|
|
8
8
|
export declare class ContactManager {
|
|
9
|
-
private readonly
|
|
10
|
-
constructor(
|
|
9
|
+
private readonly _getDatabase;
|
|
10
|
+
constructor(_getDatabase: () => Database | undefined);
|
|
11
11
|
getContactListItem(): Item<ObjectModel> | undefined;
|
|
12
12
|
queryContacts(): ResultSet<Contact>;
|
|
13
13
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"contact-manager.d.ts","sourceRoot":"","sources":["../../../src/halo/contact-manager.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"contact-manager.d.ts","sourceRoot":"","sources":["../../../src/halo/contact-manager.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEjD,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AAEnD,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAIzC,oBAAY,OAAO,GAAG,WAAW,CAAC;AAElC;;GAEG;AACH,qBAAa,cAAc;IAEvB,OAAO,CAAC,QAAQ,CAAC,YAAY;gBAAZ,YAAY,EAAE,MAAM,QAAQ,GAAG,SAAS;IAG3D,kBAAkB,IAAK,IAAI,CAAC,WAAW,CAAC,GAAG,SAAS;IAKpD,aAAa,IAAK,SAAS,CAAC,OAAO,CAAC;CAmBrC"}
|
|
@@ -6,21 +6,27 @@ 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 debug_1 = require("@dxos/debug");
|
|
9
10
|
const api_1 = require("../api");
|
|
11
|
+
const errors_1 = require("../errors");
|
|
10
12
|
const halo_party_1 = require("./halo-party");
|
|
11
13
|
/**
|
|
12
14
|
* Manages contacts.
|
|
13
15
|
*/
|
|
14
16
|
class ContactManager {
|
|
15
|
-
constructor(
|
|
16
|
-
this.
|
|
17
|
+
constructor(_getDatabase) {
|
|
18
|
+
this._getDatabase = _getDatabase;
|
|
17
19
|
}
|
|
18
20
|
getContactListItem() {
|
|
19
|
-
|
|
21
|
+
var _a;
|
|
22
|
+
const database = (_a = this._getDatabase()) !== null && _a !== void 0 ? _a : (0, debug_1.raise)(new errors_1.IdentityNotInitializedError());
|
|
23
|
+
return database.select({ type: halo_party_1.HALO_PARTY_CONTACT_LIST_TYPE }).exec().entities[0];
|
|
20
24
|
}
|
|
21
25
|
queryContacts() {
|
|
26
|
+
var _a;
|
|
27
|
+
const database = (_a = this._getDatabase()) !== null && _a !== void 0 ? _a : (0, debug_1.raise)(new errors_1.IdentityNotInitializedError());
|
|
22
28
|
const event = new async_1.Event();
|
|
23
|
-
const result =
|
|
29
|
+
const result = database.select({ type: halo_party_1.HALO_PARTY_CONTACT_LIST_TYPE }).exec();
|
|
24
30
|
result.update.on(() => {
|
|
25
31
|
event.emit();
|
|
26
32
|
});
|
|
@@ -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;AACzC,uCAAoC;AAGpC,gCAAmD;AACnD,sCAAwD;AAExD,6CAA4D;AAK5D;;GAEG;AACH,MAAa,cAAc;IACzB,YACmB,YAAwC;QAAxC,iBAAY,GAAZ,YAAY,CAA4B;IACxD,CAAC;IAEJ,kBAAkB;;QAChB,MAAM,QAAQ,GAAG,MAAA,IAAI,CAAC,YAAY,EAAE,mCAAI,IAAA,aAAK,EAAC,IAAI,oCAA2B,EAAE,CAAC,CAAC;QACjF,OAAO,QAAQ,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,yCAA4B,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;IACpF,CAAC;IAED,aAAa;;QACX,MAAM,QAAQ,GAAG,MAAA,IAAI,CAAC,YAAY,EAAE,mCAAI,IAAA,aAAK,EAAC,IAAI,oCAA2B,EAAE,CAAC,CAAC;QACjF,MAAM,KAAK,GAAG,IAAI,aAAK,EAAE,CAAC;QAC1B,MAAM,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,yCAA4B,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;QAC9E,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;AA7BD,wCA6BC"}
|
|
@@ -1,9 +1,11 @@
|
|
|
1
|
-
import { Keyring, SecretProvider } from '@dxos/credentials';
|
|
1
|
+
import { Keyring, SecretProvider, KeyHint } from '@dxos/credentials';
|
|
2
2
|
import { PublicKey } from '@dxos/crypto';
|
|
3
|
+
import { ModelFactory } from '@dxos/model-factory';
|
|
3
4
|
import { NetworkManager } from '@dxos/network-manager';
|
|
4
5
|
import { InvitationDescriptor } from '../invitations';
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
6
|
+
import { PartyFeedProvider, PartyOptions } from '../pipeline';
|
|
7
|
+
import { SnapshotStore } from '../snapshots';
|
|
8
|
+
import { HaloParty } from './halo-party';
|
|
7
9
|
/**
|
|
8
10
|
* Options allowed when creating the HALO.
|
|
9
11
|
*/
|
|
@@ -15,14 +17,17 @@ export interface HaloCreationOptions {
|
|
|
15
17
|
* Create and manage HALO parties.
|
|
16
18
|
*/
|
|
17
19
|
export declare class HaloFactory {
|
|
18
|
-
private readonly _partyFactory;
|
|
19
20
|
private readonly _networkManager;
|
|
21
|
+
private readonly _modelFactory;
|
|
22
|
+
private readonly _snapshotStore;
|
|
23
|
+
private readonly _feedProviderFactory;
|
|
20
24
|
private readonly _keyring;
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
25
|
+
private readonly _options;
|
|
26
|
+
constructor(_networkManager: NetworkManager, _modelFactory: ModelFactory, _snapshotStore: SnapshotStore, _feedProviderFactory: (partyKey: PublicKey) => PartyFeedProvider, _keyring: Keyring, _options?: PartyOptions);
|
|
27
|
+
constructParty(hints: KeyHint[]): Promise<HaloParty>;
|
|
28
|
+
createHalo(options?: HaloCreationOptions): Promise<HaloParty>;
|
|
29
|
+
recoverHalo(seedPhrase: string): Promise<HaloParty>;
|
|
30
|
+
joinHalo(invitationDescriptor: InvitationDescriptor, secretProvider: SecretProvider): Promise<HaloParty>;
|
|
26
31
|
private _joinHalo;
|
|
27
32
|
}
|
|
28
33
|
//# sourceMappingURL=halo-factory.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"halo-factory.d.ts","sourceRoot":"","sources":["../../../src/halo/halo-factory.ts"],"names":[],"mappings":"AAOA,OAAO,EAKL,OAAO,EAGP,cAAc,
|
|
1
|
+
{"version":3,"file":"halo-factory.d.ts","sourceRoot":"","sources":["../../../src/halo/halo-factory.ts"],"names":[],"mappings":"AAOA,OAAO,EAKL,OAAO,EAGP,cAAc,EACd,OAAO,EAER,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAe,SAAS,EAAyB,MAAM,cAAc,CAAC;AAC7E,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAGvD,OAAO,EAA6E,oBAAoB,EAAsD,MAAM,gBAAgB,CAAC;AAErL,OAAO,EAAE,iBAAiB,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAE9D,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC7C,OAAO,EACL,SAAS,EAEV,MAAM,cAAc,CAAC;AAEtB;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,iBAAiB,CAAC,EAAE,MAAM,CAAA;CAC3B;AAID;;GAEG;AACH,qBAAa,WAAW;IAEpB,OAAO,CAAC,QAAQ,CAAC,eAAe;IAChC,OAAO,CAAC,QAAQ,CAAC,aAAa;IAC9B,OAAO,CAAC,QAAQ,CAAC,cAAc;IAC/B,OAAO,CAAC,QAAQ,CAAC,oBAAoB;IACrC,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,QAAQ;gBALR,eAAe,EAAE,cAAc,EAC/B,aAAa,EAAE,YAAY,EAC3B,cAAc,EAAE,aAAa,EAC7B,oBAAoB,EAAE,CAAC,QAAQ,EAAE,SAAS,KAAK,iBAAiB,EAChE,QAAQ,EAAE,OAAO,EACjB,QAAQ,GAAE,YAAiB;IAGxC,cAAc,CAAE,KAAK,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,SAAS,CAAC;IAiBrD,UAAU,CAAE,OAAO,GAAE,mBAAwB,GAAG,OAAO,CAAC,SAAS,CAAC;IAuDlE,WAAW,CAAE,UAAU,EAAE,MAAM;IAiB/B,QAAQ,CAAE,oBAAoB,EAAE,oBAAoB,EAAE,cAAc,EAAE,cAAc;YAM5E,SAAS;CAqExB"}
|