@ledgerhq/live-common 23.1.0 → 24.0.0-next.2

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 (470) hide show
  1. package/lib/__tests__/mocks/account.js +3 -3
  2. package/lib/__tests__/mocks/account.js.map +1 -1
  3. package/lib/__tests__/test-helpers/bridge.d.ts +1 -4
  4. package/lib/__tests__/test-helpers/bridge.d.ts.map +1 -1
  5. package/lib/__tests__/test-helpers/bridge.js +1 -28
  6. package/lib/__tests__/test-helpers/bridge.js.map +1 -1
  7. package/lib/__tests__/test-helpers/setup.js +51 -0
  8. package/lib/__tests__/test-helpers/setup.js.map +1 -1
  9. package/lib/api/Ripple.d.ts.map +1 -1
  10. package/lib/api/Ripple.js +113 -68
  11. package/lib/api/Ripple.js.map +1 -1
  12. package/lib/apps/support.d.ts.map +1 -1
  13. package/lib/apps/support.js +6 -2
  14. package/lib/apps/support.js.map +1 -1
  15. package/lib/bot/index.d.ts.map +1 -1
  16. package/lib/bot/index.js +13 -19
  17. package/lib/bot/index.js.map +1 -1
  18. package/lib/bot/test.bot.d.ts +1 -1
  19. package/lib/bot/test.bot.d.ts.map +1 -1
  20. package/lib/bot/test.bot.js +1 -2
  21. package/lib/bot/test.bot.js.map +1 -1
  22. package/lib/countervalues/logic.integration.test.d.ts +2 -0
  23. package/lib/countervalues/logic.integration.test.d.ts.map +1 -0
  24. package/lib/countervalues/{logic.test.js → logic.integration.test.js} +1 -1
  25. package/lib/countervalues/logic.integration.test.js.map +1 -0
  26. package/lib/countervalues/react.d.ts +1 -21
  27. package/lib/countervalues/react.d.ts.map +1 -1
  28. package/lib/countervalues/react.js +1 -77
  29. package/lib/countervalues/react.js.map +1 -1
  30. package/lib/derivation.d.ts +1 -0
  31. package/lib/derivation.d.ts.map +1 -1
  32. package/lib/derivation.js +3 -2
  33. package/lib/derivation.js.map +1 -1
  34. package/lib/env.d.ts +16 -6
  35. package/lib/env.d.ts.map +1 -1
  36. package/lib/env.js +11 -1
  37. package/lib/env.js.map +1 -1
  38. package/lib/env.react.d.ts +1 -1
  39. package/lib/env.react.d.ts.map +1 -1
  40. package/lib/errors.d.ts +0 -3
  41. package/lib/errors.d.ts.map +1 -1
  42. package/lib/errors.js +2 -3
  43. package/lib/errors.js.map +1 -1
  44. package/lib/exchange/index.d.ts +5 -0
  45. package/lib/exchange/index.d.ts.map +1 -1
  46. package/lib/exchange/index.js.map +1 -1
  47. package/lib/exchange/swap/checkQuote.d.ts +4 -0
  48. package/lib/exchange/swap/checkQuote.d.ts.map +1 -0
  49. package/lib/{families/tezos/bridge.test.js → exchange/swap/checkQuote.js} +35 -36
  50. package/lib/exchange/swap/checkQuote.js.map +1 -0
  51. package/lib/exchange/swap/checkQuote.test.d.ts +2 -0
  52. package/lib/exchange/swap/checkQuote.test.d.ts.map +1 -0
  53. package/lib/{families/filecoin/bridge.test.js → exchange/swap/checkQuote.test.js} +53 -42
  54. package/lib/exchange/swap/checkQuote.test.js.map +1 -0
  55. package/lib/exchange/swap/completeExchange.d.ts.map +1 -1
  56. package/lib/exchange/swap/completeExchange.js +9 -9
  57. package/lib/exchange/swap/completeExchange.js.map +1 -1
  58. package/lib/exchange/swap/getExchangeRates.d.ts.map +1 -1
  59. package/lib/exchange/swap/getExchangeRates.js +3 -1
  60. package/lib/exchange/swap/getExchangeRates.js.map +1 -1
  61. package/lib/exchange/swap/getExchangeRates.test.js +1 -2
  62. package/lib/exchange/swap/getExchangeRates.test.js.map +1 -1
  63. package/lib/exchange/swap/getProviders.d.ts.map +1 -1
  64. package/lib/exchange/swap/getProviders.js +10 -4
  65. package/lib/exchange/swap/getProviders.js.map +1 -1
  66. package/lib/exchange/swap/getStatus.d.ts +1 -3
  67. package/lib/exchange/swap/getStatus.d.ts.map +1 -1
  68. package/lib/exchange/swap/getStatus.js +2 -30
  69. package/lib/exchange/swap/getStatus.js.map +1 -1
  70. package/lib/exchange/swap/hooks/usePollKYCStatus.test.js +4 -5
  71. package/lib/exchange/swap/hooks/usePollKYCStatus.test.js.map +1 -1
  72. package/lib/exchange/swap/hooks/useProviderRates.d.ts +3 -4
  73. package/lib/exchange/swap/hooks/useProviderRates.d.ts.map +1 -1
  74. package/lib/exchange/swap/hooks/useProviderRates.js +35 -5
  75. package/lib/exchange/swap/hooks/useProviderRates.js.map +1 -1
  76. package/lib/exchange/swap/hooks/useProviderRates.test.js +107 -3
  77. package/lib/exchange/swap/hooks/useProviderRates.test.js.map +1 -1
  78. package/lib/exchange/swap/hooks/useSwapProviders.test.js +1 -2
  79. package/lib/exchange/swap/hooks/useSwapProviders.test.js.map +1 -1
  80. package/lib/exchange/swap/hooks/useSwapTransaction.d.ts +5 -4
  81. package/lib/exchange/swap/hooks/useSwapTransaction.d.ts.map +1 -1
  82. package/lib/exchange/swap/hooks/useSwapTransaction.js +6 -6
  83. package/lib/exchange/swap/hooks/useSwapTransaction.js.map +1 -1
  84. package/lib/exchange/swap/hooks/useUpdateMaxAmount.d.ts +4 -3
  85. package/lib/exchange/swap/hooks/useUpdateMaxAmount.d.ts.map +1 -1
  86. package/lib/exchange/swap/hooks/useUpdateMaxAmount.js +8 -5
  87. package/lib/exchange/swap/hooks/useUpdateMaxAmount.js.map +1 -1
  88. package/lib/exchange/swap/hooks/useUpdateMaxAmount.test.js +37 -7
  89. package/lib/exchange/swap/hooks/useUpdateMaxAmount.test.js.map +1 -1
  90. package/lib/exchange/swap/index.d.ts +10 -8
  91. package/lib/exchange/swap/index.d.ts.map +1 -1
  92. package/lib/exchange/swap/index.js +43 -18
  93. package/lib/exchange/swap/index.js.map +1 -1
  94. package/lib/exchange/swap/index.test.d.ts +2 -0
  95. package/lib/exchange/swap/index.test.d.ts.map +1 -0
  96. package/lib/exchange/swap/index.test.js +30 -0
  97. package/lib/exchange/swap/index.test.js.map +1 -0
  98. package/lib/exchange/swap/initSwap.d.ts +1 -1
  99. package/lib/exchange/swap/initSwap.d.ts.map +1 -1
  100. package/lib/exchange/swap/initSwap.js +30 -25
  101. package/lib/exchange/swap/initSwap.js.map +1 -1
  102. package/lib/exchange/swap/mock.d.ts +5 -2
  103. package/lib/exchange/swap/mock.d.ts.map +1 -1
  104. package/lib/exchange/swap/mock.js +127 -6
  105. package/lib/exchange/swap/mock.js.map +1 -1
  106. package/lib/exchange/swap/postSwapState.d.ts +4 -0
  107. package/lib/exchange/swap/postSwapState.d.ts.map +1 -0
  108. package/lib/exchange/swap/postSwapState.js +121 -0
  109. package/lib/exchange/swap/postSwapState.js.map +1 -0
  110. package/lib/exchange/swap/types.d.ts +30 -2
  111. package/lib/exchange/swap/types.d.ts.map +1 -1
  112. package/lib/exchange/swap/updateAccountSwapStatus.d.ts.map +1 -1
  113. package/lib/exchange/swap/updateAccountSwapStatus.js +2 -2
  114. package/lib/exchange/swap/updateAccountSwapStatus.js.map +1 -1
  115. package/lib/exchange/swap/utils/index.d.ts +19 -2
  116. package/lib/exchange/swap/utils/index.d.ts.map +1 -1
  117. package/lib/exchange/swap/utils/index.js +96 -20
  118. package/lib/exchange/swap/utils/index.js.map +1 -1
  119. package/lib/exchange/swap/utils/index.test.js +95 -48
  120. package/lib/exchange/swap/utils/index.test.js.map +1 -1
  121. package/lib/families/algorand/bridge.integration.test.d.ts +2 -0
  122. package/lib/families/algorand/bridge.integration.test.d.ts.map +1 -0
  123. package/lib/families/algorand/{test-dataset.js → bridge.integration.test.js} +12 -11
  124. package/lib/families/algorand/bridge.integration.test.js.map +1 -0
  125. package/lib/families/bitcoin/bridge.integration.test.d.ts +2 -0
  126. package/lib/families/bitcoin/bridge.integration.test.d.ts.map +1 -0
  127. package/lib/families/bitcoin/{test-dataset.js → bridge.integration.test.js} +17 -14
  128. package/lib/families/bitcoin/bridge.integration.test.js.map +1 -0
  129. package/lib/families/bitcoin/descriptor.d.ts.map +1 -1
  130. package/lib/families/bitcoin/descriptor.js +2 -1
  131. package/lib/families/bitcoin/descriptor.js.map +1 -1
  132. package/lib/families/bitcoin/satstack.d.ts.map +1 -1
  133. package/lib/families/bitcoin/satstack.js +5 -6
  134. package/lib/families/bitcoin/satstack.js.map +1 -1
  135. package/lib/families/bitcoin/satstack.test.js +4 -1
  136. package/lib/families/bitcoin/satstack.test.js.map +1 -1
  137. package/lib/families/bitcoin/specs.d.ts.map +1 -1
  138. package/lib/families/bitcoin/specs.js +1 -2
  139. package/lib/families/bitcoin/specs.js.map +1 -1
  140. package/lib/families/cardano/bridge.integration.test.d.ts +2 -0
  141. package/lib/families/cardano/bridge.integration.test.d.ts.map +1 -0
  142. package/lib/families/cardano/{test-dataset.js → bridge.integration.test.js} +4 -2
  143. package/lib/families/cardano/bridge.integration.test.js.map +1 -0
  144. package/lib/families/celo/bridge.integration.test.d.ts +2 -0
  145. package/lib/families/celo/bridge.integration.test.d.ts.map +1 -0
  146. package/lib/families/celo/bridge.integration.test.js +16 -0
  147. package/lib/families/celo/bridge.integration.test.js.map +1 -0
  148. package/lib/families/cosmos/bridge.integration.test.d.ts +2 -0
  149. package/lib/families/cosmos/bridge.integration.test.d.ts.map +1 -0
  150. package/lib/families/cosmos/{test-dataset.js → bridge.integration.test.js} +5 -4
  151. package/lib/families/cosmos/bridge.integration.test.js.map +1 -0
  152. package/lib/families/cosmos/speculos-deviceActions.js +2 -2
  153. package/lib/families/crypto_org/bridge.integration.test.d.ts +2 -0
  154. package/lib/families/crypto_org/bridge.integration.test.d.ts.map +1 -0
  155. package/lib/families/crypto_org/bridge.integration.test.js +16 -0
  156. package/lib/families/crypto_org/bridge.integration.test.js.map +1 -0
  157. package/lib/families/elrond/bridge.integration.test.d.ts +2 -0
  158. package/lib/families/elrond/bridge.integration.test.d.ts.map +1 -0
  159. package/lib/families/elrond/{test-dataset.js → bridge.integration.test.js} +5 -5
  160. package/lib/families/elrond/bridge.integration.test.js.map +1 -0
  161. package/lib/families/ethereum/bridge.integration.test.d.ts +2 -0
  162. package/lib/families/ethereum/bridge.integration.test.d.ts.map +1 -0
  163. package/lib/families/ethereum/{test-dataset.js → bridge.integration.test.js} +8 -24
  164. package/lib/families/ethereum/bridge.integration.test.js.map +1 -0
  165. package/lib/families/ethereum/datasets/ethereum1.d.ts +3 -0
  166. package/lib/families/ethereum/datasets/ethereum1.d.ts.map +1 -0
  167. package/lib/families/ethereum/datasets/ethereum1.js +22 -0
  168. package/lib/families/ethereum/datasets/ethereum1.js.map +1 -0
  169. package/lib/families/ethereum/modules/compound.resilience.integration.test.d.ts +2 -0
  170. package/lib/families/ethereum/modules/compound.resilience.integration.test.d.ts.map +1 -0
  171. package/lib/families/ethereum/modules/{compound.resilience.test.js → compound.resilience.integration.test.js} +3 -3
  172. package/lib/families/ethereum/modules/compound.resilience.integration.test.js.map +1 -0
  173. package/lib/families/ethereum/modules/erc1155.d.ts.map +1 -1
  174. package/lib/families/ethereum/modules/erc1155.js +5 -1
  175. package/lib/families/ethereum/modules/erc1155.js.map +1 -1
  176. package/lib/families/ethereum/modules/erc721.d.ts.map +1 -1
  177. package/lib/families/ethereum/modules/erc721.js +5 -0
  178. package/lib/families/ethereum/modules/erc721.js.map +1 -1
  179. package/lib/families/ethereum/nft.unit.test.js +35 -15
  180. package/lib/families/ethereum/nft.unit.test.js.map +1 -1
  181. package/lib/families/ethereum/synchronisation.d.ts.map +1 -1
  182. package/lib/families/ethereum/synchronisation.integration.test.d.ts +2 -0
  183. package/lib/families/ethereum/synchronisation.integration.test.d.ts.map +1 -0
  184. package/lib/families/ethereum/{synchronisation.test.js → synchronisation.integration.test.js} +4 -4
  185. package/lib/families/ethereum/synchronisation.integration.test.js.map +1 -0
  186. package/lib/families/ethereum/synchronisation.js +17 -13
  187. package/lib/families/ethereum/synchronisation.js.map +1 -1
  188. package/lib/families/filecoin/bridge.integration.test.d.ts +2 -0
  189. package/lib/families/filecoin/bridge.integration.test.d.ts.map +1 -0
  190. package/lib/families/filecoin/{test-dataset.js → bridge.integration.test.js} +84 -3
  191. package/lib/families/filecoin/bridge.integration.test.js.map +1 -0
  192. package/lib/families/hedera/bridge.integration.test.d.ts +2 -0
  193. package/lib/families/hedera/bridge.integration.test.d.ts.map +1 -0
  194. package/lib/families/hedera/{test-dataset.js → bridge.integration.test.js} +5 -3
  195. package/lib/families/hedera/bridge.integration.test.js.map +1 -0
  196. package/lib/families/polkadot/bridge.integration.test.d.ts +2 -0
  197. package/lib/families/polkadot/bridge.integration.test.d.ts.map +1 -0
  198. package/lib/families/polkadot/{test-dataset.js → bridge.integration.test.js} +138 -4
  199. package/lib/families/polkadot/bridge.integration.test.js.map +1 -0
  200. package/lib/families/ripple/bridge.integration.test.d.ts +2 -0
  201. package/lib/families/ripple/bridge.integration.test.d.ts.map +1 -0
  202. package/lib/families/ripple/{test-dataset.js → bridge.integration.test.js} +4 -2
  203. package/lib/families/ripple/bridge.integration.test.js.map +1 -0
  204. package/lib/families/solana/api/chain/account/token.d.ts +1 -1
  205. package/lib/families/solana/api/chain/account/vote.d.ts +12 -12
  206. package/lib/families/solana/api/chain/instruction/system/types.d.ts +4 -4
  207. package/lib/families/solana/bridge.integration.test.d.ts +2 -0
  208. package/lib/families/solana/bridge.integration.test.d.ts.map +1 -0
  209. package/lib/families/solana/{test-dataset.js → bridge.integration.test.js} +289 -73
  210. package/lib/families/solana/bridge.integration.test.js.map +1 -0
  211. package/lib/families/stellar/bridge.integration.test.d.ts +2 -0
  212. package/lib/families/stellar/bridge.integration.test.d.ts.map +1 -0
  213. package/lib/families/stellar/{test-dataset.js → bridge.integration.test.js} +9 -8
  214. package/lib/families/stellar/bridge.integration.test.js.map +1 -0
  215. package/lib/families/stellar/js-estimateMaxSpendable.d.ts.map +1 -1
  216. package/lib/families/stellar/js-estimateMaxSpendable.js +2 -2
  217. package/lib/families/stellar/js-estimateMaxSpendable.js.map +1 -1
  218. package/lib/families/tezos/{test-dataset.d.ts → bridge.integration.test.d.ts} +2 -5
  219. package/lib/families/tezos/bridge.integration.test.d.ts.map +1 -0
  220. package/lib/families/tezos/{test-dataset.js → bridge.integration.test.js} +73 -2
  221. package/lib/families/tezos/bridge.integration.test.js.map +1 -0
  222. package/lib/families/tezos/synchronisation.js +2 -2
  223. package/lib/families/tezos/synchronisation.js.map +1 -1
  224. package/lib/families/tron/bridge.integration.test.d.ts +2 -0
  225. package/lib/families/tron/bridge.integration.test.d.ts.map +1 -0
  226. package/lib/families/tron/{test-dataset.js → bridge.integration.test.js} +5 -4
  227. package/lib/families/tron/bridge.integration.test.js.map +1 -0
  228. package/lib/hw/actions/initSwap.d.ts +4 -3
  229. package/lib/hw/actions/initSwap.d.ts.map +1 -1
  230. package/lib/hw/actions/initSwap.js +7 -5
  231. package/lib/hw/actions/initSwap.js.map +1 -1
  232. package/lib/load/speculos.d.ts.map +1 -1
  233. package/lib/load/speculos.js +5 -2
  234. package/lib/load/speculos.js.map +1 -1
  235. package/lib/nft/nftOperationId.d.ts +15 -0
  236. package/lib/nft/nftOperationId.d.ts.map +1 -0
  237. package/lib/nft/nftOperationId.js +50 -0
  238. package/lib/nft/nftOperationId.js.map +1 -0
  239. package/lib/operation.d.ts +1 -1
  240. package/lib/operation.d.ts.map +1 -1
  241. package/lib/operation.js +23 -1
  242. package/lib/operation.js.map +1 -1
  243. package/lib/portfolio/v2/index.d.ts +6 -1
  244. package/lib/portfolio/v2/index.d.ts.map +1 -1
  245. package/lib/portfolio/v2/index.js +7 -3
  246. package/lib/portfolio/v2/index.js.map +1 -1
  247. package/lib/portfolio/v2/range.d.ts +7 -1
  248. package/lib/portfolio/v2/range.d.ts.map +1 -1
  249. package/lib/portfolio/v2/range.js +37 -18
  250. package/lib/portfolio/v2/range.js.map +1 -1
  251. package/lib/portfolio/v2/range.test.d.ts +2 -0
  252. package/lib/portfolio/v2/range.test.d.ts.map +1 -0
  253. package/lib/portfolio/v2/range.test.js +51 -0
  254. package/lib/portfolio/v2/range.test.js.map +1 -0
  255. package/package.json +14 -10
  256. package/src/__tests__/mocks/account.ts +3 -3
  257. package/src/__tests__/test-helpers/bridge.ts +2 -35
  258. package/src/__tests__/test-helpers/setup.ts +39 -0
  259. package/src/api/Ripple.ts +97 -52
  260. package/src/apps/support.ts +6 -2
  261. package/src/bot/index.ts +26 -24
  262. package/src/bot/test.bot.ts +2 -2
  263. package/src/countervalues/{logic.test.ts → logic.integration.test.ts} +0 -0
  264. package/src/countervalues/react.tsx +2 -131
  265. package/src/currencies/__snapshots__/sortByMarketcap.test.ts.snap +15 -1
  266. package/src/derivation.ts +2 -1
  267. package/src/env.ts +12 -2
  268. package/src/errors.ts +0 -1
  269. package/src/exchange/index.ts +7 -0
  270. package/src/exchange/swap/checkQuote.test.ts +53 -0
  271. package/src/exchange/swap/checkQuote.ts +34 -0
  272. package/src/exchange/swap/completeExchange.ts +9 -11
  273. package/src/exchange/swap/getExchangeRates.test.ts +1 -2
  274. package/src/exchange/swap/getExchangeRates.ts +5 -3
  275. package/src/exchange/swap/getProviders.ts +12 -4
  276. package/src/exchange/swap/getStatus.ts +2 -12
  277. package/src/exchange/swap/hooks/usePollKYCStatus.test.ts +1 -3
  278. package/src/exchange/swap/hooks/useProviderRates.test.ts +104 -3
  279. package/src/exchange/swap/hooks/useProviderRates.ts +57 -9
  280. package/src/exchange/swap/hooks/useSwapProviders.test.ts +1 -3
  281. package/src/exchange/swap/hooks/useSwapTransaction.ts +14 -13
  282. package/src/exchange/swap/hooks/useUpdateMaxAmount.test.ts +33 -7
  283. package/src/exchange/swap/hooks/useUpdateMaxAmount.ts +13 -7
  284. package/src/exchange/swap/index.test.ts +36 -0
  285. package/src/exchange/swap/index.ts +51 -30
  286. package/src/exchange/swap/initSwap.ts +54 -40
  287. package/src/exchange/swap/mock.ts +128 -13
  288. package/src/exchange/swap/postSwapState.ts +61 -0
  289. package/src/exchange/swap/types.ts +68 -5
  290. package/src/exchange/swap/updateAccountSwapStatus.ts +4 -4
  291. package/src/exchange/swap/utils/index.test.ts +127 -63
  292. package/src/exchange/swap/utils/index.ts +128 -23
  293. package/src/families/algorand/{test-dataset.ts → bridge.integration.test.ts} +13 -10
  294. package/src/families/bitcoin/__snapshots__/bridge.integration.test.ts.snap +27607 -0
  295. package/src/families/bitcoin/{test-dataset.ts → bridge.integration.test.ts} +18 -13
  296. package/src/families/bitcoin/descriptor.ts +1 -0
  297. package/src/families/bitcoin/satstack.test.ts +4 -1
  298. package/src/families/bitcoin/satstack.ts +9 -5
  299. package/src/families/bitcoin/specs.ts +0 -1
  300. package/src/families/cardano/__snapshots__/{bridge.test.ts.snap → bridge.integration.test.ts.snap} +0 -0
  301. package/src/families/cardano/{test-dataset.ts → bridge.integration.test.ts} +3 -1
  302. package/src/families/celo/bridge.integration.test.ts +14 -0
  303. package/src/families/cosmos/__snapshots__/{bridge.test.ts.snap → bridge.integration.test.ts.snap} +0 -0
  304. package/src/families/cosmos/{test-dataset.ts → bridge.integration.test.ts} +17 -15
  305. package/src/families/cosmos/speculos-deviceActions.ts +2 -2
  306. package/src/families/crypto_org/__snapshots__/bridge.integration.test.ts.snap +2968 -0
  307. package/src/families/crypto_org/bridge.integration.test.ts +14 -0
  308. package/src/families/elrond/__snapshots__/bridge.integration.test.ts.snap +207 -0
  309. package/src/families/elrond/{test-dataset.ts → bridge.integration.test.ts} +6 -4
  310. package/src/families/ethereum/__snapshots__/bridge.integration.test.ts.snap +3263 -0
  311. package/src/families/ethereum/{test-dataset.ts → bridge.integration.test.ts} +6 -19
  312. package/src/families/ethereum/datasets/ethereum1.ts +20 -0
  313. package/src/families/ethereum/modules/{compound.resilience.test.ts → compound.resilience.integration.test.ts} +1 -1
  314. package/src/families/ethereum/modules/erc1155.ts +12 -5
  315. package/src/families/ethereum/modules/erc721.ts +11 -0
  316. package/src/families/ethereum/nft.unit.test.ts +24 -17
  317. package/src/families/ethereum/{synchronisation.test.ts → synchronisation.integration.test.ts} +1 -1
  318. package/src/families/ethereum/synchronisation.ts +22 -18
  319. package/src/families/filecoin/__snapshots__/{bridge.test.ts.snap → bridge.integration.test.ts.snap} +0 -0
  320. package/src/families/filecoin/{test-dataset.ts → bridge.integration.test.ts} +35 -3
  321. package/src/families/hedera/__snapshots__/bridge.integration.test.ts.snap +5 -0
  322. package/src/families/hedera/{test-dataset.ts → bridge.integration.test.ts} +5 -2
  323. package/src/families/polkadot/{test-dataset.ts → bridge.integration.test.ts} +81 -5
  324. package/src/families/ripple/{test-dataset.ts → bridge.integration.test.ts} +5 -1
  325. package/src/families/solana/__snapshots__/{bridge.test.ts.snap → bridge.integration.test.ts.snap} +0 -0
  326. package/src/families/solana/{test-dataset.ts → bridge.integration.test.ts} +170 -5
  327. package/src/families/stellar/__snapshots__/{bridge.test.ts.snap → bridge.integration.test.ts.snap} +0 -0
  328. package/src/families/stellar/{test-dataset.ts → bridge.integration.test.ts} +5 -3
  329. package/src/families/stellar/js-estimateMaxSpendable.ts +3 -1
  330. package/src/families/tezos/{test-dataset.ts → bridge.integration.test.ts} +22 -1
  331. package/src/families/tezos/synchronisation.ts +1 -1
  332. package/src/families/tron/{test-dataset.ts → bridge.integration.test.ts} +6 -5
  333. package/src/hw/actions/initSwap.ts +20 -9
  334. package/src/load/speculos.ts +5 -2
  335. package/src/nft/nftOperationId.ts +47 -0
  336. package/src/operation.ts +50 -1
  337. package/src/portfolio/v2/index.ts +7 -2
  338. package/src/portfolio/v2/range.test.ts +66 -0
  339. package/src/portfolio/v2/range.ts +22 -8
  340. package/lib/__tests__/portfolio.d.ts +0 -2
  341. package/lib/__tests__/portfolio.d.ts.map +0 -1
  342. package/lib/__tests__/portfolio.js +0 -297
  343. package/lib/__tests__/portfolio.js.map +0 -1
  344. package/lib/__tests__/test-helpers/libcore-setup.d.ts +0 -3
  345. package/lib/__tests__/test-helpers/libcore-setup.d.ts.map +0 -1
  346. package/lib/__tests__/test-helpers/libcore-setup.js +0 -68
  347. package/lib/__tests__/test-helpers/libcore-setup.js.map +0 -1
  348. package/lib/__tests__/test-helpers/libcore-setup.native.d.ts +0 -10
  349. package/lib/__tests__/test-helpers/libcore-setup.native.d.ts.map +0 -1
  350. package/lib/__tests__/test-helpers/libcore-setup.native.js +0 -16
  351. package/lib/__tests__/test-helpers/libcore-setup.native.js.map +0 -1
  352. package/lib/countervalues/logic.test.d.ts +0 -2
  353. package/lib/countervalues/logic.test.d.ts.map +0 -1
  354. package/lib/countervalues/logic.test.js.map +0 -1
  355. package/lib/families/algorand/test-dataset.d.ts +0 -5
  356. package/lib/families/algorand/test-dataset.d.ts.map +0 -1
  357. package/lib/families/algorand/test-dataset.js.map +0 -1
  358. package/lib/families/bitcoin/test-dataset.d.ts +0 -5
  359. package/lib/families/bitcoin/test-dataset.d.ts.map +0 -1
  360. package/lib/families/bitcoin/test-dataset.js.map +0 -1
  361. package/lib/families/cardano/bridge.test.d.ts +0 -2
  362. package/lib/families/cardano/bridge.test.d.ts.map +0 -1
  363. package/lib/families/cardano/bridge.test.js +0 -11
  364. package/lib/families/cardano/bridge.test.js.map +0 -1
  365. package/lib/families/cardano/test-dataset.d.ts +0 -5
  366. package/lib/families/cardano/test-dataset.d.ts.map +0 -1
  367. package/lib/families/cardano/test-dataset.js.map +0 -1
  368. package/lib/families/cosmos/bridge.test.d.ts +0 -2
  369. package/lib/families/cosmos/bridge.test.d.ts.map +0 -1
  370. package/lib/families/cosmos/bridge.test.js +0 -11
  371. package/lib/families/cosmos/bridge.test.js.map +0 -1
  372. package/lib/families/cosmos/test-dataset.d.ts +0 -5
  373. package/lib/families/cosmos/test-dataset.d.ts.map +0 -1
  374. package/lib/families/cosmos/test-dataset.js.map +0 -1
  375. package/lib/families/crypto_org/test-dataset.d.ts +0 -5
  376. package/lib/families/crypto_org/test-dataset.d.ts.map +0 -1
  377. package/lib/families/crypto_org/test-dataset.js +0 -12
  378. package/lib/families/crypto_org/test-dataset.js.map +0 -1
  379. package/lib/families/elrond/test-dataset.d.ts +0 -5
  380. package/lib/families/elrond/test-dataset.d.ts.map +0 -1
  381. package/lib/families/elrond/test-dataset.js.map +0 -1
  382. package/lib/families/ethereum/modules/compound.resilience.test.d.ts +0 -2
  383. package/lib/families/ethereum/modules/compound.resilience.test.d.ts.map +0 -1
  384. package/lib/families/ethereum/modules/compound.resilience.test.js.map +0 -1
  385. package/lib/families/ethereum/synchronisation.test.d.ts +0 -2
  386. package/lib/families/ethereum/synchronisation.test.d.ts.map +0 -1
  387. package/lib/families/ethereum/synchronisation.test.js.map +0 -1
  388. package/lib/families/ethereum/test-dataset.d.ts +0 -6
  389. package/lib/families/ethereum/test-dataset.d.ts.map +0 -1
  390. package/lib/families/ethereum/test-dataset.js.map +0 -1
  391. package/lib/families/filecoin/bridge.test.d.ts +0 -2
  392. package/lib/families/filecoin/bridge.test.d.ts.map +0 -1
  393. package/lib/families/filecoin/bridge.test.js.map +0 -1
  394. package/lib/families/filecoin/test-dataset.d.ts +0 -5
  395. package/lib/families/filecoin/test-dataset.d.ts.map +0 -1
  396. package/lib/families/filecoin/test-dataset.js.map +0 -1
  397. package/lib/families/hedera/test-dataset.d.ts +0 -5
  398. package/lib/families/hedera/test-dataset.d.ts.map +0 -1
  399. package/lib/families/hedera/test-dataset.js.map +0 -1
  400. package/lib/families/polkadot/bridge.test.d.ts +0 -2
  401. package/lib/families/polkadot/bridge.test.d.ts.map +0 -1
  402. package/lib/families/polkadot/bridge.test.js +0 -145
  403. package/lib/families/polkadot/bridge.test.js.map +0 -1
  404. package/lib/families/polkadot/test-dataset.d.ts +0 -5
  405. package/lib/families/polkadot/test-dataset.d.ts.map +0 -1
  406. package/lib/families/polkadot/test-dataset.js.map +0 -1
  407. package/lib/families/ripple/bridge.test.d.ts +0 -2
  408. package/lib/families/ripple/bridge.test.d.ts.map +0 -1
  409. package/lib/families/ripple/bridge.test.js +0 -11
  410. package/lib/families/ripple/bridge.test.js.map +0 -1
  411. package/lib/families/ripple/test-dataset.d.ts +0 -5
  412. package/lib/families/ripple/test-dataset.d.ts.map +0 -1
  413. package/lib/families/ripple/test-dataset.js.map +0 -1
  414. package/lib/families/solana/bridge.test.d.ts +0 -2
  415. package/lib/families/solana/bridge.test.d.ts.map +0 -1
  416. package/lib/families/solana/bridge.test.js +0 -11
  417. package/lib/families/solana/bridge.test.js.map +0 -1
  418. package/lib/families/solana/test-dataset.d.ts +0 -23
  419. package/lib/families/solana/test-dataset.d.ts.map +0 -1
  420. package/lib/families/solana/test-dataset.js.map +0 -1
  421. package/lib/families/solana/test-specifics.d.ts +0 -9
  422. package/lib/families/solana/test-specifics.d.ts.map +0 -1
  423. package/lib/families/solana/test-specifics.js +0 -237
  424. package/lib/families/solana/test-specifics.js.map +0 -1
  425. package/lib/families/stellar/bridge.test.d.ts +0 -2
  426. package/lib/families/stellar/bridge.test.d.ts.map +0 -1
  427. package/lib/families/stellar/bridge.test.js +0 -11
  428. package/lib/families/stellar/bridge.test.js.map +0 -1
  429. package/lib/families/stellar/test-dataset.d.ts +0 -7
  430. package/lib/families/stellar/test-dataset.d.ts.map +0 -1
  431. package/lib/families/stellar/test-dataset.js.map +0 -1
  432. package/lib/families/tezos/bridge.test.d.ts +0 -2
  433. package/lib/families/tezos/bridge.test.d.ts.map +0 -1
  434. package/lib/families/tezos/bridge.test.js.map +0 -1
  435. package/lib/families/tezos/test-dataset.d.ts.map +0 -1
  436. package/lib/families/tezos/test-dataset.js.map +0 -1
  437. package/lib/families/tron/test-dataset.d.ts +0 -5
  438. package/lib/families/tron/test-dataset.d.ts.map +0 -1
  439. package/lib/families/tron/test-dataset.js.map +0 -1
  440. package/lib/generated/test-dataset.d.ts +0 -19
  441. package/lib/generated/test-dataset.d.ts.map +0 -1
  442. package/lib/generated/test-dataset.js +0 -38
  443. package/lib/generated/test-dataset.js.map +0 -1
  444. package/lib/portfolio/index.d.ts +0 -30
  445. package/lib/portfolio/index.d.ts.map +0 -1
  446. package/lib/portfolio/index.js +0 -399
  447. package/lib/portfolio/index.js.map +0 -1
  448. package/lib/portfolio/range.d.ts +0 -12
  449. package/lib/portfolio/range.d.ts.map +0 -1
  450. package/lib/portfolio/range.js +0 -73
  451. package/lib/portfolio/range.js.map +0 -1
  452. package/src/__tests__/__snapshots__/portfolio.ts.snap +0 -2770
  453. package/src/__tests__/portfolio.ts +0 -360
  454. package/src/__tests__/test-helpers/libcore-setup.native.ts +0 -19
  455. package/src/__tests__/test-helpers/libcore-setup.ts +0 -51
  456. package/src/families/bitcoin/bridge.test.ts.bak +0 -6
  457. package/src/families/cardano/bridge.test.ts +0 -6
  458. package/src/families/cosmos/bridge.test.ts +0 -6
  459. package/src/families/crypto_org/test-dataset.ts +0 -13
  460. package/src/families/ethereum/bridge.test.ts.bak +0 -8
  461. package/src/families/filecoin/bridge.test.ts +0 -39
  462. package/src/families/polkadot/bridge.test.ts +0 -81
  463. package/src/families/ripple/bridge.test.ts +0 -6
  464. package/src/families/solana/bridge.test.ts +0 -6
  465. package/src/families/solana/test-specifics.ts +0 -170
  466. package/src/families/stellar/bridge.test.ts +0 -6
  467. package/src/families/tezos/bridge.test.ts +0 -24
  468. package/src/generated/test-dataset.ts +0 -48
  469. package/src/portfolio/index.ts +0 -505
  470. package/src/portfolio/range.ts +0 -71
