@lifi/widget 1.31.1 → 1.32.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 (405) hide show
  1. package/App.js +4 -16
  2. package/AppDrawer.js +13 -7
  3. package/AppDrawer.style.d.ts +2 -2
  4. package/AppDrawer.style.js +1 -1
  5. package/AppProvider.js +1 -1
  6. package/AppRoutes.js +9 -0
  7. package/cjs/App.js +4 -16
  8. package/cjs/AppDrawer.js +13 -7
  9. package/cjs/AppDrawer.style.d.ts +2 -2
  10. package/cjs/AppDrawer.style.js +1 -1
  11. package/cjs/AppProvider.js +1 -1
  12. package/cjs/AppRoutes.js +9 -0
  13. package/cjs/components/ActiveSwaps/ActiveSwapItem.js +9 -7
  14. package/cjs/components/ActiveSwaps/ActiveSwaps.js +3 -3
  15. package/cjs/components/ActiveSwaps/ActiveSwaps.style.d.ts +3 -3
  16. package/cjs/components/AppContainer.d.ts +2 -2
  17. package/cjs/components/AppContainer.js +1 -1
  18. package/cjs/components/BottomSheet/BottomSheet.d.ts +1 -1
  19. package/cjs/components/BottomSheet/BottomSheet.js +2 -2
  20. package/cjs/components/Card/Card.d.ts +2 -2
  21. package/cjs/components/Card/CardHeader.d.ts +1 -1
  22. package/cjs/components/Card/CardTitle.d.ts +1 -1
  23. package/cjs/components/ChainSelect/ChainSelect.d.ts +0 -1
  24. package/cjs/components/ChainSelect/ChainSelect.js +3 -4
  25. package/cjs/components/ChainSelect/ChainSelect.style.d.ts +3 -3
  26. package/cjs/components/ContractComponent/ContractComponent.js +1 -1
  27. package/cjs/components/Dialog.js +1 -1
  28. package/cjs/components/GasSufficiencyMessage/GasSufficiencyMessage.js +13 -28
  29. package/cjs/components/GasSufficiencyMessage/GasSufficiencyMessage.style.d.ts +1 -1
  30. package/cjs/components/Header/Header.js +1 -1
  31. package/cjs/components/Header/Header.style.d.ts +3 -3
  32. package/cjs/components/Header/NavigationHeader.js +6 -2
  33. package/cjs/components/Header/WalletHeader.js +12 -22
  34. package/cjs/{pages/SelectNativeTokenPage/SelectNativeTokenPage.style.d.ts → components/ListItemButton.d.ts} +1 -2
  35. package/cjs/{pages/SelectWalletPage/SelectWalletPage.style.js → components/ListItemButton.js} +2 -8
  36. package/cjs/components/ListItemText.d.ts +2 -0
  37. package/cjs/{pages/SelectNativeTokenPage/SelectNativeTokenPage.style.js → components/ListItemText.js} +1 -10
  38. package/cjs/components/NFT/NFT.js +2 -14
  39. package/cjs/components/NFT/NFT.style.d.ts +1 -1
  40. package/cjs/components/NotFound.js +2 -2
  41. package/cjs/components/PoweredBy/PoweredBy.js +2 -2
  42. package/cjs/components/PoweredBy/PoweredBy.style.d.ts +1 -1
  43. package/cjs/components/ProgressToNextUpdate/ProgressToNextUpdate.js +5 -17
  44. package/cjs/components/ReverseTokensButton/ReverseTokensButton.js +1 -1
  45. package/cjs/components/ReverseTokensButton/ReverseTokensButton.style.d.ts +1 -1
  46. package/cjs/components/Select.js +1 -0
  47. package/cjs/components/SelectChainAndToken.js +4 -4
  48. package/cjs/components/SelectTokenButton/SelectTokenButton.js +2 -2
  49. package/cjs/components/SelectTokenButton/SelectTokenButton.style.d.ts +1 -1
  50. package/cjs/components/SendToWallet/SendToWallet.js +9 -19
  51. package/cjs/components/SendToWallet/SendToWallet.style.d.ts +1 -1
  52. package/cjs/components/SendToWallet/SendToWalletButton.js +5 -5
  53. package/cjs/components/SmallAvatar.d.ts +3 -3
  54. package/cjs/components/Step/CircularProgress.d.ts +0 -1
  55. package/cjs/components/Step/CircularProgress.js +2 -2
  56. package/cjs/components/Step/CircularProgress.style.d.ts +1 -1
  57. package/cjs/components/Step/DestinationWalletAddress.js +6 -7
  58. package/cjs/components/Step/GasStepProcess.js +8 -8
  59. package/cjs/components/Step/Step.js +4 -5
  60. package/cjs/components/Step/StepList.d.ts +0 -1
  61. package/cjs/components/Step/StepList.js +8 -4
  62. package/cjs/components/Step/StepProcess.js +3 -3
  63. package/cjs/components/Step/StepProcess.style.d.ts +2 -2
  64. package/cjs/components/Step/StepTimer.js +4 -8
  65. package/cjs/components/StepActions/StepActions.js +20 -37
  66. package/cjs/components/StepActions/StepActions.style.d.ts +1 -1
  67. package/cjs/components/StepDivider/StepDivider.style.d.ts +1 -1
  68. package/cjs/components/SwapButton/SwapButton.js +5 -14
  69. package/cjs/components/SwapInput/FormPriceHelperText.js +6 -6
  70. package/cjs/components/SwapInput/SwapInput.js +4 -16
  71. package/cjs/components/SwapInput/SwapInput.style.d.ts +1 -1
  72. package/cjs/components/SwapInput/SwapInputAdornment.style.d.ts +1 -1
  73. package/cjs/components/SwapInput/SwapInputEndAdornment.d.ts +0 -1
  74. package/cjs/components/SwapInput/SwapInputEndAdornment.js +2 -3
  75. package/cjs/components/SwapRouteCard/SwapRouteCard.js +9 -25
  76. package/cjs/components/SwapRouteCard/SwapRouteCard.style.d.ts +2 -2
  77. package/cjs/components/SwapRouteCard/SwapRouteCardSkeleton.js +4 -16
  78. package/cjs/components/SwapRouteCard/SwapRouteNotFoundCard.js +2 -2
  79. package/cjs/components/SwapRouteCard/utils.js +1 -1
  80. package/cjs/components/SwapRoutes/SwapRoutes.js +4 -4
  81. package/cjs/components/SwapRoutes/SwapRoutes.style.d.ts +5 -5
  82. package/cjs/components/SwapRoutes/SwapRoutesExpanded.d.ts +0 -1
  83. package/cjs/components/SwapRoutes/SwapRoutesExpanded.js +3 -3
  84. package/cjs/components/TextFitter/TextFitter.js +3 -3
  85. package/cjs/components/Token/Token.js +19 -33
  86. package/cjs/components/Token/Token.style.d.ts +3 -3
  87. package/cjs/components/TokenAvatar/TokenAvatar.js +6 -7
  88. package/cjs/components/TokenAvatar/TokenAvatar.style.d.ts +2 -2
  89. package/cjs/components/TokenList/TokenList.js +3 -4
  90. package/cjs/components/TokenList/TokenList.style.d.ts +2 -2
  91. package/cjs/components/TokenList/TokenList.style.js +2 -6
  92. package/cjs/components/TokenList/TokenListItem.js +9 -9
  93. package/cjs/components/TokenList/TokenNotFound.js +4 -5
  94. package/cjs/components/TokenList/VirtualizedTokenList.js +10 -11
  95. package/cjs/components/TokenList/useTokenSelect.js +2 -2
  96. package/cjs/config/env.js +1 -1
  97. package/cjs/config/sentry.js +3 -12
  98. package/cjs/config/theme.js +44 -16
  99. package/cjs/config/version.d.ts +1 -1
  100. package/cjs/config/version.js +1 -1
  101. package/cjs/hooks/useChain.js +1 -1
  102. package/cjs/hooks/useChains.js +5 -14
  103. package/cjs/hooks/useContentHeight.js +1 -2
  104. package/cjs/hooks/useFeaturedTokens.js +1 -4
  105. package/cjs/hooks/useGasSufficiency.js +28 -34
  106. package/cjs/hooks/useProcessMessage.js +7 -11
  107. package/cjs/hooks/useRouteExecution.js +16 -26
  108. package/cjs/hooks/useSwapRoutes.js +16 -26
  109. package/cjs/hooks/useToken.js +2 -2
  110. package/cjs/hooks/useTokenAddressBalance.js +1 -2
  111. package/cjs/hooks/useTokenBalance.js +24 -27
  112. package/cjs/hooks/useTokenBalances.d.ts +1 -1
  113. package/cjs/hooks/useTokenBalances.js +8 -20
  114. package/cjs/hooks/useTokenSearch.d.ts +1 -1
  115. package/cjs/hooks/useTokenSearch.js +12 -21
  116. package/cjs/hooks/useTokens.d.ts +1 -1
  117. package/cjs/hooks/useTokens.js +36 -38
  118. package/cjs/hooks/useTools.d.ts +2 -11
  119. package/cjs/hooks/useTools.js +10 -19
  120. package/cjs/i18n/en.json +8 -4
  121. package/cjs/icons/LiFiFullLogo.js +1 -1
  122. package/cjs/icons/LiFiLogo.js +1 -1
  123. package/cjs/icons/LiFiToolLogo.js +1 -1
  124. package/cjs/index.d.ts +1 -0
  125. package/cjs/index.js +2 -0
  126. package/cjs/pages/ActiveSwapsPage/ActiveSwapsEmpty.js +2 -2
  127. package/cjs/pages/ActiveSwapsPage/ActiveSwapsPage.d.ts +0 -1
  128. package/cjs/pages/ActiveSwapsPage/ActiveSwapsPage.js +3 -3
  129. package/cjs/pages/MainPage/MainPage.js +1 -1
  130. package/cjs/pages/MainPage/MainPage.style.d.ts +1 -1
  131. package/cjs/pages/MainPage/MainSwapButton.js +3 -12
  132. package/cjs/pages/SelectChainPage/SelectChainPage.js +6 -14
  133. package/cjs/pages/SelectEnabledToolsPage/SelectEnabledToolsPage.d.ts +4 -0
  134. package/cjs/pages/SelectEnabledToolsPage/SelectEnabledToolsPage.js +51 -0
  135. package/cjs/pages/SelectEnabledToolsPage/SelectEnabledToolsPage.style.d.ts +20 -0
  136. package/cjs/pages/SelectEnabledToolsPage/SelectEnabledToolsPage.style.js +8 -0
  137. package/cjs/pages/SelectEnabledToolsPage/index.d.ts +1 -0
  138. package/cjs/pages/SelectEnabledToolsPage/index.js +17 -0
  139. package/cjs/pages/SelectNativeTokenPage/SelectNativeTokenPage.js +4 -3
  140. package/cjs/pages/SelectTokenPage/SearchTokenInput.d.ts +0 -1
  141. package/cjs/pages/SelectTokenPage/SearchTokenInput.js +4 -1
  142. package/cjs/pages/SelectTokenPage/SelectTokenPage.js +2 -3
  143. package/cjs/pages/SelectWalletPage/SelectWalletPage.d.ts +0 -1
  144. package/cjs/pages/SelectWalletPage/SelectWalletPage.js +13 -19
  145. package/cjs/pages/SettingsPage/ColorSchemeButtonGroup.js +3 -3
  146. package/cjs/pages/SettingsPage/ColorSchemeButtonGroup.style.d.ts +1 -1
  147. package/cjs/pages/SettingsPage/EnabledToolsButton.d.ts +4 -0
  148. package/cjs/pages/SettingsPage/EnabledToolsButton.js +25 -0
  149. package/cjs/pages/{SelectChainPage/SelectChainPage.style.d.ts → SettingsPage/EnabledToolsButton.style.d.ts} +1 -1
  150. package/cjs/pages/{SelectChainPage/SelectChainPage.style.js → SettingsPage/EnabledToolsButton.style.js} +7 -10
  151. package/cjs/pages/SettingsPage/GasPriceSelect.d.ts +0 -1
  152. package/cjs/pages/SettingsPage/GasPriceSelect.js +1 -1
  153. package/cjs/pages/SettingsPage/LanguageSelect.js +5 -6
  154. package/cjs/pages/SettingsPage/ResetSettingsButton.d.ts +2 -0
  155. package/cjs/pages/SettingsPage/ResetSettingsButton.js +27 -0
  156. package/cjs/pages/SettingsPage/RoutePrioritySelect.js +4 -4
  157. package/cjs/pages/SettingsPage/SettingsPage.d.ts +0 -1
  158. package/cjs/pages/SettingsPage/SettingsPage.js +3 -2
  159. package/cjs/pages/SettingsPage/ShowDestinationWallet.d.ts +0 -1
  160. package/cjs/pages/SettingsPage/ShowDestinationWallet.js +3 -3
  161. package/cjs/pages/SettingsPage/SlippageInput.d.ts +0 -1
  162. package/cjs/pages/SettingsPage/SlippageInput.js +3 -3
  163. package/cjs/pages/SwapDetailsPage/SwapDetailsPage.js +14 -22
  164. package/cjs/pages/SwapDetailsPage/SwapDetailsPage.style.d.ts +1 -1
  165. package/cjs/pages/SwapHistoryPage/SwapHistoryEmpty.js +2 -2
  166. package/cjs/pages/SwapHistoryPage/SwapHistoryItem.js +9 -7
  167. package/cjs/pages/SwapHistoryPage/SwapHistoryPage.js +2 -2
  168. package/cjs/pages/SwapPage/ExchangeRateBottomSheet.js +21 -26
  169. package/cjs/pages/SwapPage/StartSwapButton.js +1 -1
  170. package/cjs/pages/SwapPage/StatusBottomSheet.js +21 -19
  171. package/cjs/pages/SwapPage/StatusBottomSheet.style.d.ts +2 -2
  172. package/cjs/pages/SwapPage/SwapPage.js +9 -21
  173. package/cjs/pages/SwapPage/SwapPage.style.d.ts +1 -1
  174. package/cjs/pages/SwapPage/TokenValueBottomSheet.js +8 -9
  175. package/cjs/pages/SwapRoutesPage/SwapRoutesPage.js +3 -3
  176. package/cjs/pages/SwapRoutesPage/SwapRoutesPage.style.d.ts +1 -1
  177. package/cjs/providers/I18nProvider/I18nProvider.js +7 -8
  178. package/cjs/providers/SDKProvider/SDKProvider.js +15 -4
  179. package/cjs/providers/SwapFormProvider/SwapFormProvider.js +12 -6
  180. package/cjs/providers/SwapFormProvider/URLSearchParamsBuilder.js +3 -12
  181. package/cjs/providers/TelemetryProvider/TelemetryProvider.js +1 -1
  182. package/cjs/providers/ThemeProvider/ThemeProvider.js +2 -2
  183. package/cjs/providers/WalletProvider/WalletProvider.js +30 -39
  184. package/cjs/providers/WidgetProvider/WidgetProvider.js +18 -23
  185. package/cjs/providers/WidgetProvider/utils.js +2 -3
  186. package/cjs/stores/StoreProvider.js +2 -2
  187. package/cjs/stores/chains/ChainOrderStore.js +2 -14
  188. package/cjs/stores/routes/RouteExecutionStore.js +2 -14
  189. package/cjs/stores/routes/createRouteExecutionStore.js +27 -16
  190. package/cjs/stores/routes/useExecutingRoutesIds.js +2 -5
  191. package/cjs/stores/routes/useSwapHistory.js +3 -6
  192. package/cjs/stores/routes/utils.js +4 -4
  193. package/cjs/stores/settings/SettingsStore.js +10 -20
  194. package/cjs/stores/settings/createSettingsStore.js +29 -25
  195. package/cjs/stores/settings/types.d.ts +6 -6
  196. package/cjs/utils/colors.js +1 -1
  197. package/cjs/utils/format.js +3 -3
  198. package/cjs/utils/navigationRoutes.d.ts +2 -0
  199. package/cjs/utils/navigationRoutes.js +6 -0
  200. package/components/ActiveSwaps/ActiveSwapItem.js +9 -7
  201. package/components/ActiveSwaps/ActiveSwaps.js +3 -3
  202. package/components/ActiveSwaps/ActiveSwaps.style.d.ts +3 -3
  203. package/components/AppContainer.d.ts +2 -2
  204. package/components/AppContainer.js +1 -1
  205. package/components/BottomSheet/BottomSheet.d.ts +1 -1
  206. package/components/BottomSheet/BottomSheet.js +2 -2
  207. package/components/Card/Card.d.ts +2 -2
  208. package/components/Card/CardHeader.d.ts +1 -1
  209. package/components/Card/CardTitle.d.ts +1 -1
  210. package/components/ChainSelect/ChainSelect.d.ts +0 -1
  211. package/components/ChainSelect/ChainSelect.js +3 -4
  212. package/components/ChainSelect/ChainSelect.style.d.ts +3 -3
  213. package/components/ContractComponent/ContractComponent.js +1 -1
  214. package/components/Dialog.js +1 -1
  215. package/components/GasSufficiencyMessage/GasSufficiencyMessage.js +13 -28
  216. package/components/GasSufficiencyMessage/GasSufficiencyMessage.style.d.ts +1 -1
  217. package/components/Header/Header.js +1 -1
  218. package/components/Header/Header.style.d.ts +3 -3
  219. package/components/Header/NavigationHeader.js +6 -2
  220. package/components/Header/WalletHeader.js +12 -22
  221. package/{pages/SelectChainPage/SelectChainPage.style.d.ts → components/ListItemButton.d.ts} +1 -2
  222. package/components/ListItemButton.js +11 -0
  223. package/components/ListItemText.d.ts +2 -0
  224. package/components/ListItemText.js +8 -0
  225. package/components/NFT/NFT.js +2 -14
  226. package/components/NFT/NFT.style.d.ts +1 -1
  227. package/components/NotFound.js +2 -2
  228. package/components/PoweredBy/PoweredBy.js +2 -2
  229. package/components/PoweredBy/PoweredBy.style.d.ts +1 -1
  230. package/components/ProgressToNextUpdate/ProgressToNextUpdate.js +5 -17
  231. package/components/ReverseTokensButton/ReverseTokensButton.js +1 -1
  232. package/components/ReverseTokensButton/ReverseTokensButton.style.d.ts +1 -1
  233. package/components/Select.js +1 -0
  234. package/components/SelectChainAndToken.js +4 -4
  235. package/components/SelectTokenButton/SelectTokenButton.js +2 -2
  236. package/components/SelectTokenButton/SelectTokenButton.style.d.ts +1 -1
  237. package/components/SendToWallet/SendToWallet.js +9 -19
  238. package/components/SendToWallet/SendToWallet.style.d.ts +1 -1
  239. package/components/SendToWallet/SendToWalletButton.js +5 -5
  240. package/components/SmallAvatar.d.ts +3 -3
  241. package/components/Step/CircularProgress.d.ts +0 -1
  242. package/components/Step/CircularProgress.js +2 -2
  243. package/components/Step/CircularProgress.style.d.ts +1 -1
  244. package/components/Step/DestinationWalletAddress.js +6 -7
  245. package/components/Step/GasStepProcess.js +8 -8
  246. package/components/Step/Step.js +4 -5
  247. package/components/Step/StepList.d.ts +0 -1
  248. package/components/Step/StepList.js +8 -4
  249. package/components/Step/StepProcess.js +3 -3
  250. package/components/Step/StepProcess.style.d.ts +2 -2
  251. package/components/Step/StepTimer.js +4 -8
  252. package/components/StepActions/StepActions.js +20 -37
  253. package/components/StepActions/StepActions.style.d.ts +1 -1
  254. package/components/StepDivider/StepDivider.style.d.ts +1 -1
  255. package/components/SwapButton/SwapButton.js +5 -14
  256. package/components/SwapInput/FormPriceHelperText.js +6 -6
  257. package/components/SwapInput/SwapInput.js +4 -16
  258. package/components/SwapInput/SwapInput.style.d.ts +1 -1
  259. package/components/SwapInput/SwapInputAdornment.style.d.ts +1 -1
  260. package/components/SwapInput/SwapInputEndAdornment.d.ts +0 -1
  261. package/components/SwapInput/SwapInputEndAdornment.js +2 -3
  262. package/components/SwapRouteCard/SwapRouteCard.js +9 -25
  263. package/components/SwapRouteCard/SwapRouteCard.style.d.ts +2 -2
  264. package/components/SwapRouteCard/SwapRouteCardSkeleton.js +4 -16
  265. package/components/SwapRouteCard/SwapRouteNotFoundCard.js +2 -2
  266. package/components/SwapRouteCard/utils.js +1 -1
  267. package/components/SwapRoutes/SwapRoutes.js +4 -4
  268. package/components/SwapRoutes/SwapRoutes.style.d.ts +5 -5
  269. package/components/SwapRoutes/SwapRoutesExpanded.d.ts +0 -1
  270. package/components/SwapRoutes/SwapRoutesExpanded.js +3 -3
  271. package/components/TextFitter/TextFitter.js +3 -3
  272. package/components/Token/Token.js +19 -33
  273. package/components/Token/Token.style.d.ts +3 -3
  274. package/components/TokenAvatar/TokenAvatar.js +6 -7
  275. package/components/TokenAvatar/TokenAvatar.style.d.ts +2 -2
  276. package/components/TokenList/TokenList.js +3 -4
  277. package/components/TokenList/TokenList.style.d.ts +2 -2
  278. package/components/TokenList/TokenList.style.js +3 -7
  279. package/components/TokenList/TokenListItem.js +9 -9
  280. package/components/TokenList/TokenNotFound.js +4 -5
  281. package/components/TokenList/VirtualizedTokenList.js +10 -11
  282. package/components/TokenList/useTokenSelect.js +2 -2
  283. package/config/env.js +1 -1
  284. package/config/sentry.js +3 -12
  285. package/config/theme.js +44 -16
  286. package/config/version.d.ts +1 -1
  287. package/config/version.js +1 -1
  288. package/hooks/useChain.js +1 -1
  289. package/hooks/useChains.js +5 -14
  290. package/hooks/useContentHeight.js +1 -2
  291. package/hooks/useFeaturedTokens.js +1 -4
  292. package/hooks/useGasSufficiency.js +28 -34
  293. package/hooks/useProcessMessage.js +7 -11
  294. package/hooks/useRouteExecution.js +16 -26
  295. package/hooks/useSwapRoutes.js +16 -26
  296. package/hooks/useToken.js +2 -2
  297. package/hooks/useTokenAddressBalance.js +1 -2
  298. package/hooks/useTokenBalance.js +24 -27
  299. package/hooks/useTokenBalances.d.ts +1 -1
  300. package/hooks/useTokenBalances.js +8 -20
  301. package/hooks/useTokenSearch.d.ts +1 -1
  302. package/hooks/useTokenSearch.js +12 -21
  303. package/hooks/useTokens.d.ts +1 -1
  304. package/hooks/useTokens.js +36 -38
  305. package/hooks/useTools.d.ts +2 -11
  306. package/hooks/useTools.js +10 -19
  307. package/i18n/en.json +8 -4
  308. package/icons/LiFiFullLogo.js +1 -1
  309. package/icons/LiFiLogo.js +1 -1
  310. package/icons/LiFiToolLogo.js +1 -1
  311. package/index.d.ts +1 -0
  312. package/index.js +2 -0
  313. package/package.json +7 -7
  314. package/pages/ActiveSwapsPage/ActiveSwapsEmpty.js +2 -2
  315. package/pages/ActiveSwapsPage/ActiveSwapsPage.d.ts +0 -1
  316. package/pages/ActiveSwapsPage/ActiveSwapsPage.js +3 -3
  317. package/pages/MainPage/MainPage.js +1 -1
  318. package/pages/MainPage/MainPage.style.d.ts +1 -1
  319. package/pages/MainPage/MainSwapButton.js +3 -12
  320. package/pages/SelectChainPage/SelectChainPage.js +6 -14
  321. package/pages/SelectEnabledToolsPage/SelectEnabledToolsPage.d.ts +4 -0
  322. package/pages/SelectEnabledToolsPage/SelectEnabledToolsPage.js +47 -0
  323. package/pages/SelectEnabledToolsPage/SelectEnabledToolsPage.style.d.ts +20 -0
  324. package/pages/SelectEnabledToolsPage/SelectEnabledToolsPage.style.js +5 -0
  325. package/pages/SelectEnabledToolsPage/index.d.ts +1 -0
  326. package/pages/SelectEnabledToolsPage/index.js +1 -0
  327. package/pages/SelectNativeTokenPage/SelectNativeTokenPage.js +4 -3
  328. package/pages/SelectTokenPage/SearchTokenInput.d.ts +0 -1
  329. package/pages/SelectTokenPage/SearchTokenInput.js +4 -1
  330. package/pages/SelectTokenPage/SelectTokenPage.js +2 -3
  331. package/pages/SelectWalletPage/SelectWalletPage.d.ts +0 -1
  332. package/pages/SelectWalletPage/SelectWalletPage.js +13 -19
  333. package/pages/SettingsPage/ColorSchemeButtonGroup.js +3 -3
  334. package/pages/SettingsPage/ColorSchemeButtonGroup.style.d.ts +1 -1
  335. package/pages/SettingsPage/EnabledToolsButton.d.ts +4 -0
  336. package/pages/SettingsPage/EnabledToolsButton.js +21 -0
  337. package/{cjs/pages/SelectWalletPage/SelectWalletPage.style.d.ts → pages/SettingsPage/EnabledToolsButton.style.d.ts} +1 -1
  338. package/pages/SettingsPage/EnabledToolsButton.style.js +14 -0
  339. package/pages/SettingsPage/GasPriceSelect.d.ts +0 -1
  340. package/pages/SettingsPage/GasPriceSelect.js +1 -1
  341. package/pages/SettingsPage/LanguageSelect.js +5 -6
  342. package/pages/SettingsPage/ResetSettingsButton.d.ts +2 -0
  343. package/pages/SettingsPage/ResetSettingsButton.js +23 -0
  344. package/pages/SettingsPage/RoutePrioritySelect.js +4 -4
  345. package/pages/SettingsPage/SettingsPage.d.ts +0 -1
  346. package/pages/SettingsPage/SettingsPage.js +3 -2
  347. package/pages/SettingsPage/ShowDestinationWallet.d.ts +0 -1
  348. package/pages/SettingsPage/ShowDestinationWallet.js +3 -3
  349. package/pages/SettingsPage/SlippageInput.d.ts +0 -1
  350. package/pages/SettingsPage/SlippageInput.js +3 -3
  351. package/pages/SwapDetailsPage/SwapDetailsPage.js +14 -22
  352. package/pages/SwapDetailsPage/SwapDetailsPage.style.d.ts +1 -1
  353. package/pages/SwapHistoryPage/SwapHistoryEmpty.js +2 -2
  354. package/pages/SwapHistoryPage/SwapHistoryItem.js +9 -7
  355. package/pages/SwapHistoryPage/SwapHistoryPage.js +2 -2
  356. package/pages/SwapPage/ExchangeRateBottomSheet.js +21 -26
  357. package/pages/SwapPage/StartSwapButton.js +1 -1
  358. package/pages/SwapPage/StatusBottomSheet.js +21 -19
  359. package/pages/SwapPage/StatusBottomSheet.style.d.ts +2 -2
  360. package/pages/SwapPage/SwapPage.js +9 -21
  361. package/pages/SwapPage/SwapPage.style.d.ts +1 -1
  362. package/pages/SwapPage/TokenValueBottomSheet.js +8 -9
  363. package/pages/SwapRoutesPage/SwapRoutesPage.js +3 -3
  364. package/pages/SwapRoutesPage/SwapRoutesPage.style.d.ts +1 -1
  365. package/providers/I18nProvider/I18nProvider.js +7 -8
  366. package/providers/SDKProvider/SDKProvider.js +15 -4
  367. package/providers/SwapFormProvider/SwapFormProvider.js +12 -6
  368. package/providers/SwapFormProvider/URLSearchParamsBuilder.js +3 -12
  369. package/providers/TelemetryProvider/TelemetryProvider.js +1 -1
  370. package/providers/ThemeProvider/ThemeProvider.js +2 -2
  371. package/providers/WalletProvider/WalletProvider.js +30 -39
  372. package/providers/WidgetProvider/WidgetProvider.js +18 -23
  373. package/providers/WidgetProvider/utils.js +2 -3
  374. package/stores/StoreProvider.js +2 -2
  375. package/stores/chains/ChainOrderStore.js +2 -14
  376. package/stores/routes/RouteExecutionStore.js +2 -14
  377. package/stores/routes/createRouteExecutionStore.js +27 -16
  378. package/stores/routes/useExecutingRoutesIds.js +2 -5
  379. package/stores/routes/useSwapHistory.js +3 -6
  380. package/stores/routes/utils.js +4 -4
  381. package/stores/settings/SettingsStore.js +10 -20
  382. package/stores/settings/createSettingsStore.js +29 -25
  383. package/stores/settings/types.d.ts +6 -6
  384. package/tsconfig.cjs.tsbuildinfo +1 -1
  385. package/utils/colors.js +1 -1
  386. package/utils/format.js +3 -3
  387. package/utils/navigationRoutes.d.ts +2 -0
  388. package/utils/navigationRoutes.js +6 -0
  389. package/cjs/pages/SettingsPage/AdvancedPreferences.d.ts +0 -2
  390. package/cjs/pages/SettingsPage/AdvancedPreferences.js +0 -24
  391. package/cjs/pages/SettingsPage/EnabledBridgesSelect.d.ts +0 -2
  392. package/cjs/pages/SettingsPage/EnabledBridgesSelect.js +0 -24
  393. package/cjs/pages/SettingsPage/EnabledExchangesSelect.d.ts +0 -2
  394. package/cjs/pages/SettingsPage/EnabledExchangesSelect.js +0 -24
  395. package/pages/SelectChainPage/SelectChainPage.style.js +0 -17
  396. package/pages/SelectNativeTokenPage/SelectNativeTokenPage.style.d.ts +0 -21
  397. package/pages/SelectNativeTokenPage/SelectNativeTokenPage.style.js +0 -17
  398. package/pages/SelectWalletPage/SelectWalletPage.style.d.ts +0 -21
  399. package/pages/SelectWalletPage/SelectWalletPage.style.js +0 -17
  400. package/pages/SettingsPage/AdvancedPreferences.d.ts +0 -2
  401. package/pages/SettingsPage/AdvancedPreferences.js +0 -20
  402. package/pages/SettingsPage/EnabledBridgesSelect.d.ts +0 -2
  403. package/pages/SettingsPage/EnabledBridgesSelect.js +0 -20
  404. package/pages/SettingsPage/EnabledExchangesSelect.d.ts +0 -2
  405. package/pages/SettingsPage/EnabledExchangesSelect.js +0 -20
