@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,11 +7,11 @@ 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 { getCryptoCurrencyById, getTokenById } from "@ledgerhq/cryptoassets";
11
10
  import BigNumber from "bignumber.js";
12
- import getDeviceTransactionConfig from "../deviceTransactionConfig";
13
- import getTransactionStatus from "../getTransactionStatus";
14
- import { makeAccount, makeTokenAccount } from "../testUtils";
11
+ import { getCryptoCurrencyById, getTokenById } from "@ledgerhq/cryptoassets";
12
+ import { makeAccount, makeTokenAccount } from "../fixtures/common.fixtures";
13
+ import getDeviceTransactionConfig from "../../deviceTransactionConfig";
14
+ import getTransactionStatus from "../../getTransactionStatus";
15
15
  const currency = getCryptoCurrencyById("ethereum");
16
16
  const tokenCurrency = getTokenById("ethereum/erc20/usd__coin");
17
17
  const tokenAccount = makeTokenAccount("0xkvn", tokenCurrency);
@@ -220,6 +220,123 @@ describe("EVM Family", () => {
220
220
  { type: "fees", label: "Max fees" },
221
221
  ]);
222
222
  }));
223
+ it("should return the right fields and infos for an NFT transaction mode 'erc721'", () => __awaiter(void 0, void 0, void 0, function* () {
224
+ const nftTransaction = {
225
+ family: "evm",
226
+ mode: "erc721",
227
+ amount: new BigNumber(0),
228
+ useAllAmount: false,
229
+ recipient: "0x8E9eDe486d8208705C67095dd0b4839dEB127132",
230
+ feesStrategy: "custom",
231
+ nonce: 0,
232
+ gasLimit: new BigNumber(21000),
233
+ chainId: 1,
234
+ nft: {
235
+ contract: "0xBC4CA0EdA7647A8aB7C2061c2E118A18a936f13D",
236
+ tokenId: "1",
237
+ quantity: new BigNumber(1),
238
+ collectionName: "BAYC",
239
+ },
240
+ maxFeePerGas: new BigNumber(100),
241
+ maxPriorityFeePerGas: new BigNumber(100),
242
+ type: 2,
243
+ };
244
+ const status = yield getTransactionStatus(account, nftTransaction);
245
+ expect(getDeviceTransactionConfig({
246
+ account: tokenAccount,
247
+ parentAccount: account,
248
+ transaction: nftTransaction,
249
+ status,
250
+ })).toEqual([
251
+ {
252
+ type: "text",
253
+ label: "Type",
254
+ value: `NFT Transfer`,
255
+ },
256
+ {
257
+ type: "text",
258
+ label: "To",
259
+ value: nftTransaction.recipient,
260
+ },
261
+ {
262
+ type: "text",
263
+ label: "Collection Name",
264
+ value: nftTransaction.nft.collectionName,
265
+ },
266
+ {
267
+ type: "address",
268
+ label: "NFT Address",
269
+ address: nftTransaction.nft.contract,
270
+ },
271
+ {
272
+ type: "text",
273
+ label: "NFT ID",
274
+ value: nftTransaction.nft.tokenId,
275
+ },
276
+ { type: "fees", label: "Max fees" },
277
+ ]);
278
+ }));
279
+ it("should return the right fields and infos for an NFT transaction mode 'erc1155'", () => __awaiter(void 0, void 0, void 0, function* () {
280
+ const nftTransaction = {
281
+ family: "evm",
282
+ mode: "erc1155",
283
+ amount: new BigNumber(0),
284
+ useAllAmount: false,
285
+ recipient: "0x8E9eDe486d8208705C67095dd0b4839dEB127132",
286
+ feesStrategy: "custom",
287
+ nonce: 0,
288
+ gasLimit: new BigNumber(21000),
289
+ chainId: 1,
290
+ nft: {
291
+ contract: "0xBC4CA0EdA7647A8aB7C2061c2E118A18a936f13D",
292
+ tokenId: "1",
293
+ quantity: new BigNumber(10),
294
+ collectionName: "BAYC",
295
+ },
296
+ maxFeePerGas: new BigNumber(100),
297
+ maxPriorityFeePerGas: new BigNumber(100),
298
+ type: 2,
299
+ };
300
+ const status = yield getTransactionStatus(account, nftTransaction);
301
+ expect(getDeviceTransactionConfig({
302
+ account: tokenAccount,
303
+ parentAccount: account,
304
+ transaction: nftTransaction,
305
+ status,
306
+ })).toEqual([
307
+ {
308
+ type: "text",
309
+ label: "Type",
310
+ value: `NFT Transfer`,
311
+ },
312
+ {
313
+ type: "text",
314
+ label: "To",
315
+ value: nftTransaction.recipient,
316
+ },
317
+ {
318
+ type: "text",
319
+ label: "Collection Name",
320
+ value: nftTransaction.nft.collectionName,
321
+ },
322
+ {
323
+ type: "text",
324
+ label: "Quantity",
325
+ value: nftTransaction.nft.quantity.toFixed(),
326
+ },
327
+ {
328
+ type: "address",
329
+ label: "NFT Address",
330
+ address: nftTransaction.nft.contract,
331
+ },
332
+ {
333
+ type: "text",
334
+ label: "NFT ID",
335
+ value: nftTransaction.nft.tokenId,
336
+ },
337
+ { type: "fees", label: "Max fees" },
338
+ ]);
339
+ }));
223
340
  });
