@ledgerhq/coin-evm 0.3.0 → 0.4.0-next.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 (582) hide show
  1. package/CHANGELOG.md +31 -0
  2. package/jest.config.js +4 -0
  3. package/lib/__tests__/fixtures/common.fixtures.d.ts +9 -0
  4. package/lib/__tests__/fixtures/common.fixtures.d.ts.map +1 -0
  5. package/lib/{testUtils.js → __tests__/fixtures/common.fixtures.js} +40 -9
  6. package/lib/__tests__/fixtures/common.fixtures.js.map +1 -0
  7. package/lib/__tests__/fixtures/etherscan.fixtures.d.ts +86 -0
  8. package/lib/__tests__/fixtures/etherscan.fixtures.d.ts.map +1 -0
  9. package/lib/__tests__/fixtures/etherscan.fixtures.js +267 -0
  10. package/lib/__tests__/fixtures/etherscan.fixtures.js.map +1 -0
  11. package/lib/__tests__/fixtures/prepareTransaction.fixtures.d.ts +10 -0
  12. package/lib/__tests__/fixtures/prepareTransaction.fixtures.d.ts.map +1 -0
  13. package/lib/__tests__/fixtures/prepareTransaction.fixtures.js +69 -0
  14. package/lib/__tests__/fixtures/prepareTransaction.fixtures.js.map +1 -0
  15. package/lib/__tests__/fixtures/synchronization.fixtures.d.ts +44 -0
  16. package/lib/__tests__/fixtures/synchronization.fixtures.d.ts.map +1 -0
  17. package/lib/__tests__/fixtures/synchronization.fixtures.js +219 -0
  18. package/lib/__tests__/fixtures/synchronization.fixtures.js.map +1 -0
  19. package/lib/__tests__/fixtures/transaction.fixtures.d.ts +47 -0
  20. package/lib/__tests__/fixtures/transaction.fixtures.d.ts.map +1 -0
  21. package/lib/__tests__/fixtures/transaction.fixtures.js +182 -0
  22. package/lib/__tests__/fixtures/transaction.fixtures.js.map +1 -0
  23. package/lib/__tests__/integration/bridge.integration.test.d.ts +7 -0
  24. package/lib/__tests__/integration/bridge.integration.test.d.ts.map +1 -0
  25. package/lib/__tests__/integration/bridge.integration.test.js +74 -0
  26. package/lib/__tests__/integration/bridge.integration.test.js.map +1 -0
  27. package/lib/__tests__/unit/adapters.unit.test.d.ts.map +1 -0
  28. package/lib/__tests__/unit/adapters.unit.test.js +989 -0
  29. package/lib/__tests__/unit/adapters.unit.test.js.map +1 -0
  30. package/lib/__tests__/unit/api/explorer/etherscan.unit.test.d.ts +2 -0
  31. package/lib/__tests__/unit/api/explorer/etherscan.unit.test.d.ts.map +1 -0
  32. package/lib/__tests__/unit/api/explorer/etherscan.unit.test.js +430 -0
  33. package/lib/__tests__/unit/api/explorer/etherscan.unit.test.js.map +1 -0
  34. package/lib/__tests__/unit/api/explorer/index.unit.test.d.ts +2 -0
  35. package/lib/__tests__/unit/api/explorer/index.unit.test.d.ts.map +1 -0
  36. package/lib/__tests__/unit/api/explorer/index.unit.test.js +49 -0
  37. package/lib/__tests__/unit/api/explorer/index.unit.test.js.map +1 -0
  38. package/lib/__tests__/unit/api/gasTracker/index.unit.test.d.ts +2 -0
  39. package/lib/__tests__/unit/api/gasTracker/index.unit.test.d.ts.map +1 -0
  40. package/lib/__tests__/{gasTracker → unit/api/gasTracker}/index.unit.test.js +3 -3
  41. package/lib/__tests__/unit/api/gasTracker/index.unit.test.js.map +1 -0
  42. package/lib/__tests__/unit/api/gasTracker/ledger.unit.test.d.ts.map +1 -0
  43. package/lib/__tests__/{gasTracker → unit/api/gasTracker}/ledger.unit.test.js +2 -2
  44. package/lib/__tests__/unit/api/gasTracker/ledger.unit.test.js.map +1 -0
  45. package/lib/__tests__/unit/api/rpc/rpc.unit.test.d.ts.map +1 -0
  46. package/lib/__tests__/{rpc.unit.test.js → unit/api/rpc/rpc.unit.test.js} +14 -14
  47. package/lib/__tests__/unit/api/rpc/rpc.unit.test.js.map +1 -0
  48. package/lib/__tests__/unit/broadcast.unit.test.d.ts.map +1 -0
  49. package/lib/__tests__/unit/broadcast.unit.test.js +335 -0
  50. package/lib/__tests__/unit/broadcast.unit.test.js.map +1 -0
  51. package/lib/__tests__/unit/buildOptimisticOperation.unit.test.d.ts.map +1 -0
  52. package/lib/__tests__/{buildOptimisticOperation.unit.test.js → unit/buildOptimisticOperation.unit.test.js} +132 -6
  53. package/lib/__tests__/unit/buildOptimisticOperation.unit.test.js.map +1 -0
  54. package/lib/__tests__/unit/createTransaction.unit.test.d.ts.map +1 -0
  55. package/lib/__tests__/{createTransaction.unit.test.js → unit/createTransaction.unit.test.js} +5 -5
  56. package/lib/__tests__/unit/createTransaction.unit.test.js.map +1 -0
  57. package/lib/__tests__/unit/deviceTransactionConfig.unit.test.d.ts.map +1 -0
  58. package/lib/__tests__/{deviceTransactionConfig.unit.test.js → unit/deviceTransactionConfig.unit.test.js} +123 -6
  59. package/lib/__tests__/unit/deviceTransactionConfig.unit.test.js.map +1 -0
  60. package/lib/__tests__/unit/estimateMaxSpendable.unit.test.d.ts.map +1 -0
  61. package/lib/__tests__/{estimateMaxSpendable.unit.test.js → unit/estimateMaxSpendable.unit.test.js} +6 -6
  62. package/lib/__tests__/unit/estimateMaxSpendable.unit.test.js.map +1 -0
  63. package/lib/__tests__/unit/getTransactionStatus.unit.test.d.ts.map +1 -0
  64. package/lib/__tests__/{getTransactionStatus.unit.test.js → unit/getTransactionStatus.unit.test.js} +76 -6
  65. package/lib/__tests__/unit/getTransactionStatus.unit.test.js.map +1 -0
  66. package/lib/__tests__/unit/hw-getAddress.unit.test.d.ts.map +1 -0
  67. package/lib/__tests__/{hw-getAddress.unit.test.js → unit/hw-getAddress.unit.test.js} +5 -1
  68. package/lib/__tests__/unit/hw-getAddress.unit.test.js.map +1 -0
  69. package/lib/__tests__/unit/hw-signMessage.unit.test.d.ts +2 -0
  70. package/lib/__tests__/unit/hw-signMessage.unit.test.d.ts.map +1 -0
  71. package/lib/__tests__/unit/hw-signMessage.unit.test.js +188 -0
  72. package/lib/__tests__/unit/hw-signMessage.unit.test.js.map +1 -0
  73. package/lib/__tests__/unit/logic.unit.test.d.ts.map +1 -0
  74. package/lib/__tests__/{logic.unit.test.js → unit/logic.unit.test.js} +111 -20
  75. package/lib/__tests__/unit/logic.unit.test.js.map +1 -0
  76. package/lib/__tests__/unit/nftResolvers.unit.test.d.ts +2 -0
  77. package/lib/__tests__/unit/nftResolvers.unit.test.d.ts.map +1 -0
  78. package/lib/__tests__/unit/nftResolvers.unit.test.js +163 -0
  79. package/lib/__tests__/unit/nftResolvers.unit.test.js.map +1 -0
  80. package/lib/__tests__/unit/preload.unit.test.d.ts.map +1 -0
  81. package/lib/__tests__/{preload.unit.test.js → unit/preload.unit.test.js} +3 -3
  82. package/lib/__tests__/unit/preload.unit.test.js.map +1 -0
  83. package/lib/__tests__/unit/prepareTransaction.unit.test.d.ts.map +1 -0
  84. package/lib/__tests__/unit/prepareTransaction.unit.test.js +300 -0
  85. package/lib/__tests__/unit/prepareTransaction.unit.test.js.map +1 -0
  86. package/lib/__tests__/unit/signOperation.unit.test.d.ts.map +1 -0
  87. package/lib/__tests__/{signOperation.unit.test.js → unit/signOperation.unit.test.js} +14 -17
  88. package/lib/__tests__/unit/signOperation.unit.test.js.map +1 -0
  89. package/lib/__tests__/unit/synchronization.unit.test.d.ts.map +1 -0
  90. package/lib/__tests__/{synchronization.unit.test.js → unit/synchronization.unit.test.js} +139 -231
  91. package/lib/__tests__/unit/synchronization.unit.test.js.map +1 -0
  92. package/lib/__tests__/unit/transaction.unit.test.d.ts.map +1 -0
  93. package/lib/__tests__/{transaction.unit.test.js → unit/transaction.unit.test.js} +48 -80
  94. package/lib/__tests__/unit/transaction.unit.test.js.map +1 -0
  95. package/lib/abis/erc1155.abi.json +314 -0
  96. package/lib/abis/erc721.abi.json +346 -0
  97. package/lib/adapters.d.ts +18 -7
  98. package/lib/adapters.d.ts.map +1 -1
  99. package/lib/adapters.js +131 -46
  100. package/lib/adapters.js.map +1 -1
  101. package/lib/api/explorer/etherscan.d.ts +39 -11
  102. package/lib/api/explorer/etherscan.d.ts.map +1 -1
  103. package/lib/api/explorer/etherscan.js +151 -9
  104. package/lib/api/explorer/etherscan.js.map +1 -1
  105. package/lib/api/explorer/index.d.ts +7 -16
  106. package/lib/api/explorer/index.d.ts.map +1 -1
  107. package/lib/api/explorer/index.js.map +1 -1
  108. package/lib/api/nft/index.d.ts +24 -0
  109. package/lib/api/nft/index.d.ts.map +1 -0
  110. package/lib/api/nft/index.js +54 -0
  111. package/lib/api/nft/index.js.map +1 -0
  112. package/lib/api/rpc/index.native.d.ts.map +1 -1
  113. package/lib/api/rpc/index.native.js +1 -0
  114. package/lib/api/rpc/index.native.js.map +1 -1
  115. package/lib/api/rpc/rpc.common.d.ts +2 -2
  116. package/lib/api/rpc/rpc.common.d.ts.map +1 -1
  117. package/lib/api/rpc/rpc.common.js +3 -3
  118. package/lib/api/rpc/rpc.common.js.map +1 -1
  119. package/lib/bridge/js.d.ts +1 -1
  120. package/lib/bridge/js.d.ts.map +1 -1
  121. package/lib/bridge/js.js +10 -10
  122. package/lib/bridge/js.js.map +1 -1
  123. package/lib/broadcast.d.ts.map +1 -1
  124. package/lib/broadcast.js +9 -2
  125. package/lib/broadcast.js.map +1 -1
  126. package/lib/buildOptimisticOperation.d.ts +5 -1
  127. package/lib/buildOptimisticOperation.d.ts.map +1 -1
  128. package/lib/buildOptimisticOperation.js +46 -4
  129. package/lib/buildOptimisticOperation.js.map +1 -1
  130. package/lib/cli-transaction.d.ts.map +1 -1
  131. package/lib/cli-transaction.js +1 -0
  132. package/lib/cli-transaction.js.map +1 -1
  133. package/lib/datasets/ethereum1.d.ts.map +1 -1
  134. package/lib/datasets/ethereum1.js +3 -2
  135. package/lib/datasets/ethereum1.js.map +1 -1
  136. package/lib/deviceTransactionConfig.d.ts.map +1 -1
  137. package/lib/deviceTransactionConfig.js +50 -0
  138. package/lib/deviceTransactionConfig.js.map +1 -1
  139. package/lib/errors.d.ts +9 -0
  140. package/lib/errors.d.ts.map +1 -1
  141. package/lib/errors.js +7 -1
  142. package/lib/errors.js.map +1 -1
  143. package/lib/getTransactionStatus.d.ts +1 -0
  144. package/lib/getTransactionStatus.d.ts.map +1 -1
  145. package/lib/getTransactionStatus.js +25 -3
  146. package/lib/getTransactionStatus.js.map +1 -1
  147. package/lib/hw-signMessage.d.ts +15 -0
  148. package/lib/hw-signMessage.d.ts.map +1 -0
  149. package/lib/hw-signMessage.js +86 -0
  150. package/lib/hw-signMessage.js.map +1 -0
  151. package/lib/logic.d.ts +63 -1
  152. package/lib/logic.d.ts.map +1 -1
  153. package/lib/logic.js +98 -2
  154. package/lib/logic.js.map +1 -1
  155. package/lib/nftResolvers.d.ts +19 -0
  156. package/lib/nftResolvers.d.ts.map +1 -0
  157. package/lib/nftResolvers.js +58 -0
  158. package/lib/nftResolvers.js.map +1 -0
  159. package/lib/preload.d.ts.map +1 -1
  160. package/lib/preload.js +7 -3
  161. package/lib/preload.js.map +1 -1
  162. package/lib/prepareTransaction.d.ts +6 -1
  163. package/lib/prepareTransaction.d.ts.map +1 -1
  164. package/lib/prepareTransaction.js +69 -18
  165. package/lib/prepareTransaction.js.map +1 -1
  166. package/lib/signOperation.d.ts +1 -1
  167. package/lib/signOperation.d.ts.map +1 -1
  168. package/lib/signOperation.js +17 -6
  169. package/lib/signOperation.js.map +1 -1
  170. package/lib/signer.d.ts +24 -1
  171. package/lib/signer.d.ts.map +1 -1
  172. package/lib/specs.d.ts +3 -1
  173. package/lib/specs.d.ts.map +1 -1
  174. package/lib/specs.js +3 -3
  175. package/lib/specs.js.map +1 -1
  176. package/lib/speculos-deviceActions.d.ts.map +1 -1
  177. package/lib/speculos-deviceActions.js +2 -1
  178. package/lib/speculos-deviceActions.js.map +1 -1
  179. package/lib/synchronization.d.ts +7 -2
  180. package/lib/synchronization.d.ts.map +1 -1
  181. package/lib/synchronization.js +45 -45
  182. package/lib/synchronization.js.map +1 -1
  183. package/lib/transaction.d.ts +3 -4
  184. package/lib/transaction.d.ts.map +1 -1
  185. package/lib/transaction.js +58 -12
  186. package/lib/transaction.js.map +1 -1
  187. package/lib/types.d.ts +85 -10
  188. package/lib/types.d.ts.map +1 -1
  189. package/lib-es/__tests__/fixtures/common.fixtures.d.ts +9 -0
  190. package/lib-es/__tests__/fixtures/common.fixtures.d.ts.map +1 -0
  191. package/lib-es/{testUtils.js → __tests__/fixtures/common.fixtures.js} +36 -8
  192. package/lib-es/__tests__/fixtures/common.fixtures.js.map +1 -0
  193. package/lib-es/__tests__/fixtures/etherscan.fixtures.d.ts +86 -0
  194. package/lib-es/__tests__/fixtures/etherscan.fixtures.d.ts.map +1 -0
  195. package/lib-es/__tests__/fixtures/etherscan.fixtures.js +264 -0
  196. package/lib-es/__tests__/fixtures/etherscan.fixtures.js.map +1 -0
  197. package/lib-es/__tests__/fixtures/prepareTransaction.fixtures.d.ts +10 -0
  198. package/lib-es/__tests__/fixtures/prepareTransaction.fixtures.d.ts.map +1 -0
  199. package/lib-es/__tests__/fixtures/prepareTransaction.fixtures.js +62 -0
  200. package/lib-es/__tests__/fixtures/prepareTransaction.fixtures.js.map +1 -0
  201. package/lib-es/__tests__/fixtures/synchronization.fixtures.d.ts +44 -0
  202. package/lib-es/__tests__/fixtures/synchronization.fixtures.d.ts.map +1 -0
  203. package/lib-es/__tests__/fixtures/synchronization.fixtures.js +190 -0
  204. package/lib-es/__tests__/fixtures/synchronization.fixtures.js.map +1 -0
  205. package/lib-es/__tests__/fixtures/transaction.fixtures.d.ts +47 -0
  206. package/lib-es/__tests__/fixtures/transaction.fixtures.d.ts.map +1 -0
  207. package/lib-es/__tests__/fixtures/transaction.fixtures.js +176 -0
  208. package/lib-es/__tests__/fixtures/transaction.fixtures.js.map +1 -0
  209. package/lib-es/__tests__/integration/bridge.integration.test.d.ts +7 -0
  210. package/lib-es/__tests__/integration/bridge.integration.test.d.ts.map +1 -0
  211. package/lib-es/__tests__/integration/bridge.integration.test.js +71 -0
  212. package/lib-es/__tests__/integration/bridge.integration.test.js.map +1 -0
  213. package/lib-es/__tests__/unit/adapters.unit.test.d.ts.map +1 -0
  214. package/lib-es/__tests__/unit/adapters.unit.test.js +984 -0
  215. package/lib-es/__tests__/unit/adapters.unit.test.js.map +1 -0
  216. package/lib-es/__tests__/unit/api/explorer/etherscan.unit.test.d.ts +2 -0
  217. package/lib-es/__tests__/unit/api/explorer/etherscan.unit.test.d.ts.map +1 -0
  218. package/lib-es/__tests__/unit/api/explorer/etherscan.unit.test.js +402 -0
  219. package/lib-es/__tests__/unit/api/explorer/etherscan.unit.test.js.map +1 -0
  220. package/lib-es/__tests__/unit/api/explorer/index.unit.test.d.ts.map +1 -0
  221. package/lib-es/__tests__/unit/api/explorer/index.unit.test.js +44 -0
  222. package/lib-es/__tests__/unit/api/explorer/index.unit.test.js.map +1 -0
  223. package/lib-es/__tests__/unit/api/gasTracker/index.unit.test.d.ts.map +1 -0
  224. package/lib-es/__tests__/{gasTracker → unit/api/gasTracker}/index.unit.test.js +3 -3
  225. package/lib-es/__tests__/unit/api/gasTracker/index.unit.test.js.map +1 -0
  226. package/lib-es/__tests__/unit/api/gasTracker/ledger.unit.test.d.ts.map +1 -0
  227. package/lib-es/__tests__/{gasTracker → unit/api/gasTracker}/ledger.unit.test.js +2 -2
  228. package/lib-es/__tests__/unit/api/gasTracker/ledger.unit.test.js.map +1 -0
  229. package/lib-es/__tests__/unit/api/rpc/rpc.unit.test.d.ts.map +1 -0
  230. package/lib-es/__tests__/{rpc.unit.test.js → unit/api/rpc/rpc.unit.test.js} +13 -13
  231. package/lib-es/__tests__/unit/api/rpc/rpc.unit.test.js.map +1 -0
  232. package/lib-es/__tests__/unit/broadcast.unit.test.d.ts.map +1 -0
  233. package/lib-es/__tests__/unit/broadcast.unit.test.js +307 -0
  234. package/lib-es/__tests__/unit/broadcast.unit.test.js.map +1 -0
  235. package/lib-es/__tests__/unit/buildOptimisticOperation.unit.test.d.ts.map +1 -0
  236. package/lib-es/__tests__/{buildOptimisticOperation.unit.test.js → unit/buildOptimisticOperation.unit.test.js} +130 -4
  237. package/lib-es/__tests__/unit/buildOptimisticOperation.unit.test.js.map +1 -0
  238. package/lib-es/__tests__/unit/createTransaction.unit.test.d.ts.map +1 -0
  239. package/lib-es/__tests__/{createTransaction.unit.test.js → unit/createTransaction.unit.test.js} +3 -3
  240. package/lib-es/__tests__/unit/createTransaction.unit.test.js.map +1 -0
  241. package/lib-es/__tests__/unit/deviceTransactionConfig.unit.test.d.ts.map +1 -0
  242. package/lib-es/__tests__/{deviceTransactionConfig.unit.test.js → unit/deviceTransactionConfig.unit.test.js} +121 -4
  243. package/lib-es/__tests__/unit/deviceTransactionConfig.unit.test.js.map +1 -0
  244. package/lib-es/__tests__/unit/estimateMaxSpendable.unit.test.d.ts.map +1 -0
  245. package/lib-es/__tests__/{estimateMaxSpendable.unit.test.js → unit/estimateMaxSpendable.unit.test.js} +4 -4
  246. package/lib-es/__tests__/unit/estimateMaxSpendable.unit.test.js.map +1 -0
  247. package/lib-es/__tests__/unit/getTransactionStatus.unit.test.d.ts.map +1 -0
  248. package/lib-es/__tests__/{getTransactionStatus.unit.test.js → unit/getTransactionStatus.unit.test.js} +74 -4
  249. package/lib-es/__tests__/unit/getTransactionStatus.unit.test.js.map +1 -0
  250. package/lib-es/__tests__/unit/hw-getAddress.unit.test.d.ts.map +1 -0
  251. package/lib-es/__tests__/{hw-getAddress.unit.test.js → unit/hw-getAddress.unit.test.js} +5 -1
  252. package/lib-es/__tests__/unit/hw-getAddress.unit.test.js.map +1 -0
  253. package/lib-es/__tests__/unit/hw-signMessage.unit.test.d.ts +2 -0
  254. package/lib-es/__tests__/unit/hw-signMessage.unit.test.d.ts.map +1 -0
  255. package/lib-es/__tests__/unit/hw-signMessage.unit.test.js +186 -0
  256. package/lib-es/__tests__/unit/hw-signMessage.unit.test.js.map +1 -0
  257. package/lib-es/__tests__/unit/logic.unit.test.d.ts.map +1 -0
  258. package/lib-es/__tests__/{logic.unit.test.js → unit/logic.unit.test.js} +97 -6
  259. package/lib-es/__tests__/unit/logic.unit.test.js.map +1 -0
  260. package/lib-es/__tests__/unit/nftResolvers.unit.test.d.ts +2 -0
  261. package/lib-es/__tests__/unit/nftResolvers.unit.test.d.ts.map +1 -0
  262. package/lib-es/__tests__/unit/nftResolvers.unit.test.js +158 -0
  263. package/lib-es/__tests__/unit/nftResolvers.unit.test.js.map +1 -0
  264. package/lib-es/__tests__/unit/preload.unit.test.d.ts.map +1 -0
  265. package/lib-es/__tests__/{preload.unit.test.js → unit/preload.unit.test.js} +3 -3
  266. package/lib-es/__tests__/unit/preload.unit.test.js.map +1 -0
  267. package/lib-es/__tests__/unit/prepareTransaction.unit.test.d.ts.map +1 -0
  268. package/lib-es/__tests__/{prepareTransaction.unit.test.js → unit/prepareTransaction.unit.test.js} +134 -82
  269. package/lib-es/__tests__/unit/prepareTransaction.unit.test.js.map +1 -0
  270. package/lib-es/__tests__/unit/signOperation.unit.test.d.ts.map +1 -0
  271. package/lib-es/__tests__/{signOperation.unit.test.js → unit/signOperation.unit.test.js} +13 -16
  272. package/lib-es/__tests__/unit/signOperation.unit.test.js.map +1 -0
  273. package/lib-es/__tests__/unit/synchronization.unit.test.d.ts.map +1 -0
  274. package/lib-es/__tests__/{synchronization.unit.test.js → unit/synchronization.unit.test.js} +115 -207
  275. package/lib-es/__tests__/unit/synchronization.unit.test.js.map +1 -0
  276. package/lib-es/__tests__/unit/transaction.unit.test.d.ts.map +1 -0
  277. package/lib-es/__tests__/{transaction.unit.test.js → unit/transaction.unit.test.js} +40 -72
  278. package/lib-es/__tests__/unit/transaction.unit.test.js.map +1 -0
  279. package/lib-es/abis/erc1155.abi.json +314 -0
  280. package/lib-es/abis/erc721.abi.json +346 -0
  281. package/lib-es/adapters.d.ts +18 -7
  282. package/lib-es/adapters.d.ts.map +1 -1
  283. package/lib-es/adapters.js +127 -44
  284. package/lib-es/adapters.js.map +1 -1
  285. package/lib-es/api/explorer/etherscan.d.ts +39 -11
  286. package/lib-es/api/explorer/etherscan.d.ts.map +1 -1
  287. package/lib-es/api/explorer/etherscan.js +146 -10
  288. package/lib-es/api/explorer/etherscan.js.map +1 -1
  289. package/lib-es/api/explorer/index.d.ts +7 -16
  290. package/lib-es/api/explorer/index.d.ts.map +1 -1
  291. package/lib-es/api/explorer/index.js.map +1 -1
  292. package/lib-es/api/nft/index.d.ts +24 -0
  293. package/lib-es/api/nft/index.d.ts.map +1 -0
  294. package/lib-es/api/nft/index.js +46 -0
  295. package/lib-es/api/nft/index.js.map +1 -0
  296. package/lib-es/api/rpc/index.native.d.ts.map +1 -1
  297. package/lib-es/api/rpc/index.native.js +1 -0
  298. package/lib-es/api/rpc/index.native.js.map +1 -1
  299. package/lib-es/api/rpc/rpc.common.d.ts +2 -2
  300. package/lib-es/api/rpc/rpc.common.d.ts.map +1 -1
  301. package/lib-es/api/rpc/rpc.common.js +3 -3
  302. package/lib-es/api/rpc/rpc.common.js.map +1 -1
  303. package/lib-es/bridge/js.d.ts +1 -1
  304. package/lib-es/bridge/js.d.ts.map +1 -1
  305. package/lib-es/bridge/js.js +10 -10
  306. package/lib-es/bridge/js.js.map +1 -1
  307. package/lib-es/broadcast.d.ts.map +1 -1
  308. package/lib-es/broadcast.js +9 -2
  309. package/lib-es/broadcast.js.map +1 -1
  310. package/lib-es/buildOptimisticOperation.d.ts +5 -1
  311. package/lib-es/buildOptimisticOperation.d.ts.map +1 -1
  312. package/lib-es/buildOptimisticOperation.js +45 -4
  313. package/lib-es/buildOptimisticOperation.js.map +1 -1
  314. package/lib-es/cli-transaction.d.ts.map +1 -1
  315. package/lib-es/cli-transaction.js +1 -0
  316. package/lib-es/cli-transaction.js.map +1 -1
  317. package/lib-es/datasets/ethereum1.d.ts.map +1 -1
  318. package/lib-es/datasets/ethereum1.js +3 -2
  319. package/lib-es/datasets/ethereum1.js.map +1 -1
  320. package/lib-es/deviceTransactionConfig.d.ts.map +1 -1
  321. package/lib-es/deviceTransactionConfig.js +50 -0
  322. package/lib-es/deviceTransactionConfig.js.map +1 -1
  323. package/lib-es/errors.d.ts +9 -0
  324. package/lib-es/errors.d.ts.map +1 -1
  325. package/lib-es/errors.js +6 -0
  326. package/lib-es/errors.js.map +1 -1
  327. package/lib-es/getTransactionStatus.d.ts +1 -0
  328. package/lib-es/getTransactionStatus.d.ts.map +1 -1
  329. package/lib-es/getTransactionStatus.js +23 -2
  330. package/lib-es/getTransactionStatus.js.map +1 -1
  331. package/lib-es/hw-signMessage.d.ts +15 -0
  332. package/lib-es/hw-signMessage.d.ts.map +1 -0
  333. package/lib-es/hw-signMessage.js +81 -0
  334. package/lib-es/hw-signMessage.js.map +1 -0
  335. package/lib-es/logic.d.ts +63 -1
  336. package/lib-es/logic.d.ts.map +1 -1
  337. package/lib-es/logic.js +95 -1
  338. package/lib-es/logic.js.map +1 -1
  339. package/lib-es/nftResolvers.d.ts +19 -0
  340. package/lib-es/nftResolvers.d.ts.map +1 -0
  341. package/lib-es/nftResolvers.js +50 -0
  342. package/lib-es/nftResolvers.js.map +1 -0
  343. package/lib-es/preload.d.ts.map +1 -1
  344. package/lib-es/preload.js +7 -3
  345. package/lib-es/preload.js.map +1 -1
  346. package/lib-es/prepareTransaction.d.ts +6 -1
  347. package/lib-es/prepareTransaction.d.ts.map +1 -1
  348. package/lib-es/prepareTransaction.js +68 -18
  349. package/lib-es/prepareTransaction.js.map +1 -1
  350. package/lib-es/signOperation.d.ts +1 -1
  351. package/lib-es/signOperation.d.ts.map +1 -1
  352. package/lib-es/signOperation.js +17 -6
  353. package/lib-es/signOperation.js.map +1 -1
  354. package/lib-es/signer.d.ts +24 -1
  355. package/lib-es/signer.d.ts.map +1 -1
  356. package/lib-es/specs.d.ts +3 -1
  357. package/lib-es/specs.d.ts.map +1 -1
  358. package/lib-es/specs.js +3 -3
  359. package/lib-es/specs.js.map +1 -1
  360. package/lib-es/speculos-deviceActions.d.ts.map +1 -1
  361. package/lib-es/speculos-deviceActions.js +2 -1
  362. package/lib-es/speculos-deviceActions.js.map +1 -1
  363. package/lib-es/synchronization.d.ts +7 -2
  364. package/lib-es/synchronization.d.ts.map +1 -1
  365. package/lib-es/synchronization.js +46 -46
  366. package/lib-es/synchronization.js.map +1 -1
  367. package/lib-es/transaction.d.ts +3 -4
  368. package/lib-es/transaction.d.ts.map +1 -1
  369. package/lib-es/transaction.js +58 -12
  370. package/lib-es/transaction.js.map +1 -1
  371. package/lib-es/types.d.ts +85 -10
  372. package/lib-es/types.d.ts.map +1 -1
  373. package/package.json +13 -12
  374. package/src/{testUtils.ts → __tests__/fixtures/common.fixtures.ts} +78 -11
  375. package/src/__tests__/fixtures/etherscan.fixtures.ts +266 -0
  376. package/src/__tests__/fixtures/prepareTransaction.fixtures.ts +86 -0
  377. package/src/__tests__/fixtures/synchronization.fixtures.ts +229 -0
  378. package/src/__tests__/fixtures/transaction.fixtures.ts +229 -0
  379. package/src/__tests__/integration/bridge.integration.test.ts +74 -0
  380. package/src/__tests__/unit/adapters.unit.test.ts +1076 -0
  381. package/src/__tests__/unit/api/explorer/etherscan.unit.test.ts +563 -0
  382. package/src/__tests__/unit/api/explorer/index.unit.test.ts +36 -0
  383. package/src/__tests__/{gasTracker → unit/api/gasTracker}/index.unit.test.ts +3 -3
  384. package/src/__tests__/{gasTracker → unit/api/gasTracker}/ledger.unit.test.ts +3 -3
  385. package/src/__tests__/{rpc.unit.test.ts → unit/api/rpc/rpc.unit.test.ts} +17 -14
  386. package/src/__tests__/unit/broadcast.unit.test.ts +332 -0
  387. package/src/__tests__/{buildOptimisticOperation.unit.test.ts → unit/buildOptimisticOperation.unit.test.ts} +144 -5
  388. package/src/__tests__/{createTransaction.unit.test.ts → unit/createTransaction.unit.test.ts} +4 -4
  389. package/src/__tests__/{deviceTransactionConfig.unit.test.ts → unit/deviceTransactionConfig.unit.test.ts} +130 -5
  390. package/src/__tests__/{estimateMaxSpendable.unit.test.ts → unit/estimateMaxSpendable.unit.test.ts} +5 -5
  391. package/src/__tests__/{getTransactionStatus.unit.test.ts → unit/getTransactionStatus.unit.test.ts} +121 -5
  392. package/src/__tests__/{hw-getAddress.unit.test.ts → unit/hw-getAddress.unit.test.ts} +6 -2
  393. package/src/__tests__/unit/hw-signMessage.unit.test.ts +192 -0
  394. package/src/__tests__/{logic.unit.test.ts → unit/logic.unit.test.ts} +143 -8
  395. package/src/__tests__/unit/nftResolvers.unit.test.ts +179 -0
  396. package/src/__tests__/{preload.unit.test.ts → unit/preload.unit.test.ts} +4 -4
  397. package/src/__tests__/{prepareTransaction.unit.test.ts → unit/prepareTransaction.unit.test.ts} +284 -109
  398. package/src/__tests__/{signOperation.unit.test.ts → unit/signOperation.unit.test.ts} +18 -20
  399. package/src/__tests__/{synchronization.unit.test.ts → unit/synchronization.unit.test.ts} +202 -280
  400. package/src/__tests__/unit/transaction.unit.test.ts +198 -0
  401. package/src/abis/erc1155.abi.json +314 -0
  402. package/src/abis/erc20.abi.json +4 -12
  403. package/src/abis/erc721.abi.json +346 -0
  404. package/src/adapters.ts +177 -64
  405. package/src/api/explorer/etherscan.ts +265 -49
  406. package/src/api/explorer/index.ts +24 -10
  407. package/src/api/nft/index.ts +49 -0
  408. package/src/api/rpc/index.native.ts +2 -0
  409. package/src/api/rpc/rpc.common.ts +3 -3
  410. package/src/bridge/js.ts +13 -16
  411. package/src/broadcast.ts +29 -2
  412. package/src/buildOptimisticOperation.ts +71 -6
  413. package/src/cli-transaction.ts +2 -0
  414. package/src/datasets/ethereum1.ts +4 -2
  415. package/src/deviceTransactionConfig.ts +65 -0
  416. package/src/errors.ts +8 -0
  417. package/src/getTransactionStatus.ts +26 -0
  418. package/src/hw-signMessage.ts +92 -0
  419. package/src/logic.ts +118 -2
  420. package/src/nftResolvers.ts +71 -0
  421. package/src/preload.ts +9 -3
  422. package/src/prepareTransaction.ts +102 -24
  423. package/src/signOperation.ts +21 -8
  424. package/src/signer.ts +44 -1
  425. package/src/specs.ts +11 -6
  426. package/src/speculos-deviceActions.ts +3 -1
  427. package/src/synchronization.ts +73 -59
  428. package/src/transaction.ts +68 -15
  429. package/src/types.ts +108 -10
  430. package/.eslintrc.js +0 -22
  431. package/lib/__tests__/adapters.unit.test.d.ts.map +0 -1
  432. package/lib/__tests__/adapters.unit.test.js +0 -455
  433. package/lib/__tests__/adapters.unit.test.js.map +0 -1
  434. package/lib/__tests__/broadcast.unit.test.d.ts.map +0 -1
  435. package/lib/__tests__/broadcast.unit.test.js +0 -181
  436. package/lib/__tests__/broadcast.unit.test.js.map +0 -1
  437. package/lib/__tests__/buildOptimisticOperation.unit.test.d.ts.map +0 -1
  438. package/lib/__tests__/buildOptimisticOperation.unit.test.js.map +0 -1
  439. package/lib/__tests__/createTransaction.unit.test.d.ts.map +0 -1
  440. package/lib/__tests__/createTransaction.unit.test.js.map +0 -1
  441. package/lib/__tests__/deviceTransactionConfig.unit.test.d.ts.map +0 -1
  442. package/lib/__tests__/deviceTransactionConfig.unit.test.js.map +0 -1
  443. package/lib/__tests__/estimateMaxSpendable.unit.test.d.ts.map +0 -1
  444. package/lib/__tests__/estimateMaxSpendable.unit.test.js.map +0 -1
  445. package/lib/__tests__/gasTracker/index.unit.test.d.ts.map +0 -1
  446. package/lib/__tests__/gasTracker/index.unit.test.js.map +0 -1
  447. package/lib/__tests__/gasTracker/ledger.unit.test.d.ts.map +0 -1
  448. package/lib/__tests__/gasTracker/ledger.unit.test.js.map +0 -1
  449. package/lib/__tests__/getTransactionStatus.unit.test.d.ts.map +0 -1
  450. package/lib/__tests__/getTransactionStatus.unit.test.js.map +0 -1
  451. package/lib/__tests__/hw-getAddress.unit.test.d.ts.map +0 -1
  452. package/lib/__tests__/hw-getAddress.unit.test.js.map +0 -1
  453. package/lib/__tests__/logic.unit.test.d.ts.map +0 -1
  454. package/lib/__tests__/logic.unit.test.js.map +0 -1
  455. package/lib/__tests__/preload.unit.test.d.ts.map +0 -1
  456. package/lib/__tests__/preload.unit.test.js.map +0 -1
  457. package/lib/__tests__/prepareTransaction.unit.test.d.ts.map +0 -1
  458. package/lib/__tests__/prepareTransaction.unit.test.js +0 -248
  459. package/lib/__tests__/prepareTransaction.unit.test.js.map +0 -1
  460. package/lib/__tests__/rpc.unit.test.d.ts.map +0 -1
  461. package/lib/__tests__/rpc.unit.test.js.map +0 -1
  462. package/lib/__tests__/signOperation.unit.test.d.ts.map +0 -1
  463. package/lib/__tests__/signOperation.unit.test.js.map +0 -1
  464. package/lib/__tests__/synchronization.unit.test.d.ts.map +0 -1
  465. package/lib/__tests__/synchronization.unit.test.js.map +0 -1
  466. package/lib/__tests__/transaction.unit.test.d.ts.map +0 -1
  467. package/lib/__tests__/transaction.unit.test.js.map +0 -1
  468. package/lib/bridge.integration.test.d.ts +0 -14
  469. package/lib/bridge.integration.test.d.ts.map +0 -1
  470. package/lib/bridge.integration.test.js +0 -85
  471. package/lib/bridge.integration.test.js.map +0 -1
  472. package/lib/datasets/ethereum.scanAccounts.1.d.ts +0 -7
  473. package/lib/datasets/ethereum.scanAccounts.1.d.ts.map +0 -1
  474. package/lib/datasets/ethereum.scanAccounts.1.js +0 -51
  475. package/lib/datasets/ethereum.scanAccounts.1.js.map +0 -1
  476. package/lib/datasets/ethereum2.d.ts +0 -3
  477. package/lib/datasets/ethereum2.d.ts.map +0 -1
  478. package/lib/datasets/ethereum2.js +0 -22
  479. package/lib/datasets/ethereum2.js.map +0 -1
  480. package/lib/datasets/ethereum_classic.d.ts +0 -5
  481. package/lib/datasets/ethereum_classic.d.ts.map +0 -1
  482. package/lib/datasets/ethereum_classic.js +0 -69
  483. package/lib/datasets/ethereum_classic.js.map +0 -1
  484. package/lib/testUtils.d.ts +0 -6
  485. package/lib/testUtils.d.ts.map +0 -1
  486. package/lib/testUtils.js.map +0 -1
  487. package/lib-es/__tests__/adapters.unit.test.d.ts.map +0 -1
  488. package/lib-es/__tests__/adapters.unit.test.js +0 -450
  489. package/lib-es/__tests__/adapters.unit.test.js.map +0 -1
  490. package/lib-es/__tests__/broadcast.unit.test.d.ts.map +0 -1
  491. package/lib-es/__tests__/broadcast.unit.test.js +0 -153
  492. package/lib-es/__tests__/broadcast.unit.test.js.map +0 -1
  493. package/lib-es/__tests__/buildOptimisticOperation.unit.test.d.ts.map +0 -1
  494. package/lib-es/__tests__/buildOptimisticOperation.unit.test.js.map +0 -1
  495. package/lib-es/__tests__/createTransaction.unit.test.d.ts.map +0 -1
  496. package/lib-es/__tests__/createTransaction.unit.test.js.map +0 -1
  497. package/lib-es/__tests__/deviceTransactionConfig.unit.test.d.ts.map +0 -1
  498. package/lib-es/__tests__/deviceTransactionConfig.unit.test.js.map +0 -1
  499. package/lib-es/__tests__/estimateMaxSpendable.unit.test.d.ts.map +0 -1
  500. package/lib-es/__tests__/estimateMaxSpendable.unit.test.js.map +0 -1
  501. package/lib-es/__tests__/gasTracker/index.unit.test.d.ts.map +0 -1
  502. package/lib-es/__tests__/gasTracker/index.unit.test.js.map +0 -1
  503. package/lib-es/__tests__/gasTracker/ledger.unit.test.d.ts.map +0 -1
  504. package/lib-es/__tests__/gasTracker/ledger.unit.test.js.map +0 -1
  505. package/lib-es/__tests__/getTransactionStatus.unit.test.d.ts.map +0 -1
  506. package/lib-es/__tests__/getTransactionStatus.unit.test.js.map +0 -1
  507. package/lib-es/__tests__/hw-getAddress.unit.test.d.ts.map +0 -1
  508. package/lib-es/__tests__/hw-getAddress.unit.test.js.map +0 -1
  509. package/lib-es/__tests__/logic.unit.test.d.ts.map +0 -1
  510. package/lib-es/__tests__/logic.unit.test.js.map +0 -1
  511. package/lib-es/__tests__/preload.unit.test.d.ts.map +0 -1
  512. package/lib-es/__tests__/preload.unit.test.js.map +0 -1
  513. package/lib-es/__tests__/prepareTransaction.unit.test.d.ts.map +0 -1
  514. package/lib-es/__tests__/prepareTransaction.unit.test.js.map +0 -1
  515. package/lib-es/__tests__/rpc.unit.test.d.ts.map +0 -1
  516. package/lib-es/__tests__/rpc.unit.test.js.map +0 -1
  517. package/lib-es/__tests__/signOperation.unit.test.d.ts.map +0 -1
  518. package/lib-es/__tests__/signOperation.unit.test.js.map +0 -1
  519. package/lib-es/__tests__/synchronization.unit.test.d.ts.map +0 -1
  520. package/lib-es/__tests__/synchronization.unit.test.js.map +0 -1
  521. package/lib-es/__tests__/transaction.unit.test.d.ts.map +0 -1
  522. package/lib-es/__tests__/transaction.unit.test.js.map +0 -1
  523. package/lib-es/bridge.integration.test.d.ts +0 -14
  524. package/lib-es/bridge.integration.test.d.ts.map +0 -1
  525. package/lib-es/bridge.integration.test.js +0 -79
  526. package/lib-es/bridge.integration.test.js.map +0 -1
  527. package/lib-es/datasets/ethereum.scanAccounts.1.d.ts +0 -7
  528. package/lib-es/datasets/ethereum.scanAccounts.1.d.ts.map +0 -1
  529. package/lib-es/datasets/ethereum.scanAccounts.1.js +0 -49
  530. package/lib-es/datasets/ethereum.scanAccounts.1.js.map +0 -1
  531. package/lib-es/datasets/ethereum2.d.ts +0 -3
  532. package/lib-es/datasets/ethereum2.d.ts.map +0 -1
  533. package/lib-es/datasets/ethereum2.js +0 -19
  534. package/lib-es/datasets/ethereum2.js.map +0 -1
  535. package/lib-es/datasets/ethereum_classic.d.ts +0 -5
  536. package/lib-es/datasets/ethereum_classic.d.ts.map +0 -1
  537. package/lib-es/datasets/ethereum_classic.js +0 -67
  538. package/lib-es/datasets/ethereum_classic.js.map +0 -1
  539. package/lib-es/testUtils.d.ts +0 -6
  540. package/lib-es/testUtils.d.ts.map +0 -1
  541. package/lib-es/testUtils.js.map +0 -1
  542. package/src/__tests__/adapters.unit.test.ts +0 -497
  543. package/src/__tests__/broadcast.unit.test.ts +0 -163
  544. package/src/__tests__/transaction.unit.test.ts +0 -188
  545. package/src/bridge.integration.test.ts +0 -86
  546. package/src/datasets/ethereum.scanAccounts.1.ts +0 -48
  547. package/src/datasets/ethereum2.ts +0 -20
  548. package/src/datasets/ethereum_classic.ts +0 -68
  549. /package/lib/__tests__/{adapters.unit.test.d.ts → unit/adapters.unit.test.d.ts} +0 -0
  550. /package/lib/__tests__/{gasTracker → unit/api/gasTracker}/ledger.unit.test.d.ts +0 -0
  551. /package/lib/__tests__/{rpc.unit.test.d.ts → unit/api/rpc/rpc.unit.test.d.ts} +0 -0
  552. /package/lib/__tests__/{broadcast.unit.test.d.ts → unit/broadcast.unit.test.d.ts} +0 -0
  553. /package/lib/__tests__/{buildOptimisticOperation.unit.test.d.ts → unit/buildOptimisticOperation.unit.test.d.ts} +0 -0
  554. /package/lib/__tests__/{createTransaction.unit.test.d.ts → unit/createTransaction.unit.test.d.ts} +0 -0
  555. /package/lib/__tests__/{deviceTransactionConfig.unit.test.d.ts → unit/deviceTransactionConfig.unit.test.d.ts} +0 -0
  556. /package/lib/__tests__/{estimateMaxSpendable.unit.test.d.ts → unit/estimateMaxSpendable.unit.test.d.ts} +0 -0
  557. /package/lib/__tests__/{getTransactionStatus.unit.test.d.ts → unit/getTransactionStatus.unit.test.d.ts} +0 -0
  558. /package/lib/__tests__/{hw-getAddress.unit.test.d.ts → unit/hw-getAddress.unit.test.d.ts} +0 -0
  559. /package/lib/__tests__/{logic.unit.test.d.ts → unit/logic.unit.test.d.ts} +0 -0
  560. /package/lib/__tests__/{preload.unit.test.d.ts → unit/preload.unit.test.d.ts} +0 -0
  561. /package/lib/__tests__/{prepareTransaction.unit.test.d.ts → unit/prepareTransaction.unit.test.d.ts} +0 -0
  562. /package/lib/__tests__/{signOperation.unit.test.d.ts → unit/signOperation.unit.test.d.ts} +0 -0
  563. /package/lib/__tests__/{synchronization.unit.test.d.ts → unit/synchronization.unit.test.d.ts} +0 -0
  564. /package/lib/__tests__/{transaction.unit.test.d.ts → unit/transaction.unit.test.d.ts} +0 -0
  565. /package/lib-es/__tests__/{adapters.unit.test.d.ts → unit/adapters.unit.test.d.ts} +0 -0
  566. /package/lib-es/__tests__/{gasTracker → unit/api/explorer}/index.unit.test.d.ts +0 -0
  567. /package/{lib/__tests__ → lib-es/__tests__/unit/api}/gasTracker/index.unit.test.d.ts +0 -0
  568. /package/lib-es/__tests__/{gasTracker → unit/api/gasTracker}/ledger.unit.test.d.ts +0 -0
  569. /package/lib-es/__tests__/{rpc.unit.test.d.ts → unit/api/rpc/rpc.unit.test.d.ts} +0 -0
  570. /package/lib-es/__tests__/{broadcast.unit.test.d.ts → unit/broadcast.unit.test.d.ts} +0 -0
  571. /package/lib-es/__tests__/{buildOptimisticOperation.unit.test.d.ts → unit/buildOptimisticOperation.unit.test.d.ts} +0 -0
  572. /package/lib-es/__tests__/{createTransaction.unit.test.d.ts → unit/createTransaction.unit.test.d.ts} +0 -0
  573. /package/lib-es/__tests__/{deviceTransactionConfig.unit.test.d.ts → unit/deviceTransactionConfig.unit.test.d.ts} +0 -0
  574. /package/lib-es/__tests__/{estimateMaxSpendable.unit.test.d.ts → unit/estimateMaxSpendable.unit.test.d.ts} +0 -0
  575. /package/lib-es/__tests__/{getTransactionStatus.unit.test.d.ts → unit/getTransactionStatus.unit.test.d.ts} +0 -0
  576. /package/lib-es/__tests__/{hw-getAddress.unit.test.d.ts → unit/hw-getAddress.unit.test.d.ts} +0 -0
  577. /package/lib-es/__tests__/{logic.unit.test.d.ts → unit/logic.unit.test.d.ts} +0 -0
  578. /package/lib-es/__tests__/{preload.unit.test.d.ts → unit/preload.unit.test.d.ts} +0 -0
  579. /package/lib-es/__tests__/{prepareTransaction.unit.test.d.ts → unit/prepareTransaction.unit.test.d.ts} +0 -0
  580. /package/lib-es/__tests__/{signOperation.unit.test.d.ts → unit/signOperation.unit.test.d.ts} +0 -0
  581. /package/lib-es/__tests__/{synchronization.unit.test.d.ts → unit/synchronization.unit.test.d.ts} +0 -0
  582. /package/lib-es/__tests__/{transaction.unit.test.d.ts → unit/transaction.unit.test.d.ts} +0 -0
