@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.
Files changed (106) hide show
  1. package/.turbo/turbo-build.log +5 -2
  2. package/CHANGELOG.md +13 -0
  3. package/README.md +58 -16
  4. package/jest.config.ts +6 -0
  5. package/lib/Eth.d.ts +37 -0
  6. package/lib/Eth.d.ts.map +1 -1
  7. package/lib/Eth.js +66 -72
  8. package/lib/Eth.js.map +1 -1
  9. package/lib/modules/EIP712/EIP712.types.d.ts +44 -0
  10. package/lib/modules/EIP712/EIP712.types.d.ts.map +1 -0
  11. package/lib/modules/EIP712/EIP712.types.js +3 -0
  12. package/lib/modules/EIP712/EIP712.types.js.map +1 -0
  13. package/lib/modules/EIP712/EIP712.utils.d.ts +65 -0
  14. package/lib/modules/EIP712/EIP712.utils.d.ts.map +1 -0
  15. package/lib/modules/EIP712/EIP712.utils.js +217 -0
  16. package/lib/modules/EIP712/EIP712.utils.js.map +1 -0
  17. package/lib/modules/EIP712/index.d.ts +60 -0
  18. package/lib/modules/EIP712/index.d.ts.map +1 -0
  19. package/lib/modules/EIP712/index.js +554 -0
  20. package/lib/modules/EIP712/index.js.map +1 -0
  21. package/lib/utils.d.ts +15 -1
  22. package/lib/utils.d.ts.map +1 -1
  23. package/lib/utils.js +43 -3
  24. package/lib/utils.js.map +1 -1
  25. package/lib-es/Eth.d.ts +37 -0
  26. package/lib-es/Eth.d.ts.map +1 -1
  27. package/lib-es/Eth.js +42 -48
  28. package/lib-es/Eth.js.map +1 -1
  29. package/lib-es/modules/EIP712/EIP712.types.d.ts +44 -0
  30. package/lib-es/modules/EIP712/EIP712.types.d.ts.map +1 -0
  31. package/lib-es/modules/EIP712/EIP712.types.js +2 -0
  32. package/lib-es/modules/EIP712/EIP712.types.js.map +1 -0
  33. package/lib-es/modules/EIP712/EIP712.utils.d.ts +65 -0
  34. package/lib-es/modules/EIP712/EIP712.utils.d.ts.map +1 -0
  35. package/lib-es/modules/EIP712/EIP712.utils.js +211 -0
  36. package/lib-es/modules/EIP712/EIP712.utils.js.map +1 -0
  37. package/lib-es/modules/EIP712/index.d.ts +60 -0
  38. package/lib-es/modules/EIP712/index.d.ts.map +1 -0
  39. package/lib-es/modules/EIP712/index.js +549 -0
  40. package/lib-es/modules/EIP712/index.js.map +1 -0
  41. package/lib-es/services/ledger/contracts.d.ts +0 -0
  42. package/lib-es/services/ledger/contracts.d.ts.map +0 -0
  43. package/lib-es/services/ledger/contracts.js +0 -0
  44. package/lib-es/services/ledger/contracts.js.map +0 -0
  45. package/lib-es/services/ledger/erc20.d.ts +0 -0
  46. package/lib-es/services/ledger/erc20.d.ts.map +0 -0
  47. package/lib-es/services/ledger/erc20.js +0 -0
  48. package/lib-es/services/ledger/erc20.js.map +0 -0
  49. package/lib-es/services/ledger/index.d.ts +0 -0
  50. package/lib-es/services/ledger/index.d.ts.map +0 -0
  51. package/lib-es/services/ledger/index.js +0 -0
  52. package/lib-es/services/ledger/index.js.map +0 -0
  53. package/lib-es/services/ledger/loadConfig.d.ts +0 -0
  54. package/lib-es/services/ledger/loadConfig.d.ts.map +0 -0
  55. package/lib-es/services/ledger/loadConfig.js +0 -0
  56. package/lib-es/services/ledger/loadConfig.js.map +0 -0
  57. package/lib-es/services/ledger/nfts.d.ts +0 -0
  58. package/lib-es/services/ledger/nfts.d.ts.map +0 -0
  59. package/lib-es/services/ledger/nfts.js +0 -0
  60. package/lib-es/services/ledger/nfts.js.map +0 -0
  61. package/lib-es/services/types.d.ts +0 -0
  62. package/lib-es/services/types.d.ts.map +0 -0
  63. package/lib-es/services/types.js +0 -0
  64. package/lib-es/services/types.js.map +0 -0
  65. package/lib-es/utils.d.ts +15 -1
  66. package/lib-es/utils.d.ts.map +1 -1
  67. package/lib-es/utils.js +38 -2
  68. package/lib-es/utils.js.map +1 -1
  69. package/package.json +13 -8
  70. package/src/Eth.ts +59 -56
  71. package/src/modules/EIP712/EIP712.types.ts +54 -0
  72. package/src/modules/EIP712/EIP712.utils.ts +251 -0
  73. package/src/modules/EIP712/index.ts +409 -0
  74. package/src/utils.ts +42 -2
  75. package/tests/EIP712.unit.test.ts +760 -0
  76. package/tests/sample-messages/0.apdus +58 -0
  77. package/tests/sample-messages/0.json +44 -0
  78. package/tests/sample-messages/1.apdus +66 -0
  79. package/tests/sample-messages/1.json +50 -0
  80. package/tests/sample-messages/10.apdus +30 -0
  81. package/tests/sample-messages/10.json +23 -0
  82. package/tests/sample-messages/2.apdus +126 -0
  83. package/tests/sample-messages/2.json +153 -0
  84. package/tests/sample-messages/3.apdus +42 -0
  85. package/tests/sample-messages/3.json +31 -0
  86. package/tests/sample-messages/4.apdus +84 -0
  87. package/tests/sample-messages/4.json +110 -0
  88. package/tests/sample-messages/5.apdus +112 -0
  89. package/tests/sample-messages/5.json +92 -0
  90. package/tests/sample-messages/6.apdus +94 -0
  91. package/tests/sample-messages/6.json +78 -0
  92. package/tests/sample-messages/7.apdus +70 -0
  93. package/tests/sample-messages/7.json +55 -0
  94. package/tests/sample-messages/8.apdus +68 -0
  95. package/tests/sample-messages/8.json +50 -0
  96. package/tests/sample-messages/9.apdus +68 -0
  97. package/tests/sample-messages/9.json +50 -0
  98. package/LICENSE +0 -202
  99. package/lib-es/contracts.d.ts +0 -17
  100. package/lib-es/contracts.d.ts.map +0 -1
  101. package/lib-es/contracts.js +0 -103
  102. package/lib-es/contracts.js.map +0 -1
  103. package/lib-es/erc20.d.ts +0 -22
  104. package/lib-es/erc20.d.ts.map +0 -1
  105. package/lib-es/erc20.js +0 -64
  106. package/lib-es/erc20.js.map +0 -1