@@ -1,42 +1,47 @@
1
+ import "../../__tests__/test-helpers/setup";
2
+ import { testBridge } from "../../__tests__/test-helpers/bridge";
3
+
1
4
  import type { DatasetTest } from "../../types";
2
5
  import type { Transaction } from "./types";
3
- // import bitcoin_cash from "./datasets/bitcoin_cash";
4
- // import bitcoin_gold from "./datasets/bitcoin_gold";
6
+ import bitcoin_cash from "./datasets/bitcoin_cash";
7
+ import bitcoin_gold from "./datasets/bitcoin_gold";
5
8
  import bitcoin from "./datasets/bitcoin";
6
9
  import dash from "./datasets/dash";
7
- // import decred from "./datasets/decred";
10
+ import decred from "./datasets/decred";
8
11
  import digibyte from "./datasets/digibyte";
9
12
  import dogecoin from "./datasets/dogecoin";
10
- // import zencash from "./datasets/zencash";
13
+ import zencash from "./datasets/zencash";
11
14
  import komodo from "./datasets/komodo";
12
15
  import litecoin from "./datasets/litecoin";
13
16
  import peercoin from "./datasets/peercoin";
14
17
  import pivx from "./datasets/pivx";
15
18
  import qtum from "./datasets/qtum";