@@ -7,15 +7,22 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
7
7
  step((generator = generator.apply(thisArg, _arguments || [])).next());
8
8
  });
9
9
  };
10
+ import { encodeERC1155OperationId, encodeERC721OperationId, } from "@ledgerhq/coin-framework/nft/nftOperationId";
11
+ import { encodeNftId } from "@ledgerhq/coin-framework/nft/nftId";
10
12
  import { encodeOperationId } from "@ledgerhq/coin-framework/operation";
11
13
  import { broadcastTransaction } from "./api/rpc";
12
14
  /**
13
15
  * Broadcast a transaction and update the operation linked
14
16
  */
15
17
  export const broadcast = ({ account, signedOperation: { signature, operation }, }) => __awaiter(void 0, void 0, void 0, function* () {
16
- var _a;
18
+ var _a, _b;
17
19
  const txResponse = yield broadcastTransaction(account.currency, signature);
18
- return Object.assign(Object.assign({}, operation), { id: encodeOperationId(operation.accountId, txResponse.hash, operation.type), hash: txResponse.hash, blockNumber: txResponse.blockNumber, blockHeight: txResponse.blockNumber, blockHash: txResponse.blockHash, date: new Date(txResponse.timestamp ? txResponse.timestamp * 1000 : Date.now()), subOperations: ((_a = operation.subOperations) === null || _a === void 0 ? void 0 : _a.map(subOp => (Object.assign(Object.assign({}, subOp), { id: encodeOperationId(subOp.accountId, txResponse.hash, subOp.type), hash: txResponse.hash, blockNumber: txResponse.blockNumber, blockHeight: txResponse.blockNumber, blockHash: txResponse.blockHash, date: new Date(txResponse.timestamp ? txResponse.timestamp * 1000 : Date.now()) })))) || [] });
20
+ return Object.assign(Object.assign({}, operation), { id: encodeOperationId(operation.accountId, txResponse.hash, operation.type), hash: txResponse.hash, blockNumber: txResponse.blockNumber, blockHeight: txResponse.blockNumber, blockHash: txResponse.blockHash, date: new Date(txResponse.timestamp ? txResponse.timestamp * 1000 : Date.now()), subOperations: ((_a = operation.subOperations) === null || _a === void 0 ? void 0 : _a.map(subOp => (Object.assign(Object.assign({}, subOp), { id: encodeOperationId(subOp.accountId, txResponse.hash, subOp.type), hash: txResponse.hash, blockNumber: txResponse.blockNumber, blockHeight: txResponse.blockNumber, blockHash: txResponse.blockHash, date: new Date(txResponse.timestamp ? txResponse.timestamp * 1000 : Date.now()) })))) || [], nftOperations: ((_b = operation.nftOperations) === null || _b === void 0 ? void 0 : _b.map(nftOp => {
21
+ const nftId = encodeNftId(nftOp.accountId, nftOp.contract || "", nftOp.tokenId || "", account.currency.id);
22
+ return Object.assign(Object.assign({}, nftOp), { id: nftOp.standard === "ERC721"
23
+ ? encodeERC721OperationId(nftId, txResponse.hash, nftOp.type, 0)
24
+ : encodeERC1155OperationId(nftId, txResponse.hash, nftOp.type, 0), hash: txResponse.hash, blockNumber: txResponse.blockNumber, blockHeight: txResponse.blockNumber, blockHash: txResponse.blockHash, date: new Date(txResponse.timestamp ? txResponse.timestamp * 1000 : Date.now()) });
25
+ })) || [] });
19
26
  });
