@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
|
@@ -25,8 +25,8 @@ it('Generate keys', async () => {
|
|
|
25
25
|
for (const type of Object.values(proto_1.KeyType)) {
|
|
26
26
|
if (typeof type === 'string') {
|
|
27
27
|
const match = keyring.findKey(filter_1.Filter.matches({ type: proto_1.KeyType[type] }));
|
|
28
|
-
expect_1.default(match.publicKey).toEqual(byType.get(type).publicKey);
|
|
29
|
-
expect_1.default(keyring.hasSecretKey(match)).toBe(true);
|
|
28
|
+
(0, expect_1.default)(match.publicKey).toEqual(byType.get(type).publicKey);
|
|
29
|
+
(0, expect_1.default)(keyring.hasSecretKey(match)).toBe(true);
|
|
30
30
|
}
|
|
31
31
|
}
|
|
32
32
|
});
|
|
@@ -35,47 +35,47 @@ it('Update a key', async () => {
|
|
|
35
35
|
const record = await keyring.createKeyRecord({ type: proto_1.KeyType.DEVICE });
|
|
36
36
|
{
|
|
37
37
|
const stored = keyring.getKey(record.publicKey);
|
|
38
|
-
expect_1.default(keyring.hasSecretKey(stored)).toBe(true);
|
|
39
|
-
expect_1.default(stored.trusted).toBe(true);
|
|
38
|
+
(0, expect_1.default)(keyring.hasSecretKey(stored)).toBe(true);
|
|
39
|
+
(0, expect_1.default)(stored.trusted).toBe(true);
|
|
40
40
|
}
|
|
41
41
|
const { ...copy } = record;
|
|
42
42
|
copy.trusted = false;
|
|
43
43
|
await keyring.updateKey(copy);
|
|
44
44
|
{
|
|
45
45
|
const stored = keyring.getKey(record.publicKey);
|
|
46
|
-
expect_1.default(keyring.hasSecretKey(stored)).toBe(true);
|
|
47
|
-
expect_1.default(stored.trusted).toBe(false);
|
|
46
|
+
(0, expect_1.default)(keyring.hasSecretKey(stored)).toBe(true);
|
|
47
|
+
(0, expect_1.default)(stored.trusted).toBe(false);
|
|
48
48
|
}
|
|
49
49
|
});
|
|
50
50
|
it('Bad key attributes', async () => {
|
|
51
51
|
const keyring = new keyring_1.Keyring();
|
|
52
|
-
await expect_1.default(() => keyring.createKeyRecord({ id: 'xxx' })).rejects.toThrow();
|
|
52
|
+
await (0, expect_1.default)(() => keyring.createKeyRecord({ id: 'xxx' })).rejects.toThrow();
|
|
53
53
|
});
|
|
54
54
|
it('Add/retrieve single keyRecord from an external source', async () => {
|
|
55
|
-
const external = crypto_1.createKeyPair();
|
|
55
|
+
const external = (0, crypto_1.createKeyPair)();
|
|
56
56
|
const keyring = new keyring_1.Keyring();
|
|
57
57
|
await keyring.addKeyRecord(external);
|
|
58
58
|
const internal = keyring.getKey(external.publicKey);
|
|
59
|
-
expect_1.default(internal.publicKey).toEqual(crypto_1.PublicKey.from(external.publicKey));
|
|
60
|
-
expect_1.default(keyring.hasSecretKey(internal)).toBe(true);
|
|
59
|
+
(0, expect_1.default)(internal.publicKey).toEqual(crypto_1.PublicKey.from(external.publicKey));
|
|
60
|
+
(0, expect_1.default)(keyring.hasSecretKey(internal)).toBe(true);
|
|
61
61
|
});
|
|
62
62
|
it('Try to add/retrieve a publicKey from an external source (with secret present)', async () => {
|
|
63
|
-
const external = crypto_1.createKeyPair();
|
|
63
|
+
const external = (0, crypto_1.createKeyPair)();
|
|
64
64
|
const keyring = new keyring_1.Keyring();
|
|
65
|
-
await expect_1.default(() => keyring.addPublicKey(external)).rejects.toThrow();
|
|
65
|
+
await (0, expect_1.default)(() => keyring.addPublicKey(external)).rejects.toThrow();
|
|
66
66
|
});
|
|
67
67
|
it('Add/retrieve a publicKey from an external source (without secret present)', async () => {
|
|
68
|
-
const external = { publicKey: crypto_1.createKeyPair().publicKey };
|
|
68
|
+
const external = { publicKey: (0, crypto_1.createKeyPair)().publicKey };
|
|
69
69
|
const keyring = new keyring_1.Keyring();
|
|
70
70
|
await keyring.addPublicKey(external);
|
|
71
71
|
const stored = keyring.getKey(external.publicKey);
|
|
72
|
-
expect_1.default(crypto_1.PublicKey.from(external.publicKey)).toEqual(stored.publicKey);
|
|
73
|
-
expect_1.default(keyring.hasSecretKey(stored)).toBe(false);
|
|
72
|
+
(0, expect_1.default)(crypto_1.PublicKey.from(external.publicKey)).toEqual(stored.publicKey);
|
|
73
|
+
(0, expect_1.default)(keyring.hasSecretKey(stored)).toBe(false);
|
|
74
74
|
});
|
|
75
75
|
it('Retrieve a non-existent key', async () => {
|
|
76
76
|
const keyring = new keyring_1.Keyring();
|
|
77
|
-
const internal = keyring.findKey(filter_1.Filter.matches({ key: crypto_1.keyToString(crypto_1.randomBytes(32)) }));
|
|
78
|
-
expect_1.default(internal).toBeUndefined();
|
|
77
|
+
const internal = keyring.findKey(filter_1.Filter.matches({ key: (0, crypto_1.keyToString)((0, crypto_1.randomBytes)(32)) }));
|
|
78
|
+
(0, expect_1.default)(internal).toBeUndefined();
|
|
79
79
|
});
|
|
80
80
|
it('Sign and verify a message with a single key', async () => {
|
|
81
81
|
const keyring = new keyring_1.Keyring();
|
|
@@ -83,10 +83,10 @@ it('Sign and verify a message with a single key', async () => {
|
|
|
83
83
|
const signed = keyring.sign({ message: 'Test' }, [
|
|
84
84
|
keyring.findKey(keyring_1.Keyring.signingFilter({ type: proto_1.KeyType.IDENTITY }))
|
|
85
85
|
]);
|
|
86
|
-
expect_1.default(signed.signatures.length).toBe(1);
|
|
87
|
-
expect_1.default(crypto_1.PublicKey.from(signed.signatures[0].key)).toEqual(original.publicKey);
|
|
86
|
+
(0, expect_1.default)(signed.signatures.length).toBe(1);
|
|
87
|
+
(0, expect_1.default)(crypto_1.PublicKey.from(signed.signatures[0].key)).toEqual(original.publicKey);
|
|
88
88
|
const verified = keyring.verify(signed);
|
|
89
|
-
expect_1.default(verified).toBe(true);
|
|
89
|
+
(0, expect_1.default)(verified).toBe(true);
|
|
90
90
|
});
|
|
91
91
|
it('Sign and verify a message with multiple keys', async () => {
|
|
92
92
|
const keyring = new keyring_1.Keyring();
|
|
@@ -97,13 +97,13 @@ it('Sign and verify a message with multiple keys', async () => {
|
|
|
97
97
|
keyring.findKey(keyring_1.Keyring.signingFilter({ type: proto_1.KeyType.DEVICE }))
|
|
98
98
|
];
|
|
99
99
|
const signed = keyring.sign({ message: 'Test' }, keys);
|
|
100
|
-
expect_1.default(signed.signatures.length).toEqual(keys.length);
|
|
100
|
+
(0, expect_1.default)(signed.signatures.length).toEqual(keys.length);
|
|
101
101
|
const strKeys = keys.map(key => key.publicKey.toHex());
|
|
102
102
|
for (const sig of signed.signatures) {
|
|
103
|
-
expect_1.default(strKeys).toContain(sig.key.toHex());
|
|
103
|
+
(0, expect_1.default)(strKeys).toContain(sig.key.toHex());
|
|
104
104
|
}
|
|
105
105
|
const verified = keyring.verify(signed);
|
|
106
|
-
expect_1.default(verified).toBe(true);
|
|
106
|
+
(0, expect_1.default)(verified).toBe(true);
|
|
107
107
|
});
|
|
108
108
|
it('Sign and verify a message using a key chain', async () => {
|
|
109
109
|
const keyringA = new keyring_1.Keyring();
|
|
@@ -119,20 +119,20 @@ it('Sign and verify a message using a key chain', async () => {
|
|
|
119
119
|
keyMessages.set(deviceAB.publicKey.toHex(), keyringA.sign({ message: 'Test' }, [deviceAB, deviceAA]));
|
|
120
120
|
const deviceABChain = keyring_1.Keyring.buildKeyChain(deviceAB.publicKey, keyMessages);
|
|
121
121
|
const signed = keyringA.sign({ message: 'Test' }, [deviceABChain]);
|
|
122
|
-
expect_1.default(signed.signatures.length).toBe(1);
|
|
123
|
-
expect_1.default(crypto_1.PublicKey.from(signed.signatures[0].key).toHex()).toEqual(deviceAB.publicKey.toHex());
|
|
124
|
-
expect_1.default(signed.signatures[0].keyChain).toBeTruthy();
|
|
122
|
+
(0, expect_1.default)(signed.signatures.length).toBe(1);
|
|
123
|
+
(0, expect_1.default)(crypto_1.PublicKey.from(signed.signatures[0].key).toHex()).toEqual(deviceAB.publicKey.toHex());
|
|
124
|
+
(0, expect_1.default)(signed.signatures[0].keyChain).toBeTruthy();
|
|
125
125
|
{
|
|
126
126
|
const verified = keyringA.verify(signed);
|
|
127
|
-
expect_1.default(verified).toBe(true);
|
|
127
|
+
(0, expect_1.default)(verified).toBe(true);
|
|
128
128
|
}
|
|
129
129
|
{
|
|
130
130
|
const verified = keyringB.verify(signed);
|
|
131
|
-
expect_1.default(verified).toBe(true);
|
|
131
|
+
(0, expect_1.default)(verified).toBe(true);
|
|
132
132
|
}
|
|
133
133
|
{
|
|
134
134
|
const verified = keyringB.verify(signed, { allowKeyChains: false });
|
|
135
|
-
expect_1.default(verified).toBe(false);
|
|
135
|
+
(0, expect_1.default)(verified).toBe(false);
|
|
136
136
|
}
|
|
137
137
|
});
|
|
138
138
|
it('Attempt to sign a message with a publicKey', async () => {
|
|
@@ -142,61 +142,61 @@ it('Attempt to sign a message with a publicKey', async () => {
|
|
|
142
142
|
{
|
|
143
143
|
const stored = keyring.getKey(original.publicKey);
|
|
144
144
|
const signed = keyring.sign({ message: 'Test' }, [stored]);
|
|
145
|
-
expect_1.default(signed.signatures.length).toBe(1);
|
|
146
|
-
expect_1.default(keyring.verify(signed)).toBe(true);
|
|
145
|
+
(0, expect_1.default)(signed.signatures.length).toBe(1);
|
|
146
|
+
(0, expect_1.default)(keyring.verify(signed)).toBe(true);
|
|
147
147
|
}
|
|
148
148
|
// Erase the secretKey.
|
|
149
149
|
{
|
|
150
150
|
await keyring.deleteSecretKey(original);
|
|
151
151
|
const stored = keyring.getKey(original.publicKey);
|
|
152
|
-
expect_1.default(stored).toBeTruthy();
|
|
153
|
-
expect_1.default(keyring.hasSecretKey(stored)).toBe(false);
|
|
154
|
-
expect_1.default(() => {
|
|
152
|
+
(0, expect_1.default)(stored).toBeTruthy();
|
|
153
|
+
(0, expect_1.default)(keyring.hasSecretKey(stored)).toBe(false);
|
|
154
|
+
(0, expect_1.default)(() => {
|
|
155
155
|
keyring.sign({ message: 'Test' }, [stored]);
|
|
156
156
|
}).toThrow(assert_1.default.AssertionError);
|
|
157
157
|
}
|
|
158
158
|
});
|
|
159
159
|
it('Attempt to add a badly formatted key', async () => {
|
|
160
160
|
const keyring = new keyring_1.Keyring();
|
|
161
|
-
const good = crypto_1.createKeyPair();
|
|
161
|
+
const good = (0, crypto_1.createKeyPair)();
|
|
162
162
|
const bad = {
|
|
163
|
-
publicKey: crypto_1.keyToString(good.publicKey),
|
|
164
|
-
secretKey: crypto_1.keyToString(good.secretKey)
|
|
163
|
+
publicKey: (0, crypto_1.keyToString)(good.publicKey),
|
|
164
|
+
secretKey: (0, crypto_1.keyToString)(good.secretKey)
|
|
165
165
|
};
|
|
166
|
-
await expect_1.default(() => keyring.addKeyRecord(bad)).rejects.toBeInstanceOf(assert_1.default.AssertionError);
|
|
166
|
+
await (0, expect_1.default)(() => keyring.addKeyRecord(bad)).rejects.toBeInstanceOf(assert_1.default.AssertionError);
|
|
167
167
|
});
|
|
168
168
|
it('Attempt to add a keyRecord missing its secretKey', async () => {
|
|
169
169
|
const keyring = new keyring_1.Keyring();
|
|
170
|
-
const good = crypto_1.createKeyPair();
|
|
170
|
+
const good = (0, crypto_1.createKeyPair)();
|
|
171
171
|
const bad = {
|
|
172
172
|
publicKey: good.publicKey
|
|
173
173
|
};
|
|
174
|
-
await expect_1.default(() => keyring.addKeyRecord(bad)).rejects.toBeInstanceOf(assert_1.default.AssertionError);
|
|
174
|
+
await (0, expect_1.default)(() => keyring.addKeyRecord(bad)).rejects.toBeInstanceOf(assert_1.default.AssertionError);
|
|
175
175
|
});
|
|
176
176
|
it('Attempt to add a keyRecord missing its publicKey', async () => {
|
|
177
177
|
const keyring = new keyring_1.Keyring();
|
|
178
|
-
const good = crypto_1.createKeyPair();
|
|
178
|
+
const good = (0, crypto_1.createKeyPair)();
|
|
179
179
|
const bad = {
|
|
180
180
|
secretKey: good.secretKey
|
|
181
181
|
};
|
|
182
|
-
await expect_1.default(() => keyring.addKeyRecord(bad)).rejects.toBeInstanceOf(assert_1.default.AssertionError);
|
|
182
|
+
await (0, expect_1.default)(() => keyring.addKeyRecord(bad)).rejects.toBeInstanceOf(assert_1.default.AssertionError);
|
|
183
183
|
});
|
|
184
184
|
it('Attempt to add keyRecord with reversed publicKey/secretKey', async () => {
|
|
185
185
|
const keyring = new keyring_1.Keyring();
|
|
186
|
-
const good = crypto_1.createKeyPair();
|
|
186
|
+
const good = (0, crypto_1.createKeyPair)();
|
|
187
187
|
const bad = {
|
|
188
188
|
secretKey: good.publicKey,
|
|
189
189
|
publicKey: good.secretKey
|
|
190
190
|
};
|
|
191
|
-
await expect_1.default(() => keyring.addKeyRecord(bad)).rejects.toBeInstanceOf(assert_1.default.AssertionError);
|
|
191
|
+
await (0, expect_1.default)(() => keyring.addKeyRecord(bad)).rejects.toBeInstanceOf(assert_1.default.AssertionError);
|
|
192
192
|
});
|
|
193
193
|
it('Attempt to add secretKey as a publicKey', async () => {
|
|
194
|
-
const { secretKey } = crypto_1.createKeyPair();
|
|
194
|
+
const { secretKey } = (0, crypto_1.createKeyPair)();
|
|
195
195
|
const keyring = new keyring_1.Keyring();
|
|
196
196
|
const bad = {
|
|
197
197
|
publicKey: secretKey
|
|
198
198
|
};
|
|
199
|
-
await expect_1.default(() => keyring.addPublicKey(bad)).rejects.toBeInstanceOf(assert_1.default.AssertionError);
|
|
199
|
+
await (0, expect_1.default)(() => keyring.addPublicKey(bad)).rejects.toBeInstanceOf(assert_1.default.AssertionError);
|
|
200
200
|
});
|
|
201
201
|
it('Tamper with the contents of a signed message', async () => {
|
|
202
202
|
const keyring = new keyring_1.Keyring();
|
|
@@ -207,9 +207,9 @@ it('Tamper with the contents of a signed message', async () => {
|
|
|
207
207
|
keyring.findKey(keyring_1.Keyring.signingFilter({ type: proto_1.KeyType.IDENTITY })),
|
|
208
208
|
keyring.findKey(keyring_1.Keyring.signingFilter({ type: proto_1.KeyType.DEVICE }))
|
|
209
209
|
]);
|
|
210
|
-
expect_1.default(keyring.verify(signedCopy)).toBe(true);
|
|
210
|
+
(0, expect_1.default)(keyring.verify(signedCopy)).toBe(true);
|
|
211
211
|
signedCopy.signed.C = 'D';
|
|
212
|
-
expect_1.default(keyring.verify(signedCopy)).toBe(false);
|
|
212
|
+
(0, expect_1.default)(keyring.verify(signedCopy)).toBe(false);
|
|
213
213
|
});
|
|
214
214
|
it('Tamper with the signature of a signed message', async () => {
|
|
215
215
|
const keyring = new keyring_1.Keyring();
|
|
@@ -220,9 +220,9 @@ it('Tamper with the signature of a signed message', async () => {
|
|
|
220
220
|
keyring.findKey(keyring_1.Keyring.signingFilter({ type: proto_1.KeyType.IDENTITY })),
|
|
221
221
|
keyring.findKey(keyring_1.Keyring.signingFilter({ type: proto_1.KeyType.DEVICE }))
|
|
222
222
|
]);
|
|
223
|
-
expect_1.default(keyring.verify(signedCopy)).toBe(true);
|
|
224
|
-
signedCopy.signatures[1].signature = crypto_1.randomBytes(64);
|
|
225
|
-
expect_1.default(keyring.verify(signedCopy)).toBe(false);
|
|
223
|
+
(0, expect_1.default)(keyring.verify(signedCopy)).toBe(true);
|
|
224
|
+
signedCopy.signatures[1].signature = (0, crypto_1.randomBytes)(64);
|
|
225
|
+
(0, expect_1.default)(keyring.verify(signedCopy)).toBe(false);
|
|
226
226
|
});
|
|
227
227
|
it('Tamper with the signature key of a signed message', async () => {
|
|
228
228
|
const keyring = new keyring_1.Keyring();
|
|
@@ -233,9 +233,9 @@ it('Tamper with the signature key of a signed message', async () => {
|
|
|
233
233
|
keyring.findKey(keyring_1.Keyring.signingFilter({ type: proto_1.KeyType.IDENTITY })),
|
|
234
234
|
keyring.findKey(keyring_1.Keyring.signingFilter({ type: proto_1.KeyType.DEVICE }))
|
|
235
235
|
]);
|
|
236
|
-
expect_1.default(keyring.verify(signedCopy)).toBe(true);
|
|
237
|
-
signedCopy.signatures[1].key = crypto_1.randomBytes(32);
|
|
238
|
-
expect_1.default(keyring.verify(signedCopy)).toBe(false);
|
|
236
|
+
(0, expect_1.default)(keyring.verify(signedCopy)).toBe(true);
|
|
237
|
+
signedCopy.signatures[1].key = (0, crypto_1.randomBytes)(32);
|
|
238
|
+
(0, expect_1.default)(keyring.verify(signedCopy)).toBe(false);
|
|
239
239
|
});
|
|
240
240
|
it('To/from JSON', async () => {
|
|
241
241
|
const original = new keyring_1.Keyring();
|
|
@@ -246,15 +246,15 @@ it('To/from JSON', async () => {
|
|
|
246
246
|
}
|
|
247
247
|
const copy = new keyring_1.Keyring();
|
|
248
248
|
await copy.loadJSON(original.toJSON());
|
|
249
|
-
expect_1.default(original.toJSON()).toEqual(copy.toJSON());
|
|
250
|
-
expect_1.default(copy.keys).toEqual(original.keys);
|
|
249
|
+
(0, expect_1.default)(original.toJSON()).toEqual(copy.toJSON());
|
|
250
|
+
(0, expect_1.default)(copy.keys).toEqual(original.keys);
|
|
251
251
|
});
|
|
252
252
|
it('Raw sign', async () => {
|
|
253
253
|
const keyring = new keyring_1.Keyring();
|
|
254
254
|
const key = await keyring.createKeyRecord({ type: proto_1.KeyType.IDENTITY });
|
|
255
|
-
const message = crypto_1.randomBytes();
|
|
255
|
+
const message = (0, crypto_1.randomBytes)();
|
|
256
256
|
const signature = keyring.rawSign(message, key);
|
|
257
|
-
expect_1.default(crypto_1.verify(message, signature, key.publicKey.asBuffer())).toBe(true);
|
|
257
|
+
(0, expect_1.default)((0, crypto_1.verify)(message, signature, key.publicKey.asBuffer())).toBe(true);
|
|
258
258
|
});
|
|
259
259
|
it('To/from Protobuf', async () => {
|
|
260
260
|
const original = new keyring_1.Keyring();
|
|
@@ -268,8 +268,8 @@ it('To/from Protobuf', async () => {
|
|
|
268
268
|
const bytes = codec.encode(original.export());
|
|
269
269
|
const decoded = codec.decode(bytes);
|
|
270
270
|
await copy.import(decoded);
|
|
271
|
-
expect_1.default(original.toJSON()).toEqual(copy.toJSON());
|
|
272
|
-
expect_1.default(copy.keys).toEqual(original.keys);
|
|
271
|
+
(0, expect_1.default)(original.toJSON()).toEqual(copy.toJSON());
|
|
272
|
+
(0, expect_1.default)(copy.keys).toEqual(original.keys);
|
|
273
273
|
});
|
|
274
274
|
it('Authenticate flow for Kube/Keyhole authentication', async () => {
|
|
275
275
|
const kubeKeyring = new keyring_1.Keyring();
|
|
@@ -292,10 +292,10 @@ it('Authenticate flow for Kube/Keyhole authentication', async () => {
|
|
|
292
292
|
// User's device signs a message using the keychain with a challenge token given by KUBE.
|
|
293
293
|
const signedCredential = userKeyring.sign({ message: 'Let me in!' }, [keychain], Buffer.from('challenge token'));
|
|
294
294
|
// KUBE verifies user's credential.
|
|
295
|
-
expect_1.default(signedCredential.signatures.length).toBe(1);
|
|
296
|
-
expect_1.default(signedCredential.signatures[0].key.toHex()).toEqual(userDevice.publicKey.toHex());
|
|
297
|
-
expect_1.default(signedCredential.signatures[0].keyChain).toBeTruthy();
|
|
298
|
-
expect_1.default(Buffer.from(signedCredential.signed.nonce).toString()).toBe(Buffer.from('challenge token').toString());
|
|
299
|
-
expect_1.default(kubeKeyring.verify(signedCredential)).toBe(true);
|
|
295
|
+
(0, expect_1.default)(signedCredential.signatures.length).toBe(1);
|
|
296
|
+
(0, expect_1.default)(signedCredential.signatures[0].key.toHex()).toEqual(userDevice.publicKey.toHex());
|
|
297
|
+
(0, expect_1.default)(signedCredential.signatures[0].keyChain).toBeTruthy();
|
|
298
|
+
(0, expect_1.default)(Buffer.from(signedCredential.signed.nonce).toString()).toBe(Buffer.from('challenge token').toString());
|
|
299
|
+
(0, expect_1.default)(kubeKeyring.verify(signedCredential)).toBe(true);
|
|
300
300
|
});
|
|
301
301
|
//# sourceMappingURL=keyring.test.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"keyring.test.js","sourceRoot":"","sources":["../../../src/keys/keyring.test.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"keyring.test.js","sourceRoot":"","sources":["../../../src/keys/keyring.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -15,7 +15,7 @@ const levelup_1 = __importDefault(require("levelup"));
|
|
|
15
15
|
const memdown_1 = __importDefault(require("memdown"));
|
|
16
16
|
const stream_to_array_1 = __importDefault(require("stream-to-array"));
|
|
17
17
|
const crypto_1 = require("@dxos/crypto");
|
|
18
|
-
const log = debug_1.default('dxos:creds:keys:keystore'); // eslint-disable-line @typescript-eslint/no-unused-vars
|
|
18
|
+
const log = (0, debug_1.default)('dxos:creds:keys:keystore'); // eslint-disable-line @typescript-eslint/no-unused-vars
|
|
19
19
|
const marshaller = {
|
|
20
20
|
marshall(record) {
|
|
21
21
|
return { ...record, publicKey: record.publicKey.asBuffer() };
|
|
@@ -32,49 +32,49 @@ class KeyStore {
|
|
|
32
32
|
* Takes the underlying to DB to use (eg, a leveldown, memdown, etc. instance).
|
|
33
33
|
* If none is specified, memdown is used.
|
|
34
34
|
*/
|
|
35
|
-
constructor(db = memdown_1.default()) {
|
|
36
|
-
this._db = levelup_1.default(encoding_down_1.default(db || memdown_1.default(), { valueEncoding: buffer_json_encoding_1.default }));
|
|
35
|
+
constructor(db = (0, memdown_1.default)()) {
|
|
36
|
+
this._db = (0, levelup_1.default)((0, encoding_down_1.default)(db || (0, memdown_1.default)(), { valueEncoding: buffer_json_encoding_1.default }));
|
|
37
37
|
}
|
|
38
38
|
/**
|
|
39
39
|
* Adds a KeyRecord to the KeyStore, indexed by `key`.
|
|
40
40
|
*/
|
|
41
41
|
async setRecord(key, record) {
|
|
42
|
-
assert_1.default(key);
|
|
43
|
-
assert_1.default(record);
|
|
42
|
+
(0, assert_1.default)(key);
|
|
43
|
+
(0, assert_1.default)(record);
|
|
44
44
|
return this._db.put(key, marshaller.marshall(record));
|
|
45
45
|
}
|
|
46
46
|
/**
|
|
47
47
|
* Deletes a KeyRecord from the KeyStore, indexed by `key`.
|
|
48
48
|
*/
|
|
49
49
|
async deleteRecord(key) {
|
|
50
|
-
assert_1.default(key);
|
|
50
|
+
(0, assert_1.default)(key);
|
|
51
51
|
await this._db.del(key);
|
|
52
52
|
}
|
|
53
53
|
/**
|
|
54
54
|
* Looks up a KeyRecord by `key`.
|
|
55
55
|
*/
|
|
56
56
|
async getRecord(key) {
|
|
57
|
-
assert_1.default(key);
|
|
57
|
+
(0, assert_1.default)(key);
|
|
58
58
|
return marshaller.unmarshall(await this._db.get(key));
|
|
59
59
|
}
|
|
60
60
|
/**
|
|
61
61
|
* Returns all lookup key strings.
|
|
62
62
|
*/
|
|
63
63
|
async getKeys() {
|
|
64
|
-
return stream_to_array_1.default(this._db.createKeyStream({ asBuffer: false }));
|
|
64
|
+
return (0, stream_to_array_1.default)(this._db.createKeyStream({ asBuffer: false }));
|
|
65
65
|
}
|
|
66
66
|
/**
|
|
67
67
|
* Returns all KeyRecord values.
|
|
68
68
|
*/
|
|
69
69
|
async getRecords() {
|
|
70
|
-
const records = await stream_to_array_1.default(this._db.createValueStream({ asBuffer: false }));
|
|
70
|
+
const records = await (0, stream_to_array_1.default)(this._db.createValueStream({ asBuffer: false }));
|
|
71
71
|
return records.map(record => marshaller.unmarshall(record));
|
|
72
72
|
}
|
|
73
73
|
/**
|
|
74
74
|
* Returns all entries as key/value pairs.
|
|
75
75
|
*/
|
|
76
76
|
async getRecordsWithKey() {
|
|
77
|
-
const entries = await stream_to_array_1.default(this._db.createReadStream({ keyAsBuffer: false, valueAsBuffer: false }));
|
|
77
|
+
const entries = await (0, stream_to_array_1.default)(this._db.createReadStream({ keyAsBuffer: false, valueAsBuffer: false }));
|
|
78
78
|
return entries.map(pair => [pair.key, marshaller.unmarshall(pair.value)]);
|
|
79
79
|
}
|
|
80
80
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"keystore.js","sourceRoot":"","sources":["../../../src/keys/keystore.ts"],"names":[],"mappings":";AAAA,EAAE;AACF,0BAA0B;AAC1B,EAAE;;;;;;AAEF,oDAA4B;AAC5B,gFAA8C;AAC9C,kDAA0B;AAC1B,kEAAmC;AACnC,sDAA2C;AAC3C,sDAA8B;AAC9B,sEAAsC;AAEtC,yCAAyC;AAIzC,MAAM,GAAG,GAAG,eAAK,
|
|
1
|
+
{"version":3,"file":"keystore.js","sourceRoot":"","sources":["../../../src/keys/keystore.ts"],"names":[],"mappings":";AAAA,EAAE;AACF,0BAA0B;AAC1B,EAAE;;;;;;AAEF,oDAA4B;AAC5B,gFAA8C;AAC9C,kDAA0B;AAC1B,kEAAmC;AACnC,sDAA2C;AAC3C,sDAA8B;AAC9B,sEAAsC;AAEtC,yCAAyC;AAIzC,MAAM,GAAG,GAAG,IAAA,eAAK,EAAC,0BAA0B,CAAC,CAAC,CAAC,wDAAwD;AAEvG,MAAM,UAAU,GAAG;IACjB,QAAQ,CAAE,MAAiB;QACzB,OAAO,EAAE,GAAG,MAAM,EAAE,SAAS,EAAE,MAAM,CAAC,SAAS,CAAC,QAAQ,EAAE,EAAE,CAAC;IAC/D,CAAC;IACD,UAAU,CAAE,GAAQ;QAClB,OAAO,EAAE,GAAG,GAAG,EAAE,SAAS,EAAE,kBAAS,CAAC,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC;IAC9D,CAAC;CACF,CAAC;AAEF;;GAEG;AACH,MAAa,QAAQ;IAGnB;;;OAGG;IACH,YAAa,KAAU,IAAA,iBAAO,GAAE;QAC9B,IAAI,CAAC,GAAG,GAAG,IAAA,iBAAO,EAAC,IAAA,uBAAM,EAAC,EAAE,IAAI,IAAA,iBAAO,GAAE,EAAE,EAAE,aAAa,EAAE,8BAAU,EAAE,CAAC,CAAC,CAAC;IAC7E,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,SAAS,CAAE,GAAW,EAAE,MAAiB;QAC7C,IAAA,gBAAM,EAAC,GAAG,CAAC,CAAC;QACZ,IAAA,gBAAM,EAAC,MAAM,CAAC,CAAC;QAEf,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,UAAU,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC;IACxD,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,YAAY,CAAE,GAAW;QAC7B,IAAA,gBAAM,EAAC,GAAG,CAAC,CAAC;QAEZ,MAAM,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAC1B,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,SAAS,CAAE,GAAW;QAC1B,IAAA,gBAAM,EAAC,GAAG,CAAC,CAAC;QAEZ,OAAO,UAAU,CAAC,UAAU,CAAC,MAAM,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;IACxD,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,OAAO;QACX,OAAO,IAAA,yBAAO,EAAC,IAAI,CAAC,GAAG,CAAC,eAAe,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC;IAChE,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,UAAU;QACd,MAAM,OAAO,GAAG,MAAM,IAAA,yBAAO,EAAC,IAAI,CAAC,GAAG,CAAC,iBAAiB,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC;QAC/E,OAAO,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,iBAAiB;QACrB,MAAM,OAAO,GAAG,MAAM,IAAA,yBAAO,EAAC,IAAI,CAAC,GAAG,CAAC,gBAAgB,CAAC,EAAE,WAAW,EAAE,KAAK,EAAE,aAAa,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC;QACvG,OAAO,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAC5E,CAAC;CACF;AA7DD,4BA6DC"}
|
|
@@ -19,37 +19,37 @@ it('Basic store operations', async () => {
|
|
|
19
19
|
// Create and store some keys.
|
|
20
20
|
for await (const type of Object.values(proto_1.KeyType)) {
|
|
21
21
|
if (typeof type === 'string') {
|
|
22
|
-
const keyRecord = keyring_helpers_1.createKeyRecord({ type: proto_1.KeyType[type] });
|
|
22
|
+
const keyRecord = (0, keyring_helpers_1.createKeyRecord)({ type: proto_1.KeyType[type] });
|
|
23
23
|
keyRecords.push(keyRecord);
|
|
24
24
|
await keystore.setRecord(keyRecord.publicKey.toHex(), keyRecord);
|
|
25
25
|
}
|
|
26
26
|
}
|
|
27
27
|
// Do we have all the records?
|
|
28
28
|
const values = await keystore.getRecords();
|
|
29
|
-
expect_1.default(values.length).toBe(keyRecords.length);
|
|
29
|
+
(0, expect_1.default)(values.length).toBe(keyRecords.length);
|
|
30
30
|
for (const keyRecord of keyRecords) {
|
|
31
|
-
expect_1.default(values).toContainEqual(keyRecord);
|
|
31
|
+
(0, expect_1.default)(values).toContainEqual(keyRecord);
|
|
32
32
|
}
|
|
33
33
|
// Can we get them by key?
|
|
34
34
|
for await (const keyRecord of keyRecords) {
|
|
35
|
-
expect_1.default(keyRecord).toEqual(await keystore.getRecord(keyRecord.publicKey.toHex()));
|
|
35
|
+
(0, expect_1.default)(keyRecord).toEqual(await keystore.getRecord(keyRecord.publicKey.toHex()));
|
|
36
36
|
}
|
|
37
37
|
// How about iterating the keys?
|
|
38
38
|
const keys = await keystore.getKeys();
|
|
39
|
-
expect_1.default(keys.length).toBe(keyRecords.length);
|
|
39
|
+
(0, expect_1.default)(keys.length).toBe(keyRecords.length);
|
|
40
40
|
for await (const key of keys) {
|
|
41
|
-
expect_1.default(await keystore.getRecord(key)).toBeTruthy();
|
|
41
|
+
(0, expect_1.default)(await keystore.getRecord(key)).toBeTruthy();
|
|
42
42
|
}
|
|
43
43
|
// How about key/value pairs?
|
|
44
44
|
const entries = await keystore.getRecordsWithKey();
|
|
45
|
-
expect_1.default(entries.length).toBe(keyRecords.length);
|
|
45
|
+
(0, expect_1.default)(entries.length).toBe(keyRecords.length);
|
|
46
46
|
for await (const entry of entries) {
|
|
47
47
|
const [key, value] = entry;
|
|
48
|
-
expect_1.default(key).toEqual(value.publicKey.toHex());
|
|
48
|
+
(0, expect_1.default)(key).toEqual(value.publicKey.toHex());
|
|
49
49
|
}
|
|
50
50
|
});
|
|
51
51
|
it('reloading', async () => {
|
|
52
|
-
const db = memdown_1.default();
|
|
52
|
+
const db = (0, memdown_1.default)();
|
|
53
53
|
const keyRecords = [];
|
|
54
54
|
// Scope for initial seeding of the database.
|
|
55
55
|
{
|
|
@@ -64,9 +64,9 @@ it('reloading', async () => {
|
|
|
64
64
|
}
|
|
65
65
|
// Do we have all the records?
|
|
66
66
|
const values = await keystore.getRecords();
|
|
67
|
-
expect_1.default(values.length).toBe(keyRecords.length);
|
|
67
|
+
(0, expect_1.default)(values.length).toBe(keyRecords.length);
|
|
68
68
|
for await (const keyRecord of keyRecords) {
|
|
69
|
-
expect_1.default(values.map(keyring_helpers_1.stripSecrets)).toContainEqual(keyRecord);
|
|
69
|
+
(0, expect_1.default)(values.map(keyring_helpers_1.stripSecrets)).toContainEqual(keyRecord);
|
|
70
70
|
}
|
|
71
71
|
}
|
|
72
72
|
// Scope for reloading from the database.
|
|
@@ -75,14 +75,14 @@ it('reloading', async () => {
|
|
|
75
75
|
const keystore = new keystore_1.KeyStore(db);
|
|
76
76
|
const keyring = new keyring_1.Keyring(keystore);
|
|
77
77
|
// Should be empty before loading from the KeyStore.
|
|
78
|
-
expect_1.default(keyring.keys.length).toBe(0);
|
|
78
|
+
(0, expect_1.default)(keyring.keys.length).toBe(0);
|
|
79
79
|
// Load from the KeyStore.
|
|
80
80
|
await keyring.load();
|
|
81
81
|
// Do we have all the records now?
|
|
82
82
|
const values = keyring.keys;
|
|
83
|
-
expect_1.default(values.length).toBe(keyRecords.length);
|
|
83
|
+
(0, expect_1.default)(values.length).toBe(keyRecords.length);
|
|
84
84
|
for await (const keyRecord of keyRecords) {
|
|
85
|
-
expect_1.default(values.map(keyring_helpers_1.stripSecrets)).toContainEqual(keyRecord);
|
|
85
|
+
(0, expect_1.default)(values.map(keyring_helpers_1.stripSecrets)).toContainEqual(keyRecord);
|
|
86
86
|
}
|
|
87
87
|
}
|
|
88
88
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"keystore.test.js","sourceRoot":"","sources":["../../../src/keys/keystore.test.js"],"names":[],"mappings":";AAAA,EAAE;AACF,0BAA0B;AAC1B,EAAE;;;;;AAEF,wBAAwB;AAExB,oDAA4B;AAC5B,sDAA8B;AAE9B,oCAAmC;AACnC,uCAAoC;AACpC,uDAAkE;AAClE,yCAAsC;AAEtC,EAAE,CAAC,wBAAwB,EAAE,KAAK,IAAI,EAAE;IACtC,MAAM,QAAQ,GAAG,IAAI,mBAAQ,EAAE,CAAC;IAChC,MAAM,UAAU,GAAG,EAAE,CAAC;IAEtB,8BAA8B;IAC9B,IAAI,KAAK,EAAE,MAAM,IAAI,IAAI,MAAM,CAAC,MAAM,CAAC,eAAO,CAAC,EAAE;QAC/C,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE;YAC5B,MAAM,SAAS,GAAG,iCAAe,
|
|
1
|
+
{"version":3,"file":"keystore.test.js","sourceRoot":"","sources":["../../../src/keys/keystore.test.js"],"names":[],"mappings":";AAAA,EAAE;AACF,0BAA0B;AAC1B,EAAE;;;;;AAEF,wBAAwB;AAExB,oDAA4B;AAC5B,sDAA8B;AAE9B,oCAAmC;AACnC,uCAAoC;AACpC,uDAAkE;AAClE,yCAAsC;AAEtC,EAAE,CAAC,wBAAwB,EAAE,KAAK,IAAI,EAAE;IACtC,MAAM,QAAQ,GAAG,IAAI,mBAAQ,EAAE,CAAC;IAChC,MAAM,UAAU,GAAG,EAAE,CAAC;IAEtB,8BAA8B;IAC9B,IAAI,KAAK,EAAE,MAAM,IAAI,IAAI,MAAM,CAAC,MAAM,CAAC,eAAO,CAAC,EAAE;QAC/C,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE;YAC5B,MAAM,SAAS,GAAG,IAAA,iCAAe,EAAC,EAAE,IAAI,EAAE,eAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAC3D,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YAC3B,MAAM,QAAQ,CAAC,SAAS,CAAC,SAAS,CAAC,SAAS,CAAC,KAAK,EAAE,EAAE,SAAS,CAAC,CAAC;SAClE;KACF;IAED,8BAA8B;IAC9B,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,UAAU,EAAE,CAAC;IAC3C,IAAA,gBAAM,EAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;IAC9C,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE;QAClC,IAAA,gBAAM,EAAC,MAAM,CAAC,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC;KAC1C;IAED,0BAA0B;IAC1B,IAAI,KAAK,EAAE,MAAM,SAAS,IAAI,UAAU,EAAE;QACxC,IAAA,gBAAM,EAAC,SAAS,CAAC,CAAC,OAAO,CAAC,MAAM,QAAQ,CAAC,SAAS,CAAC,SAAS,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;KAClF;IAED,gCAAgC;IAChC,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,OAAO,EAAE,CAAC;IACtC,IAAA,gBAAM,EAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;IAC5C,IAAI,KAAK,EAAE,MAAM,GAAG,IAAI,IAAI,EAAE;QAC5B,IAAA,gBAAM,EAAC,MAAM,QAAQ,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,UAAU,EAAE,CAAC;KACpD;IAED,6BAA6B;IAC7B,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,iBAAiB,EAAE,CAAC;IACnD,IAAA,gBAAM,EAAC,OAAO,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;IAC/C,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,OAAO,EAAE;QACjC,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,GAAG,KAAK,CAAC;QAC3B,IAAA,gBAAM,EAAC,GAAG,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC,CAAC;KAC9C;AACH,CAAC,CAAC,CAAC;AAEH,EAAE,CAAC,WAAW,EAAE,KAAK,IAAI,EAAE;IACzB,MAAM,EAAE,GAAG,IAAA,iBAAO,GAAE,CAAC;IACrB,MAAM,UAAU,GAAG,EAAE,CAAC;IAEtB,6CAA6C;IAC7C;QACE,MAAM,QAAQ,GAAG,IAAI,mBAAQ,CAAC,EAAE,CAAC,CAAC;QAClC,MAAM,OAAO,GAAG,IAAI,iBAAO,CAAC,QAAQ,CAAC,CAAC;QAEtC,8BAA8B;QAC9B,IAAI,KAAK,EAAE,MAAM,IAAI,IAAI,MAAM,CAAC,MAAM,CAAC,eAAO,CAAC,EAAE;YAC/C,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE;gBAC5B,MAAM,SAAS,GAAG,MAAM,OAAO,CAAC,eAAe,CAAC,EAAE,IAAI,EAAE,eAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBACzE,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC;aACtD;SACF;QAED,8BAA8B;QAC9B,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,UAAU,EAAE,CAAC;QAC3C,IAAA,gBAAM,EAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;QAC9C,IAAI,KAAK,EAAE,MAAM,SAAS,IAAI,UAAU,EAAE;YACxC,IAAA,gBAAM,EAAC,MAAM,CAAC,GAAG,CAAC,8BAAY,CAAC,CAAC,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC;SAC5D;KACF;IAED,yCAAyC;IACzC;QACE,iBAAiB;QACjB,MAAM,QAAQ,GAAG,IAAI,mBAAQ,CAAC,EAAE,CAAC,CAAC;QAClC,MAAM,OAAO,GAAG,IAAI,iBAAO,CAAC,QAAQ,CAAC,CAAC;QAEtC,oDAAoD;QACpD,IAAA,gBAAM,EAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAEpC,0BAA0B;QAC1B,MAAM,OAAO,CAAC,IAAI,EAAE,CAAC;QAErB,kCAAkC;QAClC,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;QAC5B,IAAA,gBAAM,EAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;QAC9C,IAAI,KAAK,EAAE,MAAM,SAAS,IAAI,UAAU,EAAE;YACxC,IAAA,gBAAM,EAAC,MAAM,CAAC,GAAG,CAAC,8BAAY,CAAC,CAAC,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC;SAC5D;KACF;AACH,CAAC,CAAC,CAAC"}
|
|
@@ -13,7 +13,7 @@ const performance_now_1 = __importDefault(require("performance-now"));
|
|
|
13
13
|
*/
|
|
14
14
|
class SimpleMetrics {
|
|
15
15
|
constructor() {
|
|
16
|
-
this._created = performance_now_1.default();
|
|
16
|
+
this._created = (0, performance_now_1.default)();
|
|
17
17
|
this._counts = new Map();
|
|
18
18
|
this._times = new Map();
|
|
19
19
|
}
|
|
@@ -24,11 +24,11 @@ class SimpleMetrics {
|
|
|
24
24
|
return value;
|
|
25
25
|
}
|
|
26
26
|
time(title) {
|
|
27
|
-
const start = performance_now_1.default();
|
|
27
|
+
const start = (0, performance_now_1.default)();
|
|
28
28
|
this.inc(title);
|
|
29
29
|
return () => {
|
|
30
30
|
var _a;
|
|
31
|
-
const stop = performance_now_1.default() - start;
|
|
31
|
+
const stop = (0, performance_now_1.default)() - start;
|
|
32
32
|
const value = (_a = this._times.get(title)) !== null && _a !== void 0 ? _a : 0;
|
|
33
33
|
this._times.set(title, value + stop);
|
|
34
34
|
return stop;
|
|
@@ -41,7 +41,7 @@ class SimpleMetrics {
|
|
|
41
41
|
const times = Array.from(this._times.entries());
|
|
42
42
|
times.sort((a, b) => a[1] - b[1]);
|
|
43
43
|
const timesStr = times.map(([k, v]) => `${k}: ${v.toFixed(2)}`).join('\n ');
|
|
44
|
-
const elapsed = performance_now_1.default() - this._created;
|
|
44
|
+
const elapsed = (0, performance_now_1.default)() - this._created;
|
|
45
45
|
return `COUNTS:\n ${countsStr}\n\nTIME (ms):\n ${timesStr}\n\nELAPSED (ms): ${elapsed.toFixed(2)}`;
|
|
46
46
|
}
|
|
47
47
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"simple-metrics.js","sourceRoot":"","sources":["../../../src/keys/simple-metrics.ts"],"names":[],"mappings":";AAAA,EAAE;AACF,0BAA0B;AAC1B,EAAE;;;;;;AAEF,sEAA6C;AAE7C;;GAEG;AACH,MAAa,aAAa;IAA1B;QACmB,aAAQ,GAAG,yBAAc,
|
|
1
|
+
{"version":3,"file":"simple-metrics.js","sourceRoot":"","sources":["../../../src/keys/simple-metrics.ts"],"names":[],"mappings":"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"}
|