@shapeshiftoss/hdwallet-keplr 1.55.2 → 1.55.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/dist/adapter.js +19 -56
- package/dist/adapter.js.map +1 -1
- package/dist/cosmos.js +23 -67
- package/dist/cosmos.js.map +1 -1
- package/dist/index.js +2 -18
- package/dist/index.js.map +1 -1
- package/dist/keplr.js +96 -184
- package/dist/keplr.js.map +1 -1
- package/dist/osmosis.js +23 -67
- package/dist/osmosis.js.map +1 -1
- package/package.json +3 -3
- package/tsconfig.tsbuildinfo +1 -1
package/dist/adapter.js
CHANGED
|
@@ -1,66 +1,29 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
-
}) : function(o, v) {
|
|
16
|
-
o["default"] = v;
|
|
17
|
-
});
|
|
18
|
-
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
-
if (mod && mod.__esModule) return mod;
|
|
20
|
-
var result = {};
|
|
21
|
-
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
-
__setModuleDefault(result, mod);
|
|
23
|
-
return result;
|
|
24
|
-
};
|
|
25
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
26
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
27
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
28
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
29
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
30
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
31
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
32
|
-
});
|
|
33
|
-
};
|
|
34
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
35
|
-
exports.KeplrAdapter = void 0;
|
|
36
|
-
const core = __importStar(require("@shapeshiftoss/hdwallet-core"));
|
|
37
|
-
const keplr_1 = require("./keplr");
|
|
38
|
-
class KeplrAdapter {
|
|
1
|
+
import * as core from "@shapeshiftoss/hdwallet-core";
|
|
2
|
+
import { KeplrHDWallet } from "./keplr";
|
|
3
|
+
export class KeplrAdapter {
|
|
4
|
+
keyring;
|
|
5
|
+
// wallet id to remove from the keyring when the active wallet changes
|
|
6
|
+
currentDeviceID;
|
|
39
7
|
constructor(keyring) {
|
|
40
8
|
this.keyring = keyring;
|
|
41
9
|
}
|
|
42
10
|
static useKeyring(keyring) {
|
|
43
11
|
return new KeplrAdapter(keyring);
|
|
44
12
|
}
|
|
45
|
-
initialize() {
|
|
46
|
-
return
|
|
47
|
-
return Object.keys(this.keyring.wallets).length;
|
|
48
|
-
});
|
|
13
|
+
async initialize() {
|
|
14
|
+
return Object.keys(this.keyring.wallets).length;
|
|
49
15
|
}
|
|
50
|
-
pairDevice() {
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
return wallet;
|
|
62
|
-
});
|
|
16
|
+
async pairDevice() {
|
|
17
|
+
if (!window.getOfflineSigner || !window.keplr) {
|
|
18
|
+
console.error("Please install Keplr Extension!");
|
|
19
|
+
}
|
|
20
|
+
const wallet = new KeplrHDWallet();
|
|
21
|
+
await wallet.initialize();
|
|
22
|
+
const deviceID = await wallet.getDeviceID();
|
|
23
|
+
this.keyring.add(wallet, deviceID);
|
|
24
|
+
this.currentDeviceID = deviceID;
|
|
25
|
+
this.keyring.emit(["Keplr", deviceID, core.Events.CONNECT], deviceID);
|
|
26
|
+
return wallet;
|
|
63
27
|
}
|
|
64
28
|
}
|
|
65
|
-
exports.KeplrAdapter = KeplrAdapter;
|
|
66
29
|
//# sourceMappingURL=adapter.js.map
|
package/dist/adapter.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"adapter.js","sourceRoot":"","sources":["../src/adapter.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"adapter.js","sourceRoot":"","sources":["../src/adapter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,IAAI,MAAM,8BAA8B,CAAC;AAErD,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAExC,MAAM,OAAO,YAAY;IACvB,OAAO,CAAe;IAEtB,sEAAsE;IACtE,eAAe,CAAU;IAEzB,YAAoB,OAAqB;QACvC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;IAEM,MAAM,CAAC,UAAU,CAAC,OAAqB;QAC5C,OAAO,IAAI,YAAY,CAAC,OAAO,CAAC,CAAC;IACnC,CAAC;IAEM,KAAK,CAAC,UAAU;QACrB,OAAO,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC;IAClD,CAAC;IAEM,KAAK,CAAC,UAAU;QACrB,IAAI,CAAC,MAAM,CAAC,gBAAgB,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;YAC9C,OAAO,CAAC,KAAK,CAAC,iCAAiC,CAAC,CAAC;QACnD,CAAC;QACD,MAAM,MAAM,GAAG,IAAI,aAAa,EAAE,CAAC;QACnC,MAAM,MAAM,CAAC,UAAU,EAAE,CAAC;QAC1B,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,WAAW,EAAE,CAAC;QAC5C,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;QACnC,IAAI,CAAC,eAAe,GAAG,QAAQ,CAAC;QAChC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,QAAQ,CAAC,CAAC;QAEtE,OAAO,MAAM,CAAC;IAChB,CAAC;CACF"}
|
package/dist/cosmos.js
CHANGED
|
@@ -1,43 +1,8 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
-
}) : function(o, v) {
|
|
16
|
-
o["default"] = v;
|
|
17
|
-
});
|
|
18
|
-
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
-
if (mod && mod.__esModule) return mod;
|
|
20
|
-
var result = {};
|
|
21
|
-
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
-
__setModuleDefault(result, mod);
|
|
23
|
-
return result;
|
|
24
|
-
};
|
|
25
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
26
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
27
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
28
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
29
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
30
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
31
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
32
|
-
});
|
|
33
|
-
};
|
|
34
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
35
|
-
exports.cosmosSignTx = exports.cosmosGetAddress = exports.cosmosGetAccountPaths = exports.cosmosDescribePath = void 0;
|
|
36
|
-
const caip_1 = require("@shapeshiftoss/caip");
|
|
37
|
-
const core = __importStar(require("@shapeshiftoss/hdwallet-core"));
|
|
38
|
-
const hdwallet_core_1 = require("@shapeshiftoss/hdwallet-core");
|
|
39
|
-
const proto_tx_builder_1 = require("@shapeshiftoss/proto-tx-builder");
|
|
40
|
-
function cosmosDescribePath(path) {
|
|
1
|
+
import { CHAIN_REFERENCE } from "@shapeshiftoss/caip";
|
|
2
|
+
import * as core from "@shapeshiftoss/hdwallet-core";
|
|
3
|
+
import { slip44ByCoin, } from "@shapeshiftoss/hdwallet-core";
|
|
4
|
+
import { sign } from "@shapeshiftoss/proto-tx-builder";
|
|
5
|
+
export function cosmosDescribePath(path) {
|
|
41
6
|
const pathStr = core.addressNListToBIP32(path);
|
|
42
7
|
const unknown = {
|
|
43
8
|
verbose: pathStr,
|
|
@@ -50,7 +15,7 @@ function cosmosDescribePath(path) {
|
|
|
50
15
|
if (path[0] != 0x80000000 + 44) {
|
|
51
16
|
return unknown;
|
|
52
17
|
}
|
|
53
|
-
if (path[1] != 0x80000000 +
|
|
18
|
+
if (path[1] != 0x80000000 + slip44ByCoin("Atom")) {
|
|
54
19
|
return unknown;
|
|
55
20
|
}
|
|
56
21
|
if ((path[2] & 0x80000000) >>> 0 !== 0x80000000) {
|
|
@@ -69,39 +34,30 @@ function cosmosDescribePath(path) {
|
|
|
69
34
|
isPrefork: false,
|
|
70
35
|
};
|
|
71
36
|
}
|
|
72
|
-
|
|
73
|
-
function cosmosGetAccountPaths(msg) {
|
|
37
|
+
export function cosmosGetAccountPaths(msg) {
|
|
74
38
|
return [
|
|
75
39
|
{
|
|
76
|
-
addressNList: [0x80000000 + 44, 0x80000000 +
|
|
40
|
+
addressNList: [0x80000000 + 44, 0x80000000 + slip44ByCoin("Atom"), 0x80000000 + msg.accountIdx, 0, 0],
|
|
77
41
|
},
|
|
78
42
|
];
|
|
79
43
|
}
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
return
|
|
84
|
-
const offlineSigner = provider.getOfflineSigner(caip_1.CHAIN_REFERENCE.CosmosHubMainnet);
|
|
85
|
-
const cosmosAddress = (_b = (_a = (yield (offlineSigner === null || offlineSigner === void 0 ? void 0 : offlineSigner.getAccounts()))) === null || _a === void 0 ? void 0 : _a[0]) === null || _b === void 0 ? void 0 : _b.address;
|
|
86
|
-
return cosmosAddress;
|
|
87
|
-
});
|
|
44
|
+
export async function cosmosGetAddress(provider) {
|
|
45
|
+
const offlineSigner = provider.getOfflineSigner(CHAIN_REFERENCE.CosmosHubMainnet);
|
|
46
|
+
const cosmosAddress = (await offlineSigner?.getAccounts())?.[0]?.address;
|
|
47
|
+
return cosmosAddress;
|
|
88
48
|
}
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
};
|
|
101
|
-
return yield (0, proto_tx_builder_1.sign)(address, msg.tx, offlineSigner, signerData);
|
|
102
|
-
});
|
|
49
|
+
export async function cosmosSignTx(provider, msg) {
|
|
50
|
+
const offlineSigner = provider.getOfflineSigner(CHAIN_REFERENCE.CosmosHubMainnet);
|
|
51
|
+
const address = await cosmosGetAddress(provider);
|
|
52
|
+
if (!address)
|
|
53
|
+
throw new Error("failed to get address");
|
|
54
|
+
const signerData = {
|
|
55
|
+
sequence: Number(msg.sequence),
|
|
56
|
+
accountNumber: Number(msg.account_number),
|
|
57
|
+
chainId: msg.chain_id,
|
|
58
|
+
};
|
|
59
|
+
return await sign(address, msg.tx, offlineSigner, signerData);
|
|
103
60
|
}
|
|
104
|
-
exports.cosmosSignTx = cosmosSignTx;
|
|
105
61
|
/**
|
|
106
62
|
* @todo: Add support for sign/verify message see documentation at:
|
|
107
63
|
* https://github.com/chainapsis/keplr-wallet/blob/fbbc0b6d8eb4859a1663988d1bd90f07c9b74708/docs/api/README.md
|
package/dist/cosmos.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cosmos.js","sourceRoot":"","sources":["../src/cosmos.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"cosmos.js","sourceRoot":"","sources":["../src/cosmos.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -1,19 +1,3 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
-
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
-
};
|
|
16
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
-
__exportStar(require("./adapter"), exports);
|
|
18
|
-
__exportStar(require("./keplr"), exports);
|
|
1
|
+
export * from "./adapter";
|
|
2
|
+
export * from "./keplr";
|
|
19
3
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAC;AAC1B,cAAc,SAAS,CAAC"}
|
package/dist/keplr.js
CHANGED
|
@@ -1,66 +1,23 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
-
}) : function(o, v) {
|
|
16
|
-
o["default"] = v;
|
|
17
|
-
});
|
|
18
|
-
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
-
if (mod && mod.__esModule) return mod;
|
|
20
|
-
var result = {};
|
|
21
|
-
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
-
__setModuleDefault(result, mod);
|
|
23
|
-
return result;
|
|
24
|
-
};
|
|
25
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
26
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
27
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
28
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
29
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
30
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
31
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
32
|
-
});
|
|
33
|
-
};
|
|
34
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
35
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
36
|
-
};
|
|
37
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
38
|
-
exports.KeplrHDWallet = exports.KeplrHDWalletInfo = exports.isKeplr = void 0;
|
|
39
|
-
const caip_1 = require("@shapeshiftoss/caip");
|
|
40
|
-
const core = __importStar(require("@shapeshiftoss/hdwallet-core"));
|
|
41
|
-
const isObject_1 = __importDefault(require("lodash/isObject"));
|
|
42
|
-
const cosmos = __importStar(require("./cosmos"));
|
|
43
|
-
const osmosis = __importStar(require("./osmosis"));
|
|
1
|
+
import { CHAIN_REFERENCE } from "@shapeshiftoss/caip";
|
|
2
|
+
import * as core from "@shapeshiftoss/hdwallet-core";
|
|
3
|
+
import isObject from "lodash/isObject";
|
|
4
|
+
import * as cosmos from "./cosmos";
|
|
5
|
+
import * as osmosis from "./osmosis";
|
|
44
6
|
class KeplrTransport extends core.Transport {
|
|
45
|
-
getDeviceID() {
|
|
46
|
-
return
|
|
47
|
-
return "keplr:0";
|
|
48
|
-
});
|
|
7
|
+
async getDeviceID() {
|
|
8
|
+
return "keplr:0";
|
|
49
9
|
}
|
|
50
10
|
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
51
11
|
call(...args) {
|
|
52
12
|
return Promise.resolve();
|
|
53
13
|
}
|
|
54
14
|
}
|
|
55
|
-
function isKeplr(wallet) {
|
|
56
|
-
return (
|
|
15
|
+
export function isKeplr(wallet) {
|
|
16
|
+
return isObject(wallet) && wallet._isKeplr;
|
|
57
17
|
}
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
this._supportsCosmosInfo = true;
|
|
62
|
-
this._supportsOsmosisInfo = true;
|
|
63
|
-
}
|
|
18
|
+
export class KeplrHDWalletInfo {
|
|
19
|
+
_supportsCosmosInfo = true;
|
|
20
|
+
_supportsOsmosisInfo = true;
|
|
64
21
|
getVendor() {
|
|
65
22
|
return "Keplr";
|
|
66
23
|
}
|
|
@@ -99,15 +56,11 @@ class KeplrHDWalletInfo {
|
|
|
99
56
|
throw new Error("Unsupported path");
|
|
100
57
|
}
|
|
101
58
|
}
|
|
102
|
-
cosmosSupportsNetwork(chainId = 118) {
|
|
103
|
-
return
|
|
104
|
-
return chainId === 118;
|
|
105
|
-
});
|
|
59
|
+
async cosmosSupportsNetwork(chainId = 118) {
|
|
60
|
+
return chainId === 118;
|
|
106
61
|
}
|
|
107
|
-
cosmosSupportsSecureTransfer() {
|
|
108
|
-
return
|
|
109
|
-
return false;
|
|
110
|
-
});
|
|
62
|
+
async cosmosSupportsSecureTransfer() {
|
|
63
|
+
return false;
|
|
111
64
|
}
|
|
112
65
|
cosmosSupportsNativeShapeShift() {
|
|
113
66
|
return false;
|
|
@@ -120,15 +73,11 @@ class KeplrHDWalletInfo {
|
|
|
120
73
|
// TODO: What do we do here?
|
|
121
74
|
return undefined;
|
|
122
75
|
}
|
|
123
|
-
osmosisSupportsNetwork(chainId = 1) {
|
|
124
|
-
return
|
|
125
|
-
return chainId === 1;
|
|
126
|
-
});
|
|
76
|
+
async osmosisSupportsNetwork(chainId = 1) {
|
|
77
|
+
return chainId === 1;
|
|
127
78
|
}
|
|
128
|
-
osmosisSupportsSecureTransfer() {
|
|
129
|
-
return
|
|
130
|
-
return false;
|
|
131
|
-
});
|
|
79
|
+
async osmosisSupportsSecureTransfer() {
|
|
80
|
+
return false;
|
|
132
81
|
}
|
|
133
82
|
osmosisSupportsNativeShapeShift() {
|
|
134
83
|
return false;
|
|
@@ -141,29 +90,25 @@ class KeplrHDWalletInfo {
|
|
|
141
90
|
return undefined;
|
|
142
91
|
}
|
|
143
92
|
}
|
|
144
|
-
|
|
145
|
-
|
|
93
|
+
export class KeplrHDWallet {
|
|
94
|
+
_isKeplr = true;
|
|
95
|
+
_supportsCosmos = true;
|
|
96
|
+
_supportsCosmosInfo = true;
|
|
97
|
+
_supportsOsmosis = true;
|
|
98
|
+
_supportsOsmosisInfo = true;
|
|
99
|
+
transport = new KeplrTransport(new core.Keyring());
|
|
100
|
+
info;
|
|
101
|
+
initialized = false;
|
|
102
|
+
provider = {};
|
|
103
|
+
supportedNetworks = [CHAIN_REFERENCE.CosmosHubMainnet];
|
|
146
104
|
constructor() {
|
|
147
|
-
this._isKeplr = true;
|
|
148
|
-
this._supportsCosmos = true;
|
|
149
|
-
this._supportsCosmosInfo = true;
|
|
150
|
-
this._supportsOsmosis = true;
|
|
151
|
-
this._supportsOsmosisInfo = true;
|
|
152
|
-
this.transport = new KeplrTransport(new core.Keyring());
|
|
153
|
-
this.initialized = false;
|
|
154
|
-
this.provider = {};
|
|
155
|
-
this.supportedNetworks = [caip_1.CHAIN_REFERENCE.CosmosHubMainnet];
|
|
156
105
|
this.info = new KeplrHDWalletInfo();
|
|
157
106
|
}
|
|
158
|
-
getFeatures() {
|
|
159
|
-
return
|
|
160
|
-
return {};
|
|
161
|
-
});
|
|
107
|
+
async getFeatures() {
|
|
108
|
+
return {};
|
|
162
109
|
}
|
|
163
|
-
isLocked() {
|
|
164
|
-
return
|
|
165
|
-
return this.provider.isLocked();
|
|
166
|
-
});
|
|
110
|
+
async isLocked() {
|
|
111
|
+
return this.provider.isLocked();
|
|
167
112
|
}
|
|
168
113
|
getVendor() {
|
|
169
114
|
return "Keplr";
|
|
@@ -174,26 +119,24 @@ class KeplrHDWallet {
|
|
|
174
119
|
getLabel() {
|
|
175
120
|
return Promise.resolve("Keplr");
|
|
176
121
|
}
|
|
177
|
-
initialize(networks = []) {
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
throw new Error("Keplr extension not installed.");
|
|
182
|
-
}
|
|
183
|
-
this.provider = window.keplr;
|
|
184
|
-
/** Initialize Keplr Wallet with all supported chains by default
|
|
185
|
-
* or the subset of supported chains passed in the call to initialize() */
|
|
186
|
-
yield this.provider.enable(networks.length ? networks : this.supportedNetworks);
|
|
187
|
-
return Promise.resolve();
|
|
122
|
+
async initialize(networks = []) {
|
|
123
|
+
try {
|
|
124
|
+
if (!window.keplr) {
|
|
125
|
+
throw new Error("Keplr extension not installed.");
|
|
188
126
|
}
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
127
|
+
this.provider = window.keplr;
|
|
128
|
+
/** Initialize Keplr Wallet with all supported chains by default
|
|
129
|
+
* or the subset of supported chains passed in the call to initialize() */
|
|
130
|
+
await this.provider.enable(networks.length ? networks : this.supportedNetworks);
|
|
131
|
+
return Promise.resolve();
|
|
132
|
+
}
|
|
133
|
+
catch (error) {
|
|
134
|
+
/**
|
|
135
|
+
* @todo Use logger instead of console.error()
|
|
136
|
+
*/
|
|
137
|
+
console.error(error);
|
|
138
|
+
throw new Error("Error initializing Keplr");
|
|
139
|
+
}
|
|
197
140
|
}
|
|
198
141
|
hasOnDevicePinEntry() {
|
|
199
142
|
return this.info.hasOnDevicePinEntry();
|
|
@@ -219,10 +162,8 @@ class KeplrHDWallet {
|
|
|
219
162
|
supportsBroadcast() {
|
|
220
163
|
return true;
|
|
221
164
|
}
|
|
222
|
-
clearSession() {
|
|
223
|
-
|
|
224
|
-
// TODO: Can we lock Keplr from here?
|
|
225
|
-
});
|
|
165
|
+
async clearSession() {
|
|
166
|
+
// TODO: Can we lock Keplr from here?
|
|
226
167
|
}
|
|
227
168
|
ping(msg) {
|
|
228
169
|
// no ping function for Keplr, so just returning Core.Pong
|
|
@@ -275,35 +216,27 @@ class KeplrHDWallet {
|
|
|
275
216
|
return this.info.describePath(msg);
|
|
276
217
|
}
|
|
277
218
|
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
278
|
-
getPublicKeys(msg, chainId =
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
isInitialized() {
|
|
291
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
292
|
-
return this.initialized;
|
|
293
|
-
});
|
|
219
|
+
async getPublicKeys(msg, chainId = CHAIN_REFERENCE.CosmosHubMainnet) {
|
|
220
|
+
if (!this.supportedNetworks.includes(chainId)) {
|
|
221
|
+
throw new Error(`Unsupported chainId: ${chainId}`);
|
|
222
|
+
}
|
|
223
|
+
const keys = [];
|
|
224
|
+
await this.provider.enable(chainId);
|
|
225
|
+
const offlineSigner = this.provider.getOfflineSigner(chainId);
|
|
226
|
+
keys.push({ xpub: Buffer.from((await offlineSigner.getAccounts())[0].pubkey).toString() });
|
|
227
|
+
return keys;
|
|
228
|
+
}
|
|
229
|
+
async isInitialized() {
|
|
230
|
+
return this.initialized;
|
|
294
231
|
}
|
|
295
232
|
disconnect() {
|
|
296
233
|
return Promise.resolve();
|
|
297
234
|
}
|
|
298
|
-
cosmosSupportsNetwork(chainId = 118) {
|
|
299
|
-
return
|
|
300
|
-
return chainId === 118;
|
|
301
|
-
});
|
|
235
|
+
async cosmosSupportsNetwork(chainId = 118) {
|
|
236
|
+
return chainId === 118;
|
|
302
237
|
}
|
|
303
|
-
cosmosSupportsSecureTransfer() {
|
|
304
|
-
return
|
|
305
|
-
return false;
|
|
306
|
-
});
|
|
238
|
+
async cosmosSupportsSecureTransfer() {
|
|
239
|
+
return false;
|
|
307
240
|
}
|
|
308
241
|
cosmosSupportsNativeShapeShift() {
|
|
309
242
|
return false;
|
|
@@ -315,32 +248,22 @@ class KeplrHDWallet {
|
|
|
315
248
|
return this.info.cosmosNextAccountPath(msg);
|
|
316
249
|
}
|
|
317
250
|
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
318
|
-
cosmosGetAddress() {
|
|
319
|
-
return
|
|
320
|
-
return (yield cosmos.cosmosGetAddress(this.provider)) || null;
|
|
321
|
-
});
|
|
251
|
+
async cosmosGetAddress() {
|
|
252
|
+
return (await cosmos.cosmosGetAddress(this.provider)) || null;
|
|
322
253
|
}
|
|
323
|
-
cosmosSignTx(msg) {
|
|
324
|
-
return
|
|
325
|
-
return cosmos.cosmosSignTx(this.provider, msg);
|
|
326
|
-
});
|
|
254
|
+
async cosmosSignTx(msg) {
|
|
255
|
+
return cosmos.cosmosSignTx(this.provider, msg);
|
|
327
256
|
}
|
|
328
257
|
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
329
|
-
cosmosSendTx(msg) {
|
|
330
|
-
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
|
|
336
|
-
|
|
337
|
-
|
|
338
|
-
});
|
|
339
|
-
}
|
|
340
|
-
osmosisSupportsSecureTransfer() {
|
|
341
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
342
|
-
return false;
|
|
343
|
-
});
|
|
258
|
+
async cosmosSendTx(msg) {
|
|
259
|
+
/** Broadcast from Keplr is currently unimplemented */
|
|
260
|
+
return null;
|
|
261
|
+
}
|
|
262
|
+
async osmosisSupportsNetwork(chainId = 118) {
|
|
263
|
+
return chainId === 118;
|
|
264
|
+
}
|
|
265
|
+
async osmosisSupportsSecureTransfer() {
|
|
266
|
+
return false;
|
|
344
267
|
}
|
|
345
268
|
osmosisSupportsNativeShapeShift() {
|
|
346
269
|
return false;
|
|
@@ -352,33 +275,22 @@ class KeplrHDWallet {
|
|
|
352
275
|
return this.info.osmosisNextAccountPath(msg);
|
|
353
276
|
}
|
|
354
277
|
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
355
|
-
osmosisGetAddress() {
|
|
356
|
-
return
|
|
357
|
-
return (yield osmosis.osmosisGetAddress(this.provider)) || null;
|
|
358
|
-
});
|
|
278
|
+
async osmosisGetAddress() {
|
|
279
|
+
return (await osmosis.osmosisGetAddress(this.provider)) || null;
|
|
359
280
|
}
|
|
360
|
-
osmosisSignTx(msg) {
|
|
361
|
-
return
|
|
362
|
-
return osmosis.osmosisSignTx(this.provider, msg);
|
|
363
|
-
});
|
|
281
|
+
async osmosisSignTx(msg) {
|
|
282
|
+
return osmosis.osmosisSignTx(this.provider, msg);
|
|
364
283
|
}
|
|
365
284
|
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
366
|
-
osmosisSendTx(msg) {
|
|
367
|
-
|
|
368
|
-
|
|
369
|
-
|
|
370
|
-
|
|
371
|
-
|
|
372
|
-
|
|
373
|
-
|
|
374
|
-
|
|
375
|
-
});
|
|
376
|
-
}
|
|
377
|
-
getFirmwareVersion() {
|
|
378
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
379
|
-
return "keplr";
|
|
380
|
-
});
|
|
285
|
+
async osmosisSendTx(msg) {
|
|
286
|
+
/** Broadcast from Keplr is currently unimplemented */
|
|
287
|
+
return null;
|
|
288
|
+
}
|
|
289
|
+
async getDeviceID() {
|
|
290
|
+
return "keplr:" + (await this.cosmosGetAddress());
|
|
291
|
+
}
|
|
292
|
+
async getFirmwareVersion() {
|
|
293
|
+
return "keplr";
|
|
381
294
|
}
|
|
382
295
|
}
|
|
383
|
-
exports.KeplrHDWallet = KeplrHDWallet;
|
|
384
296
|
//# sourceMappingURL=keplr.js.map
|