@ledgerhq/live-common 27.1.0-next.3 → 27.1.0-next.4

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 (331) hide show
  1. package/lib/__tests__/currencies.js +1 -1
  2. package/lib/__tests__/currencies.js.map +1 -1
  3. package/lib/__tests__/test-helpers/environment.js +5 -0
  4. package/lib/__tests__/test-helpers/environment.js.map +1 -1
  5. package/lib/apps/logic.d.ts.map +1 -1
  6. package/lib/apps/logic.js +5 -1
  7. package/lib/apps/logic.js.map +1 -1
  8. package/lib/apps/mock.d.ts.map +1 -1
  9. package/lib/apps/mock.js +5 -1
  10. package/lib/apps/mock.js.map +1 -1
  11. package/lib/data/icons/react/flr.d.ts +8 -0
  12. package/lib/data/icons/react/flr.d.ts.map +1 -0
  13. package/lib/data/icons/react/flr.js +35 -0
  14. package/lib/data/icons/react/flr.js.map +1 -0
  15. package/lib/data/icons/react/ftm.d.ts +8 -0
  16. package/lib/data/icons/react/ftm.d.ts.map +1 -0
  17. package/lib/data/icons/react/ftm.js +35 -0
  18. package/lib/data/icons/react/ftm.js.map +1 -0
  19. package/lib/data/icons/react/glmr.d.ts +8 -0
  20. package/lib/data/icons/react/glmr.d.ts.map +1 -0
  21. package/lib/data/icons/react/glmr.js +49 -0
  22. package/lib/data/icons/react/glmr.js.map +1 -0
  23. package/lib/data/icons/react/index.d.ts +4 -0
  24. package/lib/data/icons/react/index.d.ts.map +1 -1
  25. package/lib/data/icons/react/index.js +15 -7
  26. package/lib/data/icons/react/index.js.map +1 -1
  27. package/lib/data/icons/react/sgb.d.ts +8 -0
  28. package/lib/data/icons/react/sgb.d.ts.map +1 -0
  29. package/lib/data/icons/react/sgb.js +41 -0
  30. package/lib/data/icons/react/sgb.js.map +1 -0
  31. package/lib/data/icons/reactNative/flr.d.ts +8 -0
  32. package/lib/data/icons/reactNative/flr.d.ts.map +1 -0
  33. package/lib/data/icons/reactNative/flr.js +36 -0
  34. package/lib/data/icons/reactNative/flr.js.map +1 -0
  35. package/lib/data/icons/reactNative/ftm.d.ts +8 -0
  36. package/lib/data/icons/reactNative/ftm.d.ts.map +1 -0
  37. package/lib/data/icons/reactNative/ftm.js +36 -0
  38. package/lib/data/icons/reactNative/ftm.js.map +1 -0
  39. package/lib/data/icons/reactNative/glmr.d.ts +8 -0
  40. package/lib/data/icons/reactNative/glmr.d.ts.map +1 -0
  41. package/lib/data/icons/reactNative/glmr.js +50 -0
  42. package/lib/data/icons/reactNative/glmr.js.map +1 -0
  43. package/lib/data/icons/reactNative/index.d.ts +4 -0
  44. package/lib/data/icons/reactNative/index.d.ts.map +1 -1
  45. package/lib/data/icons/reactNative/index.js +15 -7
  46. package/lib/data/icons/reactNative/index.js.map +1 -1
  47. package/lib/data/icons/reactNative/sgb.d.ts +8 -0
  48. package/lib/data/icons/reactNative/sgb.d.ts.map +1 -0
  49. package/lib/data/icons/reactNative/sgb.js +42 -0
  50. package/lib/data/icons/reactNative/sgb.js.map +1 -0
  51. package/lib/families/bitcoin/satstack.js +1 -1
  52. package/lib/families/bitcoin/satstack.js.map +1 -1
  53. package/lib/families/ethereum/modules/compound.js +1 -1
  54. package/lib/families/ethereum/modules/compound.js.map +1 -1
  55. package/lib/families/evm/__tests__/adapters.unit.test.d.ts +2 -0
  56. package/lib/families/evm/__tests__/adapters.unit.test.d.ts.map +1 -0
  57. package/lib/families/evm/__tests__/adapters.unit.test.js +130 -0
  58. package/lib/families/evm/__tests__/adapters.unit.test.js.map +1 -0
  59. package/lib/families/evm/__tests__/broadcast.unit.test.d.ts +2 -0
  60. package/lib/families/evm/__tests__/broadcast.unit.test.d.ts.map +1 -0
  61. package/lib/families/evm/__tests__/broadcast.unit.test.js +151 -0
  62. package/lib/families/evm/__tests__/broadcast.unit.test.js.map +1 -0
  63. package/lib/families/evm/__tests__/buildOptimisticOperation.unit.test.d.ts +2 -0
  64. package/lib/families/evm/__tests__/buildOptimisticOperation.unit.test.d.ts.map +1 -0
  65. package/lib/families/evm/__tests__/buildOptimisticOperation.unit.test.js +56 -0
  66. package/lib/families/evm/__tests__/buildOptimisticOperation.unit.test.js.map +1 -0
  67. package/lib/families/evm/__tests__/deviceTransactionConfig.unit.test.d.ts +2 -0
  68. package/lib/families/evm/__tests__/deviceTransactionConfig.unit.test.d.ts.map +1 -0
  69. package/lib/families/evm/__tests__/deviceTransactionConfig.unit.test.js +95 -0
  70. package/lib/families/evm/__tests__/deviceTransactionConfig.unit.test.js.map +1 -0
  71. package/lib/families/evm/__tests__/estimateMaxSpendable.unit.test.d.ts +2 -0
  72. package/lib/families/evm/__tests__/estimateMaxSpendable.unit.test.d.ts.map +1 -0
  73. package/lib/families/evm/__tests__/estimateMaxSpendable.unit.test.js +120 -0
  74. package/lib/families/evm/__tests__/estimateMaxSpendable.unit.test.js.map +1 -0
  75. package/lib/families/evm/__tests__/getTransactionStatus.unit.test.d.ts +2 -0
  76. package/lib/families/evm/__tests__/getTransactionStatus.unit.test.d.ts.map +1 -0
  77. package/lib/families/evm/__tests__/getTransactionStatus.unit.test.js +386 -0
  78. package/lib/families/evm/__tests__/getTransactionStatus.unit.test.js.map +1 -0
  79. package/lib/families/evm/__tests__/hw-getAddress.unit.test.d.ts +2 -0
  80. package/lib/families/evm/__tests__/hw-getAddress.unit.test.d.ts.map +1 -0
  81. package/lib/families/evm/__tests__/hw-getAddress.unit.test.js +78 -0
  82. package/lib/families/evm/__tests__/hw-getAddress.unit.test.js.map +1 -0
  83. package/lib/families/evm/__tests__/logic.unit.test.d.ts +2 -0
  84. package/lib/families/evm/__tests__/logic.unit.test.d.ts.map +1 -0
  85. package/lib/families/evm/__tests__/logic.unit.test.js +86 -0
  86. package/lib/families/evm/__tests__/logic.unit.test.js.map +1 -0
  87. package/lib/families/evm/__tests__/prepareTransaction.unit.test.d.ts +2 -0
  88. package/lib/families/evm/__tests__/prepareTransaction.unit.test.d.ts.map +1 -0
  89. package/lib/families/evm/__tests__/prepareTransaction.unit.test.js +181 -0
  90. package/lib/families/evm/__tests__/prepareTransaction.unit.test.js.map +1 -0
  91. package/lib/families/evm/__tests__/rpc.unit.test.d.ts +2 -0
  92. package/lib/families/evm/__tests__/rpc.unit.test.d.ts.map +1 -0
  93. package/lib/families/evm/__tests__/rpc.unit.test.js +135 -0
  94. package/lib/families/evm/__tests__/rpc.unit.test.js.map +1 -0
  95. package/lib/families/evm/__tests__/signOperation.unit.test.d.ts +2 -0
  96. package/lib/families/evm/__tests__/signOperation.unit.test.d.ts.map +1 -0
  97. package/lib/families/evm/__tests__/signOperation.unit.test.js +168 -0
  98. package/lib/families/evm/__tests__/signOperation.unit.test.js.map +1 -0
  99. package/lib/families/evm/__tests__/synchronization.unit.test.d.ts +2 -0
  100. package/lib/families/evm/__tests__/synchronization.unit.test.d.ts.map +1 -0
  101. package/lib/families/evm/__tests__/synchronization.unit.test.js +274 -0
  102. package/lib/families/evm/__tests__/synchronization.unit.test.js.map +1 -0
  103. package/lib/families/evm/__tests__/transaction.unit.test.d.ts +2 -0
  104. package/lib/families/evm/__tests__/transaction.unit.test.d.ts.map +1 -0
  105. package/lib/families/evm/__tests__/transaction.unit.test.js +218 -0
  106. package/lib/families/evm/__tests__/transaction.unit.test.js.map +1 -0
  107. package/lib/families/evm/adapters.d.ts +12 -0
  108. package/lib/families/evm/adapters.d.ts.map +1 -0
  109. package/lib/families/evm/adapters.js +86 -0
  110. package/lib/families/evm/adapters.js.map +1 -0
  111. package/lib/families/evm/api/etherscan.d.ts +11 -0
  112. package/lib/families/evm/api/etherscan.d.ts.map +1 -0
  113. package/lib/families/evm/api/etherscan.js +85 -0
  114. package/lib/families/evm/api/etherscan.js.map +1 -0
  115. package/lib/families/evm/api/rpc.android.d.ts +6 -0
  116. package/lib/families/evm/api/rpc.android.d.ts.map +1 -0
  117. package/lib/families/evm/api/rpc.android.js +35 -0
  118. package/lib/families/evm/api/rpc.android.js.map +1 -0
  119. package/lib/families/evm/api/rpc.common.d.ts +73 -0
  120. package/lib/families/evm/api/rpc.common.d.ts.map +1 -0
  121. package/lib/families/evm/api/rpc.common.js +241 -0
  122. package/lib/families/evm/api/rpc.common.js.map +1 -0
  123. package/lib/families/evm/api/rpc.d.ts +3 -0
  124. package/lib/families/evm/api/rpc.d.ts.map +1 -0
  125. package/lib/families/evm/api/rpc.ios.d.ts +6 -0
  126. package/lib/families/evm/api/rpc.ios.d.ts.map +1 -0
  127. package/lib/families/evm/api/rpc.ios.js +35 -0
  128. package/lib/families/evm/api/rpc.ios.js.map +1 -0
  129. package/lib/families/evm/api/rpc.js +32 -0
  130. package/lib/families/evm/api/rpc.js.map +1 -0
  131. package/lib/families/evm/bridge/js.d.ts +8 -0
  132. package/lib/families/evm/bridge/js.d.ts.map +1 -0
  133. package/lib/families/evm/bridge/js.js +86 -0
  134. package/lib/families/evm/bridge/js.js.map +1 -0
  135. package/lib/families/evm/bridge.integration.test.d.ts +2 -0
  136. package/lib/families/evm/bridge.integration.test.d.ts.map +1 -0
  137. package/lib/families/evm/bridge.integration.test.js +52 -0
  138. package/lib/families/evm/bridge.integration.test.js.map +1 -0
  139. package/lib/families/evm/broadcast.d.ts +8 -0
  140. package/lib/families/evm/broadcast.d.ts.map +1 -0
  141. package/lib/families/evm/broadcast.js +72 -0
  142. package/lib/families/evm/broadcast.js.map +1 -0
  143. package/lib/families/evm/buildOptimisticOperation.d.ts +8 -0
  144. package/lib/families/evm/buildOptimisticOperation.d.ts.map +1 -0
  145. package/lib/families/evm/buildOptimisticOperation.js +37 -0
  146. package/lib/families/evm/buildOptimisticOperation.js.map +1 -0
  147. package/lib/families/evm/createTransaction.d.ts +9 -0
  148. package/lib/families/evm/createTransaction.d.ts.map +1 -0
  149. package/lib/families/evm/createTransaction.js +31 -0
  150. package/lib/families/evm/createTransaction.js.map +1 -0
  151. package/lib/families/evm/datasets/ethereum.scanAccounts.1.d.ts +7 -0
  152. package/lib/families/evm/datasets/ethereum.scanAccounts.1.d.ts.map +1 -0
  153. package/lib/families/evm/datasets/ethereum.scanAccounts.1.js +8 -0
  154. package/lib/families/evm/datasets/ethereum.scanAccounts.1.js.map +1 -0
  155. package/lib/families/evm/datasets/ethereum1.d.ts +3 -0
  156. package/lib/families/evm/datasets/ethereum1.d.ts.map +1 -0
  157. package/lib/families/evm/datasets/ethereum1.js +22 -0
  158. package/lib/families/evm/datasets/ethereum1.js.map +1 -0
  159. package/lib/families/evm/datasets/ethereum2.d.ts +3 -0
  160. package/lib/families/evm/datasets/ethereum2.d.ts.map +1 -0
  161. package/lib/families/evm/datasets/ethereum2.js +22 -0
  162. package/lib/families/evm/datasets/ethereum2.js.map +1 -0
  163. package/lib/families/evm/datasets/ethereum_classic.d.ts +5 -0
  164. package/lib/families/evm/datasets/ethereum_classic.d.ts.map +1 -0
  165. package/lib/families/evm/datasets/ethereum_classic.js +12 -0
  166. package/lib/families/evm/datasets/ethereum_classic.js.map +1 -0
  167. package/lib/families/evm/deviceTransactionConfig.d.ts +11 -0
  168. package/lib/families/evm/deviceTransactionConfig.d.ts.map +1 -0
  169. package/lib/families/evm/deviceTransactionConfig.js +31 -0
  170. package/lib/families/evm/deviceTransactionConfig.js.map +1 -0
  171. package/lib/families/evm/estimateMaxSpendable.d.ts +4 -0
  172. package/lib/families/evm/estimateMaxSpendable.d.ts.map +1 -0
  173. package/lib/families/evm/estimateMaxSpendable.js +75 -0
  174. package/lib/families/evm/estimateMaxSpendable.js.map +1 -0
  175. package/lib/families/evm/getTransactionStatus.d.ts +23 -0
  176. package/lib/families/evm/getTransactionStatus.d.ts.map +1 -0
  177. package/lib/families/evm/getTransactionStatus.js +143 -0
  178. package/lib/families/evm/getTransactionStatus.js.map +1 -0
  179. package/lib/families/evm/hw-getAddress.d.ts +7 -0
  180. package/lib/families/evm/hw-getAddress.d.ts.map +1 -0
  181. package/lib/families/evm/hw-getAddress.js +69 -0
  182. package/lib/families/evm/hw-getAddress.js.map +1 -0
  183. package/lib/families/evm/logic.d.ts +15 -0
  184. package/lib/families/evm/logic.d.ts.map +1 -0
  185. package/lib/families/evm/logic.js +35 -0
  186. package/lib/families/evm/logic.js.map +1 -0
  187. package/lib/families/evm/prepareTransaction.d.ts +4 -0
  188. package/lib/families/evm/prepareTransaction.d.ts.map +1 -0
  189. package/lib/families/evm/prepareTransaction.js +126 -0
  190. package/lib/families/evm/prepareTransaction.js.map +1 -0
  191. package/lib/families/evm/signOperation.d.ts +13 -0
  192. package/lib/families/evm/signOperation.d.ts.map +1 -0
  193. package/lib/families/evm/signOperation.js +122 -0
  194. package/lib/families/evm/signOperation.js.map +1 -0
  195. package/lib/families/evm/specs.d.ts +11 -0
  196. package/lib/families/evm/specs.d.ts.map +1 -0
  197. package/lib/families/evm/specs.js +128 -0
  198. package/lib/families/evm/specs.js.map +1 -0
  199. package/lib/families/evm/speculos-deviceActions.d.ts +8 -0
  200. package/lib/families/evm/speculos-deviceActions.d.ts.map +1 -0
  201. package/lib/families/evm/speculos-deviceActions.js +99 -0
  202. package/lib/families/evm/speculos-deviceActions.js.map +1 -0
  203. package/lib/families/evm/synchronization.d.ts +20 -0
  204. package/lib/families/evm/synchronization.d.ts.map +1 -0
  205. package/lib/families/evm/synchronization.js +209 -0
  206. package/lib/families/evm/synchronization.js.map +1 -0
  207. package/lib/families/evm/testUtils.d.ts +4 -0
  208. package/lib/families/evm/testUtils.d.ts.map +1 -0
  209. package/lib/families/evm/testUtils.js +69 -0
  210. package/lib/families/evm/testUtils.js.map +1 -0
  211. package/lib/families/evm/transaction.d.ts +30 -0
  212. package/lib/families/evm/transaction.d.ts.map +1 -0
  213. package/lib/families/evm/transaction.js +142 -0
  214. package/lib/families/evm/transaction.js.map +1 -0
  215. package/lib/families/evm/types.d.ts +69 -0
  216. package/lib/families/evm/types.d.ts.map +1 -0
  217. package/lib/families/evm/types.js +3 -0
  218. package/lib/families/evm/types.js.map +1 -0
  219. package/lib/families/hedera/api/mirror.js +1 -1
  220. package/lib/families/hedera/api/mirror.js.map +1 -1
  221. package/lib/families/solana/api/chain/instruction/stake/types.d.ts +2 -2
  222. package/lib/families/solana/api/chain/instruction/token/types.d.ts +2 -2
  223. package/lib/featureFlags/defaultFeatures.d.ts.map +1 -1
  224. package/lib/featureFlags/defaultFeatures.js +36 -0
  225. package/lib/featureFlags/defaultFeatures.js.map +1 -1
  226. package/lib/generated/bridge/js.d.ts +4 -0
  227. package/lib/generated/bridge/js.d.ts.map +1 -1
  228. package/lib/generated/bridge/js.js +22 -20
  229. package/lib/generated/bridge/js.js.map +1 -1
  230. package/lib/generated/deviceTransactionConfig.d.ts +2 -0
  231. package/lib/generated/deviceTransactionConfig.d.ts.map +1 -1
  232. package/lib/generated/deviceTransactionConfig.js +20 -18
  233. package/lib/generated/deviceTransactionConfig.js.map +1 -1
  234. package/lib/generated/hw-getAddress.d.ts +1 -0
  235. package/lib/generated/hw-getAddress.d.ts.map +1 -1
  236. package/lib/generated/hw-getAddress.js +22 -20
  237. package/lib/generated/hw-getAddress.js.map +1 -1
  238. package/lib/generated/specs.d.ts +7 -0
  239. package/lib/generated/specs.d.ts.map +1 -1
  240. package/lib/generated/specs.js +20 -18
  241. package/lib/generated/specs.js.map +1 -1
  242. package/lib/generated/transaction.d.ts +9 -0
  243. package/lib/generated/transaction.d.ts.map +1 -1
  244. package/lib/generated/transaction.js +22 -20
  245. package/lib/generated/transaction.js.map +1 -1
  246. package/lib/generated/types.d.ts +8 -4
  247. package/lib/generated/types.d.ts.map +1 -1
  248. package/lib/mock/account.d.ts.map +1 -1
  249. package/lib/mock/account.js +5 -1
  250. package/lib/mock/account.js.map +1 -1
  251. package/lib/network.d.ts +1 -1
  252. package/lib/network.d.ts.map +1 -1
  253. package/lib/network.js.map +1 -1
  254. package/lib/platform/providers/RemoteLiveAppProvider/api/index.d.ts +1 -1
  255. package/lib/platform/providers/RemoteLiveAppProvider/api/index.d.ts.map +1 -1
  256. package/lib/platform/providers/RemoteLiveAppProvider/api/index.js.map +1 -1
  257. package/package.json +4 -1
  258. package/src/__tests__/currencies.ts +1 -1
  259. package/src/__tests__/test-helpers/environment.ts +5 -0
  260. package/src/apps/logic.ts +5 -1
  261. package/src/apps/mock.ts +5 -1
  262. package/src/currencies/__snapshots__/sortByMarketcap.test.ts.snap +5 -1
  263. package/src/data/icons/react/flr.tsx +14 -0
  264. package/src/data/icons/react/ftm.tsx +14 -0
  265. package/src/data/icons/react/glmr.tsx +14 -0
  266. package/src/data/icons/react/index.tsx +4 -0
  267. package/src/data/icons/react/sgb.tsx +14 -0
  268. package/src/data/icons/reactNative/flr.tsx +15 -0
  269. package/src/data/icons/reactNative/ftm.tsx +15 -0
  270. package/src/data/icons/reactNative/glmr.tsx +15 -0
  271. package/src/data/icons/reactNative/index.tsx +4 -0
  272. package/src/data/icons/reactNative/sgb.tsx +15 -0
  273. package/src/data/icons/svg/FLR.svg +4 -0
  274. package/src/data/icons/svg/FTM.svg +3 -0
  275. package/src/data/icons/svg/GLMR.svg +18 -0
  276. package/src/data/icons/svg/SGB.svg +28 -0
  277. package/src/families/bitcoin/satstack.ts +1 -1
  278. package/src/families/ethereum/modules/compound.ts +1 -1
  279. package/src/families/evm/__snapshots__/bridge.integration.test.ts.snap +3263 -0
  280. package/src/families/evm/__tests__/adapters.unit.test.ts +156 -0
  281. package/src/families/evm/__tests__/broadcast.unit.test.ts +86 -0
  282. package/src/families/evm/__tests__/buildOptimisticOperation.unit.test.ts +58 -0
  283. package/src/families/evm/__tests__/deviceTransactionConfig.unit.test.ts +53 -0
  284. package/src/families/evm/__tests__/estimateMaxSpendable.unit.test.ts +61 -0
  285. package/src/families/evm/__tests__/getTransactionStatus.unit.test.ts +314 -0
  286. package/src/families/evm/__tests__/hw-getAddress.unit.test.ts +24 -0
  287. package/src/families/evm/__tests__/logic.unit.test.ts +103 -0
  288. package/src/families/evm/__tests__/prepareTransaction.unit.test.ts +102 -0
  289. package/src/families/evm/__tests__/rpc.unit.test.ts +56 -0
  290. package/src/families/evm/__tests__/signOperation.unit.test.ts +108 -0
  291. package/src/families/evm/__tests__/synchronization.unit.test.ts +201 -0
  292. package/src/families/evm/__tests__/transaction.unit.test.ts +165 -0
  293. package/src/families/evm/adapters.ts +102 -0
  294. package/src/families/evm/api/etherscan.ts +51 -0
  295. package/src/families/evm/api/rpc.android.ts +5 -0
  296. package/src/families/evm/api/rpc.common.ts +168 -0
  297. package/src/families/evm/api/rpc.ios.ts +5 -0
  298. package/src/families/evm/api/rpc.ts +2 -0
  299. package/src/families/evm/bridge/js.ts +46 -0
  300. package/src/families/evm/bridge.integration.test.ts +51 -0
  301. package/src/families/evm/broadcast.ts +28 -0
  302. package/src/families/evm/buildOptimisticOperation.ts +38 -0
  303. package/src/families/evm/createTransaction.ts +24 -0
  304. package/src/families/evm/datasets/ethereum.scanAccounts.1.ts +48 -0
  305. package/src/families/evm/datasets/ethereum1.ts +20 -0
  306. package/src/families/evm/datasets/ethereum2.ts +20 -0
  307. package/src/families/evm/datasets/ethereum_classic.ts +68 -0
  308. package/src/families/evm/deviceTransactionConfig.ts +47 -0
  309. package/src/families/evm/estimateMaxSpendable.ts +18 -0
  310. package/src/families/evm/getTransactionStatus.ts +164 -0
  311. package/src/families/evm/hw-getAddress.ts +24 -0
  312. package/src/families/evm/logic.ts +34 -0
  313. package/src/families/evm/prepareTransaction.ts +77 -0
  314. package/src/families/evm/signOperation.ts +108 -0
  315. package/src/families/evm/specs.ts +141 -0
  316. package/src/families/evm/speculos-deviceActions.ts +106 -0
  317. package/src/families/evm/synchronization.ts +137 -0
  318. package/src/families/evm/testUtils.ts +74 -0
  319. package/src/families/evm/transaction.ts +135 -0
  320. package/src/families/evm/types.ts +84 -0
  321. package/src/families/hedera/api/mirror.ts +1 -1
  322. package/src/featureFlags/defaultFeatures.ts +36 -0
  323. package/src/generated/bridge/js.ts +2 -0
  324. package/src/generated/deviceTransactionConfig.ts +2 -0
  325. package/src/generated/hw-getAddress.ts +2 -0
  326. package/src/generated/specs.ts +2 -0
  327. package/src/generated/transaction.ts +2 -0
  328. package/src/generated/types.ts +8 -0
  329. package/src/mock/account.ts +4 -1
  330. package/src/network.ts +1 -1
  331. package/src/platform/providers/RemoteLiveAppProvider/api/index.ts +3 -1