@@ -16,60 +16,55 @@ exports.ExchangeRateBottomSheet = (0, react_1.forwardRef)(({ onContinue, onCance
16
16
  const bottomSheetRef = (0, react_1.useRef)(null);
17
17
  const resolverRef = (0, react_1.useRef)();
18
18
  const handleContinue = () => {
19
- var _a;
20
- (_a = ref.current) === null || _a === void 0 ? void 0 : _a.close(true);
21
- onContinue === null || onContinue === void 0 ? void 0 : onContinue();
19
+ ref.current?.close(true);
20
+ onContinue?.();
22
21
  };
23
22
  const handleCancel = (0, react_1.useCallback)(() => {
24
- var _a;
25
- (_a = ref.current) === null || _a === void 0 ? void 0 : _a.close(false);
26
- onCancel === null || onCancel === void 0 ? void 0 : onCancel();
23
+ ref.current?.close(false);
24
+ onCancel?.();
27
25
  }, [onCancel, ref]);
28
26
  const handleClose = (0, react_1.useCallback)(() => {
29
- var _a;
30
- (_a = ref.current) === null || _a === void 0 ? void 0 : _a.close(false, false);
31
- onCancel === null || onCancel === void 0 ? void 0 : onCancel();
27
+ ref.current?.close(false, false);
28
+ onCancel?.();
32
29
  }, [onCancel, ref]);
33
30
  (0, react_1.useImperativeHandle)(ref, () => ({
34
- isOpen: () => { var _a; return (_a = bottomSheetRef.current) === null || _a === void 0 ? void 0 : _a.isOpen(); },
31
+ isOpen: () => bottomSheetRef.current?.isOpen(),
35
32
  open: (resolver, data) => {
36
- var _a;
37
33
  setData(data);
38
34
  resolverRef.current = resolver;
39
- (_a = bottomSheetRef.current) === null || _a === void 0 ? void 0 : _a.open();
35
+ bottomSheetRef.current?.open();
40
36
  },
41
37
  close: (value = false, bottomSheetClose = true) => {
42
- var _a, _b;
43
- (_a = resolverRef.current) === null || _a === void 0 ? void 0 : _a.call(resolverRef, value);
38
+ resolverRef.current?.(value);
44
39
  if (bottomSheetClose) {
45
- (_b = bottomSheetRef.current) === null || _b === void 0 ? void 0 : _b.close();
40
+ bottomSheetRef.current?.close();
46
41
  }
47
42
  },
48
43
  }), []);
49
- return ((0, jsx_runtime_1.jsx)(BottomSheet_1.BottomSheet, Object.assign({ ref: bottomSheetRef, onClose: handleClose }, { children: (0, jsx_runtime_1.jsx)(ExchangeRateBottomSheetContent, { data: data, onContinue: handleContinue, onCancel: handleCancel }) })));
44
+ return ((0, jsx_runtime_1.jsx)(BottomSheet_1.BottomSheet, { ref: bottomSheetRef, onClose: handleClose, children: (0, jsx_runtime_1.jsx)(ExchangeRateBottomSheetContent, { data: data, onContinue: handleContinue, onCancel: handleCancel }) }));
50
45
  });
51
46
  const ExchangeRateBottomSheetContent = ({ data, onCancel, onContinue }) => {
52
47
  const { t } = (0, react_i18next_1.useTranslation)();
53
48
  const ref = (0, react_1.useRef)();
54
49
  (0, hooks_1.useSetContentHeight)(ref);
55
- return ((0, jsx_runtime_1.jsxs)(material_1.Box, Object.assign({ p: 3, ref: ref }, { children: [(0, jsx_runtime_1.jsxs)(StatusBottomSheet_style_1.IconContainer, { children: [(0, jsx_runtime_1.jsx)(StatusBottomSheet_style_1.IconCircle, Object.assign({ status: "warning", mb: 1 }, { children: (0, jsx_runtime_1.jsx)(icons_material_1.WarningRounded, { color: "warning" }) })), (0, jsx_runtime_1.jsx)(material_1.Typography, Object.assign({ py: 1, fontSize: 18, fontWeight: 700 }, { children: t('swap.warning.title.rateChanged') }))] }), (0, jsx_runtime_1.jsx)(material_1.Typography, Object.assign({ py: 1 }, { children: t('swap.warning.message.rateChanged') })), (0, jsx_runtime_1.jsxs)(material_1.Box, Object.assign({ display: "flex", justifyContent: "space-between", mt: 1 }, { children: [(0, jsx_runtime_1.jsx)(material_1.Typography, { children: t('swap.quotedAmount') }), (0, jsx_runtime_1.jsxs)(material_1.Typography, Object.assign({ fontWeight: 600 }, { children: [t('format.number', {
56
- value: (0, utils_1.formatTokenAmount)(data === null || data === void 0 ? void 0 : data.oldToAmount, data === null || data === void 0 ? void 0 : data.toToken.decimals, 5),
57
- }), ' ', data === null || data === void 0 ? void 0 : data.toToken.symbol] }))] })), (0, jsx_runtime_1.jsxs)(material_1.Box, Object.assign({ display: "flex", justifyContent: "space-between", mt: 0.25 }, { children: [(0, jsx_runtime_1.jsx)(material_1.Typography, { children: t('swap.currentAmount') }), (0, jsx_runtime_1.jsxs)(material_1.Typography, Object.assign({ fontWeight: 600 }, { children: [t('format.number', {
58
- value: (0, utils_1.formatTokenAmount)(data === null || data === void 0 ? void 0 : data.newToAmount, data === null || data === void 0 ? void 0 : data.toToken.decimals, 5),
59
- }), ' ', data === null || data === void 0 ? void 0 : data.toToken.symbol] }))] })), (0, jsx_runtime_1.jsxs)(material_1.Box, Object.assign({ display: "flex", justifyContent: "space-between", mt: 0.25 }, { children: [(0, jsx_runtime_1.jsx)(material_1.Typography, { children: t('swap.rateChange') }), (0, jsx_runtime_1.jsxs)(material_1.Typography, Object.assign({ fontWeight: 600 }, { children: [(0, big_js_1.default)((data === null || data === void 0 ? void 0 : data.newToAmount) || 0)
60
- .div((0, big_js_1.default)((data === null || data === void 0 ? void 0 : data.oldToAmount) || 0))
50
+ return ((0, jsx_runtime_1.jsxs)(material_1.Box, { p: 3, ref: ref, children: [(0, jsx_runtime_1.jsxs)(StatusBottomSheet_style_1.IconContainer, { children: [(0, jsx_runtime_1.jsx)(StatusBottomSheet_style_1.IconCircle, { status: "warning", mb: 1, children: (0, jsx_runtime_1.jsx)(icons_material_1.WarningRounded, { color: "warning" }) }), (0, jsx_runtime_1.jsx)(material_1.Typography, { py: 1, fontSize: 18, fontWeight: 700, children: t('swap.warning.title.rateChanged') })] }), (0, jsx_runtime_1.jsx)(material_1.Typography, { py: 1, children: t('swap.warning.message.rateChanged') }), (0, jsx_runtime_1.jsxs)(material_1.Box, { display: "flex", justifyContent: "space-between", mt: 1, children: [(0, jsx_runtime_1.jsx)(material_1.Typography, { children: t('swap.quotedAmount') }), (0, jsx_runtime_1.jsxs)(material_1.Typography, { fontWeight: 600, children: [t('format.number', {
51
+ value: (0, utils_1.formatTokenAmount)(data?.oldToAmount, data?.toToken.decimals, 5),
52
+ }), ' ', data?.toToken.symbol] })] }), (0, jsx_runtime_1.jsxs)(material_1.Box, { display: "flex", justifyContent: "space-between", mt: 0.25, children: [(0, jsx_runtime_1.jsx)(material_1.Typography, { children: t('swap.currentAmount') }), (0, jsx_runtime_1.jsxs)(material_1.Typography, { fontWeight: 600, children: [t('format.number', {
53
+ value: (0, utils_1.formatTokenAmount)(data?.newToAmount, data?.toToken.decimals, 5),
54
+ }), ' ', data?.toToken.symbol] })] }), (0, jsx_runtime_1.jsxs)(material_1.Box, { display: "flex", justifyContent: "space-between", mt: 0.25, children: [(0, jsx_runtime_1.jsx)(material_1.Typography, { children: t('swap.rateChange') }), (0, jsx_runtime_1.jsxs)(material_1.Typography, { fontWeight: 600, children: [(0, big_js_1.default)(data?.newToAmount || 0)
55
+ .div((0, big_js_1.default)(data?.oldToAmount || 0))
61
56
  .minus(1)
62
57
  .mul(100)
63
58
  .round(2, big_js_1.default.roundUp)
64
- .toString(), "%"] }))] })), (0, jsx_runtime_1.jsxs)(material_1.Box, Object.assign({ display: "flex", mt: 3 }, { children: [(0, jsx_runtime_1.jsx)(material_1.Button, Object.assign({ variant: "text", onClick: onCancel, fullWidth: true }, { children: t('button.cancel') })), (0, jsx_runtime_1.jsx)(material_1.Box, { display: "flex", p: 1 }), (0, jsx_runtime_1.jsx)(material_1.Button, Object.assign({ variant: "contained", onClick: onContinue, fullWidth: true }, { children: t('button.continue') }))] }))] })));
59
+ .toString(), "%"] })] }), (0, jsx_runtime_1.jsxs)(material_1.Box, { display: "flex", mt: 3, children: [(0, jsx_runtime_1.jsx)(material_1.Button, { variant: "text", onClick: onCancel, fullWidth: true, children: t('button.cancel') }), (0, jsx_runtime_1.jsx)(material_1.Box, { display: "flex", p: 1 }), (0, jsx_runtime_1.jsx)(material_1.Button, { variant: "contained", onClick: onContinue, fullWidth: true, children: t('button.continue') })] })] }));
65
60
  };
66
61
  const getTokenValueLossThreshold = (route) => {
67
62
  if (!route) {
68
63
  return false;
69
64
  }
70
- const fromAmountUSD = (0, big_js_1.default)((route === null || route === void 0 ? void 0 : route.fromAmountUSD) || 0);
71
- const toAmountUSD = (0, big_js_1.default)((route === null || route === void 0 ? void 0 : route.toAmountUSD) || 0);
72
- const gasCostUSD = (0, big_js_1.default)((route === null || route === void 0 ? void 0 : route.gasCostUSD) || 0);
65
+ const fromAmountUSD = (0, big_js_1.default)(route?.fromAmountUSD || 0);
66
+ const toAmountUSD = (0, big_js_1.default)(route?.toAmountUSD || 0);
67
+ const gasCostUSD = (0, big_js_1.default)(route?.gasCostUSD || 0);
73
68
  if (fromAmountUSD.eq(0) && toAmountUSD.eq(0)) {
74
69
  return false;
75
70
  }
@@ -6,6 +6,6 @@ const SwapButton_1 = require("../../components/SwapButton");
6
6
  const hooks_1 = require("../../hooks");
7
7
  const StartSwapButton = ({ onClick, currentRoute, text, }) => {
8
8
  const { insufficientFunds, insufficientGas, isLoading: isGasSufficiencyLoading, } = (0, hooks_1.useGasSufficiency)(currentRoute);
9
- return ((0, jsx_runtime_1.jsx)(SwapButton_1.SwapButton, { onClick: onClick, text: text, currentRoute: currentRoute, disabled: insufficientFunds || !!(insufficientGas === null || insufficientGas === void 0 ? void 0 : insufficientGas.length), loading: isGasSufficiencyLoading }));
9
+ return ((0, jsx_runtime_1.jsx)(SwapButton_1.SwapButton, { onClick: onClick, text: text, currentRoute: currentRoute, disabled: insufficientFunds || !!insufficientGas?.length, loading: isGasSufficiencyLoading }));
10
10
  };
11
11
  exports.StartSwapButton = StartSwapButton;
@@ -16,13 +16,17 @@ const stores_1 = require("../../stores");
16
16
  const utils_1 = require("../../utils");
17
17
  const StatusBottomSheet_style_1 = require("./StatusBottomSheet.style");
18
18
  const StatusBottomSheet = ({ status, route, }) => {
19
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r;
20
19
  const { t } = (0, react_i18next_1.useTranslation)();
21
20
  const { navigateBack, navigate } = (0, hooks_1.useNavigateBack)();
22
21
  const ref = (0, react_1.useRef)(null);
23
22
  const { getChainById } = (0, hooks_1.useChains)();
24
23
  const { setValue } = (0, react_hook_form_1.useFormContext)();
25
- const toToken = Object.assign(Object.assign({}, ((_c = (_b = (_a = route.steps.at(-1)) === null || _a === void 0 ? void 0 : _a.execution) === null || _b === void 0 ? void 0 : _b.toToken) !== null && _c !== void 0 ? _c : route.toToken)), { amount: (_h = (_f = (_e = (_d = route.steps.at(-1)) === null || _d === void 0 ? void 0 : _d.execution) === null || _e === void 0 ? void 0 : _e.toAmount) !== null && _f !== void 0 ? _f : (_g = route.steps.at(-1)) === null || _g === void 0 ? void 0 : _g.estimate.toAmount) !== null && _h !== void 0 ? _h : route.toAmount });
24
+ const toToken = {
25
+ ...(route.steps.at(-1)?.execution?.toToken ?? route.toToken),
26
+ amount: route.steps.at(-1)?.execution?.toAmount ??
27
+ route.steps.at(-1)?.estimate.toAmount ??
28
+ route.toAmount,
29
+ };
26
30
  const { token, refetch, refetchNewBalance, refetchAllBalances } = (0, hooks_1.useTokenBalance)(toToken, route.toAddress);
27
31
  const clearFromAmount = () => {
28
32
  refetchAllBalances();
@@ -49,9 +53,8 @@ const StatusBottomSheet = ({ status, route, }) => {
49
53
  navigateBack();
50
54
  };
51
55
  const handleClose = () => {
52
- var _a;
53
56
  clearFromAmount();
54
- (_a = ref.current) === null || _a === void 0 ? void 0 : _a.close();
57
+ ref.current?.close();
55
58
  };
56
59
  const handleSeeDetails = () => {
57
60
  handleClose();
@@ -71,7 +74,7 @@ const StatusBottomSheet = ({ status, route, }) => {
71
74
  primaryMessage = t('swap.success.message.swapSuccessful', {
72
75
  amount: token.amount,
73
76
  tokenSymbol: token.symbol,
74
- chainName: (_j = getChainById(token.chainId)) === null || _j === void 0 ? void 0 : _j.name,
77
+ chainName: getChainById(token.chainId)?.name,
75
78
  walletAddress: (0, utils_1.shortenWalletAddress)(route.toAddress),
76
79
  });
77
80
  }
@@ -81,14 +84,14 @@ const StatusBottomSheet = ({ status, route, }) => {
81
84
  case stores_1.RouteExecutionStatus.Done | stores_1.RouteExecutionStatus.Partial: {
82
85
  title = t('swap.success.title.swapPartiallySuccessful');
83
86
  primaryMessage = t('swap.success.message.swapPartiallySuccessful', {
84
- tool: (_k = route.steps.at(-1)) === null || _k === void 0 ? void 0 : _k.toolDetails.name,
85
- tokenSymbol: (_l = route.steps.at(-1)) === null || _l === void 0 ? void 0 : _l.action.toToken.symbol,
87
+ tool: route.steps.at(-1)?.toolDetails.name,
88
+ tokenSymbol: route.steps.at(-1)?.action.toToken.symbol,
86
89
  });
87
90
  if (token) {
88
91
  secondaryMessage = t('swap.success.message.swapSuccessful', {
89
92
  amount: token.amount,
90
93
  tokenSymbol: token.symbol,
91
- chainName: (_m = getChainById(token.chainId)) === null || _m === void 0 ? void 0 : _m.name,
94
+ chainName: getChainById(token.chainId)?.name,
92
95
  walletAddress: (0, utils_1.shortenWalletAddress)(route.toAddress),
93
96
  });
94
97
  }
@@ -98,22 +101,22 @@ const StatusBottomSheet = ({ status, route, }) => {
98
101
  case stores_1.RouteExecutionStatus.Done | stores_1.RouteExecutionStatus.Refunded: {
99
102
  title = t('swap.success.title.refundIssued');
100
103
  primaryMessage = t('swap.success.message.swapPartiallySuccessful', {
101
- tool: (_o = route.steps.at(-1)) === null || _o === void 0 ? void 0 : _o.toolDetails.name,
102
- tokenSymbol: (_p = route.steps.at(-1)) === null || _p === void 0 ? void 0 : _p.action.toToken.symbol,
104
+ tool: route.steps.at(-1)?.toolDetails.name,
105
+ tokenSymbol: route.steps.at(-1)?.action.toToken.symbol,
103
106
  });
104
107
  if (token) {
105
108
  secondaryMessage = t('swap.success.message.swapSuccessful', {
106
109
  amount: token.amount,
107
110
  tokenSymbol: token.symbol,
108
- chainName: (_q = getChainById(token.chainId)) === null || _q === void 0 ? void 0 : _q.name,
111
+ chainName: getChainById(token.chainId)?.name,
109
112
  walletAddress: (0, utils_1.shortenWalletAddress)(route.toAddress),
110
113
  });
111
114
  }
112
115
  break;
113
116
  }
114
117
  case stores_1.RouteExecutionStatus.Failed: {
115
- const step = route.steps.find((step) => { var _a; return ((_a = step.execution) === null || _a === void 0 ? void 0 : _a.status) === 'FAILED'; });
116
- const process = (_r = step === null || step === void 0 ? void 0 : step.execution) === null || _r === void 0 ? void 0 : _r.process.find((process) => process.status === 'FAILED');
118
+ const step = route.steps.find((step) => step.execution?.status === 'FAILED');
119
+ const process = step?.execution?.process.find((process) => process.status === 'FAILED');
117
120
  if (!step || !process) {
118
121
  break;
119
122
  }
@@ -127,22 +130,21 @@ const StatusBottomSheet = ({ status, route, }) => {
127
130
  break;
128
131
  }
129
132
  (0, react_1.useEffect)(() => {
130
- var _a, _b;
131
133
  const hasSuccessFlag = (0, utils_1.hasEnumFlag)(status, stores_1.RouteExecutionStatus.Done);
132
134
  if ((hasSuccessFlag || (0, utils_1.hasEnumFlag)(status, stores_1.RouteExecutionStatus.Failed)) &&
133
- !((_a = ref.current) === null || _a === void 0 ? void 0 : _a.isOpen())) {
135
+ !ref.current?.isOpen()) {
134
136
  if (hasSuccessFlag) {
135
137
  refetchNewBalance();
136
138
  refetch();
137
139
  }
138
- (_b = ref.current) === null || _b === void 0 ? void 0 : _b.open();
140
+ ref.current?.open();
139
141
  }
140
142
  }, [refetch, refetchNewBalance, status]);
141
- return ((0, jsx_runtime_1.jsx)(BottomSheet_1.BottomSheet, Object.assign({ ref: ref }, { children: (0, jsx_runtime_1.jsxs)(material_1.Box, Object.assign({ p: 3 }, { children: [(0, jsx_runtime_1.jsxs)(StatusBottomSheet_style_1.IconContainer, { children: [(0, jsx_runtime_1.jsxs)(StatusBottomSheet_style_1.IconCircle, Object.assign({ status: status, mb: 1 }, { children: [status === stores_1.RouteExecutionStatus.Idle ? ((0, jsx_runtime_1.jsx)(icons_material_1.InfoRounded, { color: "primary" })) : null, status === stores_1.RouteExecutionStatus.Done ? ((0, jsx_runtime_1.jsx)(icons_material_1.Done, { color: "success" })) : null, (0, utils_1.hasEnumFlag)(status, stores_1.RouteExecutionStatus.Partial) ||
142
- (0, utils_1.hasEnumFlag)(status, stores_1.RouteExecutionStatus.Refunded) ? ((0, jsx_runtime_1.jsx)(icons_material_1.WarningRounded, { color: "warning" })) : null, (0, utils_1.hasEnumFlag)(status, stores_1.RouteExecutionStatus.Failed) ? ((0, jsx_runtime_1.jsx)(icons_material_1.ErrorRounded, { color: "error" })) : null] })), (0, jsx_runtime_1.jsx)(material_1.Typography, Object.assign({ py: 1, fontSize: 18, fontWeight: 700 }, { children: title })), (0, utils_1.hasEnumFlag)(status, stores_1.RouteExecutionStatus.Done) ? ((0, jsx_runtime_1.jsx)(Token_1.Token, { token: toToken, py: 1, disableDescription: true })) : null] }), (0, jsx_runtime_1.jsx)(material_1.Typography, Object.assign({ py: 1 }, { children: primaryMessage })), secondaryMessage ? ((0, jsx_runtime_1.jsx)(material_1.Typography, Object.assign({ py: 1 }, { children: secondaryMessage }))) : null, (0, jsx_runtime_1.jsx)(material_1.Box, Object.assign({ mt: 2 }, { children: (0, jsx_runtime_1.jsxs)(material_1.Button, Object.assign({ variant: "contained", fullWidth: true, onClick: handlePrimaryButton }, { children: [status === stores_1.RouteExecutionStatus.Idle ? t('button.ok') : null, (0, utils_1.hasEnumFlag)(status, stores_1.RouteExecutionStatus.Done)
143
+ return ((0, jsx_runtime_1.jsx)(BottomSheet_1.BottomSheet, { ref: ref, children: (0, jsx_runtime_1.jsxs)(material_1.Box, { p: 3, children: [(0, jsx_runtime_1.jsxs)(StatusBottomSheet_style_1.IconContainer, { children: [(0, jsx_runtime_1.jsxs)(StatusBottomSheet_style_1.IconCircle, { status: status, mb: 1, children: [status === stores_1.RouteExecutionStatus.Idle ? ((0, jsx_runtime_1.jsx)(icons_material_1.InfoRounded, { color: "primary" })) : null, status === stores_1.RouteExecutionStatus.Done ? ((0, jsx_runtime_1.jsx)(icons_material_1.Done, { color: "success" })) : null, (0, utils_1.hasEnumFlag)(status, stores_1.RouteExecutionStatus.Partial) ||
144
+ (0, utils_1.hasEnumFlag)(status, stores_1.RouteExecutionStatus.Refunded) ? ((0, jsx_runtime_1.jsx)(icons_material_1.WarningRounded, { color: "warning" })) : null, (0, utils_1.hasEnumFlag)(status, stores_1.RouteExecutionStatus.Failed) ? ((0, jsx_runtime_1.jsx)(icons_material_1.ErrorRounded, { color: "error" })) : null] }), (0, jsx_runtime_1.jsx)(material_1.Typography, { py: 1, fontSize: 18, fontWeight: 700, children: title }), (0, utils_1.hasEnumFlag)(status, stores_1.RouteExecutionStatus.Done) ? ((0, jsx_runtime_1.jsx)(Token_1.Token, { token: toToken, py: 1, disableDescription: true })) : null] }), (0, jsx_runtime_1.jsx)(material_1.Typography, { py: 1, children: primaryMessage }), secondaryMessage ? ((0, jsx_runtime_1.jsx)(material_1.Typography, { py: 1, children: secondaryMessage })) : null, (0, jsx_runtime_1.jsx)(material_1.Box, { mt: 2, children: (0, jsx_runtime_1.jsxs)(material_1.Button, { variant: "contained", fullWidth: true, onClick: handlePrimaryButton, children: [status === stores_1.RouteExecutionStatus.Idle ? t('button.ok') : null, (0, utils_1.hasEnumFlag)(status, stores_1.RouteExecutionStatus.Done)
143
145
  ? t('button.done')
144
146
  : null, status === stores_1.RouteExecutionStatus.Failed
145
147
  ? t('button.seeDetails')
146
- : null] })) })), (0, utils_1.hasEnumFlag)(status, stores_1.RouteExecutionStatus.Done) ? ((0, jsx_runtime_1.jsx)(material_1.Box, Object.assign({ mt: 2 }, { children: (0, jsx_runtime_1.jsx)(material_1.Button, Object.assign({ variant: "text", onClick: handleSeeDetails, fullWidth: true }, { children: t('button.seeDetails') })) }))) : null] })) })));
148
+ : null] }) }), (0, utils_1.hasEnumFlag)(status, stores_1.RouteExecutionStatus.Done) ? ((0, jsx_runtime_1.jsx)(material_1.Box, { mt: 2, children: (0, jsx_runtime_1.jsx)(material_1.Button, { variant: "text", onClick: handleSeeDetails, fullWidth: true, children: t('button.seeDetails') }) })) : null] }) }));
147
149
  };
148
150
  exports.StatusBottomSheet = StatusBottomSheet;
@@ -7,7 +7,7 @@ export declare const IconContainer: import("@emotion/styled").StyledComponent<im
7
7
  component?: import("react").ElementType<any> | undefined;
8
8
  ref?: import("react").Ref<unknown> | undefined;
9
9
  sx?: import("@mui/material").SxProps<Theme> | undefined;
10
- } & Omit<Pick<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "key" | keyof import("react").HTMLAttributes<HTMLDivElement>> & {
10
+ } & Omit<Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & {
11
11
  ref?: import("react").RefObject<HTMLDivElement> | ((instance: HTMLDivElement | null) => void) | null | undefined;
12
12
  }, "children" | "sx" | "ref" | ("p" | "color" | "border" | "boxShadow" | "fontWeight" | "zIndex" | "alignContent" | "alignItems" | "alignSelf" | "bottom" | "boxSizing" | "columnGap" | "display" | "flexBasis" | "flexDirection" | "flexGrow" | "flexShrink" | "flexWrap" | "fontFamily" | "fontSize" | "fontStyle" | "gridAutoColumns" | "gridAutoFlow" | "gridAutoRows" | "gridTemplateAreas" | "gridTemplateColumns" | "gridTemplateRows" | "height" | "justifyContent" | "justifyItems" | "justifySelf" | "left" | "letterSpacing" | "lineHeight" | "marginBottom" | "marginLeft" | "marginRight" | "marginTop" | "maxHeight" | "maxWidth" | "minHeight" | "minWidth" | "order" | "paddingBottom" | "paddingLeft" | "paddingRight" | "paddingTop" | "position" | "right" | "rowGap" | "textAlign" | "textOverflow" | "textTransform" | "top" | "visibility" | "whiteSpace" | "width" | "borderBottom" | "borderColor" | "borderLeft" | "borderRadius" | "borderRight" | "borderTop" | "flex" | "gap" | "gridArea" | "gridColumn" | "gridRow" | "margin" | "overflow" | "padding" | "bgcolor" | "m" | "mt" | "mr" | "mb" | "ml" | "mx" | "marginX" | "my" | "marginY" | "pt" | "pr" | "pb" | "pl" | "px" | "paddingX" | "py" | "paddingY" | "typography" | "displayPrint") | "component"> & import("@mui/system").MUIStyledCommonProps<Theme>, {}, {}>;
13
13
  export declare const IconCircle: import("@emotion/styled").StyledComponent<import("@mui/system").SystemProps<Theme> & {
@@ -15,7 +15,7 @@ export declare const IconCircle: import("@emotion/styled").StyledComponent<impor
15
15
  component?: import("react").ElementType<any> | undefined;
16
16
  ref?: import("react").Ref<unknown> | undefined;
17
17
  sx?: import("@mui/material").SxProps<Theme> | undefined;
18
- } & Omit<Pick<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "key" | keyof import("react").HTMLAttributes<HTMLDivElement>> & {
18
+ } & Omit<Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & {
19
19
  ref?: import("react").RefObject<HTMLDivElement> | ((instance: HTMLDivElement | null) => void) | null | undefined;
20
20
  }, "children" | "sx" | "ref" | ("p" | "color" | "border" | "boxShadow" | "fontWeight" | "zIndex" | "alignContent" | "alignItems" | "alignSelf" | "bottom" | "boxSizing" | "columnGap" | "display" | "flexBasis" | "flexDirection" | "flexGrow" | "flexShrink" | "flexWrap" | "fontFamily" | "fontSize" | "fontStyle" | "gridAutoColumns" | "gridAutoFlow" | "gridAutoRows" | "gridTemplateAreas" | "gridTemplateColumns" | "gridTemplateRows" | "height" | "justifyContent" | "justifyItems" | "justifySelf" | "left" | "letterSpacing" | "lineHeight" | "marginBottom" | "marginLeft" | "marginRight" | "marginTop" | "maxHeight" | "maxWidth" | "minHeight" | "minWidth" | "order" | "paddingBottom" | "paddingLeft" | "paddingRight" | "paddingTop" | "position" | "right" | "rowGap" | "textAlign" | "textOverflow" | "textTransform" | "top" | "visibility" | "whiteSpace" | "width" | "borderBottom" | "borderColor" | "borderLeft" | "borderRadius" | "borderRight" | "borderTop" | "flex" | "gap" | "gridArea" | "gridColumn" | "gridRow" | "margin" | "overflow" | "padding" | "bgcolor" | "m" | "mt" | "mr" | "mb" | "ml" | "mx" | "marginX" | "my" | "marginY" | "pt" | "pr" | "pb" | "pl" | "px" | "paddingX" | "py" | "paddingY" | "typography" | "displayPrint") | "component"> & import("@mui/system").MUIStyledCommonProps<Theme> & {
21
21
  status: StatusColor;
@@ -1,13 +1,4 @@
1
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
2
  Object.defineProperty(exports, "__esModule", { value: true });
12
3
  exports.SwapPage = void 0;
13
4
  const jsx_runtime_1 = require("react/jsx-runtime");
@@ -28,7 +19,6 @@ const StatusBottomSheet_1 = require("./StatusBottomSheet");
28
19
  const SwapPage_style_1 = require("./SwapPage.style");
29
20
  const TokenValueBottomSheet_1 = require("./TokenValueBottomSheet");
30
21
  const SwapPage = () => {
31
- var _a;
32
22
  const { t } = (0, react_i18next_1.useTranslation)();
33
23
  const { variant } = (0, providers_1.useWidgetConfig)();
34
24
  const { state } = (0, react_router_dom_1.useLocation)();
@@ -37,23 +27,21 @@ const SwapPage = () => {
37
27
  const exchangeRateBottomSheetRef = (0, react_1.useRef)(null);
38
28
  const { setValue } = (0, react_hook_form_1.useFormContext)();
39
29
  const { route, status, executeRoute, restartRoute, deleteRoute } = (0, hooks_1.useRouteExecution)({
40
- routeId: state === null || state === void 0 ? void 0 : state.routeId,
41
- onAcceptExchangeRateUpdate: (_a = exchangeRateBottomSheetRef.current) === null || _a === void 0 ? void 0 : _a.open,
30
+ routeId: state?.routeId,
31
+ onAcceptExchangeRateUpdate: exchangeRateBottomSheetRef.current?.open,
42
32
  });
43
33
  const handleExecuteRoute = (0, react_1.useCallback)(() => {
44
- var _a, _b;
45
- if ((_a = tokenValueBottomSheetRef.current) === null || _a === void 0 ? void 0 : _a.isOpen()) {
46
- (_b = tokenValueBottomSheetRef.current) === null || _b === void 0 ? void 0 : _b.close();
34
+ if (tokenValueBottomSheetRef.current?.isOpen()) {
35
+ tokenValueBottomSheetRef.current?.close();
47
36
  }
48
37
  executeRoute();
49
38
  setValue(providers_1.SwapFormKey.FromAmount, '');
50
39
  }, [executeRoute, setValue]);
51
- const handleSwapClick = () => __awaiter(void 0, void 0, void 0, function* () {
52
- var _b;
40
+ const handleSwapClick = async () => {
53
41
  if (status === stores_1.RouteExecutionStatus.Idle) {
54
42
  const thresholdExceeded = (0, TokenValueBottomSheet_1.getTokenValueLossThreshold)(route);
55
43
  if (thresholdExceeded) {
56
- (_b = tokenValueBottomSheetRef.current) === null || _b === void 0 ? void 0 : _b.open();
44
+ tokenValueBottomSheetRef.current?.open();
57
45
  }
58
46
  else {
59
47
  handleExecuteRoute();
@@ -62,7 +50,7 @@ const SwapPage = () => {
62
50
  if (status === stores_1.RouteExecutionStatus.Failed) {
63
51
  restartRoute();
64
52
  }
65
- });
53
+ };
66
54
  const handleRemoveRoute = () => {
67
55
  navigateBack();
68
56
  deleteRoute();
@@ -80,9 +68,9 @@ const SwapPage = () => {
80
68
  }
81
69
  };
82
70
  return ((0, jsx_runtime_1.jsxs)(SwapPage_style_1.Container, { children: [(0, Step_1.getStepList)(route), status === stores_1.RouteExecutionStatus.Idle ||
83
- status === stores_1.RouteExecutionStatus.Failed ? ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsx)(GasSufficiencyMessage_1.GasSufficiencyMessage, { route: route, mt: 2 }), (0, jsx_runtime_1.jsxs)(material_1.Box, Object.assign({ mt: 2, display: "flex" }, { children: [(0, jsx_runtime_1.jsx)(StartSwapButton_1.StartSwapButton, { text: getSwapButtonText(), onClick: handleSwapClick, currentRoute: route }), status === stores_1.RouteExecutionStatus.Failed ? ((0, jsx_runtime_1.jsx)(material_1.Tooltip, Object.assign({ title: t('button.removeSwap'), placement: "bottom-end", enterDelay: 400, arrow: true }, { children: (0, jsx_runtime_1.jsx)(material_1.Button, Object.assign({ onClick: handleRemoveRoute, sx: {
71
+ status === stores_1.RouteExecutionStatus.Failed ? ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsx)(GasSufficiencyMessage_1.GasSufficiencyMessage, { route: route, mt: 2 }), (0, jsx_runtime_1.jsxs)(material_1.Box, { mt: 2, display: "flex", children: [(0, jsx_runtime_1.jsx)(StartSwapButton_1.StartSwapButton, { text: getSwapButtonText(), onClick: handleSwapClick, currentRoute: route }), status === stores_1.RouteExecutionStatus.Failed ? ((0, jsx_runtime_1.jsx)(material_1.Tooltip, { title: t('button.removeSwap'), placement: "bottom-end", enterDelay: 400, arrow: true, children: (0, jsx_runtime_1.jsx)(material_1.Button, { onClick: handleRemoveRoute, sx: {
84
72
  minWidth: 48,
85
73
  marginLeft: 1,
86
- } }, { children: (0, jsx_runtime_1.jsx)(icons_material_1.Delete, {}) })) }))) : null] }))] })) : null, route && status ? ((0, jsx_runtime_1.jsx)(StatusBottomSheet_1.StatusBottomSheet, { status: status, route: route })) : null, route ? ((0, jsx_runtime_1.jsx)(TokenValueBottomSheet_1.TokenValueBottomSheet, { route: route, ref: tokenValueBottomSheetRef, onContinue: handleExecuteRoute })) : null, route ? ((0, jsx_runtime_1.jsx)(ExchangeRateBottomSheet_1.ExchangeRateBottomSheet, { ref: exchangeRateBottomSheetRef })) : null] }));
74
+ }, children: (0, jsx_runtime_1.jsx)(icons_material_1.Delete, {}) }) })) : null] })] })) : null, route && status ? ((0, jsx_runtime_1.jsx)(StatusBottomSheet_1.StatusBottomSheet, { status: status, route: route })) : null, route ? ((0, jsx_runtime_1.jsx)(TokenValueBottomSheet_1.TokenValueBottomSheet, { route: route, ref: tokenValueBottomSheetRef, onContinue: handleExecuteRoute })) : null, route ? ((0, jsx_runtime_1.jsx)(ExchangeRateBottomSheet_1.ExchangeRateBottomSheet, { ref: exchangeRateBottomSheetRef })) : null] }));
87
75
  };