@@ -1,2 +1,5 @@
1
- @ledgerhq/hw-app-eth:build: cache hit, replaying output 715ee6b450935ba7
2
- @ledgerhq/hw-app-eth:build: $ NODE_ENV=production tsc && tsc -m ES6 --outDir lib-es
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
@@ -0,0 +1,13 @@
1
+ # @ledgerhq/hw-app-eth
2
+
3
+ ## 6.29.0
4
+
5
+ ### Minor Changes
6
+
7
+ - c4be045f9: Add support for EIP712
8
+
9
+ ## 6.29.0-next.0
10
+
11
+ ### Minor Changes
12
+
13
+ - c4be045f9: Add support for EIP712
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
- * [starkGetPublicKey](#starkgetpublickey)
32
+ * [signEIP712Message](#signeip712message)
33
33
  * [Parameters](#parameters-5)
34
- * [starkSignOrder](#starksignorder)
34
+ * [Examples](#examples-5)
35
+ * [starkGetPublicKey](#starkgetpublickey)
35
36
  * [Parameters](#parameters-6)
36
- * [starkSignOrder_v2](#starksignorder_v2)
37
+ * [starkSignOrder](#starksignorder)
37
38
  * [Parameters](#parameters-7)
38
- * [starkSignTransfer](#starksigntransfer)
39
+ * [starkSignOrder_v2](#starksignorder_v2)
39
40
  * [Parameters](#parameters-8)
40
- * [starkSignTransfer_v2](#starksigntransfer_v2)
41
+ * [starkSignTransfer](#starksigntransfer)
41
42
  * [Parameters](#parameters-9)
42
- * [starkProvideQuantum](#starkprovidequantum)
43
+ * [starkSignTransfer_v2](#starksigntransfer_v2)
43
44
  * [Parameters](#parameters-10)
44
- * [starkProvideQuantum_v2](#starkprovidequantum_v2)
45
+ * [starkProvideQuantum](#starkprovidequantum)
45
46
  * [Parameters](#parameters-11)
46
- * [starkUnsafeSign](#starkunsafesign)
47
+ * [starkProvideQuantum_v2](#starkprovidequantum_v2)
47
48
  * [Parameters](#parameters-12)
48
- * [eth2GetPublicKey](#eth2getpublickey)
49
+ * [starkUnsafeSign](#starkunsafesign)
49
50
  * [Parameters](#parameters-13)
50
- * [Examples](#examples-5)
51
- * [eth2SetWithdrawalIndex](#eth2setwithdrawalindex)
51
+ * [eth2GetPublicKey](#eth2getpublickey)
52
52
  * [Parameters](#parameters-14)
53
- * [getEIP1024PublicEncryptionKey](#geteip1024publicencryptionkey)
54
- * [Parameters](#parameters-15)
55
53
  * [Examples](#examples-6)
56
- * [getEIP1024SharedSecret](#geteip1024sharedsecret)
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
@@ -0,0 +1,6 @@
1
+ import baseConfig from "../../jest.config";
2
+
3
+ export default {
4
+ ...baseConfig,
5
+ rootDir: __dirname,
6
+ };
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":"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"}
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;AAM9E,OAAO,EAGL,aAAa,EACd,MAAM,kBAAkB,CAAC;AAE1B,oBAAY,qBAAqB,GAC7B,KAAK,GACL,OAAO,GACP,QAAQ,GACR,eAAe,GACf,gBAAgB,CAAC;AAmBrB;;;;;;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;IAiC7B;;;;;;;;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;IAoHF;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;IASF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA8BG;IACG,iBAAiB,CACrB,IAAI,EAAE,MAAM,EACZ,WAAW,EAAE,aAAa,EAC1B,UAAU,UAAQ,GACjB,OAAO,CAAC;QACT,CAAC,EAAE,MAAM,CAAC;QACV,CAAC,EAAE,MAAM,CAAC;QACV,CAAC,EAAE,MAAM,CAAC;KACX,CAAC;IAIF;;;;;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;;;;;;;OAOG;IACH,6BAA6B,CAC3B,IAAI,EAAE,MAAM,EACZ,WAAW,CAAC,EAAE,OAAO,GACpB,OAAO,CAAC;QACT,SAAS,EAAE,MAAM,CAAC;KACnB,CAAC;IAgBF;;;;;;;;OAQG;IACH,sBAAsB,CACpB,IAAI,EAAE,MAAM,EACZ,kBAAkB,EAAE,MAAM,EAC1B,WAAW,CAAC,EAAE,OAAO,GACpB,OAAO,CAAC;QACT,YAAY,EAAE,MAAM,CAAC;KACtB,CAAC;IAoBF,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
@@ -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
- var domainSeparator = hexBuffer(domainSeparatorHex);
481
- var hashStruct = hexBuffer(hashStructMessageHex);
482
- var paths = splitPath(path);
483
- var buffer = Buffer.alloc(1 + paths.length * 4 + 32 + 32, 0);
484
- var offset = 0;
485
- buffer[0] = paths.length;
486
- paths.forEach(function (element, index) {
487
- buffer.writeUInt32BE(element, 1 + 4 * index);
488
- });
489
- offset = 1 + 4 * paths.length;
490
- domainSeparator.copy(buffer, offset);
491
- offset += 32;
492
- hashStruct.copy(buffer, offset);
493
- return this.transport
494
- .send(0xe0, 0x0c, 0x00, 0x00, buffer)
495
- .then(function (response) {
496
- var v = response[0];
497
- var r = response.slice(1, 1 + 32).toString("hex");
498
- var s = response.slice(1 + 32, 1 + 32 + 32).toString("hex");
499
- return {
500
- v: v,
501
- r: r,
502
- s: s
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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"}