16
- // import stakenet from "./datasets/stakenet";
19
+ import stakenet from "./datasets/stakenet";
17
20
  import vertcoin from "./datasets/vertcoin";
18
21
  import viacoin from "./datasets/viacoin";
19
- // import zcash from "./datasets/zcash";
22
+ import zcash from "./datasets/zcash";
23
+
20
24
  const dataset: DatasetTest<Transaction> = {
21
25
  implementations: ["js", "mock"],
22
26
  currencies: {
23
27
  bitcoin,
24
- // bitcoin_cash,
25
- // bitcoin_gold,
28
+ bitcoin_cash,
29
+ bitcoin_gold,
26
30
  dash,
27
- // decred, // BACK-2443
31
+ decred,
28
32
  digibyte,
29
33
  dogecoin,
30
- // zencash,
34
+ zencash,
31
35
  komodo,
32
36
  litecoin,
33
37
  peercoin,
34
38
  pivx,
35
39
  qtum,
36
- // stakenet,
40
+ stakenet,
37
41
  vertcoin,
38
42
  viacoin,
39
- // zcash,
43
+ zcash,
40
44
  },
41
45
  };
42
- export default dataset;
46
+
47
+ testBridge(dataset);
@@ -23,6 +23,7 @@ const perDerivation: Partial<
23
23
  "": (fragment) => `pkh(${fragment})`,