20
27
  export default broadcast;
21
28
  //# sourceMappingURL=broadcast.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"broadcast.js","sourceRoot":"","sources":["../src/broadcast.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,oCAAoC,CAAC;AAEvE,OAAO,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAC;AAGjD;;GAEG;AACH,MAAM,CAAC,MAAM,SAAS,GAA+C,CAAO,EAC1E,OAAO,EACP,eAAe,EAAE,EAAE,SAAS,EAAE,SAAS,EAAE,GAC1C,EAAE,EAAE;;IACH,MAAM,UAAU,GAAG,MAAM,oBAAoB,CAAC,OAAO,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;IAE3E,OAAO,gCACF,SAAS,KACZ,EAAE,EAAE,iBAAiB,CAAC,SAAS,CAAC,SAAS,EAAE,UAAU,CAAC,IAAI,EAAE,SAAS,CAAC,IAAI,CAAC,EAC3E,IAAI,EAAE,UAAU,CAAC,IAAI,EACrB,WAAW,EAAE,UAAU,CAAC,WAAW,EACnC,WAAW,EAAE,UAAU,CAAC,WAAW,EACnC,SAAS,EAAE,UAAU,CAAC,SAAS,EAC/B,IAAI,EAAE,IAAI,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU,CAAC,SAAS,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,EAC/E,aAAa,EACX,CAAA,MAAA,SAAS,CAAC,aAAa,0CAAE,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,iCACjC,KAAK,KACR,EAAE,EAAE,iBAAiB,CAAC,KAAK,CAAC,SAAS,EAAE,UAAU,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,EACnE,IAAI,EAAE,UAAU,CAAC,IAAI,EACrB,WAAW,EAAE,UAAU,CAAC,WAAW,EACnC,WAAW,EAAE,UAAU,CAAC,WAAW,EACnC,SAAS,EAAE,UAAU,CAAC,SAAS,EAC/B,IAAI,EAAE,IAAI,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU,CAAC,SAAS,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,IAC/E,CAAC,KAAI,EAAE,GACC,CAAC;AACjB,CAAC,CAAA,CAAC;AAEF,eAAe,SAAS,CAAC"}
