@shapeshiftoss/hdwallet-ledger 1.53.0 → 1.53.2

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/cosmos.js CHANGED
@@ -55,7 +55,7 @@ const cosmosSignTx = (transport, msg) => __awaiter(void 0, void 0, void 0, funct
55
55
  const getAddressResponse = yield transport.call("Cosmos", "getAddress", bip32path, "cosmos");
56
56
  (0, utils_1.handleError)(getAddressResponse, transport, "Unable to obtain address and public key from device.");
57
57
  const { address, publicKey } = getAddressResponse.payload;
58
- const rawTx = (0, utils_1.stringifyKeysInOrder)({
58
+ const unsignedTx = (0, utils_1.stringifyKeysInOrder)({
59
59
  account_number: msg.account_number,
60
60
  chain_id: ATOM_CHAIN,
61
61
  fee: { amount: msg.tx.fee.amount, gas: msg.tx.fee.gas },
@@ -63,7 +63,7 @@ const cosmosSignTx = (transport, msg) => __awaiter(void 0, void 0, void 0, funct
63
63
  msgs: msg.tx.msg,
64
64
  sequence: msg.sequence,
65
65
  });
66
- const signResponse = yield transport.call("Cosmos", "sign", bip32path, rawTx);
66
+ const signResponse = yield transport.call("Cosmos", "sign", bip32path, unsignedTx);
67
67
  (0, utils_1.handleError)(signResponse, transport, "Unable to obtain signature from device.");
68
68
  const signature = signResponse.payload.signature;
69
69
  if (!signature)
@@ -1 +1 @@
1
- {"version":3,"file":"cosmos.js","sourceRoot":"","sources":["../src/cosmos.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cosmos.js","sourceRoot":"","sources":["../src/cosmos.ts"],"names":[],"mappings":"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"}
@@ -21,5 +21,4 @@ export declare const P1_VALUES: {
21
21
  };
22
22
  export declare function errorCodeToString(statusCode: any): string;
23
23
  export declare function processErrorResponse(response: any): any;
24
- export declare function getVersion(transport: any): Promise<any>;
25
24
  //# sourceMappingURL=common.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"common.d.ts","sourceRoot":"","sources":["../../src/thorchain/common.ts"],"names":[],"mappings":"AAAA,oBAAY,SAAS;IACnB,OAAO,QAAS;CACjB;AAED,eAAO,MAAM,GAAG,KAAO,CAAC;AACxB,eAAO,MAAM,UAAU,MAAM,CAAC;AAC9B,eAAO,MAAM,OAAO,QAAQ,CAAC;AAE7B,eAAO,MAAM,GAAG;;;;;CAKf,CAAC;AAEF,eAAO,MAAM,YAAY;;;;CAIxB,CAAC;AAEF,eAAO,MAAM,SAAS;;;CAGrB,CAAC;AA2BF,wBAAgB,iBAAiB,CAAC,UAAU,EAAE,GAAG,UAGhD;AAED,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,GAAG,OAgCjD;AAED,wBAAsB,UAAU,CAAC,SAAS,EAAE,GAAG,gBAsB9C"}
1
+ {"version":3,"file":"common.d.ts","sourceRoot":"","sources":["../../src/thorchain/common.ts"],"names":[],"mappings":"AAAA,oBAAY,SAAS;IACnB,OAAO,QAAS;CACjB;AAED,eAAO,MAAM,GAAG,KAAO,CAAC;AACxB,eAAO,MAAM,UAAU,MAAM,CAAC;AAC9B,eAAO,MAAM,OAAO,QAAQ,CAAC;AAE7B,eAAO,MAAM,GAAG;;;;;CAKf,CAAC;AAEF,eAAO,MAAM,YAAY;;;;CAIxB,CAAC;AAEF,eAAO,MAAM,SAAS;;;CAGrB,CAAC;AA2BF,wBAAgB,iBAAiB,CAAC,UAAU,EAAE,GAAG,UAGhD;AAED,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,GAAG,OAgCjD"}
@@ -1,15 +1,6 @@
1
1
  "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
2
  Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.getVersion = exports.processErrorResponse = exports.errorCodeToString = exports.P1_VALUES = exports.PAYLOAD_TYPE = exports.INS = exports.APP_KEY = exports.CHUNK_SIZE = exports.CLA = exports.ErrorCode = void 0;
3
+ exports.processErrorResponse = exports.errorCodeToString = exports.P1_VALUES = exports.PAYLOAD_TYPE = exports.INS = exports.APP_KEY = exports.CHUNK_SIZE = exports.CLA = exports.ErrorCode = void 0;
13
4
  var ErrorCode;
14
5
  (function (ErrorCode) {
15
6
  ErrorCode[ErrorCode["NoError"] = 36864] = "NoError";
@@ -90,28 +81,4 @@ function processErrorResponse(response) {
90
81
  };
91
82
  }
92
83
  exports.processErrorResponse = processErrorResponse;
93
- function getVersion(transport) {
94
- return __awaiter(this, void 0, void 0, function* () {
95
- return transport.send(exports.CLA, exports.INS.GET_VERSION, 0, 0).then((response) => {
96
- const errorCodeData = response.slice(-2);
97
- const returnCode = errorCodeData[0] * 256 + errorCodeData[1];
98
- let targetId = 0;
99
- if (response.length >= 9) {
100
- targetId = (response[5] << 24) + (response[6] << 16) + (response[7] << 8) + (response[8] << 0);
101
- }
102
- return {
103
- return_code: returnCode,
104
- error_message: errorCodeToString(returnCode),
105
- // ///
106
- test_mode: response[0] !== 0,
107
- major: response[1],
108
- minor: response[2],
109
- patch: response[3],
110
- device_locked: response[4] === 1,
111
- target_id: targetId.toString(16),
112
- };
113
- }, processErrorResponse);
114
- });
115
- }
116
- exports.getVersion = getVersion;
117
84
  //# sourceMappingURL=common.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"common.js","sourceRoot":"","sources":["../../src/thorchain/common.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"common.js","sourceRoot":"","sources":["../../src/thorchain/common.ts"],"names":[],"mappings":";;;AAAA,IAAY,SAEX;AAFD,WAAY,SAAS;IACnB,mDAAgB,CAAA;AAClB,CAAC,EAFW,SAAS,yBAAT,SAAS,QAEpB;AAEY,QAAA,GAAG,GAAG,IAAI,CAAC;AACX,QAAA,UAAU,GAAG,GAAG,CAAC;AACjB,QAAA,OAAO,GAAG,KAAK,CAAC;AAEhB,QAAA,GAAG,GAAG;IACjB,WAAW,EAAE,IAAI;IACjB,wBAAwB,EAAE,IAAI;IAC9B,cAAc,EAAE,IAAI;IACpB,kBAAkB,EAAE,IAAI;CACzB,CAAC;AAEW,QAAA,YAAY,GAAG;IAC1B,IAAI,EAAE,IAAI;IACV,GAAG,EAAE,IAAI;IACT,IAAI,EAAE,IAAI;CACX,CAAC;AAEW,QAAA,SAAS,GAAG;IACvB,aAAa,EAAE,IAAI;IACnB,sBAAsB,EAAE,IAAI;CAC7B,CAAC;AAEF,MAAM,iBAAiB,GAAG;IACxB,CAAC,EAAE,cAAc;IACjB,CAAC,EAAE,kBAAkB;IACrB,CAAC,EAAE,gCAAgC;IACnC,CAAC,EAAE,wBAAwB;IAC3B,CAAC,EAAE,cAAc;IACjB,EAAE,EAAE,SAAS;IACb,MAAM,EAAE,WAAW;IACnB,MAAM,EAAE,gBAAgB;IACxB,MAAM,EAAE,qBAAqB;IAC7B,MAAM,EAAE,iBAAiB;IACzB,MAAM,EAAE,cAAc;IACtB,MAAM,EAAE,cAAc;IACtB,MAAM,EAAE,yBAAyB;IACjC,MAAM,EAAE,iBAAiB;IACzB,MAAM,EAAE,0BAA0B;IAClC,MAAM,EAAE,sBAAsB;IAC9B,MAAM,EAAE,gBAAgB;IACxB,MAAM,EAAE,eAAe;IACvB,MAAM,EAAE,2BAA2B;IACnC,MAAM,EAAE,8BAA8B;IACtC,MAAM,EAAE,eAAe;IACvB,MAAM,EAAE,mBAAmB;CAC5B,CAAC;AAEF,SAAgB,iBAAiB,CAAC,UAAe;IAC/C,IAAI,UAAU,IAAI,iBAAiB;QAAE,OAAO,iBAAiB,CAAC,UAAe,CAAC,CAAC;IAC/E,OAAO,wBAAwB,UAAU,EAAE,CAAC;AAC9C,CAAC;AAHD,8CAGC;AAED,SAAgB,oBAAoB,CAAC,QAAa;IAChD,IAAI,QAAQ,EAAE;QACZ,IACE,OAAO,QAAQ,KAAK,QAAQ;YAC5B,QAAQ,KAAK,IAAI;YACjB,CAAC,CAAC,QAAQ,YAAY,KAAK,CAAC;YAC5B,CAAC,CAAC,QAAQ,YAAY,IAAI,CAAC,EAC3B;YACA,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,QAAQ,EAAE,YAAY,CAAC,EAAE;gBAChE,OAAO;oBACL,WAAW,EAAE,QAAQ,CAAC,UAAU;oBAChC,aAAa,EAAE,iBAAiB,CAAC,QAAQ,CAAC,UAAU,CAAC;iBACtD,CAAC;aACH;YAED,IACE,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,QAAQ,EAAE,aAAa,CAAC;gBAC7D,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,QAAQ,EAAE,eAAe,CAAC,EAC/D;gBACA,OAAO,QAAQ,CAAC;aACjB;SACF;QACD,OAAO;YACL,WAAW,EAAE,MAAM;YACnB,aAAa,EAAE,QAAQ,CAAC,QAAQ,EAAE;SACnC,CAAC;KACH;IAED,OAAO;QACL,WAAW,EAAE,MAAM;QACnB,aAAa,EAAE,QAAQ,CAAC,QAAQ,EAAE;KACnC,CAAC;AACJ,CAAC;AAhCD,oDAgCC"}
@@ -1,38 +1,48 @@
1
1
  /// <reference types="node" />
2
- import * as core from "@shapeshiftoss/hdwallet-core";
2
+ /** ******************************************************************************
3
+ * (c) 2019 ZondaX GmbH
4
+ * (c) 2016-2017 Ledger
5
+ *
6
+ * Licensed under the Apache License, Version 2.0 (the "License");
7
+ * you may not use this file except in compliance with the License.
8
+ * You may obtain a copy of the License at
9
+ *
10
+ * http://www.apache.org/licenses/LICENSE-2.0
11
+ *
12
+ * Unless required by applicable law or agreed to in writing, software
13
+ * distributed under the License is distributed on an "AS IS" BASIS,
14
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15
+ * See the License for the specific language governing permissions and
16
+ * limitations under the License.
17
+ ******************************************************************************* */
18
+ import type Transport from "@ledgerhq/hw-transport";
3
19
  export type GetAddressAndPubKeyResponse = {
4
- bech32_address: string;
5
- compressed_pk: Uint8Array;
20
+ address: string;
21
+ publicKey: string;
6
22
  error_message: string;
7
23
  return_code: number;
8
24
  };
9
25
  export type SignResponse = {
10
- signature: Uint8Array;
26
+ signature: null | Buffer;
11
27
  error_message: string;
12
28
  return_code: number;
13
29
  };
14
- declare class THORChainApp {
15
- transport: any;
30
+ export declare class Thorchain {
31
+ transport: Transport;
16
32
  versionResponse: any;
17
- constructor(transport: any, scrambleKey?: string);
18
- static serializeHRP(hrp: any): Buffer;
19
- static getBech32FromPK(hrp: any, pk: any): `${Lowercase<any>}1${string}`;
33
+ constructor(transport: Transport, scrambleKey?: string);
34
+ getVersion(): Promise<any>;
35
+ serializeHRP(hrp: string): Buffer;
20
36
  serializePath(path: Array<number>): Promise<Buffer | {
21
37
  return_code: number;
22
38
  error_message: string;
23
39
  }>;
24
- signGetChunks(path: Array<number>, message: any): Promise<(Buffer | {
40
+ getAddress(path: Array<number>, hrp: string, boolDisplay?: boolean): Promise<GetAddressAndPubKeyResponse>;
41
+ signGetChunks(path: Array<number>, message: string): Promise<{
25
42
  return_code: number;
26
43
  error_message: string;
27
- })[]>;
28
- getVersion(): Promise<any>;
29
- appInfo(): Promise<any>;
30
- deviceInfo(): Promise<any>;
31
- publicKey(path: Array<number>): Promise<any>;
32
- getAddressAndPubKey(path: Array<number>, hrp: any): Promise<GetAddressAndPubKeyResponse>;
33
- showAddressAndPubKey(path: Array<number>, hrp: any): Promise<any>;
34
- signSendChunk(chunkIdx: number, chunkNum: number, chunk: any): Promise<any>;
35
- sign(msg: core.ThorchainSignTx): Promise<SignResponse>;
44
+ } | Buffer[]>;
45
+ signSendChunk(chunkIdx: number, chunkNum: number, chunk: Buffer): Promise<SignResponse>;
46
+ sign(path: Array<number>, message: string): Promise<SignResponse>;
36
47
  }
37
- export { THORChainApp };
38
48
  //# sourceMappingURL=hw-app-thor.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"hw-app-thor.d.ts","sourceRoot":"","sources":["../../src/thorchain/hw-app-thor.ts"],"names":[],"mappings":";AAiBA,OAAO,KAAK,IAAI,MAAM,8BAA8B,CAAC;AAmBrD,MAAM,MAAM,2BAA2B,GAAG;IACxC,cAAc,EAAE,MAAM,CAAC;IACvB,aAAa,EAAE,UAAU,CAAC;IAC1B,aAAa,EAAE,MAAM,CAAC;IACtB,WAAW,EAAE,MAAM,CAAC;CACrB,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG;IACzB,SAAS,EAAE,UAAU,CAAC;IACtB,aAAa,EAAE,MAAM,CAAC;IACtB,WAAW,EAAE,MAAM,CAAC;CACrB,CAAC;AAuBF,cAAM,YAAY;IAChB,SAAS,EAAE,GAAG,CAAC;IACf,eAAe,EAAE,GAAG,CAAC;gBAET,SAAS,EAAE,GAAG,EAAE,WAAW,SAAU;IAajD,MAAM,CAAC,YAAY,CAAC,GAAG,EAAE,GAAG;IAU5B,MAAM,CAAC,eAAe,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG;IAclC,aAAa,CAAC,IAAI,EAAE,KAAK,CAAC,MAAM,CAAC;;;;IAkBjC,aAAa,CAAC,IAAI,EAAE,KAAK,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,GAAG;;;;IAkB/C,UAAU;IASV,OAAO;IAkDP,UAAU;IA8CV,SAAS,CAAC,IAAI,EAAE,KAAK,CAAC,MAAM,CAAC;IAoB7B,mBAAmB,CAAC,IAAI,EAAE,KAAK,CAAC,MAAM,CAAC,EAAE,GAAG,EAAE,GAAG,GAAG,OAAO,CAAC,2BAA2B,CAAC;IA4BxF,oBAAoB,CAAC,IAAI,EAAE,KAAK,CAAC,MAAM,CAAC,EAAE,GAAG,EAAE,GAAG;IA4BlD,aAAa,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG;IAY5D,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,eAAe,GAAG,OAAO,CAAC,YAAY,CAAC;CAiC7D;AAED,OAAO,EAAE,YAAY,EAAE,CAAC"}
1
+ {"version":3,"file":"hw-app-thor.d.ts","sourceRoot":"","sources":["../../src/thorchain/hw-app-thor.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;mFAemF;AACnF,OAAO,KAAK,SAAS,MAAM,wBAAwB,CAAC;AAcpD,MAAM,MAAM,2BAA2B,GAAG;IACxC,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,MAAM,CAAC;IACtB,WAAW,EAAE,MAAM,CAAC;CACrB,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG;IACzB,SAAS,EAAE,IAAI,GAAG,MAAM,CAAC;IACzB,aAAa,EAAE,MAAM,CAAC;IACtB,WAAW,EAAE,MAAM,CAAC;CACrB,CAAC;AAEF,qBAAa,SAAS;IACpB,SAAS,EAAE,SAAS,CAAC;IACrB,eAAe,EAAE,GAAG,CAAC;gBAET,SAAS,EAAE,SAAS,EAAE,WAAW,SAAU;IASvD,UAAU;IAuBV,YAAY,CAAC,GAAG,EAAE,MAAM;IAWlB,aAAa,CAAC,IAAI,EAAE,KAAK,CAAC,MAAM,CAAC;;;;IA8BjC,UAAU,CAAC,IAAI,EAAE,KAAK,CAAC,MAAM,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,2BAA2B,CAAC;IAkCzG,aAAa,CAAC,IAAI,EAAE,KAAK,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,MAAM;;;;IAoBlD,aAAa,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC;IAyCvF,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC;CA0BxE"}
@@ -8,62 +8,39 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
8
8
  step((generator = generator.apply(thisArg, _arguments || [])).next());
9
9
  });
10
10
  };
11
- var __importDefault = (this && this.__importDefault) || function (mod) {
12
- return (mod && mod.__esModule) ? mod : { "default": mod };
13
- };
14
11
  Object.defineProperty(exports, "__esModule", { value: true });
15
- exports.THORChainApp = void 0;
16
- /** ******************************************************************************
17
- * (c) 2019 ZondaX GmbH
18
- * (c) 2016-2017 Ledger
19
- *
20
- * Licensed under the Apache License, Version 2.0 (the "License");
21
- * you may not use this file except in compliance with the License.
22
- * You may obtain a copy of the License at
23
- *
24
- * http://www.apache.org/licenses/LICENSE-2.0
25
- *
26
- * Unless required by applicable law or agreed to in writing, software
27
- * distributed under the License is distributed on an "AS IS" BASIS,
28
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
29
- * See the License for the specific language governing permissions and
30
- * limitations under the License.
31
- ******************************************************************************* */
32
- const base_1 = require("@scure/base");
33
- const crypto_1 = __importDefault(require("crypto"));
34
- const ripemd160_1 = __importDefault(require("ripemd160"));
12
+ exports.Thorchain = void 0;
35
13
  const common_1 = require("./common");
36
- const helpers_1 = require("./helpers");
37
- const THOR_CHAIN = "thorchain-mainnet-v1";
38
- const recursivelyOrderKeys = (unordered) => {
39
- // If it's an array - recursively order any
40
- // dictionary items within the array
41
- if (Array.isArray(unordered)) {
42
- unordered.forEach((item, index) => {
43
- unordered[index] = recursivelyOrderKeys(item);
44
- });
45
- return unordered;
46
- }
47
- // If it's an object - let's order the keys
48
- if (typeof unordered !== "object")
49
- return unordered;
50
- const ordered = {};
51
- Object.keys(unordered)
52
- .sort()
53
- .forEach((key) => (ordered[key] = recursivelyOrderKeys(unordered[key])));
54
- return ordered;
55
- };
56
- const stringifyKeysInOrder = (data) => JSON.stringify(recursivelyOrderKeys(data));
57
- class THORChainApp {
14
+ class Thorchain {
58
15
  constructor(transport, scrambleKey = common_1.APP_KEY) {
59
16
  if (!transport) {
60
17
  throw new Error("Transport has not been defined");
61
18
  }
62
19
  this.transport = transport;
63
- transport.decorateAppAPIMethods.bind(transport)(this, ["getVersion", "sign", "getAddressAndPubKey", "appInfo", "deviceInfo", "getBech32FromPK"], scrambleKey);
20
+ transport.decorateAppAPIMethods.bind(transport)(this, ["getAddress", "sign"], scrambleKey);
21
+ }
22
+ getVersion() {
23
+ return this.transport.send(common_1.CLA, common_1.INS.GET_VERSION, 0, 0).then((response) => {
24
+ const errorCodeData = response.slice(-2);
25
+ const returnCode = errorCodeData[0] * 256 + errorCodeData[1];
26
+ let targetId = 0;
27
+ if (response.length >= 9) {
28
+ targetId = (response[5] << 24) + (response[6] << 16) + (response[7] << 8) + (response[8] << 0);
29
+ }
30
+ return {
31
+ return_code: returnCode,
32
+ error_message: (0, common_1.errorCodeToString)(returnCode),
33
+ test_mode: response[0] !== 0,
34
+ major: response[1],
35
+ minor: response[2],
36
+ patch: response[3],
37
+ device_locked: response[4] === 1,
38
+ target_id: targetId.toString(16),
39
+ };
40
+ }, common_1.processErrorResponse);
64
41
  }
65
- static serializeHRP(hrp) {
66
- if (hrp == null || hrp.length < 3 || hrp.length > 83) {
42
+ serializeHRP(hrp) {
43
+ if (hrp == null || hrp.length === 0 || hrp.length > 83) {
67
44
  throw new Error("Invalid HRP");
68
45
  }
69
46
  const buf = Buffer.alloc(1 + hrp.length);
@@ -71,28 +48,25 @@ class THORChainApp {
71
48
  buf.write(hrp, 1);
72
49
  return buf;
73
50
  }
74
- static getBech32FromPK(hrp, pk) {
75
- var _a, _b;
76
- if (pk.length !== 33) {
77
- throw new Error("expected compressed public key [31 bytes]");
78
- }
79
- const hashSha256 = crypto_1.default.createHash("sha256").update(pk).digest();
80
- const hashRip = new ripemd160_1.default().update(hashSha256).digest();
81
- // ts is drunk and doesn't like bech32.bech32 here
82
- const encode = base_1.bech32.encode || ((_a = base_1.bech32.bech32) === null || _a === void 0 ? void 0 : _a.encode);
83
- // ts is drunk and doesn't like bech32.bech32 here
84
- const toWords = base_1.bech32.toWords || ((_b = base_1.bech32.bech32) === null || _b === void 0 ? void 0 : _b.toWords);
85
- return encode(hrp, toWords(hashRip));
86
- }
87
51
  serializePath(path) {
88
52
  return __awaiter(this, void 0, void 0, function* () {
89
- this.versionResponse = yield (0, common_1.getVersion)(this.transport);
53
+ this.versionResponse = yield this.getVersion();
90
54
  if (this.versionResponse.return_code !== common_1.ErrorCode.NoError) {
91
55
  throw this.versionResponse;
92
56
  }
93
57
  switch (this.versionResponse.major) {
94
- case 2:
95
- return (0, helpers_1.serializePathv2)(path);
58
+ case 2: {
59
+ if (!path || path.length !== 5) {
60
+ throw new Error("Invalid path.");
61
+ }
62
+ const buf = Buffer.alloc(20);
63
+ buf.writeUInt32LE(path[0], 0);
64
+ buf.writeUInt32LE(path[1], 4);
65
+ buf.writeUInt32LE(path[2], 8);
66
+ buf.writeUInt32LE(path[3], 12);
67
+ buf.writeUInt32LE(path[4], 16);
68
+ return buf;
69
+ }
96
70
  default:
97
71
  return {
98
72
  return_code: 0x6400,
@@ -101,157 +75,24 @@ class THORChainApp {
101
75
  }
102
76
  });
103
77
  }
104
- signGetChunks(path, message) {
105
- return __awaiter(this, void 0, void 0, function* () {
106
- const serializedPath = yield this.serializePath(path);
107
- const chunks = [];
108
- chunks.push(serializedPath);
109
- const buffer = Buffer.from(message);
110
- for (let i = 0; i < buffer.length; i += common_1.CHUNK_SIZE) {
111
- let end = i + common_1.CHUNK_SIZE;
112
- if (i > buffer.length) {
113
- end = buffer.length;
114
- }
115
- chunks.push(buffer.slice(i, end));
116
- }
117
- return chunks;
118
- });
119
- }
120
- getVersion() {
121
- return __awaiter(this, void 0, void 0, function* () {
122
- try {
123
- this.versionResponse = yield (0, common_1.getVersion)(this.transport);
124
- return this.versionResponse;
125
- }
126
- catch (e) {
127
- return (0, common_1.processErrorResponse)(e);
128
- }
129
- });
130
- }
131
- appInfo() {
132
- return __awaiter(this, void 0, void 0, function* () {
133
- return this.transport.send(0xb0, 0x01, 0, 0).then((response) => {
134
- const errorCodeData = response.slice(-2);
135
- const returnCode = errorCodeData[0] * 256 + errorCodeData[1];
136
- const result = {};
137
- let appName = "err";
138
- let appVersion = "err";
139
- let flagLen = 0;
140
- let flagsValue = 0;
141
- if (response[0] !== 1) {
142
- // Ledger responds with format ID 1. There is no spec for any format != 1
143
- result.error_message = "response format ID not recognized";
144
- result.return_code = 0x9001;
145
- }
146
- else {
147
- const appNameLen = response[1];
148
- appName = response.slice(2, 2 + appNameLen).toString("ascii");
149
- let idx = 2 + appNameLen;
150
- const appVersionLen = response[idx];
151
- idx += 1;
152
- appVersion = response.slice(idx, idx + appVersionLen).toString("ascii");
153
- idx += appVersionLen;
154
- const appFlagsLen = response[idx];
155
- idx += 1;
156
- flagLen = appFlagsLen;
157
- flagsValue = response[idx];
158
- }
159
- return {
160
- return_code: returnCode,
161
- error_message: (0, common_1.errorCodeToString)(returnCode),
162
- // //
163
- appName,
164
- appVersion,
165
- flagLen,
166
- flagsValue,
167
- flag_recovery: (flagsValue & 1) !== 0,
168
- flag_signed_mcu_code: (flagsValue & 2) !== 0,
169
- flag_onboarded: (flagsValue & 4) !== 0,
170
- flag_pin_validated: (flagsValue & 128) !== 0,
171
- };
172
- }, common_1.processErrorResponse);
173
- });
174
- }
175
- deviceInfo() {
176
- return __awaiter(this, void 0, void 0, function* () {
177
- return this.transport.send(0xe0, 0x01, 0, 0, Buffer.from([]), [common_1.ErrorCode.NoError, 0x6e00]).then((response) => {
178
- const errorCodeData = response.slice(-2);
179
- const returnCode = errorCodeData[0] * 256 + errorCodeData[1];
180
- if (returnCode === 0x6e00) {
181
- return {
182
- return_code: returnCode,
183
- error_message: "This command is only available in the Dashboard",
184
- };
185
- }
186
- const targetId = response.slice(0, 4).toString("hex");
187
- let pos = 4;
188
- const secureElementVersionLen = response[pos];
189
- pos += 1;
190
- const seVersion = response.slice(pos, pos + secureElementVersionLen).toString();
191
- pos += secureElementVersionLen;
192
- const flagsLen = response[pos];
193
- pos += 1;
194
- const flag = response.slice(pos, pos + flagsLen).toString("hex");
195
- pos += flagsLen;
196
- const mcuVersionLen = response[pos];
197
- pos += 1;
198
- // Patch issue in mcu version
199
- let tmp = response.slice(pos, pos + mcuVersionLen);
200
- if (tmp[mcuVersionLen - 1] === 0) {
201
- tmp = response.slice(pos, pos + mcuVersionLen - 1);
202
- }
203
- const mcuVersion = tmp.toString();
204
- return {
205
- return_code: returnCode,
206
- error_message: (0, common_1.errorCodeToString)(returnCode),
207
- // //
208
- targetId,
209
- seVersion,
210
- flag,
211
- mcuVersion,
212
- };
213
- }, common_1.processErrorResponse);
214
- });
215
- }
216
- publicKey(path) {
217
- return __awaiter(this, void 0, void 0, function* () {
218
- try {
219
- const serializedPath = yield this.serializePath(path);
220
- switch (this.versionResponse.major) {
221
- case 2: {
222
- const data = Buffer.concat([THORChainApp.serializeHRP("thor"), serializedPath]);
223
- return yield (0, helpers_1.publicKeyv2)(this, data);
224
- }
225
- default:
226
- return {
227
- return_code: 0x6400,
228
- error_message: "App Version is not supported",
229
- };
230
- }
231
- }
232
- catch (e) {
233
- return (0, common_1.processErrorResponse)(e);
234
- }
235
- });
236
- }
237
- getAddressAndPubKey(path, hrp) {
78
+ getAddress(path, hrp, boolDisplay) {
238
79
  return __awaiter(this, void 0, void 0, function* () {
239
80
  try {
240
81
  return yield this.serializePath(path)
241
82
  .then((serializedPath) => {
242
- const data = Buffer.concat([THORChainApp.serializeHRP(hrp), serializedPath]);
83
+ if (!Buffer.isBuffer(serializedPath))
84
+ return serializedPath;
85
+ const data = Buffer.concat([this.serializeHRP(hrp), serializedPath]);
243
86
  return this.transport
244
- .send(common_1.CLA, common_1.INS.GET_ADDR_SECP256K1, common_1.P1_VALUES.ONLY_RETRIEVE, 0, data, [common_1.ErrorCode.NoError])
87
+ .send(common_1.CLA, common_1.INS.GET_ADDR_SECP256K1, boolDisplay ? common_1.P1_VALUES.SHOW_ADDRESS_IN_DEVICE : common_1.P1_VALUES.ONLY_RETRIEVE, 0, data, [common_1.ErrorCode.NoError])
245
88
  .then((response) => {
246
89
  const errorCodeData = response.slice(-2);
247
- const returnCode = errorCodeData[0] * 256 + errorCodeData[1];
248
- const compressedPk = Buffer.from(response.slice(0, 33));
249
- const bech32Address = Buffer.from(response.slice(33, -2)).toString();
90
+ const return_code = errorCodeData[0] * 256 + errorCodeData[1];
250
91
  return {
251
- bech32_address: bech32Address,
252
- compressed_pk: compressedPk,
253
- return_code: returnCode,
254
- error_message: (0, common_1.errorCodeToString)(returnCode),
92
+ address: Buffer.from(response.slice(33, -2)).toString(),
93
+ publicKey: Buffer.from(response.slice(0, 33)).toString("hex"),
94
+ return_code,
95
+ error_message: (0, common_1.errorCodeToString)(return_code),
255
96
  };
256
97
  }, common_1.processErrorResponse);
257
98
  })
@@ -262,58 +103,69 @@ class THORChainApp {
262
103
  }
263
104
  });
264
105
  }
265
- showAddressAndPubKey(path, hrp) {
106
+ signGetChunks(path, message) {
266
107
  return __awaiter(this, void 0, void 0, function* () {
267
- try {
268
- return yield this.serializePath(path)
269
- .then((serializedPath) => {
270
- const data = Buffer.concat([THORChainApp.serializeHRP(hrp), serializedPath]);
108
+ const serializedPath = yield this.serializePath(path);
109
+ if (!Buffer.isBuffer(serializedPath))
110
+ return serializedPath;
111
+ const chunks = [];
112
+ chunks.push(serializedPath);
113
+ const buffer = Buffer.from(message);
114
+ for (let i = 0; i < buffer.length; i += common_1.CHUNK_SIZE) {
115
+ let end = i + common_1.CHUNK_SIZE;
116
+ if (i > buffer.length) {
117
+ end = buffer.length;
118
+ }
119
+ chunks.push(buffer.slice(i, end));
120
+ }
121
+ return chunks;
122
+ });
123
+ }
124
+ signSendChunk(chunkIdx, chunkNum, chunk) {
125
+ return __awaiter(this, void 0, void 0, function* () {
126
+ switch (this.versionResponse.major) {
127
+ case 2: {
128
+ chunkIdx = (() => {
129
+ if (chunkIdx === 1)
130
+ return common_1.PAYLOAD_TYPE.INIT;
131
+ if (chunkIdx === chunkNum)
132
+ return common_1.PAYLOAD_TYPE.LAST;
133
+ return common_1.PAYLOAD_TYPE.ADD;
134
+ })();
271
135
  return this.transport
272
- .send(common_1.CLA, common_1.INS.GET_ADDR_SECP256K1, common_1.P1_VALUES.SHOW_ADDRESS_IN_DEVICE, 0, data, [common_1.ErrorCode.NoError])
136
+ .send(common_1.CLA, common_1.INS.SIGN_SECP256K1, chunkIdx, 0, chunk, [common_1.ErrorCode.NoError, 0x6984, 0x6a80])
273
137
  .then((response) => {
274
138
  const errorCodeData = response.slice(-2);
275
139
  const returnCode = errorCodeData[0] * 256 + errorCodeData[1];
276
- const compressedPk = Buffer.from(response.slice(0, 33));
277
- const bech32Address = Buffer.from(response.slice(33, -2)).toString();
140
+ let errorMessage = (0, common_1.errorCodeToString)(returnCode);
141
+ if (returnCode === 0x6a80 || returnCode === 0x6984) {
142
+ errorMessage = `${errorMessage} : ${response.slice(0, response.length - 2).toString("ascii")}`;
143
+ }
144
+ let signature = null;
145
+ if (response.length > 2) {
146
+ signature = response.slice(0, response.length - 2);
147
+ }
278
148
  return {
279
- bech32_address: bech32Address,
280
- compressed_pk: compressedPk,
149
+ signature,
281
150
  return_code: returnCode,
282
- error_message: (0, common_1.errorCodeToString)(returnCode),
151
+ error_message: errorMessage,
283
152
  };
284
153
  }, common_1.processErrorResponse);
285
- })
286
- .catch((err) => (0, common_1.processErrorResponse)(err));
287
- }
288
- catch (e) {
289
- return (0, common_1.processErrorResponse)(e);
290
- }
291
- });
292
- }
293
- signSendChunk(chunkIdx, chunkNum, chunk) {
294
- return __awaiter(this, void 0, void 0, function* () {
295
- switch (this.versionResponse.major) {
296
- case 2:
297
- return (0, helpers_1.signSendChunkv2)(this, chunkIdx, chunkNum, chunk);
154
+ }
298
155
  default:
299
156
  return {
157
+ signature: null,
300
158
  return_code: 0x6400,
301
159
  error_message: "App Version is not supported",
302
160
  };
303
161
  }
304
162
  });
305
163
  }
306
- sign(msg) {
164
+ sign(path, message) {
307
165
  return __awaiter(this, void 0, void 0, function* () {
308
- const rawTx = stringifyKeysInOrder({
309
- account_number: msg.account_number,
310
- chain_id: THOR_CHAIN,
311
- fee: { amount: msg.tx.fee.amount, gas: msg.tx.fee.gas },
312
- memo: msg.tx.memo,
313
- msgs: msg.tx.msg,
314
- sequence: msg.sequence,
315
- });
316
- return this.signGetChunks(msg.addressNList, rawTx).then((chunks) => {
166
+ return this.signGetChunks(path, message).then((chunks) => {
167
+ if (!Array.isArray(chunks))
168
+ return chunks;
317
169
  return this.signSendChunk(1, chunks.length, chunks[0]).then((response) => __awaiter(this, void 0, void 0, function* () {
318
170
  let result = {
319
171
  return_code: response.return_code,
@@ -336,5 +188,5 @@ class THORChainApp {
336
188
  });
337
189
  }
338
190
  }
339
- exports.THORChainApp = THORChainApp;
191
+ exports.Thorchain = Thorchain;
340
192
  //# sourceMappingURL=hw-app-thor.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"hw-app-thor.js","sourceRoot":"","sources":["../../src/thorchain/hw-app-thor.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA;;;;;;;;;;;;;;;mFAemF;AACnF,sCAAqC;AAErC,oDAA4B;AAC5B,0DAAkC;AAElC,qCAUkB;AAClB,uCAA0E;AAE1E,MAAM,UAAU,GAAG,sBAAsB,CAAC;AAe1C,MAAM,oBAAoB,GAAG,CAAC,SAAc,EAAE,EAAE;IAC9C,2CAA2C;IAC3C,oCAAoC;IACpC,IAAI,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE;QAC5B,SAAS,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;YAChC,SAAS,CAAC,KAAK,CAAC,GAAG,oBAAoB,CAAC,IAAI,CAAC,CAAC;QAChD,CAAC,CAAC,CAAC;QACH,OAAO,SAAS,CAAC;KAClB;IAED,2CAA2C;IAC3C,IAAI,OAAO,SAAS,KAAK,QAAQ;QAAE,OAAO,SAAS,CAAC;IACpD,MAAM,OAAO,GAAQ,EAAE,CAAC;IACxB,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC;SACnB,IAAI,EAAE;SACN,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,oBAAoB,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IAC3E,OAAO,OAAO,CAAC;AACjB,CAAC,CAAC;AAEF,MAAM,oBAAoB,GAAG,CAAC,IAAS,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC,CAAC;AAEvF,MAAM,YAAY;IAIhB,YAAY,SAAc,EAAE,WAAW,GAAG,gBAAO;QAC/C,IAAI,CAAC,SAAS,EAAE;YACd,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;SACnD;QAED,IAAI,CAAC,SAAS,GAAG,SAAgB,CAAC;QAClC,SAAS,CAAC,qBAAqB,CAAC,IAAI,CAAC,SAAS,CAAC,CAC7C,IAAI,EACJ,CAAC,YAAY,EAAE,MAAM,EAAE,qBAAqB,EAAE,SAAS,EAAE,YAAY,EAAE,iBAAiB,CAAC,EACzF,WAAW,CACZ,CAAC;IACJ,CAAC;IAED,MAAM,CAAC,YAAY,CAAC,GAAQ;QAC1B,IAAI,GAAG,IAAI,IAAI,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,IAAI,GAAG,CAAC,MAAM,GAAG,EAAE,EAAE;YACpD,MAAM,IAAI,KAAK,CAAC,aAAa,CAAC,CAAC;SAChC;QACD,MAAM,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC;QACzC,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;QAC9B,GAAG,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;QAClB,OAAO,GAAG,CAAC;IACb,CAAC;IAED,MAAM,CAAC,eAAe,CAAC,GAAQ,EAAE,EAAO;;QACtC,IAAI,EAAE,CAAC,MAAM,KAAK,EAAE,EAAE;YACpB,MAAM,IAAI,KAAK,CAAC,2CAA2C,CAAC,CAAC;SAC9D;QACD,MAAM,UAAU,GAAG,gBAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC;QACnE,MAAM,OAAO,GAAG,IAAI,mBAAS,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,MAAM,EAAE,CAAC;QAC5D,kDAAkD;QAClD,MAAM,MAAM,GAAG,aAAM,CAAC,MAAM,KAAI,MAAC,aAAc,CAAC,MAAM,0CAAE,MAAM,CAAA,CAAC;QAC/D,kDAAkD;QAClD,MAAM,OAAO,GAAG,aAAM,CAAC,OAAO,KAAI,MAAC,aAAc,CAAC,MAAM,0CAAE,OAAO,CAAA,CAAC;QAElE,OAAO,MAAM,CAAC,GAAG,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC;IACvC,CAAC;IAEK,aAAa,CAAC,IAAmB;;YACrC,IAAI,CAAC,eAAe,GAAG,MAAM,IAAA,mBAAU,EAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YAExD,IAAI,IAAI,CAAC,eAAe,CAAC,WAAW,KAAK,kBAAS,CAAC,OAAO,EAAE;gBAC1D,MAAM,IAAI,CAAC,eAAe,CAAC;aAC5B;YAED,QAAQ,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE;gBAClC,KAAK,CAAC;oBACJ,OAAO,IAAA,yBAAe,EAAC,IAAI,CAAC,CAAC;gBAC/B;oBACE,OAAO;wBACL,WAAW,EAAE,MAAM;wBACnB,aAAa,EAAE,8BAA8B;qBAC9C,CAAC;aACL;QACH,CAAC;KAAA;IAEK,aAAa,CAAC,IAAmB,EAAE,OAAY;;YACnD,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;YAEtD,MAAM,MAAM,GAAG,EAAE,CAAC;YAClB,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;YAC5B,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAEpC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,IAAI,mBAAU,EAAE;gBAClD,IAAI,GAAG,GAAG,CAAC,GAAG,mBAAU,CAAC;gBACzB,IAAI,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE;oBACrB,GAAG,GAAG,MAAM,CAAC,MAAM,CAAC;iBACrB;gBACD,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;aACnC;YAED,OAAO,MAAM,CAAC;QAChB,CAAC;KAAA;IAEK,UAAU;;YACd,IAAI;gBACF,IAAI,CAAC,eAAe,GAAG,MAAM,IAAA,mBAAU,EAAC,IAAI,CAAC,SAAS,CAAC,CAAC;gBACxD,OAAO,IAAI,CAAC,eAAe,CAAC;aAC7B;YAAC,OAAO,CAAC,EAAE;gBACV,OAAO,IAAA,6BAAoB,EAAC,CAAC,CAAC,CAAC;aAChC;QACH,CAAC;KAAA;IAEK,OAAO;;YACX,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,QAAa,EAAE,EAAE;gBAClE,MAAM,aAAa,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;gBACzC,MAAM,UAAU,GAAG,aAAa,CAAC,CAAC,CAAC,GAAG,GAAG,GAAG,aAAa,CAAC,CAAC,CAAC,CAAC;gBAE7D,MAAM,MAAM,GAAG,EAAS,CAAC;gBAEzB,IAAI,OAAO,GAAG,KAAK,CAAC;gBACpB,IAAI,UAAU,GAAG,KAAK,CAAC;gBACvB,IAAI,OAAO,GAAG,CAAC,CAAC;gBAChB,IAAI,UAAU,GAAG,CAAC,CAAC;gBAEnB,IAAI,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE;oBACrB,yEAAyE;oBACzE,MAAM,CAAC,aAAa,GAAG,mCAAmC,CAAC;oBAC3D,MAAM,CAAC,WAAW,GAAG,MAAM,CAAC;iBAC7B;qBAAM;oBACL,MAAM,UAAU,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;oBAC/B,OAAO,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,GAAG,UAAU,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;oBAC9D,IAAI,GAAG,GAAG,CAAC,GAAG,UAAU,CAAC;oBACzB,MAAM,aAAa,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC;oBACpC,GAAG,IAAI,CAAC,CAAC;oBACT,UAAU,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,GAAG,aAAa,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;oBACxE,GAAG,IAAI,aAAa,CAAC;oBACrB,MAAM,WAAW,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC;oBAClC,GAAG,IAAI,CAAC,CAAC;oBACT,OAAO,GAAG,WAAW,CAAC;oBACtB,UAAU,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC;iBAC5B;gBAED,OAAO;oBACL,WAAW,EAAE,UAAU;oBACvB,aAAa,EAAE,IAAA,0BAAiB,EAAC,UAAU,CAAC;oBAC5C,KAAK;oBACL,OAAO;oBACP,UAAU;oBACV,OAAO;oBACP,UAAU;oBAEV,aAAa,EAAE,CAAC,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC;oBAErC,oBAAoB,EAAE,CAAC,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC;oBAE5C,cAAc,EAAE,CAAC,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC;oBAEtC,kBAAkB,EAAE,CAAC,UAAU,GAAG,GAAG,CAAC,KAAK,CAAC;iBAC7C,CAAC;YACJ,CAAC,EAAE,6BAAoB,CAAC,CAAC;QAC3B,CAAC;KAAA;IAEK,UAAU;;YACd,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,kBAAS,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,QAAa,EAAE,EAAE;gBAChH,MAAM,aAAa,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;gBACzC,MAAM,UAAU,GAAG,aAAa,CAAC,CAAC,CAAC,GAAG,GAAG,GAAG,aAAa,CAAC,CAAC,CAAC,CAAC;gBAE7D,IAAI,UAAU,KAAK,MAAM,EAAE;oBACzB,OAAO;wBACL,WAAW,EAAE,UAAU;wBACvB,aAAa,EAAE,iDAAiD;qBACjE,CAAC;iBACH;gBAED,MAAM,QAAQ,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;gBAEtD,IAAI,GAAG,GAAG,CAAC,CAAC;gBACZ,MAAM,uBAAuB,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC;gBAC9C,GAAG,IAAI,CAAC,CAAC;gBACT,MAAM,SAAS,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,GAAG,uBAAuB,CAAC,CAAC,QAAQ,EAAE,CAAC;gBAChF,GAAG,IAAI,uBAAuB,CAAC;gBAE/B,MAAM,QAAQ,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC;gBAC/B,GAAG,IAAI,CAAC,CAAC;gBACT,MAAM,IAAI,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,GAAG,QAAQ,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;gBACjE,GAAG,IAAI,QAAQ,CAAC;gBAEhB,MAAM,aAAa,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC;gBACpC,GAAG,IAAI,CAAC,CAAC;gBACT,6BAA6B;gBAC7B,IAAI,GAAG,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,GAAG,aAAa,CAAC,CAAC;gBACnD,IAAI,GAAG,CAAC,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,EAAE;oBAChC,GAAG,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,GAAG,aAAa,GAAG,CAAC,CAAC,CAAC;iBACpD;gBACD,MAAM,UAAU,GAAG,GAAG,CAAC,QAAQ,EAAE,CAAC;gBAElC,OAAO;oBACL,WAAW,EAAE,UAAU;oBACvB,aAAa,EAAE,IAAA,0BAAiB,EAAC,UAAU,CAAC;oBAC5C,KAAK;oBACL,QAAQ;oBACR,SAAS;oBACT,IAAI;oBACJ,UAAU;iBACX,CAAC;YACJ,CAAC,EAAE,6BAAoB,CAAC,CAAC;QAC3B,CAAC;KAAA;IAEK,SAAS,CAAC,IAAmB;;YACjC,IAAI;gBACF,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;gBAEtD,QAAQ,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE;oBAClC,KAAK,CAAC,CAAC,CAAC;wBACN,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,YAAY,CAAC,YAAY,CAAC,MAAM,CAAC,EAAE,cAAqB,CAAC,CAAC,CAAC;wBACvF,OAAO,MAAM,IAAA,qBAAW,EAAC,IAAI,EAAE,IAAI,CAAC,CAAC;qBACtC;oBACD;wBACE,OAAO;4BACL,WAAW,EAAE,MAAM;4BACnB,aAAa,EAAE,8BAA8B;yBAC9C,CAAC;iBACL;aACF;YAAC,OAAO,CAAC,EAAE;gBACV,OAAO,IAAA,6BAAoB,EAAC,CAAC,CAAC,CAAC;aAChC;QACH,CAAC;KAAA;IAEK,mBAAmB,CAAC,IAAmB,EAAE,GAAQ;;YACrD,IAAI;gBACF,OAAO,MAAM,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC;qBAClC,IAAI,CAAC,CAAC,cAAc,EAAE,EAAE;oBACvB,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,YAAY,CAAC,YAAY,CAAC,GAAG,CAAC,EAAE,cAAqB,CAAC,CAAC,CAAC;oBACpF,OAAO,IAAI,CAAC,SAAS;yBAClB,IAAI,CAAC,YAAG,EAAE,YAAG,CAAC,kBAAkB,EAAE,kBAAS,CAAC,aAAa,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,kBAAS,CAAC,OAAO,CAAC,CAAC;yBACxF,IAAI,CAAC,CAAC,QAAa,EAAE,EAAE;wBACtB,MAAM,aAAa,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;wBACzC,MAAM,UAAU,GAAG,aAAa,CAAC,CAAC,CAAC,GAAG,GAAG,GAAG,aAAa,CAAC,CAAC,CAAC,CAAC;wBAE7D,MAAM,YAAY,GAAG,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;wBACxD,MAAM,aAAa,GAAG,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;wBAErE,OAAO;4BACL,cAAc,EAAE,aAAa;4BAC7B,aAAa,EAAE,YAAY;4BAC3B,WAAW,EAAE,UAAU;4BACvB,aAAa,EAAE,IAAA,0BAAiB,EAAC,UAAU,CAAC;yBAC7C,CAAC;oBACJ,CAAC,EAAE,6BAAoB,CAAC,CAAC;gBAC7B,CAAC,CAAC;qBACD,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,IAAA,6BAAoB,EAAC,GAAG,CAAC,CAAC,CAAC;aAC9C;YAAC,OAAO,CAAC,EAAE;gBACV,OAAO,IAAA,6BAAoB,EAAC,CAAC,CAAC,CAAC;aAChC;QACH,CAAC;KAAA;IAEK,oBAAoB,CAAC,IAAmB,EAAE,GAAQ;;YACtD,IAAI;gBACF,OAAO,MAAM,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC;qBAClC,IAAI,CAAC,CAAC,cAAc,EAAE,EAAE;oBACvB,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,YAAY,CAAC,YAAY,CAAC,GAAG,CAAC,EAAE,cAAqB,CAAC,CAAC,CAAC;oBACpF,OAAO,IAAI,CAAC,SAAS;yBAClB,IAAI,CAAC,YAAG,EAAE,YAAG,CAAC,kBAAkB,EAAE,kBAAS,CAAC,sBAAsB,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,kBAAS,CAAC,OAAO,CAAC,CAAC;yBACjG,IAAI,CAAC,CAAC,QAAa,EAAE,EAAE;wBACtB,MAAM,aAAa,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;wBACzC,MAAM,UAAU,GAAG,aAAa,CAAC,CAAC,CAAC,GAAG,GAAG,GAAG,aAAa,CAAC,CAAC,CAAC,CAAC;wBAE7D,MAAM,YAAY,GAAG,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;wBACxD,MAAM,aAAa,GAAG,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;wBAErE,OAAO;4BACL,cAAc,EAAE,aAAa;4BAC7B,aAAa,EAAE,YAAY;4BAC3B,WAAW,EAAE,UAAU;4BACvB,aAAa,EAAE,IAAA,0BAAiB,EAAC,UAAU,CAAC;yBAC7C,CAAC;oBACJ,CAAC,EAAE,6BAAoB,CAAC,CAAC;gBAC7B,CAAC,CAAC;qBACD,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,IAAA,6BAAoB,EAAC,GAAG,CAAC,CAAC,CAAC;aAC9C;YAAC,OAAO,CAAC,EAAE;gBACV,OAAO,IAAA,6BAAoB,EAAC,CAAC,CAAC,CAAC;aAChC;QACH,CAAC;KAAA;IAEK,aAAa,CAAC,QAAgB,EAAE,QAAgB,EAAE,KAAU;;YAChE,QAAQ,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE;gBAClC,KAAK,CAAC;oBACJ,OAAO,IAAA,yBAAe,EAAC,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC;gBAC1D;oBACE,OAAO;wBACL,WAAW,EAAE,MAAM;wBACnB,aAAa,EAAE,8BAA8B;qBAC9C,CAAC;aACL;QACH,CAAC;KAAA;IAEK,IAAI,CAAC,GAAyB;;YAClC,MAAM,KAAK,GAAG,oBAAoB,CAAC;gBACjC,cAAc,EAAE,GAAG,CAAC,cAAc;gBAClC,QAAQ,EAAE,UAAU;gBACpB,GAAG,EAAE,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,EAAE,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,EAAE;gBACvD,IAAI,EAAE,GAAG,CAAC,EAAE,CAAC,IAAI;gBACjB,IAAI,EAAE,GAAG,CAAC,EAAE,CAAC,GAAG;gBAChB,QAAQ,EAAE,GAAG,CAAC,QAAQ;aACvB,CAAC,CAAC;YAEH,OAAO,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,YAAY,EAAE,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE;gBACjE,OAAO,IAAI,CAAC,aAAa,CAAC,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAO,QAAQ,EAAE,EAAE;oBAC7E,IAAI,MAAM,GAAG;wBACX,WAAW,EAAE,QAAQ,CAAC,WAAW;wBACjC,aAAa,EAAE,QAAQ,CAAC,aAAa;wBACrC,SAAS,EAAE,IAAI;qBAChB,CAAC;oBAEF,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE;wBACzC,MAAM,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;wBACnE,IAAI,MAAM,CAAC,WAAW,KAAK,kBAAS,CAAC,OAAO,EAAE;4BAC5C,MAAM;yBACP;qBACF;oBAED,OAAO;wBACL,WAAW,EAAE,MAAM,CAAC,WAAW;wBAC/B,aAAa,EAAE,MAAM,CAAC,aAAa;wBACnC,SAAS,EAAE,MAAM,CAAC,SAAS;qBAC5B,CAAC;gBACJ,CAAC,CAAA,EAAE,6BAAoB,CAAC,CAAC;YAC3B,CAAC,EAAE,6BAAoB,CAAC,CAAC;QAC3B,CAAC;KAAA;CACF;AAEQ,oCAAY"}
1
+ {"version":3,"file":"hw-app-thor.js","sourceRoot":"","sources":["../../src/thorchain/hw-app-thor.ts"],"names":[],"mappings":";;;;;;;;;;;;AAkBA,qCAUkB;AAelB,MAAa,SAAS;IAIpB,YAAY,SAAoB,EAAE,WAAW,GAAG,gBAAO;QACrD,IAAI,CAAC,SAAS,EAAE;YACd,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;SACnD;QAED,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,SAAS,CAAC,qBAAqB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,IAAI,EAAE,CAAC,YAAY,EAAE,MAAM,CAAC,EAAE,WAAW,CAAC,CAAC;IAC7F,CAAC;IAED,UAAU;QACR,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,YAAG,EAAE,YAAG,CAAC,WAAW,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE;YACvE,MAAM,aAAa,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;YACzC,MAAM,UAAU,GAAG,aAAa,CAAC,CAAC,CAAC,GAAG,GAAG,GAAG,aAAa,CAAC,CAAC,CAAC,CAAC;YAE7D,IAAI,QAAQ,GAAG,CAAC,CAAC;YACjB,IAAI,QAAQ,CAAC,MAAM,IAAI,CAAC,EAAE;gBACxB,QAAQ,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;aAChG;YAED,OAAO;gBACL,WAAW,EAAE,UAAU;gBACvB,aAAa,EAAE,IAAA,0BAAiB,EAAC,UAAU,CAAC;gBAC5C,SAAS,EAAE,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC;gBAC5B,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC;gBAClB,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC;gBAClB,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC;gBAClB,aAAa,EAAE,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC;gBAChC,SAAS,EAAE,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;aACjC,CAAC;QACJ,CAAC,EAAE,6BAAoB,CAAC,CAAC;IAC3B,CAAC;IAED,YAAY,CAAC,GAAW;QACtB,IAAI,GAAG,IAAI,IAAI,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC,IAAI,GAAG,CAAC,MAAM,GAAG,EAAE,EAAE;YACtD,MAAM,IAAI,KAAK,CAAC,aAAa,CAAC,CAAC;SAChC;QAED,MAAM,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC;QACzC,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;QAC9B,GAAG,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;QAClB,OAAO,GAAG,CAAC;IACb,CAAC;IAEK,aAAa,CAAC,IAAmB;;YACrC,IAAI,CAAC,eAAe,GAAG,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;YAE/C,IAAI,IAAI,CAAC,eAAe,CAAC,WAAW,KAAK,kBAAS,CAAC,OAAO,EAAE;gBAC1D,MAAM,IAAI,CAAC,eAAe,CAAC;aAC5B;YAED,QAAQ,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE;gBAClC,KAAK,CAAC,CAAC,CAAC;oBACN,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE;wBAC9B,MAAM,IAAI,KAAK,CAAC,eAAe,CAAC,CAAC;qBAClC;oBAED,MAAM,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;oBAC7B,GAAG,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;oBAC9B,GAAG,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;oBAC9B,GAAG,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;oBAC9B,GAAG,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;oBAC/B,GAAG,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;oBAE/B,OAAO,GAAG,CAAC;iBACZ;gBACD;oBACE,OAAO;wBACL,WAAW,EAAE,MAAM;wBACnB,aAAa,EAAE,8BAA8B;qBAC9C,CAAC;aACL;QACH,CAAC;KAAA;IAEK,UAAU,CAAC,IAAmB,EAAE,GAAW,EAAE,WAAqB;;YACtE,IAAI;gBACF,OAAO,MAAM,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC;qBAClC,IAAI,CAAC,CAAC,cAAc,EAAE,EAAE;oBACvB,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,cAAc,CAAC;wBAAE,OAAO,cAAc,CAAC;oBAE5D,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,EAAE,cAAc,CAAC,CAAC,CAAC;oBAErE,OAAO,IAAI,CAAC,SAAS;yBAClB,IAAI,CACH,YAAG,EACH,YAAG,CAAC,kBAAkB,EACtB,WAAW,CAAC,CAAC,CAAC,kBAAS,CAAC,sBAAsB,CAAC,CAAC,CAAC,kBAAS,CAAC,aAAa,EACxE,CAAC,EACD,IAAI,EACJ,CAAC,kBAAS,CAAC,OAAO,CAAC,CACpB;yBACA,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE;wBACjB,MAAM,aAAa,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;wBACzC,MAAM,WAAW,GAAG,aAAa,CAAC,CAAC,CAAC,GAAG,GAAG,GAAG,aAAa,CAAC,CAAC,CAAC,CAAC;wBAC9D,OAAO;4BACL,OAAO,EAAE,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;4BACvD,SAAS,EAAE,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC;4BAC7D,WAAW;4BACX,aAAa,EAAE,IAAA,0BAAiB,EAAC,WAAW,CAAC;yBAC9C,CAAC;oBACJ,CAAC,EAAE,6BAAoB,CAAC,CAAC;gBAC7B,CAAC,CAAC;qBACD,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,IAAA,6BAAoB,EAAC,GAAG,CAAC,CAAC,CAAC;aAC9C;YAAC,OAAO,CAAC,EAAE;gBACV,OAAO,IAAA,6BAAoB,EAAC,CAAC,CAAC,CAAC;aAChC;QACH,CAAC;KAAA;IAEK,aAAa,CAAC,IAAmB,EAAE,OAAe;;YACtD,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;YAEtD,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,cAAc,CAAC;gBAAE,OAAO,cAAc,CAAC;YAE5D,MAAM,MAAM,GAAG,EAAE,CAAC;YAClB,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;YAC5B,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAEpC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,IAAI,mBAAU,EAAE;gBAClD,IAAI,GAAG,GAAG,CAAC,GAAG,mBAAU,CAAC;gBACzB,IAAI,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE;oBACrB,GAAG,GAAG,MAAM,CAAC,MAAM,CAAC;iBACrB;gBACD,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;aACnC;YAED,OAAO,MAAM,CAAC;QAChB,CAAC;KAAA;IAEK,aAAa,CAAC,QAAgB,EAAE,QAAgB,EAAE,KAAa;;YACnE,QAAQ,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE;gBAClC,KAAK,CAAC,CAAC,CAAC;oBACN,QAAQ,GAAG,CAAC,GAAG,EAAE;wBACf,IAAI,QAAQ,KAAK,CAAC;4BAAE,OAAO,qBAAY,CAAC,IAAI,CAAC;wBAC7C,IAAI,QAAQ,KAAK,QAAQ;4BAAE,OAAO,qBAAY,CAAC,IAAI,CAAC;wBACpD,OAAO,qBAAY,CAAC,GAAG,CAAC;oBAC1B,CAAC,CAAC,EAAE,CAAC;oBAEL,OAAO,IAAI,CAAC,SAAS;yBAClB,IAAI,CAAC,YAAG,EAAE,YAAG,CAAC,cAAc,EAAE,QAAQ,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,kBAAS,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;yBACtF,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE;wBACjB,MAAM,aAAa,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;wBACzC,MAAM,UAAU,GAAG,aAAa,CAAC,CAAC,CAAC,GAAG,GAAG,GAAG,aAAa,CAAC,CAAC,CAAC,CAAC;wBAC7D,IAAI,YAAY,GAAG,IAAA,0BAAiB,EAAC,UAAU,CAAC,CAAC;wBAEjD,IAAI,UAAU,KAAK,MAAM,IAAI,UAAU,KAAK,MAAM,EAAE;4BAClD,YAAY,GAAG,GAAG,YAAY,MAAM,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;yBAChG;wBAED,IAAI,SAAS,GAAkB,IAAI,CAAC;wBACpC,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE;4BACvB,SAAS,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;yBACpD;wBAED,OAAO;4BACL,SAAS;4BACT,WAAW,EAAE,UAAU;4BACvB,aAAa,EAAE,YAAY;yBAC5B,CAAC;oBACJ,CAAC,EAAE,6BAAoB,CAAC,CAAC;iBAC5B;gBACD;oBACE,OAAO;wBACL,SAAS,EAAE,IAAI;wBACf,WAAW,EAAE,MAAM;wBACnB,aAAa,EAAE,8BAA8B;qBAC9C,CAAC;aACL;QACH,CAAC;KAAA;IAEK,IAAI,CAAC,IAAmB,EAAE,OAAe;;YAC7C,OAAO,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE;gBACvD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC;oBAAE,OAAO,MAAM,CAAC;gBAE1C,OAAO,IAAI,CAAC,aAAa,CAAC,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAO,QAAQ,EAAE,EAAE;oBAC7E,IAAI,MAAM,GAAiB;wBACzB,WAAW,EAAE,QAAQ,CAAC,WAAW;wBACjC,aAAa,EAAE,QAAQ,CAAC,aAAa;wBACrC,SAAS,EAAE,IAAI;qBAChB,CAAC;oBAEF,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE;wBACzC,MAAM,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;wBACnE,IAAI,MAAM,CAAC,WAAW,KAAK,kBAAS,CAAC,OAAO,EAAE;4BAC5C,MAAM;yBACP;qBACF;oBAED,OAAO;wBACL,WAAW,EAAE,MAAM,CAAC,WAAW;wBAC/B,aAAa,EAAE,MAAM,CAAC,aAAa;wBACnC,SAAS,EAAE,MAAM,CAAC,SAAS;qBAC5B,CAAC;gBACJ,CAAC,CAAA,EAAE,6BAAoB,CAAC,CAAC;YAC3B,CAAC,EAAE,6BAAoB,CAAC,CAAC;QAC3B,CAAC;KAAA;CACF;AAtMD,8BAsMC"}
@@ -1,7 +1,6 @@
1
1
  import * as core from "@shapeshiftoss/hdwallet-core";
2
2
  import { LedgerTransport } from "..";
3
3
  export * from "./common";
4
- export * from "./helpers";
5
4
  export * from "./hw-app-thor";
6
5
  export declare const thorchainGetAddress: (transport: LedgerTransport, msg: core.ThorchainGetAddress) => Promise<string>;
7
6
  export declare const thorchainSignTx: (transport: LedgerTransport, msg: core.ThorchainSignTx) => Promise<core.ThorchainSignedTx>;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/thorchain/index.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,IAAI,MAAM,8BAA8B,CAAC;AAIrD,OAAO,EAAe,eAAe,EAAE,MAAM,IAAI,CAAC;AAElD,cAAc,UAAU,CAAC;AACzB,cAAc,WAAW,CAAC;AAC1B,cAAc,eAAe,CAAC;AAI9B,eAAO,MAAM,mBAAmB,cACnB,eAAe,OACrB,KAAK,mBAAmB,KAC5B,QAAQ,MAAM,CAMhB,CAAC;AAEF,eAAO,MAAM,eAAe,cACf,eAAe,OACrB,KAAK,eAAe,KACxB,QAAQ,KAAK,iBAAiB,CAgDhC,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/thorchain/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,IAAI,MAAM,8BAA8B,CAAC;AAIrD,OAAO,EAAe,eAAe,EAAwB,MAAM,IAAI,CAAC;AACxE,cAAc,UAAU,CAAC;AACzB,cAAc,eAAe,CAAC;AAM9B,eAAO,MAAM,mBAAmB,cACnB,eAAe,OACrB,KAAK,mBAAmB,KAC5B,QAAQ,MAAM,CAMhB,CAAC;AAEF,eAAO,MAAM,eAAe,cACf,eAAe,OACrB,KAAK,eAAe,KACxB,QAAQ,KAAK,iBAAiB,CA0DhC,CAAC"}
@@ -39,28 +39,37 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
39
39
  };
40
40
  Object.defineProperty(exports, "__esModule", { value: true });
41
41
  exports.thorchainSignTx = exports.thorchainGetAddress = void 0;
42
+ const crypto_1 = require("@cosmjs/crypto");
42
43
  const base64_js_1 = require("base64-js");
43
44
  const p_lazy_1 = __importDefault(require("p-lazy"));
44
45
  const __1 = require("..");
45
- const utils_1 = require("./utils");
46
46
  __exportStar(require("./common"), exports);
47
- __exportStar(require("./helpers"), exports);
48
47
  __exportStar(require("./hw-app-thor"), exports);
49
48
  const protoTxBuilder = p_lazy_1.default.from(() => Promise.resolve().then(() => __importStar(require("@shapeshiftoss/proto-tx-builder"))));
49
+ const THOR_CHAIN = "thorchain-mainnet-v1";
50
50
  const thorchainGetAddress = (transport, msg) => __awaiter(void 0, void 0, void 0, function* () {
51
- const addressAndPubkey = yield transport.call("Rune", "getAddressAndPubKey", msg.addressNList, "thor");
52
- (0, __1.handleError)(addressAndPubkey, transport, "Unable to obtain address and public key from device.");
53
- return addressAndPubkey.payload.bech32_address;
51
+ const res = yield transport.call("Thorchain", "getAddress", msg.addressNList, "thor");
52
+ (0, __1.handleError)(res, transport, "Unable to obtain address and public key from device.");
53
+ return res.payload.address;
54
54
  });
55
55
  exports.thorchainGetAddress = thorchainGetAddress;
56
56
  const thorchainSignTx = (transport, msg) => __awaiter(void 0, void 0, void 0, function* () {
57
- const addressAndPubkey = yield transport.call("Rune", "getAddressAndPubKey", msg.addressNList, "thor");
58
- (0, __1.handleError)(addressAndPubkey, transport, "Unable to obtain address and public key from device.");
59
- const { bech32_address: address, compressed_pk } = addressAndPubkey.payload;
60
- const pubkey = (0, base64_js_1.fromByteArray)(compressed_pk);
61
- const signResponse = yield transport.call("Rune", "sign", msg);
57
+ const getAddressResponse = yield transport.call("Thorchain", "getAddress", msg.addressNList, "thor");
58
+ (0, __1.handleError)(getAddressResponse, transport, "Unable to obtain address and public key from device.");
59
+ const { address, publicKey } = getAddressResponse.payload;
60
+ const unsignedTx = (0, __1.stringifyKeysInOrder)({
61
+ account_number: msg.account_number,
62
+ chain_id: THOR_CHAIN,
63
+ fee: { amount: msg.tx.fee.amount, gas: msg.tx.fee.gas },
64
+ memo: msg.tx.memo,
65
+ msgs: msg.tx.msg,
66
+ sequence: msg.sequence,
67
+ });
68
+ const signResponse = yield transport.call("Thorchain", "sign", msg.addressNList, unsignedTx);
62
69
  (0, __1.handleError)(signResponse, transport, "Unable to obtain signature from device.");
63
70
  const signature = signResponse.payload.signature;
71
+ if (!signature)
72
+ throw new Error("No signature returned from device");
64
73
  const offlineSigner = {
65
74
  getAccounts() {
66
75
  return __awaiter(this, void 0, void 0, function* () {
@@ -68,7 +77,7 @@ const thorchainSignTx = (transport, msg) => __awaiter(void 0, void 0, void 0, fu
68
77
  {
69
78
  address,
70
79
  algo: "secp256k1",
71
- pubkey: compressed_pk,
80
+ pubkey: Buffer.from(publicKey, "hex"),
72
81
  },
73
82
  ];
74
83
  });
@@ -82,9 +91,9 @@ const thorchainSignTx = (transport, msg) => __awaiter(void 0, void 0, void 0, fu
82
91
  signature: {
83
92
  pub_key: {
84
93
  type: "tendermint/PubKeySecp256k1",
85
- value: pubkey,
94
+ value: publicKey,
86
95
  },
87
- signature: (0, utils_1.getSignature)(signature),
96
+ signature: (0, base64_js_1.fromByteArray)(crypto_1.Secp256k1Signature.fromDer(signature).toFixedLength()),
88
97
  },
89
98
  };
90
99
  });
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/thorchain/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAGA,yCAA0C;AAC1C,oDAA2B;AAE3B,0BAAkD;AAClD,mCAAuC;AACvC,2CAAyB;AACzB,4CAA0B;AAC1B,gDAA8B;AAE9B,MAAM,cAAc,GAAG,gBAAK,CAAC,IAAI,CAAC,GAAG,EAAE,mDAAQ,iCAAiC,GAAC,CAAC,CAAC;AAE5E,MAAM,mBAAmB,GAAG,CACjC,SAA0B,EAC1B,GAA6B,EACZ,EAAE;IACnB,MAAM,gBAAgB,GAAG,MAAM,SAAS,CAAC,IAAI,CAAC,MAAM,EAAE,qBAAqB,EAAE,GAAG,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC;IAEvG,IAAA,eAAW,EAAC,gBAAgB,EAAE,SAAS,EAAE,sDAAsD,CAAC,CAAC;IAEjG,OAAO,gBAAgB,CAAC,OAAO,CAAC,cAAc,CAAC;AACjD,CAAC,CAAA,CAAC;AATW,QAAA,mBAAmB,uBAS9B;AAEK,MAAM,eAAe,GAAG,CAC7B,SAA0B,EAC1B,GAAyB,EACQ,EAAE;IACnC,MAAM,gBAAgB,GAAG,MAAM,SAAS,CAAC,IAAI,CAAC,MAAM,EAAE,qBAAqB,EAAE,GAAG,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC;IAEvG,IAAA,eAAW,EAAC,gBAAgB,EAAE,SAAS,EAAE,sDAAsD,CAAC,CAAC;IAEjG,MAAM,EAAE,cAAc,EAAE,OAAO,EAAE,aAAa,EAAE,GAAG,gBAAgB,CAAC,OAAO,CAAC;IAC5E,MAAM,MAAM,GAAG,IAAA,yBAAa,EAAC,aAAa,CAAC,CAAC;IAE5C,MAAM,YAAY,GAAG,MAAM,SAAS,CAAC,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC;IAE/D,IAAA,eAAW,EAAC,YAAY,EAAE,SAAS,EAAE,yCAAyC,CAAC,CAAC;IAEhF,MAAM,SAAS,GAAG,YAAY,CAAC,OAAO,CAAC,SAAS,CAAC;IAEjD,MAAM,aAAa,GAAuB;QAClC,WAAW;;gBACf,OAAO;oBACL;wBACE,OAAO;wBACP,IAAI,EAAE,WAAW;wBACjB,MAAM,EAAE,aAAa;qBACtB;iBACF,CAAC;YACJ,CAAC;SAAA;QAEK,SAAS,CAAC,aAAqB,EAAE,OAAmB;;gBACxD,IAAI,aAAa,KAAK,OAAO;oBAAE,MAAM,IAAI,KAAK,CAAC,yCAAyC,CAAC,CAAC;gBAE1F,OAAO;oBACL,MAAM,EAAE,OAAO;oBACf,SAAS,EAAE;wBACT,OAAO,EAAE;4BACP,IAAI,EAAE,4BAA4B;4BAClC,KAAK,EAAE,MAAM;yBACd;wBACD,SAAS,EAAE,IAAA,oBAAY,EAAC,SAAS,CAAC;qBACnC;iBACF,CAAC;YACJ,CAAC;SAAA;KACF,CAAC;IAEF,MAAM,UAAU,GAAe;QAC7B,QAAQ,EAAE,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;QAC9B,aAAa,EAAE,MAAM,CAAC,GAAG,CAAC,cAAc,CAAC;QACzC,OAAO,EAAE,GAAG,CAAC,QAAQ;KACtB,CAAC;IAEF,OAAO,CAAC,MAAM,cAAc,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,CAAC,EAAW,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,CAAC,CAAC;AAClG,CAAC,CAAA,CAAC;AAnDW,QAAA,eAAe,mBAmD1B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/thorchain/index.ts"],"names":[],"mappings":"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"}
@@ -6,13 +6,13 @@ import type getAppAndVersion from "@ledgerhq/live-common/lib/hw/getAppAndVersion
6
6
  import type getDeviceInfo from "@ledgerhq/live-common/lib/hw/getDeviceInfo";
7
7
  import type openApp from "@ledgerhq/live-common/lib/hw/openApp";
8
8
  import * as core from "@shapeshiftoss/hdwallet-core";
9
- import { THORChainApp } from "./thorchain";
9
+ import { Thorchain } from "./thorchain";
10
10
  type MethodsOnly<T> = {
11
11
  [k in keyof T as T[k] extends (...args: any) => any ? k : never]: T[k];
12
12
  };
13
13
  type UnwrapPromise<T> = T extends Promise<infer R> ? R : T;
14
14
  type DefinitelyCallable<T> = T extends (...args: any) => any ? T : never;
15
- export type LedgerTransportCoinType = null | "Btc" | "Eth" | "Rune" | "Cosmos";
15
+ export type LedgerTransportCoinType = null | "Btc" | "Eth" | "Thorchain" | "Cosmos";
16
16
  type CurriedWithTransport<T extends (transport: Transport, ...args: any) => any> = T extends (transport: Transport, ...args: infer R) => infer S ? (...args: R) => S : never;
17
17
  type LedgerNullTransportMethodMap = {
18
18
  decorateAppAPIMethods: Transport["decorateAppAPIMethods"];
@@ -20,7 +20,7 @@ type LedgerNullTransportMethodMap = {
20
20
  getDeviceInfo: CurriedWithTransport<typeof getDeviceInfo>;
21
21
  openApp: CurriedWithTransport<typeof openApp>;
22
22
  };
23
- type LedgerTransportMethodMap<T extends LedgerTransportCoinType> = T extends null ? LedgerNullTransportMethodMap : T extends "Btc" ? MethodsOnly<Btc> : T extends "Eth" ? MethodsOnly<Eth> : T extends "Rune" ? MethodsOnly<THORChainApp> : T extends "Cosmos" ? MethodsOnly<Cosmos> : never;
23
+ type LedgerTransportMethodMap<T extends LedgerTransportCoinType> = T extends null ? LedgerNullTransportMethodMap : T extends "Btc" ? MethodsOnly<Btc> : T extends "Eth" ? MethodsOnly<Eth> : T extends "Thorchain" ? MethodsOnly<Thorchain> : T extends "Cosmos" ? MethodsOnly<Cosmos> : never;
24
24
  export type LedgerTransportMethodName<T extends LedgerTransportCoinType> = LedgerTransportMethodMap<T> extends never ? never : Extract<keyof LedgerTransportMethodMap<T>, string>;
25
25
  type LedgerTransportMethodUnion<T, U> = unknown extends T ? LedgerTransportMethodUnionInner<LedgerTransportCoinType, U> : T extends LedgerTransportCoinType ? LedgerTransportMethodUnionInner<T, U> : never;
26
26
  type LedgerTransportMethodUnionInner<T, U> = T extends LedgerTransportCoinType ? unknown extends U ? LedgerTransportMethod<T, LedgerTransportMethodName<T>> : U extends LedgerTransportMethodName<T> ? LedgerTransportMethod<T, U> : never : never;
@@ -1 +1 @@
1
- {"version":3,"file":"transport.d.ts","sourceRoot":"","sources":["../src/transport.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"transport.d.ts","sourceRoot":"","sources":["../src/transport.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,GAAG,MAAM,sBAAsB,CAAC;AAC5C,OAAO,KAAK,MAAM,MAAM,yBAAyB,CAAC;AAClD,OAAO,KAAK,GAAG,MAAM,sBAAsB,CAAC;AAC5C,OAAO,KAAK,SAAS,MAAM,wBAAwB,CAAC;AACpD,OAAO,KAAK,gBAAgB,MAAM,+CAA+C,CAAC;AAClF,OAAO,KAAK,aAAa,MAAM,4CAA4C,CAAC;AAC5E,OAAO,KAAK,OAAO,MAAM,sCAAsC,CAAC;AAChE,OAAO,KAAK,IAAI,MAAM,8BAA8B,CAAC;AAErD,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAExC,KAAK,WAAW,CAAC,CAAC,IAAI;KACnB,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,GAAG,IAAI,EAAE,GAAG,KAAK,GAAG,GAAG,CAAC,GAAG,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC;CACvE,CAAC;AACF,KAAK,aAAa,CAAC,CAAC,IAAI,CAAC,SAAS,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;AAC3D,KAAK,kBAAkB,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,IAAI,EAAE,GAAG,KAAK,GAAG,GAAG,CAAC,GAAG,KAAK,CAAC;AAEzE,MAAM,MAAM,uBAAuB,GAAG,IAAI,GAAG,KAAK,GAAG,KAAK,GAAG,WAAW,GAAG,QAAQ,CAAC;AACpF,KAAK,oBAAoB,CAAC,CAAC,SAAS,CAAC,SAAS,EAAE,SAAS,EAAE,GAAG,IAAI,EAAE,GAAG,KAAK,GAAG,IAAI,CAAC,SAAS,CAC3F,SAAS,EAAE,SAAS,EACpB,GAAG,IAAI,EAAE,MAAM,CAAC,KACb,MAAM,CAAC,GACR,CAAC,GAAG,IAAI,EAAE,CAAC,KAAK,CAAC,GACjB,KAAK,CAAC;AAEV,KAAK,4BAA4B,GAAG;IAClC,qBAAqB,EAAE,SAAS,CAAC,uBAAuB,CAAC,CAAC;IAC1D,gBAAgB,EAAE,oBAAoB,CAAC,OAAO,gBAAgB,CAAC,CAAC;IAChE,aAAa,EAAE,oBAAoB,CAAC,OAAO,aAAa,CAAC,CAAC;IAC1D,OAAO,EAAE,oBAAoB,CAAC,OAAO,OAAO,CAAC,CAAC;CAC/C,CAAC;AAEF,KAAK,wBAAwB,CAAC,CAAC,SAAS,uBAAuB,IAAI,CAAC,SAAS,IAAI,GAC7E,4BAA4B,GAC5B,CAAC,SAAS,KAAK,GACf,WAAW,CAAC,GAAG,CAAC,GAChB,CAAC,SAAS,KAAK,GACf,WAAW,CAAC,GAAG,CAAC,GAChB,CAAC,SAAS,WAAW,GACrB,WAAW,CAAC,SAAS,CAAC,GACtB,CAAC,SAAS,QAAQ,GAClB,WAAW,CAAC,MAAM,CAAC,GACnB,KAAK,CAAC;AACV,MAAM,MAAM,yBAAyB,CAAC,CAAC,SAAS,uBAAuB,IAAI,wBAAwB,CAAC,CAAC,CAAC,SAAS,KAAK,GAChH,KAAK,GACL,OAAO,CAAC,MAAM,wBAAwB,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;AAGvD,KAAK,0BAA0B,CAAC,CAAC,EAAE,CAAC,IAAI,OAAO,SAAS,CAAC,GACrD,+BAA+B,CAAC,uBAAuB,EAAE,CAAC,CAAC,GAC3D,CAAC,SAAS,uBAAuB,GACjC,+BAA+B,CAAC,CAAC,EAAE,CAAC,CAAC,GACrC,KAAK,CAAC;AAGV,KAAK,+BAA+B,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,SAAS,uBAAuB,GAC1E,OAAO,SAAS,CAAC,GACf,qBAAqB,CAAC,CAAC,EAAE,yBAAyB,CAAC,CAAC,CAAC,CAAC,GACtD,CAAC,SAAS,yBAAyB,CAAC,CAAC,CAAC,GACtC,qBAAqB,CAAC,CAAC,EAAE,CAAC,CAAC,GAC3B,KAAK,GACP,KAAK,CAAC;AAEV,MAAM,MAAM,qBAAqB,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,SAAS,uBAAuB,GACvE,CAAC,SAAS,yBAAyB,CAAC,CAAC,CAAC,GACpC,kBAAkB,CAAC,wBAAwB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAClD,KAAK,GACP,KAAK,CAAC;AAEV,MAAM,MAAM,cAAc,CACxB,CAAC,SAAS,uBAAuB,GAAG,OAAO,EAC3C,CAAC,SAAS,yBAAyB,CAAC,OAAO,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,GAAG,OAAO,IAChE;IACF,IAAI,EAAE,CAAC,CAAC;IACR,MAAM,EAAE,CAAC,CAAC;CACX,GAAG,CACA;IACE,OAAO,EAAE,IAAI,CAAC;IACd,OAAO,EAAE,aAAa,CAAC,UAAU,CAAC,0BAA0B,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;CACtE,GACD;IACE,OAAO,CAAC,EAAE,KAAK,CAAC;IAChB,OAAO,EAAE;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;CAC5B,CACJ,CAAC;AAEF,8BAAsB,eAAgB,SAAQ,IAAI,CAAC,SAAS;IAE1D,SAAS,EAAE,SAAS,CAAC;gBAET,SAAS,EAAE,SAAS,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO;aAKvC,IAAI,CAAC,CAAC,SAAS,uBAAuB,EAAE,CAAC,SAAS,yBAAyB,CAAC,CAAC,CAAC,EAC5F,IAAI,EAAE,CAAC,EACP,MAAM,EAAE,CAAC,EACT,GAAG,IAAI,EAAE,UAAU,CAAC,qBAAqB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAC/C,OAAO,CAAC,cAAc,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;CACjC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@shapeshiftoss/hdwallet-ledger",
3
- "version": "1.53.0",
3
+ "version": "1.53.2",
4
4
  "license": "MIT",
5
5
  "publishConfig": {
6
6
  "access": "public"
@@ -19,7 +19,7 @@
19
19
  "@ethereumjs/tx": "^3.3.0",
20
20
  "@ledgerhq/hw-app-cosmos": "^6.29.1",
21
21
  "@shapeshiftoss/bitcoinjs-lib": "5.2.0-shapeshift.2",
22
- "@shapeshiftoss/hdwallet-core": "1.53.0",
22
+ "@shapeshiftoss/hdwallet-core": "1.53.2",
23
23
  "base64-js": "^1.5.1",
24
24
  "bchaddrjs": "^0.4.4",
25
25
  "bitcoinjs-message": "^2.0.0",
@@ -40,5 +40,5 @@
40
40
  "@types/ripemd160": "^2.0.2",
41
41
  "typedoc": "^0.20.36"
42
42
  },
43
- "gitHead": "2209e26daf7cb861c40f1d22d8546ef88d83a3f8"
43
+ "gitHead": "4f654af9a6fd654a4fbb82bacb11bead74084aef"
44
44
  }
@@ -1,5 +0,0 @@
1
- /// <reference types="node" />
2
- export declare const serializePathv2: (path: Array<number>) => Buffer;
3
- export declare const signSendChunkv2: (app: any, chunkIdx: any, chunkNum: any, chunk: any) => Promise<any>;
4
- export declare const publicKeyv2: (app: any, data: any) => Promise<any>;
5
- //# sourceMappingURL=helpers.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../src/thorchain/helpers.ts"],"names":[],"mappings":";AA2BA,eAAO,MAAM,eAAe,SAAU,MAAM,MAAM,CAAC,WAalD,CAAC;AAEF,eAAO,MAAM,eAAe,QAAe,GAAG,YAAY,GAAG,YAAY,GAAG,SAAS,GAAG,iBAUvF,CAAC;AAEF,eAAO,MAAM,WAAW,QAAe,GAAG,QAAQ,GAAG,iBAapD,CAAC"}
@@ -1,73 +0,0 @@
1
- "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
- Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.publicKeyv2 = exports.signSendChunkv2 = exports.serializePathv2 = void 0;
13
- const common_1 = require("./common");
14
- const signSendChunkv1 = (app, chunkIdx, chunkNum, chunk) => __awaiter(void 0, void 0, void 0, function* () {
15
- return app.transport
16
- .send(common_1.CLA, common_1.INS.SIGN_SECP256K1, chunkIdx, chunkNum, chunk, [common_1.ErrorCode.NoError, 0x6984, 0x6a80])
17
- .then((response) => {
18
- const errorCodeData = response.slice(-2);
19
- const returnCode = errorCodeData[0] * 256 + errorCodeData[1];
20
- let errorMessage = (0, common_1.errorCodeToString)(returnCode);
21
- if (returnCode === 0x6a80 || returnCode === 0x6984) {
22
- errorMessage = `${errorMessage} : ${response.slice(0, response.length - 2).toString("ascii")}`;
23
- }
24
- let signature = null;
25
- if (response.length > 2) {
26
- signature = response.slice(0, response.length - 2);
27
- }
28
- return {
29
- signature,
30
- return_code: returnCode,
31
- error_message: errorMessage,
32
- };
33
- }, common_1.processErrorResponse);
34
- });
35
- const serializePathv2 = (path) => {
36
- if (!path || path.length !== 5) {
37
- throw new Error("Invalid path.");
38
- }
39
- const buf = Buffer.alloc(20);
40
- buf.writeUInt32LE(path[0], 0);
41
- buf.writeUInt32LE(path[1], 4);
42
- buf.writeUInt32LE(path[2], 8);
43
- buf.writeUInt32LE(path[3], 12);
44
- buf.writeUInt32LE(path[4], 16);
45
- return buf;
46
- };
47
- exports.serializePathv2 = serializePathv2;
48
- const signSendChunkv2 = (app, chunkIdx, chunkNum, chunk) => __awaiter(void 0, void 0, void 0, function* () {
49
- let payloadType = common_1.PAYLOAD_TYPE.ADD;
50
- if (chunkIdx === 1) {
51
- payloadType = common_1.PAYLOAD_TYPE.INIT;
52
- }
53
- if (chunkIdx === chunkNum) {
54
- payloadType = common_1.PAYLOAD_TYPE.LAST;
55
- }
56
- return signSendChunkv1(app, payloadType, 0, chunk);
57
- });
58
- exports.signSendChunkv2 = signSendChunkv2;
59
- const publicKeyv2 = (app, data) => __awaiter(void 0, void 0, void 0, function* () {
60
- return app.transport.send(common_1.CLA, common_1.INS.GET_ADDR_SECP256K1, 0, 0, data, [common_1.ErrorCode.NoError]).then((response) => {
61
- const errorCodeData = response.slice(-2);
62
- const returnCode = errorCodeData[0] * 256 + errorCodeData[1];
63
- const compressedPk = Buffer.from(response.slice(0, 33));
64
- return {
65
- pk: "OBSOLETE PROPERTY",
66
- compressed_pk: compressedPk,
67
- return_code: returnCode,
68
- error_message: (0, common_1.errorCodeToString)(returnCode),
69
- };
70
- }, common_1.processErrorResponse);
71
- });
72
- exports.publicKeyv2 = publicKeyv2;
73
- //# sourceMappingURL=helpers.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../src/thorchain/helpers.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export declare const getSignature: (signatureArray: Uint8Array) => string;
2
- //# sourceMappingURL=utils.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/thorchain/utils.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,YAAY,mBAAoB,UAAU,WAiEtD,CAAC"}
@@ -1,63 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getSignature = void 0;
4
- const base64_js_1 = require("base64-js");
5
- const getSignature = (signatureArray) => {
6
- // Check Type Length Value encoding
7
- if (signatureArray.length < 64) {
8
- throw new Error("Invalid Signature: Too short");
9
- }
10
- if (signatureArray[0] !== 0x30) {
11
- throw new Error("Invalid Ledger Signature TLV encoding: expected first byte 0x30");
12
- }
13
- if (signatureArray[1] + 2 !== signatureArray.length) {
14
- throw new Error("Invalid Signature: signature length does not match TLV");
15
- }
16
- if (signatureArray[2] !== 0x02) {
17
- throw new Error("Invalid Ledger Signature TLV encoding: expected length type 0x02");
18
- }
19
- // r signature
20
- const rLength = signatureArray[3];
21
- let rSignature = signatureArray.slice(4, rLength + 4);
22
- // Drop leading zero on some 'r' signatures that are 33 bytes.
23
- if (rSignature.length === 33 && rSignature[0] === 0) {
24
- rSignature = rSignature.slice(1, 33);
25
- }
26
- else if (rSignature.length === 33) {
27
- throw new Error('Invalid signature: "r" too long');
28
- }
29
- // add leading zero's to pad to 32 bytes
30
- while (rSignature.length < 32) {
31
- const rSignaturePadded = new Uint8Array(32);
32
- rSignaturePadded.set(rSignature, 32 - rSignature.length);
33
- rSignature = rSignaturePadded;
34
- }
35
- // s signature
36
- if (signatureArray[rLength + 4] !== 0x02) {
37
- throw new Error("Invalid Ledger Signature TLV encoding: expected length type 0x02");
38
- }
39
- const sLength = signatureArray[rLength + 5];
40
- if (4 + rLength + 2 + sLength !== signatureArray.length) {
41
- throw new Error("Invalid Ledger Signature: TLV byte lengths do not match message length");
42
- }
43
- let sSignature = signatureArray.slice(rLength + 6, signatureArray.length);
44
- // Drop leading zero on 's' signatures that are 33 bytes. This shouldn't occur since ledger signs using "Small s" math. But just to be sure...
45
- if (sSignature.length === 33 && sSignature[0] === 0) {
46
- sSignature = sSignature.slice(1, 33);
47
- }
48
- else if (sSignature.length === 33) {
49
- throw new Error('Invalid signature: "s" too long');
50
- }
51
- // add leading zero's to pad to 32 bytes
52
- while (sSignature.length < 32) {
53
- const sSignaturePadded = new Uint8Array(32);
54
- sSignaturePadded.set(sSignature, 32 - sSignature.length);
55
- sSignature = sSignaturePadded;
56
- }
57
- if (rSignature.length !== 32 || sSignature.length !== 32) {
58
- throw new Error("Invalid signatures: must be 32 bytes each");
59
- }
60
- return (0, base64_js_1.fromByteArray)(Buffer.concat([rSignature, sSignature]));
61
- };
62
- exports.getSignature = getSignature;
63
- //# sourceMappingURL=utils.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/thorchain/utils.ts"],"names":[],"mappings":"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"}