24
24
  segwit: (fragment) => `sh(wpkh(${fragment}))`,
25
25
  native_segwit: (fragment) => `wpkh(${fragment})`,
26
+ taproot: (fragment) => `tr(${fragment})`,
26
27
  };
27
28
 
28
29
  function makeFingerprint(compressedPubKey) {
@@ -71,9 +71,10 @@ describe("isValidHost", () => {
71
71
  expect(isValidHost("")).toBe(false);
72
72
  expect(isValidHost("a b")).toBe(false);
73
73
  expect(isValidHost("ledger .com")).toBe(false);
74
- expect(isValidHost("ledger.com/foo")).toBe(false);
75
74
  });
76
75
  test("valid", () => {
76
+ expect(isValidHost("52.207.220.222/node/btc/")).toBe(true);
77
+ expect(isValidHost("ledger.com/foo")).toBe(true);
77
78
  expect(isValidHost("ledger.com")).toBe(true);
78
79
  expect(isValidHost("localhost")).toBe(true);
79
80
  expect(isValidHost("0.0.0.0")).toBe(true);
@@ -82,6 +83,8 @@ describe("isValidHost", () => {
82
83
  expect(isValidHost("192.168.0.1:8888")).toBe(true);
83
84
  expect(isValidHost("locahost:8888")).toBe(true);
84
85
  expect(isValidHost("ledger:8888")).toBe(true);
86
+ expect(isValidHost("ledger1:8888")).toBe(true);
87
+ expect(isValidHost("ledger-1:8888")).toBe(true);
85
88
  });
86
89
  });
87
90
  const mockConfig = {
@@ -1,7 +1,6 @@
1
1
  import { log } from "@ledgerhq/logs";
2
2
  import { Observable, interval, from } from "rxjs";
3
3
  import semver from "semver";
4
- import url from "url";
5
4
  import { share, switchMap, filter } from "rxjs/operators";
6
5
  import {
7
6
  SatStackVersionTooOld,
@@ -37,12 +36,17 @@ export type RPCNodeConfig = {
37
36
  password: string;
38
37
  tls?: boolean;
39
38
  };
39
+
40
40
  export function isValidHost(host: string): boolean {
41
- const splits = host.split(":");
42
- if (splits.length > 2) return false;
43
- // domainToASCII returns "" when a domain is invalid
44
- return Boolean(url.domainToASCII(splits[0]));
41
+ const pattern = new RegExp(
42
+ "^" + // beginning of url
43
+ "(((([a-z\\d]([a-z\\d-]*[a-z\\d])*)\\.)+[a-z]{2,})|^[a-z\\d-]{2,}|" + // domain name
44
+ "((\\d{1,3}\\.){3}\\d{1,3}))" + // OR ip (v4) address
45
+ "(\\:\\d+)?(\\/[-a-z\\d%_.~+]*)*$"
46
+ ); // port and path
47
+ return !!pattern.test(host);
45
48
  }
49
+
46
50
  // we would call this only during the user validation of the rpc node configuration
47
51
  export function validateRPCNodeConfig(config: RPCNodeConfig): Array<{
48
52
  field: string;
@@ -289,7 +289,6 @@ const bitcoinTestnet: AppSpec<Transaction> = {
289
289
  appQuery: {
290
290
  model: DeviceModelId.nanoS,
291
291
  appName: "Bitcoin Test",
292
- appVersion: "2.0.0-beta",
293
292
  },
294
293
  test: genericTest,
295
294
  mutations: bitcoinLikeMutations({
@@ -1,3 +1,5 @@
1
+ import "../../__tests__/test-helpers/setup";
2
+ import { testBridge } from "../../__tests__/test-helpers/bridge";
1
3
  import BigNumber from "bignumber.js";
2
4
  import type { DatasetTest } from "../../types";
3
5
  import { cardanoRawAccount1 } from "./datasets/rawAccount.1";
@@ -38,4 +40,4 @@ const dataset: DatasetTest<Transaction> = {
38
40
  },
39
41
  };
40
42
 
41
- export default dataset;
43
+ testBridge(dataset);
@@ -0,0 +1,14 @@
1
+ import "../../__tests__/test-helpers/setup";
2
+ import { testBridge } from "../../__tests__/test-helpers/bridge";
3
+ import type { DatasetTest } from "../../types";
4
+ import celo from "./datasets/celo.scanAccounts.1";
5
+ import type { Transaction } from "./types";
6
+
7
+ const dataset: DatasetTest<Transaction> = {
8
+ implementations: ["js"],
9
+ currencies: {
10
+ celo,
11
+ },
12
+ };
13
+
14
+ testBridge(dataset);
@@ -1,3 +1,5 @@
1
+ import "../../__tests__/test-helpers/setup";
2
+ import { testBridge } from "../../__tests__/test-helpers/bridge";
1
3
  import { BigNumber } from "bignumber.js";
2
4
  import type { CurrenciesData, DatasetTest } from "../../types";
3
5
  import {
@@ -11,7 +13,6 @@ import invariant from "invariant";
11
13
  import type { Transaction } from "./types";
12
14
  import transactionTransformer from "./transaction";
13
15
 
14
- // eslint-disable-next-line @typescript-eslint/no-unused-vars
15
16
  const cosmos: CurrenciesData<Transaction> = {
16
17
  FIXME_ignoreAccountFields: [
17
18
  "cosmosResources.unbondingBalance", // They move once all unbonding are done
@@ -25,19 +26,19 @@ const cosmos: CurrenciesData<Transaction> = {
25
26
  {
26
27
  name: "cosmos seed 1",
27
28
  apdus: `
28
- => 550400001b06636f736d6f732c00008076000080000000800000000000000000
29
- <= 0388459b2653519948b12492f1a0b464720110c147a8155d23d423a5cc3c21d89a636f736d6f73316738343933346a70753376356465357971756b6b6b68786d63767377337532616a787670646c9000
30
- => 550400001b06636f736d6f732c00008076000080000000800000000000000000
31
- <= 0388459b2653519948b12492f1a0b464720110c147a8155d23d423a5cc3c21d89a636f736d6f73316738343933346a70753376356465357971756b6b6b68786d63767377337532616a787670646c9000
32
- => 550400001b06636f736d6f732c00008076000080010000800000000000000000
33
- <= 02624ac83690d5ef627927104767d679aef73d3d3c9544abe4206b1d0c463c94ff636f736d6f7331303875793571396a743539677775677135797264686b7a6364396a7279736c6d706373746b359000
34
- => 550400001b06636f736d6f732c00008076000080020000800000000000000000
35
- <= 038ff98278402aa3e46ccfd020561dc9724ab63d7179ca507c8154b5257c7d5200636f736d6f733163676336393661793270673664346763656a656b3279386c6136366a376535793363376b79779000
36
- => 550400001b06636f736d6f732c00008076000080030000800000000000000000
37
- <= 02ecca2a8c647b50bcea2cb4667bb8b2c5f5b2b8439d51c842bc9fd20c4185a95c636f736d6f73313474673476736430713734356678687a6e333239706b78306b727174737a6378797a6c356b759000
38
- => 550400001b06636f736d6f732c00008076000080040000800000000000000000
39
- <= 03f9f9ddeefd1b762648af6b3ba3e14b0054d7137cf5ed67f501f01524a773c8d0636f736d6f733138713661643239346477357766376e7565713763746c656568786839666774386463656372399000
40
- `,
29
+ => 550400001b06636f736d6f732c00008076000080000000800000000000000000
30
+ <= 0388459b2653519948b12492f1a0b464720110c147a8155d23d423a5cc3c21d89a636f736d6f73316738343933346a70753376356465357971756b6b6b68786d63767377337532616a787670646c9000
31
+ => 550400001b06636f736d6f732c00008076000080000000800000000000000000
32
+ <= 0388459b2653519948b12492f1a0b464720110c147a8155d23d423a5cc3c21d89a636f736d6f73316738343933346a70753376356465357971756b6b6b68786d63767377337532616a787670646c9000
33
+ => 550400001b06636f736d6f732c00008076000080010000800000000000000000
34
+ <= 02624ac83690d5ef627927104767d679aef73d3d3c9544abe4206b1d0c463c94ff636f736d6f7331303875793571396a743539677775677135797264686b7a6364396a7279736c6d706373746b359000
35
+ => 550400001b06636f736d6f732c00008076000080020000800000000000000000
36
+ <= 038ff98278402aa3e46ccfd020561dc9724ab63d7179ca507c8154b5257c7d5200636f736d6f733163676336393661793270673664346763656a656b3279386c6136366a376535793363376b79779000
37
+ => 550400001b06636f736d6f732c00008076000080030000800000000000000000
38
+ <= 02ecca2a8c647b50bcea2cb4667bb8b2c5f5b2b8439d51c842bc9fd20c4185a95c636f736d6f73313474673476736430713734356678687a6e333239706b78306b727174737a6378797a6c356b759000
39
+ => 550400001b06636f736d6f732c00008076000080040000800000000000000000
40
+ <= 03f9f9ddeefd1b762648af6b3ba3e14b0054d7137cf5ed67f501f01524a773c8d0636f736d6f733138713661643239346477357766376e7565713763746c656568786839666774386463656372399000
41
+ `,
41
42
  },
42
43
  ],
43
44
  accounts: [
@@ -462,4 +463,5 @@ const dataset: DatasetTest<Transaction> = {
462
463
  cosmos,
463
464
  },
464
465
  };
465
- export default dataset;
466
+
467
+ testBridge(dataset);
@@ -81,12 +81,12 @@ const acceptTransaction: DeviceAction<Transaction, any> = deviceActionFlow({
81
81
  expectedValue: ({ account }) => account.freshAddress,
82
82
  },
83
83
  {
84
- title: "Approve",
84
+ title: "APPROVE",
85
85
  button: "LRlr",
86
86
  final: true,
87
87
  },
88
88
  {
89
- title: "Reject",
89
+ title: "REJECT",
90
90
  },
91
91
  ],
92
92
  });