@ledgerhq/hw-app-eth 6.22.0 → 6.22.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.turbo/turbo-build.log +2 -0
- package/README.md +15 -0
- package/lib/Eth.d.ts +16 -0
- package/lib/Eth.d.ts.map +1 -1
- package/lib/Eth.js +11 -21
- package/lib/Eth.js.map +1 -1
- package/lib/errors.d.ts +7 -0
- package/lib/errors.d.ts.map +1 -0
- package/lib/errors.js +7 -0
- package/lib/errors.js.map +1 -0
- package/lib/services/ledger/index.d.ts.map +1 -1
- package/lib/services/ledger/index.js +88 -53
- package/lib/services/ledger/index.js.map +1 -1
- package/lib/services/ledger/nfts.d.ts.map +1 -1
- package/lib/services/ledger/nfts.js +24 -9
- package/lib/services/ledger/nfts.js.map +1 -1
- package/lib/services/types.d.ts +10 -1
- package/lib/services/types.d.ts.map +1 -1
- package/lib-es/Eth.d.ts +16 -0
- package/lib-es/Eth.d.ts.map +1 -1
- package/lib-es/Eth.js +11 -21
- package/lib-es/Eth.js.map +1 -1
- package/lib-es/contracts.d.ts +5 -2
- package/lib-es/contracts.d.ts.map +1 -1
- package/lib-es/contracts.js +26 -19
- package/lib-es/contracts.js.map +1 -1
- package/lib-es/erc20.d.ts +0 -0
- package/lib-es/erc20.d.ts.map +0 -0
- package/lib-es/erc20.js +0 -0
- package/lib-es/erc20.js.map +0 -0
- package/lib-es/errors.d.ts +7 -0
- package/lib-es/errors.d.ts.map +1 -0
- package/lib-es/errors.js +4 -0
- package/lib-es/errors.js.map +1 -0
- package/lib-es/services/ledger/contracts.d.ts +0 -0
- package/lib-es/services/ledger/contracts.d.ts.map +0 -0
- package/lib-es/services/ledger/contracts.js +0 -0
- package/lib-es/services/ledger/contracts.js.map +0 -0
- package/lib-es/services/ledger/erc20.d.ts +0 -0
- package/lib-es/services/ledger/erc20.d.ts.map +0 -0
- package/lib-es/services/ledger/erc20.js +0 -0
- package/lib-es/services/ledger/erc20.js.map +0 -0
- package/lib-es/services/ledger/index.d.ts +0 -0
- package/lib-es/services/ledger/index.d.ts.map +1 -1
- package/lib-es/services/ledger/index.js +88 -53
- package/lib-es/services/ledger/index.js.map +1 -1
- package/lib-es/services/ledger/loadConfig.d.ts +0 -0
- package/lib-es/services/ledger/loadConfig.d.ts.map +0 -0
- package/lib-es/services/ledger/loadConfig.js +0 -0
- package/lib-es/services/ledger/loadConfig.js.map +0 -0
- package/lib-es/services/ledger/nfts.d.ts +0 -0
- package/lib-es/services/ledger/nfts.d.ts.map +1 -1
- package/lib-es/services/ledger/nfts.js +24 -9
- package/lib-es/services/ledger/nfts.js.map +1 -1
- package/lib-es/services/types.d.ts +10 -1
- package/lib-es/services/types.d.ts.map +1 -1
- package/lib-es/services/types.js +0 -0
- package/lib-es/services/types.js.map +0 -0
- package/lib-es/utils.d.ts +0 -0
- package/lib-es/utils.d.ts.map +0 -0
- package/lib-es/utils.js +0 -0
- package/lib-es/utils.js.map +0 -0
- package/package.json +3 -3
- package/src/Eth.ts +17 -5
- package/src/errors.ts +8 -0
- package/src/services/ledger/index.ts +22 -16
- package/src/services/ledger/nfts.ts +26 -5
- package/src/services/types.ts +15 -1
- package/lib-es/loadConfig.d.ts +0 -7
- package/lib-es/loadConfig.d.ts.map +0 -1
- package/lib-es/loadConfig.js +0 -20
- package/lib-es/loadConfig.js.map +0 -1
- package/lib-es/nfts.d.ts +0 -11
- package/lib-es/nfts.d.ts.map +0 -1
- package/lib-es/nfts.js +0 -94
- package/lib-es/nfts.js.map +0 -1
package/README.md
CHANGED
|
@@ -55,6 +55,8 @@ Ledger Hardware Wallet ETH JavaScript bindings.
|
|
|
55
55
|
* [byContractAddressAndChainId](#bycontractaddressandchainid)
|
|
56
56
|
* [Parameters](#parameters-16)
|
|
57
57
|
* [list](#list)
|
|
58
|
+
* [ResolutionConfig](#resolutionconfig)
|
|
59
|
+
* [Properties](#properties)
|
|
58
60
|
|
|
59
61
|
### Eth
|
|
60
62
|
|
|
@@ -359,3 +361,16 @@ Returns **(TokenInfo | null | [undefined](https://developer.mozilla.org/docs/Web
|
|
|
359
361
|
list all the ERC20 tokens informations
|
|
360
362
|
|
|
361
363
|
Returns **[Array](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Array)\<TokenInfo>**
|
|
364
|
+
|
|
365
|
+
### ResolutionConfig
|
|
366
|
+
|
|
367
|
+
Allows to configure precisely what the service need to resolve.
|
|
368
|
+
for instance you can set nft:true if you need clear signing on NFTs. If you set it and it is not a NFT transaction, it should still work but will do a useless service resolution.
|
|
369
|
+
|
|
370
|
+
Type: {nft: [boolean](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Boolean)?, externalPlugins: [boolean](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Boolean)?, erc20: [boolean](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Boolean)?}
|
|
371
|
+
|
|
372
|
+
#### Properties
|
|
373
|
+
|
|
374
|
+
* `nft` **[boolean](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Boolean)?**
|
|
375
|
+
* `externalPlugins` **[boolean](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Boolean)?**
|
|
376
|
+
* `erc20` **[boolean](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Boolean)?**
|
package/lib/Eth.d.ts
CHANGED
|
@@ -1,4 +1,20 @@
|
|
|
1
1
|
/// <reference types="node" />
|
|
2
|
+
/********************************************************************************
|
|
3
|
+
* Ledger Node JS API
|
|
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
|
+
********************************************************************************/
|
|
2
18
|
import type Transport from "@ledgerhq/hw-transport";
|
|
3
19
|
import { BigNumber } from "bignumber.js";
|
|
4
20
|
import { LedgerEthTransactionResolution, LoadConfig } from "./services/types";
|
package/lib/Eth.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Eth.d.ts","sourceRoot":"","sources":["../src/Eth.ts"],"names":[],"mappings":";
|
|
1
|
+
{"version":3,"file":"Eth.d.ts","sourceRoot":"","sources":["../src/Eth.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;kFAekF;AAElF,OAAO,KAAK,SAAS,MAAM,wBAAwB,CAAC;AACpD,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAGzC,OAAO,EAAE,8BAA8B,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAO9E,oBAAY,qBAAqB,GAC7B,KAAK,GACL,OAAO,GACP,QAAQ,GACR,eAAe,GACf,gBAAgB,CAAC;AA6CrB;;;;;;GAMG;AAEH,MAAM,CAAC,OAAO,OAAO,GAAG;IACtB,SAAS,EAAE,SAAS,CAAC;IACrB,UAAU,EAAE,UAAU,CAAC;IAEvB,aAAa,CAAC,UAAU,EAAE,UAAU,GAAG,IAAI;gBAKzC,SAAS,EAAE,SAAS,EACpB,WAAW,SAAQ,EACnB,UAAU,GAAE,UAAe;IA8B7B;;;;;;;;OAQG;IACH,UAAU,CACR,IAAI,EAAE,MAAM,EACZ,WAAW,CAAC,EAAE,OAAO,EACrB,aAAa,CAAC,EAAE,OAAO,GACtB,OAAO,CAAC;QACT,SAAS,EAAE,MAAM,CAAC;QAClB,OAAO,EAAE,MAAM,CAAC;QAChB,SAAS,CAAC,EAAE,MAAM,CAAC;KACpB,CAAC;IAyCF;;;;;;;;;;;;OAYG;IACG,eAAe,CACnB,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,MAAM,EAChB,UAAU,CAAC,EAAE,8BAA8B,GAAG,IAAI,GACjD,OAAO,CAAC;QACT,CAAC,EAAE,MAAM,CAAC;QACV,CAAC,EAAE,MAAM,CAAC;QACV,CAAC,EAAE,MAAM,CAAC;KACX,CAAC;IAqHF;OACG;IACH,mBAAmB,IAAI,OAAO,CAAC;QAC7B,oBAAoB,EAAE,MAAM,CAAC;QAC7B,0BAA0B,EAAE,MAAM,CAAC;QACnC,YAAY,EAAE,MAAM,CAAC;QACrB,gBAAgB,EAAE,MAAM,CAAC;QACzB,OAAO,EAAE,MAAM,CAAC;KACjB,CAAC;IAYF;;;;;;;;;;;OAWG;IACG,mBAAmB,CACvB,IAAI,EAAE,MAAM,EACZ,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC;QACT,CAAC,EAAE,MAAM,CAAC;QACV,CAAC,EAAE,MAAM,CAAC;QACV,CAAC,EAAE,MAAM,CAAC;KACX,CAAC;IAiDF;;;;;;;;;;;OAWG;IACH,uBAAuB,CACrB,IAAI,EAAE,MAAM,EACZ,kBAAkB,EAAE,MAAM,EAC1B,oBAAoB,EAAE,MAAM,GAC3B,OAAO,CAAC;QACT,CAAC,EAAE,MAAM,CAAC;QACV,CAAC,EAAE,MAAM,CAAC;QACV,CAAC,EAAE,MAAM,CAAC;KACX,CAAC;IA4BF;;;;;OAKG;IACH,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC;IAcvE;;;;;;;;;;;;;;OAcG;IACH,cAAc,CACZ,IAAI,EAAE,MAAM,EACZ,kBAAkB,EAAE,MAAM,GAAG,SAAS,EACtC,kBAAkB,EAAE,SAAS,EAC7B,uBAAuB,EAAE,MAAM,GAAG,SAAS,EAC3C,uBAAuB,EAAE,SAAS,EAClC,WAAW,EAAE,MAAM,EACnB,gBAAgB,EAAE,MAAM,EACxB,UAAU,EAAE,SAAS,EACrB,SAAS,EAAE,SAAS,EACpB,KAAK,EAAE,MAAM,EACb,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,MAAM,GAAG;QAAE,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAiE7C;;;;;;;;;;;;;;;;;;OAkBG;IACH,iBAAiB,CACf,IAAI,EAAE,MAAM,EACZ,kBAAkB,EAAE,MAAM,GAAG,SAAS,EACtC,sBAAsB,EAAE,qBAAqB,EAC7C,kBAAkB,EAAE,SAAS,GAAG,SAAS,EACzC,2BAA2B,EAAE,SAAS,GAAG,SAAS,EAClD,uBAAuB,EAAE,MAAM,GAAG,SAAS,EAC3C,2BAA2B,EAAE,qBAAqB,EAClD,uBAAuB,EAAE,SAAS,GAAG,SAAS,EAC9C,gCAAgC,EAAE,SAAS,GAAG,SAAS,EACvD,WAAW,EAAE,MAAM,EACnB,gBAAgB,EAAE,MAAM,EACxB,UAAU,EAAE,SAAS,EACrB,SAAS,EAAE,SAAS,EACpB,KAAK,EAAE,MAAM,EACb,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,MAAM,GAAG;QAAE,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IA6H7C;;;;;;;;;;;;OAYG;IACH,iBAAiB,CACf,IAAI,EAAE,MAAM,EACZ,oBAAoB,EAAE,MAAM,GAAG,SAAS,EACxC,oBAAoB,EAAE,SAAS,EAC/B,eAAe,EAAE,MAAM,EACvB,WAAW,EAAE,MAAM,EACnB,gBAAgB,EAAE,MAAM,EACxB,cAAc,EAAE,SAAS,EACzB,KAAK,EAAE,MAAM,EACb,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,MAAM,GAAG;QAAE,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAmD7C;;;;;;;;;;;;;;;;OAgBG;IACH,oBAAoB,CAClB,IAAI,EAAE,MAAM,EACZ,oBAAoB,EAAE,MAAM,GAAG,SAAS,EACxC,wBAAwB,EAAE,qBAAqB,EAC/C,oBAAoB,EAAE,SAAS,GAAG,SAAS,EAC3C,6BAA6B,EAAE,SAAS,GAAG,SAAS,EACpD,eAAe,EAAE,MAAM,EACvB,WAAW,EAAE,MAAM,EACnB,gBAAgB,EAAE,MAAM,EACxB,cAAc,EAAE,SAAS,EACzB,KAAK,EAAE,MAAM,EACb,SAAS,EAAE,MAAM,EACjB,0BAA0B,CAAC,EAAE,MAAM,EACnC,uBAAuB,CAAC,EAAE,SAAS,GAClC,OAAO,CAAC,MAAM,GAAG;QAAE,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IA0G7C;;;;;;;OAOG;IACH,mBAAmB,CACjB,iBAAiB,EAAE,MAAM,GAAG,SAAS,EACrC,qBAAqB,EAAE,SAAS,GAC/B,OAAO,CAAC,OAAO,CAAC;IAyBnB;;;;;;;;;OASG;IACH,sBAAsB,CACpB,iBAAiB,EAAE,MAAM,GAAG,SAAS,EACrC,yBAAyB,EAAE,qBAAqB,EAChD,qBAAqB,CAAC,EAAE,SAAS,EACjC,8BAA8B,CAAC,EAAE,SAAS,GACzC,OAAO,CAAC,OAAO,CAAC;IAwDnB;;;;;;OAMG;IACH,eAAe,CACb,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,GACX,OAAO,CAAC,MAAM,GAAG;QAAE,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAuB7C;;;;;;;OAOG;IACH,gBAAgB,CACd,IAAI,EAAE,MAAM,EACZ,WAAW,CAAC,EAAE,OAAO,GACpB,OAAO,CAAC;QACT,SAAS,EAAE,MAAM,CAAC;KACnB,CAAC;IAgBF;;;;;;;OAOG;IACH,sBAAsB,CAAC,eAAe,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAgBjE,4BAA4B,CAAC,EAAE,IAAI,EAAE,EAAE;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,OAAO,CAAC;IAO1E,iBAAiB,CACf,UAAU,EAAE,MAAM,EAClB,eAAe,EAAE,MAAM,EACvB,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,OAAO,CAAC;IAOnB,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;CAM1C"}
|
package/lib/Eth.js
CHANGED
|
@@ -50,26 +50,9 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
50
50
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
51
51
|
};
|
|
52
52
|
exports.__esModule = true;
|
|
53
|
-
/********************************************************************************
|
|
54
|
-
* Ledger Node JS API
|
|
55
|
-
* (c) 2016-2017 Ledger
|
|
56
|
-
*
|
|
57
|
-
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
58
|
-
* you may not use this file except in compliance with the License.
|
|
59
|
-
* You may obtain a copy of the License at
|
|
60
|
-
*
|
|
61
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
62
|
-
*
|
|
63
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
64
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
65
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
66
|
-
* See the License for the specific language governing permissions and
|
|
67
|
-
* limitations under the License.
|
|
68
|
-
********************************************************************************/
|
|
69
|
-
// FIXME drop:
|
|
70
|
-
var errors_1 = require("@ledgerhq/errors");
|
|
71
53
|
var utils_1 = require("./utils");
|
|
72
54
|
var ledger_1 = __importDefault(require("./services/ledger"));
|
|
55
|
+
var errors_1 = require("./errors");
|
|
73
56
|
var starkQuantizationTypeMap = {
|
|
74
57
|
eth: 1,
|
|
75
58
|
erc20: 2,
|
|
@@ -207,7 +190,14 @@ var Eth = /** @class */ (function () {
|
|
|
207
190
|
" + import ledgerService from '@ledgerhq/hw-app-eth/lib/services/ledger';\n" +
|
|
208
191
|
" + const resolution = await ledgerService.resolveTransaction(rawTxHex);");
|
|
209
192
|
return [4 /*yield*/, ledger_1["default"]
|
|
210
|
-
.resolveTransaction(rawTxHex, this.loadConfig
|
|
193
|
+
.resolveTransaction(rawTxHex, this.loadConfig, {
|
|
194
|
+
externalPlugins: true,
|
|
195
|
+
erc20: true
|
|
196
|
+
})["catch"](function (e) {
|
|
197
|
+
console.warn("an error occurred in resolveTransaction => fallback to blind signing: " +
|
|
198
|
+
String(e));
|
|
199
|
+
return null;
|
|
200
|
+
})];
|
|
211
201
|
case 1:
|
|
212
202
|
resolution = _q.sent();
|
|
213
203
|
_q.label = 2;
|
|
@@ -999,8 +989,8 @@ function provideNFTInformation(transport, data) {
|
|
|
999
989
|
return false;
|
|
1000
990
|
}
|
|
1001
991
|
if (e && e.statusCode === 0x6d00) {
|
|
1002
|
-
//
|
|
1003
|
-
|
|
992
|
+
// older version of ETH app => error because we don't allow blind sign when NFT is explicitly requested to be resolved.
|
|
993
|
+
throw new errors_1.EthAppNftNotSupported();
|
|
1004
994
|
}
|
|
1005
995
|
throw e;
|
|
1006
996
|
});
|
package/lib/Eth.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Eth.js","sourceRoot":"","sources":["../src/Eth.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Eth.js","sourceRoot":"","sources":["../src/Eth.ts"],"names":[],"mappings":"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"}
|
package/lib/errors.d.ts
ADDED
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export declare const EthAppPleaseEnableContractData: (message?: string | undefined, fields?: {
|
|
2
|
+
[key: string]: any;
|
|
3
|
+
} | undefined) => void;
|
|
4
|
+
export declare const EthAppNftNotSupported: (message?: string | undefined, fields?: {
|
|
5
|
+
[key: string]: any;
|
|
6
|
+
} | undefined) => void;
|
|
7
|
+
//# sourceMappingURL=errors.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,8BAA8B;;sBAE1C,CAAC;AACF,eAAO,MAAM,qBAAqB;;sBAEjC,CAAC"}
|
package/lib/errors.js
ADDED
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
exports.__esModule = true;
|
|
3
|
+
exports.EthAppNftNotSupported = exports.EthAppPleaseEnableContractData = void 0;
|
|
4
|
+
var errors_1 = require("@ledgerhq/errors");
|
|
5
|
+
exports.EthAppPleaseEnableContractData = (0, errors_1.createCustomErrorClass)("EthAppPleaseEnableContractData");
|
|
6
|
+
exports.EthAppNftNotSupported = (0, errors_1.createCustomErrorClass)("EthAppNftNotSupported");
|
|
7
|
+
//# sourceMappingURL=errors.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":";;;AAAA,2CAA0D;AAE7C,QAAA,8BAA8B,GAAG,IAAA,+BAAsB,EAClE,gCAAgC,CACjC,CAAC;AACW,QAAA,qBAAqB,GAAG,IAAA,+BAAsB,EACzD,uBAAuB,CACxB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/services/ledger/index.ts"],"names":[],"mappings":"AAIA,OAAO,EAEL,2BAA2B,EAC5B,MAAM,UAAU,CAAC;AAMlB,QAAA,MAAM,aAAa,EAAE,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/services/ledger/index.ts"],"names":[],"mappings":"AAIA,OAAO,EAEL,2BAA2B,EAC5B,MAAM,UAAU,CAAC;AAMlB,QAAA,MAAM,aAAa,EAAE,2BA6GpB,CAAC;AAEF,eAAe,aAAa,CAAC"}
|
|
@@ -55,7 +55,7 @@ var erc20_1 = require("./erc20");
|
|
|
55
55
|
var nfts_1 = require("./nfts");
|
|
56
56
|
var utils_1 = require("../../utils");
|
|
57
57
|
var ledgerService = {
|
|
58
|
-
resolveTransaction: function (rawTxHex, loadConfig) { return __awaiter(void 0, void 0, void 0, function () {
|
|
58
|
+
resolveTransaction: function (rawTxHex, loadConfig, resolutionConfig) { return __awaiter(void 0, void 0, void 0, function () {
|
|
59
59
|
function provideERC20TokenInformation(dataHex) {
|
|
60
60
|
resolution.erc20Tokens.push(dataHex);
|
|
61
61
|
}
|
|
@@ -68,10 +68,10 @@ var ledgerService = {
|
|
|
68
68
|
function setPlugin(dataHex) {
|
|
69
69
|
resolution.plugin.push(dataHex);
|
|
70
70
|
}
|
|
71
|
-
var resolution, rawTx, _a, decodedTx, chainIdTruncated, provideForContract, selector, nftPluginPayload, infos, plugin, payload, signature, erc20OfInterest, abi, contract, args, erc20OfInterest_1, erc20OfInterest_1_1, path, address;
|
|
72
|
-
var e_1,
|
|
73
|
-
return __generator(this, function (
|
|
74
|
-
switch (
|
|
71
|
+
var resolution, rawTx, _a, decodedTx, chainIdTruncated, provideForContract, selector, nftPluginPayload, _b, infos, _c, plugin, payload, signature, erc20OfInterest, abi, contract, args, erc20OfInterest_1, erc20OfInterest_1_1, path, address, e_1_1;
|
|
72
|
+
var e_1, _d;
|
|
73
|
+
return __generator(this, function (_e) {
|
|
74
|
+
switch (_e.label) {
|
|
75
75
|
case 0:
|
|
76
76
|
resolution = {
|
|
77
77
|
erc20Tokens: [],
|
|
@@ -82,12 +82,20 @@ var ledgerService = {
|
|
|
82
82
|
rawTx = Buffer.from(rawTxHex, "hex");
|
|
83
83
|
_a = (0, utils_1.decodeTxInfo)(rawTx), decodedTx = _a.decodedTx, chainIdTruncated = _a.chainIdTruncated;
|
|
84
84
|
provideForContract = function (address) { return __awaiter(void 0, void 0, void 0, function () {
|
|
85
|
-
var nftInfo, erc20Info;
|
|
86
|
-
return __generator(this, function (
|
|
87
|
-
switch (
|
|
88
|
-
case 0:
|
|
85
|
+
var nftInfo, _a, erc20Info;
|
|
86
|
+
return __generator(this, function (_b) {
|
|
87
|
+
switch (_b.label) {
|
|
88
|
+
case 0:
|
|
89
|
+
if (!resolutionConfig.nft) return [3 /*break*/, 2];
|
|
90
|
+
return [4 /*yield*/, (0, nfts_1.getNFTInfo)(address, chainIdTruncated, loadConfig)];
|
|
89
91
|
case 1:
|
|
90
|
-
|
|
92
|
+
_a = _b.sent();
|
|
93
|
+
return [3 /*break*/, 3];
|
|
94
|
+
case 2:
|
|
95
|
+
_a = null;
|
|
96
|
+
_b.label = 3;
|
|
97
|
+
case 3:
|
|
98
|
+
nftInfo = _a;
|
|
91
99
|
if (nftInfo) {
|
|
92
100
|
(0, logs_1.log)("ethereum", "loaded nft info for " +
|
|
93
101
|
nftInfo.contractAddress +
|
|
@@ -111,55 +119,82 @@ var ledgerService = {
|
|
|
111
119
|
}
|
|
112
120
|
});
|
|
113
121
|
}); };
|
|
114
|
-
if (!(decodedTx.data.length >= 10)) return [3 /*break*/,
|
|
122
|
+
if (!(decodedTx.data.length >= 10)) return [3 /*break*/, 19];
|
|
115
123
|
selector = decodedTx.data.substring(0, 10);
|
|
124
|
+
if (!resolutionConfig.nft) return [3 /*break*/, 2];
|
|
116
125
|
return [4 /*yield*/, (0, nfts_1.loadNftPlugin)(decodedTx.to, selector, chainIdTruncated, loadConfig)];
|
|
117
126
|
case 1:
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
127
|
+
_b = _e.sent();
|
|
128
|
+
return [3 /*break*/, 3];
|
|
129
|
+
case 2:
|
|
130
|
+
_b = null;
|
|
131
|
+
_e.label = 3;
|
|
123
132
|
case 3:
|
|
124
|
-
|
|
125
|
-
if (
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
}
|
|
145
|
-
}
|
|
146
|
-
catch (e_1_1) { e_1 = { error: e_1_1 }; }
|
|
147
|
-
finally {
|
|
148
|
-
try {
|
|
149
|
-
if (erc20OfInterest_1_1 && !erc20OfInterest_1_1.done && (_b = erc20OfInterest_1["return"])) _b.call(erc20OfInterest_1);
|
|
150
|
-
}
|
|
151
|
-
finally { if (e_1) throw e_1.error; }
|
|
152
|
-
}
|
|
153
|
-
}
|
|
133
|
+
nftPluginPayload = _b;
|
|
134
|
+
if (!nftPluginPayload) return [3 /*break*/, 4];
|
|
135
|
+
setPlugin(nftPluginPayload);
|
|
136
|
+
return [3 /*break*/, 17];
|
|
137
|
+
case 4:
|
|
138
|
+
if (!resolutionConfig.externalPlugins) return [3 /*break*/, 6];
|
|
139
|
+
return [4 /*yield*/, (0, contracts_1.loadInfosForContractMethod)(decodedTx.to, selector, chainIdTruncated, loadConfig)];
|
|
140
|
+
case 5:
|
|
141
|
+
_c = _e.sent();
|
|
142
|
+
return [3 /*break*/, 7];
|
|
143
|
+
case 6:
|
|
144
|
+
_c = null;
|
|
145
|
+
_e.label = 7;
|
|
146
|
+
case 7:
|
|
147
|
+
infos = _c;
|
|
148
|
+
if (!infos) return [3 /*break*/, 16];
|
|
149
|
+
plugin = infos.plugin, payload = infos.payload, signature = infos.signature, erc20OfInterest = infos.erc20OfInterest, abi = infos.abi;
|
|
150
|
+
if (plugin) {
|
|
151
|
+
(0, logs_1.log)("ethereum", "found plugin for " + selector);
|
|
152
|
+
setExternalPlugin(payload, signature);
|
|
154
153
|
}
|
|
155
|
-
|
|
156
|
-
|
|
154
|
+
if (!(erc20OfInterest && erc20OfInterest.length && abi)) return [3 /*break*/, 15];
|
|
155
|
+
contract = new ethers_1.ethers.utils.Interface(abi);
|
|
156
|
+
args = contract.parseTransaction(decodedTx).args;
|
|
157
|
+
_e.label = 8;
|
|
158
|
+
case 8:
|
|
159
|
+
_e.trys.push([8, 13, 14, 15]);
|
|
160
|
+
erc20OfInterest_1 = __values(erc20OfInterest), erc20OfInterest_1_1 = erc20OfInterest_1.next();
|
|
161
|
+
_e.label = 9;
|
|
162
|
+
case 9:
|
|
163
|
+
if (!!erc20OfInterest_1_1.done) return [3 /*break*/, 12];
|
|
164
|
+
path = erc20OfInterest_1_1.value;
|
|
165
|
+
address = path.split(".").reduce(function (value, seg) {
|
|
166
|
+
if (seg === "-1" && Array.isArray(value)) {
|
|
167
|
+
return value[value.length - 1];
|
|
168
|
+
}
|
|
169
|
+
return value[seg];
|
|
170
|
+
}, args);
|
|
171
|
+
return [4 /*yield*/, provideForContract(address)];
|
|
172
|
+
case 10:
|
|
173
|
+
_e.sent();
|
|
174
|
+
_e.label = 11;
|
|
175
|
+
case 11:
|
|
176
|
+
erc20OfInterest_1_1 = erc20OfInterest_1.next();
|
|
177
|
+
return [3 /*break*/, 9];
|
|
178
|
+
case 12: return [3 /*break*/, 15];
|
|
179
|
+
case 13:
|
|
180
|
+
e_1_1 = _e.sent();
|
|
181
|
+
e_1 = { error: e_1_1 };
|
|
182
|
+
return [3 /*break*/, 15];
|
|
183
|
+
case 14:
|
|
184
|
+
try {
|
|
185
|
+
if (erc20OfInterest_1_1 && !erc20OfInterest_1_1.done && (_d = erc20OfInterest_1["return"])) _d.call(erc20OfInterest_1);
|
|
157
186
|
}
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
187
|
+
finally { if (e_1) throw e_1.error; }
|
|
188
|
+
return [7 /*endfinally*/];
|
|
189
|
+
case 15: return [3 /*break*/, 17];
|
|
190
|
+
case 16:
|
|
191
|
+
(0, logs_1.log)("ethereum", "no infos for selector " + selector);
|
|
192
|
+
_e.label = 17;
|
|
193
|
+
case 17: return [4 /*yield*/, provideForContract(decodedTx.to)];
|
|
194
|
+
case 18:
|
|
195
|
+
_e.sent();
|
|
196
|
+
_e.label = 19;
|
|
197
|
+
case 19: return [2 /*return*/, resolution];
|
|
163
198
|
}
|
|
164
199
|
});
|
|
165
200
|
}); }
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/services/ledger/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,yEAAyE;AACzE,uCAAqC;AACrC,iCAAgC;AAMhC,yCAAyD;AACzD,iCAAsD;AACtD,+BAAmD;AACnD,qCAA2C;AAE3C,IAAM,aAAa,GAAgC;IACjD,kBAAkB,EAAE,UAAO,QAAQ,EAAE,UAAU;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/services/ledger/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"nfts.d.ts","sourceRoot":"","sources":["../../../src/services/ledger/nfts.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAE3C,aAAK,OAAO,GAAG;IACb,eAAe,EAAE,MAAM,CAAC;IACxB,cAAc,EAAE,MAAM,CAAC;IACvB,IAAI,EAAE,MAAM,CAAC;CACd,CAAC;
|
|
1
|
+
{"version":3,"file":"nfts.d.ts","sourceRoot":"","sources":["../../../src/services/ledger/nfts.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAE3C,aAAK,OAAO,GAAG;IACb,eAAe,EAAE,MAAM,CAAC;IACxB,cAAc,EAAE,MAAM,CAAC;IACvB,IAAI,EAAE,MAAM,CAAC;CACd,CAAC;AAYF,eAAO,MAAM,UAAU,oBACJ,MAAM,WACd,MAAM,kBACC,UAAU,KACzB,QAAQ,OAAO,GAAG,SAAS,CA2B7B,CAAC;AAEF,eAAO,MAAM,aAAa,oBACP,MAAM,YACb,MAAM,WACP,MAAM,kBACC,UAAU,KACzB,QAAQ,MAAM,GAAG,SAAS,CAa5B,CAAC"}
|
|
@@ -42,26 +42,39 @@ exports.__esModule = true;
|
|
|
42
42
|
exports.loadNftPlugin = exports.getNFTInfo = void 0;
|
|
43
43
|
var axios_1 = __importDefault(require("axios"));
|
|
44
44
|
var loadConfig_1 = require("./loadConfig");
|
|
45
|
+
function axiosErrorHandling(e) {
|
|
46
|
+
if (!e || !e.status)
|
|
47
|
+
throw e;
|
|
48
|
+
if (e.status === 404)
|
|
49
|
+
return null;
|
|
50
|
+
throw e;
|
|
51
|
+
}
|
|
45
52
|
var getNFTInfo = function (contractAddress, chainId, userLoadConfig) { return __awaiter(void 0, void 0, void 0, function () {
|
|
46
|
-
var nftExplorerBaseURL, url, response, payload, collectionNameLength, collectionName;
|
|
47
|
-
|
|
48
|
-
|
|
53
|
+
var nftExplorerBaseURL, url, response, payload, collectionNameLength, collectionNameHex, collectionName;
|
|
54
|
+
var _a;
|
|
55
|
+
return __generator(this, function (_b) {
|
|
56
|
+
switch (_b.label) {
|
|
49
57
|
case 0:
|
|
50
58
|
nftExplorerBaseURL = (0, loadConfig_1.getLoadConfig)(userLoadConfig).nftExplorerBaseURL;
|
|
51
59
|
if (!nftExplorerBaseURL)
|
|
52
60
|
return [2 /*return*/];
|
|
53
61
|
url = "".concat(nftExplorerBaseURL, "/").concat(chainId, "/contracts/").concat(contractAddress);
|
|
54
|
-
return [4 /*yield*/, axios_1["default"]
|
|
62
|
+
return [4 /*yield*/, axios_1["default"]
|
|
63
|
+
.get(url)
|
|
64
|
+
.then(function (r) { return r.data; })["catch"](axiosErrorHandling)];
|
|
55
65
|
case 1:
|
|
56
|
-
response =
|
|
66
|
+
response = _b.sent();
|
|
57
67
|
if (!response)
|
|
58
68
|
return [2 /*return*/];
|
|
59
69
|
payload = response["payload"];
|
|
60
|
-
collectionNameLength =
|
|
61
|
-
|
|
70
|
+
collectionNameLength = parseInt(payload.slice(4, 6), 16);
|
|
71
|
+
collectionNameHex = payload.substr(6, collectionNameLength * 2);
|
|
72
|
+
collectionName = (_a = collectionNameHex
|
|
73
|
+
.match(/.{2}/g) // split every 2 characters
|
|
74
|
+
) === null || _a === void 0 ? void 0 : _a.reduce(function (acc, curr) { return (acc += String.fromCharCode(parseInt(curr, 16))); }, "");
|
|
62
75
|
return [2 /*return*/, {
|
|
63
76
|
contractAddress: contractAddress,
|
|
64
|
-
collectionName: collectionName,
|
|
77
|
+
collectionName: collectionName || "",
|
|
65
78
|
data: payload
|
|
66
79
|
}];
|
|
67
80
|
}
|
|
@@ -77,7 +90,9 @@ var loadNftPlugin = function (contractAddress, selector, chainId, userLoadConfig
|
|
|
77
90
|
if (!nftExplorerBaseURL)
|
|
78
91
|
return [2 /*return*/];
|
|
79
92
|
url = "".concat(nftExplorerBaseURL, "/").concat(chainId, "/contracts/").concat(contractAddress, "/plugin-selector/").concat(selector);
|
|
80
|
-
return [4 /*yield*/, axios_1["default"]
|
|
93
|
+
return [4 /*yield*/, axios_1["default"]
|
|
94
|
+
.get(url)
|
|
95
|
+
.then(function (r) { return r.data; })["catch"](axiosErrorHandling)];
|
|
81
96
|
case 1:
|
|
82
97
|
response = _a.sent();
|
|
83
98
|
if (!response)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"nfts.js","sourceRoot":"","sources":["../../../src/services/ledger/nfts.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,gDAA0B;AAC1B,2CAA6C;
|
|
1
|
+
{"version":3,"file":"nfts.js","sourceRoot":"","sources":["../../../src/services/ledger/nfts.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,gDAA0B;AAC1B,2CAA6C;AAa7C,SAAS,kBAAkB,CAAC,CAAC;IAC3B,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM;QAAE,MAAM,CAAC,CAAC;IAC7B,IAAI,CAAC,CAAC,MAAM,KAAK,GAAG;QAAE,OAAO,IAAI,CAAC;IAClC,MAAM,CAAC,CAAC;AACV,CAAC;AAEM,IAAM,UAAU,GAAG,UACxB,eAAuB,EACvB,OAAe,EACf,cAA0B;;;;;;gBAElB,kBAAkB,GAAK,IAAA,0BAAa,EAAC,cAAc,CAAC,mBAAlC,CAAmC;gBAC7D,IAAI,CAAC,kBAAkB;oBAAE,sBAAO;gBAC1B,GAAG,GAAG,UAAG,kBAAkB,cAAI,OAAO,wBAAc,eAAe,CAAE,CAAC;gBAC3D,qBAAM,kBAAK;yBACzB,GAAG,CAAkB,GAAG,CAAC;yBACzB,IAAI,CAAC,UAAC,CAAC,IAAK,OAAA,CAAC,CAAC,IAAI,EAAN,CAAM,CAAC,CACnB,OAAK,CAAA,CAAC,kBAAkB,CAAC,EAAA;;gBAHtB,QAAQ,GAAG,SAGW;gBAC5B,IAAI,CAAC,QAAQ;oBAAE,sBAAO;gBAGhB,OAAO,GAAG,QAAQ,CAAC,SAAS,CAAC,CAAC;gBAE9B,oBAAoB,GAAG,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;gBACzD,iBAAiB,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,EAAE,oBAAoB,GAAG,CAAC,CAAC,CAAC;gBAChE,cAAc,GAAG,MAAA,iBAAiB;qBACrC,KAAK,CAAC,OAAO,CAAC,CAAC,2BAA2B;0DACzC,MAAM,CACN,UAAC,GAAG,EAAE,IAAI,IAAK,OAAA,CAAC,GAAG,IAAI,MAAM,CAAC,YAAY,CAAC,QAAQ,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,EAAhD,CAAgD,EAC/D,EAAE,CACH,CAAC;gBAEJ,sBAAO;wBACL,eAAe,EAAE,eAAe;wBAChC,cAAc,EAAE,cAAc,IAAI,EAAE;wBACpC,IAAI,EAAE,OAAO;qBACd,EAAC;;;KACH,CAAC;AA/BW,QAAA,UAAU,cA+BrB;AAEK,IAAM,aAAa,GAAG,UAC3B,eAAuB,EACvB,QAAgB,EAChB,OAAe,EACf,cAA0B;;;;;gBAElB,kBAAkB,GAAK,IAAA,0BAAa,EAAC,cAAc,CAAC,mBAAlC,CAAmC;gBAC7D,IAAI,CAAC,kBAAkB;oBAAE,sBAAO;gBAC1B,GAAG,GAAG,UAAG,kBAAkB,cAAI,OAAO,wBAAc,eAAe,8BAAoB,QAAQ,CAAE,CAAC;gBAEvF,qBAAM,kBAAK;yBACzB,GAAG,CAAkB,GAAG,CAAC;yBACzB,IAAI,CAAC,UAAC,CAAC,IAAK,OAAA,CAAC,CAAC,IAAI,EAAN,CAAM,CAAC,CACnB,OAAK,CAAA,CAAC,kBAAkB,CAAC,EAAA;;gBAHtB,QAAQ,GAAG,SAGW;gBAC5B,IAAI,CAAC,QAAQ;oBAAE,sBAAO;gBAEhB,OAAO,GAAG,QAAQ,CAAC,SAAS,CAAC,CAAC;gBACpC,sBAAO,OAAO,EAAC;;;KAChB,CAAC;AAlBW,QAAA,aAAa,iBAkBxB"}
|
package/lib/services/types.d.ts
CHANGED
|
@@ -12,7 +12,16 @@ export declare type LoadConfig = {
|
|
|
12
12
|
pluginBaseURL?: string | null;
|
|
13
13
|
extraPlugins?: any | null;
|
|
14
14
|
};
|
|
15
|
+
/**
|
|
16
|
+
* Allows to configure precisely what the service need to resolve.
|
|
17
|
+
* for instance you can set nft:true if you need clear signing on NFTs. If you set it and it is not a NFT transaction, it should still work but will do a useless service resolution.
|
|
18
|
+
*/
|
|
19
|
+
export declare type ResolutionConfig = {
|
|
20
|
+
nft?: boolean;
|
|
21
|
+
externalPlugins?: boolean;
|
|
22
|
+
erc20?: boolean;
|
|
23
|
+
};
|
|
15
24
|
export declare type LedgerEthTransactionService = {
|
|
16
|
-
resolveTransaction: (rawTxHex: string, loadConfig: LoadConfig) => Promise<LedgerEthTransactionResolution>;
|
|
25
|
+
resolveTransaction: (rawTxHex: string, loadConfig: LoadConfig, resolutionConfig: ResolutionConfig) => Promise<LedgerEthTransactionResolution>;
|
|
17
26
|
};
|
|
18
27
|
//# sourceMappingURL=types.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/services/types.ts"],"names":[],"mappings":"AAAA,oBAAY,8BAA8B,GAAG;IAE3C,WAAW,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IAE3B,IAAI,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IAEpB,cAAc,EAAE,KAAK,CAAC;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAE9D,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;CACvB,CAAC;AAEF,oBAAY,UAAU,GAAG;IACvB,kBAAkB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAInC,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAG9B,YAAY,CAAC,EAAE,GAAG,GAAG,IAAI,CAAC;CAC3B,CAAC;AAEF,oBAAY,2BAA2B,GAAG;IACxC,kBAAkB,EAAE,CAClB,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,UAAU,
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/services/types.ts"],"names":[],"mappings":"AAAA,oBAAY,8BAA8B,GAAG;IAE3C,WAAW,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IAE3B,IAAI,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IAEpB,cAAc,EAAE,KAAK,CAAC;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAE9D,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;CACvB,CAAC;AAEF,oBAAY,UAAU,GAAG;IACvB,kBAAkB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAInC,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAG9B,YAAY,CAAC,EAAE,GAAG,GAAG,IAAI,CAAC;CAC3B,CAAC;AAEF;;;GAGG;AACH,oBAAY,gBAAgB,GAAG;IAE7B,GAAG,CAAC,EAAE,OAAO,CAAC;IAEd,eAAe,CAAC,EAAE,OAAO,CAAC;IAE1B,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB,CAAC;AAEF,oBAAY,2BAA2B,GAAG;IACxC,kBAAkB,EAAE,CAClB,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,UAAU,EACtB,gBAAgB,EAAE,gBAAgB,KAC/B,OAAO,CAAC,8BAA8B,CAAC,CAAC;CAC9C,CAAC"}
|
package/lib-es/Eth.d.ts
CHANGED
|
@@ -1,4 +1,20 @@
|
|
|
1
1
|
/// <reference types="node" />
|
|
2
|
+
/********************************************************************************
|
|
3
|
+
* Ledger Node JS API
|
|
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
|
+
********************************************************************************/
|
|
2
18
|
import type Transport from "@ledgerhq/hw-transport";
|
|
3
19
|
import { BigNumber } from "bignumber.js";
|
|
4
20
|
import { LedgerEthTransactionResolution, LoadConfig } from "./services/types";
|