@ledgerhq/hw-app-eth 6.28.2 → 6.29.0
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 +5 -2
- package/CHANGELOG.md +13 -0
- package/README.md +58 -16
- package/jest.config.ts +6 -0
- package/lib/Eth.d.ts +37 -0
- package/lib/Eth.d.ts.map +1 -1
- package/lib/Eth.js +66 -72
- package/lib/Eth.js.map +1 -1
- package/lib/modules/EIP712/EIP712.types.d.ts +44 -0
- package/lib/modules/EIP712/EIP712.types.d.ts.map +1 -0
- package/lib/modules/EIP712/EIP712.types.js +3 -0
- package/lib/modules/EIP712/EIP712.types.js.map +1 -0
- package/lib/modules/EIP712/EIP712.utils.d.ts +65 -0
- package/lib/modules/EIP712/EIP712.utils.d.ts.map +1 -0
- package/lib/modules/EIP712/EIP712.utils.js +217 -0
- package/lib/modules/EIP712/EIP712.utils.js.map +1 -0
- package/lib/modules/EIP712/index.d.ts +60 -0
- package/lib/modules/EIP712/index.d.ts.map +1 -0
- package/lib/modules/EIP712/index.js +554 -0
- package/lib/modules/EIP712/index.js.map +1 -0
- package/lib/utils.d.ts +15 -1
- package/lib/utils.d.ts.map +1 -1
- package/lib/utils.js +43 -3
- package/lib/utils.js.map +1 -1
- package/lib-es/Eth.d.ts +37 -0
- package/lib-es/Eth.d.ts.map +1 -1
- package/lib-es/Eth.js +42 -48
- package/lib-es/Eth.js.map +1 -1
- package/lib-es/modules/EIP712/EIP712.types.d.ts +44 -0
- package/lib-es/modules/EIP712/EIP712.types.d.ts.map +1 -0
- package/lib-es/modules/EIP712/EIP712.types.js +2 -0
- package/lib-es/modules/EIP712/EIP712.types.js.map +1 -0
- package/lib-es/modules/EIP712/EIP712.utils.d.ts +65 -0
- package/lib-es/modules/EIP712/EIP712.utils.d.ts.map +1 -0
- package/lib-es/modules/EIP712/EIP712.utils.js +211 -0
- package/lib-es/modules/EIP712/EIP712.utils.js.map +1 -0
- package/lib-es/modules/EIP712/index.d.ts +60 -0
- package/lib-es/modules/EIP712/index.d.ts.map +1 -0
- package/lib-es/modules/EIP712/index.js +549 -0
- package/lib-es/modules/EIP712/index.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 +0 -0
- package/lib-es/services/ledger/index.js +0 -0
- package/lib-es/services/ledger/index.js.map +0 -0
- 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 +0 -0
- package/lib-es/services/ledger/nfts.js +0 -0
- package/lib-es/services/ledger/nfts.js.map +0 -0
- package/lib-es/services/types.d.ts +0 -0
- package/lib-es/services/types.d.ts.map +0 -0
- package/lib-es/services/types.js +0 -0
- package/lib-es/services/types.js.map +0 -0
- package/lib-es/utils.d.ts +15 -1
- package/lib-es/utils.d.ts.map +1 -1
- package/lib-es/utils.js +38 -2
- package/lib-es/utils.js.map +1 -1
- package/package.json +13 -8
- package/src/Eth.ts +59 -56
- package/src/modules/EIP712/EIP712.types.ts +54 -0
- package/src/modules/EIP712/EIP712.utils.ts +251 -0
- package/src/modules/EIP712/index.ts +409 -0
- package/src/utils.ts +42 -2
- package/tests/EIP712.unit.test.ts +760 -0
- package/tests/sample-messages/0.apdus +58 -0
- package/tests/sample-messages/0.json +44 -0
- package/tests/sample-messages/1.apdus +66 -0
- package/tests/sample-messages/1.json +50 -0
- package/tests/sample-messages/10.apdus +30 -0
- package/tests/sample-messages/10.json +23 -0
- package/tests/sample-messages/2.apdus +126 -0
- package/tests/sample-messages/2.json +153 -0
- package/tests/sample-messages/3.apdus +42 -0
- package/tests/sample-messages/3.json +31 -0
- package/tests/sample-messages/4.apdus +84 -0
- package/tests/sample-messages/4.json +110 -0
- package/tests/sample-messages/5.apdus +112 -0
- package/tests/sample-messages/5.json +92 -0
- package/tests/sample-messages/6.apdus +94 -0
- package/tests/sample-messages/6.json +78 -0
- package/tests/sample-messages/7.apdus +70 -0
- package/tests/sample-messages/7.json +55 -0
- package/tests/sample-messages/8.apdus +68 -0
- package/tests/sample-messages/8.json +50 -0
- package/tests/sample-messages/9.apdus +68 -0
- package/tests/sample-messages/9.json +50 -0
- package/LICENSE +0 -202
- package/lib-es/contracts.d.ts +0 -17
- package/lib-es/contracts.d.ts.map +0 -1
- package/lib-es/contracts.js +0 -103
- package/lib-es/contracts.js.map +0 -1
- package/lib-es/erc20.d.ts +0 -22
- package/lib-es/erc20.d.ts.map +0 -1
- package/lib-es/erc20.js +0 -64
- package/lib-es/erc20.js.map +0 -1
package/.turbo/turbo-build.log
CHANGED
|
@@ -1,2 +1,5 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
@ledgerhq/hw-app-eth:build: cache hit, replaying output 28bd80aa9e6687d2
|
|
2
|
+
@ledgerhq/hw-app-eth:build:
|
|
3
|
+
@ledgerhq/hw-app-eth:build: > @ledgerhq/hw-app-eth@6.29.0 build /home/runner/work/ledger-live/ledger-live/libs/ledgerjs/packages/hw-app-eth
|
|
4
|
+
@ledgerhq/hw-app-eth:build: > tsc && tsc -m ES6 --outDir lib-es
|
|
5
|
+
@ledgerhq/hw-app-eth:build:
|
package/CHANGELOG.md
ADDED
package/README.md
CHANGED
|
@@ -29,37 +29,40 @@ Ledger Hardware Wallet ETH JavaScript bindings.
|
|
|
29
29
|
* [signEIP712HashedMessage](#signeip712hashedmessage)
|
|
30
30
|
* [Parameters](#parameters-4)
|
|
31
31
|
* [Examples](#examples-4)
|
|
32
|
-
* [
|
|
32
|
+
* [signEIP712Message](#signeip712message)
|
|
33
33
|
* [Parameters](#parameters-5)
|
|
34
|
-
|
|
34
|
+
* [Examples](#examples-5)
|
|
35
|
+
* [starkGetPublicKey](#starkgetpublickey)
|
|
35
36
|
* [Parameters](#parameters-6)
|
|
36
|
-
* [
|
|
37
|
+
* [starkSignOrder](#starksignorder)
|
|
37
38
|
* [Parameters](#parameters-7)
|
|
38
|
-
* [
|
|
39
|
+
* [starkSignOrder_v2](#starksignorder_v2)
|
|
39
40
|
* [Parameters](#parameters-8)
|
|
40
|
-
* [
|
|
41
|
+
* [starkSignTransfer](#starksigntransfer)
|
|
41
42
|
* [Parameters](#parameters-9)
|
|
42
|
-
* [
|
|
43
|
+
* [starkSignTransfer_v2](#starksigntransfer_v2)
|
|
43
44
|
* [Parameters](#parameters-10)
|
|
44
|
-
* [
|
|
45
|
+
* [starkProvideQuantum](#starkprovidequantum)
|
|
45
46
|
* [Parameters](#parameters-11)
|
|
46
|
-
* [
|
|
47
|
+
* [starkProvideQuantum_v2](#starkprovidequantum_v2)
|
|
47
48
|
* [Parameters](#parameters-12)
|
|
48
|
-
* [
|
|
49
|
+
* [starkUnsafeSign](#starkunsafesign)
|
|
49
50
|
* [Parameters](#parameters-13)
|
|
50
|
-
|
|
51
|
-
* [eth2SetWithdrawalIndex](#eth2setwithdrawalindex)
|
|
51
|
+
* [eth2GetPublicKey](#eth2getpublickey)
|
|
52
52
|
* [Parameters](#parameters-14)
|
|
53
|
-
* [getEIP1024PublicEncryptionKey](#geteip1024publicencryptionkey)
|
|
54
|
-
* [Parameters](#parameters-15)
|
|
55
53
|
* [Examples](#examples-6)
|
|
56
|
-
* [
|
|
54
|
+
* [eth2SetWithdrawalIndex](#eth2setwithdrawalindex)
|
|
55
|
+
* [Parameters](#parameters-15)
|
|
56
|
+
* [getEIP1024PublicEncryptionKey](#geteip1024publicencryptionkey)
|
|
57
57
|
* [Parameters](#parameters-16)
|
|
58
58
|
* [Examples](#examples-7)
|
|
59
|
+
* [getEIP1024SharedSecret](#geteip1024sharedsecret)
|
|
60
|
+
* [Parameters](#parameters-17)
|
|
61
|
+
* [Examples](#examples-8)
|
|
59
62
|
* [loadInfosForContractMethod](#loadinfosforcontractmethod)
|
|
60
|
-
* [Parameters](#parameters-17)
|
|
61
|
-
* [byContractAddressAndChainId](#bycontractaddressandchainid)
|
|
62
63
|
* [Parameters](#parameters-18)
|
|
64
|
+
* [byContractAddressAndChainId](#bycontractaddressandchainid)
|
|
65
|
+
* [Parameters](#parameters-19)
|
|
63
66
|
* [list](#list)
|
|
64
67
|
* [ResolutionConfig](#resolutionconfig)
|
|
65
68
|
* [Properties](#properties)
|
|
@@ -174,6 +177,45 @@ console.log("Signature 0x" + result['r'] + result['s'] + v);
|
|
|
174
177
|
|
|
175
178
|
Returns **[Promise](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Promise)<{v: [number](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Number), s: [string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String), r: [string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)}>**
|
|
176
179
|
|
|
180
|
+
#### signEIP712Message
|
|
181
|
+
|
|
182
|
+
Sign an EIP-721 formatted message following the specification here:
|
|
183
|
+
https://github.com/LedgerHQ/app-ethereum/blob/develop/doc/ethapp.asc#sign-eth-eip-712
|
|
184
|
+
|
|
185
|
+
##### Parameters
|
|
186
|
+
|
|
187
|
+
* `path` **[String](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)** derivationPath
|
|
188
|
+
* `jsonMessage` **[Object](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object)** message to sign
|
|
189
|
+
* `fullImplem` **[Boolean](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Boolean)** use the legacy implementation (optional, default `false`)
|
|
190
|
+
|
|
191
|
+
##### Examples
|
|
192
|
+
|
|
193
|
+
```javascript
|
|
194
|
+
eth.signEIP721Message("44'/60'/0'/0/0", {
|
|
195
|
+
domain: {
|
|
196
|
+
chainId: 69,
|
|
197
|
+
name: "Da Domain",
|
|
198
|
+
verifyingContract: "0xCcCCccccCCCCcCCCCCCcCcCccCcCCCcCcccccccC",
|
|
199
|
+
version: "1"
|
|
200
|
+
},
|
|
201
|
+
types: {
|
|
202
|
+
"EIP712Domain": [
|
|
203
|
+
{ name: "name", type: "string" },
|
|
204
|
+
{ name: "version", type: "string" },
|
|
205
|
+
{ name: "chainId", type: "uint256" },
|
|
206
|
+
{ name: "verifyingContract", type: "address" }
|
|
207
|
+
],
|
|
208
|
+
"Test": [
|
|
209
|
+
{ name: "contents", type: "string" }
|
|
210
|
+
]
|
|
211
|
+
},
|
|
212
|
+
primaryType: "Test",
|
|
213
|
+
message: {contents: "Hello, Bob!"},
|
|
214
|
+
})
|
|
215
|
+
```
|
|
216
|
+
|
|
217
|
+
Returns **[Promise](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Promise)**
|
|
218
|
+
|
|
177
219
|
#### starkGetPublicKey
|
|
178
220
|
|
|
179
221
|
get Stark public key for a given BIP 32 path.
|
package/jest.config.ts
ADDED
package/lib/Eth.d.ts
CHANGED
|
@@ -18,6 +18,7 @@
|
|
|
18
18
|
import type Transport from "@ledgerhq/hw-transport";
|
|
19
19
|
import { BigNumber } from "bignumber.js";
|
|
20
20
|
import { LedgerEthTransactionResolution, LoadConfig } from "./services/types";
|
|
21
|
+
import { EIP712Message } from "./modules/EIP712";
|
|
21
22
|
export declare type StarkQuantizationType = "eth" | "erc20" | "erc721" | "erc20mintable" | "erc721mintable";
|
|
22
23
|
/**
|
|
23
24
|
* Ethereum API
|
|
@@ -106,6 +107,42 @@ export default class Eth {
|
|
|
106
107
|
s: string;
|
|
107
108
|
r: string;
|
|
108
109
|
}>;
|
|
110
|
+
/**
|
|
111
|
+
* Sign an EIP-721 formatted message following the specification here:
|
|
112
|
+
* https://github.com/LedgerHQ/app-ethereum/blob/develop/doc/ethapp.asc#sign-eth-eip-712
|
|
113
|
+
@example
|
|
114
|
+
eth.signEIP721Message("44'/60'/0'/0/0", {
|
|
115
|
+
domain: {
|
|
116
|
+
chainId: 69,
|
|
117
|
+
name: "Da Domain",
|
|
118
|
+
verifyingContract: "0xCcCCccccCCCCcCCCCCCcCcCccCcCCCcCcccccccC",
|
|
119
|
+
version: "1"
|
|
120
|
+
},
|
|
121
|
+
types: {
|
|
122
|
+
"EIP712Domain": [
|
|
123
|
+
{ name: "name", type: "string" },
|
|
124
|
+
{ name: "version", type: "string" },
|
|
125
|
+
{ name: "chainId", type: "uint256" },
|
|
126
|
+
{ name: "verifyingContract", type: "address" }
|
|
127
|
+
],
|
|
128
|
+
"Test": [
|
|
129
|
+
{ name: "contents", type: "string" }
|
|
130
|
+
]
|
|
131
|
+
},
|
|
132
|
+
primaryType: "Test",
|
|
133
|
+
message: {contents: "Hello, Bob!"},
|
|
134
|
+
})
|
|
135
|
+
*
|
|
136
|
+
* @param {String} path derivationPath
|
|
137
|
+
* @param {Object} jsonMessage message to sign
|
|
138
|
+
* @param {Boolean} fullImplem use the legacy implementation
|
|
139
|
+
* @returns {Promise}
|
|
140
|
+
*/
|
|
141
|
+
signEIP712Message(path: string, jsonMessage: EIP712Message, fullImplem?: boolean): Promise<{
|
|
142
|
+
v: number;
|
|
143
|
+
s: string;
|
|
144
|
+
r: string;
|
|
145
|
+
}>;
|
|
109
146
|
/**
|
|
110
147
|
* get Stark public key for a given BIP 32 path.
|
|
111
148
|
* @param path a path in BIP 32 format
|
package/lib/Eth.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
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;
|
|
1
|
+
{"version":3,"file":"Eth.d.ts","sourceRoot":"","sources":["../src/Eth.ts"],"names":[],"mappings":"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"}
|
package/lib/Eth.js
CHANGED
|
@@ -53,6 +53,7 @@ exports.__esModule = true;
|
|
|
53
53
|
var utils_1 = require("./utils");
|
|
54
54
|
var ledger_1 = __importDefault(require("./services/ledger"));
|
|
55
55
|
var errors_1 = require("./errors");
|
|
56
|
+
var EIP712_1 = require("./modules/EIP712");
|
|
56
57
|
var starkQuantizationTypeMap = {
|
|
57
58
|
eth: 1,
|
|
58
59
|
erc20: 2,
|
|
@@ -60,29 +61,6 @@ var starkQuantizationTypeMap = {
|
|
|
60
61
|
erc20mintable: 4,
|
|
61
62
|
erc721mintable: 5
|
|
62
63
|
};
|
|
63
|
-
function splitPath(path) {
|
|
64
|
-
var result = [];
|
|
65
|
-
var components = path.split("/");
|
|
66
|
-
components.forEach(function (element) {
|
|
67
|
-
var number = parseInt(element, 10);
|
|
68
|
-
if (isNaN(number)) {
|
|
69
|
-
return; // FIXME shouldn't it throws instead?
|
|
70
|
-
}
|
|
71
|
-
if (element.length > 1 && element[element.length - 1] === "'") {
|
|
72
|
-
number += 0x80000000;
|
|
73
|
-
}
|
|
74
|
-
result.push(number);
|
|
75
|
-
});
|
|
76
|
-
return result;
|
|
77
|
-
}
|
|
78
|
-
function hexBuffer(str) {
|
|
79
|
-
return Buffer.from(str.startsWith("0x") ? str.slice(2) : str, "hex");
|
|
80
|
-
}
|
|
81
|
-
function maybeHexBuffer(str) {
|
|
82
|
-
if (!str)
|
|
83
|
-
return null;
|
|
84
|
-
return hexBuffer(str);
|
|
85
|
-
}
|
|
86
64
|
var remapTransactionRelatedErrors = function (e) {
|
|
87
65
|
if (e && e.statusCode === 0x6a80) {
|
|
88
66
|
return new errors_1.EthAppPleaseEnableContractData("Please enable Blind signing or Contract data in the Ethereum app Settings");
|
|
@@ -108,6 +86,7 @@ var Eth = /** @class */ (function () {
|
|
|
108
86
|
"signTransaction",
|
|
109
87
|
"signPersonalMessage",
|
|
110
88
|
"getAppConfiguration",
|
|
89
|
+
"signEIP712Message",
|
|
111
90
|
"signEIP712HashedMessage",
|
|
112
91
|
"starkGetPublicKey",
|
|
113
92
|
"starkSignOrder",
|
|
@@ -138,7 +117,7 @@ var Eth = /** @class */ (function () {
|
|
|
138
117
|
* eth.getAddress("44'/60'/0'/0/0").then(o => o.address)
|
|
139
118
|
*/
|
|
140
119
|
Eth.prototype.getAddress = function (path, boolDisplay, boolChaincode) {
|
|
141
|
-
var paths = splitPath(path);
|
|
120
|
+
var paths = (0, utils_1.splitPath)(path);
|
|
142
121
|
var buffer = Buffer.alloc(1 + paths.length * 4);
|
|
143
122
|
buffer[0] = paths.length;
|
|
144
123
|
paths.forEach(function (element, index) {
|
|
@@ -309,7 +288,7 @@ var Eth = /** @class */ (function () {
|
|
|
309
288
|
case 31:
|
|
310
289
|
rawTx = Buffer.from(rawTxHex, "hex");
|
|
311
290
|
_k = (0, utils_1.decodeTxInfo)(rawTx), vrsOffset = _k.vrsOffset, txType = _k.txType, chainId = _k.chainId, chainIdTruncated = _k.chainIdTruncated;
|
|
312
|
-
paths = splitPath(path);
|
|
291
|
+
paths = (0, utils_1.splitPath)(path);
|
|
313
292
|
offset = 0;
|
|
314
293
|
_loop_1 = function () {
|
|
315
294
|
var first, maxChunkSize, chunkSize, buffer;
|
|
@@ -415,7 +394,7 @@ var Eth = /** @class */ (function () {
|
|
|
415
394
|
return __generator(this, function (_a) {
|
|
416
395
|
switch (_a.label) {
|
|
417
396
|
case 0:
|
|
418
|
-
paths = splitPath(path);
|
|
397
|
+
paths = (0, utils_1.splitPath)(path);
|
|
419
398
|
offset = 0;
|
|
420
399
|
message = Buffer.from(messageHex, "hex");
|
|
421
400
|
_loop_2 = function () {
|
|
@@ -477,30 +456,45 @@ var Eth = /** @class */ (function () {
|
|
|
477
456
|
})
|
|
478
457
|
*/
|
|
479
458
|
Eth.prototype.signEIP712HashedMessage = function (path, domainSeparatorHex, hashStructMessageHex) {
|
|
480
|
-
|
|
481
|
-
|
|
482
|
-
|
|
483
|
-
|
|
484
|
-
|
|
485
|
-
|
|
486
|
-
|
|
487
|
-
|
|
488
|
-
|
|
489
|
-
|
|
490
|
-
|
|
491
|
-
|
|
492
|
-
|
|
493
|
-
|
|
494
|
-
|
|
495
|
-
|
|
496
|
-
|
|
497
|
-
|
|
498
|
-
|
|
499
|
-
|
|
500
|
-
|
|
501
|
-
|
|
502
|
-
|
|
503
|
-
|
|
459
|
+
return (0, EIP712_1.signEIP712HashedMessage)(this.transport, path, domainSeparatorHex, hashStructMessageHex);
|
|
460
|
+
};
|
|
461
|
+
/**
|
|
462
|
+
* Sign an EIP-721 formatted message following the specification here:
|
|
463
|
+
* https://github.com/LedgerHQ/app-ethereum/blob/develop/doc/ethapp.asc#sign-eth-eip-712
|
|
464
|
+
@example
|
|
465
|
+
eth.signEIP721Message("44'/60'/0'/0/0", {
|
|
466
|
+
domain: {
|
|
467
|
+
chainId: 69,
|
|
468
|
+
name: "Da Domain",
|
|
469
|
+
verifyingContract: "0xCcCCccccCCCCcCCCCCCcCcCccCcCCCcCcccccccC",
|
|
470
|
+
version: "1"
|
|
471
|
+
},
|
|
472
|
+
types: {
|
|
473
|
+
"EIP712Domain": [
|
|
474
|
+
{ name: "name", type: "string" },
|
|
475
|
+
{ name: "version", type: "string" },
|
|
476
|
+
{ name: "chainId", type: "uint256" },
|
|
477
|
+
{ name: "verifyingContract", type: "address" }
|
|
478
|
+
],
|
|
479
|
+
"Test": [
|
|
480
|
+
{ name: "contents", type: "string" }
|
|
481
|
+
]
|
|
482
|
+
},
|
|
483
|
+
primaryType: "Test",
|
|
484
|
+
message: {contents: "Hello, Bob!"},
|
|
485
|
+
})
|
|
486
|
+
*
|
|
487
|
+
* @param {String} path derivationPath
|
|
488
|
+
* @param {Object} jsonMessage message to sign
|
|
489
|
+
* @param {Boolean} fullImplem use the legacy implementation
|
|
490
|
+
* @returns {Promise}
|
|
491
|
+
*/
|
|
492
|
+
Eth.prototype.signEIP712Message = function (path, jsonMessage, fullImplem) {
|
|
493
|
+
if (fullImplem === void 0) { fullImplem = false; }
|
|
494
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
495
|
+
return __generator(this, function (_a) {
|
|
496
|
+
return [2 /*return*/, (0, EIP712_1.signEIP712Message)(this.transport, path, jsonMessage, fullImplem)];
|
|
497
|
+
});
|
|
504
498
|
});
|
|
505
499
|
};
|
|
506
500
|
/**
|
|
@@ -510,7 +504,7 @@ var Eth = /** @class */ (function () {
|
|
|
510
504
|
* @return the Stark public key
|
|
511
505
|
*/
|
|
512
506
|
Eth.prototype.starkGetPublicKey = function (path, boolDisplay) {
|
|
513
|
-
var paths = splitPath(path);
|
|
507
|
+
var paths = (0, utils_1.splitPath)(path);
|
|
514
508
|
var buffer = Buffer.alloc(1 + paths.length * 4);
|
|
515
509
|
buffer[0] = paths.length;
|
|
516
510
|
paths.forEach(function (element, index) {
|
|
@@ -538,9 +532,9 @@ var Eth = /** @class */ (function () {
|
|
|
538
532
|
* @return the signature
|
|
539
533
|
*/
|
|
540
534
|
Eth.prototype.starkSignOrder = function (path, sourceTokenAddress, sourceQuantization, destinationTokenAddress, destinationQuantization, sourceVault, destinationVault, amountSell, amountBuy, nonce, timestamp) {
|
|
541
|
-
var sourceTokenAddressHex = maybeHexBuffer(sourceTokenAddress);
|
|
542
|
-
var destinationTokenAddressHex = maybeHexBuffer(destinationTokenAddress);
|
|
543
|
-
var paths = splitPath(path);
|
|
535
|
+
var sourceTokenAddressHex = (0, utils_1.maybeHexBuffer)(sourceTokenAddress);
|
|
536
|
+
var destinationTokenAddressHex = (0, utils_1.maybeHexBuffer)(destinationTokenAddress);
|
|
537
|
+
var paths = (0, utils_1.splitPath)(path);
|
|
544
538
|
var buffer = Buffer.alloc(1 + paths.length * 4 + 20 + 32 + 20 + 32 + 4 + 4 + 8 + 8 + 4 + 4, 0);
|
|
545
539
|
var offset = 0;
|
|
546
540
|
buffer[0] = paths.length;
|
|
@@ -602,8 +596,8 @@ var Eth = /** @class */ (function () {
|
|
|
602
596
|
* @return the signature
|
|
603
597
|
*/
|
|
604
598
|
Eth.prototype.starkSignOrder_v2 = function (path, sourceTokenAddress, sourceQuantizationType, sourceQuantization, sourceMintableBlobOrTokenId, destinationTokenAddress, destinationQuantizationType, destinationQuantization, destinationMintableBlobOrTokenId, sourceVault, destinationVault, amountSell, amountBuy, nonce, timestamp) {
|
|
605
|
-
var sourceTokenAddressHex = maybeHexBuffer(sourceTokenAddress);
|
|
606
|
-
var destinationTokenAddressHex = maybeHexBuffer(destinationTokenAddress);
|
|
599
|
+
var sourceTokenAddressHex = (0, utils_1.maybeHexBuffer)(sourceTokenAddress);
|
|
600
|
+
var destinationTokenAddressHex = (0, utils_1.maybeHexBuffer)(destinationTokenAddress);
|
|
607
601
|
if (!(sourceQuantizationType in starkQuantizationTypeMap)) {
|
|
608
602
|
throw new Error("eth.starkSignOrderv2 invalid source quantization type=" +
|
|
609
603
|
sourceQuantizationType);
|
|
@@ -612,7 +606,7 @@ var Eth = /** @class */ (function () {
|
|
|
612
606
|
throw new Error("eth.starkSignOrderv2 invalid destination quantization type=" +
|
|
613
607
|
destinationQuantizationType);
|
|
614
608
|
}
|
|
615
|
-
var paths = splitPath(path);
|
|
609
|
+
var paths = (0, utils_1.splitPath)(path);
|
|
616
610
|
var buffer = Buffer.alloc(1 +
|
|
617
611
|
paths.length * 4 +
|
|
618
612
|
1 +
|
|
@@ -699,9 +693,9 @@ var Eth = /** @class */ (function () {
|
|
|
699
693
|
* @return the signature
|
|
700
694
|
*/
|
|
701
695
|
Eth.prototype.starkSignTransfer = function (path, transferTokenAddress, transferQuantization, targetPublicKey, sourceVault, destinationVault, amountTransfer, nonce, timestamp) {
|
|
702
|
-
var transferTokenAddressHex = maybeHexBuffer(transferTokenAddress);
|
|
703
|
-
var targetPublicKeyHex = hexBuffer(targetPublicKey);
|
|
704
|
-
var paths = splitPath(path);
|
|
696
|
+
var transferTokenAddressHex = (0, utils_1.maybeHexBuffer)(transferTokenAddress);
|
|
697
|
+
var targetPublicKeyHex = (0, utils_1.hexBuffer)(targetPublicKey);
|
|
698
|
+
var paths = (0, utils_1.splitPath)(path);
|
|
705
699
|
var buffer = Buffer.alloc(1 + paths.length * 4 + 20 + 32 + 32 + 4 + 4 + 8 + 4 + 4, 0);
|
|
706
700
|
var offset = 0;
|
|
707
701
|
buffer[0] = paths.length;
|
|
@@ -755,14 +749,14 @@ var Eth = /** @class */ (function () {
|
|
|
755
749
|
* @return the signature
|
|
756
750
|
*/
|
|
757
751
|
Eth.prototype.starkSignTransfer_v2 = function (path, transferTokenAddress, transferQuantizationType, transferQuantization, transferMintableBlobOrTokenId, targetPublicKey, sourceVault, destinationVault, amountTransfer, nonce, timestamp, conditionalTransferAddress, conditionalTransferFact) {
|
|
758
|
-
var transferTokenAddressHex = maybeHexBuffer(transferTokenAddress);
|
|
759
|
-
var targetPublicKeyHex = hexBuffer(targetPublicKey);
|
|
760
|
-
var conditionalTransferAddressHex = maybeHexBuffer(conditionalTransferAddress);
|
|
752
|
+
var transferTokenAddressHex = (0, utils_1.maybeHexBuffer)(transferTokenAddress);
|
|
753
|
+
var targetPublicKeyHex = (0, utils_1.hexBuffer)(targetPublicKey);
|
|
754
|
+
var conditionalTransferAddressHex = (0, utils_1.maybeHexBuffer)(conditionalTransferAddress);
|
|
761
755
|
if (!(transferQuantizationType in starkQuantizationTypeMap)) {
|
|
762
756
|
throw new Error("eth.starkSignTransferv2 invalid quantization type=" +
|
|
763
757
|
transferQuantizationType);
|
|
764
758
|
}
|
|
765
|
-
var paths = splitPath(path);
|
|
759
|
+
var paths = (0, utils_1.splitPath)(path);
|
|
766
760
|
var buffer = Buffer.alloc(1 +
|
|
767
761
|
paths.length * 4 +
|
|
768
762
|
1 +
|
|
@@ -833,7 +827,7 @@ var Eth = /** @class */ (function () {
|
|
|
833
827
|
* @param operationQuantization quantization used for the token to be transferred
|
|
834
828
|
*/
|
|
835
829
|
Eth.prototype.starkProvideQuantum = function (operationContract, operationQuantization) {
|
|
836
|
-
var operationContractHex = maybeHexBuffer(operationContract);
|
|
830
|
+
var operationContractHex = (0, utils_1.maybeHexBuffer)(operationContract);
|
|
837
831
|
var buffer = Buffer.alloc(20 + 32, 0);
|
|
838
832
|
if (operationContractHex) {
|
|
839
833
|
operationContractHex.copy(buffer, 0);
|
|
@@ -858,7 +852,7 @@ var Eth = /** @class */ (function () {
|
|
|
858
852
|
* @option operationMintableBlobOrTokenId mintable blob (mintable erc 20 / mintable erc 721) or token id (erc 721) of the token to be transferred
|
|
859
853
|
*/
|
|
860
854
|
Eth.prototype.starkProvideQuantum_v2 = function (operationContract, operationQuantizationType, operationQuantization, operationMintableBlobOrTokenId) {
|
|
861
|
-
var operationContractHex = maybeHexBuffer(operationContract);
|
|
855
|
+
var operationContractHex = (0, utils_1.maybeHexBuffer)(operationContract);
|
|
862
856
|
if (!(operationQuantizationType in starkQuantizationTypeMap)) {
|
|
863
857
|
throw new Error("eth.starkProvideQuantumV2 invalid quantization type=" +
|
|
864
858
|
operationQuantizationType);
|
|
@@ -894,8 +888,8 @@ var Eth = /** @class */ (function () {
|
|
|
894
888
|
* @return the signature
|
|
895
889
|
*/
|
|
896
890
|
Eth.prototype.starkUnsafeSign = function (path, hash) {
|
|
897
|
-
var hashHex = hexBuffer(hash);
|
|
898
|
-
var paths = splitPath(path);
|
|
891
|
+
var hashHex = (0, utils_1.hexBuffer)(hash);
|
|
892
|
+
var paths = (0, utils_1.splitPath)(path);
|
|
899
893
|
var buffer = Buffer.alloc(1 + paths.length * 4 + 32);
|
|
900
894
|
var offset = 0;
|
|
901
895
|
buffer[0] = paths.length;
|
|
@@ -924,7 +918,7 @@ var Eth = /** @class */ (function () {
|
|
|
924
918
|
* eth.eth2GetPublicKey("12381/3600/0/0").then(o => o.publicKey)
|
|
925
919
|
*/
|
|
926
920
|
Eth.prototype.eth2GetPublicKey = function (path, boolDisplay) {
|
|
927
|
-
var paths = splitPath(path);
|
|
921
|
+
var paths = (0, utils_1.splitPath)(path);
|
|
928
922
|
var buffer = Buffer.alloc(1 + paths.length * 4);
|
|
929
923
|
buffer[0] = paths.length;
|
|
930
924
|
paths.forEach(function (element, index) {
|
|
@@ -966,7 +960,7 @@ var Eth = /** @class */ (function () {
|
|
|
966
960
|
* eth.getEIP1024PublicEncryptionKey("44'/60'/0'/0/0").then(o => o.publicKey)
|
|
967
961
|
*/
|
|
968
962
|
Eth.prototype.getEIP1024PublicEncryptionKey = function (path, boolDisplay) {
|
|
969
|
-
var paths = splitPath(path);
|
|
963
|
+
var paths = (0, utils_1.splitPath)(path);
|
|
970
964
|
var buffer = Buffer.alloc(1 + paths.length * 4);
|
|
971
965
|
buffer[0] = paths.length;
|
|
972
966
|
paths.forEach(function (element, index) {
|
|
@@ -990,8 +984,8 @@ var Eth = /** @class */ (function () {
|
|
|
990
984
|
* eth.getEIP1024SharedSecret("44'/60'/0'/0/0", "87020e80af6e07a6e4697f091eacadb9e7e6629cb7e5a8a371689a3ed53b3d64").then(o => o.sharedSecret)
|
|
991
985
|
*/
|
|
992
986
|
Eth.prototype.getEIP1024SharedSecret = function (path, remotePublicKeyHex, boolDisplay) {
|
|
993
|
-
var paths = splitPath(path);
|
|
994
|
-
var remotePublicKey = hexBuffer(remotePublicKeyHex);
|
|
987
|
+
var paths = (0, utils_1.splitPath)(path);
|
|
988
|
+
var remotePublicKey = (0, utils_1.hexBuffer)(remotePublicKeyHex);
|
|
995
989
|
var buffer = Buffer.alloc(1 + paths.length * 4 + 32);
|
|
996
990
|
var offset = 0;
|
|
997
991
|
buffer[0] = paths.length;
|
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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"}
|