@shapeshiftoss/hdwallet-keepkey 1.62.39 → 1.62.42
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/LICENSE.md +6 -6
- package/dist/cjs/.tsbuildinfo +1 -0
- package/dist/{adapter.d.ts → cjs/adapter.d.ts} +6 -7
- package/dist/cjs/adapter.js +146 -0
- package/dist/{binance.d.ts → cjs/binance.d.ts} +3 -4
- package/dist/cjs/binance.js +144 -0
- package/dist/{bitcoin.d.ts → cjs/bitcoin.d.ts} +3 -4
- package/dist/cjs/bitcoin.js +549 -0
- package/dist/{bnbencoding.d.ts → cjs/bnbencoding.d.ts} +3 -2
- package/dist/{bnbencoding.js → cjs/bnbencoding.js} +22 -22
- package/dist/{cosmos.d.ts → cjs/cosmos.d.ts} +4 -5
- package/dist/cjs/cosmos.js +219 -0
- package/dist/{eos.d.ts → cjs/eos.d.ts} +3 -4
- package/dist/cjs/eos.js +244 -0
- package/dist/{ethereum.d.ts → cjs/ethereum.d.ts} +4 -5
- package/dist/cjs/ethereum.js +264 -0
- package/dist/cjs/index.d.ts +5 -0
- package/dist/{index.js → cjs/index.js} +0 -1
- package/dist/{keepkey.d.ts → cjs/keepkey.d.ts} +45 -20
- package/dist/cjs/keepkey.js +959 -0
- package/dist/{mayachain.d.ts → cjs/mayachain.d.ts} +4 -5
- package/dist/cjs/mayachain.js +169 -0
- package/dist/{osmosis.d.ts → cjs/osmosis.d.ts} +4 -5
- package/dist/cjs/osmosis.js +270 -0
- package/dist/cjs/package.json +1 -0
- package/dist/{ripple.d.ts → cjs/ripple.d.ts} +3 -4
- package/dist/cjs/ripple.js +104 -0
- package/dist/{thorchain.d.ts → cjs/thorchain.d.ts} +4 -5
- package/dist/cjs/thorchain.js +169 -0
- package/dist/{transport.d.ts → cjs/transport.d.ts} +2 -3
- package/dist/cjs/transport.js +333 -0
- package/dist/{typeRegistry.d.ts → cjs/typeRegistry.d.ts} +2 -3
- package/dist/{typeRegistry.js → cjs/typeRegistry.js} +26 -13
- package/dist/{utils.d.ts → cjs/utils.d.ts} +1 -2
- package/dist/{utils.js → cjs/utils.js} +7 -8
- package/dist/esm/.tsbuildinfo +1 -0
- package/dist/esm/adapter.d.ts +35 -0
- package/dist/esm/adapter.js +119 -0
- package/dist/esm/binance.d.ts +5 -0
- package/dist/esm/binance.js +112 -0
- package/dist/esm/bitcoin.d.ts +11 -0
- package/dist/esm/bitcoin.js +511 -0
- package/dist/esm/bnbencoding.d.ts +11 -0
- package/dist/esm/bnbencoding.js +103 -0
- package/dist/esm/cosmos.d.ts +6 -0
- package/dist/esm/cosmos.js +187 -0
- package/dist/esm/eos.d.ts +5 -0
- package/dist/esm/eos.js +212 -0
- package/dist/esm/ethereum.d.ts +17 -0
- package/dist/esm/ethereum.js +229 -0
- package/dist/esm/index.d.ts +5 -0
- package/dist/esm/index.js +5 -0
- package/dist/esm/keepkey.d.ts +177 -0
- package/dist/esm/keepkey.js +925 -0
- package/dist/esm/mayachain.d.ts +6 -0
- package/dist/esm/mayachain.js +137 -0
- package/dist/esm/osmosis.d.ts +6 -0
- package/dist/esm/osmosis.js +238 -0
- package/dist/esm/ripple.d.ts +5 -0
- package/dist/esm/ripple.js +72 -0
- package/dist/esm/thorchain.d.ts +6 -0
- package/dist/esm/thorchain.js +137 -0
- package/dist/esm/transport.d.ts +55 -0
- package/dist/esm/transport.js +306 -0
- package/dist/esm/typeRegistry.d.ts +4 -0
- package/dist/esm/typeRegistry.js +47 -0
- package/dist/esm/utils.d.ts +6 -0
- package/dist/esm/utils.js +56 -0
- package/package.json +33 -19
- package/dist/adapter.d.ts.map +0 -1
- package/dist/adapter.js +0 -175
- package/dist/adapter.js.map +0 -1
- package/dist/binance.d.ts.map +0 -1
- package/dist/binance.js +0 -146
- package/dist/binance.js.map +0 -1
- package/dist/bitcoin.d.ts.map +0 -1
- package/dist/bitcoin.js +0 -568
- package/dist/bitcoin.js.map +0 -1
- package/dist/bnbencoding.d.ts.map +0 -1
- package/dist/bnbencoding.js.map +0 -1
- package/dist/cosmos.d.ts.map +0 -1
- package/dist/cosmos.js +0 -230
- package/dist/cosmos.js.map +0 -1
- package/dist/eos.d.ts.map +0 -1
- package/dist/eos.js +0 -247
- package/dist/eos.js.map +0 -1
- package/dist/ethereum.d.ts.map +0 -1
- package/dist/ethereum.js +0 -281
- package/dist/ethereum.js.map +0 -1
- package/dist/index.d.ts +0 -6
- package/dist/index.d.ts.map +0 -1
- package/dist/index.js.map +0 -1
- package/dist/keepkey.d.ts.map +0 -1
- package/dist/keepkey.js +0 -1027
- package/dist/keepkey.js.map +0 -1
- package/dist/mayachain.d.ts.map +0 -1
- package/dist/mayachain.js +0 -180
- package/dist/mayachain.js.map +0 -1
- package/dist/osmosis.d.ts.map +0 -1
- package/dist/osmosis.js +0 -278
- package/dist/osmosis.js.map +0 -1
- package/dist/ripple.d.ts.map +0 -1
- package/dist/ripple.js +0 -111
- package/dist/ripple.js.map +0 -1
- package/dist/thorchain.d.ts.map +0 -1
- package/dist/thorchain.js +0 -180
- package/dist/thorchain.js.map +0 -1
- package/dist/transport.d.ts.map +0 -1
- package/dist/transport.js +0 -365
- package/dist/transport.js.map +0 -1
- package/dist/typeRegistry.d.ts.map +0 -1
- package/dist/typeRegistry.js.map +0 -1
- package/dist/utils.d.ts.map +0 -1
- package/dist/utils.js.map +0 -1
package/dist/ripple.js
DELETED
|
@@ -1,111 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
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 __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.rippleGetAccountPaths = rippleGetAccountPaths;
|
|
39
|
-
exports.rippleSignTx = rippleSignTx;
|
|
40
|
-
exports.rippleGetAddress = rippleGetAddress;
|
|
41
|
-
const Messages = __importStar(require("@keepkey/device-protocol/lib/messages_pb"));
|
|
42
|
-
const RippleMessages = __importStar(require("@keepkey/device-protocol/lib/messages-ripple_pb"));
|
|
43
|
-
const core = __importStar(require("@shapeshiftoss/hdwallet-core"));
|
|
44
|
-
const cloneDeep_1 = __importDefault(require("lodash/cloneDeep"));
|
|
45
|
-
function rippleGetAccountPaths(msg) {
|
|
46
|
-
return [
|
|
47
|
-
{
|
|
48
|
-
addressNList: [0x80000000 + 44, 0x80000000 + core.slip44ByCoin("Ripple"), 0x80000000 + msg.accountIdx, 0, 0],
|
|
49
|
-
},
|
|
50
|
-
];
|
|
51
|
-
}
|
|
52
|
-
function rippleSignTx(transport, msg) {
|
|
53
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
54
|
-
return transport.lockDuring(() => __awaiter(this, void 0, void 0, function* () {
|
|
55
|
-
const signTx = new RippleMessages.RippleSignTx();
|
|
56
|
-
signTx.setAddressNList(msg.addressNList);
|
|
57
|
-
signTx.setFee(parseInt(msg.tx.value.fee.amount[0].amount));
|
|
58
|
-
signTx.setSequence(parseInt(msg.sequence));
|
|
59
|
-
signTx.setLastLedgerSequence(parseInt(msg.lastLedgerSequence));
|
|
60
|
-
const payment = new RippleMessages.RipplePayment();
|
|
61
|
-
payment.setAmount(parseInt(msg.payment.amount));
|
|
62
|
-
payment.setDestination(msg.payment.destination);
|
|
63
|
-
if (msg.payment.destinationTag !== undefined)
|
|
64
|
-
payment.setDestinationTag(parseInt(msg.payment.destinationTag));
|
|
65
|
-
signTx.setPayment(payment);
|
|
66
|
-
const resp = yield transport.call(Messages.MessageType.MESSAGETYPE_RIPPLESIGNTX, signTx, {
|
|
67
|
-
msgTimeout: core.LONG_TIMEOUT,
|
|
68
|
-
omitLock: true,
|
|
69
|
-
});
|
|
70
|
-
for (const m of msg.tx.value.msg) {
|
|
71
|
-
if (m.type === "ripple-sdk/MsgSend") {
|
|
72
|
-
if (m.value.amount.length !== 1) {
|
|
73
|
-
throw new Error("ripple: Multiple amounts per msg not supported");
|
|
74
|
-
}
|
|
75
|
-
const denom = m.value.amount[0].denom;
|
|
76
|
-
if (denom !== "drop") {
|
|
77
|
-
throw new Error("ripple: Unsupported denomination: " + denom);
|
|
78
|
-
}
|
|
79
|
-
}
|
|
80
|
-
else {
|
|
81
|
-
throw new Error(`ripple: Message ${m.type} is not yet supported`);
|
|
82
|
-
}
|
|
83
|
-
}
|
|
84
|
-
if (resp.message_enum !== Messages.MessageType.MESSAGETYPE_RIPPLESIGNEDTX) {
|
|
85
|
-
throw new Error(`ripple: unexpected response ${resp.message_type}`);
|
|
86
|
-
}
|
|
87
|
-
const signedTx = resp.proto;
|
|
88
|
-
const signed = (0, cloneDeep_1.default)(msg.tx);
|
|
89
|
-
signed.value.signatures = [
|
|
90
|
-
{
|
|
91
|
-
serializedTx: signedTx.getSerializedTx_asB64(),
|
|
92
|
-
signature: signedTx.getSignature_asB64(),
|
|
93
|
-
},
|
|
94
|
-
];
|
|
95
|
-
return signed;
|
|
96
|
-
}));
|
|
97
|
-
});
|
|
98
|
-
}
|
|
99
|
-
function rippleGetAddress(transport, msg) {
|
|
100
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
101
|
-
const getAddr = new RippleMessages.RippleGetAddress();
|
|
102
|
-
getAddr.setAddressNList(msg.addressNList);
|
|
103
|
-
getAddr.setShowDisplay(msg.showDisplay !== false);
|
|
104
|
-
const response = yield transport.call(Messages.MessageType.MESSAGETYPE_RIPPLEGETADDRESS, getAddr, {
|
|
105
|
-
msgTimeout: core.LONG_TIMEOUT,
|
|
106
|
-
});
|
|
107
|
-
const rippleAddress = response.proto;
|
|
108
|
-
return core.mustBeDefined(rippleAddress.getAddress());
|
|
109
|
-
});
|
|
110
|
-
}
|
|
111
|
-
//# sourceMappingURL=ripple.js.map
|
package/dist/ripple.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ripple.js","sourceRoot":"","sources":["../src/ripple.ts"],"names":[],"mappings":"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"}
|
package/dist/thorchain.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"thorchain.d.ts","sourceRoot":"","sources":["../src/thorchain.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,iBAAiB,MAAM,oDAAoD,CAAC;AACxF,OAAO,KAAK,IAAI,MAAM,8BAA8B,CAAC;AAIrD,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAIxC,wBAAgB,wBAAwB,CAAC,GAAG,EAAE,IAAI,CAAC,wBAAwB,GAAG,KAAK,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAM7G;AAED,wBAAsB,mBAAmB,CACvC,SAAS,EAAE,SAAS,EACpB,GAAG,EAAE,iBAAiB,CAAC,mBAAmB,CAAC,QAAQ,GAClD,OAAO,CAAC,MAAM,CAAC,CAWjB;AAED,wBAAsB,eAAe,CAAC,SAAS,EAAE,SAAS,EAAE,GAAG,EAAE,IAAI,CAAC,eAAe,GAAG,OAAO,CAAC,GAAG,CAAC,CAwHnG"}
|
package/dist/thorchain.js
DELETED
|
@@ -1,180 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
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 __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.thorchainGetAccountPaths = thorchainGetAccountPaths;
|
|
39
|
-
exports.thorchainGetAddress = thorchainGetAddress;
|
|
40
|
-
exports.thorchainSignTx = thorchainSignTx;
|
|
41
|
-
const Messages = __importStar(require("@keepkey/device-protocol/lib/messages_pb"));
|
|
42
|
-
const ThorchainMessages = __importStar(require("@keepkey/device-protocol/lib/messages-thorchain_pb"));
|
|
43
|
-
const core = __importStar(require("@shapeshiftoss/hdwallet-core"));
|
|
44
|
-
const bs58check_1 = __importDefault(require("bs58check"));
|
|
45
|
-
const p_lazy_1 = __importDefault(require("p-lazy"));
|
|
46
|
-
const protoTxBuilder = p_lazy_1.default.from(() => Promise.resolve().then(() => __importStar(require("@shapeshiftoss/proto-tx-builder"))));
|
|
47
|
-
function thorchainGetAccountPaths(msg) {
|
|
48
|
-
return [
|
|
49
|
-
{
|
|
50
|
-
addressNList: [0x80000000 + 44, 0x80000000 + core.slip44ByCoin("Thorchain"), 0x80000000 + msg.accountIdx, 0, 0],
|
|
51
|
-
},
|
|
52
|
-
];
|
|
53
|
-
}
|
|
54
|
-
function thorchainGetAddress(transport, msg) {
|
|
55
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
56
|
-
const getAddr = new ThorchainMessages.ThorchainGetAddress();
|
|
57
|
-
getAddr.setAddressNList(msg.addressNList);
|
|
58
|
-
getAddr.setShowDisplay(msg.showDisplay !== false);
|
|
59
|
-
if (msg.testnet !== undefined)
|
|
60
|
-
getAddr.setTestnet(msg.testnet);
|
|
61
|
-
const response = yield transport.call(Messages.MessageType.MESSAGETYPE_THORCHAINGETADDRESS, getAddr, {
|
|
62
|
-
msgTimeout: core.LONG_TIMEOUT,
|
|
63
|
-
});
|
|
64
|
-
const thorchainAddress = response.proto;
|
|
65
|
-
return core.mustBeDefined(thorchainAddress.getAddress());
|
|
66
|
-
});
|
|
67
|
-
}
|
|
68
|
-
function thorchainSignTx(transport, msg) {
|
|
69
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
70
|
-
const address = yield thorchainGetAddress(transport, { addressNList: msg.addressNList });
|
|
71
|
-
const getPublicKeyMsg = new Messages.GetPublicKey();
|
|
72
|
-
getPublicKeyMsg.setAddressNList(msg.addressNList);
|
|
73
|
-
getPublicKeyMsg.setEcdsaCurveName("secp256k1");
|
|
74
|
-
const response = yield transport.call(Messages.MessageType.MESSAGETYPE_GETPUBLICKEY, getPublicKeyMsg, {
|
|
75
|
-
msgTimeout: core.DEFAULT_TIMEOUT,
|
|
76
|
-
});
|
|
77
|
-
const pubkeyMsg = response.proto;
|
|
78
|
-
const pubkey = bs58check_1.default.decode(core.mustBeDefined(pubkeyMsg.getXpub())).slice(45);
|
|
79
|
-
return transport.lockDuring(() => __awaiter(this, void 0, void 0, function* () {
|
|
80
|
-
const signTx = new ThorchainMessages.ThorchainSignTx();
|
|
81
|
-
signTx.setAddressNList(msg.addressNList);
|
|
82
|
-
signTx.setAccountNumber(msg.account_number);
|
|
83
|
-
signTx.setChainId(msg.chain_id);
|
|
84
|
-
signTx.setFeeAmount(parseInt(msg.tx.fee.amount[0].amount));
|
|
85
|
-
signTx.setGas(parseInt(msg.tx.fee.gas));
|
|
86
|
-
signTx.setSequence(msg.sequence);
|
|
87
|
-
if (msg.tx.memo !== undefined)
|
|
88
|
-
signTx.setMemo(msg.tx.memo);
|
|
89
|
-
signTx.setMsgCount(1);
|
|
90
|
-
let resp = yield transport.call(Messages.MessageType.MESSAGETYPE_THORCHAINSIGNTX, signTx, {
|
|
91
|
-
msgTimeout: core.LONG_TIMEOUT,
|
|
92
|
-
omitLock: true,
|
|
93
|
-
});
|
|
94
|
-
for (const m of msg.tx.msg) {
|
|
95
|
-
if (resp.message_enum !== Messages.MessageType.MESSAGETYPE_THORCHAINMSGREQUEST) {
|
|
96
|
-
throw new Error(`THORChain: unexpected response ${resp.message_type}`);
|
|
97
|
-
}
|
|
98
|
-
let ack;
|
|
99
|
-
if (m.type === "thorchain/MsgSend") {
|
|
100
|
-
if (m.value.amount.length !== 1) {
|
|
101
|
-
throw new Error("THORChain: Multiple amounts per MsgSend not supported");
|
|
102
|
-
}
|
|
103
|
-
const denom = m.value.amount[0].denom;
|
|
104
|
-
if (denom !== "rune") {
|
|
105
|
-
throw new Error("THORChain: Unsupported denomination: " + denom);
|
|
106
|
-
}
|
|
107
|
-
const send = new ThorchainMessages.ThorchainMsgSend();
|
|
108
|
-
send.setFromAddress(m.value.from_address);
|
|
109
|
-
send.setToAddress(m.value.to_address);
|
|
110
|
-
send.setAmount(m.value.amount[0].amount);
|
|
111
|
-
ack = new ThorchainMessages.ThorchainMsgAck();
|
|
112
|
-
ack.setSend(send);
|
|
113
|
-
}
|
|
114
|
-
else if (m.type === "thorchain/MsgDeposit") {
|
|
115
|
-
if (m.value.coins.length !== 1) {
|
|
116
|
-
throw new Error("THORChain: Multiple amounts per MsgDeposit not supported");
|
|
117
|
-
}
|
|
118
|
-
const coinAsset = m.value.coins[0].asset;
|
|
119
|
-
if (coinAsset !== "THOR.RUNE") {
|
|
120
|
-
throw new Error("THORChain: Unsupported coin asset: " + coinAsset);
|
|
121
|
-
}
|
|
122
|
-
const deposit = new ThorchainMessages.ThorchainMsgDeposit();
|
|
123
|
-
deposit.setAsset(m.value.coins[0].asset);
|
|
124
|
-
deposit.setAmount(m.value.coins[0].amount);
|
|
125
|
-
deposit.setMemo(m.value.memo);
|
|
126
|
-
deposit.setSigner(m.value.signer);
|
|
127
|
-
ack = new ThorchainMessages.ThorchainMsgAck();
|
|
128
|
-
ack.setDeposit(deposit);
|
|
129
|
-
}
|
|
130
|
-
else {
|
|
131
|
-
throw new Error(`THORChain: Message ${m.type} is not yet supported`);
|
|
132
|
-
}
|
|
133
|
-
resp = yield transport.call(Messages.MessageType.MESSAGETYPE_THORCHAINMSGACK, ack, {
|
|
134
|
-
msgTimeout: core.LONG_TIMEOUT,
|
|
135
|
-
omitLock: true,
|
|
136
|
-
});
|
|
137
|
-
}
|
|
138
|
-
if (resp.message_enum !== Messages.MessageType.MESSAGETYPE_THORCHAINSIGNEDTX) {
|
|
139
|
-
throw new Error(`THORChain: unexpected response ${resp.message_type}`);
|
|
140
|
-
}
|
|
141
|
-
const signedTx = resp.proto;
|
|
142
|
-
const offlineSigner = {
|
|
143
|
-
getAccounts() {
|
|
144
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
145
|
-
return [
|
|
146
|
-
{
|
|
147
|
-
address,
|
|
148
|
-
algo: "secp256k1",
|
|
149
|
-
pubkey,
|
|
150
|
-
},
|
|
151
|
-
];
|
|
152
|
-
});
|
|
153
|
-
},
|
|
154
|
-
signAmino(signerAddress, signDoc) {
|
|
155
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
156
|
-
if (signerAddress !== address)
|
|
157
|
-
throw new Error("expected signerAddress to match address");
|
|
158
|
-
return {
|
|
159
|
-
signed: signDoc,
|
|
160
|
-
signature: {
|
|
161
|
-
pub_key: {
|
|
162
|
-
type: "tendermint/PubKeySecp256k1",
|
|
163
|
-
value: signedTx.getPublicKey_asB64(),
|
|
164
|
-
},
|
|
165
|
-
signature: signedTx.getSignature_asB64(),
|
|
166
|
-
},
|
|
167
|
-
};
|
|
168
|
-
});
|
|
169
|
-
},
|
|
170
|
-
};
|
|
171
|
-
const signerData = {
|
|
172
|
-
sequence: Number(msg.sequence),
|
|
173
|
-
accountNumber: Number(msg.account_number),
|
|
174
|
-
chainId: msg.chain_id,
|
|
175
|
-
};
|
|
176
|
-
return (yield protoTxBuilder).sign(address, msg.tx, offlineSigner, signerData, "thor");
|
|
177
|
-
}));
|
|
178
|
-
});
|
|
179
|
-
}
|
|
180
|
-
//# sourceMappingURL=thorchain.js.map
|
package/dist/thorchain.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"thorchain.js","sourceRoot":"","sources":["../src/thorchain.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAYA,4DAMC;AAED,kDAcC;AAED,0CAwHC;AA1JD,mFAAqE;AACrE,sGAAwF;AACxF,mEAAqD;AACrD,0DAAkC;AAClC,oDAA2B;AAI3B,MAAM,cAAc,GAAG,gBAAK,CAAC,IAAI,CAAC,GAAG,EAAE,mDAAQ,iCAAiC,GAAC,CAAC,CAAC;AAEnF,SAAgB,wBAAwB,CAAC,GAAkC;IACzE,OAAO;QACL;YACE,YAAY,EAAE,CAAC,UAAU,GAAG,EAAE,EAAE,UAAU,GAAG,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC,EAAE,UAAU,GAAG,GAAG,CAAC,UAAU,EAAE,CAAC,EAAE,CAAC,CAAC;SAChH;KACF,CAAC;AACJ,CAAC;AAED,SAAsB,mBAAmB,CACvC,SAAoB,EACpB,GAAmD;;QAEnD,MAAM,OAAO,GAAG,IAAI,iBAAiB,CAAC,mBAAmB,EAAE,CAAC;QAC5D,OAAO,CAAC,eAAe,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;QAC1C,OAAO,CAAC,cAAc,CAAC,GAAG,CAAC,WAAW,KAAK,KAAK,CAAC,CAAC;QAClD,IAAI,GAAG,CAAC,OAAO,KAAK,SAAS;YAAE,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAC/D,MAAM,QAAQ,GAAG,MAAM,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,+BAA+B,EAAE,OAAO,EAAE;YACnG,UAAU,EAAE,IAAI,CAAC,YAAY;SAC9B,CAAC,CAAC;QAEH,MAAM,gBAAgB,GAAG,QAAQ,CAAC,KAA2C,CAAC;QAC9E,OAAO,IAAI,CAAC,aAAa,CAAC,gBAAgB,CAAC,UAAU,EAAE,CAAC,CAAC;IAC3D,CAAC;CAAA;AAED,SAAsB,eAAe,CAAC,SAAoB,EAAE,GAAyB;;QACnF,MAAM,OAAO,GAAG,MAAM,mBAAmB,CAAC,SAAS,EAAE,EAAE,YAAY,EAAE,GAAG,CAAC,YAAY,EAAE,CAAC,CAAC;QAEzF,MAAM,eAAe,GAAG,IAAI,QAAQ,CAAC,YAAY,EAAE,CAAC;QACpD,eAAe,CAAC,eAAe,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;QAClD,eAAe,CAAC,iBAAiB,CAAC,WAAW,CAAC,CAAC;QAE/C,MAAM,QAAQ,GAAG,MAAM,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,wBAAwB,EAAE,eAAe,EAAE;YACpG,UAAU,EAAE,IAAI,CAAC,eAAe;SACjC,CAAC,CAAC;QACH,MAAM,SAAS,GAAG,QAAQ,CAAC,KAA2B,CAAC;QACvD,MAAM,MAAM,GAAG,mBAAS,CAAC,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QAEnF,OAAO,SAAS,CAAC,UAAU,CAAC,GAAS,EAAE;YACrC,MAAM,MAAM,GAAG,IAAI,iBAAiB,CAAC,eAAe,EAAE,CAAC;YACvD,MAAM,CAAC,eAAe,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;YACzC,MAAM,CAAC,gBAAgB,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;YAC5C,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;YAChC,MAAM,CAAC,YAAY,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;YAC3D,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;YACxC,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;YACjC,IAAI,GAAG,CAAC,EAAE,CAAC,IAAI,KAAK,SAAS;gBAAE,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC;YAC3D,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;YAEtB,IAAI,IAAI,GAAG,MAAM,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,2BAA2B,EAAE,MAAM,EAAE;gBACxF,UAAU,EAAE,IAAI,CAAC,YAAY;gBAC7B,QAAQ,EAAE,IAAI;aACf,CAAC,CAAC;YAEH,KAAK,MAAM,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC;gBAC3B,IAAI,IAAI,CAAC,YAAY,KAAK,QAAQ,CAAC,WAAW,CAAC,+BAA+B,EAAE,CAAC;oBAC/E,MAAM,IAAI,KAAK,CAAC,kCAAkC,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC;gBACzE,CAAC;gBAED,IAAI,GAAG,CAAC;gBAER,IAAI,CAAC,CAAC,IAAI,KAAK,mBAAmB,EAAE,CAAC;oBACnC,IAAI,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;wBAChC,MAAM,IAAI,KAAK,CAAC,uDAAuD,CAAC,CAAC;oBAC3E,CAAC;oBAED,MAAM,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;oBACtC,IAAI,KAAK,KAAK,MAAM,EAAE,CAAC;wBACrB,MAAM,IAAI,KAAK,CAAC,uCAAuC,GAAG,KAAK,CAAC,CAAC;oBACnE,CAAC;oBAED,MAAM,IAAI,GAAG,IAAI,iBAAiB,CAAC,gBAAgB,EAAE,CAAC;oBACtD,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;oBAC1C,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;oBACtC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;oBAEzC,GAAG,GAAG,IAAI,iBAAiB,CAAC,eAAe,EAAE,CAAC;oBAC9C,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;gBACpB,CAAC;qBAAM,IAAI,CAAC,CAAC,IAAI,KAAK,sBAAsB,EAAE,CAAC;oBAC7C,IAAI,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;wBAC/B,MAAM,IAAI,KAAK,CAAC,0DAA0D,CAAC,CAAC;oBAC9E,CAAC;oBAED,MAAM,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;oBACzC,IAAI,SAAS,KAAK,WAAW,EAAE,CAAC;wBAC9B,MAAM,IAAI,KAAK,CAAC,qCAAqC,GAAG,SAAS,CAAC,CAAC;oBACrE,CAAC;oBAED,MAAM,OAAO,GAAG,IAAI,iBAAiB,CAAC,mBAAmB,EAAE,CAAC;oBAC5D,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;oBACzC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;oBAC3C,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;oBAC9B,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;oBAElC,GAAG,GAAG,IAAI,iBAAiB,CAAC,eAAe,EAAE,CAAC;oBAC9C,GAAG,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;gBAC1B,CAAC;qBAAM,CAAC;oBACN,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC,IAAI,uBAAuB,CAAC,CAAC;gBACvE,CAAC;gBAED,IAAI,GAAG,MAAM,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,2BAA2B,EAAE,GAAG,EAAE;oBACjF,UAAU,EAAE,IAAI,CAAC,YAAY;oBAC7B,QAAQ,EAAE,IAAI;iBACf,CAAC,CAAC;YACL,CAAC;YAED,IAAI,IAAI,CAAC,YAAY,KAAK,QAAQ,CAAC,WAAW,CAAC,6BAA6B,EAAE,CAAC;gBAC7E,MAAM,IAAI,KAAK,CAAC,kCAAkC,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC;YACzE,CAAC;YAED,MAAM,QAAQ,GAAG,IAAI,CAAC,KAA4C,CAAC;YAEnE,MAAM,aAAa,GAAuB;gBAClC,WAAW;;wBACf,OAAO;4BACL;gCACE,OAAO;gCACP,IAAI,EAAE,WAAW;gCACjB,MAAM;6BACP;yBACF,CAAC;oBACJ,CAAC;iBAAA;gBACK,SAAS,CAAC,aAAqB,EAAE,OAAmB;;wBACxD,IAAI,aAAa,KAAK,OAAO;4BAAE,MAAM,IAAI,KAAK,CAAC,yCAAyC,CAAC,CAAC;wBAC1F,OAAO;4BACL,MAAM,EAAE,OAAO;4BACf,SAAS,EAAE;gCACT,OAAO,EAAE;oCACP,IAAI,EAAE,4BAA4B;oCAClC,KAAK,EAAE,QAAQ,CAAC,kBAAkB,EAAE;iCACrC;gCACD,SAAS,EAAE,QAAQ,CAAC,kBAAkB,EAAE;6BACzC;yBACF,CAAC;oBACJ,CAAC;iBAAA;aACF,CAAC;YAEF,MAAM,UAAU,GAAe;gBAC7B,QAAQ,EAAE,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;gBAC9B,aAAa,EAAE,MAAM,CAAC,GAAG,CAAC,cAAc,CAAC;gBACzC,OAAO,EAAE,GAAG,CAAC,QAAQ;aACtB,CAAC;YAEF,OAAO,CAAC,MAAM,cAAc,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,CAAC,EAAW,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,CAAC,CAAC;QAClG,CAAC,CAAA,CAAC,CAAC;IACL,CAAC;CAAA"}
|
package/dist/transport.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"transport.d.ts","sourceRoot":"","sources":["../src/transport.ts"],"names":[],"mappings":"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"}
|