@dxos/credentials 2.17.2 → 2.17.3
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/.rush/temp/package-deps_build:test.json +5 -5
- package/credentials.build.log +8 -8
- package/dist/src/auth/auth-message.js +2 -2
- package/dist/src/auth/auth-message.js.map +1 -1
- package/dist/src/auth/auth-plugin.js +4 -4
- package/dist/src/auth/auth-plugin.js.map +1 -1
- package/dist/src/auth/auth-plugin.test.js +22 -22
- package/dist/src/auth/auth-plugin.test.js.map +1 -1
- package/dist/src/auth/auth.test.js +47 -47
- package/dist/src/auth/auth.test.js.map +1 -1
- package/dist/src/auth/authenticator.js +5 -5
- package/dist/src/auth/authenticator.js.map +1 -1
- package/dist/src/greet/greeter-plugin.test.js +18 -18
- package/dist/src/greet/greeter-plugin.test.js.map +1 -1
- package/dist/src/greet/greeter.js +13 -13
- package/dist/src/greet/greeter.js.map +1 -1
- package/dist/src/greet/greeter.test.js +36 -36
- package/dist/src/greet/greeter.test.js.map +1 -1
- package/dist/src/greet/greeting-command-plugin.js +15 -15
- package/dist/src/greet/greeting-command-plugin.js.map +1 -1
- package/dist/src/greet/greeting-message.js +8 -8
- package/dist/src/greet/greeting-message.js.map +1 -1
- package/dist/src/greet/invitation.js +9 -9
- package/dist/src/greet/invitation.js.map +1 -1
- package/dist/src/greet/party-invitation-claim-handler.js +6 -6
- package/dist/src/greet/party-invitation-claim-handler.js.map +1 -1
- package/dist/src/identity/identity-message-processor.js +10 -10
- package/dist/src/identity/identity-message-processor.js.map +1 -1
- package/dist/src/identity/identity-message.js +11 -11
- package/dist/src/identity/identity-message.js.map +1 -1
- package/dist/src/identity/seedphrase.test.js +10 -10
- package/dist/src/identity/seedphrase.test.js.map +1 -1
- package/dist/src/keys/filter.js +1 -1
- package/dist/src/keys/filter.js.map +1 -1
- package/dist/src/keys/filter.test.js +5 -5
- package/dist/src/keys/filter.test.js.map +1 -1
- package/dist/src/keys/keyring-helpers.js +16 -16
- package/dist/src/keys/keyring-helpers.js.map +1 -1
- package/dist/src/keys/keyring.d.ts +1 -1
- package/dist/src/keys/keyring.js +64 -64
- package/dist/src/keys/keyring.js.map +1 -1
- package/dist/src/keys/keyring.test.js +65 -65
- package/dist/src/keys/keyring.test.js.map +1 -1
- package/dist/src/keys/keystore.js +10 -10
- package/dist/src/keys/keystore.js.map +1 -1
- package/dist/src/keys/keystore.test.js +14 -14
- package/dist/src/keys/keystore.test.js.map +1 -1
- package/dist/src/keys/simple-metrics.js +4 -4
- package/dist/src/keys/simple-metrics.js.map +1 -1
- package/dist/src/party/party-credential.js +14 -14
- package/dist/src/party/party-credential.js.map +1 -1
- package/dist/src/party/party-invitation-manager.js +5 -5
- package/dist/src/party/party-invitation-manager.js.map +1 -1
- package/dist/src/party/party-invitations.test.js +16 -16
- package/dist/src/party/party-invitations.test.js.map +1 -1
- package/dist/src/party/party-state.js +34 -34
- package/dist/src/party/party-state.js.map +1 -1
- package/dist/src/party/party-state.test.js +94 -94
- package/dist/src/party/party-state.test.js.map +1 -1
- package/dist/src/proto/datetime.js +1 -1
- package/dist/src/proto/datetime.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +11 -11
- package/src/auth/auth-plugin.ts +1 -1
- package/src/greet/greeting-command-plugin.ts +1 -1
- package/src/greet/party-invitation-claim-handler.ts +1 -1
- package/src/keys/keyring-helpers.ts +1 -1
- package/src/proto/gen/dxos/credentials/auth.ts +1 -1
- package/src/proto/gen/dxos/credentials/greet.ts +1 -1
- package/src/proto/gen/dxos/credentials/identity.ts +1 -1
- package/src/proto/gen/dxos/credentials/party.ts +1 -1
- package/src/proto/gen/dxos/credentials.ts +1 -1
- package/src/proto/gen/dxos/halo/keys.ts +1 -1
- package/src/proto/gen/google/protobuf.ts +1 -1
|
@@ -27,7 +27,7 @@ exports.TYPE_URL_PARTY_INVITATION = 'dxos.credentials.party.PartyInvitation';
|
|
|
27
27
|
* @returns Signed message
|
|
28
28
|
*/
|
|
29
29
|
const createPartyGenesisMessage = (signer, partyKeyPair, feedKey, admitKeyPair) => {
|
|
30
|
-
assert_1.default(typeof admitKeyPair.type !== 'undefined');
|
|
30
|
+
(0, assert_1.default)(typeof admitKeyPair.type !== 'undefined');
|
|
31
31
|
const message = {
|
|
32
32
|
__type_url: exports.TYPE_URL_PARTY_CREDENTIAL,
|
|
33
33
|
type: proto_1.PartyCredential.Type.PARTY_GENESIS,
|
|
@@ -46,7 +46,7 @@ exports.createPartyGenesisMessage = createPartyGenesisMessage;
|
|
|
46
46
|
* of an Envelope, also by a key which has already been admitted.
|
|
47
47
|
*/
|
|
48
48
|
const createKeyAdmitMessage = (signer, partyKey, admitKeyPair, signingKeys = [], nonce) => {
|
|
49
|
-
assert_1.default(typeof admitKeyPair.type !== 'undefined');
|
|
49
|
+
(0, assert_1.default)(typeof admitKeyPair.type !== 'undefined');
|
|
50
50
|
partyKey = crypto_1.PublicKey.from(partyKey);
|
|
51
51
|
const message = {
|
|
52
52
|
__type_url: exports.TYPE_URL_PARTY_CREDENTIAL,
|
|
@@ -117,7 +117,7 @@ exports.isPartyCredentialMessage = isPartyCredentialMessage;
|
|
|
117
117
|
*/
|
|
118
118
|
function isEnvelope(message) {
|
|
119
119
|
var _a, _b, _c, _d;
|
|
120
|
-
assert_1.default(message);
|
|
120
|
+
(0, assert_1.default)(message);
|
|
121
121
|
const type = (_b = (_a = message === null || message === void 0 ? void 0 : message.signed) === null || _a === void 0 ? void 0 : _a.payload) === null || _b === void 0 ? void 0 : _b.type;
|
|
122
122
|
const envelope = (_d = (_c = message === null || message === void 0 ? void 0 : message.signed) === null || _c === void 0 ? void 0 : _c.payload) === null || _d === void 0 ? void 0 : _d.envelope;
|
|
123
123
|
return type === proto_1.PartyCredential.Type.ENVELOPE && envelope;
|
|
@@ -183,11 +183,11 @@ exports.extractContents = extractContents;
|
|
|
183
183
|
*/
|
|
184
184
|
const getPartyCredentialMessageType = (message, deep = true) => {
|
|
185
185
|
var _a, _b;
|
|
186
|
-
assert_1.default(exports.isPartyCredentialMessage(message));
|
|
186
|
+
(0, assert_1.default)((0, exports.isPartyCredentialMessage)(message));
|
|
187
187
|
const signed = unwrapMessage(message);
|
|
188
188
|
const type = (_b = (_a = signed === null || signed === void 0 ? void 0 : signed.signed) === null || _a === void 0 ? void 0 : _a.payload) === null || _b === void 0 ? void 0 : _b.type;
|
|
189
189
|
if (deep && type === proto_1.PartyCredential.Type.ENVELOPE) {
|
|
190
|
-
return exports.getPartyCredentialMessageType(signed.signed.payload.envelope.message.payload);
|
|
190
|
+
return (0, exports.getPartyCredentialMessageType)(signed.signed.payload.envelope.message.payload);
|
|
191
191
|
}
|
|
192
192
|
return type;
|
|
193
193
|
};
|
|
@@ -196,11 +196,11 @@ exports.getPartyCredentialMessageType = getPartyCredentialMessageType;
|
|
|
196
196
|
* Provides a list of the publicKeys admitted by this PartyCredentialMessage.
|
|
197
197
|
*/
|
|
198
198
|
const admitsKeys = (message) => {
|
|
199
|
-
assert_1.default(message);
|
|
200
|
-
assert_1.default(exports.isPartyCredentialMessage(message));
|
|
199
|
+
(0, assert_1.default)(message);
|
|
200
|
+
(0, assert_1.default)((0, exports.isPartyCredentialMessage)(message));
|
|
201
201
|
const keys = [];
|
|
202
|
-
const unwrapped = exports.unwrapEnvelopes(unwrapMessage(message));
|
|
203
|
-
const type = exports.getPartyCredentialMessageType(unwrapped, false);
|
|
202
|
+
const unwrapped = (0, exports.unwrapEnvelopes)(unwrapMessage(message));
|
|
203
|
+
const type = (0, exports.getPartyCredentialMessageType)(unwrapped, false);
|
|
204
204
|
switch (type) {
|
|
205
205
|
case proto_1.PartyCredential.Type.PARTY_GENESIS: {
|
|
206
206
|
const { admitKey, feedKey, partyKey } = unwrapped.signed.payload.partyGenesis;
|
|
@@ -235,20 +235,20 @@ exports.admitsKeys = admitsKeys;
|
|
|
235
235
|
* @returns {Message}
|
|
236
236
|
*/
|
|
237
237
|
const createPartyInvitationMessage = (signer, partyKey, inviteeKey, issuerKey, signingKey) => {
|
|
238
|
-
assert_1.default(signer);
|
|
239
|
-
keys_1.assertValidPublicKey(issuerKey.publicKey);
|
|
238
|
+
(0, assert_1.default)(signer);
|
|
239
|
+
(0, keys_1.assertValidPublicKey)(issuerKey.publicKey);
|
|
240
240
|
if (!signingKey) {
|
|
241
241
|
signingKey = issuerKey;
|
|
242
242
|
}
|
|
243
|
-
assert_1.default(signingKey);
|
|
244
|
-
keys_1.assertValidPublicKey(signingKey.publicKey);
|
|
243
|
+
(0, assert_1.default)(signingKey);
|
|
244
|
+
(0, keys_1.assertValidPublicKey)(signingKey.publicKey);
|
|
245
245
|
partyKey = crypto_1.PublicKey.from(partyKey);
|
|
246
246
|
inviteeKey = crypto_1.PublicKey.from(inviteeKey);
|
|
247
247
|
return {
|
|
248
248
|
__type_url: exports.TYPE_URL_MESSAGE,
|
|
249
249
|
payload: signer.sign({
|
|
250
250
|
__type_url: exports.TYPE_URL_PARTY_INVITATION,
|
|
251
|
-
id: crypto_1.randomBytes(),
|
|
251
|
+
id: (0, crypto_1.randomBytes)(),
|
|
252
252
|
partyKey,
|
|
253
253
|
issuerKey: issuerKey.publicKey,
|
|
254
254
|
inviteeKey
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"party-credential.js","sourceRoot":"","sources":["../../../src/party/party-credential.ts"],"names":[],"mappings":";AAAA,EAAE;AACF,0BAA0B;AAC1B,EAAE;;;;;;AAEF,oDAA4B;AAE5B,yCAAqE;AAErE,kCAAuD;AACvD,oCAAoH;AAEpH,4CAA4C;AAC/B,QAAA,gBAAgB,GAAG,0BAA0B,CAAC;AAC9C,QAAA,uBAAuB,GAAG,gCAAgC,CAAC;AAC3D,QAAA,yBAAyB,GAAG,wCAAwC,CAAC;AACrE,QAAA,yBAAyB,GAAG,wCAAwC,CAAC;AAElF;;;;;;;;;GASG;AACI,MAAM,yBAAyB,GAAG,CACvC,MAAc,EACd,YAAuB,EACvB,OAAkB,EAClB,YAAuB,EACd,EAAE;IACX,gBAAM,
|
|
1
|
+
{"version":3,"file":"party-credential.js","sourceRoot":"","sources":["../../../src/party/party-credential.ts"],"names":[],"mappings":"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"}
|
|
@@ -11,14 +11,14 @@ const assert_1 = __importDefault(require("assert"));
|
|
|
11
11
|
const debug_1 = __importDefault(require("debug"));
|
|
12
12
|
const crypto_1 = require("@dxos/crypto");
|
|
13
13
|
const events_1 = require("./events");
|
|
14
|
-
const log = debug_1.default('dxos:creds:party');
|
|
14
|
+
const log = (0, debug_1.default)('dxos:creds:party');
|
|
15
15
|
/**
|
|
16
16
|
* A class to manage the lifecycle of invitations which are written to the Party.
|
|
17
17
|
* @package
|
|
18
18
|
*/
|
|
19
19
|
class PartyInvitationManager {
|
|
20
20
|
constructor(party) {
|
|
21
|
-
assert_1.default(party);
|
|
21
|
+
(0, assert_1.default)(party);
|
|
22
22
|
this._party = party;
|
|
23
23
|
this._activeInvitations = new Map();
|
|
24
24
|
this._invitationsByKey = new Map();
|
|
@@ -42,7 +42,7 @@ class PartyInvitationManager {
|
|
|
42
42
|
* @param {SignedMessage} invitationMessage
|
|
43
43
|
*/
|
|
44
44
|
recordInvitation(invitationMessage) {
|
|
45
|
-
assert_1.default(invitationMessage);
|
|
45
|
+
(0, assert_1.default)(invitationMessage);
|
|
46
46
|
const invitation = this._verifyAndParse(invitationMessage);
|
|
47
47
|
const idStr = invitation.id.toString('hex');
|
|
48
48
|
const keyStr = crypto_1.PublicKey.from(invitation.inviteeKey).toHex();
|
|
@@ -63,13 +63,13 @@ class PartyInvitationManager {
|
|
|
63
63
|
* @private
|
|
64
64
|
*/
|
|
65
65
|
_verifyAndParse(invitationMessage) {
|
|
66
|
-
assert_1.default(invitationMessage);
|
|
66
|
+
(0, assert_1.default)(invitationMessage);
|
|
67
67
|
// Verify Message.
|
|
68
68
|
if (!this._party.verifySignatures(invitationMessage)) {
|
|
69
69
|
throw new Error(`Unverifiable message: ${invitationMessage}`);
|
|
70
70
|
}
|
|
71
71
|
const { id } = invitationMessage.signed.payload;
|
|
72
|
-
assert_1.default(Buffer.isBuffer(id), 'id is not a buffer in the invitation.');
|
|
72
|
+
(0, assert_1.default)(Buffer.isBuffer(id), 'id is not a buffer in the invitation.');
|
|
73
73
|
const issuerKey = crypto_1.PublicKey.from(invitationMessage.signed.payload.issuerKey);
|
|
74
74
|
if (!this._party.isMemberKey(issuerKey)) {
|
|
75
75
|
throw new Error(`Invalid issuer: ${invitationMessage}`);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"party-invitation-manager.js","sourceRoot":"","sources":["../../../src/party/party-invitation-manager.ts"],"names":[],"mappings":";AAAA,EAAE;AACF,0BAA0B;AAC1B,EAAE;;;;;;AAEF,oDAA4B;AAC5B,kDAA0B;AAE1B,yCAAyC;AAGzC,qCAA0C;AAG1C,MAAM,GAAG,GAAG,eAAK,
|
|
1
|
+
{"version":3,"file":"party-invitation-manager.js","sourceRoot":"","sources":["../../../src/party/party-invitation-manager.ts"],"names":[],"mappings":"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"}
|
|
@@ -17,7 +17,7 @@ const proto_1 = require("../proto");
|
|
|
17
17
|
const party_credential_1 = require("./party-credential");
|
|
18
18
|
const party_state_1 = require("./party-state");
|
|
19
19
|
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
20
|
-
const log = debug_1.default('dxos:creds:party:test');
|
|
20
|
+
const log = (0, debug_1.default)('dxos:creds:party:test');
|
|
21
21
|
const createPartyKeyrings = async () => {
|
|
22
22
|
// This Keyring has all the keypairs, so it is the initial source of things.
|
|
23
23
|
const keyring = new keys_1.Keyring();
|
|
@@ -39,36 +39,36 @@ const createPartyKeyrings = async () => {
|
|
|
39
39
|
};
|
|
40
40
|
};
|
|
41
41
|
it('PartyInvitation messages', async () => {
|
|
42
|
-
const rendezvousKey = crypto_1.randomBytes();
|
|
42
|
+
const rendezvousKey = (0, crypto_1.randomBytes)();
|
|
43
43
|
const { keyring, partyKey, identityKey, feedKey } = await createPartyKeyrings();
|
|
44
44
|
const { keyring: inviteeKeyring, identityKey: inviteeKey } = await createPartyKeyrings();
|
|
45
45
|
const party = new party_state_1.PartyState(partyKey.publicKey);
|
|
46
46
|
// First, configure the Party.
|
|
47
|
-
const genesisMessage = party_credential_1.createPartyGenesisMessage(keyring, partyKey, feedKey.publicKey, identityKey);
|
|
47
|
+
const genesisMessage = (0, party_credential_1.createPartyGenesisMessage)(keyring, partyKey, feedKey.publicKey, identityKey);
|
|
48
48
|
await party.processMessages([genesisMessage]);
|
|
49
49
|
// Now 'write' an invitation message.
|
|
50
|
-
const invitationMessage = party_credential_1.createPartyInvitationMessage(keyring, partyKey.publicKey, inviteeKey.publicKey, identityKey);
|
|
50
|
+
const invitationMessage = (0, party_credential_1.createPartyInvitationMessage)(keyring, partyKey.publicKey, inviteeKey.publicKey, identityKey);
|
|
51
51
|
await party.processMessages([invitationMessage]);
|
|
52
52
|
const invitationID = invitationMessage.payload.signed.payload.id;
|
|
53
53
|
let greetingHandlerCalled = 0;
|
|
54
54
|
const greetingHandler = (claimInvitationID) => {
|
|
55
|
-
expect_1.default(claimInvitationID).toEqual(invitationID);
|
|
55
|
+
(0, expect_1.default)(claimInvitationID).toEqual(invitationID);
|
|
56
56
|
greetingHandlerCalled++;
|
|
57
|
-
return { invitation: crypto_1.randomBytes(), swarmKey: rendezvousKey };
|
|
57
|
+
return { invitation: (0, crypto_1.randomBytes)(), swarmKey: rendezvousKey };
|
|
58
58
|
};
|
|
59
59
|
const claimHandler = new greet_1.PartyInvitationClaimHandler(greetingHandler);
|
|
60
|
-
expect_1.default(party.getInvitation(invitationID)).toBeTruthy();
|
|
60
|
+
(0, expect_1.default)(party.getInvitation(invitationID)).toBeTruthy();
|
|
61
61
|
// "Send" the Claim message.
|
|
62
|
-
const claimMessage = greet_1.createGreetingClaimMessage(invitationID);
|
|
63
|
-
const claimResponse = await claimHandler.handleMessage(claimMessage, crypto_1.randomBytes(), crypto_1.randomBytes());
|
|
64
|
-
const admitMessage = party_credential_1.createKeyAdmitMessage(inviteeKeyring, partyKey.publicKey, inviteeKey, [inviteeKey]);
|
|
65
|
-
const envelope = party_credential_1.createEnvelopeMessage(keyring, partyKey.publicKey, admitMessage, [identityKey]);
|
|
62
|
+
const claimMessage = (0, greet_1.createGreetingClaimMessage)(invitationID);
|
|
63
|
+
const claimResponse = await claimHandler.handleMessage(claimMessage, (0, crypto_1.randomBytes)(), (0, crypto_1.randomBytes)());
|
|
64
|
+
const admitMessage = (0, party_credential_1.createKeyAdmitMessage)(inviteeKeyring, partyKey.publicKey, inviteeKey, [inviteeKey]);
|
|
65
|
+
const envelope = (0, party_credential_1.createEnvelopeMessage)(keyring, partyKey.publicKey, admitMessage, [identityKey]);
|
|
66
66
|
await party.processMessages([envelope]);
|
|
67
|
-
expect_1.default(greetingHandlerCalled).toEqual(1);
|
|
68
|
-
expect_1.default(claimResponse.rendezvousKey).toEqual(rendezvousKey);
|
|
69
|
-
await wait_for_expect_1.default(() => {
|
|
70
|
-
expect_1.default(party.isMemberKey(inviteeKey.publicKey)).toBe(true);
|
|
71
|
-
expect_1.default(party.getInvitation(invitationID)).toBeUndefined();
|
|
67
|
+
(0, expect_1.default)(greetingHandlerCalled).toEqual(1);
|
|
68
|
+
(0, expect_1.default)(claimResponse.rendezvousKey).toEqual(rendezvousKey);
|
|
69
|
+
await (0, wait_for_expect_1.default)(() => {
|
|
70
|
+
(0, expect_1.default)(party.isMemberKey(inviteeKey.publicKey)).toBe(true);
|
|
71
|
+
(0, expect_1.default)(party.getInvitation(invitationID)).toBeUndefined();
|
|
72
72
|
});
|
|
73
73
|
});
|
|
74
74
|
//# sourceMappingURL=party-invitations.test.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"party-invitations.test.js","sourceRoot":"","sources":["../../../src/party/party-invitations.test.js"],"names":[],"mappings":";AAAA,EAAE;AACF,0BAA0B;AAC1B,EAAE;;;;;AAEF,wBAAwB;AAExB,kDAA0B;AAC1B,oDAA4B;AAC5B,sEAA4C;AAE5C,yCAA2C;AAE3C,oCAAmF;AACnF,kCAA0C;AAC1C,oCAAmC;AACnC,yDAG4B;AAC5B,+CAA2C;AAE3C,6DAA6D;AAC7D,MAAM,GAAG,GAAG,eAAK,
|
|
1
|
+
{"version":3,"file":"party-invitations.test.js","sourceRoot":"","sources":["../../../src/party/party-invitations.test.js"],"names":[],"mappings":"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"}
|
|
@@ -17,7 +17,7 @@ const proto_1 = require("../proto");
|
|
|
17
17
|
const events_2 = require("./events");
|
|
18
18
|
const party_credential_1 = require("./party-credential");
|
|
19
19
|
const party_invitation_manager_1 = require("./party-invitation-manager");
|
|
20
|
-
const log = debug_1.default('dxos:creds:party');
|
|
20
|
+
const log = (0, debug_1.default)('dxos:creds:party');
|
|
21
21
|
/**
|
|
22
22
|
* The party state is constructed via signed messages on the feeds.
|
|
23
23
|
*
|
|
@@ -40,7 +40,7 @@ class PartyState extends events_1.EventEmitter {
|
|
|
40
40
|
*/
|
|
41
41
|
constructor(publicKey) {
|
|
42
42
|
super();
|
|
43
|
-
keys_1.assertValidPublicKey(publicKey);
|
|
43
|
+
(0, keys_1.assertValidPublicKey)(publicKey);
|
|
44
44
|
this._publicKey = crypto_1.PublicKey.from(publicKey);
|
|
45
45
|
this._keyring = new keys_1.Keyring();
|
|
46
46
|
this._invitationManager = new party_invitation_manager_1.PartyInvitationManager(this);
|
|
@@ -72,7 +72,7 @@ class PartyState extends events_1.EventEmitter {
|
|
|
72
72
|
* @returns {PublicKey}
|
|
73
73
|
*/
|
|
74
74
|
get discoveryKey() {
|
|
75
|
-
return crypto_1.discoveryKey(this.publicKey.asBuffer());
|
|
75
|
+
return (0, crypto_1.discoveryKey)(this.publicKey.asBuffer());
|
|
76
76
|
}
|
|
77
77
|
/**
|
|
78
78
|
* The Party's topic (hexified public key).
|
|
@@ -112,14 +112,14 @@ class PartyState extends events_1.EventEmitter {
|
|
|
112
112
|
* Retrieve an PartyInvitation by its ID.
|
|
113
113
|
*/
|
|
114
114
|
getInvitation(invitationID) {
|
|
115
|
-
assert_1.default(Buffer.isBuffer(invitationID), 'invitationID is not a buffer.');
|
|
115
|
+
(0, assert_1.default)(Buffer.isBuffer(invitationID), 'invitationID is not a buffer.');
|
|
116
116
|
return this._invitationManager.getInvitation(invitationID);
|
|
117
117
|
}
|
|
118
118
|
/**
|
|
119
119
|
* What member admitted the specified feed or member key?
|
|
120
120
|
*/
|
|
121
121
|
getAdmittedBy(publicKey) {
|
|
122
|
-
keys_1.assertValidPublicKey(publicKey);
|
|
122
|
+
(0, keys_1.assertValidPublicKey)(publicKey);
|
|
123
123
|
publicKey = crypto_1.PublicKey.from(publicKey);
|
|
124
124
|
return this._admittedBy.get(publicKey.toHex());
|
|
125
125
|
}
|
|
@@ -127,7 +127,7 @@ class PartyState extends events_1.EventEmitter {
|
|
|
127
127
|
* Get info for the specified key (if available).
|
|
128
128
|
*/
|
|
129
129
|
getInfo(publicKey) {
|
|
130
|
-
keys_1.assertValidPublicKey(publicKey);
|
|
130
|
+
(0, keys_1.assertValidPublicKey)(publicKey);
|
|
131
131
|
publicKey = crypto_1.PublicKey.from(publicKey);
|
|
132
132
|
return this._identityMessageProcessor.getInfo(publicKey.asBuffer());
|
|
133
133
|
}
|
|
@@ -135,7 +135,7 @@ class PartyState extends events_1.EventEmitter {
|
|
|
135
135
|
* Lookup the PublicKey for the Party member associated with this KeyChain.
|
|
136
136
|
*/
|
|
137
137
|
findMemberKeyFromChain(chain) {
|
|
138
|
-
assert_1.default(chain);
|
|
138
|
+
(0, assert_1.default)(chain);
|
|
139
139
|
const trustedKey = this._keyring.findTrusted(chain);
|
|
140
140
|
return trustedKey && this.isMemberKey(trustedKey.publicKey) ? trustedKey.publicKey : undefined;
|
|
141
141
|
}
|
|
@@ -143,7 +143,7 @@ class PartyState extends events_1.EventEmitter {
|
|
|
143
143
|
* Is the indicated key a trusted key associated with this party.
|
|
144
144
|
*/
|
|
145
145
|
isMemberKey(publicKey) {
|
|
146
|
-
keys_1.assertValidPublicKey(publicKey);
|
|
146
|
+
(0, keys_1.assertValidPublicKey)(publicKey);
|
|
147
147
|
publicKey = crypto_1.PublicKey.from(publicKey);
|
|
148
148
|
return this._memberKeys.has(publicKey.toHex()) && this._keyring.isTrusted(publicKey);
|
|
149
149
|
}
|
|
@@ -151,7 +151,7 @@ class PartyState extends events_1.EventEmitter {
|
|
|
151
151
|
* Is the indicated key a trusted feed associated with this party.
|
|
152
152
|
*/
|
|
153
153
|
isMemberFeed(publicKey) {
|
|
154
|
-
keys_1.assertValidPublicKey(publicKey);
|
|
154
|
+
(0, keys_1.assertValidPublicKey)(publicKey);
|
|
155
155
|
publicKey = crypto_1.PublicKey.from(publicKey);
|
|
156
156
|
return this._memberFeeds.has(publicKey.toHex()) && this._keyring.isTrusted(publicKey);
|
|
157
157
|
}
|
|
@@ -160,9 +160,9 @@ class PartyState extends events_1.EventEmitter {
|
|
|
160
160
|
* @param {Message[]} messages
|
|
161
161
|
*/
|
|
162
162
|
async processMessages(messages) {
|
|
163
|
-
assert_1.default(Array.isArray(messages));
|
|
163
|
+
(0, assert_1.default)(Array.isArray(messages));
|
|
164
164
|
for await (const message of messages) {
|
|
165
|
-
assert_1.default(party_credential_1.isSignedMessage(message.payload));
|
|
165
|
+
(0, assert_1.default)((0, party_credential_1.isSignedMessage)(message.payload));
|
|
166
166
|
await this._processMessage(message.payload);
|
|
167
167
|
}
|
|
168
168
|
}
|
|
@@ -172,11 +172,11 @@ class PartyState extends events_1.EventEmitter {
|
|
|
172
172
|
* @param {KeyHint[]} hints
|
|
173
173
|
*/
|
|
174
174
|
async takeHints(hints = []) {
|
|
175
|
-
assert_1.default(Array.isArray(hints));
|
|
175
|
+
(0, assert_1.default)(Array.isArray(hints));
|
|
176
176
|
for await (const hint of hints) {
|
|
177
177
|
const { publicKey, type } = hint;
|
|
178
|
-
assert_1.default(publicKey);
|
|
179
|
-
keys_1.assertValidPublicKey(publicKey);
|
|
178
|
+
(0, assert_1.default)(publicKey);
|
|
179
|
+
(0, keys_1.assertValidPublicKey)(publicKey);
|
|
180
180
|
if (!this._keyring.hasKey(publicKey)) {
|
|
181
181
|
const keyRecord = await this._admitKey(publicKey, { hint: true, type });
|
|
182
182
|
if (proto_1.KeyType.FEED === type) {
|
|
@@ -193,7 +193,7 @@ class PartyState extends events_1.EventEmitter {
|
|
|
193
193
|
*/
|
|
194
194
|
_unpackEnvelope(message) {
|
|
195
195
|
let depth = 0;
|
|
196
|
-
while (party_credential_1.isEnvelope(message)) {
|
|
196
|
+
while ((0, party_credential_1.isEnvelope)(message)) {
|
|
197
197
|
// Verify the outer message is signed with a known, trusted key.
|
|
198
198
|
this._verifyMessage(message, depth === 0);
|
|
199
199
|
message = message.signed.payload.envelope.message.payload;
|
|
@@ -204,16 +204,16 @@ class PartyState extends events_1.EventEmitter {
|
|
|
204
204
|
switch (type) {
|
|
205
205
|
case proto_1.PartyCredential.Type.KEY_ADMIT: {
|
|
206
206
|
const { admitKey } = message.signed.payload.keyAdmit;
|
|
207
|
-
assert_1.default(admitKey);
|
|
208
|
-
assert_1.default(innerSignedBy.length >= 1);
|
|
209
|
-
assert_1.default(innerSignedBy.find(key => key.equals(admitKey)));
|
|
207
|
+
(0, assert_1.default)(admitKey);
|
|
208
|
+
(0, assert_1.default)(innerSignedBy.length >= 1);
|
|
209
|
+
(0, assert_1.default)(innerSignedBy.find(key => key.equals(admitKey)));
|
|
210
210
|
break;
|
|
211
211
|
}
|
|
212
212
|
case proto_1.PartyCredential.Type.FEED_ADMIT: {
|
|
213
213
|
const { feedKey } = message.signed.payload.feedAdmit;
|
|
214
|
-
assert_1.default(feedKey);
|
|
215
|
-
assert_1.default(innerSignedBy.length >= 1);
|
|
216
|
-
assert_1.default(innerSignedBy.find(key => key.equals(feedKey)));
|
|
214
|
+
(0, assert_1.default)(feedKey);
|
|
215
|
+
(0, assert_1.default)(innerSignedBy.length >= 1);
|
|
216
|
+
(0, assert_1.default)(innerSignedBy.find(key => key.equals(feedKey)));
|
|
217
217
|
break;
|
|
218
218
|
}
|
|
219
219
|
case proto_1.PartyCredential.Type.ENVELOPE:
|
|
@@ -230,10 +230,10 @@ class PartyState extends events_1.EventEmitter {
|
|
|
230
230
|
async _processMessage(message) {
|
|
231
231
|
await this._readyToProcess;
|
|
232
232
|
// All PartyInvitation messages are handled by the PartyInvitationManager.
|
|
233
|
-
if (party_credential_1.isPartyInvitationMessage(message)) {
|
|
233
|
+
if ((0, party_credential_1.isPartyInvitationMessage)(message)) {
|
|
234
234
|
return this._invitationManager.recordInvitation(message);
|
|
235
235
|
}
|
|
236
|
-
if (identity_1.isIdentityMessage(message)) {
|
|
236
|
+
if ((0, identity_1.isIdentityMessage)(message)) {
|
|
237
237
|
return this._identityMessageProcessor.processMessage(message);
|
|
238
238
|
}
|
|
239
239
|
return this._processCredentialMessage(message);
|
|
@@ -243,13 +243,13 @@ class PartyState extends events_1.EventEmitter {
|
|
|
243
243
|
* @returns {void}
|
|
244
244
|
*/
|
|
245
245
|
async _processCredentialMessage(message) {
|
|
246
|
-
assert_1.default(message);
|
|
246
|
+
(0, assert_1.default)(message);
|
|
247
247
|
const original = message;
|
|
248
248
|
if (!message.signed || !message.signed.payload ||
|
|
249
249
|
!message.signatures || !Array.isArray(message.signatures)) {
|
|
250
250
|
throw new Error(`Invalid message: ${JSON.stringify(message)}`);
|
|
251
251
|
}
|
|
252
|
-
const envelopedMessage = party_credential_1.isEnvelope(message);
|
|
252
|
+
const envelopedMessage = (0, party_credential_1.isEnvelope)(message);
|
|
253
253
|
if (envelopedMessage) {
|
|
254
254
|
message = this._unpackEnvelope(message);
|
|
255
255
|
}
|
|
@@ -269,7 +269,7 @@ class PartyState extends events_1.EventEmitter {
|
|
|
269
269
|
const admitKey = await this._processKeyAdmitMessage(message, !envelopedMessage, !envelopedMessage);
|
|
270
270
|
this._credentialMessages.set(admitKey.publicKey.toHex(), original);
|
|
271
271
|
const admittedBy = this._determineAdmittingMember(admitKey.publicKey, original);
|
|
272
|
-
assert_1.default(admittedBy);
|
|
272
|
+
(0, assert_1.default)(admittedBy);
|
|
273
273
|
this._admittedBy.set(admitKey.publicKey.toHex(), admittedBy);
|
|
274
274
|
log(`Key ${admitKey.publicKey.toHex()} admitted by ${admittedBy.toHex()}.`);
|
|
275
275
|
this.emit(events_2.PartyEventType.ADMIT_KEY, admitKey);
|
|
@@ -282,7 +282,7 @@ class PartyState extends events_1.EventEmitter {
|
|
|
282
282
|
* feed's actual owner, not the Greeter writing the message on their behalf.
|
|
283
283
|
*/
|
|
284
284
|
const admittedBy = this._determineAdmittingMember(feedKey.publicKey, message);
|
|
285
|
-
assert_1.default(admittedBy);
|
|
285
|
+
(0, assert_1.default)(admittedBy);
|
|
286
286
|
this._admittedBy.set(feedKey.publicKey.toHex(), admittedBy);
|
|
287
287
|
log(`Feed ${feedKey.publicKey.toHex()} admitted by ${admittedBy.toHex()}.`);
|
|
288
288
|
this.emit(events_2.PartyEventType.ADMIT_FEED, feedKey);
|
|
@@ -299,7 +299,7 @@ class PartyState extends events_1.EventEmitter {
|
|
|
299
299
|
* @private
|
|
300
300
|
*/
|
|
301
301
|
async _processGenesisMessage(message) {
|
|
302
|
-
assert_1.default(message);
|
|
302
|
+
(0, assert_1.default)(message);
|
|
303
303
|
if (message.signed.payload.type !== proto_1.PartyCredential.Type.PARTY_GENESIS) {
|
|
304
304
|
throw new Error(`Invalid type: ${message.signed.payload.type} !== PARTY_GENESIS`);
|
|
305
305
|
}
|
|
@@ -319,7 +319,7 @@ class PartyState extends events_1.EventEmitter {
|
|
|
319
319
|
* @private
|
|
320
320
|
*/
|
|
321
321
|
async _processKeyAdmitMessage(message, requireSignatureFromTrustedKey, requirePartyMatch) {
|
|
322
|
-
assert_1.default(message);
|
|
322
|
+
(0, assert_1.default)(message);
|
|
323
323
|
if (message.signed.payload.type !== proto_1.PartyCredential.Type.KEY_ADMIT) {
|
|
324
324
|
throw new Error(`Invalid type: ${message.signed.payload.type} !== KEY_ADMIT`);
|
|
325
325
|
}
|
|
@@ -331,7 +331,7 @@ class PartyState extends events_1.EventEmitter {
|
|
|
331
331
|
* Processes an AdmitFeed message, admitting a single feed to participate in the Party.
|
|
332
332
|
*/
|
|
333
333
|
async _processFeedAdmitMessage(message, requireSignatureFromTrustedKey) {
|
|
334
|
-
assert_1.default(message);
|
|
334
|
+
(0, assert_1.default)(message);
|
|
335
335
|
if (message.signed.payload.type !== proto_1.PartyCredential.Type.FEED_ADMIT) {
|
|
336
336
|
throw new Error(`Invalid type: ${message.signed.payload.type} !== FEED_ADMIT`);
|
|
337
337
|
}
|
|
@@ -344,7 +344,7 @@ class PartyState extends events_1.EventEmitter {
|
|
|
344
344
|
* @return {boolean}
|
|
345
345
|
*/
|
|
346
346
|
verifySignatures(message) {
|
|
347
|
-
assert_1.default(message, 'message null or undefined');
|
|
347
|
+
(0, assert_1.default)(message, 'message null or undefined');
|
|
348
348
|
return this._keyring.verify(message);
|
|
349
349
|
}
|
|
350
350
|
/**
|
|
@@ -356,7 +356,7 @@ class PartyState extends events_1.EventEmitter {
|
|
|
356
356
|
* @private
|
|
357
357
|
*/
|
|
358
358
|
_verifyMessage(message, requireSignatureFromTrustedKey = true, requirePartyMatch = true) {
|
|
359
|
-
assert_1.default(message);
|
|
359
|
+
(0, assert_1.default)(message);
|
|
360
360
|
const { signed, signatures } = message;
|
|
361
361
|
if (!signed || !signatures || !Array.isArray(signatures)) {
|
|
362
362
|
throw new Error(`Invalid message: ${message}`);
|
|
@@ -421,7 +421,7 @@ class PartyState extends events_1.EventEmitter {
|
|
|
421
421
|
* @private
|
|
422
422
|
*/
|
|
423
423
|
async _admitKey(publicKey, attributes = {}) {
|
|
424
|
-
keys_1.assertValidPublicKey(publicKey);
|
|
424
|
+
(0, keys_1.assertValidPublicKey)(publicKey);
|
|
425
425
|
publicKey = crypto_1.PublicKey.from(publicKey);
|
|
426
426
|
const keyStr = publicKey.toHex();
|
|
427
427
|
const makeRecord = () => {
|
|
@@ -448,7 +448,7 @@ class PartyState extends events_1.EventEmitter {
|
|
|
448
448
|
}
|
|
449
449
|
}
|
|
450
450
|
else if (!this._memberKeys.has(keyStr)) {
|
|
451
|
-
log(`Admitting ${keys_1.keyTypeName(keyRecord.type)}: ${keyStr} to party: ${this.topic}.`);
|
|
451
|
+
log(`Admitting ${(0, keys_1.keyTypeName)(keyRecord.type)}: ${keyStr} to party: ${this.topic}.`);
|
|
452
452
|
this._memberKeys.set(keyStr, publicKey);
|
|
453
453
|
}
|
|
454
454
|
return keyRecord;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"party-state.js","sourceRoot":"","sources":["../../../src/party/party-state.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"party-state.js","sourceRoot":"","sources":["../../../src/party/party-state.ts"],"names":[],"mappings":"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"}
|