224
341
  });
225
342
  });
@@ -0,0 +1 @@
1
+ {"version":3,"file":"deviceTransactionConfig.unit.test.js","sourceRoot":"","sources":["../../../src/__tests__/unit/deviceTransactionConfig.unit.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"estimateMaxSpendable.unit.test.d.ts","sourceRoot":"","sources":["../../../src/__tests__/unit/estimateMaxSpendable.unit.test.ts"],"names":[],"mappings":""}
@@ -7,11 +7,11 @@ 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 { getCryptoCurrencyById, getTokenById } from "@ledgerhq/cryptoassets";
11
10
  import BigNumber from "bignumber.js";
12
- import * as rpcAPI from "../api/rpc/rpc.common";
13
- import { estimateMaxSpendable } from "../estimateMaxSpendable";
14
- import { makeAccount, makeTokenAccount } from "../testUtils";
11
+ import { getCryptoCurrencyById, getTokenById } from "@ledgerhq/cryptoassets";
12
+ import { makeAccount, makeTokenAccount } from "../fixtures/common.fixtures";
13
+ import { estimateMaxSpendable } from "../../estimateMaxSpendable";
14
+ import * as rpcAPI from "../../api/rpc/rpc.common";
15
15
  const tokenAccount = Object.assign(Object.assign({}, makeTokenAccount("0xkvn", getTokenById("ethereum/erc20/usd__coin"))), { balance: new BigNumber(6969) });
16
16
  const account = Object.assign(Object.assign({}, makeAccount("0xkvn", getCryptoCurrencyById("ethereum"), [tokenAccount])), { balance: new BigNumber(42069000000) });
17
17
  jest.spyOn(rpcAPI, "getGasEstimation").mockImplementation(() => __awaiter(void 0, void 0, void 0, function* () { return new BigNumber(21000); }));
@@ -0,0 +1 @@
1
+ {"version":3,"file":"estimateMaxSpendable.unit.test.js","sourceRoot":"","sources":["../../../src/__tests__/unit/estimateMaxSpendable.unit.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getTransactionStatus.unit.test.d.ts","sourceRoot":"","sources":["../../../src/__tests__/unit/getTransactionStatus.unit.test.ts"],"names":[],"mappings":""}
@@ -7,12 +7,12 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
7
7
  step((generator = generator.apply(thisArg, _arguments || [])).next());
8
8
  });
9
9
  };
10
- /* eslint-disable @typescript-eslint/ban-ts-comment */
11
- import { getCryptoCurrencyById, getTokenById } from "@ledgerhq/cryptoassets";
12
10
  import { AmountRequired, ETHAddressNonEIP, FeeNotLoaded, GasLessThanEstimate, InvalidAddress, NotEnoughBalance, NotEnoughGas, PriorityFeeTooLow, RecipientRequired, } from "@ledgerhq/errors";
13
11
  import BigNumber from "bignumber.js";
14
- import getTransactionStatus from "../getTransactionStatus";
15
- import { makeAccount, makeTokenAccount } from "../testUtils";
12
+ import { getCryptoCurrencyById, getTokenById } from "@ledgerhq/cryptoassets";
13
+ import { makeAccount, makeTokenAccount } from "../fixtures/common.fixtures";
14
+ import getTransactionStatus from "../../getTransactionStatus";
15
+ import { NotEnoughNftOwned, NotOwnedNft, QuantityNeedsToBePositive } from "../../errors";
16
16
  const recipient = "0xe2ca7390e76c5A992749bB622087310d2e63ca29"; // rambo.eth
