@ledgerhq/live-common 27.2.0 → 27.3.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 (371) hide show
  1. package/lib/apps/logic.test.js +1 -1
  2. package/lib/apps/logic.test.js.map +1 -1
  3. package/lib/apps/polyfill.d.ts +1 -1
  4. package/lib/apps/polyfill.d.ts.map +1 -1
  5. package/lib/apps/polyfill.js +6 -3
  6. package/lib/apps/polyfill.js.map +1 -1
  7. package/lib/apps/polyfill.test.d.ts +2 -0
  8. package/lib/apps/polyfill.test.d.ts.map +1 -0
  9. package/lib/apps/polyfill.test.js +25 -0
  10. package/lib/apps/polyfill.test.js.map +1 -0
  11. package/lib/apps/support.d.ts.map +1 -1
  12. package/lib/apps/support.js +3 -2
  13. package/lib/apps/support.js.map +1 -1
  14. package/lib/bot/engine.d.ts.map +1 -1
  15. package/lib/bot/engine.js +154 -45
  16. package/lib/bot/engine.js.map +1 -1
  17. package/lib/bot/formatters.d.ts +1 -1
  18. package/lib/bot/formatters.d.ts.map +1 -1
  19. package/lib/bot/formatters.js +9 -3
  20. package/lib/bot/formatters.js.map +1 -1
  21. package/lib/bot/index.d.ts.map +1 -1
  22. package/lib/bot/index.js +29 -11
  23. package/lib/bot/index.js.map +1 -1
  24. package/lib/bot/specs.d.ts +12 -1
  25. package/lib/bot/specs.d.ts.map +1 -1
  26. package/lib/bot/specs.js +75 -1
  27. package/lib/bot/specs.js.map +1 -1
  28. package/lib/bot/types.d.ts +18 -1
  29. package/lib/bot/types.d.ts.map +1 -1
  30. package/lib/currencies/sortByMarketcap.d.ts.map +1 -1
  31. package/lib/currencies/sortByMarketcap.js +5 -1
  32. package/lib/currencies/sortByMarketcap.js.map +1 -1
  33. package/lib/currencies/support.d.ts.map +1 -1
  34. package/lib/currencies/support.js +2 -1
  35. package/lib/currencies/support.js.map +1 -1
  36. package/lib/derivation.d.ts.map +1 -1
  37. package/lib/derivation.js +2 -4
  38. package/lib/derivation.js.map +1 -1
  39. package/lib/env.js +1 -1
  40. package/lib/exchange/swap/getExchangeRates.d.ts.map +1 -1
  41. package/lib/exchange/swap/getExchangeRates.js +6 -3
  42. package/lib/exchange/swap/getExchangeRates.js.map +1 -1
  43. package/lib/exchange/swap/getProviders.d.ts.map +1 -1
  44. package/lib/exchange/swap/getProviders.js +45 -5
  45. package/lib/exchange/swap/getProviders.js.map +1 -1
  46. package/lib/exchange/swap/getProviders.test.d.ts +2 -0
  47. package/lib/exchange/swap/getProviders.test.d.ts.map +1 -0
  48. package/lib/exchange/swap/getProviders.test.js +519 -0
  49. package/lib/exchange/swap/getProviders.test.js.map +1 -0
  50. package/lib/exchange/swap/hooks/useProviderRates.d.ts +1 -0
  51. package/lib/exchange/swap/hooks/useProviderRates.d.ts.map +1 -1
  52. package/lib/exchange/swap/hooks/useProviderRates.js +19 -4
  53. package/lib/exchange/swap/hooks/useProviderRates.js.map +1 -1
  54. package/lib/exchange/swap/hooks/useProviderRates.test.js +42 -0
  55. package/lib/exchange/swap/hooks/useProviderRates.test.js.map +1 -1
  56. package/lib/exchange/swap/hooks/useSwapTransaction.d.ts +1 -0
  57. package/lib/exchange/swap/hooks/useSwapTransaction.d.ts.map +1 -1
  58. package/lib/exchange/swap/hooks/useSwapTransaction.js +2 -1
  59. package/lib/exchange/swap/hooks/useSwapTransaction.js.map +1 -1
  60. package/lib/exchange/swap/index.d.ts +2 -1
  61. package/lib/exchange/swap/index.d.ts.map +1 -1
  62. package/lib/exchange/swap/index.js +11 -1
  63. package/lib/exchange/swap/index.js.map +1 -1
  64. package/lib/exchange/swap/index.test.js +22 -0
  65. package/lib/exchange/swap/index.test.js.map +1 -1
  66. package/lib/exchange/swap/mock.js +1 -1
  67. package/lib/exchange/swap/mock.js.map +1 -1
  68. package/lib/exchange/swap/types.d.ts +14 -0
  69. package/lib/exchange/swap/types.d.ts.map +1 -1
  70. package/lib/exchange/swap/utils/index.d.ts +1 -0
  71. package/lib/exchange/swap/utils/index.d.ts.map +1 -1
  72. package/lib/exchange/swap/utils/index.js +6 -1
  73. package/lib/exchange/swap/utils/index.js.map +1 -1
  74. package/lib/exchange/swap/utils/index.test.js +12 -0
  75. package/lib/exchange/swap/utils/index.test.js.map +1 -1
  76. package/lib/families/algorand/specs.d.ts.map +1 -1
  77. package/lib/families/algorand/specs.js +2 -0
  78. package/lib/families/algorand/specs.js.map +1 -1
  79. package/lib/families/algorand/speculos-deviceActions.d.ts.map +1 -1
  80. package/lib/families/algorand/speculos-deviceActions.js +2 -29
  81. package/lib/families/algorand/speculos-deviceActions.js.map +1 -1
  82. package/lib/families/bitcoin/specs.d.ts +0 -1
  83. package/lib/families/bitcoin/specs.d.ts.map +1 -1
  84. package/lib/families/bitcoin/specs.js +65 -48
  85. package/lib/families/bitcoin/specs.js.map +1 -1
  86. package/lib/families/bitcoin/speculos-deviceActions.d.ts.map +1 -1
  87. package/lib/families/bitcoin/speculos-deviceActions.js +2 -22
  88. package/lib/families/bitcoin/speculos-deviceActions.js.map +1 -1
  89. package/lib/families/cardano/specs.d.ts.map +1 -1
  90. package/lib/families/cardano/specs.js +9 -4
  91. package/lib/families/cardano/specs.js.map +1 -1
  92. package/lib/families/cardano/speculos-deviceActions.d.ts.map +1 -1
  93. package/lib/families/cardano/speculos-deviceActions.js +2 -10
  94. package/lib/families/cardano/speculos-deviceActions.js.map +1 -1
  95. package/lib/families/celo/specs/createSendMutation.d.ts +1 -0
  96. package/lib/families/celo/specs/createSendMutation.d.ts.map +1 -1
  97. package/lib/families/celo/specs/createSendMutation.js +7 -5
  98. package/lib/families/celo/specs/createSendMutation.js.map +1 -1
  99. package/lib/families/celo/specs.d.ts.map +1 -1
  100. package/lib/families/celo/specs.js +1 -0
  101. package/lib/families/celo/specs.js.map +1 -1
  102. package/lib/families/celo/speculos-deviceActions.d.ts.map +1 -1
  103. package/lib/families/celo/speculos-deviceActions.js +3 -10
  104. package/lib/families/celo/speculos-deviceActions.js.map +1 -1
  105. package/lib/families/cosmos/helpers.d.ts +9 -0
  106. package/lib/families/cosmos/helpers.d.ts.map +1 -0
  107. package/lib/families/cosmos/helpers.js +20 -0
  108. package/lib/families/cosmos/helpers.js.map +1 -0
  109. package/lib/families/cosmos/helpers.unit.test.d.ts +2 -0
  110. package/lib/families/cosmos/helpers.unit.test.d.ts.map +1 -0
  111. package/lib/families/cosmos/helpers.unit.test.js +56 -0
  112. package/lib/families/cosmos/helpers.unit.test.js.map +1 -0
  113. package/lib/families/cosmos/js-signOperation.d.ts.map +1 -1
  114. package/lib/families/cosmos/js-signOperation.js +5 -3
  115. package/lib/families/cosmos/js-signOperation.js.map +1 -1
  116. package/lib/families/cosmos/js-synchronisation.d.ts.map +1 -1
  117. package/lib/families/cosmos/js-synchronisation.js +99 -95
  118. package/lib/families/cosmos/js-synchronisation.js.map +1 -1
  119. package/lib/families/cosmos/specs.d.ts.map +1 -1
  120. package/lib/families/cosmos/specs.js +5 -1
  121. package/lib/families/cosmos/specs.js.map +1 -1
  122. package/lib/families/crypto_org/specs.d.ts.map +1 -1
  123. package/lib/families/crypto_org/specs.js +9 -8
  124. package/lib/families/crypto_org/specs.js.map +1 -1
  125. package/lib/families/elrond/specs.d.ts.map +1 -1
  126. package/lib/families/elrond/specs.js +1 -0
  127. package/lib/families/elrond/specs.js.map +1 -1
  128. package/lib/families/elrond/speculos-deviceActions.d.ts.map +1 -1
  129. package/lib/families/elrond/speculos-deviceActions.js +3 -8
  130. package/lib/families/elrond/speculos-deviceActions.js.map +1 -1
  131. package/lib/families/ethereum/specs.d.ts.map +1 -1
  132. package/lib/families/ethereum/specs.js +20 -8
  133. package/lib/families/ethereum/specs.js.map +1 -1
  134. package/lib/families/ethereum/speculos-deviceActions.d.ts.map +1 -1
  135. package/lib/families/ethereum/speculos-deviceActions.js +10 -33
  136. package/lib/families/ethereum/speculos-deviceActions.js.map +1 -1
  137. package/lib/families/evm/specs.d.ts.map +1 -1
  138. package/lib/families/evm/specs.js +20 -10
  139. package/lib/families/evm/specs.js.map +1 -1
  140. package/lib/families/evm/speculos-deviceActions.d.ts.map +1 -1
  141. package/lib/families/evm/speculos-deviceActions.js +5 -25
  142. package/lib/families/evm/speculos-deviceActions.js.map +1 -1
  143. package/lib/families/filecoin/specs.d.ts.map +1 -1
  144. package/lib/families/filecoin/specs.js +3 -0
  145. package/lib/families/filecoin/specs.js.map +1 -1
  146. package/lib/families/filecoin/speculos-deviceActions.d.ts.map +1 -1
  147. package/lib/families/filecoin/speculos-deviceActions.js +6 -7
  148. package/lib/families/filecoin/speculos-deviceActions.js.map +1 -1
  149. package/lib/families/hedera/specs.d.ts.map +1 -1
  150. package/lib/families/hedera/specs.js +2 -0
  151. package/lib/families/hedera/specs.js.map +1 -1
  152. package/lib/families/osmosis/specs.d.ts.map +1 -1
  153. package/lib/families/osmosis/specs.js +3 -0
  154. package/lib/families/osmosis/specs.js.map +1 -1
  155. package/lib/families/polkadot/specs.d.ts.map +1 -1
  156. package/lib/families/polkadot/specs.js +4 -1
  157. package/lib/families/polkadot/specs.js.map +1 -1
  158. package/lib/families/polkadot/speculos-deviceActions.d.ts.map +1 -1
  159. package/lib/families/polkadot/speculos-deviceActions.js +3 -10
  160. package/lib/families/polkadot/speculos-deviceActions.js.map +1 -1
  161. package/lib/families/ripple/specs.d.ts.map +1 -1
  162. package/lib/families/ripple/specs.js +2 -0
  163. package/lib/families/ripple/specs.js.map +1 -1
  164. package/lib/families/ripple/speculos-deviceActions.d.ts.map +1 -1
  165. package/lib/families/ripple/speculos-deviceActions.js +2 -22
  166. package/lib/families/ripple/speculos-deviceActions.js.map +1 -1
  167. package/lib/families/solana/specs.d.ts.map +1 -1
  168. package/lib/families/solana/specs.js +7 -3
  169. package/lib/families/solana/specs.js.map +1 -1
  170. package/lib/families/solana/speculos-deviceActions.d.ts.map +1 -1
  171. package/lib/families/solana/speculos-deviceActions.js +5 -7
  172. package/lib/families/solana/speculos-deviceActions.js.map +1 -1
  173. package/lib/families/stellar/specs.d.ts.map +1 -1
  174. package/lib/families/stellar/specs.js +1 -0
  175. package/lib/families/stellar/specs.js.map +1 -1
  176. package/lib/families/stellar/speculos-deviceActions.d.ts.map +1 -1
  177. package/lib/families/stellar/speculos-deviceActions.js +4 -8
  178. package/lib/families/stellar/speculos-deviceActions.js.map +1 -1
  179. package/lib/families/tezos/specs.d.ts.map +1 -1
  180. package/lib/families/tezos/specs.js +6 -1
  181. package/lib/families/tezos/specs.js.map +1 -1
  182. package/lib/families/tezos/speculos-deviceActions.d.ts.map +1 -1
  183. package/lib/families/tezos/speculos-deviceActions.js +6 -11
  184. package/lib/families/tezos/speculos-deviceActions.js.map +1 -1
  185. package/lib/families/tron/specs.d.ts.map +1 -1
  186. package/lib/families/tron/specs.js +16 -1
  187. package/lib/families/tron/specs.js.map +1 -1
  188. package/lib/families/tron/speculos-deviceActions.d.ts.map +1 -1
  189. package/lib/families/tron/speculos-deviceActions.js +2 -14
  190. package/lib/families/tron/speculos-deviceActions.js.map +1 -1
  191. package/lib/families/tron/synchronisation.integration.test.d.ts +2 -0
  192. package/lib/families/tron/synchronisation.integration.test.d.ts.map +1 -0
  193. package/lib/families/tron/{synchronisation.test.js → synchronisation.integration.test.js} +1 -1
  194. package/lib/families/tron/synchronisation.integration.test.js.map +1 -0
  195. package/lib/featureFlags/defaultFeatures.d.ts.map +1 -1
  196. package/lib/featureFlags/defaultFeatures.js +6 -0
  197. package/lib/featureFlags/defaultFeatures.js.map +1 -1
  198. package/lib/generated/specs.d.ts +0 -1
  199. package/lib/generated/specs.d.ts.map +1 -1
  200. package/lib/hw/actions/installLanguage.js +1 -1
  201. package/lib/hw/extractOnboardingState.d.ts +5 -1
  202. package/lib/hw/extractOnboardingState.d.ts.map +1 -1
  203. package/lib/hw/extractOnboardingState.js +17 -9
  204. package/lib/hw/extractOnboardingState.js.map +1 -1
  205. package/lib/hw/extractOnboardingState.test.js +21 -11
  206. package/lib/hw/extractOnboardingState.test.js.map +1 -1
  207. package/lib/load/speculos.d.ts.map +1 -1
  208. package/lib/load/speculos.js +39 -15
  209. package/lib/load/speculos.js.map +1 -1
  210. package/lib/manager/hooks.d.ts +4 -1
  211. package/lib/manager/hooks.d.ts.map +1 -1
  212. package/lib/manager/hooks.js +4 -3
  213. package/lib/manager/hooks.js.map +1 -1
  214. package/lib/manager/localization.js +2 -2
  215. package/lib/manager/localization.js.map +1 -1
  216. package/lib/mock/account.d.ts.map +1 -1
  217. package/lib/mock/account.js +17 -19
  218. package/lib/mock/account.js.map +1 -1
  219. package/lib/notifications/ServiceStatusProvider/index.d.ts.map +1 -1
  220. package/lib/notifications/ServiceStatusProvider/index.js +5 -1
  221. package/lib/notifications/ServiceStatusProvider/index.js.map +1 -1
  222. package/lib/postOnboarding/PostOnboardingProvider.d.ts +20 -0
  223. package/lib/postOnboarding/PostOnboardingProvider.d.ts.map +1 -0
  224. package/lib/postOnboarding/PostOnboardingProvider.js +33 -0
  225. package/lib/postOnboarding/PostOnboardingProvider.js.map +1 -0
  226. package/lib/postOnboarding/actions.d.ts +20 -0
  227. package/lib/postOnboarding/actions.d.ts.map +1 -0
  228. package/lib/postOnboarding/actions.js +37 -0
  229. package/lib/postOnboarding/actions.js.map +1 -0
  230. package/lib/postOnboarding/hooks/index.d.ts +6 -0
  231. package/lib/postOnboarding/hooks/index.d.ts.map +1 -0
  232. package/lib/postOnboarding/hooks/index.js +22 -0
  233. package/lib/postOnboarding/hooks/index.js.map +1 -0
  234. package/lib/postOnboarding/hooks/useAllPostOnboardingActionsCompleted.d.ts +8 -0
  235. package/lib/postOnboarding/hooks/useAllPostOnboardingActionsCompleted.d.ts.map +1 -0
  236. package/lib/postOnboarding/hooks/useAllPostOnboardingActionsCompleted.js +16 -0
  237. package/lib/postOnboarding/hooks/useAllPostOnboardingActionsCompleted.js.map +1 -0
  238. package/lib/postOnboarding/hooks/useAllPostOnboardingActionsCompleted.test.d.ts +2 -0
  239. package/lib/postOnboarding/hooks/useAllPostOnboardingActionsCompleted.test.d.ts.map +1 -0
  240. package/lib/postOnboarding/hooks/useAllPostOnboardingActionsCompleted.test.js +75 -0
  241. package/lib/postOnboarding/hooks/useAllPostOnboardingActionsCompleted.test.js.map +1 -0
  242. package/lib/postOnboarding/hooks/usePostOnboardingContext.d.ts +3 -0
  243. package/lib/postOnboarding/hooks/usePostOnboardingContext.d.ts.map +1 -0
  244. package/lib/postOnboarding/hooks/usePostOnboardingContext.js +10 -0
  245. package/lib/postOnboarding/hooks/usePostOnboardingContext.js.map +1 -0
  246. package/lib/postOnboarding/hooks/usePostOnboardingEntryPointVisibleOnWallet.d.ts +8 -0
  247. package/lib/postOnboarding/hooks/usePostOnboardingEntryPointVisibleOnWallet.d.ts.map +1 -0
  248. package/lib/postOnboarding/hooks/usePostOnboardingEntryPointVisibleOnWallet.js +20 -0
  249. package/lib/postOnboarding/hooks/usePostOnboardingEntryPointVisibleOnWallet.js.map +1 -0
  250. package/lib/postOnboarding/hooks/usePostOnboardingEntryPointVisibleOnWallet.test.d.ts +2 -0
  251. package/lib/postOnboarding/hooks/usePostOnboardingEntryPointVisibleOnWallet.test.d.ts.map +1 -0
  252. package/lib/postOnboarding/hooks/usePostOnboardingEntryPointVisibleOnWallet.test.js +64 -0
  253. package/lib/postOnboarding/hooks/usePostOnboardingEntryPointVisibleOnWallet.test.js.map +1 -0
  254. package/lib/postOnboarding/hooks/usePostOnboardingHubState.d.ts +12 -0
  255. package/lib/postOnboarding/hooks/usePostOnboardingHubState.d.ts.map +1 -0
  256. package/lib/postOnboarding/hooks/usePostOnboardingHubState.js +65 -0
  257. package/lib/postOnboarding/hooks/usePostOnboardingHubState.js.map +1 -0
  258. package/lib/postOnboarding/hooks/usePostOnboardingHubState.test.d.ts +2 -0
  259. package/lib/postOnboarding/hooks/usePostOnboardingHubState.test.d.ts.map +1 -0
  260. package/lib/postOnboarding/hooks/usePostOnboardingHubState.test.js +129 -0
  261. package/lib/postOnboarding/hooks/usePostOnboardingHubState.test.js.map +1 -0
  262. package/lib/postOnboarding/hooks/useStartPostOnboardingCallback.d.ts +13 -0
  263. package/lib/postOnboarding/hooks/useStartPostOnboardingCallback.d.ts.map +1 -0
  264. package/lib/postOnboarding/hooks/useStartPostOnboardingCallback.js +34 -0
  265. package/lib/postOnboarding/hooks/useStartPostOnboardingCallback.js.map +1 -0
  266. package/lib/postOnboarding/mock.d.ts +8 -0
  267. package/lib/postOnboarding/mock.d.ts.map +1 -0
  268. package/lib/postOnboarding/mock.js +46 -0
  269. package/lib/postOnboarding/mock.js.map +1 -0
  270. package/lib/postOnboarding/reducer.d.ts +22 -0
  271. package/lib/postOnboarding/reducer.d.ts.map +1 -0
  272. package/lib/postOnboarding/reducer.js +71 -0
  273. package/lib/postOnboarding/reducer.js.map +1 -0
  274. package/lib/postOnboarding/reducer.test.d.ts +2 -0
  275. package/lib/postOnboarding/reducer.test.d.ts.map +1 -0
  276. package/lib/postOnboarding/reducer.test.js +251 -0
  277. package/lib/postOnboarding/reducer.test.js.map +1 -0
  278. package/package.json +24 -20
  279. package/src/__tests__/__snapshots__/portfolio.v2.ts.snap +16 -0
  280. package/src/apps/__snapshots__/logic.test.ts.snap +18 -11
  281. package/src/apps/logic.test.ts +1 -2
  282. package/src/apps/polyfill.test.ts +24 -0
  283. package/src/apps/polyfill.ts +7 -2
  284. package/src/apps/support.ts +2 -1
  285. package/src/bot/engine.ts +178 -35
  286. package/src/bot/formatters.ts +15 -2
  287. package/src/bot/index.ts +48 -19
  288. package/src/bot/specs.ts +95 -1
  289. package/src/bot/types.ts +23 -1
  290. package/src/currencies/__snapshots__/sortByMarketcap.test.ts.snap +55 -6
  291. package/src/currencies/sortByMarketcap.ts +6 -1
  292. package/src/currencies/support.ts +2 -1
  293. package/src/derivation.ts +2 -4
  294. package/src/env.ts +1 -1
  295. package/src/exchange/swap/getExchangeRates.ts +12 -5
  296. package/src/exchange/swap/getProviders.test.ts +450 -0
  297. package/src/exchange/swap/getProviders.ts +31 -8
  298. package/src/exchange/swap/hooks/useProviderRates.test.ts +43 -0
  299. package/src/exchange/swap/hooks/useProviderRates.ts +22 -3
  300. package/src/exchange/swap/hooks/useSwapTransaction.ts +3 -1
  301. package/src/exchange/swap/index.test.ts +36 -1
  302. package/src/exchange/swap/index.ts +15 -0
  303. package/src/exchange/swap/mock.ts +2 -2
  304. package/src/exchange/swap/types.ts +11 -0
  305. package/src/exchange/swap/utils/index.test.ts +19 -0
  306. package/src/exchange/swap/utils/index.ts +5 -0
  307. package/src/families/algorand/specs.ts +3 -1
  308. package/src/families/algorand/speculos-deviceActions.ts +4 -35
  309. package/src/families/bitcoin/specs.ts +72 -56
  310. package/src/families/bitcoin/speculos-deviceActions.ts +3 -26
  311. package/src/families/cardano/specs.ts +9 -4
  312. package/src/families/cardano/speculos-deviceActions.ts +3 -14
  313. package/src/families/celo/specs/createSendMutation.ts +5 -3
  314. package/src/families/celo/specs.ts +2 -0
  315. package/src/families/celo/speculos-deviceActions.ts +6 -14
  316. package/src/families/cosmos/__snapshots__/bridge.integration.test.ts.snap +24 -44
  317. package/src/families/cosmos/helpers.ts +21 -0
  318. package/src/families/cosmos/helpers.unit.test.ts +63 -0
  319. package/src/families/cosmos/js-signOperation.ts +6 -3
  320. package/src/families/cosmos/js-synchronisation.ts +120 -119
  321. package/src/families/cosmos/specs.ts +11 -2
  322. package/src/families/crypto_org/specs.ts +12 -19
  323. package/src/families/elrond/specs.ts +1 -0
  324. package/src/families/elrond/speculos-deviceActions.ts +4 -9
  325. package/src/families/ethereum/specs.ts +34 -38
  326. package/src/families/ethereum/speculos-deviceActions.ts +16 -46
  327. package/src/families/evm/specs.ts +18 -8
  328. package/src/families/evm/speculos-deviceActions.ts +7 -35
  329. package/src/families/filecoin/specs.ts +4 -1
  330. package/src/families/filecoin/speculos-deviceActions.ts +7 -8
  331. package/src/families/hedera/specs.ts +3 -1
  332. package/src/families/osmosis/specs.ts +4 -1
  333. package/src/families/polkadot/specs.ts +11 -2
  334. package/src/families/polkadot/speculos-deviceActions.ts +5 -16
  335. package/src/families/ripple/specs.ts +3 -1
  336. package/src/families/ripple/speculos-deviceActions.ts +3 -28
  337. package/src/families/solana/specs.ts +15 -4
  338. package/src/families/solana/speculos-deviceActions.ts +6 -8
  339. package/src/families/stellar/specs.ts +1 -0
  340. package/src/families/stellar/speculos-deviceActions.ts +5 -11
  341. package/src/families/tezos/specs.ts +7 -5
  342. package/src/families/tezos/speculos-deviceActions.ts +9 -16
  343. package/src/families/tron/specs.ts +31 -3
  344. package/src/families/tron/speculos-deviceActions.ts +4 -12
  345. package/src/families/tron/{synchronisation.test.ts → synchronisation.integration.test.ts} +0 -0
  346. package/src/featureFlags/defaultFeatures.ts +6 -0
  347. package/src/hw/actions/installLanguage.ts +1 -1
  348. package/src/hw/extractOnboardingState.test.ts +29 -12
  349. package/src/hw/extractOnboardingState.ts +17 -9
  350. package/src/load/speculos.ts +42 -21
  351. package/src/manager/hooks.ts +6 -6
  352. package/src/manager/localization.ts +2 -2
  353. package/src/mock/account.ts +18 -20
  354. package/src/notifications/ServiceStatusProvider/index.tsx +8 -1
  355. package/src/postOnboarding/PostOnboardingProvider.tsx +49 -0
  356. package/src/postOnboarding/actions.ts +40 -0
  357. package/src/postOnboarding/hooks/index.ts +5 -0
  358. package/src/postOnboarding/hooks/useAllPostOnboardingActionsCompleted.test.ts +82 -0
  359. package/src/postOnboarding/hooks/useAllPostOnboardingActionsCompleted.ts +12 -0
  360. package/src/postOnboarding/hooks/usePostOnboardingContext.ts +9 -0
  361. package/src/postOnboarding/hooks/usePostOnboardingEntryPointVisibleOnWallet.test.ts +83 -0
  362. package/src/postOnboarding/hooks/usePostOnboardingEntryPointVisibleOnWallet.ts +22 -0
  363. package/src/postOnboarding/hooks/usePostOnboardingHubState.test.ts +184 -0
  364. package/src/postOnboarding/hooks/usePostOnboardingHubState.ts +56 -0
  365. package/src/postOnboarding/hooks/useStartPostOnboardingCallback.ts +38 -0
  366. package/src/postOnboarding/mock.ts +53 -0
  367. package/src/postOnboarding/reducer.test.ts +247 -0
  368. package/src/postOnboarding/reducer.ts +105 -0
  369. package/lib/families/tron/synchronisation.test.d.ts +0 -2
  370. package/lib/families/tron/synchronisation.test.d.ts.map +0 -1
  371. package/lib/families/tron/synchronisation.test.js.map +0 -1