88
76
  exports.SwapPage = SwapPage;
@@ -6,6 +6,6 @@ export declare const Container: import("@emotion/styled").StyledComponent<{
6
6
  fixed?: boolean | undefined;
7
7
  maxWidth?: false | import("@mui/material").Breakpoint | undefined;
8
8
  sx?: import("@mui/material").SxProps<import("@mui/material").Theme> | undefined;
9
- } & import("@mui/material/OverridableComponent").CommonProps & Omit<Pick<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "key" | keyof import("react").HTMLAttributes<HTMLDivElement>> & {
9
+ } & import("@mui/material/OverridableComponent").CommonProps & Omit<Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & {
10
10
  ref?: import("react").RefObject<HTMLDivElement> | ((instance: HTMLDivElement | null) => void) | null | undefined;
11
11
  }, keyof import("@mui/material/OverridableComponent").CommonProps | "children" | "sx" | "maxWidth" | "fixed" | "disableGutters"> & import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme>, {}, {}>;
@@ -12,30 +12,29 @@ const hooks_1 = require("../../hooks");
12
12
  const StatusBottomSheet_style_1 = require("./StatusBottomSheet.style");
13
13
  exports.TokenValueBottomSheet = (0, react_1.forwardRef)(({ route, onContinue, onCancel }, ref) => {
14
14
  const handleCancel = () => {
15
- var _a;
16
- (_a = ref.current) === null || _a === void 0 ? void 0 : _a.close();
17
- onCancel === null || onCancel === void 0 ? void 0 : onCancel();
15
+ ref.current?.close();
16
+ onCancel?.();
18
17
  };
19
- return ((0, jsx_runtime_1.jsx)(BottomSheet_1.BottomSheet, Object.assign({ ref: ref, onClose: onCancel }, { children: (0, jsx_runtime_1.jsx)(TokenValueBottomSheetContent, { route: route, onContinue: onContinue, onCancel: handleCancel }) })));
18
+ return ((0, jsx_runtime_1.jsx)(BottomSheet_1.BottomSheet, { ref: ref, onClose: onCancel, children: (0, jsx_runtime_1.jsx)(TokenValueBottomSheetContent, { route: route, onContinue: onContinue, onCancel: handleCancel }) }));
20
19
  });
