@keplr-wallet/background 0.10.3 → 0.10.4
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/build/chains/handler.js +2 -1
- package/build/chains/handler.js.map +1 -1
- package/build/chains/messages.js +2 -2
- package/build/chains/messages.js.map +1 -1
- package/build/chains/service.js +6 -5
- package/build/chains/service.js.map +1 -1
- package/build/chains/types.js +2 -1
- package/build/chains/types.js.map +1 -1
- package/build/interaction/foreground/handler.js +2 -1
- package/build/interaction/foreground/handler.js.map +1 -1
- package/build/interaction/foreground/messages.js +2 -2
- package/build/interaction/foreground/messages.js.map +1 -1
- package/build/interaction/handler.js +2 -1
- package/build/interaction/handler.js.map +1 -1
- package/build/interaction/service.js +5 -4
- package/build/interaction/service.js.map +1 -1
- package/build/keyring/crypto.js +4 -3
- package/build/keyring/crypto.js.map +1 -1
- package/build/keyring/handler.js +2 -1
- package/build/keyring/handler.js.map +1 -1
- package/build/keyring/keyring.js +48 -47
- package/build/keyring/keyring.js.map +1 -1
- package/build/keyring/messages.js +44 -44
- package/build/keyring/messages.js.map +1 -1
- package/build/keyring/service.js +10 -10
- package/build/keyring/service.js.map +1 -1
- package/build/ledger/handler.js +2 -1
- package/build/ledger/handler.js.map +1 -1
- package/build/ledger/ledger.js +5 -4
- package/build/ledger/ledger.js.map +1 -1
- package/build/ledger/messages.js +1 -1
- package/build/ledger/messages.js.map +1 -1
- package/build/ledger/service.js +5 -5
- package/build/ledger/service.js.map +1 -1
- package/build/permission/handler.js +2 -1
- package/build/permission/handler.js.map +1 -1
- package/build/permission/messages.js +11 -11
- package/build/permission/messages.js.map +1 -1
- package/build/permission/service.js +2 -1
- package/build/permission/service.js.map +1 -1
- package/build/secret-wasm/handler.js +2 -1
- package/build/secret-wasm/handler.js.map +1 -1
- package/build/secret-wasm/messages.js +9 -9
- package/build/secret-wasm/messages.js.map +1 -1
- package/build/secret-wasm/service.js +5 -4
- package/build/secret-wasm/service.js.map +1 -1
- package/build/tokens/handler.js +2 -1
- package/build/tokens/handler.js.map +1 -1
- package/build/tokens/messages.js +7 -7
- package/build/tokens/messages.js.map +1 -1
- package/build/tokens/service.js +3 -2
- package/build/tokens/service.js.map +1 -1
- package/build/tx/handler.js +2 -1
- package/build/tx/handler.js.map +1 -1
- package/build/tx/messages.js +3 -3
- package/build/tx/messages.js.map +1 -1
- package/build/updater/handler.js +2 -1
- package/build/updater/handler.js.map +1 -1
- package/build/updater/messages.js +1 -1
- package/build/updater/messages.js.map +1 -1
- package/package.json +10 -10
- package/src/chains/handler.ts +8 -2
- package/src/chains/messages.ts +3 -3
- package/src/chains/service.ts +14 -6
- package/src/chains/types.ts +6 -1
- package/src/interaction/foreground/handler.ts +8 -2
- package/src/interaction/foreground/messages.ts +3 -3
- package/src/interaction/handler.ts +8 -2
- package/src/interaction/service.ts +5 -4
- package/src/keyring/crypto.ts +4 -3
- package/src/keyring/handler.ts +8 -2
- package/src/keyring/keyring.ts +92 -48
- package/src/keyring/messages.ts +49 -45
- package/src/keyring/service.ts +23 -11
- package/src/ledger/handler.ts +8 -2
- package/src/ledger/ledger.ts +5 -4
- package/src/ledger/messages.ts +2 -2
- package/src/ledger/service.ts +6 -6
- package/src/permission/handler.ts +8 -2
- package/src/permission/messages.ts +12 -12
- package/src/permission/service.ts +2 -2
- package/src/secret-wasm/handler.ts +8 -2
- package/src/secret-wasm/messages.ts +10 -10
- package/src/secret-wasm/service.ts +5 -5
- package/src/tokens/handler.ts +8 -2
- package/src/tokens/messages.ts +8 -8
- package/src/tokens/service.ts +3 -3
- package/src/tx/handler.ts +8 -2
- package/src/tx/messages.ts +4 -4
- package/src/updater/handler.ts +8 -2
- package/src/updater/messages.ts +2 -2
package/build/keyring/keyring.js
CHANGED
|
@@ -31,6 +31,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
31
31
|
exports.KeyRing = exports.KeyRingStatus = void 0;
|
|
32
32
|
const crypto_1 = require("./crypto");
|
|
33
33
|
const crypto_2 = require("@keplr-wallet/crypto");
|
|
34
|
+
const router_1 = require("@keplr-wallet/router");
|
|
34
35
|
const buffer_1 = require("buffer/");
|
|
35
36
|
const cosmos_1 = require("@keplr-wallet/cosmos");
|
|
36
37
|
const wallet_1 = require("@ethersproject/wallet");
|
|
@@ -69,7 +70,7 @@ class KeyRing {
|
|
|
69
70
|
return "mnemonic";
|
|
70
71
|
}
|
|
71
72
|
if (type !== "mnemonic" && type !== "privateKey" && type !== "ledger") {
|
|
72
|
-
throw new
|
|
73
|
+
throw new router_1.KeplrError("keyring", 132, "Invalid type of key store");
|
|
73
74
|
}
|
|
74
75
|
return type;
|
|
75
76
|
}
|
|
@@ -149,7 +150,7 @@ class KeyRing {
|
|
|
149
150
|
computeKeyStoreCoinType(chainId, defaultCoinType) {
|
|
150
151
|
var _a;
|
|
151
152
|
if (!this.keyStore) {
|
|
152
|
-
throw new
|
|
153
|
+
throw new router_1.KeplrError("keyring", 130, "Key store is empty");
|
|
153
154
|
}
|
|
154
155
|
return this.keyStore.coinTypeForChain
|
|
155
156
|
? (_a = this.keyStore.coinTypeForChain[cosmos_1.ChainIdHelper.parse(chainId).identifier]) !== null && _a !== void 0 ? _a : defaultCoinType : defaultCoinType;
|
|
@@ -160,7 +161,7 @@ class KeyRing {
|
|
|
160
161
|
createMnemonicKey(kdf, mnemonic, password, meta, bip44HDPath) {
|
|
161
162
|
return __awaiter(this, void 0, void 0, function* () {
|
|
162
163
|
if (this.status !== KeyRingStatus.EMPTY) {
|
|
163
|
-
throw new
|
|
164
|
+
throw new router_1.KeplrError("keyring", 142, "Key ring is not loaded or not empty");
|
|
164
165
|
}
|
|
165
166
|
this.mnemonicMasterSeed = crypto_2.Mnemonic.generateMasterSeedFromMnemonic(mnemonic);
|
|
166
167
|
this.keyStore = yield KeyRing.CreateMnemonicKeyStore(this.rng, this.crypto, kdf, mnemonic, password, yield this.assignKeyStoreIdMeta(meta), bip44HDPath);
|
|
@@ -176,7 +177,7 @@ class KeyRing {
|
|
|
176
177
|
createPrivateKey(kdf, privateKey, password, meta) {
|
|
177
178
|
return __awaiter(this, void 0, void 0, function* () {
|
|
178
179
|
if (this.status !== KeyRingStatus.EMPTY) {
|
|
179
|
-
throw new
|
|
180
|
+
throw new router_1.KeplrError("keyring", 142, "Key ring is not loaded or not empty");
|
|
180
181
|
}
|
|
181
182
|
this.privateKey = privateKey;
|
|
182
183
|
this.keyStore = yield KeyRing.CreatePrivateKeyStore(this.rng, this.crypto, kdf, privateKey, password, yield this.assignKeyStoreIdMeta(meta));
|
|
@@ -192,7 +193,7 @@ class KeyRing {
|
|
|
192
193
|
createLedgerKey(env, kdf, password, meta, bip44HDPath) {
|
|
193
194
|
return __awaiter(this, void 0, void 0, function* () {
|
|
194
195
|
if (this.status !== KeyRingStatus.EMPTY) {
|
|
195
|
-
throw new
|
|
196
|
+
throw new router_1.KeplrError("keyring", 142, "Key ring is not loaded or not empty");
|
|
196
197
|
}
|
|
197
198
|
// Get public key first
|
|
198
199
|
this.ledgerPublicKey = yield this.ledgerKeeper.getPublicKey(env, bip44HDPath);
|
|
@@ -209,7 +210,7 @@ class KeyRing {
|
|
|
209
210
|
}
|
|
210
211
|
lock() {
|
|
211
212
|
if (this.status !== KeyRingStatus.UNLOCKED) {
|
|
212
|
-
throw new
|
|
213
|
+
throw new router_1.KeplrError("keyring", 143, "Key ring is not unlocked");
|
|
213
214
|
}
|
|
214
215
|
this.mnemonicMasterSeed = undefined;
|
|
215
216
|
this.privateKey = undefined;
|
|
@@ -219,7 +220,7 @@ class KeyRing {
|
|
|
219
220
|
unlock(password) {
|
|
220
221
|
return __awaiter(this, void 0, void 0, function* () {
|
|
221
222
|
if (!this.keyStore || this.type === "none") {
|
|
222
|
-
throw new
|
|
223
|
+
throw new router_1.KeplrError("keyring", 144, "Key ring not initialized");
|
|
223
224
|
}
|
|
224
225
|
if (this.type === "mnemonic") {
|
|
225
226
|
// If password is invalid, error will be thrown.
|
|
@@ -233,7 +234,7 @@ class KeyRing {
|
|
|
233
234
|
this.ledgerPublicKey = buffer_1.Buffer.from(buffer_1.Buffer.from(yield crypto_1.Crypto.decrypt(this.crypto, this.keyStore, password)).toString(), "hex");
|
|
234
235
|
}
|
|
235
236
|
else {
|
|
236
|
-
throw new
|
|
237
|
+
throw new router_1.KeplrError("keyring", 145, "Unexpected type of keyring");
|
|
237
238
|
}
|
|
238
239
|
this.password = password;
|
|
239
240
|
});
|
|
@@ -255,7 +256,7 @@ class KeyRing {
|
|
|
255
256
|
}
|
|
256
257
|
const multiKeyStore = yield this.kvStore.get(KeyMultiStoreKey);
|
|
257
258
|
if (!multiKeyStore) {
|
|
258
|
-
// Restore the multi keystore if key store exist
|
|
259
|
+
// Restore the multi keystore if key store exist 13t multi Key store is empty.
|
|
259
260
|
// This case will occur if extension is updated from the prior version that doesn't support the multi key store.
|
|
260
261
|
// This line ensures the backward compatibility.
|
|
261
262
|
if (keyStore) {
|
|
@@ -315,7 +316,7 @@ class KeyRing {
|
|
|
315
316
|
}
|
|
316
317
|
isKeyStoreCoinTypeSet(chainId) {
|
|
317
318
|
if (!this.keyStore) {
|
|
318
|
-
throw new
|
|
319
|
+
throw new router_1.KeplrError("keyring", 130, "Key store is empty");
|
|
319
320
|
}
|
|
320
321
|
return (this.keyStore.coinTypeForChain &&
|
|
321
322
|
this.keyStore.coinTypeForChain[cosmos_1.ChainIdHelper.parse(chainId).identifier] !== undefined);
|
|
@@ -323,11 +324,11 @@ class KeyRing {
|
|
|
323
324
|
setKeyStoreCoinType(chainId, coinType) {
|
|
324
325
|
return __awaiter(this, void 0, void 0, function* () {
|
|
325
326
|
if (!this.keyStore) {
|
|
326
|
-
throw new
|
|
327
|
+
throw new router_1.KeplrError("keyring", 130, "Key store is empty");
|
|
327
328
|
}
|
|
328
329
|
if (this.keyStore.coinTypeForChain &&
|
|
329
330
|
this.keyStore.coinTypeForChain[cosmos_1.ChainIdHelper.parse(chainId).identifier] !== undefined) {
|
|
330
|
-
throw new
|
|
331
|
+
throw new router_1.KeplrError("keyring", 110, "Coin type already set");
|
|
331
332
|
}
|
|
332
333
|
this.keyStore.coinTypeForChain = Object.assign(Object.assign({}, this.keyStore.coinTypeForChain), { [cosmos_1.ChainIdHelper.parse(chainId).identifier]: coinType });
|
|
333
334
|
const keyStoreInMulti = this.multiKeyStore.find((keyStore) => {
|
|
@@ -344,14 +345,14 @@ class KeyRing {
|
|
|
344
345
|
deleteKeyRing(index, password) {
|
|
345
346
|
return __awaiter(this, void 0, void 0, function* () {
|
|
346
347
|
if (this.status !== KeyRingStatus.UNLOCKED) {
|
|
347
|
-
throw new
|
|
348
|
+
throw new router_1.KeplrError("keyring", 143, "Key ring is not unlocked");
|
|
348
349
|
}
|
|
349
350
|
if (this.password !== password) {
|
|
350
|
-
throw new
|
|
351
|
+
throw new router_1.KeplrError("keyring", 121, "Invalid password");
|
|
351
352
|
}
|
|
352
353
|
const keyStore = this.multiKeyStore[index];
|
|
353
354
|
if (!keyStore) {
|
|
354
|
-
throw new
|
|
355
|
+
throw new router_1.KeplrError("keyring", 130, "Key store is empty");
|
|
355
356
|
}
|
|
356
357
|
const multiKeyStore = this.multiKeyStore
|
|
357
358
|
.slice(0, index)
|
|
@@ -392,11 +393,11 @@ class KeyRing {
|
|
|
392
393
|
updateNameKeyRing(index, name) {
|
|
393
394
|
return __awaiter(this, void 0, void 0, function* () {
|
|
394
395
|
if (this.status !== KeyRingStatus.UNLOCKED) {
|
|
395
|
-
throw new
|
|
396
|
+
throw new router_1.KeplrError("keyring", 143, "Key ring is not unlocked");
|
|
396
397
|
}
|
|
397
398
|
const keyStore = this.multiKeyStore[index];
|
|
398
399
|
if (!keyStore) {
|
|
399
|
-
throw new
|
|
400
|
+
throw new router_1.KeplrError("keyring", 130, "Key store is empty");
|
|
400
401
|
}
|
|
401
402
|
keyStore.meta = Object.assign(Object.assign({}, keyStore.meta), { name: name });
|
|
402
403
|
// If select key store and changed store are same, sync keystore
|
|
@@ -410,17 +411,17 @@ class KeyRing {
|
|
|
410
411
|
}
|
|
411
412
|
loadKey(coinType) {
|
|
412
413
|
if (this.status !== KeyRingStatus.UNLOCKED) {
|
|
413
|
-
throw new
|
|
414
|
+
throw new router_1.KeplrError("keyring", 143, "Key ring is not unlocked");
|
|
414
415
|
}
|
|
415
416
|
if (!this.keyStore) {
|
|
416
|
-
throw new
|
|
417
|
+
throw new router_1.KeplrError("keyring", 130, "Key store is empty");
|
|
417
418
|
}
|
|
418
419
|
if (this.keyStore.type === "ledger") {
|
|
419
420
|
if (!this.ledgerPublicKey) {
|
|
420
|
-
throw new
|
|
421
|
+
throw new router_1.KeplrError("keyring", 150, "Ledger public key not set");
|
|
421
422
|
}
|
|
422
423
|
if (coinType === 60) {
|
|
423
|
-
throw new
|
|
424
|
+
throw new router_1.KeplrError("keyring", 152, "Ledger is not compatible with this coinType right now");
|
|
424
425
|
}
|
|
425
426
|
const pubKey = new crypto_2.PubKeySecp256k1(this.ledgerPublicKey);
|
|
426
427
|
return {
|
|
@@ -457,7 +458,7 @@ class KeyRing {
|
|
|
457
458
|
if (this.status !== KeyRingStatus.UNLOCKED ||
|
|
458
459
|
this.type === "none" ||
|
|
459
460
|
!this.keyStore) {
|
|
460
|
-
throw new
|
|
461
|
+
throw new router_1.KeplrError("keyring", 143, "Key ring is not unlocked");
|
|
461
462
|
}
|
|
462
463
|
const bip44HDPath = KeyRing.getKeyStoreBIP44Path(this.keyStore);
|
|
463
464
|
if (this.type === "mnemonic") {
|
|
@@ -467,7 +468,7 @@ class KeyRing {
|
|
|
467
468
|
return new crypto_2.PrivKeySecp256k1(cachedKey);
|
|
468
469
|
}
|
|
469
470
|
if (!this.mnemonicMasterSeed) {
|
|
470
|
-
throw new
|
|
471
|
+
throw new router_1.KeplrError("keyring", 133, "Key store type is mnemonic and it is unlocked. But, mnemonic is not loaded unexpectedly");
|
|
471
472
|
}
|
|
472
473
|
const privKey = crypto_2.Mnemonic.generatePrivateKeyFromMasterSeed(this.mnemonicMasterSeed, path);
|
|
473
474
|
this.cached.set(path, privKey);
|
|
@@ -476,21 +477,21 @@ class KeyRing {
|
|
|
476
477
|
else if (this.type === "privateKey") {
|
|
477
478
|
// If key store type is private key, path will be ignored.
|
|
478
479
|
if (!this.privateKey) {
|
|
479
|
-
throw new
|
|
480
|
+
throw new router_1.KeplrError("keyring", 134, "Key store type is private key and it is unlocked. But, private key is not loaded unexpectedly");
|
|
480
481
|
}
|
|
481
482
|
return new crypto_2.PrivKeySecp256k1(this.privateKey);
|
|
482
483
|
}
|
|
483
484
|
else {
|
|
484
|
-
throw new
|
|
485
|
+
throw new router_1.KeplrError("keyring", 145, "Unexpected type of keyring");
|
|
485
486
|
}
|
|
486
487
|
}
|
|
487
488
|
sign(env, chainId, defaultCoinType, message) {
|
|
488
489
|
return __awaiter(this, void 0, void 0, function* () {
|
|
489
490
|
if (this.status !== KeyRingStatus.UNLOCKED) {
|
|
490
|
-
throw new
|
|
491
|
+
throw new router_1.KeplrError("keyring", 143, "Key ring is not unlocked");
|
|
491
492
|
}
|
|
492
493
|
if (!this.keyStore) {
|
|
493
|
-
throw new
|
|
494
|
+
throw new router_1.KeplrError("keyring", 130, "Key store is empty");
|
|
494
495
|
}
|
|
495
496
|
// Sign with Evmos/Ethereum
|
|
496
497
|
const coinType = this.computeKeyStoreCoinType(chainId, defaultCoinType);
|
|
@@ -500,7 +501,7 @@ class KeyRing {
|
|
|
500
501
|
if (this.keyStore.type === "ledger") {
|
|
501
502
|
const pubKey = this.ledgerPublicKey;
|
|
502
503
|
if (!pubKey) {
|
|
503
|
-
throw new
|
|
504
|
+
throw new router_1.KeplrError("keyring", 151, "Ledger public key is not initialized");
|
|
504
505
|
}
|
|
505
506
|
return yield this.ledgerKeeper.sign(env, KeyRing.getKeyStoreBIP44Path(this.keyStore), pubKey, message);
|
|
506
507
|
}
|
|
@@ -514,19 +515,19 @@ class KeyRing {
|
|
|
514
515
|
signEthereum(chainId, defaultCoinType, message) {
|
|
515
516
|
return __awaiter(this, void 0, void 0, function* () {
|
|
516
517
|
if (this.status !== KeyRingStatus.UNLOCKED) {
|
|
517
|
-
throw new
|
|
518
|
+
throw new router_1.KeplrError("keyring", 143, "Key ring is not unlocked");
|
|
518
519
|
}
|
|
519
520
|
if (!this.keyStore) {
|
|
520
|
-
throw new
|
|
521
|
+
throw new router_1.KeplrError("keyring", 130, "Key store is empty");
|
|
521
522
|
}
|
|
522
523
|
if (this.keyStore.type === "ledger") {
|
|
523
524
|
// TODO: Ethereum Ledger Integration
|
|
524
|
-
throw new
|
|
525
|
+
throw new router_1.KeplrError("keyring", 112, "Ethereum signing with Ledger is not yet supported");
|
|
525
526
|
}
|
|
526
527
|
else {
|
|
527
528
|
const coinType = this.computeKeyStoreCoinType(chainId, defaultCoinType);
|
|
528
529
|
if (coinType !== 60) {
|
|
529
|
-
throw new
|
|
530
|
+
throw new router_1.KeplrError("keyring", 111, "Invalid coin type passed in to Ethereum signing (expected 60)");
|
|
530
531
|
}
|
|
531
532
|
const privKey = this.loadPrivKey(coinType);
|
|
532
533
|
// Use ether js to sign Ethereum tx
|
|
@@ -543,14 +544,14 @@ class KeyRing {
|
|
|
543
544
|
showKeyRing(index, password) {
|
|
544
545
|
return __awaiter(this, void 0, void 0, function* () {
|
|
545
546
|
if (this.status !== KeyRingStatus.UNLOCKED) {
|
|
546
|
-
throw new
|
|
547
|
+
throw new router_1.KeplrError("keyring", 143, "Key ring is not unlocked");
|
|
547
548
|
}
|
|
548
549
|
if (this.password !== password) {
|
|
549
|
-
throw new
|
|
550
|
+
throw new router_1.KeplrError("keyring", 121, "Invalid password");
|
|
550
551
|
}
|
|
551
552
|
const keyStore = this.multiKeyStore[index];
|
|
552
553
|
if (!keyStore) {
|
|
553
|
-
throw new
|
|
554
|
+
throw new router_1.KeplrError("keyring", 130, "Key store is empty");
|
|
554
555
|
}
|
|
555
556
|
if (keyStore.type === "mnemonic") {
|
|
556
557
|
// If password is invalid, error will be thrown.
|
|
@@ -568,7 +569,7 @@ class KeyRing {
|
|
|
568
569
|
addMnemonicKey(kdf, mnemonic, meta, bip44HDPath) {
|
|
569
570
|
return __awaiter(this, void 0, void 0, function* () {
|
|
570
571
|
if (this.status !== KeyRingStatus.UNLOCKED || this.password == "") {
|
|
571
|
-
throw new
|
|
572
|
+
throw new router_1.KeplrError("keyring", 141, "Key ring is locked or not initialized");
|
|
572
573
|
}
|
|
573
574
|
const keyStore = yield KeyRing.CreateMnemonicKeyStore(this.rng, this.crypto, kdf, mnemonic, this.password, yield this.assignKeyStoreIdMeta(meta), bip44HDPath);
|
|
574
575
|
this.multiKeyStore.push(keyStore);
|
|
@@ -581,7 +582,7 @@ class KeyRing {
|
|
|
581
582
|
addPrivateKey(kdf, privateKey, meta) {
|
|
582
583
|
return __awaiter(this, void 0, void 0, function* () {
|
|
583
584
|
if (this.status !== KeyRingStatus.UNLOCKED || this.password == "") {
|
|
584
|
-
throw new
|
|
585
|
+
throw new router_1.KeplrError("keyring", 141, "Key ring is locked or not initialized");
|
|
585
586
|
}
|
|
586
587
|
const keyStore = yield KeyRing.CreatePrivateKeyStore(this.rng, this.crypto, kdf, privateKey, this.password, yield this.assignKeyStoreIdMeta(meta));
|
|
587
588
|
this.multiKeyStore.push(keyStore);
|
|
@@ -594,7 +595,7 @@ class KeyRing {
|
|
|
594
595
|
addLedgerKey(env, kdf, meta, bip44HDPath) {
|
|
595
596
|
return __awaiter(this, void 0, void 0, function* () {
|
|
596
597
|
if (this.status !== KeyRingStatus.UNLOCKED || this.password == "") {
|
|
597
|
-
throw new
|
|
598
|
+
throw new router_1.KeplrError("keyring", 141, "Key ring is locked or not initialized");
|
|
598
599
|
}
|
|
599
600
|
// Get public key first
|
|
600
601
|
const publicKey = yield this.ledgerKeeper.getPublicKey(env, bip44HDPath);
|
|
@@ -609,11 +610,11 @@ class KeyRing {
|
|
|
609
610
|
changeKeyStoreFromMultiKeyStore(index) {
|
|
610
611
|
return __awaiter(this, void 0, void 0, function* () {
|
|
611
612
|
if (this.status !== KeyRingStatus.UNLOCKED || this.password == "") {
|
|
612
|
-
throw new
|
|
613
|
+
throw new router_1.KeplrError("keyring", 141, "Key ring is locked or not initialized");
|
|
613
614
|
}
|
|
614
615
|
const keyStore = this.multiKeyStore[index];
|
|
615
616
|
if (!keyStore) {
|
|
616
|
-
throw new
|
|
617
|
+
throw new router_1.KeplrError("keyring", 120, "Invalid keystore");
|
|
617
618
|
}
|
|
618
619
|
this.keyStore = keyStore;
|
|
619
620
|
yield this.unlock(this.password);
|
|
@@ -642,7 +643,7 @@ class KeyRing {
|
|
|
642
643
|
}
|
|
643
644
|
checkPassword(password) {
|
|
644
645
|
if (!this.password) {
|
|
645
|
-
throw new
|
|
646
|
+
throw new router_1.KeplrError("keyring", 100, "Keyring is locked");
|
|
646
647
|
}
|
|
647
648
|
return this.password === password;
|
|
648
649
|
}
|
|
@@ -650,10 +651,10 @@ class KeyRing {
|
|
|
650
651
|
var _a, _b, _c, _d, _e;
|
|
651
652
|
return __awaiter(this, void 0, void 0, function* () {
|
|
652
653
|
if (!this.password) {
|
|
653
|
-
throw new
|
|
654
|
+
throw new router_1.KeplrError("keyring", 100, "Keyring is locked");
|
|
654
655
|
}
|
|
655
656
|
if (this.password !== password) {
|
|
656
|
-
throw new
|
|
657
|
+
throw new router_1.KeplrError("keyring", 121, "Invalid password");
|
|
657
658
|
}
|
|
658
659
|
const result = [];
|
|
659
660
|
for (const keyStore of this.multiKeyStore) {
|
|
@@ -721,7 +722,7 @@ class KeyRing {
|
|
|
721
722
|
var _a;
|
|
722
723
|
const id = (_a = keyStore.meta) === null || _a === void 0 ? void 0 : _a.__id__;
|
|
723
724
|
if (!id) {
|
|
724
|
-
throw new
|
|
725
|
+
throw new router_1.KeplrError("keyring", 131, "Key store's id is empty");
|
|
725
726
|
}
|
|
726
727
|
return id;
|
|
727
728
|
}
|
|
@@ -738,15 +739,15 @@ class KeyRing {
|
|
|
738
739
|
}
|
|
739
740
|
static validateBIP44Path(bip44Path) {
|
|
740
741
|
if (!Number.isInteger(bip44Path.account) || bip44Path.account < 0) {
|
|
741
|
-
throw new
|
|
742
|
+
throw new router_1.KeplrError("keyring", 100, "Invalid account in hd path");
|
|
742
743
|
}
|
|
743
744
|
if (!Number.isInteger(bip44Path.change) ||
|
|
744
745
|
!(bip44Path.change === 0 || bip44Path.change === 1)) {
|
|
745
|
-
throw new
|
|
746
|
+
throw new router_1.KeplrError("keyring", 102, "Invalid change in hd path");
|
|
746
747
|
}
|
|
747
748
|
if (!Number.isInteger(bip44Path.addressIndex) ||
|
|
748
749
|
bip44Path.addressIndex < 0) {
|
|
749
|
-
throw new
|
|
750
|
+
throw new router_1.KeplrError("keyring", 101, "Invalid address index in hd path");
|
|
750
751
|
}
|
|
751
752
|
}
|
|
752
753
|
getIncrementalNumber() {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"keyring.js","sourceRoot":"","sources":["../../src/keyring/keyring.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"keyring.js","sourceRoot":"","sources":["../../src/keyring/keyring.ts"],"names":[],"mappings":"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"}
|