@@ -0,0 +1,519 @@
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
+ var axios_1 = __importDefault(require("axios"));
54
+ var getProviders_1 = __importDefault(require("./getProviders"));
55
+ var env_1 = require("../../env");
56
+ var EXPECTED_RESULT_V4 = [
57
+ {
58
+ provider: "changelly",
59
+ pairs: [
60
+ {
61
+ from: "bitcoin",
62
+ to: "ethereum",
63
+ tradeMethod: "float"
64
+ },
65
+ {
66
+ from: "bitcoin",
67
+ to: "zcash",
68
+ tradeMethod: "float"
69
+ },
70
+ {
71
+ from: "bitcoin",
72
+ to: "ethereum_classic",
73
+ tradeMethod: "float"
74
+ },
75
+ {
76
+ from: "ethereum",
77
+ to: "bitcoin",
78
+ tradeMethod: "float"
79
+ },
80
+ {
81
+ from: "ethereum",
82
+ to: "zcash",
83
+ tradeMethod: "float"
84
+ },
85
+ {
86
+ from: "ethereum",
87
+ to: "ethereum_classic",
88
+ tradeMethod: "float"
89
+ },
90
+ {
91
+ from: "bitcoin",
92
+ to: "ethereum",
93
+ tradeMethod: "float"
94
+ },
95
+ {
96
+ from: "bitcoin",
97
+ to: "zcash",
98
+ tradeMethod: "float"
99
+ },
100
+ {
101
+ from: "bitcoin",
102
+ to: "ethereum_classic",
103
+ tradeMethod: "float"
104
+ },
105
+ {
106
+ from: "ethereum",
107
+ to: "bitcoin",
108
+ tradeMethod: "float"
109
+ },
110
+ {
111
+ from: "ethereum",
112
+ to: "zcash",
113
+ tradeMethod: "float"
114
+ },
115
+ {
116
+ from: "ethereum",
117
+ to: "ethereum_classic",
118
+ tradeMethod: "float"
119
+ },
120
+ {
121
+ from: "zcash",
122
+ to: "bitcoin",
123
+ tradeMethod: "float"
124
+ },
125
+ {
126
+ from: "zcash",
127
+ to: "ethereum_classic",
128
+ tradeMethod: "float"
129
+ },
130
+ {
131
+ from: "ethereum_classic",
132
+ to: "bitcoin",
133
+ tradeMethod: "float"
134
+ },
135
+ {
136
+ from: "ethereum_classic",
137
+ to: "ethereum",
138
+ tradeMethod: "float"
139
+ },
140
+ {
141
+ from: "bitcoin",
142
+ to: "ethereum",
143
+ tradeMethod: "fixed"
144
+ },
145
+ {
146
+ from: "bitcoin",
147
+ to: "zcash",
148
+ tradeMethod: "fixed"
149
+ },
150
+ {
151
+ from: "bitcoin",
152
+ to: "ethereum_classic",
153
+ tradeMethod: "fixed"
154
+ },
155
+ {
156
+ from: "ethereum",
157
+ to: "bitcoin",
158
+ tradeMethod: "fixed"
159
+ },
160
+ {
161
+ from: "ethereum",
162
+ to: "zcash",
163
+ tradeMethod: "fixed"
164
+ },
165
+ {
166
+ from: "ethereum",
167
+ to: "ethereum_classic",
168
+ tradeMethod: "fixed"
169
+ },
170
+ {
171
+ from: "zcash",
172
+ to: "bitcoin",
173
+ tradeMethod: "fixed"
174
+ },
175
+ {
176
+ from: "zcash",
177
+ to: "ethereum_classic",
178
+ tradeMethod: "fixed"
179
+ },
180
+ {
181
+ from: "ethereum_classic",
182
+ to: "bitcoin",
183
+ tradeMethod: "fixed"
184
+ },
185
+ {
186
+ from: "ethereum_classic",
187
+ to: "ethereum",
188
+ tradeMethod: "fixed"
189
+ },
190
+ {
191
+ from: "zcash",
192
+ to: "bitcoin",
193
+ tradeMethod: "fixed"
194
+ },
195
+ {
196
+ from: "zcash",
197
+ to: "ethereum_classic",
198
+ tradeMethod: "fixed"
199
+ },
200
+ {
201
+ from: "ethereum_classic",
202
+ to: "bitcoin",
203
+ tradeMethod: "fixed"
204
+ },
205
+ {
206
+ from: "ethereum_classic",
207
+ to: "ethereum",
208
+ tradeMethod: "fixed"
209
+ },
210
+ ]
211
+ },
212
+ {
213
+ provider: "ftx",
214
+ pairs: [
215
+ {
216
+ from: "bitcoin",
217
+ to: "ethereum",
218
+ tradeMethod: "float"
219
+ },
220
+ {
221
+ from: "bitcoin",
222
+ to: "zcash",
223
+ tradeMethod: "float"
224
+ },
225
+ {
226
+ from: "bitcoin",
227
+ to: "ethereum_classic",
228
+ tradeMethod: "float"
229
+ },
230
+ {
231
+ from: "ethereum",
232
+ to: "bitcoin",
233
+ tradeMethod: "float"
234
+ },
235
+ {
236
+ from: "ethereum",
237
+ to: "zcash",
238
+ tradeMethod: "float"
239
+ },
240
+ {
241
+ from: "ethereum",
242
+ to: "ethereum_classic",
243
+ tradeMethod: "float"
244
+ },
245
+ {
246
+ from: "zcash",
247
+ to: "bitcoin",
248
+ tradeMethod: "float"
249
+ },
250
+ {
251
+ from: "zcash",
252
+ to: "ethereum",
253
+ tradeMethod: "float"
254
+ },
255
+ {
256
+ from: "zcash",
257
+ to: "ethereum_classic",
258
+ tradeMethod: "float"
259
+ },
260
+ {
261
+ from: "ethereum_classic",
262
+ to: "bitcoin",
263
+ tradeMethod: "float"
264
+ },
265
+ {
266
+ from: "ethereum_classic",
267
+ to: "ethereum",
268
+ tradeMethod: "float"
269
+ },
270
+ {
271
+ from: "ethereum_classic",
272
+ to: "zcash",
273
+ tradeMethod: "float"
274
+ },
275
+ ]
276
+ },
277
+ ];
278
+ jest.mock("axios");
279
+ var mockedAxios = jest.mocked(axios_1["default"]);
280
+ describe("swap/getProviders", function () {
281
+ var DEFAULT_SWAP_API_BASE = (0, env_1.getEnv)("SWAP_API_BASE");
282
+ afterAll(function () {
283
+ // Restore DEFAULT_SWAP_API_BASE
284
+ (0, env_1.setEnv)("SWAP_API_BASE", DEFAULT_SWAP_API_BASE);
285
+ });
286
+ describe("version 2", function () {
287
+ var data = [
288
+ {
289
+ provider: "changelly",
290
+ pairs: [
291
+ {
292
+ from: "bitcoin",
293
+ to: "ethereum",
294
+ tradeMethod: ["float", "fixed"]
295
+ },
296
+ {
297
+ from: "bitcoin",
298
+ to: "ethereum_classic",
299
+ tradeMethod: ["float", "fixed"]
300
+ },
301
+ ]
302
+ },
303
+ ];
304
+ var resp = {
305
+ data: data,
306
+ status: 200,
307
+ statusText: "",
308
+ headers: {},
309
+ config: {}
310
+ };
311
+ beforeAll(function () {
312
+ // set SWAP_API_BASE
313
+ (0, env_1.setEnv)("SWAP_API_BASE", "https://swap.ledger.com/v2");
314
+ });
315
+ beforeEach(function () {
316
+ mockedAxios.mockResolvedValue(Promise.resolve(resp));
317
+ });
318
+ afterEach(function () {
319
+ mockedAxios.mockClear();
320
+ });
321
+ test("should not be called with whitelist", function () { return __awaiter(void 0, void 0, void 0, function () {
322
+ return __generator(this, function (_a) {
323
+ switch (_a.label) {
324
+ case 0: return [4 /*yield*/, (0, getProviders_1["default"])()];
325
+ case 1:
326
+ _a.sent();
327
+ expect(mockedAxios).toBeCalledWith(expect.objectContaining({
328
+ params: undefined
329
+ }));
330
+ return [2 /*return*/];
331
+ }
332
+ });
333
+ }); });
334
+ });
335
+ describe("version 3", function () {
336
+ var data = [
337
+ {
338
+ provider: "changelly",
339
+ pairs: [
340
+ {
341
+ from: "bitcoin",
342
+ to: "ethereum",
343
+ tradeMethod: ["float", "fixed"]
344
+ },
345
+ {
346
+ from: "bitcoin",
347
+ to: "ethereum_classic",
348
+ tradeMethod: ["float", "fixed"]
349
+ },
350
+ ]
351
+ },
352
+ ];
353
+ var resp = {
354
+ data: data,
355
+ status: 200,
356
+ statusText: "",
357
+ headers: {},
358
+ config: {}
359
+ };
360
+ beforeAll(function () {
361
+ // set SWAP_API_BASE
362
+ (0, env_1.setEnv)("SWAP_API_BASE", "https://swap.ledger.com/v3");
363
+ });
364
+ beforeEach(function () {
365
+ mockedAxios.mockResolvedValue(Promise.resolve(resp));
366
+ });
367
+ afterEach(function () {
368
+ mockedAxios.mockClear();
369
+ });
370
+ test("should be called with whitelist", function () { return __awaiter(void 0, void 0, void 0, function () {
371
+ return __generator(this, function (_a) {
372
+ switch (_a.label) {
373
+ case 0: return [4 /*yield*/, (0, getProviders_1["default"])()];
374
+ case 1:
375
+ _a.sent();
376
+ expect(mockedAxios).toBeCalledWith(expect.objectContaining({
377
+ params: expect.objectContaining({
378
+ whitelist: expect.any(Array)
379
+ })
380
+ }));
381
+ return [2 /*return*/];
382
+ }
383
+ });
384
+ }); });
385
+ test("should throw error if no data", function () { return __awaiter(void 0, void 0, void 0, function () {
386
+ var emptyResp;
387
+ return __generator(this, function (_a) {
388
+ switch (_a.label) {
389
+ case 0:
390
+ emptyResp = __assign(__assign({}, resp), { data: [] });
391
+ mockedAxios.mockResolvedValue(Promise.resolve(emptyResp));
392
+ return [4 /*yield*/, expect(getProviders_1["default"]).rejects.toThrow("SwapNoAvailableProviders")];
393
+ case 1:
394
+ _a.sent();
395
+ return [2 /*return*/];
396
+ }
397
+ });
398
+ }); });
399
+ test("should return list of providers with pairs", function () { return __awaiter(void 0, void 0, void 0, function () {
400
+ var res;
401
+ return __generator(this, function (_a) {
402
+ switch (_a.label) {
403
+ case 0: return [4 /*yield*/, (0, getProviders_1["default"])()];
404
+ case 1:
405
+ res = _a.sent();
406
+ expect(res).toEqual(data);
407
+ return [2 /*return*/];
408
+ }
409
+ });
410
+ }); });
411
+ });
412
+ describe("version 4", function () {
413
+ var data = {
414
+ currencies: {
415
+ "1": "bitcoin",
416
+ "2": "ethereum",
417
+ "3": "zcash",
418
+ "4": "ethereum_classic"
419
+ },
420
+ providers: {
421
+ changelly: [
422
+ {
423
+ methods: ["float"],
424
+ pairs: {
425
+ "1": [2, 3, 4],
426
+ "2": [1, 3, 4]
427
+ }
428
+ },
429
+ {
430
+ methods: ["float", "fixed"],
431
+ pairs: {
432
+ "1": [2, 3, 4],
433
+ "2": [1, 3, 4],
434
+ "3": [1, 4],
435
+ "4": [1, 2]
436
+ }
437
+ },
438
+ {
439
+ methods: ["fixed"],
440
+ pairs: {
441
+ "3": [1, 4],
442
+ "4": [1, 2]
443
+ }
444
+ },
445
+ ],
446
+ ftx: [
447
+ {
448
+ methods: ["float"],
449
+ pairs: {
450
+ "1": [2, 3, 4],
451
+ "2": [1, 3, 4],
452
+ "3": [1, 2, 4],
453
+ "4": [1, 2, 3]
454
+ }
455
+ },
456
+ ]
457
+ }
458
+ };
459
+ var resp = {
460
+ data: data,
461
+ status: 200,
462
+ statusText: "",
463
+ headers: {},
464
+ config: {}
465
+ };
466
+ beforeAll(function () {
467
+ // set SWAP_API_BASE
468
+ (0, env_1.setEnv)("SWAP_API_BASE", "https://swap.ledger.com/v4");
469
+ });
470
+ beforeEach(function () {
471
+ mockedAxios.mockResolvedValue(Promise.resolve(resp));
472
+ });
473
+ afterEach(function () {
474
+ mockedAxios.mockClear();
475
+ });
476
+ test("should be called with whitelist", function () { return __awaiter(void 0, void 0, void 0, function () {
477
+ return __generator(this, function (_a) {
478
+ switch (_a.label) {
479
+ case 0: return [4 /*yield*/, (0, getProviders_1["default"])()];
480
+ case 1:
481
+ _a.sent();
482
+ expect(mockedAxios).toBeCalledWith(expect.objectContaining({
483
+ params: expect.objectContaining({
484
+ whitelist: expect.any(Array)
485
+ })
486
+ }));
487
+ return [2 /*return*/];
488
+ }
489
+ });
490
+ }); });
491
+ test("should throw error if no providers", function () { return __awaiter(void 0, void 0, void 0, function () {
492
+ var emptyResp;
493
+ return __generator(this, function (_a) {
494
+ switch (_a.label) {
495
+ case 0:
496
+ emptyResp = __assign(__assign({}, resp), { data: __assign(__assign({}, data), { providers: {} }) });
497
+ mockedAxios.mockResolvedValue(Promise.resolve(emptyResp));
498
+ return [4 /*yield*/, expect(getProviders_1["default"]).rejects.toThrow("SwapNoAvailableProviders")];
499
+ case 1:
500
+ _a.sent();
501
+ return [2 /*return*/];
502
+ }
503
+ });
504
+ }); });
505
+ test("should return list of providers with pairs", function () { return __awaiter(void 0, void 0, void 0, function () {
506
+ var res;
507
+ return __generator(this, function (_a) {
508
+ switch (_a.label) {
509
+ case 0: return [4 /*yield*/, (0, getProviders_1["default"])()];
510
+ case 1:
511
+ res = _a.sent();
512
+ expect(res).toEqual(EXPECTED_RESULT_V4);
513
+ return [2 /*return*/];
514
+ }
515
+ });
516
+ }); });
517
+ });
518
+ });
519
+ //# sourceMappingURL=getProviders.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getProviders.test.js","sourceRoot":"","sources":["../../../src/exchange/swap/getProviders.test.ts"],"names":[],"mappings":"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"}
@@ -15,5 +15,6 @@ export declare const useProviderRates: ({ fromState, toState, transaction, onNoR
15
15
  }) => {
16
16
  rates: RatesReducerState;
17
17
  refetchRates: () => void;
18
+ updateSelectedRate: (selected?: ExchangeRate | undefined) => void;
18
19
  };