1
+ {"version":3,"file":"broadcast.js","sourceRoot":"","sources":["../src/broadcast.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EACL,wBAAwB,EACxB,uBAAuB,GACxB,MAAM,6CAA6C,CAAC;AACrD,OAAO,EAAE,WAAW,EAAE,MAAM,oCAAoC,CAAC;AAEjE,OAAO,EAAE,iBAAiB,EAAE,MAAM,oCAAoC,CAAC;AAEvE,OAAO,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAC;AAEjD;;GAEG;AACH,MAAM,CAAC,MAAM,SAAS,GAA+C,CAAO,EAC1E,OAAO,EACP,eAAe,EAAE,EAAE,SAAS,EAAE,SAAS,EAAE,GAC1C,EAAE,EAAE;;IACH,MAAM,UAAU,GAAG,MAAM,oBAAoB,CAAC,OAAO,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;IAE3E,OAAO,gCACF,SAAS,KACZ,EAAE,EAAE,iBAAiB,CAAC,SAAS,CAAC,SAAS,EAAE,UAAU,CAAC,IAAI,EAAE,SAAS,CAAC,IAAI,CAAC,EAC3E,IAAI,EAAE,UAAU,CAAC,IAAI,EACrB,WAAW,EAAE,UAAU,CAAC,WAAW,EACnC,WAAW,EAAE,UAAU,CAAC,WAAW,EACnC,SAAS,EAAE,UAAU,CAAC,SAAS,EAC/B,IAAI,EAAE,IAAI,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU,CAAC,SAAS,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,EAC/E,aAAa,EACX,CAAA,MAAA,SAAS,CAAC,aAAa,0CAAE,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,iCACjC,KAAK,KACR,EAAE,EAAE,iBAAiB,CAAC,KAAK,CAAC,SAAS,EAAE,UAAU,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,EACnE,IAAI,EAAE,UAAU,CAAC,IAAI,EACrB,WAAW,EAAE,UAAU,CAAC,WAAW,EACnC,WAAW,EAAE,UAAU,CAAC,WAAW,EACnC,SAAS,EAAE,UAAU,CAAC,SAAS,EAC/B,IAAI,EAAE,IAAI,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU,CAAC,SAAS,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,IAC/E,CAAC,KAAI,EAAE,EACX,aAAa,EACX,CAAA,MAAA,SAAS,CAAC,aAAa,0CAAE,GAAG,CAAC,KAAK,CAAC,EAAE;YACnC,MAAM,KAAK,GAAG,WAAW,CACvB,KAAK,CAAC,SAAS,EACf,KAAK,CAAC,QAAQ,IAAI,EAAE,EACpB,KAAK,CAAC,OAAO,IAAI,EAAE,EACnB,OAAO,CAAC,QAAQ,CAAC,EAAE,CACpB,CAAC;YAEF,uCACK,KAAK,KACR,EAAE,EACA,KAAK,CAAC,QAAQ,KAAK,QAAQ;oBACzB,CAAC,CAAC,uBAAuB,CAAC,KAAK,EAAE,UAAU,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;oBAChE,CAAC,CAAC,wBAAwB,CAAC,KAAK,EAAE,UAAU,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,EACrE,IAAI,EAAE,UAAU,CAAC,IAAI,EACrB,WAAW,EAAE,UAAU,CAAC,WAAW,EACnC,WAAW,EAAE,UAAU,CAAC,WAAW,EACnC,SAAS,EAAE,UAAU,CAAC,SAAS,EAC/B,IAAI,EAAE,IAAI,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU,CAAC,SAAS,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,IAC/E;QACJ,CAAC,CAAC,KAAI,EAAE,GACE,CAAC;AACjB,CAAC,CAAA,CAAC;AAEF,eAAe,SAAS,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import { Account, Operation, OperationType, TokenAccount } from "@ledgerhq/types-live";
2
- import { Transaction as EvmTransaction } from "./types";
2
+ import { EvmNftTransaction, Transaction as EvmTransaction } from "./types";
3
3
  /**
4
4
  * Build an optimistic operation for the coin of the integration (e.g. Ether for Ethereum)
5
5
  */
@@ -8,6 +8,10 @@ export declare const buildOptimisticCoinOperation: (account: Account, transactio
8
8
  * Build an optimistic operation for an ERC20 transaction
9
9
  */
10
10
  export declare const buildOptimisticTokenOperation: (account: Account, tokenAccount: TokenAccount, transaction: EvmTransaction) => Operation;
11
+ /**
12
+ * Build an optimistic operation for an ERC721 or ERC1155 transaction
13
+ */
14
+ export declare const buildOptimisticNftOperation: (account: Account, transaction: EvmNftTransaction & EvmTransaction) => Operation;
11
15
  /**
12
16
  * Create a temporary operation to use until it's confirmed by the blockchain
13
17
  */
@@ -1 +1 @@
1
- {"version":3,"file":"buildOptimisticOperation.d.ts","sourceRoot":"","sources":["../src/buildOptimisticOperation.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAIvF,OAAO,EAAE,WAAW,IAAI,cAAc,EAAE,MAAM,SAAS,CAAC;AAExD;;GAEG;AACH,eAAO,MAAM,4BAA4B,YAC9B,OAAO,eACH,cAAc,oBACT,aAAa,KAC9B,SAuBF,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,6BAA6B,YAC/B,OAAO,gBACF,YAAY,eACb,cAAc,KAC1B,SAsCF,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,wBAAwB,YAC1B,OAAO,eACH,cAAc,KAC1B,SAOF,CAAC;AAEF,eAAe,wBAAwB,CAAC"}
1
+ {"version":3,"file":"buildOptimisticOperation.d.ts","sourceRoot":"","sources":["../src/buildOptimisticOperation.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAQvF,OAAO,EAAE,iBAAiB,EAAE,WAAW,IAAI,cAAc,EAAE,MAAM,SAAS,CAAC;AAG3E;;GAEG;AACH,eAAO,MAAM,4BAA4B,YAC9B,OAAO,eACH,cAAc,oBACT,aAAa,KAC9B,SAuBF,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,6BAA6B,YAC/B,OAAO,gBACF,YAAY,eACb,cAAc,KAC1B,SAsCF,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,2BAA2B,YAC7B,OAAO,eACH,iBAAiB,GAAG,cAAc,KAC9C,SAgDF,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,wBAAwB,YAC1B,OAAO,eACH,cAAc,KAC1B,SAWF,CAAC;AAEF,eAAe,wBAAwB,CAAC"}
@@ -1,8 +1,10 @@
1
- import { findSubAccountById } from "@ledgerhq/coin-framework/account/index";
2
- import { encodeOperationId } from "@ledgerhq/coin-framework/operation";
3
- import BigNumber from "bignumber.js";
4
1
  import eip55 from "eip55";
5
- import { getEstimatedFees } from "./logic";
2
+ import BigNumber from "bignumber.js";
3
+ import { encodeERC1155OperationId, encodeERC721OperationId, } from "@ledgerhq/coin-framework/nft/nftOperationId";
4
+ import { encodeNftId } from "@ledgerhq/coin-framework/nft/nftId";
5
+ import { encodeOperationId } from "@ledgerhq/coin-framework/operation";
6
+ import { findSubAccountById } from "@ledgerhq/coin-framework/account/index";
7
+ import { getEstimatedFees, isNftTransaction } from "./logic";
6
8
  /**
7
9
  * Build an optimistic operation for the coin of the integration (e.g. Ether for Ethereum)
8
10
  */
@@ -57,10 +59,49 @@ export const buildOptimisticTokenOperation = (account, tokenAccount, transaction
57
59
  ] });
58
60
  return operation;
59
61
  };
62
+ /**
63
+ * Build an optimistic operation for an ERC721 or ERC1155 transaction
64
+ */
65
+ export const buildOptimisticNftOperation = (account, transaction) => {
66
+ const type = "NFT_OUT";
67
+ const estimatedFees = getEstimatedFees(transaction);
68
+ const { nft } = transaction;
69
+ const value = nft.quantity;
70
+ const coinOperation = buildOptimisticCoinOperation(account, Object.assign(Object.assign({}, transaction), { recipient: nft.contract, amount: new BigNumber(0) }), "FEES");
71
+ const nftId = encodeNftId(account.id, nft.contract, nft.tokenId, account.currency.id);
72
+ const nftOpId = transaction.mode === "erc721"
73
+ ? encodeERC721OperationId(nftId, "", type, 0)
74
+ : encodeERC1155OperationId(nftId, "", type, 0);
75
+ // keys marked with a <-- will be updated by the broadcast method
76
+ const operation = Object.assign(Object.assign({}, coinOperation), { nftOperations: [
77
+ {
78
+ id: nftOpId,
79
+ hash: "",
80
+ type,
81
+ value,
82
+ fee: estimatedFees,
83
+ blockHash: null,
84
+ blockHeight: null,
85
+ senders: [eip55.encode(account.freshAddress)],
86
+ recipients: [eip55.encode(transaction.recipient)],
87
+ accountId: account.id,
88
+ transactionSequenceNumber: transaction.nonce,
89
+ date: new Date(),
90
+ extra: {},
91
+ contract: nft.contract,
92
+ standard: transaction.mode.toUpperCase(),
93
+ tokenId: nft.tokenId,
94
+ },
95
+ ] });
96
+ return operation;
97
+ };
60
98
  /**
61
99
  * Create a temporary operation to use until it's confirmed by the blockchain
62
100
  */
63
101
  export const buildOptimisticOperation = (account, transaction) => {
102
+ if (isNftTransaction(transaction)) {
103
+ return buildOptimisticNftOperation(account, transaction);
104
+ }
64
105
  const subAccount = findSubAccountById(account, (transaction === null || transaction === void 0 ? void 0 : transaction.subAccountId) || "");
65
106
  const isTokenTransaction = (subAccount === null || subAccount === void 0 ? void 0 : subAccount.type) === "TokenAccount";
66
107
  return isTokenTransaction
@@ -1 +1 @@
1
- {"version":3,"file":"buildOptimisticOperation.js","sourceRoot":"","sources":["../src/buildOptimisticOperation.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"buildOptimisticOperation.js","sourceRoot":"","sources":["../src/buildOptimisticOperation.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"cli-transaction.d.ts","sourceRoot":"","sources":["../src/cli-transaction.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,OAAO,UAAU,YAAY,OAEnC"}
1
+ {"version":3,"file":"cli-transaction.d.ts","sourceRoot":"","sources":["../src/cli-transaction.ts"],"names":[],"mappings":"AAIA,MAAM,CAAC,OAAO,UAAU,YAAY,OAEnC"}
@@ -1,3 +1,4 @@
1
+ /* istanbul ignore file: untested because empty */
1
2
  // Needed by sync-families-dispatch script
2
3
  // libs/ledger-live-common/scripts/sync-families-dispatch.mjs
3
4
  export default function makeCliTools() {
@@ -1 +1 @@
1
- {"version":3,"file":"cli-transaction.js","sourceRoot":"","sources":["../src/cli-transaction.ts"],"names":[],"mappings":"AAAA,0CAA0C;AAC1C,6DAA6D;AAC7D,MAAM,CAAC,OAAO,UAAU,YAAY;IAClC,OAAO,EAAE,CAAC;AACZ,CAAC"}
1
+ {"version":3,"file":"cli-transaction.js","sourceRoot":"","sources":["../src/cli-transaction.ts"],"names":[],"mappings":"AAAA,kDAAkD;AAElD,0CAA0C;AAC1C,6DAA6D;AAC7D,MAAM,CAAC,OAAO,UAAU,YAAY;IAClC,OAAO,EAAE,CAAC;AACZ,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"ethereum1.d.ts","sourceRoot":"","sources":["../../src/datasets/ethereum1.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAElD,eAAO,MAAM,SAAS,EAAE,UAiBvB,CAAC"}
1
+ {"version":3,"file":"ethereum1.d.ts","sourceRoot":"","sources":["../../src/datasets/ethereum1.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAElD,eAAO,MAAM,SAAS,EAAE,UAiBvB,CAAC"}
@@ -1,5 +1,6 @@
1
+ /* istanbul ignore file: pure exports, test unecessary */
1
2
  export const ethereum1 = {
2
- id: "js:1:ethereum:0x0E3F0bb9516F01f2C34c25E0957518b8aC9414c5:",
3
+ id: "js:1:ethereum_as_evm_test_only:0x0E3F0bb9516F01f2C34c25E0957518b8aC9414c5:",
3
4
  seedIdentifier: "0x0E3F0bb9516F01f2C34c25E0957518b8aC9414c5",
4
5
  name: "Ethereum legacy xpub6Bem...JyAdpYZy",
5
6
  derivationMode: "",
@@ -9,7 +10,7 @@ export const ethereum1 = {
9
10
  freshAddresses: [],
10
11
  pendingOperations: [],
11
12
  operations: [],
12
- currencyId: "ethereum",
13
+ currencyId: "ethereum_as_evm_test_only",
13
14
  unitMagnitude: 18,
14
15
  balance: "",
15
16
  blockHeight: 0,
@@ -1 +1 @@
1
- {"version":3,"file":"ethereum1.js","sourceRoot":"","sources":["../../src/datasets/ethereum1.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,SAAS,GAAe;IACnC,EAAE,EAAE,2DAA2D;IAC/D,cAAc,EAAE,4CAA4C;IAC5D,IAAI,EAAE,qCAAqC;IAC3C,cAAc,EAAE,EAAE;IAClB,KAAK,EAAE,CAAC;IACR,YAAY,EAAE,4CAA4C;IAC1D,gBAAgB,EAAE,gBAAgB;IAClC,cAAc,EAAE,EAAE;IAClB,iBAAiB,EAAE,EAAE;IACrB,UAAU,EAAE,EAAE;IACd,UAAU,EAAE,UAAU;IACtB,aAAa,EAAE,EAAE;IACjB,OAAO,EAAE,EAAE;IACX,WAAW,EAAE,CAAC;IACd,YAAY,EAAE,EAAE;IAChB,IAAI,EAAE,EAAE;CACT,CAAC"}
1
+ {"version":3,"file":"ethereum1.js","sourceRoot":"","sources":["../../src/datasets/ethereum1.ts"],"names":[],"mappings":"AAAA,yDAAyD;AAIzD,MAAM,CAAC,MAAM,SAAS,GAAe;IACnC,EAAE,EAAE,4EAA4E;IAChF,cAAc,EAAE,4CAA4C;IAC5D,IAAI,EAAE,qCAAqC;IAC3C,cAAc,EAAE,EAAE;IAClB,KAAK,EAAE,CAAC;IACR,YAAY,EAAE,4CAA4C;IAC1D,gBAAgB,EAAE,gBAAgB;IAClC,cAAc,EAAE,EAAE;IAClB,iBAAiB,EAAE,EAAE;IACrB,UAAU,EAAE,EAAE;IACd,UAAU,EAAE,2BAA2B;IACvC,aAAa,EAAE,EAAE;IACjB,OAAO,EAAE,EAAE;IACX,WAAW,EAAE,CAAC;IACd,YAAY,EAAE,EAAE;IAChB,IAAI,EAAE,EAAE;CACT,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"deviceTransactionConfig.d.ts","sourceRoot":"","sources":["../src/deviceTransactionConfig.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAE5D,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,6CAA6C,CAAC;AAChG,OAAO,EAAE,WAAW,IAAI,cAAc,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAE3E,KAAK,sBAAsB,GAAG,4BAA4B,CAAC;AAE3D;;GAEG;AACH,iBAAS,0BAA0B,CAAC,EAClC,OAAO,EACP,aAAa,EACb,WAAW,GACZ,EAAE;IACD,OAAO,EAAE,WAAW,CAAC;IACrB,aAAa,EAAE,OAAO,GAAG,IAAI,GAAG,SAAS,CAAC;IAC1C,WAAW,EAAE,cAAc,CAAC;IAC5B,MAAM,EAAE,iBAAiB,CAAC;CAC3B,GAAG,KAAK,CAAC,sBAAsB,CAAC,CAwChC;AAED,eAAe,0BAA0B,CAAC"}
1
+ {"version":3,"file":"deviceTransactionConfig.d.ts","sourceRoot":"","sources":["../src/deviceTransactionConfig.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAE5D,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,6CAA6C,CAAC;AAChG,OAAO,EAAE,WAAW,IAAI,cAAc,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAE3E,KAAK,sBAAsB,GAAG,4BAA4B,CAAC;AAE3D;;GAEG;AACH,iBAAS,0BAA0B,CAAC,EAClC,OAAO,EACP,aAAa,EACb,WAAW,GACZ,EAAE;IACD,OAAO,EAAE,WAAW,CAAC;IACrB,aAAa,EAAE,OAAO,GAAG,IAAI,GAAG,SAAS,CAAC;IAC1C,WAAW,EAAE,cAAc,CAAC;IAC5B,MAAM,EAAE,iBAAiB,CAAC;CAC3B,GAAG,KAAK,CAAC,sBAAsB,CAAC,CAyGhC;AAED,eAAe,0BAA0B,CAAC"}
@@ -31,6 +31,56 @@ function getDeviceTransactionConfig({ account, parentAccount, transaction, }) {
31
31
  value: mainAccount.currency.name,
32
32
  });
33
33
  break;
34
+ case "erc721":
35
+ fields.push({
36
+ type: "text",
37
+ label: "Type",
38
+ value: `NFT Transfer`,
39
+ }, {
40
+ type: "text",
41
+ label: "To",
42
+ value: transaction.recipient,
43
+ }, {
44
+ type: "text",
45
+ label: "Collection Name",
46
+ value: transaction.nft.collectionName,
47
+ }, {
48
+ type: "address",
49
+ label: "NFT Address",
50
+ address: transaction.nft.contract,
51
+ }, {
52
+ type: "text",
53
+ label: "NFT ID",
54
+ value: transaction.nft.tokenId,
55
+ });
56
+ break;
57
+ case "erc1155":
58
+ fields.push({
59
+ type: "text",
60
+ label: "Type",
61
+ value: `NFT Transfer`,
62
+ }, {
63
+ type: "text",
64
+ label: "To",
65
+ value: transaction.recipient,
66
+ }, {
67
+ type: "text",
68
+ label: "Collection Name",
69
+ value: transaction.nft.collectionName,
70
+ }, {
71
+ type: "text",
72
+ label: "Quantity",
73
+ value: transaction.nft.quantity.toFixed(),
74
+ }, {
75
+ type: "address",
76
+ label: "NFT Address",
77
+ address: transaction.nft.contract,
78
+ }, {
79
+ type: "text",
80
+ label: "NFT ID",
81
+ value: transaction.nft.tokenId,
82
+ });
83
+ break;
34
84
  }
35
85
  fields.push({
36
86
  type: "fees",
@@ -1 +1 @@
1
- {"version":3,"file":"deviceTransactionConfig.js","sourceRoot":"","sources":["../src/deviceTransactionConfig.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,wCAAwC,CAAC;AACxE,OAAO,EAAE,cAAc,EAAE,MAAM,sCAAsC,CAAC;AAQtE;;GAEG;AACH,SAAS,0BAA0B,CAAC,EAClC,OAAO,EACP,aAAa,EACb,WAAW,GAMZ;;IACC,MAAM,WAAW,GAAG,cAAc,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC;IAC3D,MAAM,EAAE,IAAI,EAAE,GAAG,WAAW,CAAC;IAC7B,MAAM,MAAM,GAAkC,EAAE,CAAC;IACjD,MAAM,cAAc,GAAG,cAAc,CAAC,MAAA,WAAW,CAAC,eAAe,0CAAE,MAAM,CAAC,CAAC;IAE3E,QAAQ,IAAI,EAAE;QACZ,QAAQ;QACR,KAAK,MAAM;YACT,MAAM,CAAC,IAAI,CACT;gBACE,IAAI,EAAE,QAAQ;gBACd,KAAK,EAAE,QAAQ;aAChB,EACD,WAAW,CAAC,eAAe,IAAI,cAAc;gBAC3C,CAAC,CAAC;oBACE,IAAI,EAAE,MAAM;oBACZ,KAAK,EAAE,QAAQ;oBACf,KAAK,EAAE,WAAW,CAAC,eAAe,CAAC,MAAM;iBAC1C;gBACH,CAAC,CAAC;oBACE,IAAI,EAAE,SAAS;oBACf,KAAK,EAAE,SAAS;oBAChB,OAAO,EAAE,WAAW,CAAC,SAAS;iBAC/B,EACL;gBACE,IAAI,EAAE,MAAM;gBACZ,KAAK,EAAE,SAAS;gBAChB,KAAK,EAAE,WAAW,CAAC,QAAQ,CAAC,IAAI;aACjC,CACF,CAAC;YACF,MAAM;KACT;IAED,MAAM,CAAC,IAAI,CAAC;QACV,IAAI,EAAE,MAAM;QACZ,KAAK,EAAE,UAAU;KAClB,CAAC,CAAC;IAEH,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,eAAe,0BAA0B,CAAC"}
1
+ {"version":3,"file":"deviceTransactionConfig.js","sourceRoot":"","sources":["../src/deviceTransactionConfig.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,wCAAwC,CAAC;AACxE,OAAO,EAAE,cAAc,EAAE,MAAM,sCAAsC,CAAC;AAQtE;;GAEG;AACH,SAAS,0BAA0B,CAAC,EAClC,OAAO,EACP,aAAa,EACb,WAAW,GAMZ;;IACC,MAAM,WAAW,GAAG,cAAc,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC;IAC3D,MAAM,EAAE,IAAI,EAAE,GAAG,WAAW,CAAC;IAC7B,MAAM,MAAM,GAAkC,EAAE,CAAC;IACjD,MAAM,cAAc,GAAG,cAAc,CAAC,MAAA,WAAW,CAAC,eAAe,0CAAE,MAAM,CAAC,CAAC;IAE3E,QAAQ,IAAI,EAAE;QACZ,QAAQ;QACR,KAAK,MAAM;YACT,MAAM,CAAC,IAAI,CACT;gBACE,IAAI,EAAE,QAAQ;gBACd,KAAK,EAAE,QAAQ;aAChB,EACD,WAAW,CAAC,eAAe,IAAI,cAAc;gBAC3C,CAAC,CAAC;oBACE,IAAI,EAAE,MAAM;oBACZ,KAAK,EAAE,QAAQ;oBACf,KAAK,EAAE,WAAW,CAAC,eAAe,CAAC,MAAM;iBAC1C;gBACH,CAAC,CAAC;oBACE,IAAI,EAAE,SAAS;oBACf,KAAK,EAAE,SAAS;oBAChB,OAAO,EAAE,WAAW,CAAC,SAAS;iBAC/B,EACL;gBACE,IAAI,EAAE,MAAM;gBACZ,KAAK,EAAE,SAAS;gBAChB,KAAK,EAAE,WAAW,CAAC,QAAQ,CAAC,IAAI;aACjC,CACF,CAAC;YACF,MAAM;QAER,KAAK,QAAQ;YACX,MAAM,CAAC,IAAI,CACT;gBACE,IAAI,EAAE,MAAM;gBACZ,KAAK,EAAE,MAAM;gBACb,KAAK,EAAE,cAAc;aACtB,EACD;gBACE,IAAI,EAAE,MAAM;gBACZ,KAAK,EAAE,IAAI;gBACX,KAAK,EAAE,WAAW,CAAC,SAAS;aAC7B,EACD;gBACE,IAAI,EAAE,MAAM;gBACZ,KAAK,EAAE,iBAAiB;gBACxB,KAAK,EAAE,WAAW,CAAC,GAAG,CAAC,cAAc;aACtC,EACD;gBACE,IAAI,EAAE,SAAS;gBACf,KAAK,EAAE,aAAa;gBACpB,OAAO,EAAE,WAAW,CAAC,GAAG,CAAC,QAAQ;aAClC,EACD;gBACE,IAAI,EAAE,MAAM;gBACZ,KAAK,EAAE,QAAQ;gBACf,KAAK,EAAE,WAAW,CAAC,GAAG,CAAC,OAAO;aAC/B,CACF,CAAC;YACF,MAAM;QAER,KAAK,SAAS;YACZ,MAAM,CAAC,IAAI,CACT;gBACE,IAAI,EAAE,MAAM;gBACZ,KAAK,EAAE,MAAM;gBACb,KAAK,EAAE,cAAc;aACtB,EACD;gBACE,IAAI,EAAE,MAAM;gBACZ,KAAK,EAAE,IAAI;gBACX,KAAK,EAAE,WAAW,CAAC,SAAS;aAC7B,EACD;gBACE,IAAI,EAAE,MAAM;gBACZ,KAAK,EAAE,iBAAiB;gBACxB,KAAK,EAAE,WAAW,CAAC,GAAG,CAAC,cAAc;aACtC,EACD;gBACE,IAAI,EAAE,MAAM;gBACZ,KAAK,EAAE,UAAU;gBACjB,KAAK,EAAE,WAAW,CAAC,GAAG,CAAC,QAAQ,CAAC,OAAO,EAAE;aAC1C,EACD;gBACE,IAAI,EAAE,SAAS;gBACf,KAAK,EAAE,aAAa;gBACpB,OAAO,EAAE,WAAW,CAAC,GAAG,CAAC,QAAQ;aAClC,EACD;gBACE,IAAI,EAAE,MAAM;gBACZ,KAAK,EAAE,QAAQ;gBACf,KAAK,EAAE,WAAW,CAAC,GAAG,CAAC,OAAO;aAC/B,CACF,CAAC;YACF,MAAM;KACT;IAED,MAAM,CAAC,IAAI,CAAC;QACV,IAAI,EAAE,MAAM;QACZ,KAAK,EAAE,UAAU;KAClB,CAAC,CAAC;IAEH,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,eAAe,0BAA0B,CAAC"}
@@ -13,4 +13,13 @@ export declare const NoGasTrackerFound: import("@ledgerhq/errors/lib/helpers").L
13
13
  export declare const GasTrackerDoesNotSupportEIP1559: import("@ledgerhq/errors/lib/helpers").LedgerErrorConstructor<{
14
14
  [key: string]: unknown;
15
15
  }>;
16
+ export declare const NotOwnedNft: import("@ledgerhq/errors/lib/helpers").LedgerErrorConstructor<{
17
+ [key: string]: unknown;
18
+ }>;
19
+ export declare const NotEnoughNftOwned: import("@ledgerhq/errors/lib/helpers").LedgerErrorConstructor<{
20
+ [key: string]: unknown;
21
+ }>;
22
+ export declare const QuantityNeedsToBePositive: import("@ledgerhq/errors/lib/helpers").LedgerErrorConstructor<{
23
+ [key: string]: unknown;
24
+ }>;
16
25
  //# sourceMappingURL=errors.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,iBAAiB;;EAA8C,CAAC;AAC7E,eAAO,MAAM,kBAAkB;;EAA+C,CAAC;AAC/E,eAAO,MAAM,iBAAiB;;EAA8C,CAAC;AAG7E,eAAO,MAAM,iBAAiB;;EAA8C,CAAC;AAC7E,eAAO,MAAM,+BAA+B;;EAE3C,CAAC"}
1
+ {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,iBAAiB;;EAA8C,CAAC;AAG7E,eAAO,MAAM,kBAAkB;;EAA+C,CAAC;AAC/E,eAAO,MAAM,iBAAiB;;EAA8C,CAAC;AAG7E,eAAO,MAAM,iBAAiB;;EAA8C,CAAC;AAC7E,eAAO,MAAM,+BAA+B;;EAE3C,CAAC;AAGF,eAAO,MAAM,WAAW;;EAAwC,CAAC;AACjE,eAAO,MAAM,iBAAiB;;EAA8C,CAAC;AAC7E,eAAO,MAAM,yBAAyB;;EAAsD,CAAC"}
package/lib-es/errors.js CHANGED
@@ -1,8 +1,14 @@
1
1
  import { createCustomErrorClass } from "@ledgerhq/errors";
2
+ // Etherscan API
2
3
  export const EtherscanAPIError = createCustomErrorClass("EtherscanAPIError");
4
+ // Gas
3
5
  export const GasEstimationError = createCustomErrorClass("GasEstimationError");
4
6
  export const InsufficientFunds = createCustomErrorClass("InsufficientFunds");
5
7
  // GasTracker errors
6
8
  export const NoGasTrackerFound = createCustomErrorClass("NoGasTrackerFound");
7
9
  export const GasTrackerDoesNotSupportEIP1559 = createCustomErrorClass("GasTrackerDoesNotSupportEIP1559");
10
+ // Nfts
11
+ export const NotOwnedNft = createCustomErrorClass("NotOwnedNft");
12
+ export const NotEnoughNftOwned = createCustomErrorClass("NotEnoughNftOwned");
13
+ export const QuantityNeedsToBePositive = createCustomErrorClass("QuantityNeedsToBePositive");
8
14
  //# sourceMappingURL=errors.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"errors.js","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,kBAAkB,CAAC;AAE1D,MAAM,CAAC,MAAM,iBAAiB,GAAG,sBAAsB,CAAC,mBAAmB,CAAC,CAAC;AAC7E,MAAM,CAAC,MAAM,kBAAkB,GAAG,sBAAsB,CAAC,oBAAoB,CAAC,CAAC;AAC/E,MAAM,CAAC,MAAM,iBAAiB,GAAG,sBAAsB,CAAC,mBAAmB,CAAC,CAAC;AAE7E,oBAAoB;AACpB,MAAM,CAAC,MAAM,iBAAiB,GAAG,sBAAsB,CAAC,mBAAmB,CAAC,CAAC;AAC7E,MAAM,CAAC,MAAM,+BAA+B,GAAG,sBAAsB,CACnE,iCAAiC,CAClC,CAAC"}
1
+ {"version":3,"file":"errors.js","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,kBAAkB,CAAC;AAE1D,gBAAgB;AAChB,MAAM,CAAC,MAAM,iBAAiB,GAAG,sBAAsB,CAAC,mBAAmB,CAAC,CAAC;AAE7E,MAAM;AACN,MAAM,CAAC,MAAM,kBAAkB,GAAG,sBAAsB,CAAC,oBAAoB,CAAC,CAAC;AAC/E,MAAM,CAAC,MAAM,iBAAiB,GAAG,sBAAsB,CAAC,mBAAmB,CAAC,CAAC;AAE7E,oBAAoB;AACpB,MAAM,CAAC,MAAM,iBAAiB,GAAG,sBAAsB,CAAC,mBAAmB,CAAC,CAAC;AAC7E,MAAM,CAAC,MAAM,+BAA+B,GAAG,sBAAsB,CACnE,iCAAiC,CAClC,CAAC;AAEF,OAAO;AACP,MAAM,CAAC,MAAM,WAAW,GAAG,sBAAsB,CAAC,aAAa,CAAC,CAAC;AACjE,MAAM,CAAC,MAAM,iBAAiB,GAAG,sBAAsB,CAAC,mBAAmB,CAAC,CAAC;AAC7E,MAAM,CAAC,MAAM,yBAAyB,GAAG,sBAAsB,CAAC,2BAA2B,CAAC,CAAC"}
@@ -15,6 +15,7 @@ export declare const validateAmount: (account: Account | SubAccount, transaction
15
15
  * Validate gas properties of a transaction, depending on its type and the account emitter
16
16
  */
17
17
  export declare const validateGas: (account: Account, tx: EvmTransaction, gasLimit: BigNumber, estimatedFees: BigNumber) => Array<ValidationIssues>;
18
+ export declare const validateNft: (account: Account, tx: EvmTransaction) => Array<ValidationIssues>;
18
19
  /**
19
20
  * Validate a transaction and get all possibles errors and warnings about it
20
21
  */
@@ -1 +1 @@
1
- {"version":3,"file":"getTransactionStatus.d.ts","sourceRoot":"","sources":["../src/getTransactionStatus.ts"],"names":[],"mappings":"AAYA,OAAO,SAAS,MAAM,cAAc,CAAC;AACrC,OAAO,EAAE,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAG1E,OAAO,EAGL,WAAW,IAAI,cAAc,EAC9B,MAAM,SAAS,CAAC;AAEjB,KAAK,0BAA0B,GAC3B,WAAW,GACX,UAAU,GACV,UAAU,GACV,QAAQ,GACR,gBAAgB,CAAC;AACrB,KAAK,gBAAgB,GAAG,OAAO,CAAC,MAAM,CAAC,0BAA0B,EAAE,KAAK,CAAC,CAAC,CAAC;AAK3E;;GAEG;AACH,eAAO,MAAM,iBAAiB,YACnB,OAAO,MACZ,cAAc,KACjB,MAAM,gBAAgB,CA8BxB,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,cAAc,YAChB,OAAO,GAAG,UAAU,eAChB,cAAc,cACf,SAAS,KACpB,MAAM,gBAAgB,CAmBxB,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,WAAW,YACb,OAAO,MACZ,cAAc,YACR,SAAS,iBACJ,SAAS,KACvB,MAAM,gBAAgB,CAwBxB,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,oBAAoB,EAAE,aAAa,CAAC,cAAc,CAAC,CAAC,sBAAsB,CAoCtF,CAAC;AAEF,eAAe,oBAAoB,CAAC"}
1
+ {"version":3,"file":"getTransactionStatus.d.ts","sourceRoot":"","sources":["../src/getTransactionStatus.ts"],"names":[],"mappings":"AAYA,OAAO,SAAS,MAAM,cAAc,CAAC;AACrC,OAAO,EAAE,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAG1E,OAAO,EAGL,WAAW,IAAI,cAAc,EAC9B,MAAM,SAAS,CAAC;AAGjB,KAAK,0BAA0B,GAC3B,WAAW,GACX,UAAU,GACV,UAAU,GACV,QAAQ,GACR,gBAAgB,CAAC;AACrB,KAAK,gBAAgB,GAAG,OAAO,CAAC,MAAM,CAAC,0BAA0B,EAAE,KAAK,CAAC,CAAC,CAAC;AAK3E;;GAEG;AACH,eAAO,MAAM,iBAAiB,YACnB,OAAO,MACZ,cAAc,KACjB,MAAM,gBAAgB,CA8BxB,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,cAAc,YAChB,OAAO,GAAG,UAAU,eAChB,cAAc,cACf,SAAS,KACpB,MAAM,gBAAgB,CAmBxB,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,WAAW,YACb,OAAO,MACZ,cAAc,YACR,SAAS,iBACJ,SAAS,KACvB,MAAM,gBAAgB,CAwBxB,CAAC;AAEF,eAAO,MAAM,WAAW,YAAa,OAAO,MAAM,cAAc,KAAG,MAAM,gBAAgB,CAoBxF,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,oBAAoB,EAAE,aAAa,CAAC,cAAc,CAAC,CAAC,sBAAsB,CAuCtF,CAAC;AAEF,eAAe,oBAAoB,CAAC"}
@@ -11,6 +11,7 @@ import { NotEnoughGas, FeeNotLoaded, InvalidAddress, ETHAddressNonEIP, Recipient
11
11
  import { ethers } from "ethers";
12
12
  import { findSubAccountById } from "@ledgerhq/coin-framework/account/index";
13
13
  import { eip1559TransactionHasFees, getEstimatedFees, legacyTransactionHasFees } from "./logic";
14
+ import { NotEnoughNftOwned, NotOwnedNft, QuantityNeedsToBePositive } from "./errors";
14
15
  // This regex will not work with Starknet since addresses are 65 caracters long after the 0x
15
16
  const ethAddressRegEx = /^(0x)?[0-9a-fA-F]{40}$/;
16
17
  /**
@@ -95,6 +96,25 @@ export const validateGas = (account, tx, gasLimit, estimatedFees) => {
95
96
  }
96
97
  return [errors, warnings];
97
98
  };
99
+ export const validateNft = (account, tx) => {
100
+ var _a;
101
+ if (!tx.nft)
102
+ return [{}, {}];
103
+ const errors = {};
104
+ const warnings = {};
105
+ const quantityIsPositive = tx.nft.quantity.gt(0);
106
+ const nftFromAccount = (_a = account.nfts) === null || _a === void 0 ? void 0 : _a.find(nft => nft.tokenId === tx.nft.tokenId && nft.contract === tx.nft.contract);
107
+ if (!nftFromAccount) {
108
+ errors.amount = new NotOwnedNft();
109
+ }
110
+ else if (!quantityIsPositive) {
111
+ errors.amount = new QuantityNeedsToBePositive();
112
+ }
113
+ else if (nftFromAccount.amount.lt(tx.nft.quantity)) {
114
+ errors.amount = new NotEnoughNftOwned();
115
+ }
116
+ return [errors, warnings];
117
+ };
98
118
  /**
99
119
  * Validate a transaction and get all possibles errors and warnings about it
100
120
  */
@@ -111,8 +131,9 @@ export const getTransactionStatus = (account, tx) => __awaiter(void 0, void 0, v
111
131
  const [amountErr, amountWarn] = validateAmount(subAccount || account, tx, totalSpent);
112
132
  // Gas related errors and warnings
113
133
  const [gasErr, gasWarn] = validateGas(account, tx, gasLimit, totalFees);
114
- const errors = Object.assign(Object.assign(Object.assign({}, recipientErr), gasErr), amountErr);
115
- const warnings = Object.assign(Object.assign(Object.assign({}, recipientWarn), gasWarn), amountWarn);
134
+ const [nftErr, nftWarn] = validateNft(account, tx);
135
+ const errors = Object.assign(Object.assign(Object.assign(Object.assign({}, recipientErr), gasErr), amountErr), nftErr);
136
+ const warnings = Object.assign(Object.assign(Object.assign(Object.assign({}, recipientWarn), gasWarn), amountWarn), nftWarn);
116
137
  return {
117
138
  errors,
118
139
  warnings,
@@ -1 +1 @@
1
- {"version":3,"file":"getTransactionStatus.js","sourceRoot":"","sources":["../src/getTransactionStatus.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"getTransactionStatus.js","sourceRoot":"","sources":["../src/getTransactionStatus.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,15 @@
1
+ import { SignerContext } from "@ledgerhq/coin-framework/signer";
2
+ import { Account, AnyMessage, DeviceId, TypedEvmMessage } from "@ledgerhq/types-live";
3
+ import { EvmSignature, EvmSigner } from "./signer";
4
+ export declare const prepareMessageToSign: ({ message }: {
5
+ message: string;
6
+ }) => TypedEvmMessage;
7
+ export declare const signMessage: (signerContext: SignerContext<EvmSigner, EvmSignature>) => (deviceId: DeviceId, account: Account, messageOpts: AnyMessage) => Promise<{
8
+ rsv: {
9
+ r: string;
10
+ s: string;
11
+ v: string | number;
12
+ };
13
+ signature: string;
14
+ }>;
15
+ //# sourceMappingURL=hw-signMessage.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hw-signMessage.d.ts","sourceRoot":"","sources":["../src/hw-signMessage.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AAEhE,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACtF,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAEnD,eAAO,MAAM,oBAAoB;aAA4B,MAAM;MAAK,eA8BvE,CAAC;AAEF,eAAO,MAAM,WAAW,kBACN,cAAc,SAAS,EAAE,YAAY,CAAC,gBAE1C,QAAQ,WACT,OAAO,eACH,UAAU,KACtB,QAAQ;IACT,GAAG,EAAE;QAAE,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,CAAC;IAClD,SAAS,EAAE,MAAM,CAAC;CACnB,CA4CA,CAAC"}
@@ -0,0 +1,81 @@
1
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
3
+ return new (P || (P = Promise))(function (resolve, reject) {
4
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
5
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
6
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
7
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
8
+ });
9
+ };
10
+ var __rest = (this && this.__rest) || function (s, e) {
11
+ var t = {};
12
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
13
+ t[p] = s[p];
14
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
15
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
16
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
17
+ t[p[i]] = s[p[i]];
18
+ }
19
+ return t;
20
+ };
21
+ import { ethers } from "ethers";
22
+ import { isEIP712Message } from "@ledgerhq/evm-tools/message/EIP712/index";
23
+ export const prepareMessageToSign = ({ message }) => {
24
+ const parsedMessage = (() => {
25
+ try {
26
+ return JSON.parse(message);
27
+ }
28
+ catch (error) {
29
+ return message;
30
+ }
31
+ })();
32
+ if (isEIP712Message(parsedMessage)) {
33
+ // With the ethers lib, EIP712Domain type should be removed otherwise
34
+ // you'll end up with a "ambiguous primary types" error
35
+ const _a = parsedMessage.types, { EIP712Domain } = _a, otherTypes = __rest(_a, ["EIP712Domain"]);
36
+ return {
37
+ standard: "EIP712",
38
+ message: parsedMessage,
39
+ domainHash: ethers.utils._TypedDataEncoder.hashDomain(parsedMessage.domain),
40
+ hashStruct: ethers.utils._TypedDataEncoder.hashStruct(parsedMessage.primaryType, otherTypes, parsedMessage.message),
41
+ };
42
+ }
43
+ return {
44
+ standard: "EIP191",
45
+ message,
46
+ };
47
+ };
48
+ export const signMessage = (signerContext) => (deviceId, account, messageOpts) => __awaiter(void 0, void 0, void 0, function* () {
49
+ if (messageOpts.standard === "EIP191") {
50
+ const { r, s, v } = yield signerContext(deviceId, signer => {
51
+ return signer.signPersonalMessage(account.freshAddressPath, Buffer.from(messageOpts.message).toString("hex"));
52
+ });
53
+ const signature = ethers.utils.joinSignature({
54
+ r: `0x${r}`,
55
+ s: `0x${s}`,
56
+ v: typeof v === "string" ? parseInt(v, 16) : v,
57
+ });
58
+ return { rsv: { r, s, v }, signature };
59
+ }
60
+ if (messageOpts.standard === "EIP712") {
61
+ const { r, s, v } = yield signerContext(deviceId, (signer) => __awaiter(void 0, void 0, void 0, function* () {
62
+ try {
63
+ return yield signer.signEIP712Message(account.freshAddressPath, messageOpts.message);
64
+ }
65
+ catch (e) {
66
+ if (e instanceof Error && "statusText" in e && e.statusText === "INS_NOT_SUPPORTED") {
67
+ return yield signer.signEIP712HashedMessage(account.freshAddressPath, messageOpts.domainHash, messageOpts.hashStruct);
68
+ }
69
+ throw e;
70
+ }
71
+ }));
72
+ const signature = ethers.utils.joinSignature({
73
+ r: `0x${r}`,
74
+ s: `0x${s}`,
75
+ v: typeof v === "string" ? parseInt(v, 16) : v,
76
+ });
77
+ return { rsv: { r, s, v }, signature };
78
+ }
79
+ throw new Error("Unsupported message standard");
80
+ });
81
+ //# sourceMappingURL=hw-signMessage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hw-signMessage.js","sourceRoot":"","sources":["../src/hw-signMessage.ts"],"names":[],"mappings":"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"}
package/lib-es/logic.d.ts CHANGED
@@ -1,6 +1,7 @@
1
+ /// <reference types="node" />
1
2
  import BigNumber from "bignumber.js";
2
3
  import { CryptoCurrency } from "@ledgerhq/types-cryptoassets";
3
- import { Account, SubAccount } from "@ledgerhq/types-live";
4
+ import { Account, SubAccount, Operation } from "@ledgerhq/types-live";
4
5
  import { Transaction as EvmTransaction, EvmTransactionEIP1559, EvmTransactionLegacy } from "./types";
5
6
  /**
6
7
  * Helper to check if a legacy transaction has the right fee property
@@ -26,6 +27,67 @@ export declare const mergeSubAccounts: (initialAccount: Account | undefined, new
26
27
  /**
27
28
  * Method creating a hash that will help triggering or not a full synchronization on an account.
28
29
  * As of now, it's checking if a token has been added, removed of changed regarding important properties
30
+ * and if the NFTs are activated/supported on this chain
29
31
  */
30
32
  export declare const getSyncHash: (currency: CryptoCurrency) => string;
33
+ /**
34
+ * Helper in charge of linking operations together based on transaction hash.
35
+ * Token operations & NFT operations are the result of a coin operation
36
+ * and if this coin operation is originated by our user we want
37
+ * to link those operations together as main & children ops.
38
+ *
39
+ * A sub operation should always be linked to a coin operation,
40
+ * even if the user isn't at the origin of the sub op.
41
+ * "NONE" coin ops can be added when necessary.
42
+ *
43
+ * ⚠️ If an NFT operation was found without a coin parent op
44
+ * just like if it was not initiated by the synced account
45
+ * and we were to find that coin op during another sync,
46
+ * the NONE operation created would not be removed,
47
+ * creating a duplicate that will cause issues.
48
+ * (Incorrect NFT balance & React key dup)
49
+ */
50
+ export declare const attachOperations: (_coinOperations: Operation[], _tokenOperations: Operation[], _nftOperations: Operation[]) => Operation[];
51
+ /**
52
+ * Type guard for NFT transactions
53
+ */
54
+ export declare const isNftTransaction: (transaction: EvmTransaction) => transaction is (import("@ledgerhq/types-live").TransactionCommon & {
55
+ family: "evm";
56
+ mode: import("./types").EvmTransactionMode;
57
+ nonce: number;
58
+ gasLimit: BigNumber;
59
+ chainId: number;
60
+ data?: Buffer | null | undefined;
61
+ type?: number | undefined;
62
+ additionalFees?: BigNumber | undefined;
63
+ gasOptions?: import("./types").GasOptions | undefined;
64
+ nft?: import("./types").EvmTransactionNftParam | undefined;
65
+ } & {
66
+ mode: "erc721" | "erc1155";
67
+ nft: import("./types").EvmTransactionNftParam;
68
+ } & {
69
+ type?: 0 | 1 | undefined;
70
+ gasPrice: BigNumber;
71
+ maxPriorityFeePerGas?: undefined;
72
+ maxFeePerGas?: undefined;
73
+ }) | (import("@ledgerhq/types-live").TransactionCommon & {
74
+ family: "evm";
75
+ mode: import("./types").EvmTransactionMode;
76
+ nonce: number;
77
+ gasLimit: BigNumber;
78
+ chainId: number;
79
+ data?: Buffer | null | undefined;
80
+ type?: number | undefined;
81
+ additionalFees?: BigNumber | undefined;
82
+ gasOptions?: import("./types").GasOptions | undefined;
83
+ nft?: import("./types").EvmTransactionNftParam | undefined;
84
+ } & {
85
+ mode: "erc721" | "erc1155";
86
+ nft: import("./types").EvmTransactionNftParam;
87
+ } & {
88
+ type: 2;
89
+ gasPrice?: undefined;
90
+ maxPriorityFeePerGas: BigNumber;
91
+ maxFeePerGas: BigNumber;
92
+ });
31
93
  //# sourceMappingURL=logic.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"logic.d.ts","sourceRoot":"","sources":["../src/logic.ts"],"names":[],"mappings":"AACA,OAAO,SAAS,MAAM,cAAc,CAAC;AACrC,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAE9D,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAG3D,OAAO,EACL,WAAW,IAAI,cAAc,EAC7B,qBAAqB,EACrB,oBAAoB,EACrB,MAAM,SAAS,CAAC;AAEjB;;GAEG;AACH,eAAO,MAAM,wBAAwB,OAAQ,oBAAoB,KAAG,OACjB,CAAC;AAEpD;;GAEG;AACH,eAAO,MAAM,yBAAyB,OAAQ,qBAAqB,KAAG,OACA,CAAC;AAEvE;;GAEG;AACH,eAAO,MAAM,gBAAgB,OAAQ,cAAc,KAAG,SAKrD,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,uBAAuB,aACxB,cAAc,eACX,cAAc,KAC1B,QAAQ,SAAS,GAAG,SAAS,CAU/B,CAAC;AAcF;;GAEG;AACH,eAAO,MAAM,gBAAgB,mBACX,OAAO,GAAG,SAAS,kBACnB,QAAQ,UAAU,CAAC,EAAE,KACpC,MAAM,QAAQ,UAAU,CAAC,GAAG,UAAU,CAqDxC,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,WAAW,aAAc,cAAc,KAAG,MAOtD,CAAC"}
1
+ {"version":3,"file":"logic.d.ts","sourceRoot":"","sources":["../src/logic.ts"],"names":[],"mappings":";AACA,OAAO,SAAS,MAAM,cAAc,CAAC;AACrC,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAG9D,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAKtE,OAAO,EAEL,WAAW,IAAI,cAAc,EAC7B,qBAAqB,EACrB,oBAAoB,EACrB,MAAM,SAAS,CAAC;AAEjB;;GAEG;AACH,eAAO,MAAM,wBAAwB,OAAQ,oBAAoB,KAAG,OACjB,CAAC;AAEpD;;GAEG;AACH,eAAO,MAAM,yBAAyB,OAAQ,qBAAqB,KAAG,OACA,CAAC;AAEvE;;GAEG;AACH,eAAO,MAAM,gBAAgB,OAAQ,cAAc,KAAG,SAKrD,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,uBAAuB,aACxB,cAAc,eACX,cAAc,KAC1B,QAAQ,SAAS,GAAG,SAAS,CAU/B,CAAC;AAcF;;GAEG;AACH,eAAO,MAAM,gBAAgB,mBACX,OAAO,GAAG,SAAS,kBACnB,QAAQ,UAAU,CAAC,EAAE,KACpC,MAAM,QAAQ,UAAU,CAAC,GAAG,UAAU,CAqDxC,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,WAAW,aAAc,cAAc,KAAG,MAQtD,CAAC;AAEF;;;;;;;;;;;;;;;;GAgBG;AACH,eAAO,MAAM,gBAAgB,oBACV,SAAS,EAAE,oBACV,SAAS,EAAE,kBACb,SAAS,EAAE,KAC1B,SAAS,EA+EX,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,gBAAgB,gBACd,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAEqB,CAAC"}