17
17
  const testData = Buffer.from("testBufferString").toString("hex");
18
18
  const tokenAccount = makeTokenAccount("0xkvn", getTokenById("ethereum/erc20/usd__coin"));
@@ -194,6 +194,76 @@ describe("EVM Family", () => {
194
194
  }));
195
195
  }));
196
196
  });
197
+ describe("Nft", () => {
198
+ describe("ERC721", () => {
199
+ const nft = {
200
+ contract: "0xNftContract",
201
+ tokenId: "1",
202
+ amount: new BigNumber(1),
203
+ currencyId: account.currency.id,
204
+ id: "doesn't matter",
205
+ standard: "ERC721",
206
+ };
207
+ it("should detect a transaction for an ERC721 nft not owned by the account and have an error", () => __awaiter(void 0, void 0, void 0, function* () {
208
+ const tx = Object.assign(Object.assign({}, eip1559Tx), { mode: "erc721", nft: {
209
+ collectionName: "",
210
+ contract: nft.contract,
211
+ tokenId: nft.tokenId,
212
+ quantity: new BigNumber(1),
213
+ } });
214
+ const res = yield getTransactionStatus(account, tx);
215
+ expect(res.errors).toEqual(expect.objectContaining({
216
+ amount: new NotOwnedNft(),
217
+ }));
218
+ }));
219
+ });
220
+ describe("ERC1155", () => {
221
+ const nft = {
222
+ contract: "0xAnotherNftContract",
223
+ tokenId: "2",
224
+ amount: new BigNumber(2),
225
+ currencyId: account.currency.id,
226
+ id: "still doesn't matter",
227
+ standard: "ERC1155",
228
+ };
229
+ it("should detect a transaction for an ERC1155 nft not owned by the account and have an error", () => __awaiter(void 0, void 0, void 0, function* () {
230
+ const tx = Object.assign(Object.assign({}, eip1559Tx), { mode: "erc1155", nft: {
231
+ collectionName: "",
232
+ contract: nft.contract,
233
+ tokenId: nft.tokenId,
234
+ quantity: new BigNumber(1),
235
+ } });
236
+ const res = yield getTransactionStatus(account, tx);
237
+ expect(res.errors).toEqual(expect.objectContaining({
238
+ amount: new NotOwnedNft(),
239
+ }));
240
+ }));
241
+ it("should detect a transaction for an ERC1155 where the quantity is 0 or below and have an error", () => __awaiter(void 0, void 0, void 0, function* () {
242
+ const tx = Object.assign(Object.assign({}, eip1559Tx), { mode: "erc1155", nft: {
243
+ collectionName: "",
244
+ contract: nft.contract,
245
+ tokenId: nft.tokenId,
246
+ quantity: new BigNumber(0),
247
+ } });
248
+ const res = yield getTransactionStatus(Object.assign(Object.assign({}, account), { nfts: [nft] }), tx);
249
+ expect(res.errors).toEqual(expect.objectContaining({
250
+ amount: new QuantityNeedsToBePositive(),
251
+ }));
252
+ }));
253
+ it("should detect a transaction for an ERC1155 nft but the account doesn't own enough of it and have an error", () => __awaiter(void 0, void 0, void 0, function* () {
254
+ const tx = Object.assign(Object.assign({}, eip1559Tx), { mode: "erc1155", nft: {
255
+ collectionName: "",
256
+ contract: nft.contract,
257
+ tokenId: nft.tokenId,
258
+ quantity: new BigNumber(3),
259
+ } });
260
+ const res = yield getTransactionStatus(Object.assign(Object.assign({}, account), { nfts: [nft] }), tx);
261
+ expect(res.errors).toEqual(expect.objectContaining({
262
+ amount: new NotEnoughNftOwned(),
263
+ }));
264
+ }));
265
+ });
266
+ });
197
267
  describe("Global return", () => {
198
268
  it("should return the expected informations", () => __awaiter(void 0, void 0, void 0, function* () {
199
269
  const res = yield getTransactionStatus(account, legacyTx);
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getTransactionStatus.unit.test.js","sourceRoot":"","sources":["../../../src/__tests__/unit/getTransactionStatus.unit.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hw-getAddress.unit.test.d.ts","sourceRoot":"","sources":["../../../src/__tests__/unit/hw-getAddress.unit.test.ts"],"names":[],"mappings":""}
@@ -8,7 +8,7 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
8
8
  });
9
9
  };
10
10
  import eip55 from "eip55";
11
- import resolver from "../hw-getAddress";
11
+ import resolver from "../../hw-getAddress";
12
12
  const address = "0xc3f95102D5c8F2c83e49Ce3Acfb905eDfb7f37dE";
13
13
  jest.mock("@ledgerhq/hw-app-eth", () => class {
14
14
  constructor() {
@@ -21,6 +21,7 @@ jest.mock("@ledgerhq/hw-app-eth", () => class {
21
21
  }
22
22
  });
23
23
  const mockSignerFactory = (_, fn) => fn({
24
+ setLoadConfig: jest.fn(),
24
25
  getAddress: () => __awaiter(void 0, void 0, void 0, function* () {
25
26
  return ({
26
27
  publicKey: "",
@@ -28,6 +29,9 @@ const mockSignerFactory = (_, fn) => fn({
28
29
  });
29
30
  }),
30
31
  signTransaction: jest.fn(),
32
+ signEIP712HashedMessage: jest.fn(),
33
+ signEIP712Message: jest.fn(),
34
+ signPersonalMessage: jest.fn(),
31
35
  });
32
36
  describe("EVM Family", () => {
33
37
  describe("hw-getAddress.ts", () => {
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hw-getAddress.unit.test.js","sourceRoot":"","sources":["../../../src/__tests__/unit/hw-getAddress.unit.test.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,QAAQ,MAAM,qBAAqB,CAAC;AAE3C,MAAM,OAAO,GAAG,4CAA4C,CAAC;AAC7D,IAAI,CAAC,IAAI,CACP,sBAAsB,EACtB,GAAG,EAAE,CACH;IAAA;QACE,eAAU,GAAG,GAAS,EAAE;YAAC,OAAA,CAAC;gBACxB,SAAS,EAAE,EAAE;gBACb,OAAO,EAAE,OAAO,CAAC,WAAW,EAAE;aAC/B,CAAC,CAAA;UAAA,CAAC;IACL,CAAC;CAAA,CACJ,CAAC;AACF,MAAM,iBAAiB,GAAG,CACxB,CAAS,EACT,EAA6D,EAC7D,EAAE,CACF,EAAE,CAAC;IACD,aAAa,EAAE,IAAI,CAAC,EAAE,EAAE;IACxB,UAAU,EAAE,GAAS,EAAE;QAAC,OAAA,CAAC;YACvB,SAAS,EAAE,EAAE;YACb,OAAO,EAAE,OAAO,CAAC,WAAW,EAAE;SAC/B,CAAC,CAAA;MAAA;IACF,eAAe,EAAE,IAAI,CAAC,EAAE,EAAE;IAC1B,uBAAuB,EAAE,IAAI,CAAC,EAAE,EAAE;IAClC,iBAAiB,EAAE,IAAI,CAAC,EAAE,EAAE;IAC5B,mBAAmB,EAAE,IAAI,CAAC,EAAE,EAAE;CAC/B,CAAC,CAAC;AAEL,QAAQ,CAAC,YAAY,EAAE,GAAG,EAAE;IAC1B,QAAQ,CAAC,kBAAkB,EAAE,GAAG,EAAE;QAChC,EAAE,CAAC,yCAAyC,EAAE,GAAS,EAAE;YACvD,MAAM,UAAU,GAAG,QAAQ,CAAC,iBAAiB,CAAC,CAAC;YAC/C,MAAM,QAAQ,GAAG,MAAM,UAAU,CAAC,EAAS,EAAE,EAAS,CAAC,CAAC;YACxD,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACvC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACpD,CAAC,CAAA,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=hw-signMessage.unit.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hw-signMessage.unit.test.d.ts","sourceRoot":"","sources":["../../../src/__tests__/unit/hw-signMessage.unit.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,186 @@
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
+ import { fail, AssertionError } from "assert";
11
+ import { getCryptoCurrencyById } from "@ledgerhq/cryptoassets/currencies";
12
+ import { prepareMessageToSign, signMessage } from "../../hw-signMessage";
13
+ import { makeAccount } from "../fixtures/common.fixtures";
14
+ const signPersonalMessage = jest.fn(() => __awaiter(void 0, void 0, void 0, function* () {
15
+ return ({
16
+ r: "01",
17
+ s: "02",
18
+ v: 3,
19
+ });
20
+ }));
21
+ const signEIP712Message = jest.fn(() => __awaiter(void 0, void 0, void 0, function* () {
22
+ return ({
23
+ r: "03",
24
+ s: "04",
25
+ v: 6,
26
+ });
27
+ }));
28
+ const signEIP712HashedMessage = jest.fn(() => __awaiter(void 0, void 0, void 0, function* () {
29
+ return ({
30
+ r: "07",
31
+ s: "08",
32
+ v: 9,
33
+ });
34
+ }));
35
+ const signerContextMock = (deviceId, fn) => __awaiter(void 0, void 0, void 0, function* () {
36
+ return fn({
37
+ signPersonalMessage,
38
+ signEIP712Message,
39
+ signEIP712HashedMessage,
40
+ });
41
+ });
42
+ const account = makeAccount("0x6cBCD73CD8e8a42844662f0A0e76D7F79Afd933d", getCryptoCurrencyById("ethereum"));
43
+ const eip712message = {
44
+ domain: {
45
+ name: "Message Not In CAL",
46
+ version: "1",
47
+ chainId: 1,
48
+ verifyingContract: "0xd007d007a0d06d4fbbf627410eade051fd66fc59",
49
+ salt: "0x446f6f7420446f6f74206c657320746f6361726473206475205661756c740000",
50
+ },
51
+ types: {
52
+ EIP712Domain: [
53
+ { name: "name", type: "string" },
54
+ { name: "version", type: "string" },
55
+ { name: "chainId", type: "uint256" },
56
+ { name: "verifyingContract", type: "address" },
57
+ { name: "salt", type: "bytes32" },
58
+ ],
59
+ hello: [{ name: "foo", type: "string" }],
60
+ },
61
+ primaryType: "hello",
62
+ message: {
63
+ foo: "bar",
64
+ },
65
+ };
66
+ describe("EVM Family", () => {
67
+ describe("hw-signMessage.ts", () => {
68
+ describe("prepareMessageToSign", () => {
69
+ it("should parse a random stringified JSON message and still return an EIP191 message", () => {
70
+ expect(prepareMessageToSign({ message: JSON.stringify({ randomMessage: "hello" }) })).toEqual({
71
+ standard: "EIP191",
72
+ message: JSON.stringify({ randomMessage: "hello" }),
73
+ });
74
+ });
75
+ it("should parse a stringified JSON message and still return an EIP712 message", () => {
76
+ expect(prepareMessageToSign({ message: JSON.stringify(eip712message) })).toEqual({
77
+ standard: "EIP712",
78
+ message: eip712message,
79
+ domainHash: "0x471d9cd0511bdacb81977703f269a417092da548042b004ee44f250c077aefd6",
80
+ hashStruct: "0x00ea67203532137e1166447586859962e977f0ce26dc2b53c2f5c9415665a52d",
81
+ });
82
+ });
83
+ it("should return an EIP91 message with a basic string message", () => {
84
+ expect(prepareMessageToSign({ message: "test message" })).toEqual({
85
+ standard: "EIP191",
86
+ message: "test message",
87
+ });
88
+ });
89
+ });
90
+ describe("signMessage", () => {
91
+ beforeEach(() => {
92
+ jest.clearAllMocks();
93
+ });
94
+ it("should sign an EIP191 message", () => __awaiter(void 0, void 0, void 0, function* () {
95
+ const result = yield signMessage(signerContextMock)("", account, {
96
+ standard: "EIP191",
97
+ message: "test message",
98
+ });
99
+ expect(result).toEqual({
100
+ rsv: {
101
+ r: "01",
102
+ s: "02",
103
+ v: 3,
104
+ },
105
+ signature: "0x000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000021b",
106
+ });
107
+ expect(signPersonalMessage).toHaveBeenCalled();
108
+ }));
109
+ it("should sign an EIP712 message with signEIP712Message", () => __awaiter(void 0, void 0, void 0, function* () {
110
+ const result = yield signMessage(signerContextMock)("", account, {
111
+ standard: "EIP712",
112
+ message: eip712message,
113
+ domainHash: "0x471d9cd0511bdacb81977703f269a417092da548042b004ee44f250c077aefd6",
114
+ hashStruct: "0x00ea67203532137e1166447586859962e977f0ce26dc2b53c2f5c9415665a52d",
115
+ });
116
+ expect(result).toEqual({
117
+ rsv: {
118
+ r: "03",
119
+ s: "04",
120
+ v: 6,
121
+ },
122
+ signature: "0x000000000000000000000000000000000000000000000000000000000000000300000000000000000000000000000000000000000000000000000000000000041c",
123
+ });
124
+ expect(signEIP712Message).toHaveBeenCalled();
125
+ }));
126
+ it("should sign an EIP712 message and fallback on signEIP712Message when signEIP712Message is not supported", () => __awaiter(void 0, void 0, void 0, function* () {
127
+ signEIP712Message.mockImplementationOnce(() => {
128
+ const e = new Error();
129
+ e.statusText = "INS_NOT_SUPPORTED";
130
+ throw e;
131
+ });
132
+ const result = yield signMessage(signerContextMock)("", account, {
133
+ standard: "EIP712",
134
+ message: eip712message,
135
+ domainHash: "0x471d9cd0511bdacb81977703f269a417092da548042b004ee44f250c077aefd6",
136
+ hashStruct: "0x00ea67203532137e1166447586859962e977f0ce26dc2b53c2f5c9415665a52d",
137
+ });
138
+ expect(result).toEqual({
139
+ rsv: {
140
+ r: "07",
141
+ s: "08",
142
+ v: 9,
143
+ },
144
+ signature: "0x000000000000000000000000000000000000000000000000000000000000000700000000000000000000000000000000000000000000000000000000000000081b",
145
+ });
146
+ expect(signEIP712HashedMessage).toHaveBeenCalled();
147
+ }));
148
+ it("should throw for any other error", () => __awaiter(void 0, void 0, void 0, function* () {
149
+ signEIP712Message.mockImplementationOnce(() => {
150
+ throw new Error();
151
+ });
152
+ try {
153
+ yield signMessage(signerContextMock)("", account, {
154
+ standard: "EIP712",
155
+ message: eip712message,
156
+ domainHash: "0x471d9cd0511bdacb81977703f269a417092da548042b004ee44f250c077aefd6",
157
+ hashStruct: "0x00ea67203532137e1166447586859962e977f0ce26dc2b53c2f5c9415665a52d",
158
+ });
159
+ fail("Promise should have been rejected");
160
+ }
161
+ catch (e) {
162
+ if (e instanceof AssertionError) {
163
+ throw e;
164
+ }
165
+ expect(e).toBeInstanceOf(Error);
166
+ }
167
+ }));
168
+ it("should throw for an unsupported message standard", () => __awaiter(void 0, void 0, void 0, function* () {
169
+ try {
170
+ yield signMessage(signerContextMock)("", account, {
171
+ message: "test",
172
+ });
173
+ fail("Promise should have been rejected");
174
+ }
175
+ catch (e) {
176
+ if (e instanceof AssertionError) {
177
+ throw e;
178
+ }
179
+ expect(e).toBeInstanceOf(Error);
180
+ expect(e.message).toEqual("Unsupported message standard");
181
+ }
182
+ }));
183
+ });
184
+ });
185
+ });
186
+ //# sourceMappingURL=hw-signMessage.unit.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hw-signMessage.unit.test.js","sourceRoot":"","sources":["../../../src/__tests__/unit/hw-signMessage.unit.test.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,IAAI,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EAAE,qBAAqB,EAAE,MAAM,mCAAmC,CAAC;AAC1E,OAAO,EAAE,oBAAoB,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACzE,OAAO,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAE1D,MAAM,mBAAmB,GAAG,IAAI,CAAC,EAAE,CAAC,GAAS,EAAE;IAAC,OAAA,CAAC;QAC/C,CAAC,EAAE,IAAI;QACP,CAAC,EAAE,IAAI;QACP,CAAC,EAAE,CAAC;KACL,CAAC,CAAA;EAAA,CAAC,CAAC;AACJ,MAAM,iBAAiB,GAAG,IAAI,CAAC,EAAE,CAAC,GAAS,EAAE;IAAC,OAAA,CAAC;QAC7C,CAAC,EAAE,IAAI;QACP,CAAC,EAAE,IAAI;QACP,CAAC,EAAE,CAAC;KACL,CAAC,CAAA;EAAA,CAAC,CAAC;AACJ,MAAM,uBAAuB,GAAG,IAAI,CAAC,EAAE,CAAC,GAAS,EAAE;IAAC,OAAA,CAAC;QACnD,CAAC,EAAE,IAAI;QACP,CAAC,EAAE,IAAI;QACP,CAAC,EAAE,CAAC;KACL,CAAC,CAAA;EAAA,CAAC,CAAC;AAEJ,MAAM,iBAAiB,GAAQ,CAAO,QAAgB,EAAE,EAAO,EAAE,EAAE;IACjE,OAAO,EAAE,CAAC;QACR,mBAAmB;QACnB,iBAAiB;QACjB,uBAAuB;KACxB,CAAC,CAAC;AACL,CAAC,CAAA,CAAC;AAEF,MAAM,OAAO,GAAG,WAAW,CACzB,4CAA4C,EAC5C,qBAAqB,CAAC,UAAU,CAAC,CAClC,CAAC;AAEF,MAAM,aAAa,GAAG;IACpB,MAAM,EAAE;QACN,IAAI,EAAE,oBAAoB;QAC1B,OAAO,EAAE,GAAG;QACZ,OAAO,EAAE,CAAC;QACV,iBAAiB,EAAE,4CAA4C;QAC/D,IAAI,EAAE,oEAAoE;KAC3E;IACD,KAAK,EAAE;QACL,YAAY,EAAE;YACZ,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE;YAChC,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,QAAQ,EAAE;YACnC,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE;YACpC,EAAE,IAAI,EAAE,mBAAmB,EAAE,IAAI,EAAE,SAAS,EAAE;YAC9C,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE;SAClC;QACD,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;KACzC;IACD,WAAW,EAAE,OAAO;IACpB,OAAO,EAAE;QACP,GAAG,EAAE,KAAK;KACX;CACF,CAAC;AAEF,QAAQ,CAAC,YAAY,EAAE,GAAG,EAAE;IAC1B,QAAQ,CAAC,mBAAmB,EAAE,GAAG,EAAE;QACjC,QAAQ,CAAC,sBAAsB,EAAE,GAAG,EAAE;YACpC,EAAE,CAAC,mFAAmF,EAAE,GAAG,EAAE;gBAC3F,MAAM,CACJ,oBAAoB,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,aAAa,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,CAC9E,CAAC,OAAO,CAAC;oBACR,QAAQ,EAAE,QAAQ;oBAClB,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,aAAa,EAAE,OAAO,EAAE,CAAC;iBACpD,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;YAEH,EAAE,CAAC,4EAA4E,EAAE,GAAG,EAAE;gBACpF,MAAM,CAAC,oBAAoB,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC;oBAC/E,QAAQ,EAAE,QAAQ;oBAClB,OAAO,EAAE,aAAa;oBACtB,UAAU,EAAE,oEAAoE;oBAChF,UAAU,EAAE,oEAAoE;iBACjF,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;YAEH,EAAE,CAAC,4DAA4D,EAAE,GAAG,EAAE;gBACpE,MAAM,CAAC,oBAAoB,CAAC,EAAE,OAAO,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC;oBAChE,QAAQ,EAAE,QAAQ;oBAClB,OAAO,EAAE,cAAc;iBACxB,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,QAAQ,CAAC,aAAa,EAAE,GAAG,EAAE;YAC3B,UAAU,CAAC,GAAG,EAAE;gBACd,IAAI,CAAC,aAAa,EAAE,CAAC;YACvB,CAAC,CAAC,CAAC;YAEH,EAAE,CAAC,+BAA+B,EAAE,GAAS,EAAE;gBAC7C,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC,iBAAiB,CAAC,CAAC,EAAE,EAAE,OAAO,EAAE;oBAC/D,QAAQ,EAAE,QAAQ;oBAClB,OAAO,EAAE,cAAc;iBACxB,CAAC,CAAC;gBACH,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC;oBACrB,GAAG,EAAE;wBACH,CAAC,EAAE,IAAI;wBACP,CAAC,EAAE,IAAI;wBACP,CAAC,EAAE,CAAC;qBACL;oBACD,SAAS,EACP,sIAAsI;iBACzI,CAAC,CAAC;gBACH,MAAM,CAAC,mBAAmB,CAAC,CAAC,gBAAgB,EAAE,CAAC;YACjD,CAAC,CAAA,CAAC,CAAC;YAEH,EAAE,CAAC,sDAAsD,EAAE,GAAS,EAAE;gBACpE,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC,iBAAiB,CAAC,CAAC,EAAE,EAAE,OAAO,EAAE;oBAC/D,QAAQ,EAAE,QAAQ;oBAClB,OAAO,EAAE,aAAa;oBACtB,UAAU,EAAE,oEAAoE;oBAChF,UAAU,EAAE,oEAAoE;iBACjF,CAAC,CAAC;gBACH,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC;oBACrB,GAAG,EAAE;wBACH,CAAC,EAAE,IAAI;wBACP,CAAC,EAAE,IAAI;wBACP,CAAC,EAAE,CAAC;qBACL;oBACD,SAAS,EACP,sIAAsI;iBACzI,CAAC,CAAC;gBACH,MAAM,CAAC,iBAAiB,CAAC,CAAC,gBAAgB,EAAE,CAAC;YAC/C,CAAC,CAAA,CAAC,CAAC;YAEH,EAAE,CAAC,yGAAyG,EAAE,GAAS,EAAE;gBACvH,iBAAiB,CAAC,sBAAsB,CAAC,GAAG,EAAE;oBAC5C,MAAM,CAAC,GAAG,IAAI,KAAK,EAAE,CAAC;oBACrB,CAAS,CAAC,UAAU,GAAG,mBAAmB,CAAC;oBAE5C,MAAM,CAAC,CAAC;gBACV,CAAC,CAAC,CAAC;gBAEH,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC,iBAAiB,CAAC,CAAC,EAAE,EAAE,OAAO,EAAE;oBAC/D,QAAQ,EAAE,QAAQ;oBAClB,OAAO,EAAE,aAAa;oBACtB,UAAU,EAAE,oEAAoE;oBAChF,UAAU,EAAE,oEAAoE;iBACjF,CAAC,CAAC;gBACH,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC;oBACrB,GAAG,EAAE;wBACH,CAAC,EAAE,IAAI;wBACP,CAAC,EAAE,IAAI;wBACP,CAAC,EAAE,CAAC;qBACL;oBACD,SAAS,EACP,sIAAsI;iBACzI,CAAC,CAAC;gBACH,MAAM,CAAC,uBAAuB,CAAC,CAAC,gBAAgB,EAAE,CAAC;YACrD,CAAC,CAAA,CAAC,CAAC;YAEH,EAAE,CAAC,kCAAkC,EAAE,GAAS,EAAE;gBAChD,iBAAiB,CAAC,sBAAsB,CAAC,GAAG,EAAE;oBAC5C,MAAM,IAAI,KAAK,EAAE,CAAC;gBACpB,CAAC,CAAC,CAAC;gBAEH,IAAI;oBACF,MAAM,WAAW,CAAC,iBAAiB,CAAC,CAAC,EAAE,EAAE,OAAO,EAAE;wBAChD,QAAQ,EAAE,QAAQ;wBAClB,OAAO,EAAE,aAAa;wBACtB,UAAU,EAAE,oEAAoE;wBAChF,UAAU,EAAE,oEAAoE;qBACjF,CAAC,CAAC;oBACH,IAAI,CAAC,mCAAmC,CAAC,CAAC;iBAC3C;gBAAC,OAAO,CAAC,EAAE;oBACV,IAAI,CAAC,YAAY,cAAc,EAAE;wBAC/B,MAAM,CAAC,CAAC;qBACT;oBACD,MAAM,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;iBACjC;YACH,CAAC,CAAA,CAAC,CAAC;YAEH,EAAE,CAAC,kDAAkD,EAAE,GAAS,EAAE;gBAChE,IAAI;oBACF,MAAM,WAAW,CAAC,iBAAiB,CAAC,CAAC,EAAE,EAAE,OAAO,EAAE;wBAChD,OAAO,EAAE,MAAM;qBAChB,CAAC,CAAC;oBACH,IAAI,CAAC,mCAAmC,CAAC,CAAC;iBAC3C;gBAAC,OAAO,CAAC,EAAE;oBACV,IAAI,CAAC,YAAY,cAAc,EAAE;wBAC/B,MAAM,CAAC,CAAC;qBACT;oBACD,MAAM,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;oBAChC,MAAM,CAAE,CAAW,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,8BAA8B,CAAC,CAAC;iBACtE;YACH,CAAC,CAAA,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logic.unit.test.d.ts","sourceRoot":"","sources":["../../../src/__tests__/unit/logic.unit.test.ts"],"names":[],"mappings":""}