19
20
  //# sourceMappingURL=useProviderRates.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"useProviderRates.d.ts","sourceRoot":"","sources":["../../../../src/exchange/swap/hooks/useProviderRates.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACvD,OAAO,KAAK,EAAiC,YAAY,EAAE,MAAM,UAAU,CAAC;AAC5E,OAAO,EACL,iBAAiB,EACjB,uBAAuB,EACvB,qBAAqB,EACtB,MAAM,sBAAsB,CAAC;AAE9B,oBAAY,iBAAiB,GAAG;IAC9B,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,KAAK,CAAC,EAAE,YAAY,EAAE,CAAC;IACvB,KAAK,CAAC,EAAE,KAAK,CAAC;CACf,CAAC;AAkBF,eAAO,MAAM,gBAAgB;eAOhB,qBAAqB;aACvB,qBAAqB;kBAChB,WAAW,GAAG,IAAI,GAAG,SAAS;gBAChC,iBAAiB,GAAG,IAAI,GAAG,SAAS;sBAC9B,uBAAuB,GAAG,IAAI,GAAG,SAAS;;WAErD,iBAAiB;kBACV,MAAM,IAAI;CAmIzB,CAAC"}
1
+ {"version":3,"file":"useProviderRates.d.ts","sourceRoot":"","sources":["../../../../src/exchange/swap/hooks/useProviderRates.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACvD,OAAO,KAAK,EAAiC,YAAY,EAAE,MAAM,UAAU,CAAC;AAC5E,OAAO,EACL,iBAAiB,EACjB,uBAAuB,EACvB,qBAAqB,EACtB,MAAM,sBAAsB,CAAC;AAE9B,oBAAY,iBAAiB,GAAG;IAC9B,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,KAAK,CAAC,EAAE,YAAY,EAAE,CAAC;IACvB,KAAK,CAAC,EAAE,KAAK,CAAC;CACf,CAAC;AAkBF,eAAO,MAAM,gBAAgB;eAOhB,qBAAqB;aACvB,qBAAqB;kBAChB,WAAW,GAAG,IAAI,GAAG,SAAS;gBAChC,iBAAiB,GAAG,IAAI,GAAG,SAAS;sBAC9B,uBAAuB,GAAG,IAAI,GAAG,SAAS;;WAErD,iBAAiB;kBACV,MAAM,IAAI;iEACyB,IAAI;CAqJtD,CAAC"}
@@ -96,12 +96,17 @@ var useProviderRates = function (_a) {
96
96
  var toCurrency = toState.currency;
97
97
  var _b = __read((0, react_1.useReducer)(ratesReducer, ratesReducerInitialState), 2), rates = _b[0], dispatchRates = _b[1];
98
98
  var _c = __read((0, react_1.useState)(null), 2), getRatesDependency = _c[0], setGetRatesDependency = _c[1];
99
+ var _d = __read((0, react_1.useState)({}), 2), getSelectedRate = _d[0], setGetSelectedRate = _d[1];
99
100
  var refetchRates = (0, react_1.useCallback)(function () { return setGetRatesDependency({}); }, []);
101
+ var updateSelectedRate = (0, react_1.useCallback)(function (selected) {
102
+ if (selected === void 0) { selected = {}; }
103
+ return setGetSelectedRate(selected);
104
+ }, []);
100
105
  (0, react_1.useEffect)(function () {
101
106
  var abort = false;
102
107
  function getRates() {
103
108
  return __awaiter(this, void 0, void 0, function () {
104
- var rates_1, rateError_1, rate, error_1;
109
+ var rates_1, rateError_1, getRate, error_1;
105
110
  return __generator(this, function (_a) {
106
111
  switch (_a.label) {
107
112
  case 0:
@@ -167,8 +172,17 @@ var useProviderRates = function (_a) {
167
172
  }
168
173
  else {
169
174
  dispatchRates({ type: "set", payload: rates_1 });
170
- rate = (rates_1 === null || rates_1 === void 0 ? void 0 : rates_1.length) > 0 ? rates_1[0] : null;
171
- setExchangeRate && setExchangeRate(rate);
175
+ getRate = function () {
176
+ if (!((rates_1 === null || rates_1 === void 0 ? void 0 : rates_1.length) > 0)) {
177
+ return null;
178
+ }
179
+ var _a = getSelectedRate, provider = _a.provider, tradeMethod = _a.tradeMethod;
180
+ var rate = rates_1.find(function (rate) {
181
+ return rate.provider === provider && rate.tradeMethod === tradeMethod;
182
+ });
183
+ return rate ? rate : rates_1[0];
184
+ };
185
+ setExchangeRate && setExchangeRate(getRate());
172
186
  }
173
187
  return [3 /*break*/, 4];
174
188
  case 3:
@@ -197,7 +211,8 @@ var useProviderRates = function (_a) {
197
211
  ]);
198
212
  return {
199
213
  rates: rates,
200
- refetchRates: refetchRates
214
+ refetchRates: refetchRates,
215
+ updateSelectedRate: updateSelectedRate
201
216
  };
202
217
  };
203
218
  exports.useProviderRates = useProviderRates;
@@ -1 +1 @@
1
- {"version":3,"file":"useProviderRates.js","sourceRoot":"","sources":["../../../../src/exchange/swap/hooks/useProviderRates.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"useProviderRates.js","sourceRoot":"","sources":["../../../../src/exchange/swap/hooks/useProviderRates.ts"],"names":[],"mappings":"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"}
@@ -170,6 +170,48 @@ describe("useProviderRates", function () {
170
170
  }
171
171
  });
172
172
  }); });
173
+ it("should refetch with the corrected selected rate", function () { return __awaiter(void 0, void 0, void 0, function () {
174
+ var setExchangeRate, _a, result, waitForNextUpdate;
175
+ return __generator(this, function (_b) {
176
+ switch (_b.label) {
177
+ case 0:
178
+ setExchangeRate = jest.fn();
179
+ mockedGetExchangeRates.mockResolvedValue(mockedRatesPromise);
180
+ _a = (0, react_hooks_1.renderHook)(_1.useProviderRates, {
181
+ initialProps: __assign(__assign({}, baseInitalProps), { setExchangeRate: setExchangeRate })
182
+ }), result = _a.result, waitForNextUpdate = _a.waitForNextUpdate;
183
+ mockedGetExchangeRates.mockClear();
184
+ (0, react_hooks_1.act)(function () {
185
+ result.current.refetchRates();
186
+ });
187
+ return [4 /*yield*/, waitForNextUpdate({ timeout: 1000 })];
188
+ case 1:
189
+ _b.sent();
190
+ expect(setExchangeRate).toBeCalledWith(expect.objectContaining({
191
+ provider: "ftx",
192
+ tradeMethod: "fixed"
193
+ }));
194
+ (0, react_hooks_1.act)(function () {
195
+ result.current.updateSelectedRate({
196
+ rate: new bignumber_js_1["default"](1),
197
+ toAmount: new bignumber_js_1["default"](1),
198
+ magnitudeAwareRate: new bignumber_js_1["default"](1),
199
+ provider: "ftx",
200
+ tradeMethod: "float"
201
+ });
202
+ result.current.refetchRates();
203
+ });
204
+ return [4 /*yield*/, waitForNextUpdate({ timeout: 1000 })];
205
+ case 2:
206
+ _b.sent();
207
+ expect(setExchangeRate).toBeCalledWith(expect.objectContaining({
208
+ provider: "ftx",
209
+ tradeMethod: "float"
210
+ }));
211
+ return [2 /*return*/];
212
+ }
213
+ });
214
+ }); });
173
215
  it("should refetch the rates if refetchRates is called", function () { return __awaiter(void 0, void 0, void 0, function () {
174
216
  var _a, result, waitForNextUpdate;
175
217
  return __generator(this, function (_b) {