@@ -0,0 +1,386 @@
1
+ "use strict";
2
+ var __assign = (this && this.__assign) || function () {
3
+ __assign = Object.assign || function(t) {
4
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
5
+ s = arguments[i];
6
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
+ t[p] = s[p];
8
+ }
9
+ return t;
10
+ };
11
+ return __assign.apply(this, arguments);
12
+ };
13
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
14
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
15
+ return new (P || (P = Promise))(function (resolve, reject) {
16
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
17
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
18
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
19
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
20
+ });
21
+ };
22
+ var __generator = (this && this.__generator) || function (thisArg, body) {
23
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
24
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
25
+ function verb(n) { return function (v) { return step([n, v]); }; }
26
+ function step(op) {
27
+ if (f) throw new TypeError("Generator is already executing.");
28
+ while (_) try {
29
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
30
+ if (y = 0, t) op = [op[0] & 2, t.value];
31
+ switch (op[0]) {
32
+ case 0: case 1: t = op; break;
33
+ case 4: _.label++; return { value: op[1], done: false };
34
+ case 5: _.label++; y = op[1]; op = [0]; continue;
35
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
36
+ default:
37
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
38
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
39
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
40
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
41
+ if (t[2]) _.ops.pop();
42
+ _.trys.pop(); continue;
43
+ }
44
+ op = body.call(thisArg, _);
45
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
46
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
47
+ }
48
+ };
49
+ var __importDefault = (this && this.__importDefault) || function (mod) {
50
+ return (mod && mod.__esModule) ? mod : { "default": mod };
51
+ };
52
+ exports.__esModule = true;
53
+ /* eslint-disable @typescript-eslint/ban-ts-comment */
54
+ var bignumber_js_1 = __importDefault(require("bignumber.js"));
55
+ var cryptoassets_1 = require("@ledgerhq/cryptoassets");
56
+ var errors_1 = require("@ledgerhq/errors");
57
+ var getTransactionStatus_1 = __importDefault(require("../getTransactionStatus"));
58
+ var testUtils_1 = require("../testUtils");
59
+ var recipient = "0xe2ca7390e76c5A992749bB622087310d2e63ca29"; // rambo.eth
60
+ var testData = Buffer.from("testBufferString").toString("hex");
61
+ var account = (0, testUtils_1.makeAccount)("0xkvn", (0, cryptoassets_1.findCryptoCurrencyById)("ethereum"));
62
+ var legacyTx = {
63
+ amount: new bignumber_js_1["default"](100),
64
+ useAllAmount: false,
65
+ subAccountId: "id",
66
+ recipient: recipient,
67
+ feesStrategy: "custom",
68
+ family: "evm",
69
+ mode: "send",
70
+ nonce: 0,
71
+ gasLimit: new bignumber_js_1["default"](21000),
72
+ chainId: 1,
73
+ data: Buffer.from(testData, "hex"),
74
+ gasPrice: new bignumber_js_1["default"](100),
75
+ type: 0
76
+ };
77
+ var eip1559Tx = {
78
+ amount: new bignumber_js_1["default"](100),
79
+ useAllAmount: false,
80
+ subAccountId: "id",
81
+ recipient: recipient,
82
+ feesStrategy: "custom",
83
+ family: "evm",
84
+ mode: "send",
85
+ nonce: 0,
86
+ gasLimit: new bignumber_js_1["default"](21000),
87
+ chainId: 1,
88
+ data: Buffer.from(testData, "hex"),
89
+ maxFeePerGas: new bignumber_js_1["default"](100),
90
+ maxPriorityFeePerGas: new bignumber_js_1["default"](100),
91
+ type: 2
92
+ };
93
+ describe("EVM Family", function () {
94
+ describe("getTransactionStatus.ts", function () {
95
+ describe("Recipient", function () {
96
+ it("should detect the missing recipient and have an error", function () { return __awaiter(void 0, void 0, void 0, function () {
97
+ var tx, res;
98
+ return __generator(this, function (_a) {
99
+ switch (_a.label) {
100
+ case 0:
101
+ tx = __assign(__assign({}, eip1559Tx), { recipient: "" });
102
+ return [4 /*yield*/, (0, getTransactionStatus_1["default"])(account, tx)];
103
+ case 1:
104
+ res = _a.sent();
105
+ expect(res.errors).toEqual(expect.objectContaining({
106
+ recipient: new errors_1.RecipientRequired()
107
+ }));
108
+ return [2 /*return*/];
109
+ }
110
+ });
111
+ }); });
112
+ it("should detect the incorrect recipient not being an eth address and have an error", function () { return __awaiter(void 0, void 0, void 0, function () {
113
+ var tx, res;
114
+ return __generator(this, function (_a) {
115
+ switch (_a.label) {
116
+ case 0:
117
+ tx = __assign(__assign({}, eip1559Tx), { recipient: "0xkvn" });
118
+ return [4 /*yield*/, (0, getTransactionStatus_1["default"])(account, tx)];
119
+ case 1:
120
+ res = _a.sent();
121
+ expect(res.errors).toEqual(expect.objectContaining({
122
+ recipient: new errors_1.InvalidAddress("", {
123
+ currency: account.currency
124
+ })
125
+ }));
126
+ return [2 /*return*/];
127
+ }
128
+ });
129
+ }); });
130
+ it("should detect the recipient being an ICAP and have an error", function () { return __awaiter(void 0, void 0, void 0, function () {
131
+ var tx, res;
132
+ return __generator(this, function (_a) {
133
+ switch (_a.label) {
134
+ case 0:
135
+ tx = __assign(__assign({}, eip1559Tx), { recipient: "XE89MW3Y75UITCQ4F53YDKR25UFLB1640YM" });
136
+ return [4 /*yield*/, (0, getTransactionStatus_1["default"])(account, tx)];
137
+ case 1:
138
+ res = _a.sent();
139
+ expect(res.errors).toEqual(expect.objectContaining({
140
+ recipient: new errors_1.InvalidAddress("", {
141
+ currency: account.currency
142
+ })
143
+ }));
144
+ return [2 /*return*/];
145
+ }
146
+ });
147
+ }); });
148
+ it("should detect the recipient not being an EIP55 address and have an warning", function () { return __awaiter(void 0, void 0, void 0, function () {
149
+ var tx, res;
150
+ return __generator(this, function (_a) {
151
+ switch (_a.label) {
152
+ case 0:
153
+ tx = __assign(__assign({}, eip1559Tx), { recipient: recipient.toLowerCase() });
154
+ return [4 /*yield*/, (0, getTransactionStatus_1["default"])(account, tx)];
155
+ case 1:
156
+ res = _a.sent();
157
+ expect(res.warnings).toEqual(expect.objectContaining({
158
+ recipient: new errors_1.ETHAddressNonEIP()
159
+ }));
160
+ return [2 /*return*/];
161
+ }
162
+ });
163
+ }); });
164
+ });
165
+ describe("Amount", function () {
166
+ it("should detect tx without amount and have an error", function () { return __awaiter(void 0, void 0, void 0, function () {
167
+ var tx, res;
168
+ return __generator(this, function (_a) {
169
+ switch (_a.label) {
170
+ case 0:
171
+ tx = __assign(__assign({}, eip1559Tx), { amount: undefined });
172
+ return [4 /*yield*/, (0, getTransactionStatus_1["default"])(account, tx)];
173
+ case 1:
174
+ res = _a.sent();
175
+ expect(res.errors).toEqual(expect.objectContaining({
176
+ amount: new errors_1.AmountRequired()
177
+ }));
178
+ return [2 /*return*/];
179
+ }
180
+ });
181
+ }); });
182
+ it("should detect account not having enough balance for a tx and have an error", function () { return __awaiter(void 0, void 0, void 0, function () {
183
+ var res;
184
+ return __generator(this, function (_a) {
185
+ switch (_a.label) {
186
+ case 0: return [4 /*yield*/, (0, getTransactionStatus_1["default"])(__assign(__assign({}, account), { balance: new bignumber_js_1["default"](0) }), eip1559Tx)];
187
+ case 1:
188
+ res = _a.sent();
189
+ expect(res.errors).toEqual(expect.objectContaining({
190
+ amount: new errors_1.NotEnoughBalance()
191
+ }));
192
+ return [2 /*return*/];
193
+ }
194
+ });
195
+ }); });
196
+ });
197
+ describe("Gas", function () {
198
+ it("should detect missing fees in a 1559 tx and have an error", function () { return __awaiter(void 0, void 0, void 0, function () {
199
+ var tx, res;
200
+ return __generator(this, function (_a) {
201
+ switch (_a.label) {
202
+ case 0:
203
+ tx = __assign(__assign({}, eip1559Tx), { maxFeePerGas: undefined });
204
+ return [4 /*yield*/, (0, getTransactionStatus_1["default"])(account, tx)];
205
+ case 1:
206
+ res = _a.sent();
207
+ expect(res.errors).toEqual(expect.objectContaining({
208
+ gasPrice: new errors_1.FeeNotLoaded()
209
+ }));
210
+ return [2 /*return*/];
211
+ }
212
+ });
213
+ }); });
214
+ it("should detect missing fees in a legacy tx and have an error", function () { return __awaiter(void 0, void 0, void 0, function () {
215
+ var tx, res;
216
+ return __generator(this, function (_a) {
217
+ switch (_a.label) {
218
+ case 0:
219
+ tx = __assign(__assign({}, legacyTx), { gasPrice: undefined });
220
+ return [4 /*yield*/, (0, getTransactionStatus_1["default"])(account, tx)];
221
+ case 1:
222
+ res = _a.sent();
223
+ expect(res.errors).toEqual(expect.objectContaining({
224
+ gasPrice: new errors_1.FeeNotLoaded()
225
+ }));
226
+ return [2 /*return*/];
227
+ }
228
+ });
229
+ }); });
230
+ it("should detect gas limit being too low in a tx and have an error", function () { return __awaiter(void 0, void 0, void 0, function () {
231
+ var tx, res;
232
+ return __generator(this, function (_a) {
233
+ switch (_a.label) {
234
+ case 0:
235
+ tx = __assign(__assign({}, eip1559Tx), { gasLimit: new bignumber_js_1["default"](20000) });
236
+ return [4 /*yield*/, (0, getTransactionStatus_1["default"])(account, tx)];
237
+ case 1:
238
+ res = _a.sent();
239
+ expect(res.errors).toEqual(expect.objectContaining({
240
+ gasLimit: new errors_1.GasLessThanEstimate()
241
+ }));
242
+ return [2 /*return*/];
243
+ }
244
+ });
245
+ }); });
246
+ it("should detect gas being too high in a 1559 tx for the account balance and have an error", function () { return __awaiter(void 0, void 0, void 0, function () {
247
+ var notEnoughBalanceResponse, enoughhBalanceResponse;
248
+ return __generator(this, function (_a) {
249
+ switch (_a.label) {
250
+ case 0: return [4 /*yield*/, (0, getTransactionStatus_1["default"])(__assign(__assign({}, account), { balance: new bignumber_js_1["default"](2099999) }), eip1559Tx)];
251
+ case 1:
252
+ notEnoughBalanceResponse = _a.sent();
253
+ return [4 /*yield*/, (0, getTransactionStatus_1["default"])(__assign(__assign({}, account), { balance: new bignumber_js_1["default"](2100000) }), eip1559Tx)];
254
+ case 2:
255
+ enoughhBalanceResponse = _a.sent();
256
+ expect(notEnoughBalanceResponse.errors).toEqual(expect.objectContaining({
257
+ gasPrice: new errors_1.NotEnoughGas()
258
+ }));
259
+ expect(enoughhBalanceResponse.errors).not.toEqual(expect.objectContaining({
260
+ gasPrice: new errors_1.NotEnoughGas()
261
+ }));
262
+ return [2 /*return*/];
263
+ }
264
+ });
265
+ }); });
266
+ it("should detect gas being too high in a legacy tx for the account balance and have an error", function () { return __awaiter(void 0, void 0, void 0, function () {
267
+ var notEnoughBalanceResponse, enoughhBalanceResponse;
268
+ return __generator(this, function (_a) {
269
+ switch (_a.label) {
270
+ case 0: return [4 /*yield*/, (0, getTransactionStatus_1["default"])(__assign(__assign({}, account), { balance: new bignumber_js_1["default"](2099999) }), legacyTx)];
271
+ case 1:
272
+ notEnoughBalanceResponse = _a.sent();
273
+ return [4 /*yield*/, (0, getTransactionStatus_1["default"])(__assign(__assign({}, account), { balance: new bignumber_js_1["default"](2100001) }), legacyTx)];
274
+ case 2:
275
+ enoughhBalanceResponse = _a.sent();
276
+ expect(notEnoughBalanceResponse.errors).toEqual(expect.objectContaining({
277
+ gasPrice: new errors_1.NotEnoughGas()
278
+ }));
279
+ expect(enoughhBalanceResponse.errors).not.toEqual(expect.objectContaining({
280
+ gasPrice: new errors_1.NotEnoughGas()
281
+ }));
282
+ return [2 /*return*/];
283
+ }
284
+ });
285
+ }); });
286
+ it("should not detect gas being too high in a 1559 tx when there is no recipient and have an error", function () { return __awaiter(void 0, void 0, void 0, function () {
287
+ var notEnoughBalanceResponse, enoughhBalanceResponse;
288
+ return __generator(this, function (_a) {
289
+ switch (_a.label) {
290
+ case 0: return [4 /*yield*/, (0, getTransactionStatus_1["default"])(__assign(__assign({}, account), { balance: new bignumber_js_1["default"](2099999) }), __assign(__assign({}, eip1559Tx), { recipient: "" }))];
291
+ case 1:
292
+ notEnoughBalanceResponse = _a.sent();
293
+ return [4 /*yield*/, (0, getTransactionStatus_1["default"])(__assign(__assign({}, account), { balance: new bignumber_js_1["default"](2100000) }), __assign(__assign({}, eip1559Tx), { recipient: "" }))];
294
+ case 2:
295
+ enoughhBalanceResponse = _a.sent();
296
+ expect(notEnoughBalanceResponse.errors).not.toEqual(expect.objectContaining({
297
+ gasPrice: new errors_1.NotEnoughGas()
298
+ }));
299
+ expect(enoughhBalanceResponse.errors).not.toEqual(expect.objectContaining({
300
+ gasPrice: new errors_1.NotEnoughGas()
301
+ }));
302
+ return [2 /*return*/];
303
+ }
304
+ });
305
+ }); });
306
+ it("should not detect gas being too high in a legacy tx when there is no recipient and have an error", function () { return __awaiter(void 0, void 0, void 0, function () {
307
+ var notEnoughBalanceResponse, enoughhBalanceResponse;
308
+ return __generator(this, function (_a) {
309
+ switch (_a.label) {
310
+ case 0: return [4 /*yield*/, (0, getTransactionStatus_1["default"])(__assign(__assign({}, account), { balance: new bignumber_js_1["default"](2099999) }), __assign(__assign({}, legacyTx), { recipient: "" }))];
311
+ case 1:
312
+ notEnoughBalanceResponse = _a.sent();
313
+ return [4 /*yield*/, (0, getTransactionStatus_1["default"])(__assign(__assign({}, account), { balance: new bignumber_js_1["default"](2100001) }), __assign(__assign({}, legacyTx), { recipient: "" }))];
314
+ case 2:
315
+ enoughhBalanceResponse = _a.sent();
316
+ expect(notEnoughBalanceResponse.errors).not.toEqual(expect.objectContaining({
317
+ gasPrice: new errors_1.NotEnoughGas()
318
+ }));
319
+ expect(enoughhBalanceResponse.errors).not.toEqual(expect.objectContaining({
320
+ gasPrice: new errors_1.NotEnoughGas()
321
+ }));
322
+ return [2 /*return*/];
323
+ }
324
+ });
325
+ }); });
326
+ });
327
+ describe("Global return", function () {
328
+ it("should return the expected informations", function () { return __awaiter(void 0, void 0, void 0, function () {
329
+ var res;
330
+ return __generator(this, function (_a) {
331
+ switch (_a.label) {
332
+ case 0: return [4 /*yield*/, (0, getTransactionStatus_1["default"])(account, legacyTx)];
333
+ case 1:
334
+ res = _a.sent();
335
+ expect(res).toEqual(expect.objectContaining({
336
+ errors: expect.any(Object),
337
+ warnings: expect.any(Object),
338
+ estimatedFees: new bignumber_js_1["default"](2100000),
339
+ amount: legacyTx.amount,
340
+ totalSpent: new bignumber_js_1["default"](2100000).plus(legacyTx.amount)
341
+ }));
342
+ return [2 /*return*/];
343
+ }
344
+ });
345
+ }); });
346
+ it("should return a 1559 transaction that will use 100% of an account balance", function () { return __awaiter(void 0, void 0, void 0, function () {
347
+ var res, estimatedFees;
348
+ return __generator(this, function (_a) {
349
+ switch (_a.label) {
350
+ case 0: return [4 /*yield*/, (0, getTransactionStatus_1["default"])(__assign(__assign({}, account), { balance: new bignumber_js_1["default"](10000000) }), __assign(__assign({}, eip1559Tx), { useAllAmount: true }))];
351
+ case 1:
352
+ res = _a.sent();
353
+ estimatedFees = new bignumber_js_1["default"](2100000);
354
+ expect(res).toEqual(expect.objectContaining({
355
+ errors: expect.any(Object),
356
+ warnings: expect.any(Object),
357
+ estimatedFees: estimatedFees,
358
+ amount: new bignumber_js_1["default"](10000000).minus(estimatedFees),
359
+ totalSpent: new bignumber_js_1["default"](10000000)
360
+ }));
361
+ return [2 /*return*/];
362
+ }
363
+ });
364
+ }); });
365
+ it("should return an legacy transaction that will use 100% of an account balance", function () { return __awaiter(void 0, void 0, void 0, function () {
366
+ var res;
367
+ return __generator(this, function (_a) {
368
+ switch (_a.label) {
369
+ case 0: return [4 /*yield*/, (0, getTransactionStatus_1["default"])(__assign(__assign({}, account), { balance: new bignumber_js_1["default"](10000000) }), __assign(__assign({}, legacyTx), { useAllAmount: true }))];
370
+ case 1:
371
+ res = _a.sent();
372
+ expect(res).toEqual(expect.objectContaining({
373
+ errors: expect.any(Object),
374
+ warnings: expect.any(Object),
375
+ estimatedFees: new bignumber_js_1["default"](2100000),
376
+ amount: new bignumber_js_1["default"](10000000).minus(2100000),
377
+ totalSpent: new bignumber_js_1["default"](10000000)
378
+ }));
379
+ return [2 /*return*/];
380
+ }
381
+ });
382
+ }); });
383
+ });
384
+ });
385
+ });
386
+ //# sourceMappingURL=getTransactionStatus.unit.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getTransactionStatus.unit.test.js","sourceRoot":"","sources":["../../../../src/families/evm/__tests__/getTransactionStatus.unit.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=hw-getAddress.unit.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hw-getAddress.unit.test.d.ts","sourceRoot":"","sources":["../../../../src/families/evm/__tests__/hw-getAddress.unit.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,78 @@
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 __generator = (this && this.__generator) || function (thisArg, body) {
12
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
13
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
14
+ function verb(n) { return function (v) { return step([n, v]); }; }
15
+ function step(op) {
16
+ if (f) throw new TypeError("Generator is already executing.");
17
+ while (_) try {
18
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
19
+ if (y = 0, t) op = [op[0] & 2, t.value];
20
+ switch (op[0]) {
21
+ case 0: case 1: t = op; break;
22
+ case 4: _.label++; return { value: op[1], done: false };
23
+ case 5: _.label++; y = op[1]; op = [0]; continue;
24
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
25
+ default:
26
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
27
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
28
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
29
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
30
+ if (t[2]) _.ops.pop();
31
+ _.trys.pop(); continue;
32
+ }
33
+ op = body.call(thisArg, _);
34
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
35
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
36
+ }
37
+ };
38
+ var __importDefault = (this && this.__importDefault) || function (mod) {
39
+ return (mod && mod.__esModule) ? mod : { "default": mod };
40
+ };
41
+ exports.__esModule = true;
42
+ var hw_getAddress_1 = __importDefault(require("../hw-getAddress"));
43
+ var eip55_1 = __importDefault(require("eip55"));
44
+ var address = "0xc3f95102D5c8F2c83e49Ce3Acfb905eDfb7f37dE";
45
+ jest.mock("@ledgerhq/hw-app-eth", function () {
46
+ return /** @class */ (function () {
47
+ function class_1() {
48
+ var _this = this;
49
+ this.getAddress = function () { return __awaiter(_this, void 0, void 0, function () {
50
+ return __generator(this, function (_a) {
51
+ return [2 /*return*/, ({
52
+ publicKey: "",
53
+ address: address.toLowerCase()
54
+ })];
55
+ });
56
+ }); };
57
+ }
58
+ return class_1;
59
+ }());
60
+ });
61
+ describe("EVM Family", function () {
62
+ describe("hw-getAddress.ts", function () {
63
+ it("should return an eip 55 encoded address", function () { return __awaiter(void 0, void 0, void 0, function () {
64
+ var response;
65
+ return __generator(this, function (_a) {
66
+ switch (_a.label) {
67
+ case 0: return [4 /*yield*/, (0, hw_getAddress_1["default"])({}, {})];
68
+ case 1:
69
+ response = _a.sent();
70
+ expect(response.address).toBe(address);
71
+ expect(eip55_1["default"].verify(response.address)).toBe(true);
72
+ return [2 /*return*/];
73
+ }
74
+ });
75
+ }); });
76
+ });
77
+ });
78
+ //# sourceMappingURL=hw-getAddress.unit.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hw-getAddress.unit.test.js","sourceRoot":"","sources":["../../../../src/families/evm/__tests__/hw-getAddress.unit.test.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,mEAA0C;AAC1C,gDAA0B;AAE1B,IAAM,OAAO,GAAG,4CAA4C,CAAC;AAC7D,IAAI,CAAC,IAAI,CACP,sBAAsB,EACtB;IACE;QAAA;YAAA,iBAKC;YAJC,eAAU,GAAG;;oBAAY,sBAAA,CAAC;4BACxB,SAAS,EAAE,EAAE;4BACb,OAAO,EAAE,OAAO,CAAC,WAAW,EAAE;yBAC/B,CAAC,EAAA;;iBAAA,CAAC;QACL,CAAC;QAAD,cAAC;IAAD,CAAC,AALD;AAAA,CAKC,CACJ,CAAC;AAEF,QAAQ,CAAC,YAAY,EAAE;IACrB,QAAQ,CAAC,kBAAkB,EAAE;QAC3B,EAAE,CAAC,yCAAyC,EAAE;;;;4BAC3B,qBAAM,IAAA,0BAAU,EAAC,EAAS,EAAE,EAAS,CAAC,EAAA;;wBAAjD,QAAQ,GAAG,SAAsC;wBACvD,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;wBACvC,MAAM,CAAC,kBAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;;;;aACnD,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=logic.unit.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logic.unit.test.d.ts","sourceRoot":"","sources":["../../../../src/families/evm/__tests__/logic.unit.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,86 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ exports.__esModule = true;
6
+ var bignumber_js_1 = __importDefault(require("bignumber.js"));
7
+ var logic_1 = require("../logic");
8
+ describe("EVM Family", function () {
9
+ describe("logic.ts", function () {
10
+ describe("legacyTransactionHasFees", function () {
11
+ it("should return true for legacy tx with fees", function () {
12
+ var tx = {
13
+ type: 0,
14
+ gasPrice: new bignumber_js_1["default"](100)
15
+ };
16
+ expect((0, logic_1.legacyTransactionHasFees)(tx)).toBe(true);
17
+ });
18
+ it("should return false for legacy tx without fees", function () {
19
+ var tx = {
20
+ type: 0
21
+ };
22
+ expect((0, logic_1.legacyTransactionHasFees)(tx)).toBe(false);
23
+ });
24
+ it("should return false for legacy tx with wrong fees", function () {
25
+ var tx = {
26
+ type: 0,
27
+ maxFeePerGas: new bignumber_js_1["default"](100),
28
+ maxPriorityFeePerGas: new bignumber_js_1["default"](100)
29
+ };
30
+ expect((0, logic_1.legacyTransactionHasFees)(tx)).toBe(false);
31
+ });
32
+ it("should return true for legacy tx with fees but no type (default being a legacy tx)", function () {
33
+ var tx = {
34
+ gasPrice: new bignumber_js_1["default"](100)
35
+ };
36
+ expect((0, logic_1.legacyTransactionHasFees)(tx)).toBe(true);
37
+ });
38
+ });
39
+ describe("eip1559TransactionHasFess", function () {
40
+ it("should return true for 1559 tx with fees", function () {
41
+ var tx = {
42
+ type: 2,
43
+ maxFeePerGas: new bignumber_js_1["default"](100),
44
+ maxPriorityFeePerGas: new bignumber_js_1["default"](100)
45
+ };
46
+ expect((0, logic_1.eip1559TransactionHasFees)(tx)).toBe(true);
47
+ });
48
+ it("should return false for 1559 tx without fees", function () {
49
+ var tx = {
50
+ type: 2
51
+ };
52
+ expect((0, logic_1.eip1559TransactionHasFees)(tx)).toBe(false);
53
+ });
54
+ it("should return false for 1559 tx with wrong fees", function () {
55
+ var tx = {
56
+ type: 2,
57
+ gasPrice: new bignumber_js_1["default"](100)
58
+ };
59
+ expect((0, logic_1.eip1559TransactionHasFees)(tx)).toBe(false);
60
+ });
61
+ });
62
+ describe("getEstimatedFees", function () {
63
+ it("should return the right fee estimation for a legacy tx", function () {
64
+ var tx = {
65
+ type: 0,
66
+ gasLimit: new bignumber_js_1["default"](3),
67
+ gasPrice: new bignumber_js_1["default"](23),
68
+ maxFeePerGas: new bignumber_js_1["default"](100),
69
+ maxPriorityFeePerGas: new bignumber_js_1["default"](40)
70
+ };
71
+ expect((0, logic_1.getEstimatedFees)(tx)).toEqual(new bignumber_js_1["default"](69));
72
+ });
73
+ it("should return the right fee estimation for a 1559 tx", function () {
74
+ var tx = {
75
+ type: 2,
76
+ gasLimit: new bignumber_js_1["default"](42),
77
+ gasPrice: new bignumber_js_1["default"](23),
78
+ maxFeePerGas: new bignumber_js_1["default"](10),
79
+ maxPriorityFeePerGas: new bignumber_js_1["default"](40)
80
+ };
81
+ expect((0, logic_1.getEstimatedFees)(tx)).toEqual(new bignumber_js_1["default"](420));
82
+ });
83
+ });
84
+ });
85
+ });
86
+ //# sourceMappingURL=logic.unit.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logic.unit.test.js","sourceRoot":"","sources":["../../../../src/families/evm/__tests__/logic.unit.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=prepareTransaction.unit.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"prepareTransaction.unit.test.d.ts","sourceRoot":"","sources":["../../../../src/families/evm/__tests__/prepareTransaction.unit.test.ts"],"names":[],"mappings":""}