@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
@@ -0,0 +1,188 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ const assert_1 = require("assert");
13
+ const currencies_1 = require("@ledgerhq/cryptoassets/currencies");
14
+ const hw_signMessage_1 = require("../../hw-signMessage");
15
+ const common_fixtures_1 = require("../fixtures/common.fixtures");
16
+ const signPersonalMessage = jest.fn(() => __awaiter(void 0, void 0, void 0, function* () {
17
+ return ({
18
+ r: "01",
19
+ s: "02",
20
+ v: 3,
21
+ });
22
+ }));
23
+ const signEIP712Message = jest.fn(() => __awaiter(void 0, void 0, void 0, function* () {
24
+ return ({
25
+ r: "03",
26
+ s: "04",
27
+ v: 6,
28
+ });
29
+ }));
30
+ const signEIP712HashedMessage = jest.fn(() => __awaiter(void 0, void 0, void 0, function* () {
31
+ return ({
32
+ r: "07",
33
+ s: "08",
34
+ v: 9,
35
+ });
36
+ }));
37
+ const signerContextMock = (deviceId, fn) => __awaiter(void 0, void 0, void 0, function* () {
38
+ return fn({
39
+ signPersonalMessage,
40
+ signEIP712Message,
41
+ signEIP712HashedMessage,
42
+ });
43
+ });
44
+ const account = (0, common_fixtures_1.makeAccount)("0x6cBCD73CD8e8a42844662f0A0e76D7F79Afd933d", (0, currencies_1.getCryptoCurrencyById)("ethereum"));
45
+ const eip712message = {
46
+ domain: {
47
+ name: "Message Not In CAL",
48
+ version: "1",
49
+ chainId: 1,
50
+ verifyingContract: "0xd007d007a0d06d4fbbf627410eade051fd66fc59",
51
+ salt: "0x446f6f7420446f6f74206c657320746f6361726473206475205661756c740000",
52
+ },
53
+ types: {
54
+ EIP712Domain: [
55
+ { name: "name", type: "string" },
56
+ { name: "version", type: "string" },
57
+ { name: "chainId", type: "uint256" },
58
+ { name: "verifyingContract", type: "address" },
59
+ { name: "salt", type: "bytes32" },
60
+ ],
61
+ hello: [{ name: "foo", type: "string" }],
62
+ },
63
+ primaryType: "hello",
64
+ message: {
65
+ foo: "bar",
66
+ },
67
+ };
68
+ describe("EVM Family", () => {
69
+ describe("hw-signMessage.ts", () => {
70
+ describe("prepareMessageToSign", () => {
71
+ it("should parse a random stringified JSON message and still return an EIP191 message", () => {
72
+ expect((0, hw_signMessage_1.prepareMessageToSign)({ message: JSON.stringify({ randomMessage: "hello" }) })).toEqual({
73
+ standard: "EIP191",
74
+ message: JSON.stringify({ randomMessage: "hello" }),
75
+ });
76
+ });
77
+ it("should parse a stringified JSON message and still return an EIP712 message", () => {
78
+ expect((0, hw_signMessage_1.prepareMessageToSign)({ message: JSON.stringify(eip712message) })).toEqual({
79
+ standard: "EIP712",
80
+ message: eip712message,
81
+ domainHash: "0x471d9cd0511bdacb81977703f269a417092da548042b004ee44f250c077aefd6",
82
+ hashStruct: "0x00ea67203532137e1166447586859962e977f0ce26dc2b53c2f5c9415665a52d",
83
+ });
84
+ });
85
+ it("should return an EIP91 message with a basic string message", () => {
86
+ expect((0, hw_signMessage_1.prepareMessageToSign)({ message: "test message" })).toEqual({
87
+ standard: "EIP191",
88
+ message: "test message",
89
+ });
90
+ });
91
+ });
92
+ describe("signMessage", () => {
93
+ beforeEach(() => {
94
+ jest.clearAllMocks();
95
+ });
96
+ it("should sign an EIP191 message", () => __awaiter(void 0, void 0, void 0, function* () {
97
+ const result = yield (0, hw_signMessage_1.signMessage)(signerContextMock)("", account, {
98
+ standard: "EIP191",
99
+ message: "test message",
100
+ });
101
+ expect(result).toEqual({
102
+ rsv: {
103
+ r: "01",
104
+ s: "02",
105
+ v: 3,
106
+ },
107
+ signature: "0x000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000021b",
108
+ });
109
+ expect(signPersonalMessage).toHaveBeenCalled();
110
+ }));
111
+ it("should sign an EIP712 message with signEIP712Message", () => __awaiter(void 0, void 0, void 0, function* () {
112
+ const result = yield (0, hw_signMessage_1.signMessage)(signerContextMock)("", account, {
113
+ standard: "EIP712",
114
+ message: eip712message,
115
+ domainHash: "0x471d9cd0511bdacb81977703f269a417092da548042b004ee44f250c077aefd6",
116
+ hashStruct: "0x00ea67203532137e1166447586859962e977f0ce26dc2b53c2f5c9415665a52d",
117
+ });
118
+ expect(result).toEqual({
119
+ rsv: {
120
+ r: "03",
121
+ s: "04",
122
+ v: 6,
123
+ },
124
+ signature: "0x000000000000000000000000000000000000000000000000000000000000000300000000000000000000000000000000000000000000000000000000000000041c",
125
+ });
126
+ expect(signEIP712Message).toHaveBeenCalled();
127
+ }));
128
+ it("should sign an EIP712 message and fallback on signEIP712Message when signEIP712Message is not supported", () => __awaiter(void 0, void 0, void 0, function* () {
129
+ signEIP712Message.mockImplementationOnce(() => {
130
+ const e = new Error();
131
+ e.statusText = "INS_NOT_SUPPORTED";
132
+ throw e;
133
+ });
134
+ const result = yield (0, hw_signMessage_1.signMessage)(signerContextMock)("", account, {
135
+ standard: "EIP712",
136
+ message: eip712message,
137
+ domainHash: "0x471d9cd0511bdacb81977703f269a417092da548042b004ee44f250c077aefd6",
138
+ hashStruct: "0x00ea67203532137e1166447586859962e977f0ce26dc2b53c2f5c9415665a52d",
139
+ });
140
+ expect(result).toEqual({
141
+ rsv: {
142
+ r: "07",
143
+ s: "08",
144
+ v: 9,
145
+ },
146
+ signature: "0x000000000000000000000000000000000000000000000000000000000000000700000000000000000000000000000000000000000000000000000000000000081b",
147
+ });
148
+ expect(signEIP712HashedMessage).toHaveBeenCalled();
149
+ }));
150
+ it("should throw for any other error", () => __awaiter(void 0, void 0, void 0, function* () {
151
+ signEIP712Message.mockImplementationOnce(() => {
152
+ throw new Error();
153
+ });
154
+ try {
155
+ yield (0, hw_signMessage_1.signMessage)(signerContextMock)("", account, {
156
+ standard: "EIP712",
157
+ message: eip712message,
158
+ domainHash: "0x471d9cd0511bdacb81977703f269a417092da548042b004ee44f250c077aefd6",
159
+ hashStruct: "0x00ea67203532137e1166447586859962e977f0ce26dc2b53c2f5c9415665a52d",
160
+ });
161
+ (0, assert_1.fail)("Promise should have been rejected");
162
+ }
163
+ catch (e) {
164
+ if (e instanceof assert_1.AssertionError) {
165
+ throw e;
166
+ }
167
+ expect(e).toBeInstanceOf(Error);
168
+ }
169
+ }));
170
+ it("should throw for an unsupported message standard", () => __awaiter(void 0, void 0, void 0, function* () {
171
+ try {
172
+ yield (0, hw_signMessage_1.signMessage)(signerContextMock)("", account, {
173
+ message: "test",
174
+ });
175
+ (0, assert_1.fail)("Promise should have been rejected");
176
+ }
177
+ catch (e) {
178
+ if (e instanceof assert_1.AssertionError) {
179
+ throw e;
180
+ }
181
+ expect(e).toBeInstanceOf(Error);
182
+ expect(e.message).toEqual("Unsupported message standard");
183
+ }
184
+ }));
185
+ });
186
+ });
187
+ });
188
+ //# 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":"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"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logic.unit.test.d.ts","sourceRoot":"","sources":["../../../src/__tests__/unit/logic.unit.test.ts"],"names":[],"mappings":""}
@@ -35,12 +35,13 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
35
35
  return (mod && mod.__esModule) ? mod : { "default": mod };