21
20
  const TokenValueBottomSheetContent = ({ route, onCancel, onContinue, }) => {
22
21
  const { t } = (0, react_i18next_1.useTranslation)();
23
22
  const ref = (0, react_1.useRef)();
24
23
  (0, hooks_1.useSetContentHeight)(ref);
25
- return ((0, jsx_runtime_1.jsxs)(material_1.Box, Object.assign({ p: 3, ref: ref }, { children: [(0, jsx_runtime_1.jsxs)(StatusBottomSheet_style_1.IconContainer, { children: [(0, jsx_runtime_1.jsx)(StatusBottomSheet_style_1.IconCircle, Object.assign({ status: "warning", mb: 1 }, { children: (0, jsx_runtime_1.jsx)(icons_material_1.WarningRounded, { color: "warning" }) })), (0, jsx_runtime_1.jsx)(material_1.Typography, Object.assign({ py: 1, fontSize: 18, fontWeight: 700 }, { children: t('swap.warning.title.highValueLoss') }))] }), (0, jsx_runtime_1.jsx)(material_1.Typography, Object.assign({ py: 1 }, { children: t('swap.warning.message.highValueLoss') })), (0, jsx_runtime_1.jsxs)(material_1.Box, Object.assign({ display: "flex", justifyContent: "space-between", mt: 1 }, { children: [(0, jsx_runtime_1.jsx)(material_1.Typography, { children: t('swap.swapping') }), (0, jsx_runtime_1.jsx)(material_1.Typography, Object.assign({ fontWeight: 600 }, { children: t('format.currency', { value: route.fromAmountUSD }) }))] })), (0, jsx_runtime_1.jsxs)(material_1.Box, Object.assign({ display: "flex", justifyContent: "space-between", mt: 0.25 }, { children: [(0, jsx_runtime_1.jsx)(material_1.Typography, { children: t('swap.gasCost') }), (0, jsx_runtime_1.jsx)(material_1.Typography, Object.assign({ fontWeight: 600 }, { children: t('format.currency', { value: route.gasCostUSD }) }))] })), (0, jsx_runtime_1.jsxs)(material_1.Box, Object.assign({ display: "flex", justifyContent: "space-between", mt: 0.25 }, { children: [(0, jsx_runtime_1.jsx)(material_1.Typography, { children: t('swap.receiving') }), (0, jsx_runtime_1.jsx)(material_1.Typography, Object.assign({ fontWeight: 600 }, { children: t('format.currency', { value: route.toAmountUSD }) }))] })), (0, jsx_runtime_1.jsxs)(material_1.Box, Object.assign({ display: "flex", justifyContent: "space-between", mt: 0.25 }, { children: [(0, jsx_runtime_1.jsx)(material_1.Typography, { children: t('swap.valueLoss') }), (0, jsx_runtime_1.jsxs)(material_1.Typography, Object.assign({ fontWeight: 600 }, { children: [(0, big_js_1.default)(route.toAmountUSD || 0)
24
+ return ((0, jsx_runtime_1.jsxs)(material_1.Box, { p: 3, ref: ref, children: [(0, jsx_runtime_1.jsxs)(StatusBottomSheet_style_1.IconContainer, { children: [(0, jsx_runtime_1.jsx)(StatusBottomSheet_style_1.IconCircle, { status: "warning", mb: 1, children: (0, jsx_runtime_1.jsx)(icons_material_1.WarningRounded, { color: "warning" }) }), (0, jsx_runtime_1.jsx)(material_1.Typography, { py: 1, fontSize: 18, fontWeight: 700, children: t('swap.warning.title.highValueLoss') })] }), (0, jsx_runtime_1.jsx)(material_1.Typography, { py: 1, children: t('swap.warning.message.highValueLoss') }), (0, jsx_runtime_1.jsxs)(material_1.Box, { display: "flex", justifyContent: "space-between", mt: 1, children: [(0, jsx_runtime_1.jsx)(material_1.Typography, { children: t('swap.swapping') }), (0, jsx_runtime_1.jsx)(material_1.Typography, { fontWeight: 600, children: t('format.currency', { value: route.fromAmountUSD }) })] }), (0, jsx_runtime_1.jsxs)(material_1.Box, { display: "flex", justifyContent: "space-between", mt: 0.25, children: [(0, jsx_runtime_1.jsx)(material_1.Typography, { children: t('swap.gasCost') }), (0, jsx_runtime_1.jsx)(material_1.Typography, { fontWeight: 600, children: t('format.currency', { value: route.gasCostUSD }) })] }), (0, jsx_runtime_1.jsxs)(material_1.Box, { display: "flex", justifyContent: "space-between", mt: 0.25, children: [(0, jsx_runtime_1.jsx)(material_1.Typography, { children: t('swap.receiving') }), (0, jsx_runtime_1.jsx)(material_1.Typography, { fontWeight: 600, children: t('format.currency', { value: route.toAmountUSD }) })] }), (0, jsx_runtime_1.jsxs)(material_1.Box, { display: "flex", justifyContent: "space-between", mt: 0.25, children: [(0, jsx_runtime_1.jsx)(material_1.Typography, { children: t('swap.valueLoss') }), (0, jsx_runtime_1.jsxs)(material_1.Typography, { fontWeight: 600, children: [(0, big_js_1.default)(route.toAmountUSD || 0)
26
25
  .div((0, big_js_1.default)(route.fromAmountUSD || 0).plus((0, big_js_1.default)(route.gasCostUSD || 0)))
27
26
  .minus(1)
28
27
  .mul(100)
29
28
  .round(2, big_js_1.default.roundUp)
30
- .toString(), "%"] }))] })), (0, jsx_runtime_1.jsxs)(material_1.Box, Object.assign({ display: "flex", mt: 3 }, { children: [(0, jsx_runtime_1.jsx)(material_1.Button, Object.assign({ variant: "text", onClick: onCancel, fullWidth: true }, { children: t('button.cancel') })), (0, jsx_runtime_1.jsx)(material_1.Box, { display: "flex", p: 1 }), (0, jsx_runtime_1.jsx)(material_1.Button, Object.assign({ variant: "contained", onClick: onContinue, fullWidth: true }, { children: t('button.continue') }))] }))] })));
29
+ .toString(), "%"] })] }), (0, jsx_runtime_1.jsxs)(material_1.Box, { display: "flex", mt: 3, children: [(0, jsx_runtime_1.jsx)(material_1.Button, { variant: "text", onClick: onCancel, fullWidth: true, children: t('button.cancel') }), (0, jsx_runtime_1.jsx)(material_1.Box, { display: "flex", p: 1 }), (0, jsx_runtime_1.jsx)(material_1.Button, { variant: "contained", onClick: onContinue, fullWidth: true, children: t('button.continue') })] })] }));
31
30
  };