36
36
  };
37
37
  Object.defineProperty(exports, "__esModule", { value: true });
38
- const cryptoassets_1 = require("@ledgerhq/cryptoassets");
39
- const cryptoAssetsTokens = __importStar(require("@ledgerhq/cryptoassets/tokens"));
40
38
  const bignumber_js_1 = __importDefault(require("bignumber.js"));
41
- const RPC_API = __importStar(require("../api/rpc/rpc.common"));
42
- const logic_1 = require("../logic");
43
- const testUtils_1 = require("../testUtils");
39
+ const live_env_1 = require("@ledgerhq/live-env");
40
+ const cryptoAssetsTokens = __importStar(require("@ledgerhq/cryptoassets/tokens"));
41
+ const cryptoassets_1 = require("@ledgerhq/cryptoassets");
42
+ const RPC_API = __importStar(require("../../api/rpc/rpc.common"));
43
+ const common_fixtures_1 = require("../fixtures/common.fixtures");
44
+ const logic_1 = require("../../logic");
44
45
  describe("EVM Family", () => {
45
46
  describe("logic.ts", () => {
46
47
  describe("legacyTransactionHasFees", () => {
@@ -160,9 +161,9 @@ describe("EVM Family", () => {
160
161
  describe("mergeSubAccounts", () => {
161
162
  it("should merge 2 different sub accounts", () => {
162
163
  var _a;
163
- const tokenAccount1 = Object.assign(Object.assign({}, (0, testUtils_1.makeTokenAccount)("0xkvn", (0, cryptoassets_1.getTokenById)("ethereum/erc20/usd__coin"))), { balance: new bignumber_js_1.default(1), operations: [] });
164
- const tokenAccount2 = Object.assign(Object.assign({}, (0, testUtils_1.makeTokenAccount)("0xkvn", (0, cryptoassets_1.getTokenById)("ethereum/erc20/weth"))), { balance: new bignumber_js_1.default(2), operations: [] });
165
- const account = (0, testUtils_1.makeAccount)("0xkvn", (0, cryptoassets_1.getCryptoCurrencyById)("ethereum"), [tokenAccount1]);
164
+ const tokenAccount1 = Object.assign(Object.assign({}, (0, common_fixtures_1.makeTokenAccount)("0xkvn", (0, cryptoassets_1.getTokenById)("ethereum/erc20/usd__coin"))), { balance: new bignumber_js_1.default(1), operations: [] });
165
+ const tokenAccount2 = Object.assign(Object.assign({}, (0, common_fixtures_1.makeTokenAccount)("0xkvn", (0, cryptoassets_1.getTokenById)("ethereum/erc20/weth"))), { balance: new bignumber_js_1.default(2), operations: [] });
166
+ const account = (0, common_fixtures_1.makeAccount)("0xkvn", (0, cryptoassets_1.getCryptoCurrencyById)("ethereum"), [tokenAccount1]);
166
167
  const newSubAccounts = (0, logic_1.mergeSubAccounts)(account, [tokenAccount2]);
167
168
  expect(newSubAccounts).toEqual([tokenAccount1, tokenAccount2]);
168
169
  expect(newSubAccounts).not.toBe(account.subAccounts); // shouldn't mutate original account
@@ -171,7 +172,7 @@ describe("EVM Family", () => {
171
172
  });
172
173
  it("should merge 2 different sub accounts and update the first one", () => {
173
174
  var _a;
174
- const tokenAccount1 = Object.assign(Object.assign({}, (0, testUtils_1.makeTokenAccount)("0xkvn", (0, cryptoassets_1.getTokenById)("ethereum/erc20/usd__coin"))), { balance: new bignumber_js_1.default(1), operations: [] });
175
+ const tokenAccount1 = Object.assign(Object.assign({}, (0, common_fixtures_1.makeTokenAccount)("0xkvn", (0, cryptoassets_1.getTokenById)("ethereum/erc20/usd__coin"))), { balance: new bignumber_js_1.default(1), operations: [] });
175
176
  const tokenAccount1Bis = Object.assign(Object.assign({}, tokenAccount1), { balance: new bignumber_js_1.default(10), spendableBalance: new bignumber_js_1.default(11), operationsCount: 0, balanceHistoryCache: {
176
177
  HOUR: {
177
178
  latestDate: 123,
@@ -186,8 +187,8 @@ describe("EVM Family", () => {
186
187
  balances: [345],
187
188
  },
188
189
  }, operations: [] });
189
- const tokenAccount2 = Object.assign(Object.assign({}, (0, testUtils_1.makeTokenAccount)("0xkvn", (0, cryptoassets_1.getTokenById)("ethereum/erc20/weth"))), { balance: new bignumber_js_1.default(2), operations: [] });
190
- const account = (0, testUtils_1.makeAccount)("0xkvn", (0, cryptoassets_1.getCryptoCurrencyById)("ethereum"), [tokenAccount1]);
190
+ const tokenAccount2 = Object.assign(Object.assign({}, (0, common_fixtures_1.makeTokenAccount)("0xkvn", (0, cryptoassets_1.getTokenById)("ethereum/erc20/weth"))), { balance: new bignumber_js_1.default(2), operations: [] });
191
+ const account = (0, common_fixtures_1.makeAccount)("0xkvn", (0, cryptoassets_1.getCryptoCurrencyById)("ethereum"), [tokenAccount1]);
191
192
  const newSubAccounts = (0, logic_1.mergeSubAccounts)(account, [tokenAccount1Bis, tokenAccount2]);
192
193
  expect(newSubAccounts).toEqual([tokenAccount1Bis, tokenAccount2]);
193
194
  expect(newSubAccounts).not.toBe(account.subAccounts); // shouldn't mutate original account
@@ -196,16 +197,16 @@ describe("EVM Family", () => {
196
197
  });
197
198
  it("should update subAccount ops", () => {
198
199
  var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l;
199
- const op1 = (0, testUtils_1.makeOperation)();
200
- const op2 = (0, testUtils_1.makeOperation)({
200
+ const op1 = (0, common_fixtures_1.makeOperation)();
201
+ const op2 = (0, common_fixtures_1.makeOperation)({
201
202
  hash: "0xdiffHash",
202
203
  });
203
- const op3 = (0, testUtils_1.makeOperation)({
204
+ const op3 = (0, common_fixtures_1.makeOperation)({
204
205
  hash: "0xAgAinAnotHeRH4sh",
205
206
  });
206
- const tokenAccount1 = Object.assign(Object.assign({}, (0, testUtils_1.makeTokenAccount)("0xkvn", (0, cryptoassets_1.getTokenById)("ethereum/erc20/usd__coin"))), { balance: new bignumber_js_1.default(1), operations: [op1, op2], operationsCount: 2 });
207
+ const tokenAccount1 = Object.assign(Object.assign({}, (0, common_fixtures_1.makeTokenAccount)("0xkvn", (0, cryptoassets_1.getTokenById)("ethereum/erc20/usd__coin"))), { balance: new bignumber_js_1.default(1), operations: [op1, op2], operationsCount: 2 });
207
208
  const tokenAccount1Bis = Object.assign(Object.assign({}, tokenAccount1), { operations: [op3, op1, op2], operationsCount: 3 });
208
- const account = (0, testUtils_1.makeAccount)("0xkvn", (0, cryptoassets_1.getCryptoCurrencyById)("ethereum"), [tokenAccount1]);
209
+ const account = (0, common_fixtures_1.makeAccount)("0xkvn", (0, cryptoassets_1.getCryptoCurrencyById)("ethereum"), [tokenAccount1]);
209
210
  const newSubAccounts = (0, logic_1.mergeSubAccounts)(account, [tokenAccount1Bis]);
210
211
  expect(newSubAccounts).not.toBe(account.subAccounts); // shouldn't mutate original account
211
212
  expect(account.subAccounts).toEqual([tokenAccount1]); // shouldn't mutate original account
@@ -215,16 +216,16 @@ describe("EVM Family", () => {
215
216
  expect(newSubAccounts).toEqual([tokenAccount1Bis]);
216
217
  });
217
218
  it("should return only new sub accounts", () => {
218
- const tokenAccount = Object.assign(Object.assign({}, (0, testUtils_1.makeTokenAccount)("0xkvn", (0, cryptoassets_1.getTokenById)("ethereum/erc20/usd__coin"))), { balance: new bignumber_js_1.default(1) });
219
- const account = (0, testUtils_1.makeAccount)("0xkvn", (0, cryptoassets_1.getCryptoCurrencyById)("ethereum"));
219
+ const tokenAccount = Object.assign(Object.assign({}, (0, common_fixtures_1.makeTokenAccount)("0xkvn", (0, cryptoassets_1.getTokenById)("ethereum/erc20/usd__coin"))), { balance: new bignumber_js_1.default(1) });
220
+ const account = Object.assign({}, (0, common_fixtures_1.makeAccount)("0xkvn", (0, cryptoassets_1.getCryptoCurrencyById)("ethereum")));
220
221
  delete account.subAccounts;
221
222
  const newSubAccounts = (0, logic_1.mergeSubAccounts)(account, [tokenAccount]);
222
223
  expect(newSubAccounts).toEqual([tokenAccount]);
223
224
  expect(account.subAccounts).toBe(undefined); // shouldn't mutate original account
224
225
  });
225
226
  it("should dedup sub accounts", () => {
226
- const tokenAccount = Object.assign(Object.assign({}, (0, testUtils_1.makeTokenAccount)("0xkvn", (0, cryptoassets_1.getTokenById)("ethereum/erc20/usd__coin"))), { balance: new bignumber_js_1.default(1) });
227
- const account = (0, testUtils_1.makeAccount)("0xkvn", (0, cryptoassets_1.getCryptoCurrencyById)("ethereum"), [tokenAccount]);
227
+ const tokenAccount = Object.assign(Object.assign({}, (0, common_fixtures_1.makeTokenAccount)("0xkvn", (0, cryptoassets_1.getTokenById)("ethereum/erc20/usd__coin"))), { balance: new bignumber_js_1.default(1) });
228
+ const account = (0, common_fixtures_1.makeAccount)("0xkvn", (0, cryptoassets_1.getCryptoCurrencyById)("ethereum"), [tokenAccount]);
228
229
  const newSubAccounts = (0, logic_1.mergeSubAccounts)(account, [
229
230
  tokenAccount,
230
231
  Object.assign({}, tokenAccount),
@@ -235,8 +236,13 @@ describe("EVM Family", () => {
235
236
  });
236
237
  describe("getSyncHash", () => {
237
238
  const currency = (0, cryptoassets_1.getCryptoCurrencyById)("ethereum");
239
+ let oldEnv;
240
+ beforeAll(() => {
241
+ oldEnv = (0, live_env_1.getEnv)("NFT_CURRENCIES");
242
+ });
238
243
  afterEach(() => {
239
244
  jest.restoreAllMocks();
245
+ (0, live_env_1.setEnv)("NFT_CURRENCIES", oldEnv);
240
246
  });
241
247
  it("should provide a valid sha256 hash", () => {
242
248
  expect((0, logic_1.getSyncHash)(currency)).toStrictEqual(expect.stringMatching(/^0x[A-Fa-f0-9]{64}$/));
@@ -290,6 +296,91 @@ describe("EVM Family", () => {
290
296
  });
291
297
  expect((0, logic_1.getSyncHash)(currency)).not.toEqual((0, logic_1.getSyncHash)(currency));
292
298
  });
299
+ it("should provide a new hash if nft support is activated or not", () => {
300
+ (0, live_env_1.setEnv)("NFT_CURRENCIES", "");
301
+ const hash1 = (0, logic_1.getSyncHash)(currency);
302
+ (0, live_env_1.setEnv)("NFT_CURRENCIES", currency.id);
303
+ const hash2 = (0, logic_1.getSyncHash)(currency);
304
+ expect(hash1).not.toEqual(hash2);
305
+ });
306
+ });
307
+ describe("attachOperations", () => {
308
+ it("should attach token & nft operations to coin operations and create 'NONE' coin operations in case of orphans child operations", () => {
309
+ const coinOperation = (0, common_fixtures_1.makeOperation)({
310
+ hash: "0xCoinOp3Hash",
311
+ });
312
+ const tokenOperations = [
313
+ (0, common_fixtures_1.makeOperation)({
314
+ hash: coinOperation.hash,
315
+ contract: "0xTokenContract",
316
+ value: new bignumber_js_1.default(1),
317
+ type: "OUT",
318
+ }),
319
+ (0, common_fixtures_1.makeOperation)({
320
+ hash: coinOperation.hash,
321
+ contract: "0xTokenContract",
322
+ value: new bignumber_js_1.default(2),
323
+ type: "IN",
324
+ }),
325
+ (0, common_fixtures_1.makeOperation)({
326
+ hash: "0xUnknownHash",
327
+ contract: "0xOtherTokenContract",
328
+ value: new bignumber_js_1.default(2),
329
+ type: "IN",
330
+ }),
331
+ ];
332
+ const nftOperations = [
333
+ (0, common_fixtures_1.makeNftOperation)({
334
+ hash: coinOperation.hash,
335
+ contract: "0xTokenContract",
336
+ value: new bignumber_js_1.default(1),
337
+ type: "NFT_OUT",
338
+ }),
339
+ (0, common_fixtures_1.makeNftOperation)({
340
+ hash: coinOperation.hash,
341
+ contract: "0xTokenContract",
342
+ value: new bignumber_js_1.default(2),
343
+ type: "NFT_IN",
344
+ }),
345
+ (0, common_fixtures_1.makeNftOperation)({
346
+ hash: "0xUnknownNftHash",
347
+ contract: "0xOtherNftTokenContract",
348
+ value: new bignumber_js_1.default(2),
349
+ type: "NFT_IN",
350
+ }),
351
+ ];
352
+ expect((0, logic_1.attachOperations)([coinOperation], tokenOperations, nftOperations)).toEqual([
353
+ Object.assign(Object.assign({}, coinOperation), { subOperations: [tokenOperations[0], tokenOperations[1]], nftOperations: [nftOperations[0], nftOperations[1]] }),
354
+ Object.assign(Object.assign({}, tokenOperations[2]), { id: `js:2:ethereum:0xkvn:-${tokenOperations[2].hash}-NONE`, type: "NONE", value: new bignumber_js_1.default(0), fee: new bignumber_js_1.default(0), senders: [], recipients: [], nftOperations: [], subOperations: [tokenOperations[2]], accountId: "", contract: undefined }),
355
+ Object.assign(Object.assign({}, nftOperations[2]), { id: `js:2:ethereum:0xkvn:-${nftOperations[2].hash}-NONE`, type: "NONE", value: new bignumber_js_1.default(0), fee: new bignumber_js_1.default(0), senders: [], recipients: [], nftOperations: [nftOperations[2]], subOperations: [], accountId: "", contract: undefined }),
356
+ ]);
357
+ });
358
+ it("should not mutate the original operations", () => {
359
+ const coinOperations = (0, common_fixtures_1.deepFreeze)([
360
+ (0, common_fixtures_1.makeOperation)({
361
+ hash: "0xCoinOp3Hash",
362
+ }),
363
+ ]);
364
+ const tokenOperations = (0, common_fixtures_1.deepFreeze)([
365
+ (0, common_fixtures_1.makeOperation)({
366
+ hash: coinOperations[0].hash,
367
+ contract: "0xTokenContract",
368
+ value: new bignumber_js_1.default(1),
369
+ type: "OUT",
370
+ }),
371
+ ]);
372
+ const nftOperations = (0, common_fixtures_1.deepFreeze)([
373
+ (0, common_fixtures_1.makeNftOperation)({
374
+ hash: coinOperations[0].hash,
375
+ contract: "0xTokenContract",
376
+ value: new bignumber_js_1.default(1),
377
+ type: "NFT_OUT",
378
+ }),
379
+ ]);
380
+ expect(
381
+ // @ts-expect-error purposely ignore readonly ts issue for this
382
+ () => (0, logic_1.attachOperations)(coinOperations, tokenOperations, nftOperations)).not.toThrow(); // mutation prevented by deepFreeze method
383
+ });
293
384
  });
294
385
  });
295
386
  });
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logic.unit.test.js","sourceRoot":"","sources":["../../../src/__tests__/unit/logic.unit.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=nftResolvers.unit.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"nftResolvers.unit.test.d.ts","sourceRoot":"","sources":["../../../src/__tests__/unit/nftResolvers.unit.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,163 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ var __importDefault = (this && this.__importDefault) || function (mod) {
12
+ return (mod && mod.__esModule) ? mod : { "default": mod };
13
+ };
14
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ const axios_1 = __importDefault(require("axios"));
16
+ const assert_1 = require("assert");
17
+ const nftResolvers_1 = require("../../nftResolvers");
18
+ jest.mock("axios");
19
+ const mockedAxios = jest.mocked(axios_1.default);
20
+ const metadata = {
21
+ description: "desc",
22
+ links: {
23
+ explorer: "explorer",
24
+ opensea: "opensea",
25
+ rarible: "rarible",
26
+ },
27
+ medias: {
28
+ big: {
29
+ mediaType: "png",
30
+ uri: "big",
31
+ },
32
+ original: {
33
+ mediaType: "png",
34
+ uri: "original",
35
+ },
36
+ preview: {
37
+ mediaType: "png",
38
+ uri: "preview",
39
+ },
40
+ },
41
+ nftName: "name",
42
+ properties: [],
43
+ tokenName: "collectionName",
44
+ };
45
+ describe("EVM Family", () => {
46
+ beforeAll(() => {
47
+ mockedAxios.mockResolvedValue({ data: [{}] });
48
+ });
49
+ beforeEach(() => {
50
+ jest.clearAllMocks();
51
+ });
52
+ afterAll(() => {
53
+ jest.restoreAllMocks();
54
+ });
55
+ describe("nftResolvers", () => {
56
+ describe("nftMetadata", () => {
57
+ it("should reject a currency when NFT is not activated on it", () => __awaiter(void 0, void 0, void 0, function* () {
58
+ try {
59
+ yield (0, nftResolvers_1.nftMetadata)({
60
+ contract: "0xWhatever",
61
+ currencyId: "bitcoin",
62
+ tokenId: "1",
63
+ });
64
+ (0, assert_1.fail)("Promise should have been rejected");
65
+ }
66
+ catch (e) {
67
+ if (e instanceof assert_1.AssertionError) {
68
+ throw e;
69
+ }
70
+ expect(e).toBeInstanceOf(Error);
71
+ expect(e.message).toBe("Ethereum Bridge NFT Resolver: Unsupported currency");
72
+ }
73
+ }));
74
+ it("should not do any request if metadata are already provided", () => __awaiter(void 0, void 0, void 0, function* () {
75
+ const result = yield (0, nftResolvers_1.nftMetadata)({
76
+ contract: "0xWhatever",
77
+ currencyId: "ethereum",
78
+ tokenId: "1",
79
+ metadata,
80
+ });
81
+ expect(result).toEqual({
82
+ status: 200,
83
+ result: Object.assign({ contract: "0xWhatever", tokenId: "1" }, metadata),
84
+ });
85
+ expect(axios_1.default).not.toHaveBeenCalled();
86
+ }));
87
+ it("should return nft metadata", () => __awaiter(void 0, void 0, void 0, function* () {
88
+ mockedAxios.mockResolvedValueOnce({
89
+ data: [
90
+ {
91
+ status: 200,
92
+ result: Object.assign({ contract: "0xWhatever", tokenId: "1" }, metadata),
93
+ },
94
+ ],
95
+ });
96
+ const result = yield (0, nftResolvers_1.nftMetadata)({
97
+ contract: "0xWhatever",
98
+ currencyId: "ethereum",
99
+ tokenId: "1",
100
+ });
101
+ expect(result).toEqual({
102
+ status: 200,
103
+ result: Object.assign({ contract: "0xWhatever", tokenId: "1" }, metadata),
104
+ });
105
+ }));
106
+ });
107
+ describe("collectionMetadata", () => {
108
+ it("should reject a currency when NFT is not activated on it", () => __awaiter(void 0, void 0, void 0, function* () {
109
+ try {
110
+ yield (0, nftResolvers_1.collectionMetadata)({
111
+ contract: "0xWhatever",
112
+ currencyId: "bitcoin",
113
+ });
114
+ (0, assert_1.fail)("Promise should have been rejected");
115
+ }
116
+ catch (e) {
117
+ if (e instanceof assert_1.AssertionError) {
118
+ throw e;
119
+ }
120
+ expect(e).toBeInstanceOf(Error);
121
+ expect(e.message).toBe("Ethereum Bridge NFT Resolver: Unsupported currency");
122
+ }
123
+ }));
124
+ it("should not do any request if metadata are already provided", () => __awaiter(void 0, void 0, void 0, function* () {
125
+ const result = yield (0, nftResolvers_1.collectionMetadata)({
126
+ contract: "0xWhatever",
127
+ currencyId: "ethereum",
128
+ metadata,
129
+ });
130
+ expect(result).toEqual({
131
+ status: 200,
132
+ result: Object.assign({ contract: "0xWhatever" }, metadata),
133
+ });
134
+ expect(axios_1.default).not.toHaveBeenCalled();
135
+ }));
136
+ it("should return nft metadata", () => __awaiter(void 0, void 0, void 0, function* () {
137
+ mockedAxios.mockResolvedValueOnce({
138
+ data: [
139
+ {
140
+ status: 200,
141
+ result: {
142
+ contract: "0xWhatever",
143
+ tokenName: "CollectionName",
144
+ },
145
+ },
146
+ ],
147
+ });
148
+ const result = yield (0, nftResolvers_1.collectionMetadata)({
149
+ contract: "0xWhatever",
150
+ currencyId: "ethereum",
151
+ });
152
+ expect(result).toEqual({
153
+ status: 200,
154
+ result: {
155
+ contract: "0xWhatever",
156
+ tokenName: "CollectionName",
157
+ },
158
+ });
159
+ }));
160
+ });
161
+ });
162
+ });
163
+ //# sourceMappingURL=nftResolvers.unit.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"nftResolvers.unit.test.js","sourceRoot":"","sources":["../../../src/__tests__/unit/nftResolvers.unit.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"preload.unit.test.d.ts","sourceRoot":"","sources":["../../../src/__tests__/unit/preload.unit.test.ts"],"names":[],"mappings":""}
@@ -35,11 +35,11 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
35
35
  return (mod && mod.__esModule) ? mod : { "default": mod };
36
36
  };
37
37
  Object.defineProperty(exports, "__esModule", { value: true });
38
- const cryptoassets_1 = require("@ledgerhq/cryptoassets");
38
+ const network_1 = __importDefault(require("@ledgerhq/live-network/network"));
39
39
  const index_1 = __importDefault(require("@ledgerhq/cryptoassets/data/evm/index"));
40
40
  const CALTokensAPI = __importStar(require("@ledgerhq/cryptoassets/tokens"));
41
- const network_1 = __importDefault(require("@ledgerhq/live-network/network"));
42
- const preload_1 = require("../preload");
41
+ const cryptoassets_1 = require("@ledgerhq/cryptoassets");
42
+ const preload_1 = require("../../preload");
43
43
  const usdcDefinition = [
44
44
  "ethereum",
45
45
  "usd__coin",