32
31
  const getTokenValueLossThreshold = (route) => {
33
32
  if (!route) {
34
33
  return false;
35
34
  }
36
- const fromAmountUSD = (0, big_js_1.default)((route === null || route === void 0 ? void 0 : route.fromAmountUSD) || 0);
37
- const toAmountUSD = (0, big_js_1.default)((route === null || route === void 0 ? void 0 : route.toAmountUSD) || 0);
38
- const gasCostUSD = (0, big_js_1.default)((route === null || route === void 0 ? void 0 : route.gasCostUSD) || 0);
35
+ const fromAmountUSD = (0, big_js_1.default)(route?.fromAmountUSD || 0);
36
+ const toAmountUSD = (0, big_js_1.default)(route?.toAmountUSD || 0);
37
+ const gasCostUSD = (0, big_js_1.default)(route?.gasCostUSD || 0);
39
38
  if (fromAmountUSD.eq(0) && toAmountUSD.eq(0)) {
40
39
  return false;
41
40
  }
@@ -21,7 +21,7 @@ const SwapRoutesPage = () => {
21
21
  });
22
22
  };
23
23
  (0, react_1.useEffect)(() => {
24
- if (!(swapRoutes === null || swapRoutes === void 0 ? void 0 : swapRoutes.length) && !isLoading && !isFetching) {
24
+ if (!swapRoutes?.length && !isLoading && !isFetching) {
25
25
  navigateBack();
26
26
  }
27
27
  // redirect to the home page if no routes are found on page reload
@@ -32,7 +32,7 @@ const SwapRoutesPage = () => {
32
32
  .getState()
33
33
  .setAction((0, jsx_runtime_1.jsx)(ProgressToNextUpdate_1.ProgressToNextUpdate, { updatedAt: dataUpdatedAt || new Date().getTime(), timeToUpdate: refetchTime, isLoading: isFetching, onClick: () => refetch(), sx: { marginRight: -1 }, size: "medium", edge: "end" }));
34
34
  }, [dataUpdatedAt, isFetching, refetch, refetchTime]);
35
- const routeNotFound = !(swapRoutes === null || swapRoutes === void 0 ? void 0 : swapRoutes.length) && !isLoading && !isFetching;
36
- return ((0, jsx_runtime_1.jsx)(SwapRoutesPage_style_1.Stack, Object.assign({ direction: "column", spacing: 2, flex: 1 }, { children: routeNotFound ? ((0, jsx_runtime_1.jsx)(SwapRouteCard_1.SwapRouteNotFoundCard, {})) : isLoading ? (Array.from({ length: 3 }).map((_, index) => ((0, jsx_runtime_1.jsx)(SwapRouteCard_1.SwapRouteCardSkeleton, {}, index)))) : (swapRoutes === null || swapRoutes === void 0 ? void 0 : swapRoutes.map((route, index) => ((0, jsx_runtime_1.jsx)(SwapRouteCard_1.SwapRouteCard, { route: route, onClick: () => handleRouteClick(route), active: index === 0 }, route.id)))) })));
35
+ const routeNotFound = !swapRoutes?.length && !isLoading && !isFetching;
36
+ return ((0, jsx_runtime_1.jsx)(SwapRoutesPage_style_1.Stack, { direction: "column", spacing: 2, flex: 1, children: routeNotFound ? ((0, jsx_runtime_1.jsx)(SwapRouteCard_1.SwapRouteNotFoundCard, {})) : isLoading ? (Array.from({ length: 3 }).map((_, index) => ((0, jsx_runtime_1.jsx)(SwapRouteCard_1.SwapRouteCardSkeleton, {}, index)))) : (swapRoutes?.map((route, index) => ((0, jsx_runtime_1.jsx)(SwapRouteCard_1.SwapRouteCard, { route: route, onClick: () => handleRouteClick(route), active: index === 0 }, route.id)))) }));
37
37
  };
38
38
  exports.SwapRoutesPage = SwapRoutesPage;
@@ -6,6 +6,6 @@ export declare const Stack: import("@emotion/styled").StyledComponent<import("@m
6
6
  spacing?: import("@mui/system").ResponsiveStyleValue<string | number> | undefined;
7
7
  divider?: import("react").ReactNode;
8
8
  sx?: import("@mui/material").SxProps<import("@mui/material").Theme> | undefined;
9
- } & import("@mui/material/OverridableComponent").CommonProps & Omit<Pick<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "key" | keyof import("react").HTMLAttributes<HTMLDivElement>> & {
9
+ } & import("@mui/material/OverridableComponent").CommonProps & Omit<Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & {
10
10
  ref?: import("react").RefObject<HTMLDivElement> | ((instance: HTMLDivElement | null) => void) | null | undefined;
11
11
  }, keyof import("@mui/material/OverridableComponent").CommonProps | "children" | "sx" | "ref" | "direction" | ("p" | "color" | "border" | "boxShadow" | "fontWeight" | "zIndex" | "alignContent" | "alignItems" | "alignSelf" | "bottom" | "boxSizing" | "columnGap" | "display" | "flexBasis" | "flexDirection" | "flexGrow" | "flexShrink" | "flexWrap" | "fontFamily" | "fontSize" | "fontStyle" | "gridAutoColumns" | "gridAutoFlow" | "gridAutoRows" | "gridTemplateAreas" | "gridTemplateColumns" | "gridTemplateRows" | "height" | "justifyContent" | "justifyItems" | "justifySelf" | "left" | "letterSpacing" | "lineHeight" | "marginBottom" | "marginLeft" | "marginRight" | "marginTop" | "maxHeight" | "maxWidth" | "minHeight" | "minWidth" | "order" | "paddingBottom" | "paddingLeft" | "paddingRight" | "paddingTop" | "position" | "right" | "rowGap" | "textAlign" | "textOverflow" | "textTransform" | "top" | "visibility" | "whiteSpace" | "width" | "borderBottom" | "borderColor" | "borderLeft" | "borderRadius" | "borderRight" | "borderTop" | "flex" | "gap" | "gridArea" | "gridColumn" | "gridRow" | "margin" | "overflow" | "padding" | "bgcolor" | "m" | "mt" | "mr" | "mb" | "ml" | "mx" | "marginX" | "my" | "marginY" | "pt" | "pr" | "pb" | "pl" | "px" | "paddingX" | "py" | "paddingY" | "typography" | "displayPrint") | "divider" | "spacing"> & import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme>, {}, {}>;
@@ -14,12 +14,11 @@ const I18nProvider = ({ children, }) => {
14
14
  const { languageResources, languages, disableI18n } = (0, WidgetProvider_1.useWidgetConfig)();
15
15
  const { language } = (0, stores_1.useSettings)(['language']);
16
16
  const i18n = (0, react_1.useMemo)(() => {
17
- var _a, _b;
18
17
  let resources = Object.keys(supportedLanguages)
19
18
  .filter((lng) => (0, WidgetProvider_1.isItemAllowed)(lng, languages))
20
19
  .reduce((resources, lng) => {
21
20
  resources[lng] = {
22
- translation: (languageResources === null || languageResources === void 0 ? void 0 : languageResources[lng])
21
+ translation: languageResources?.[lng]
23
22
  ? (0, utils_1.deepMerge)(supportedLanguages[lng], languageResources[lng])
24
23
  : supportedLanguages[lng],
25
24
  };
@@ -36,12 +35,12 @@ const I18nProvider = ({ children, }) => {
36
35
  }, resources);
37
36
  }
38
37
  let i18n = i18next_1.default.createInstance({
39
- lng: (languages === null || languages === void 0 ? void 0 : languages.default) || language,
38
+ lng: languages?.default || language,
40
39
  fallbackLng: resources.en
41
40
  ? 'en'
42
- : (languages === null || languages === void 0 ? void 0 : languages.default) ||
43
- ((_a = languages === null || languages === void 0 ? void 0 : languages.allow) === null || _a === void 0 ? void 0 : _a[0]) ||
44
- ((_b = Object.keys(resources)) === null || _b === void 0 ? void 0 : _b[0]),
41
+ : languages?.default ||
42
+ languages?.allow?.[0] ||
43
+ Object.keys(resources)?.[0],
45
44
  lowerCaseLng: true,
46
45
  interpolation: {
47
46
  escapeValue: false,
@@ -51,12 +50,12 @@ const I18nProvider = ({ children, }) => {
51
50
  caches: [],
52
51
  },
53
52
  });
54
- if (!language && !(languages === null || languages === void 0 ? void 0 : languages.default) && !disableI18n) {
53
+ if (!language && !languages?.default && !disableI18n) {
55
54
  i18n = i18n.use(i18next_browser_languagedetector_1.default);
56
55
  }
57
56
  i18n.use(react_i18next_1.initReactI18next).init();
58
57
  return i18n;
59
58
  }, [disableI18n, language, languageResources, languages]);
60
- return (0, jsx_runtime_1.jsx)(react_i18next_1.I18nextProvider, Object.assign({ i18n: i18n }, { children: children }));
59
+ return (0, jsx_runtime_1.jsx)(react_i18next_1.I18nextProvider, { i18n: i18n, children: children });
61
60
  };
62
61
  exports.I18nProvider = I18nProvider;
@@ -12,15 +12,26 @@ exports.useLiFi = useLiFi;
12
12
  const SDKProvider = ({ children, }) => {
13
13
  const { sdkConfig, fee, integrator, referrer, routePriority, slippage } = (0, WidgetProvider_1.useWidgetConfig)();
14
14
  const value = (0, react_1.useMemo)(() => {
15
- const config = Object.assign(Object.assign({}, sdkConfig), { defaultRouteOptions: Object.assign({ fee, integrator: integrator !== null && integrator !== void 0 ? integrator : window.location.hostname, referrer,
15
+ const config = {
16
+ ...sdkConfig,
17
+ defaultRouteOptions: {
18
+ fee,
19
+ integrator: integrator ?? window.location.hostname,
20
+ referrer,
16
21
  routePriority,
17
- slippage }, sdkConfig === null || sdkConfig === void 0 ? void 0 : sdkConfig.defaultRouteOptions) });
22
+ slippage,
23
+ ...sdkConfig?.defaultRouteOptions,
24
+ },
25
+ };
18
26
  if (!lifi) {
19
- lifi = new sdk_1.default(Object.assign({ disableVersionCheck: true }, config));
27
+ lifi = new sdk_1.default({
28
+ disableVersionCheck: true,
29
+ ...config,
30
+ });
20
31
  }
21
32
  lifi.setConfig(config);
22
33
  return lifi;
23
34
  }, [fee, integrator, referrer, routePriority, sdkConfig, slippage]);
24
- return (0, jsx_runtime_1.jsx)(SDKContext.Provider, Object.assign({ value: value }, { children: children }));
35
+ return (0, jsx_runtime_1.jsx)(SDKContext.Provider, { value: value, children: children });
25
36
  };
26
37
  exports.SDKProvider = SDKProvider;
@@ -20,15 +20,21 @@ exports.formDefaultValues = {
20
20
  };
21
21
  const SwapFormProvider = ({ children, }) => {
22
22
  const { fromChain, fromToken, fromAmount, toChain, toToken, toAddress, buildSwapUrl, } = (0, WidgetProvider_1.useWidgetConfig)();
23
- const defaultValues = (0, react_1.useMemo)(() => (Object.assign(Object.assign({}, exports.formDefaultValues), { fromChain,
24
- fromToken, fromAmount: (typeof fromAmount === 'number'
25
- ? fromAmount === null || fromAmount === void 0 ? void 0 : fromAmount.toPrecision()
26
- : fromAmount) || exports.formDefaultValues.fromAmount, toChain,
27
- toToken, toAddress: toAddress || exports.formDefaultValues.toAddress })), [fromAmount, fromChain, fromToken, toAddress, toChain, toToken]);
23
+ const defaultValues = (0, react_1.useMemo)(() => ({
24
+ ...exports.formDefaultValues,
25
+ fromChain,
26
+ fromToken,
27
+ fromAmount: (typeof fromAmount === 'number'
28
+ ? fromAmount?.toPrecision()
29
+ : fromAmount) || exports.formDefaultValues.fromAmount,
30
+ toChain,
31
+ toToken,
32
+ toAddress: toAddress || exports.formDefaultValues.toAddress,
33
+ }), [fromAmount, fromChain, fromToken, toAddress, toChain, toToken]);
28
34
  const methods = (0, react_hook_form_1.useForm)({
29
35
  // values,
30
36
  defaultValues,
31
37
  });
32
- return ((0, jsx_runtime_1.jsxs)(react_hook_form_1.FormProvider, Object.assign({}, methods, { children: [(0, jsx_runtime_1.jsx)(FormUpdater_1.FormUpdater, { defaultValues: defaultValues }), buildSwapUrl ? (0, jsx_runtime_1.jsx)(URLSearchParamsBuilder_1.URLSearchParamsBuilder, {}) : null, children] })));
38
+ return ((0, jsx_runtime_1.jsxs)(react_hook_form_1.FormProvider, { ...methods, children: [(0, jsx_runtime_1.jsx)(FormUpdater_1.FormUpdater, { defaultValues: defaultValues }), buildSwapUrl ? (0, jsx_runtime_1.jsx)(URLSearchParamsBuilder_1.URLSearchParamsBuilder, {}) : null, children] }));
33
39
  };
34
40
  exports.SwapFormProvider = SwapFormProvider;
@@ -1,15 +1,4 @@
1
1
  "use strict";
2
- var __rest = (this && this.__rest) || function (s, e) {
3
- var t = {};
4
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
5
- t[p] = s[p];
6
- if (s != null && typeof Object.getOwnPropertySymbols === "function")
7
- for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
8
- if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
9
- t[p[i]] = s[p[i]];
10
- }
11
- return t;
12
- };
13
2
  Object.defineProperty(exports, "__esModule", { value: true });
14
3
  exports.URLSearchParamsBuilder = void 0;
15
4
  const react_1 = require("react");
@@ -26,7 +15,9 @@ const formValueKeys = [
26
15
  ];
27
16
  const URLSearchParamsBuilder = () => {
28
17
  const { pathname } = (0, react_router_dom_1.useLocation)();
29
- const touchedFields = __rest((0, react_hook_form_1.useFormState)().touchedFields, []);
18
+ const {
19
+ // Have to use touchedFields, because default values are not considered dirty
20
+ touchedFields: { ...touchedFields }, } = (0, react_hook_form_1.useFormState)();
30
21
  const values = (0, react_hook_form_1.useWatch)({ name: formValueKeys });
31
22
  (0, react_1.useEffect)(() => {
32
23
  const url = new URL(window.location);
@@ -5,7 +5,7 @@ const __1 = require("..");
5
5
  const hooks_1 = require("../../hooks");
6
6
  const TelemetryProvider = ({ children }) => {
7
7
  const config = (0, __1.useWidgetConfig)();
8
- (0, hooks_1.useTelemetry)(config === null || config === void 0 ? void 0 : config.disableTelemetry);
8
+ (0, hooks_1.useTelemetry)(config?.disableTelemetry);
9
9
  return children;
10
10
  };
11
11
  exports.TelemetryProvider = TelemetryProvider;
@@ -12,7 +12,7 @@ const ThemeProvider = ({ children, }) => {
12
12
  const { appearance: colorSchemeMode, theme: themeConfig } = (0, WidgetProvider_1.useWidgetConfig)();
13
13
  const prefersDarkMode = (0, material_1.useMediaQuery)('(prefers-color-scheme: dark)');
14
14
  const [appearance, setAppearance] = (0, stores_1.useAppearance)();
15
- const [mode, setMode] = (0, react_1.useState)((colorSchemeMode !== null && colorSchemeMode !== void 0 ? colorSchemeMode : appearance === 'auto')
15
+ const [mode, setMode] = (0, react_1.useState)(colorSchemeMode ?? appearance === 'auto'
16
16
  ? prefersDarkMode
17
17
  ? 'dark'
18
18
  : 'light'
@@ -32,6 +32,6 @@ const ThemeProvider = ({ children, }) => {
32
32
  // eslint-disable-next-line react-hooks/exhaustive-deps
33
33
  }, [colorSchemeMode]);
34
34
  const theme = (0, react_1.useMemo)(() => (0, theme_1.createTheme)(mode, themeConfig), [mode, themeConfig]);
35
- return (0, jsx_runtime_1.jsx)(styles_1.ThemeProvider, Object.assign({ theme: theme }, { children: children }));
35
+ return (0, jsx_runtime_1.jsx)(styles_1.ThemeProvider, { theme: theme, children: children });
36
36
  };
37
37
  exports.ThemeProvider = ThemeProvider;