@lifi/widget 3.0.0-alpha.11 → 3.0.0-alpha.13

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 (808) hide show
  1. package/App.tsx +30 -14
  2. package/AppDrawer.tsx +82 -91
  3. package/AppDrawerContext.ts +9 -0
  4. package/_cjs/App.js +16 -3
  5. package/_cjs/App.js.map +1 -1
  6. package/_cjs/AppDrawer.d.ts +4 -2
  7. package/_cjs/AppDrawer.js +20 -18
  8. package/_cjs/AppDrawer.js.map +1 -1
  9. package/_cjs/AppDrawerContext.d.ts +6 -0
  10. package/_cjs/AppDrawerContext.js +8 -0
  11. package/_cjs/AppDrawerContext.js.map +1 -0
  12. package/_cjs/components/ActiveTransactions/ActiveTransactions.js +1 -3
  13. package/_cjs/components/ActiveTransactions/ActiveTransactions.js.map +1 -1
  14. package/_cjs/components/AmountInput/AmountInput.js +9 -10
  15. package/_cjs/components/AmountInput/AmountInput.js.map +1 -1
  16. package/_cjs/components/AmountInput/AmountInput.style.d.ts +3 -0
  17. package/_cjs/components/AmountInput/AmountInput.style.js +9 -4
  18. package/_cjs/components/AmountInput/AmountInput.style.js.map +1 -1
  19. package/_cjs/components/AmountInput/AmountInputAdornment.style.d.ts +4 -1
  20. package/_cjs/components/AmountInput/AmountInputAdornment.style.js +7 -2
  21. package/_cjs/components/AmountInput/AmountInputAdornment.style.js.map +1 -1
  22. package/_cjs/components/AmountInput/AmountInputEndAdornment.js +2 -2
  23. package/_cjs/components/AmountInput/AmountInputEndAdornment.js.map +1 -1
  24. package/_cjs/components/AmountInput/AmountInputStartAdornment.js +2 -2
  25. package/_cjs/components/AmountInput/AmountInputStartAdornment.js.map +1 -1
  26. package/_cjs/components/AmountInput/{FormPriceHelperText.d.ts → PriceFormHelperText.d.ts} +2 -2
  27. package/_cjs/components/AmountInput/{FormPriceHelperText.js → PriceFormHelperText.js} +16 -10
  28. package/_cjs/components/AmountInput/PriceFormHelperText.js.map +1 -0
  29. package/_cjs/components/BaseTransactionButton/BaseTransactionButton.js +6 -6
  30. package/_cjs/components/BaseTransactionButton/BaseTransactionButton.js.map +1 -1
  31. package/_cjs/components/Card/CardHeader.js +6 -5
  32. package/_cjs/components/Card/CardHeader.js.map +1 -1
  33. package/_cjs/components/Card/CardTitle.js +3 -4
  34. package/_cjs/components/Card/CardTitle.js.map +1 -1
  35. package/_cjs/components/ChainSelect/ChainSelect.js +7 -5
  36. package/_cjs/components/ChainSelect/ChainSelect.js.map +1 -1
  37. package/_cjs/components/ChainSelect/useChainSelect.d.ts +1 -1
  38. package/_cjs/components/ChainSelect/useChainSelect.js +3 -3
  39. package/_cjs/components/ChainSelect/useChainSelect.js.map +1 -1
  40. package/_cjs/components/Header/CloseDrawerButton.d.ts +1 -0
  41. package/_cjs/components/Header/CloseDrawerButton.js +16 -0
  42. package/_cjs/components/Header/CloseDrawerButton.js.map +1 -0
  43. package/_cjs/components/Header/EVMDisconnectIconButton.d.ts +4 -0
  44. package/_cjs/components/Header/EVMDisconnectIconButton.js +16 -0
  45. package/_cjs/components/Header/EVMDisconnectIconButton.js.map +1 -0
  46. package/_cjs/components/Header/Header.js +1 -6
  47. package/_cjs/components/Header/Header.js.map +1 -1
  48. package/_cjs/components/Header/Header.style.js +10 -4
  49. package/_cjs/components/Header/Header.style.js.map +1 -1
  50. package/_cjs/components/Header/NavigationHeader.d.ts +0 -1
  51. package/_cjs/components/Header/NavigationHeader.js +7 -11
  52. package/_cjs/components/Header/NavigationHeader.js.map +1 -1
  53. package/_cjs/components/Header/SVMDisconnectIconButton.d.ts +1 -0
  54. package/_cjs/components/Header/SVMDisconnectIconButton.js +16 -0
  55. package/_cjs/components/Header/SVMDisconnectIconButton.js.map +1 -0
  56. package/_cjs/components/Header/SettingsButton.style.js +18 -21
  57. package/_cjs/components/Header/SettingsButton.style.js.map +1 -1
  58. package/_cjs/components/Header/TransactionHistoryButton.d.ts +1 -0
  59. package/_cjs/components/Header/TransactionHistoryButton.js +17 -0
  60. package/_cjs/components/Header/TransactionHistoryButton.js.map +1 -0
  61. package/_cjs/components/Header/WalletHeader.d.ts +1 -0
  62. package/_cjs/components/Header/WalletHeader.js +25 -9
  63. package/_cjs/components/Header/WalletHeader.js.map +1 -1
  64. package/_cjs/components/Header/WalletMenu.js +8 -24
  65. package/_cjs/components/Header/WalletMenu.js.map +1 -1
  66. package/_cjs/components/Insurance/InsuranceCard.js +1 -8
  67. package/_cjs/components/Insurance/InsuranceCard.js.map +1 -1
  68. package/_cjs/components/PageContainer.d.ts +9 -0
  69. package/_cjs/components/PageContainer.js +13 -0
  70. package/_cjs/components/PageContainer.js.map +1 -0
  71. package/_cjs/components/ReverseTokensButton/ReverseTokensButton.js +10 -9
  72. package/_cjs/components/ReverseTokensButton/ReverseTokensButton.js.map +1 -1
  73. package/_cjs/components/ReverseTokensButton/ReverseTokensButton.style.js +3 -0
  74. package/_cjs/components/ReverseTokensButton/ReverseTokensButton.style.js.map +1 -1
  75. package/_cjs/components/RouteCard/RouteCard.js +6 -6
  76. package/_cjs/components/RouteCard/RouteCard.js.map +1 -1
  77. package/_cjs/components/RouteCard/RouteCard.style.d.ts +3 -0
  78. package/_cjs/components/RouteCard/RouteCard.style.js +7 -2
  79. package/_cjs/components/RouteCard/RouteCard.style.js.map +1 -1
  80. package/_cjs/components/RouteCard/RouteCardEssentials.js +12 -10
  81. package/_cjs/components/RouteCard/RouteCardEssentials.js.map +1 -1
  82. package/_cjs/components/RouteCard/RouteCardEssentialsExpanded.d.ts +3 -0
  83. package/_cjs/components/RouteCard/RouteCardEssentialsExpanded.js +32 -0
  84. package/_cjs/components/RouteCard/RouteCardEssentialsExpanded.js.map +1 -0
  85. package/_cjs/components/RouteCard/RouteCardSkeleton.js +2 -1
  86. package/_cjs/components/RouteCard/RouteCardSkeleton.js.map +1 -1
  87. package/_cjs/components/RouteCard/types.d.ts +6 -2
  88. package/_cjs/components/Routes/Routes.js +1 -1
  89. package/_cjs/components/Routes/Routes.js.map +1 -1
  90. package/_cjs/components/Routes/RoutesExpanded.js +2 -1
  91. package/_cjs/components/Routes/RoutesExpanded.js.map +1 -1
  92. package/_cjs/components/SelectTokenButton/SelectTokenButton.js +8 -2
  93. package/_cjs/components/SelectTokenButton/SelectTokenButton.js.map +1 -1
  94. package/_cjs/components/SelectTokenButton/SelectTokenButton.style.js +6 -7
  95. package/_cjs/components/SelectTokenButton/SelectTokenButton.style.js.map +1 -1
  96. package/_cjs/components/SmallAvatar.js +4 -4
  97. package/_cjs/components/Step/CircularProgress.js +5 -5
  98. package/_cjs/components/Step/CircularProgress.js.map +1 -1
  99. package/_cjs/components/Step/CircularProgress.style.js +3 -4
  100. package/_cjs/components/Step/CircularProgress.style.js.map +1 -1
  101. package/_cjs/components/Step/DestinationWalletAddress.js +2 -2
  102. package/_cjs/components/Step/DestinationWalletAddress.js.map +1 -1
  103. package/_cjs/components/Step/Step.js +1 -2
  104. package/_cjs/components/Step/Step.js.map +1 -1
  105. package/_cjs/components/Step/StepProcess.js +1 -1
  106. package/_cjs/components/Step/StepProcess.js.map +1 -1
  107. package/_cjs/components/Step/StepTimer.js +9 -8
  108. package/_cjs/components/Step/StepTimer.js.map +1 -1
  109. package/_cjs/components/StepActions/StepActions.js +15 -18
  110. package/_cjs/components/StepActions/StepActions.js.map +1 -1
  111. package/_cjs/components/StepActions/StepActions.style.d.ts +8 -1
  112. package/_cjs/components/StepActions/StepActions.style.js +27 -17
  113. package/_cjs/components/StepActions/StepActions.style.js.map +1 -1
  114. package/_cjs/components/{Step/GasStepProcess.d.ts → StepActions/StepFeeBreakdown.d.ts} +1 -1
  115. package/_cjs/components/StepActions/StepFeeBreakdown.js +45 -0
  116. package/_cjs/components/StepActions/StepFeeBreakdown.js.map +1 -0
  117. package/_cjs/components/StepActions/StepFees.d.ts +6 -0
  118. package/_cjs/components/StepActions/StepFees.js +28 -0
  119. package/_cjs/components/StepActions/StepFees.js.map +1 -0
  120. package/_cjs/components/Token/Token.d.ts +6 -5
  121. package/_cjs/components/Token/Token.js +31 -15
  122. package/_cjs/components/Token/Token.js.map +1 -1
  123. package/_cjs/components/Token/Token.style.d.ts +1 -4
  124. package/_cjs/components/Token/Token.style.js +6 -21
  125. package/_cjs/components/Token/Token.style.js.map +1 -1
  126. package/_cjs/components/TokenAvatar/TokenAvatar.d.ts +3 -0
  127. package/_cjs/components/TokenAvatar/TokenAvatar.js +7 -3
  128. package/_cjs/components/TokenAvatar/TokenAvatar.js.map +1 -1
  129. package/_cjs/components/TokenAvatar/TokenAvatar.style.js +23 -13
  130. package/_cjs/components/TokenAvatar/TokenAvatar.style.js.map +1 -1
  131. package/_cjs/components/TokenList/TokenList.js +3 -4
  132. package/_cjs/components/TokenList/TokenList.js.map +1 -1
  133. package/_cjs/components/TokenList/TokenList.style.js +7 -5
  134. package/_cjs/components/TokenList/TokenList.style.js.map +1 -1
  135. package/_cjs/components/TokenList/TokenListItem.js +7 -4
  136. package/_cjs/components/TokenList/TokenListItem.js.map +1 -1
  137. package/_cjs/components/TokenList/VirtualizedTokenList.js +4 -2
  138. package/_cjs/components/TokenList/VirtualizedTokenList.js.map +1 -1
  139. package/_cjs/components/TokenList/types.d.ts +3 -4
  140. package/_cjs/components/TokenList/useTokenSelect.js +6 -4
  141. package/_cjs/components/TokenList/useTokenSelect.js.map +1 -1
  142. package/_cjs/config/queryClient.js +0 -1
  143. package/_cjs/config/queryClient.js.map +1 -1
  144. package/_cjs/config/theme.js +2 -9
  145. package/_cjs/config/theme.js.map +1 -1
  146. package/_cjs/config/version.d.ts +1 -1
  147. package/_cjs/config/version.js +1 -1
  148. package/_cjs/config/walletConnect.d.ts +1 -0
  149. package/_cjs/config/walletConnect.js +5 -0
  150. package/_cjs/config/walletConnect.js.map +1 -0
  151. package/_cjs/hooks/useAccount.d.ts +4 -1
  152. package/_cjs/hooks/useAccount.js +5 -16
  153. package/_cjs/hooks/useAccount.js.map +1 -1
  154. package/_cjs/hooks/useAvailableChains.js +12 -6
  155. package/_cjs/hooks/useAvailableChains.js.map +1 -1
  156. package/_cjs/hooks/useChains.d.ts +2 -1
  157. package/_cjs/hooks/useChains.js +7 -3
  158. package/_cjs/hooks/useChains.js.map +1 -1
  159. package/_cjs/hooks/useDebouncedWatch.d.ts +1 -2
  160. package/_cjs/hooks/useDebouncedWatch.js +1 -1
  161. package/_cjs/hooks/useDebouncedWatch.js.map +1 -1
  162. package/_cjs/hooks/useFromTokenSufficiency.js +8 -7
  163. package/_cjs/hooks/useFromTokenSufficiency.js.map +1 -1
  164. package/_cjs/hooks/useGasRecommendation.d.ts +1 -1
  165. package/_cjs/hooks/useGasRecommendation.js.map +1 -1
  166. package/_cjs/hooks/useGasRefuel.js +2 -2
  167. package/_cjs/hooks/useGasRefuel.js.map +1 -1
  168. package/_cjs/hooks/useGasSufficiency.js +7 -6
  169. package/_cjs/hooks/useGasSufficiency.js.map +1 -1
  170. package/_cjs/hooks/useRouteExecution.js +5 -5
  171. package/_cjs/hooks/useRouteExecution.js.map +1 -1
  172. package/_cjs/hooks/useRoutes.d.ts +1 -1
  173. package/_cjs/hooks/useRoutes.js +22 -15
  174. package/_cjs/hooks/useRoutes.js.map +1 -1
  175. package/_cjs/hooks/useTokenAddressBalance.d.ts +2 -1
  176. package/_cjs/hooks/useTokenAddressBalance.js +2 -1
  177. package/_cjs/hooks/useTokenAddressBalance.js.map +1 -1
  178. package/_cjs/hooks/useTokenBalance.d.ts +1 -1
  179. package/_cjs/hooks/useTokenBalance.js +8 -19
  180. package/_cjs/hooks/useTokenBalance.js.map +1 -1
  181. package/_cjs/hooks/useTokenBalances.d.ts +2 -1
  182. package/_cjs/hooks/useTokenBalances.js +1 -0
  183. package/_cjs/hooks/useTokenBalances.js.map +1 -1
  184. package/_cjs/hooks/useTools.js +3 -2
  185. package/_cjs/hooks/useTools.js.map +1 -1
  186. package/_cjs/hooks/useTransactionHistory.d.ts +2 -2
  187. package/_cjs/hooks/useTransactionHistory.js +32 -23
  188. package/_cjs/hooks/useTransactionHistory.js.map +1 -1
  189. package/_cjs/i18n/en.json +10 -6
  190. package/_cjs/pages/ActiveTransactionsPage/ActiveTransactionsPage.js +3 -4
  191. package/_cjs/pages/ActiveTransactionsPage/ActiveTransactionsPage.js.map +1 -1
  192. package/_cjs/pages/LanguagesPage/LanguagesPage.js +2 -1
  193. package/_cjs/pages/LanguagesPage/LanguagesPage.js.map +1 -1
  194. package/_cjs/pages/MainPage/MainPage.js +2 -2
  195. package/_cjs/pages/MainPage/MainPage.js.map +1 -1
  196. package/_cjs/pages/RoutesPage/RoutesPage.js +2 -2
  197. package/_cjs/pages/RoutesPage/RoutesPage.js.map +1 -1
  198. package/_cjs/pages/SelectChainPage/SelectChainPage.js +2 -1
  199. package/_cjs/pages/SelectChainPage/SelectChainPage.js.map +1 -1
  200. package/_cjs/pages/SelectEnabledToolsPage/SelectEnabledToolsPage.js +2 -1
  201. package/_cjs/pages/SelectEnabledToolsPage/SelectEnabledToolsPage.js.map +1 -1
  202. package/_cjs/pages/SelectNativeTokenPage/SelectNativeTokenPage.js +2 -1
  203. package/_cjs/pages/SelectNativeTokenPage/SelectNativeTokenPage.js.map +1 -1
  204. package/_cjs/pages/SelectTokenPage/SearchTokenInput.js +2 -2
  205. package/_cjs/pages/SelectTokenPage/SearchTokenInput.js.map +1 -1
  206. package/_cjs/pages/SelectTokenPage/SelectTokenPage.js +2 -1
  207. package/_cjs/pages/SelectTokenPage/SelectTokenPage.js.map +1 -1
  208. package/_cjs/pages/SelectWalletPage/SelectWalletPage.js +2 -1
  209. package/_cjs/pages/SelectWalletPage/SelectWalletPage.js.map +1 -1
  210. package/_cjs/pages/SettingsPage/ResetSettingsButton.js +1 -1
  211. package/_cjs/pages/SettingsPage/ResetSettingsButton.js.map +1 -1
  212. package/_cjs/pages/SettingsPage/SettingsCard/SettingCard.js +1 -1
  213. package/_cjs/pages/SettingsPage/SettingsCard/SettingCard.style.js +7 -6
  214. package/_cjs/pages/SettingsPage/SettingsCard/SettingCard.style.js.map +1 -1
  215. package/_cjs/pages/SettingsPage/SettingsPage.js +6 -6
  216. package/_cjs/pages/SettingsPage/SettingsPage.js.map +1 -1
  217. package/_cjs/pages/SettingsPage/SlippageSettings/SlippageSettings.js +6 -7
  218. package/_cjs/pages/SettingsPage/SlippageSettings/SlippageSettings.js.map +1 -1
  219. package/_cjs/pages/SettingsPage/SlippageSettings/SlippageSettings.style.js +1 -1
  220. package/_cjs/pages/SettingsPage/SlippageSettings/SlippageSettings.style.js.map +1 -1
  221. package/_cjs/pages/TransactionDetailsPage/TransactionDetailsPage.js +2 -2
  222. package/_cjs/pages/TransactionDetailsPage/TransactionDetailsPage.js.map +1 -1
  223. package/_cjs/pages/TransactionDetailsPage/TransactionDetailsSkeleton.js +6 -14
  224. package/_cjs/pages/TransactionDetailsPage/TransactionDetailsSkeleton.js.map +1 -1
  225. package/_cjs/pages/TransactionHistoryPage/TransactionHistoryItem.js +1 -1
  226. package/_cjs/pages/TransactionHistoryPage/TransactionHistoryItem.js.map +1 -1
  227. package/_cjs/pages/TransactionHistoryPage/TransactionHistoryPage.js +3 -2
  228. package/_cjs/pages/TransactionHistoryPage/TransactionHistoryPage.js.map +1 -1
  229. package/_cjs/pages/TransactionHistoryPage/TransactionHistorySkeleton.d.ts +1 -1
  230. package/_cjs/pages/TransactionHistoryPage/TransactionHistorySkeleton.js +4 -9
  231. package/_cjs/pages/TransactionHistoryPage/TransactionHistorySkeleton.js.map +1 -1
  232. package/_cjs/pages/TransactionPage/StatusBottomSheet.js +13 -9
  233. package/_cjs/pages/TransactionPage/StatusBottomSheet.js.map +1 -1
  234. package/_cjs/pages/TransactionPage/TransactionPage.js +2 -2
  235. package/_cjs/pages/TransactionPage/TransactionPage.js.map +1 -1
  236. package/_cjs/providers/I18nProvider/I18nProvider.js +2 -1
  237. package/_cjs/providers/I18nProvider/I18nProvider.js.map +1 -1
  238. package/_cjs/providers/WalletProvider/EVMBaseProvider.d.ts +2 -0
  239. package/_cjs/providers/WalletProvider/EVMBaseProvider.js +91 -0
  240. package/_cjs/providers/WalletProvider/EVMBaseProvider.js.map +1 -0
  241. package/_cjs/providers/WalletProvider/EVMExternalContext.d.ts +2 -0
  242. package/_cjs/providers/WalletProvider/EVMExternalContext.js +6 -0
  243. package/_cjs/providers/WalletProvider/EVMExternalContext.js.map +1 -0
  244. package/_cjs/providers/WalletProvider/EVMProvider.d.ts +1 -1
  245. package/_cjs/providers/WalletProvider/EVMProvider.js +13 -70
  246. package/_cjs/providers/WalletProvider/EVMProvider.js.map +1 -1
  247. package/_cjs/providers/WalletProvider/SDKProviders.js +15 -7
  248. package/_cjs/providers/WalletProvider/SDKProviders.js.map +1 -1
  249. package/_cjs/providers/WalletProvider/SVMBaseProvider.d.ts +2 -0
  250. package/_cjs/providers/WalletProvider/{SolanaProvider.js → SVMBaseProvider.js} +4 -14
  251. package/_cjs/providers/WalletProvider/SVMBaseProvider.js.map +1 -0
  252. package/_cjs/providers/WalletProvider/SVMExternalContext.d.ts +2 -0
  253. package/_cjs/providers/WalletProvider/SVMExternalContext.js +6 -0
  254. package/_cjs/providers/WalletProvider/SVMExternalContext.js.map +1 -0
  255. package/_cjs/providers/WalletProvider/SVMProvider.d.ts +3 -0
  256. package/_cjs/providers/WalletProvider/SVMProvider.js +23 -0
  257. package/_cjs/providers/WalletProvider/SVMProvider.js.map +1 -0
  258. package/_cjs/providers/WalletProvider/WalletProvider.js +2 -2
  259. package/_cjs/providers/WalletProvider/WalletProvider.js.map +1 -1
  260. package/_cjs/providers/WalletProvider/index.d.ts +1 -0
  261. package/_cjs/providers/WalletProvider/index.js +1 -0
  262. package/_cjs/providers/WalletProvider/index.js.map +1 -1
  263. package/_cjs/providers/WalletProvider/useHasExternalWalletProvider.d.ts +7 -0
  264. package/_cjs/providers/WalletProvider/useHasExternalWalletProvider.js +27 -0
  265. package/_cjs/providers/WalletProvider/useHasExternalWalletProvider.js.map +1 -0
  266. package/_cjs/providers/WidgetProvider/WidgetProvider.js.map +1 -1
  267. package/_cjs/providers/WidgetProvider/index.d.ts +1 -2
  268. package/_cjs/providers/WidgetProvider/index.js +1 -2
  269. package/_cjs/providers/WidgetProvider/index.js.map +1 -1
  270. package/_cjs/stores/StoreProvider.js +3 -3
  271. package/_cjs/stores/StoreProvider.js.map +1 -1
  272. package/_cjs/stores/chains/ChainOrderStore.js +19 -16
  273. package/_cjs/stores/chains/ChainOrderStore.js.map +1 -1
  274. package/_cjs/stores/chains/createChainOrderStore.js +34 -15
  275. package/_cjs/stores/chains/createChainOrderStore.js.map +1 -1
  276. package/_cjs/stores/chains/types.d.ts +11 -4
  277. package/_cjs/stores/chains/useChainOrder.d.ts +2 -1
  278. package/_cjs/stores/chains/useChainOrder.js +2 -2
  279. package/_cjs/stores/chains/useChainOrder.js.map +1 -1
  280. package/_cjs/stores/form/FormStore.d.ts +1 -1
  281. package/_cjs/stores/form/FormStore.js +10 -15
  282. package/_cjs/stores/form/FormStore.js.map +1 -1
  283. package/_cjs/stores/form/FormUpdater.d.ts +3 -3
  284. package/_cjs/stores/form/FormUpdater.js +6 -7
  285. package/_cjs/stores/form/FormUpdater.js.map +1 -1
  286. package/_cjs/stores/form/URLSearchParamsBuilder.js +3 -2
  287. package/_cjs/stores/form/URLSearchParamsBuilder.js.map +1 -1
  288. package/_cjs/stores/form/createFormStore.d.ts +1 -1
  289. package/_cjs/stores/form/createFormStore.js +121 -115
  290. package/_cjs/stores/form/createFormStore.js.map +1 -1
  291. package/_cjs/stores/form/types.d.ts +21 -35
  292. package/_cjs/stores/form/types.js +1 -16
  293. package/_cjs/stores/form/types.js.map +1 -1
  294. package/_cjs/stores/form/useFieldActions.js +9 -10
  295. package/_cjs/stores/form/useFieldActions.js.map +1 -1
  296. package/_cjs/stores/form/useFieldController.d.ts +1 -1
  297. package/_cjs/stores/form/useFieldValues.d.ts +2 -2
  298. package/_cjs/stores/form/useFieldValues.js +3 -2
  299. package/_cjs/stores/form/useFieldValues.js.map +1 -1
  300. package/_cjs/stores/form/useTouchedFields.d.ts +14 -1
  301. package/_cjs/stores/form/useValidationActions.js +7 -11
  302. package/_cjs/stores/form/useValidationActions.js.map +1 -1
  303. package/_cjs/stores/routes/useExecutingRoutesIds.d.ts +1 -1
  304. package/_cjs/stores/routes/useExecutingRoutesIds.js +5 -2
  305. package/_cjs/stores/routes/useExecutingRoutesIds.js.map +1 -1
  306. package/_cjs/stores/settings/useSettingsStore.d.ts +1 -0
  307. package/_cjs/stores/settings/useSettingsStore.js +3 -2
  308. package/_cjs/stores/settings/useSettingsStore.js.map +1 -1
  309. package/_cjs/types/widget.d.ts +26 -23
  310. package/_cjs/types/widget.js +1 -0
  311. package/_cjs/types/widget.js.map +1 -1
  312. package/_cjs/utils/converters.js +12 -6
  313. package/_cjs/utils/converters.js.map +1 -1
  314. package/_cjs/utils/fees.d.ts +9 -0
  315. package/_cjs/{components/RouteCard/utils.js → utils/fees.js} +15 -8
  316. package/_cjs/utils/fees.js.map +1 -0
  317. package/_cjs/utils/index.d.ts +2 -0
  318. package/_cjs/utils/index.js +2 -0
  319. package/_cjs/utils/index.js.map +1 -1
  320. package/_cjs/utils/item.d.ts +2 -0
  321. package/_cjs/{providers/WidgetProvider/utils.js → utils/item.js} +1 -1
  322. package/_cjs/utils/item.js.map +1 -0
  323. package/_esm/App.js +16 -3
  324. package/_esm/App.js.map +1 -1
  325. package/_esm/AppDrawer.d.ts +4 -2
  326. package/_esm/AppDrawer.js +21 -19
  327. package/_esm/AppDrawer.js.map +1 -1
  328. package/_esm/AppDrawerContext.d.ts +6 -0
  329. package/_esm/AppDrawerContext.js +4 -0
  330. package/_esm/AppDrawerContext.js.map +1 -0
  331. package/_esm/components/ActiveTransactions/ActiveTransactions.js +1 -3
  332. package/_esm/components/ActiveTransactions/ActiveTransactions.js.map +1 -1
  333. package/_esm/components/AmountInput/AmountInput.js +8 -9
  334. package/_esm/components/AmountInput/AmountInput.js.map +1 -1
  335. package/_esm/components/AmountInput/AmountInput.style.d.ts +3 -0
  336. package/_esm/components/AmountInput/AmountInput.style.js +9 -4
  337. package/_esm/components/AmountInput/AmountInput.style.js.map +1 -1
  338. package/_esm/components/AmountInput/AmountInputAdornment.style.d.ts +4 -1
  339. package/_esm/components/AmountInput/AmountInputAdornment.style.js +7 -2
  340. package/_esm/components/AmountInput/AmountInputAdornment.style.js.map +1 -1
  341. package/_esm/components/AmountInput/AmountInputEndAdornment.js +4 -4
  342. package/_esm/components/AmountInput/AmountInputEndAdornment.js.map +1 -1
  343. package/_esm/components/AmountInput/AmountInputStartAdornment.js +2 -2
  344. package/_esm/components/AmountInput/AmountInputStartAdornment.js.map +1 -1
  345. package/_esm/components/AmountInput/{FormPriceHelperText.d.ts → PriceFormHelperText.d.ts} +2 -2
  346. package/_esm/components/AmountInput/{FormPriceHelperText.js → PriceFormHelperText.js} +13 -7
  347. package/_esm/components/AmountInput/PriceFormHelperText.js.map +1 -0
  348. package/_esm/components/BaseTransactionButton/BaseTransactionButton.js +6 -6
  349. package/_esm/components/BaseTransactionButton/BaseTransactionButton.js.map +1 -1
  350. package/_esm/components/Card/CardHeader.js +6 -5
  351. package/_esm/components/Card/CardHeader.js.map +1 -1
  352. package/_esm/components/Card/CardTitle.js +3 -4
  353. package/_esm/components/Card/CardTitle.js.map +1 -1
  354. package/_esm/components/ChainSelect/ChainSelect.js +8 -6
  355. package/_esm/components/ChainSelect/ChainSelect.js.map +1 -1
  356. package/_esm/components/ChainSelect/useChainSelect.d.ts +1 -1
  357. package/_esm/components/ChainSelect/useChainSelect.js +4 -4
  358. package/_esm/components/ChainSelect/useChainSelect.js.map +1 -1
  359. package/_esm/components/Header/CloseDrawerButton.d.ts +1 -0
  360. package/_esm/components/Header/CloseDrawerButton.js +12 -0
  361. package/_esm/components/Header/CloseDrawerButton.js.map +1 -0
  362. package/_esm/components/Header/EVMDisconnectIconButton.d.ts +4 -0
  363. package/_esm/components/Header/EVMDisconnectIconButton.js +12 -0
  364. package/_esm/components/Header/EVMDisconnectIconButton.js.map +1 -0
  365. package/_esm/components/Header/Header.js +1 -6
  366. package/_esm/components/Header/Header.js.map +1 -1
  367. package/_esm/components/Header/Header.style.js +10 -4
  368. package/_esm/components/Header/Header.style.js.map +1 -1
  369. package/_esm/components/Header/NavigationHeader.d.ts +0 -1
  370. package/_esm/components/Header/NavigationHeader.js +8 -11
  371. package/_esm/components/Header/NavigationHeader.js.map +1 -1
  372. package/_esm/components/Header/SVMDisconnectIconButton.d.ts +1 -0
  373. package/_esm/components/Header/SVMDisconnectIconButton.js +12 -0
  374. package/_esm/components/Header/SVMDisconnectIconButton.js.map +1 -0
  375. package/_esm/components/Header/SettingsButton.style.js +18 -21
  376. package/_esm/components/Header/SettingsButton.style.js.map +1 -1
  377. package/_esm/components/Header/TransactionHistoryButton.d.ts +1 -0
  378. package/_esm/components/Header/TransactionHistoryButton.js +13 -0
  379. package/_esm/components/Header/TransactionHistoryButton.js.map +1 -0
  380. package/_esm/components/Header/WalletHeader.d.ts +1 -0
  381. package/_esm/components/Header/WalletHeader.js +24 -9
  382. package/_esm/components/Header/WalletHeader.js.map +1 -1
  383. package/_esm/components/Header/WalletMenu.js +7 -23
  384. package/_esm/components/Header/WalletMenu.js.map +1 -1
  385. package/_esm/components/Insurance/InsuranceCard.js +2 -9
  386. package/_esm/components/Insurance/InsuranceCard.js.map +1 -1
  387. package/_esm/components/PageContainer.d.ts +9 -0
  388. package/_esm/components/PageContainer.js +10 -0
  389. package/_esm/components/PageContainer.js.map +1 -0
  390. package/_esm/components/ReverseTokensButton/ReverseTokensButton.js +10 -9
  391. package/_esm/components/ReverseTokensButton/ReverseTokensButton.js.map +1 -1
  392. package/_esm/components/ReverseTokensButton/ReverseTokensButton.style.js +3 -0
  393. package/_esm/components/ReverseTokensButton/ReverseTokensButton.style.js.map +1 -1
  394. package/_esm/components/RouteCard/RouteCard.js +6 -6
  395. package/_esm/components/RouteCard/RouteCard.js.map +1 -1
  396. package/_esm/components/RouteCard/RouteCard.style.d.ts +3 -0
  397. package/_esm/components/RouteCard/RouteCard.style.js +7 -2
  398. package/_esm/components/RouteCard/RouteCard.style.js.map +1 -1
  399. package/_esm/components/RouteCard/RouteCardEssentials.js +12 -10
  400. package/_esm/components/RouteCard/RouteCardEssentials.js.map +1 -1
  401. package/_esm/components/RouteCard/RouteCardEssentialsExpanded.d.ts +3 -0
  402. package/_esm/components/RouteCard/RouteCardEssentialsExpanded.js +28 -0
  403. package/_esm/components/RouteCard/RouteCardEssentialsExpanded.js.map +1 -0
  404. package/_esm/components/RouteCard/RouteCardSkeleton.js +2 -1
  405. package/_esm/components/RouteCard/RouteCardSkeleton.js.map +1 -1
  406. package/_esm/components/RouteCard/types.d.ts +6 -2
  407. package/_esm/components/Routes/Routes.js +1 -1
  408. package/_esm/components/Routes/Routes.js.map +1 -1
  409. package/_esm/components/Routes/RoutesExpanded.js +2 -1
  410. package/_esm/components/Routes/RoutesExpanded.js.map +1 -1
  411. package/_esm/components/SelectTokenButton/SelectTokenButton.js +9 -3
  412. package/_esm/components/SelectTokenButton/SelectTokenButton.js.map +1 -1
  413. package/_esm/components/SelectTokenButton/SelectTokenButton.style.js +6 -7
  414. package/_esm/components/SelectTokenButton/SelectTokenButton.style.js.map +1 -1
  415. package/_esm/components/SmallAvatar.js +4 -4
  416. package/_esm/components/Step/CircularProgress.js +5 -5
  417. package/_esm/components/Step/CircularProgress.js.map +1 -1
  418. package/_esm/components/Step/CircularProgress.style.js +3 -4
  419. package/_esm/components/Step/CircularProgress.style.js.map +1 -1
  420. package/_esm/components/Step/DestinationWalletAddress.js +2 -2
  421. package/_esm/components/Step/DestinationWalletAddress.js.map +1 -1
  422. package/_esm/components/Step/Step.js +1 -2
  423. package/_esm/components/Step/Step.js.map +1 -1
  424. package/_esm/components/Step/StepProcess.js +1 -1
  425. package/_esm/components/Step/StepProcess.js.map +1 -1
  426. package/_esm/components/Step/StepTimer.js +9 -8
  427. package/_esm/components/Step/StepTimer.js.map +1 -1
  428. package/_esm/components/StepActions/StepActions.js +16 -19
  429. package/_esm/components/StepActions/StepActions.js.map +1 -1
  430. package/_esm/components/StepActions/StepActions.style.d.ts +8 -1
  431. package/_esm/components/StepActions/StepActions.style.js +27 -17
  432. package/_esm/components/StepActions/StepActions.style.js.map +1 -1
  433. package/_esm/components/{Step/GasStepProcess.d.ts → StepActions/StepFeeBreakdown.d.ts} +1 -1
  434. package/_esm/components/StepActions/StepFeeBreakdown.js +41 -0
  435. package/_esm/components/StepActions/StepFeeBreakdown.js.map +1 -0
  436. package/_esm/components/StepActions/StepFees.d.ts +6 -0
  437. package/_esm/components/StepActions/StepFees.js +24 -0
  438. package/_esm/components/StepActions/StepFees.js.map +1 -0
  439. package/_esm/components/Token/Token.d.ts +6 -5
  440. package/_esm/components/Token/Token.js +31 -16
  441. package/_esm/components/Token/Token.js.map +1 -1
  442. package/_esm/components/Token/Token.style.d.ts +1 -4
  443. package/_esm/components/Token/Token.style.js +6 -21
  444. package/_esm/components/Token/Token.style.js.map +1 -1
  445. package/_esm/components/TokenAvatar/TokenAvatar.d.ts +3 -0
  446. package/_esm/components/TokenAvatar/TokenAvatar.js +5 -2
  447. package/_esm/components/TokenAvatar/TokenAvatar.js.map +1 -1
  448. package/_esm/components/TokenAvatar/TokenAvatar.style.js +23 -13
  449. package/_esm/components/TokenAvatar/TokenAvatar.style.js.map +1 -1
  450. package/_esm/components/TokenList/TokenList.js +4 -5
  451. package/_esm/components/TokenList/TokenList.js.map +1 -1
  452. package/_esm/components/TokenList/TokenList.style.js +7 -5
  453. package/_esm/components/TokenList/TokenList.style.js.map +1 -1
  454. package/_esm/components/TokenList/TokenListItem.js +7 -4
  455. package/_esm/components/TokenList/TokenListItem.js.map +1 -1
  456. package/_esm/components/TokenList/VirtualizedTokenList.js +4 -2
  457. package/_esm/components/TokenList/VirtualizedTokenList.js.map +1 -1
  458. package/_esm/components/TokenList/types.d.ts +3 -4
  459. package/_esm/components/TokenList/useTokenSelect.js +7 -5
  460. package/_esm/components/TokenList/useTokenSelect.js.map +1 -1
  461. package/_esm/config/queryClient.js +0 -1
  462. package/_esm/config/queryClient.js.map +1 -1
  463. package/_esm/config/theme.js +2 -9
  464. package/_esm/config/theme.js.map +1 -1
  465. package/_esm/config/version.d.ts +1 -1
  466. package/_esm/config/version.js +1 -1
  467. package/_esm/config/walletConnect.d.ts +1 -0
  468. package/_esm/config/walletConnect.js +2 -0
  469. package/_esm/config/walletConnect.js.map +1 -0
  470. package/_esm/hooks/useAccount.d.ts +4 -1
  471. package/_esm/hooks/useAccount.js +5 -15
  472. package/_esm/hooks/useAccount.js.map +1 -1
  473. package/_esm/hooks/useAvailableChains.js +12 -6
  474. package/_esm/hooks/useAvailableChains.js.map +1 -1
  475. package/_esm/hooks/useChains.d.ts +2 -1
  476. package/_esm/hooks/useChains.js +8 -4
  477. package/_esm/hooks/useChains.js.map +1 -1
  478. package/_esm/hooks/useDebouncedWatch.d.ts +1 -2
  479. package/_esm/hooks/useDebouncedWatch.js +1 -1
  480. package/_esm/hooks/useDebouncedWatch.js.map +1 -1
  481. package/_esm/hooks/useFromTokenSufficiency.js +8 -7
  482. package/_esm/hooks/useFromTokenSufficiency.js.map +1 -1
  483. package/_esm/hooks/useGasRecommendation.d.ts +1 -1
  484. package/_esm/hooks/useGasRecommendation.js.map +1 -1
  485. package/_esm/hooks/useGasRefuel.js +2 -2
  486. package/_esm/hooks/useGasRefuel.js.map +1 -1
  487. package/_esm/hooks/useGasSufficiency.js +7 -6
  488. package/_esm/hooks/useGasSufficiency.js.map +1 -1
  489. package/_esm/hooks/useRouteExecution.js +5 -5
  490. package/_esm/hooks/useRouteExecution.js.map +1 -1
  491. package/_esm/hooks/useRoutes.d.ts +1 -1
  492. package/_esm/hooks/useRoutes.js +23 -16
  493. package/_esm/hooks/useRoutes.js.map +1 -1
  494. package/_esm/hooks/useTokenAddressBalance.d.ts +2 -1
  495. package/_esm/hooks/useTokenAddressBalance.js +2 -1
  496. package/_esm/hooks/useTokenAddressBalance.js.map +1 -1
  497. package/_esm/hooks/useTokenBalance.d.ts +1 -1
  498. package/_esm/hooks/useTokenBalance.js +8 -19
  499. package/_esm/hooks/useTokenBalance.js.map +1 -1
  500. package/_esm/hooks/useTokenBalances.d.ts +2 -1
  501. package/_esm/hooks/useTokenBalances.js +1 -0
  502. package/_esm/hooks/useTokenBalances.js.map +1 -1
  503. package/_esm/hooks/useTools.js +2 -1
  504. package/_esm/hooks/useTools.js.map +1 -1
  505. package/_esm/hooks/useTransactionHistory.d.ts +2 -2
  506. package/_esm/hooks/useTransactionHistory.js +33 -24
  507. package/_esm/hooks/useTransactionHistory.js.map +1 -1
  508. package/_esm/i18n/en.json +10 -6
  509. package/_esm/pages/ActiveTransactionsPage/ActiveTransactionsPage.js +4 -5
  510. package/_esm/pages/ActiveTransactionsPage/ActiveTransactionsPage.js.map +1 -1
  511. package/_esm/pages/LanguagesPage/LanguagesPage.js +3 -2
  512. package/_esm/pages/LanguagesPage/LanguagesPage.js.map +1 -1
  513. package/_esm/pages/MainPage/MainPage.js +2 -2
  514. package/_esm/pages/MainPage/MainPage.js.map +1 -1
  515. package/_esm/pages/RoutesPage/RoutesPage.js +2 -2
  516. package/_esm/pages/RoutesPage/RoutesPage.js.map +1 -1
  517. package/_esm/pages/SelectChainPage/SelectChainPage.js +3 -2
  518. package/_esm/pages/SelectChainPage/SelectChainPage.js.map +1 -1
  519. package/_esm/pages/SelectEnabledToolsPage/SelectEnabledToolsPage.js +3 -2
  520. package/_esm/pages/SelectEnabledToolsPage/SelectEnabledToolsPage.js.map +1 -1
  521. package/_esm/pages/SelectNativeTokenPage/SelectNativeTokenPage.js +3 -2
  522. package/_esm/pages/SelectNativeTokenPage/SelectNativeTokenPage.js.map +1 -1
  523. package/_esm/pages/SelectTokenPage/SearchTokenInput.js +2 -2
  524. package/_esm/pages/SelectTokenPage/SearchTokenInput.js.map +1 -1
  525. package/_esm/pages/SelectTokenPage/SelectTokenPage.js +3 -2
  526. package/_esm/pages/SelectTokenPage/SelectTokenPage.js.map +1 -1
  527. package/_esm/pages/SelectWalletPage/SelectWalletPage.js +3 -2
  528. package/_esm/pages/SelectWalletPage/SelectWalletPage.js.map +1 -1
  529. package/_esm/pages/SettingsPage/ResetSettingsButton.js +1 -1
  530. package/_esm/pages/SettingsPage/ResetSettingsButton.js.map +1 -1
  531. package/_esm/pages/SettingsPage/SettingsCard/SettingCard.js +1 -1
  532. package/_esm/pages/SettingsPage/SettingsCard/SettingCard.style.js +7 -6
  533. package/_esm/pages/SettingsPage/SettingsCard/SettingCard.style.js.map +1 -1
  534. package/_esm/pages/SettingsPage/SettingsPage.js +6 -6
  535. package/_esm/pages/SettingsPage/SettingsPage.js.map +1 -1
  536. package/_esm/pages/SettingsPage/SlippageSettings/SlippageSettings.js +7 -8
  537. package/_esm/pages/SettingsPage/SlippageSettings/SlippageSettings.js.map +1 -1
  538. package/_esm/pages/SettingsPage/SlippageSettings/SlippageSettings.style.js +1 -1
  539. package/_esm/pages/SettingsPage/SlippageSettings/SlippageSettings.style.js.map +1 -1
  540. package/_esm/pages/TransactionDetailsPage/TransactionDetailsPage.js +2 -2
  541. package/_esm/pages/TransactionDetailsPage/TransactionDetailsPage.js.map +1 -1
  542. package/_esm/pages/TransactionDetailsPage/TransactionDetailsSkeleton.js +7 -15
  543. package/_esm/pages/TransactionDetailsPage/TransactionDetailsSkeleton.js.map +1 -1
  544. package/_esm/pages/TransactionHistoryPage/TransactionHistoryItem.js +1 -1
  545. package/_esm/pages/TransactionHistoryPage/TransactionHistoryItem.js.map +1 -1
  546. package/_esm/pages/TransactionHistoryPage/TransactionHistoryPage.js +5 -4
  547. package/_esm/pages/TransactionHistoryPage/TransactionHistoryPage.js.map +1 -1
  548. package/_esm/pages/TransactionHistoryPage/TransactionHistorySkeleton.d.ts +1 -1
  549. package/_esm/pages/TransactionHistoryPage/TransactionHistorySkeleton.js +3 -8
  550. package/_esm/pages/TransactionHistoryPage/TransactionHistorySkeleton.js.map +1 -1
  551. package/_esm/pages/TransactionPage/StatusBottomSheet.js +13 -9
  552. package/_esm/pages/TransactionPage/StatusBottomSheet.js.map +1 -1
  553. package/_esm/pages/TransactionPage/TransactionPage.js +2 -2
  554. package/_esm/pages/TransactionPage/TransactionPage.js.map +1 -1
  555. package/_esm/providers/I18nProvider/I18nProvider.js +3 -2
  556. package/_esm/providers/I18nProvider/I18nProvider.js.map +1 -1
  557. package/_esm/providers/WalletProvider/EVMBaseProvider.d.ts +2 -0
  558. package/_esm/providers/WalletProvider/EVMBaseProvider.js +87 -0
  559. package/_esm/providers/WalletProvider/EVMBaseProvider.js.map +1 -0
  560. package/_esm/providers/WalletProvider/EVMExternalContext.d.ts +2 -0
  561. package/_esm/providers/WalletProvider/EVMExternalContext.js +3 -0
  562. package/_esm/providers/WalletProvider/EVMExternalContext.js.map +1 -0
  563. package/_esm/providers/WalletProvider/EVMProvider.d.ts +1 -1
  564. package/_esm/providers/WalletProvider/EVMProvider.js +13 -70
  565. package/_esm/providers/WalletProvider/EVMProvider.js.map +1 -1
  566. package/_esm/providers/WalletProvider/SDKProviders.js +15 -7
  567. package/_esm/providers/WalletProvider/SDKProviders.js.map +1 -1
  568. package/_esm/providers/WalletProvider/SVMBaseProvider.d.ts +2 -0
  569. package/_esm/providers/WalletProvider/{SolanaProvider.js → SVMBaseProvider.js} +3 -12
  570. package/_esm/providers/WalletProvider/SVMBaseProvider.js.map +1 -0
  571. package/_esm/providers/WalletProvider/SVMExternalContext.d.ts +2 -0
  572. package/_esm/providers/WalletProvider/SVMExternalContext.js +3 -0
  573. package/_esm/providers/WalletProvider/SVMExternalContext.js.map +1 -0
  574. package/_esm/providers/WalletProvider/SVMProvider.d.ts +3 -0
  575. package/_esm/providers/WalletProvider/SVMProvider.js +18 -0
  576. package/_esm/providers/WalletProvider/SVMProvider.js.map +1 -0
  577. package/_esm/providers/WalletProvider/WalletProvider.js +2 -2
  578. package/_esm/providers/WalletProvider/WalletProvider.js.map +1 -1
  579. package/_esm/providers/WalletProvider/index.d.ts +1 -0
  580. package/_esm/providers/WalletProvider/index.js +1 -0
  581. package/_esm/providers/WalletProvider/index.js.map +1 -1
  582. package/_esm/providers/WalletProvider/useHasExternalWalletProvider.d.ts +7 -0
  583. package/_esm/providers/WalletProvider/useHasExternalWalletProvider.js +23 -0
  584. package/_esm/providers/WalletProvider/useHasExternalWalletProvider.js.map +1 -0
  585. package/_esm/providers/WidgetProvider/WidgetProvider.js.map +1 -1
  586. package/_esm/providers/WidgetProvider/index.d.ts +1 -2
  587. package/_esm/providers/WidgetProvider/index.js +1 -2
  588. package/_esm/providers/WidgetProvider/index.js.map +1 -1
  589. package/_esm/stores/StoreProvider.js +3 -3
  590. package/_esm/stores/StoreProvider.js.map +1 -1
  591. package/_esm/stores/chains/ChainOrderStore.js +18 -15
  592. package/_esm/stores/chains/ChainOrderStore.js.map +1 -1
  593. package/_esm/stores/chains/createChainOrderStore.js +34 -15
  594. package/_esm/stores/chains/createChainOrderStore.js.map +1 -1
  595. package/_esm/stores/chains/types.d.ts +11 -4
  596. package/_esm/stores/chains/useChainOrder.d.ts +2 -1
  597. package/_esm/stores/chains/useChainOrder.js +2 -2
  598. package/_esm/stores/chains/useChainOrder.js.map +1 -1
  599. package/_esm/stores/form/FormStore.d.ts +1 -1
  600. package/_esm/stores/form/FormStore.js +12 -17
  601. package/_esm/stores/form/FormStore.js.map +1 -1
  602. package/_esm/stores/form/FormUpdater.d.ts +3 -3
  603. package/_esm/stores/form/FormUpdater.js +5 -6
  604. package/_esm/stores/form/FormUpdater.js.map +1 -1
  605. package/_esm/stores/form/URLSearchParamsBuilder.js +3 -2
  606. package/_esm/stores/form/URLSearchParamsBuilder.js.map +1 -1
  607. package/_esm/stores/form/createFormStore.d.ts +1 -1
  608. package/_esm/stores/form/createFormStore.js +121 -115
  609. package/_esm/stores/form/createFormStore.js.map +1 -1
  610. package/_esm/stores/form/types.d.ts +21 -35
  611. package/_esm/stores/form/types.js +0 -15
  612. package/_esm/stores/form/types.js.map +1 -1
  613. package/_esm/stores/form/useFieldActions.js +9 -10
  614. package/_esm/stores/form/useFieldActions.js.map +1 -1
  615. package/_esm/stores/form/useFieldController.d.ts +1 -1
  616. package/_esm/stores/form/useFieldValues.d.ts +2 -2
  617. package/_esm/stores/form/useFieldValues.js +3 -2
  618. package/_esm/stores/form/useFieldValues.js.map +1 -1
  619. package/_esm/stores/form/useTouchedFields.d.ts +14 -1
  620. package/_esm/stores/form/useValidationActions.js +7 -11
  621. package/_esm/stores/form/useValidationActions.js.map +1 -1
  622. package/_esm/stores/routes/useExecutingRoutesIds.d.ts +1 -1
  623. package/_esm/stores/routes/useExecutingRoutesIds.js +5 -2
  624. package/_esm/stores/routes/useExecutingRoutesIds.js.map +1 -1
  625. package/_esm/stores/settings/useSettingsStore.d.ts +1 -0
  626. package/_esm/stores/settings/useSettingsStore.js +2 -1
  627. package/_esm/stores/settings/useSettingsStore.js.map +1 -1
  628. package/_esm/types/widget.d.ts +26 -23
  629. package/_esm/types/widget.js +1 -0
  630. package/_esm/types/widget.js.map +1 -1
  631. package/_esm/utils/converters.js +12 -6
  632. package/_esm/utils/converters.js.map +1 -1
  633. package/_esm/utils/fees.d.ts +9 -0
  634. package/_esm/{components/RouteCard/utils.js → utils/fees.js} +13 -7
  635. package/_esm/utils/fees.js.map +1 -0
  636. package/_esm/utils/index.d.ts +2 -0
  637. package/_esm/utils/index.js +2 -0
  638. package/_esm/utils/index.js.map +1 -1
  639. package/_esm/utils/item.d.ts +2 -0
  640. package/_esm/{providers/WidgetProvider/utils.js → utils/item.js} +1 -1
  641. package/_esm/utils/item.js.map +1 -0
  642. package/components/ActiveTransactions/ActiveTransactions.tsx +1 -3
  643. package/components/AmountInput/AmountInput.style.tsx +10 -4
  644. package/components/AmountInput/AmountInput.tsx +33 -28
  645. package/components/AmountInput/AmountInputAdornment.style.tsx +8 -2
  646. package/components/AmountInput/AmountInputEndAdornment.tsx +5 -10
  647. package/components/AmountInput/AmountInputStartAdornment.tsx +3 -3
  648. package/components/AmountInput/{FormPriceHelperText.tsx → PriceFormHelperText.tsx} +14 -14
  649. package/components/BaseTransactionButton/BaseTransactionButton.tsx +6 -6
  650. package/components/Card/CardHeader.tsx +6 -5
  651. package/components/Card/CardTitle.tsx +3 -4
  652. package/components/ChainSelect/ChainSelect.tsx +8 -6
  653. package/components/ChainSelect/useChainSelect.ts +5 -5
  654. package/components/Header/CloseDrawerButton.tsx +18 -0
  655. package/components/Header/EVMDisconnectIconButton.tsx +24 -0
  656. package/components/Header/Header.style.ts +10 -4
  657. package/components/Header/Header.tsx +1 -8
  658. package/components/Header/NavigationHeader.tsx +13 -30
  659. package/components/Header/SVMDisconnectIconButton.tsx +19 -0
  660. package/components/Header/SettingsButton.style.tsx +18 -22
  661. package/components/Header/TransactionHistoryButton.tsx +23 -0
  662. package/components/Header/WalletHeader.tsx +36 -8
  663. package/components/Header/WalletMenu.tsx +67 -99
  664. package/components/Insurance/InsuranceCard.tsx +4 -22
  665. package/components/PageContainer.ts +18 -0
  666. package/components/ReverseTokensButton/ReverseTokensButton.style.tsx +3 -0
  667. package/components/ReverseTokensButton/ReverseTokensButton.tsx +20 -10
  668. package/components/RouteCard/RouteCard.style.ts +8 -2
  669. package/components/RouteCard/RouteCard.tsx +34 -29
  670. package/components/RouteCard/RouteCardEssentials.tsx +37 -88
  671. package/components/RouteCard/RouteCardEssentialsExpanded.tsx +127 -0
  672. package/components/RouteCard/RouteCardSkeleton.tsx +3 -20
  673. package/components/RouteCard/types.ts +7 -2
  674. package/components/Routes/Routes.tsx +1 -1
  675. package/components/Routes/RoutesExpanded.tsx +22 -25
  676. package/components/SelectTokenButton/SelectTokenButton.style.tsx +6 -7
  677. package/components/SelectTokenButton/SelectTokenButton.tsx +19 -7
  678. package/components/SmallAvatar.tsx +4 -4
  679. package/components/Step/CircularProgress.style.tsx +3 -4
  680. package/components/Step/CircularProgress.tsx +5 -5
  681. package/components/Step/DestinationWalletAddress.tsx +2 -3
  682. package/components/Step/Step.tsx +0 -2
  683. package/components/Step/StepProcess.tsx +2 -3
  684. package/components/Step/StepTimer.tsx +9 -14
  685. package/components/StepActions/StepActions.style.tsx +31 -20
  686. package/components/StepActions/StepActions.tsx +52 -43
  687. package/components/StepActions/StepFeeBreakdown.tsx +107 -0
  688. package/components/StepActions/StepFees.tsx +44 -0
  689. package/components/Token/Token.style.tsx +6 -22
  690. package/components/Token/Token.tsx +136 -66
  691. package/components/TokenAvatar/TokenAvatar.style.tsx +26 -15
  692. package/components/TokenAvatar/TokenAvatar.tsx +25 -12
  693. package/components/TokenList/TokenList.style.tsx +7 -5
  694. package/components/TokenList/TokenList.tsx +2 -5
  695. package/components/TokenList/TokenListItem.tsx +11 -8
  696. package/components/TokenList/VirtualizedTokenList.tsx +3 -2
  697. package/components/TokenList/types.ts +3 -4
  698. package/components/TokenList/useTokenSelect.ts +8 -6
  699. package/config/queryClient.ts +0 -1
  700. package/config/theme.ts +2 -9
  701. package/config/version.ts +1 -1
  702. package/config/walletConnect.ts +1 -0
  703. package/hooks/useAccount.ts +9 -17
  704. package/hooks/useAvailableChains.ts +13 -6
  705. package/hooks/useChains.ts +12 -6
  706. package/hooks/useDebouncedWatch.ts +6 -5
  707. package/hooks/useFromTokenSufficiency.ts +18 -9
  708. package/hooks/useGasRecommendation.ts +1 -1
  709. package/hooks/useGasRefuel.ts +2 -2
  710. package/hooks/useGasSufficiency.ts +11 -6
  711. package/hooks/useRouteExecution.ts +5 -5
  712. package/hooks/useRoutes.ts +31 -24
  713. package/hooks/useTokenAddressBalance.ts +2 -1
  714. package/hooks/useTokenBalance.ts +12 -22
  715. package/hooks/useTokenBalances.ts +1 -0
  716. package/hooks/useTools.ts +2 -1
  717. package/hooks/useTransactionHistory.ts +39 -29
  718. package/i18n/en.json +10 -6
  719. package/package.json +15 -15
  720. package/pages/ActiveTransactionsPage/ActiveTransactionsPage.tsx +4 -6
  721. package/pages/LanguagesPage/LanguagesPage.tsx +4 -3
  722. package/pages/MainPage/MainPage.tsx +12 -12
  723. package/pages/RoutesPage/RoutesPage.tsx +1 -2
  724. package/pages/SelectChainPage/SelectChainPage.tsx +4 -3
  725. package/pages/SelectEnabledToolsPage/SelectEnabledToolsPage.tsx +3 -3
  726. package/pages/SelectNativeTokenPage/SelectNativeTokenPage.tsx +4 -3
  727. package/pages/SelectTokenPage/SearchTokenInput.tsx +1 -2
  728. package/pages/SelectTokenPage/SelectTokenPage.tsx +4 -3
  729. package/pages/SelectWalletPage/SelectWalletPage.tsx +3 -3
  730. package/pages/SettingsPage/ResetSettingsButton.tsx +1 -1
  731. package/pages/SettingsPage/SettingsCard/SettingCard.style.tsx +7 -6
  732. package/pages/SettingsPage/SettingsCard/SettingCard.tsx +1 -1
  733. package/pages/SettingsPage/SettingsPage.tsx +7 -7
  734. package/pages/SettingsPage/SlippageSettings/SlippageSettings.style.tsx +3 -2
  735. package/pages/SettingsPage/SlippageSettings/SlippageSettings.tsx +12 -10
  736. package/pages/TransactionDetailsPage/TransactionDetailsPage.tsx +3 -3
  737. package/pages/TransactionDetailsPage/TransactionDetailsSkeleton.tsx +15 -58
  738. package/pages/TransactionHistoryPage/TransactionHistoryItem.tsx +6 -4
  739. package/pages/TransactionHistoryPage/TransactionHistoryPage.tsx +8 -7
  740. package/pages/TransactionHistoryPage/TransactionHistorySkeleton.tsx +7 -47
  741. package/pages/TransactionPage/StatusBottomSheet.tsx +14 -9
  742. package/pages/TransactionPage/TransactionPage.tsx +3 -3
  743. package/providers/I18nProvider/I18nProvider.tsx +3 -2
  744. package/providers/WalletProvider/EVMBaseProvider.tsx +130 -0
  745. package/providers/WalletProvider/EVMExternalContext.ts +3 -0
  746. package/providers/WalletProvider/EVMProvider.tsx +17 -110
  747. package/providers/WalletProvider/SDKProviders.tsx +21 -11
  748. package/providers/WalletProvider/{SolanaProvider.tsx → SVMBaseProvider.tsx} +2 -17
  749. package/providers/WalletProvider/SVMExternalContext.ts +3 -0
  750. package/providers/WalletProvider/SVMProvider.tsx +27 -0
  751. package/providers/WalletProvider/WalletProvider.tsx +5 -5
  752. package/providers/WalletProvider/index.ts +1 -0
  753. package/providers/WalletProvider/useHasExternalWalletProvider.ts +30 -0
  754. package/providers/WidgetProvider/WidgetProvider.tsx +2 -2
  755. package/providers/WidgetProvider/index.ts +1 -2
  756. package/stores/StoreProvider.tsx +12 -12
  757. package/stores/chains/ChainOrderStore.tsx +21 -17
  758. package/stores/chains/createChainOrderStore.ts +34 -15
  759. package/stores/chains/types.ts +12 -4
  760. package/stores/chains/useChainOrder.ts +5 -2
  761. package/stores/form/FormStore.tsx +15 -23
  762. package/stores/form/FormUpdater.tsx +12 -9
  763. package/stores/form/URLSearchParamsBuilder.tsx +4 -2
  764. package/stores/form/createFormStore.ts +21 -15
  765. package/stores/form/types.ts +25 -39
  766. package/stores/form/useFieldActions.ts +11 -20
  767. package/stores/form/useFieldValues.ts +6 -4
  768. package/stores/form/useValidationActions.ts +9 -17
  769. package/stores/routes/useExecutingRoutesIds.ts +5 -2
  770. package/stores/settings/useSettingsStore.ts +3 -1
  771. package/types/widget.ts +32 -24
  772. package/utils/converters.ts +12 -6
  773. package/{components/RouteCard/utils.ts → utils/fees.ts} +43 -37
  774. package/utils/index.ts +2 -0
  775. package/{providers/WidgetProvider/utils.ts → utils/item.ts} +3 -7
  776. package/_cjs/components/AmountInput/FormPriceHelperText.js.map +0 -1
  777. package/_cjs/components/RouteCard/utils.d.ts +0 -11
  778. package/_cjs/components/RouteCard/utils.js.map +0 -1
  779. package/_cjs/components/Step/GasStepProcess.js +0 -25
  780. package/_cjs/components/Step/GasStepProcess.js.map +0 -1
  781. package/_cjs/pages/TransactionDetailsPage/TransactionDetailsPage.style.d.ts +0 -4
  782. package/_cjs/pages/TransactionDetailsPage/TransactionDetailsPage.style.js +0 -9
  783. package/_cjs/pages/TransactionDetailsPage/TransactionDetailsPage.style.js.map +0 -1
  784. package/_cjs/pages/TransactionPage/TransactionPage.style.d.ts +0 -4
  785. package/_cjs/pages/TransactionPage/TransactionPage.style.js +0 -9
  786. package/_cjs/pages/TransactionPage/TransactionPage.style.js.map +0 -1
  787. package/_cjs/providers/WalletProvider/SolanaProvider.d.ts +0 -3
  788. package/_cjs/providers/WalletProvider/SolanaProvider.js.map +0 -1
  789. package/_cjs/providers/WidgetProvider/utils.d.ts +0 -4
  790. package/_cjs/providers/WidgetProvider/utils.js.map +0 -1
  791. package/_esm/components/AmountInput/FormPriceHelperText.js.map +0 -1
  792. package/_esm/components/RouteCard/utils.d.ts +0 -11
  793. package/_esm/components/RouteCard/utils.js.map +0 -1
  794. package/_esm/components/Step/GasStepProcess.js +0 -21
  795. package/_esm/components/Step/GasStepProcess.js.map +0 -1
  796. package/_esm/pages/TransactionDetailsPage/TransactionDetailsPage.style.d.ts +0 -4
  797. package/_esm/pages/TransactionDetailsPage/TransactionDetailsPage.style.js +0 -6
  798. package/_esm/pages/TransactionDetailsPage/TransactionDetailsPage.style.js.map +0 -1
  799. package/_esm/pages/TransactionPage/TransactionPage.style.d.ts +0 -4
  800. package/_esm/pages/TransactionPage/TransactionPage.style.js +0 -6
  801. package/_esm/pages/TransactionPage/TransactionPage.style.js.map +0 -1
  802. package/_esm/providers/WalletProvider/SolanaProvider.d.ts +0 -3
  803. package/_esm/providers/WalletProvider/SolanaProvider.js.map +0 -1
  804. package/_esm/providers/WidgetProvider/utils.d.ts +0 -4
  805. package/_esm/providers/WidgetProvider/utils.js.map +0 -1
  806. package/components/Step/GasStepProcess.tsx +0 -45
  807. package/pages/TransactionDetailsPage/TransactionDetailsPage.style.tsx +0 -6
  808. package/pages/TransactionPage/TransactionPage.style.tsx +0 -6
@@ -0,0 +1,107 @@
1
+ import type { LiFiStepExtended } from '@lifi/sdk';
2
+ import MonetizationOnIcon from '@mui/icons-material/MonetizationOn';
3
+ import { Box, Typography } from '@mui/material';
4
+ import type { ReactNode } from 'react';
5
+ import { useTranslation } from 'react-i18next';
6
+ import { formatUnits } from 'viem';
7
+ import { getStepFeeCostsBreakdown } from '../../utils';
8
+
9
+ export const StepFeeBreakdown: React.FC<{
10
+ step: LiFiStepExtended;
11
+ }> = ({ step }) => {
12
+ const { t } = useTranslation();
13
+
14
+ let fees = 0;
15
+ const feeComponents: ReactNode[] = [];
16
+ const isDone = step.execution?.status === 'DONE';
17
+
18
+ const gasCosts = step.execution?.gasCosts ?? step.estimate.gasCosts;
19
+ const feeCosts = step.execution?.feeCosts ?? step.estimate.feeCosts;
20
+
21
+ if (gasCosts) {
22
+ const { token, amount, amountUSD } = getStepFeeCostsBreakdown(gasCosts);
23
+ const formattedGasAmount = token
24
+ ? parseFloat(formatUnits(amount, token.decimals))?.toFixed(9)
25
+ : 0;
26
+ fees += amountUSD;
27
+ feeComponents.push(
28
+ <Box ml={7} key="network">
29
+ <Typography
30
+ fontSize={12}
31
+ lineHeight={2}
32
+ color="text.secondary"
33
+ fontWeight="500"
34
+ >
35
+ {isDone
36
+ ? t('main.fees.networkPaid')
37
+ : t('main.fees.networkEstimated')}
38
+ </Typography>
39
+ <Typography
40
+ fontSize={12}
41
+ lineHeight={1}
42
+ fontWeight="500"
43
+ color="text.secondary"
44
+ >
45
+ {t(`format.currency`, { value: amountUSD })} ({formattedGasAmount}{' '}
46
+ {token.symbol})
47
+ </Typography>
48
+ </Box>,
49
+ );
50
+ }
51
+
52
+ if (feeCosts) {
53
+ const filteredfeeCosts = feeCosts?.filter((fee) => !fee.included);
54
+ if (filteredfeeCosts?.length) {
55
+ const { token, amount, amountUSD } =
56
+ getStepFeeCostsBreakdown(filteredfeeCosts);
57
+ const formattedFeeAmount = token
58
+ ? parseFloat(formatUnits(amount, token.decimals))?.toFixed(9)
59
+ : 0;
60
+ fees += amountUSD;
61
+ feeComponents.push(
62
+ <Box mt={feeComponents.length ? 0.5 : 0} ml={7} key="bridge">
63
+ <Typography
64
+ fontSize={12}
65
+ lineHeight={2}
66
+ color="text.secondary"
67
+ fontWeight="500"
68
+ >
69
+ {isDone
70
+ ? t('main.fees.providerPaid')
71
+ : t('main.fees.providerEstimated')}
72
+ </Typography>
73
+ <Typography
74
+ fontSize={12}
75
+ lineHeight={1}
76
+ fontWeight="500"
77
+ color="text.secondary"
78
+ >
79
+ {t(`format.currency`, { value: amountUSD })} ({formattedFeeAmount}{' '}
80
+ {token.symbol})
81
+ </Typography>
82
+ </Box>,
83
+ );
84
+ }
85
+ }
86
+
87
+ return (
88
+ <Box mt={1.5}>
89
+ <Box display="flex" alignItems="center">
90
+ <Typography ml={1} mr={3} height={24} color="text.secondary">
91
+ <MonetizationOnIcon />
92
+ </Typography>
93
+ <Typography
94
+ fontSize={16}
95
+ color="text.primary"
96
+ fontWeight="600"
97
+ lineHeight={1.125}
98
+ >
99
+ {t(`format.currency`, {
100
+ value: fees,
101
+ })}
102
+ </Typography>
103
+ </Box>
104
+ {feeComponents}
105
+ </Box>
106
+ );
107
+ };
@@ -0,0 +1,44 @@
1
+ import type { LiFiStepExtended } from '@lifi/sdk';
2
+ import type { TypographyProps } from '@mui/material';
3
+ import { Typography } from '@mui/material';
4
+ import { useTranslation } from 'react-i18next';
5
+ import { getStepFeeCostsBreakdown } from '../../utils';
6
+
7
+ export const StepFees: React.FC<
8
+ TypographyProps & {
9
+ step: LiFiStepExtended;
10
+ }
11
+ > = ({ step, ...other }) => {
12
+ const { t } = useTranslation();
13
+
14
+ const isDone = step.execution?.status === 'DONE';
15
+ const gasCosts = step.execution?.gasCosts ?? step.estimate.gasCosts;
16
+ const feeCosts = step.execution?.feeCosts ?? step.estimate.feeCosts;
17
+ let fees = 0;
18
+
19
+ if (gasCosts) {
20
+ const { amountUSD } = getStepFeeCostsBreakdown(gasCosts);
21
+ fees += amountUSD;
22
+ }
23
+
24
+ if (feeCosts) {
25
+ const filteredfeeCosts = feeCosts?.filter((fee) => !fee.included);
26
+ if (filteredfeeCosts?.length) {
27
+ const { amountUSD } = getStepFeeCostsBreakdown(filteredfeeCosts);
28
+ fees += amountUSD;
29
+ }
30
+ }
31
+
32
+ return (
33
+ <Typography
34
+ fontSize={12}
35
+ fontWeight="500"
36
+ color="text.secondary"
37
+ lineHeight={1.3334}
38
+ {...other}
39
+ >
40
+ {t(`format.currency`, { value: fees })}{' '}
41
+ {isDone ? t('main.fees.paid') : t('main.fees.estimated')}
42
+ </Typography>
43
+ );
44
+ };
@@ -1,46 +1,30 @@
1
1
  import { Box, Typography } from '@mui/material';
2
2
  import { alpha, styled } from '@mui/material/styles';
3
3
 
4
- export const TextSecondaryContainer = styled(Box, {
5
- shouldForwardProp: (prop) => prop !== 'connected',
6
- })<{ connected?: boolean }>(({ theme, connected }) => ({
7
- borderLeftWidth: connected ? 2 : 0,
8
- borderLeftStyle: 'solid',
9
- borderColor:
10
- theme.palette.mode === 'light'
11
- ? theme.palette.grey[300]
12
- : theme.palette.grey[800],
13
- margin: connected
14
- ? theme.spacing(0.5, 0, 0, 1.875)
15
- : theme.spacing(0, 0, 0, 6),
16
- padding: connected
17
- ? theme.spacing(0, 0, 0, 3.875)
18
- : theme.spacing(0, 0, 0, 0),
4
+ export const TextSecondaryContainer = styled(Box)(() => ({
19
5
  display: 'flex',
20
- alignItems: 'flex-start',
6
+ alignItems: 'center',
21
7
  flexWrap: 'wrap',
8
+ flex: 1,
22
9
  }));
23
10
 
24
11
  export const TextSecondary = styled(Typography, {
25
- shouldForwardProp: (prop: string) => !['connected', 'dot'].includes(prop),
26
- })<{ connected?: boolean; dot?: boolean }>(({ theme, connected, dot }) => ({
12
+ shouldForwardProp: (prop: string) => !['dot'].includes(prop),
13
+ })<{ dot?: boolean }>(({ theme, dot }) => ({
27
14
  fontSize: 12,
28
15
  lineHeight: 1,
29
16
  fontWeight: 500,
30
17
  color: dot
31
18
  ? alpha(theme.palette.text.secondary, 0.56)
32
19
  : theme.palette.text.secondary,
33
- marginTop: connected ? 0 : theme.spacing(0.5),
34
20
  }));
35
21
 
36
22
  export const TokenDivider = styled(Box)(({ theme }) => ({
37
- height: 12,
23
+ height: 16,
38
24
  borderLeftWidth: 2,
39
25
  borderLeftStyle: 'solid',
40
26
  borderColor:
41
27
  theme.palette.mode === 'light'
42
28
  ? theme.palette.grey[300]
43
29
  : theme.palette.grey[800],
44
- margin: theme.spacing(0, 0, 0, 3.875),
45
- padding: theme.spacing(0, 0, 0, 3.875),
46
30
  }));
@@ -1,31 +1,32 @@
1
1
  /* eslint-disable react/no-array-index-key */
2
2
  import type { LiFiStep, TokenAmount } from '@lifi/sdk';
3
3
  import type { BoxProps } from '@mui/material';
4
- import { Box, Skeleton } from '@mui/material';
4
+ import { Box, Grow, Skeleton } from '@mui/material';
5
+ import type { FC, PropsWithChildren, ReactElement } from 'react';
5
6
  import { useTranslation } from 'react-i18next';
6
7
  import { useChain, useToken } from '../../hooks';
7
8
  import { formatTokenAmount, formatTokenPrice } from '../../utils';
8
9
  import { SmallAvatar } from '../SmallAvatar';
9
10
  import { TextFitter } from '../TextFitter';
10
- import { TokenAvatar } from '../TokenAvatar';
11
+ import { TokenAvatar, TokenAvatarSkeleton } from '../TokenAvatar';
11
12
  import { TextSecondary, TextSecondaryContainer } from './Token.style';
12
13
 
13
14
  interface TokenProps {
14
15
  token: TokenAmount;
15
- connected?: boolean;
16
16
  step?: LiFiStep;
17
+ stepVisible?: boolean;
17
18
  disableDescription?: boolean;
18
19
  isLoading?: boolean;
19
20
  }
20
21
 
21
- export const Token: React.FC<TokenProps & BoxProps> = ({ token, ...other }) => {
22
+ export const Token: FC<TokenProps & BoxProps> = ({ token, ...other }) => {
22
23
  if (!token.priceUSD || !token.logoURI) {
23
24
  return <TokenFallback token={token} {...other} />;
24
25
  }
25
26
  return <TokenBase token={token} {...other} />;
26
27
  };
27
28
 
28
- export const TokenFallback: React.FC<TokenProps & BoxProps> = ({
29
+ export const TokenFallback: FC<TokenProps & BoxProps> = ({
29
30
  token,
30
31
  isLoading,
31
32
  ...other
@@ -44,33 +45,52 @@ export const TokenFallback: React.FC<TokenProps & BoxProps> = ({
44
45
  );
45
46
  };
46
47
 
47
- export const TokenBase: React.FC<TokenProps & BoxProps> = ({
48
+ export const TokenBase: FC<TokenProps & BoxProps> = ({
48
49
  token,
49
- connected,
50
50
  step,
51
+ stepVisible,
51
52
  disableDescription,
52
53
  isLoading,
53
54
  ...other
54
55
  }) => {
55
56
  const { t } = useTranslation();
56
57
  const { chain } = useChain(token?.chainId);
58
+
59
+ if (isLoading) {
60
+ return (
61
+ <TokenSkeleton
62
+ token={token}
63
+ step={step}
64
+ disableDescription={disableDescription}
65
+ />
66
+ );
67
+ }
68
+
57
69
  const formattedTokenAmount = formatTokenAmount(token.amount, token.decimals);
58
70
  const formattedTokenPrice = formatTokenPrice(
59
71
  formattedTokenAmount,
60
72
  token.priceUSD,
61
73
  );
74
+
75
+ const tokenOnChain = !disableDescription ? (
76
+ <TextSecondary>
77
+ {t(`main.tokenOnChain`, {
78
+ tokenSymbol: token.symbol,
79
+ chainName: chain?.name,
80
+ })}
81
+ </TextSecondary>
82
+ ) : null;
83
+
62
84
  return (
63
- <Box flex={1} {...other}>
64
- <Box display="flex" flex={1} alignItems="center">
65
- <TokenAvatar
66
- token={token}
67
- chain={chain}
68
- isLoading={isLoading}
69
- sx={{ marginRight: 2 }}
70
- />
71
- {isLoading ? (
72
- <Skeleton width={112} height={32} variant="text" />
73
- ) : (
85
+ <Box flex={1} display="flex" alignItems="center" {...other}>
86
+ <TokenAvatar
87
+ token={token}
88
+ chain={chain}
89
+ isLoading={isLoading}
90
+ sx={{ marginRight: 2 }}
91
+ />
92
+ <Box flex={1}>
93
+ <Box mb={0.5} height={24} display="flex" alignItems="center">
74
94
  <TextFitter
75
95
  height={30}
76
96
  textStyle={{
@@ -81,63 +101,113 @@ export const TokenBase: React.FC<TokenProps & BoxProps> = ({
81
101
  value: formattedTokenAmount,
82
102
  })}
83
103
  </TextFitter>
84
- )}
85
- </Box>
86
- <TextSecondaryContainer connected={connected} component="span">
87
- {isLoading ? (
88
- <Skeleton
89
- width={48}
90
- height={12}
91
- variant="rounded"
92
- sx={{ marginTop: 0.5 }}
93
- />
94
- ) : (
95
- <TextSecondary connected={connected}>
104
+ </Box>
105
+ <TextSecondaryContainer component="span">
106
+ <TextSecondary>
96
107
  {t(`format.currency`, {
97
108
  value: formattedTokenPrice,
98
109
  })}
99
110
  </TextSecondary>
100
- )}
101
- {!disableDescription ? (
102
- <TextSecondary connected={connected} px={0.5} dot>
103
- &#x2022;
104
- </TextSecondary>
105
- ) : null}
106
- {!step && !disableDescription ? (
107
- isLoading ? (
111
+ {!disableDescription ? (
112
+ <TextSecondary px={0.5} dot>
113
+ &#x2022;
114
+ </TextSecondary>
115
+ ) : null}
116
+ {step ? (
117
+ <TokenStep
118
+ step={step}
119
+ stepVisible={stepVisible}
120
+ disableDescription={disableDescription}
121
+ >
122
+ {tokenOnChain}
123
+ </TokenStep>
124
+ ) : (
125
+ tokenOnChain
126
+ )}
127
+ </TextSecondaryContainer>
128
+ </Box>
129
+ </Box>
130
+ );
131
+ };
132
+
133
+ const TokenStep: FC<PropsWithChildren<Partial<TokenProps>>> = ({
134
+ step,
135
+ stepVisible,
136
+ disableDescription,
137
+ children,
138
+ }) => {
139
+ return (
140
+ <Box flex={1} position="relative" overflow="hidden" height={16}>
141
+ <Grow
142
+ in={!stepVisible && !disableDescription}
143
+ style={{
144
+ position: 'absolute',
145
+ }}
146
+ appear={false}
147
+ timeout={225}
148
+ >
149
+ <Box display="flex" alignItems="center" height={16}>
150
+ {children as ReactElement}
151
+ </Box>
152
+ </Grow>
153
+ <Grow
154
+ in={stepVisible}
155
+ style={{
156
+ position: 'absolute',
157
+ }}
158
+ appear={false}
159
+ timeout={225}
160
+ >
161
+ <Box display="flex" alignItems="center" height={16}>
162
+ <Box mr={0.75} height={16}>
163
+ <SmallAvatar
164
+ src={step?.toolDetails.logoURI}
165
+ alt={step?.toolDetails.name}
166
+ sx={{
167
+ width: 16,
168
+ height: 16,
169
+ border: 0,
170
+ }}
171
+ >
172
+ {step?.toolDetails.name[0]}
173
+ </SmallAvatar>
174
+ </Box>
175
+ <TextSecondary>{step?.toolDetails.name}</TextSecondary>
176
+ </Box>
177
+ </Grow>
178
+ </Box>
179
+ );
180
+ };
181
+
182
+ export const TokenSkeleton: FC<Partial<TokenProps> & BoxProps> = ({
183
+ step,
184
+ disableDescription,
185
+ ...other
186
+ }) => {
187
+ return (
188
+ <Box flex={1} {...other}>
189
+ <Box display="flex" flex={1} alignItems="center">
190
+ <TokenAvatarSkeleton sx={{ marginRight: 2 }} />
191
+ <Box flex={1}>
192
+ <Skeleton width={112} height={24} variant="text" />
193
+ <TextSecondaryContainer component="span">
108
194
  <Skeleton
109
- width={96}
195
+ width={48}
110
196
  height={12}
111
197
  variant="rounded"
112
198
  sx={{ marginTop: 0.5 }}
113
199
  />
114
- ) : (
115
- <TextSecondary connected={connected}>
116
- {t(`main.tokenOnChain`, {
117
- tokenSymbol: token.symbol,
118
- chainName: chain?.name,
119
- })}
120
- </TextSecondary>
121
- )
122
- ) : null}
123
- {step ? (
124
- <Box display="flex" alignItems="flex-end" height={12} mt={0.5}>
125
- <Box pr={0.75}>
126
- <SmallAvatar
127
- src={step.toolDetails.logoURI}
128
- alt={step.toolDetails.name}
129
- sx={{
130
- border: 0,
131
- marginBottom: -0.25,
132
- }}
133
- >
134
- {step.toolDetails.name[0]}
135
- </SmallAvatar>
136
- </Box>
137
- <TextSecondary connected>{step.toolDetails.name}</TextSecondary>
138
- </Box>
139
- ) : null}
140
- </TextSecondaryContainer>
200
+ {!step && !disableDescription ? (
201
+ <Skeleton
202
+ width={96}
203
+ height={12}
204
+ variant="rounded"
205
+ sx={{ marginTop: 0.5, marginLeft: 1.5 }}
206
+ />
207
+ ) : null}
208
+ </TextSecondaryContainer>
209
+ </Box>
210
+ </Box>
141
211
  </Box>
142
212
  );
143
213
  };
@@ -1,3 +1,4 @@
1
+ import type { CSSObject } from '@mui/material';
1
2
  import { AvatarGroup, Box } from '@mui/material';
2
3
  import { avatarClasses } from '@mui/material/Avatar';
3
4
  import { badgeClasses } from '@mui/material/Badge';
@@ -13,19 +14,29 @@ export const TokenAvatarGroup = styled(AvatarGroup)(({ theme }) => ({
13
14
  },
14
15
  }));
15
16
 
16
- export const AvatarDefault = styled(Box)(({ theme }) => ({
17
- background:
18
- theme.palette.mode === 'light'
19
- ? theme.palette.grey[300]
20
- : theme.palette.grey[800],
21
- borderRadius: '50%',
22
- }));
17
+ export const AvatarDefault = styled(Box)(({ theme }) => {
18
+ const root = theme.components?.MuiAvatar?.styleOverrides?.root as CSSObject;
19
+ return {
20
+ background:
21
+ theme.palette.mode === 'light'
22
+ ? theme.palette.grey[300]
23
+ : theme.palette.grey[800],
24
+ borderRadius: '50%',
25
+ height: root?.height,
26
+ width: root?.width,
27
+ };
28
+ });
23
29
 
24
- export const AvatarDefaultBadge = styled(Box)(({ theme }) => ({
25
- background:
26
- theme.palette.mode === 'light'
27
- ? theme.palette.grey[300]
28
- : theme.palette.grey[800],
29
- border: `2px solid ${theme.palette.background.paper}`,
30
- borderRadius: '50%',
31
- }));
30
+ export const AvatarDefaultBadge = styled(Box)(({ theme }) => {
31
+ const root = theme.components?.MuiAvatar?.styleOverrides?.root as CSSObject;
32
+ return {
33
+ background:
34
+ theme.palette.mode === 'light'
35
+ ? theme.palette.grey[300]
36
+ : theme.palette.grey[800],
37
+ border: `2px solid ${theme.palette.background.paper}`,
38
+ borderRadius: '50%',
39
+ height: ((root?.height ?? 40) as number) / 2,
40
+ width: ((root?.width ?? 40) as number) / 2,
41
+ };
42
+ });
@@ -31,28 +31,26 @@ export const TokenAvatarBase: React.FC<{
31
31
  isLoading?: boolean;
32
32
  sx?: SxProps<Theme>;
33
33
  }> = ({ token, chain, isLoading, sx }) => {
34
- return (
34
+ return isLoading ? (
35
+ <TokenAvatarSkeleton />
36
+ ) : (
35
37
  <Badge
36
38
  overlap="circular"
37
39
  anchorOrigin={{ vertical: 'bottom', horizontal: 'right' }}
38
40
  badgeContent={
39
- chain && !isLoading ? (
41
+ chain ? (
40
42
  <SmallAvatar src={chain.logoURI} alt={chain.name}>
41
43
  {chain.name[0]}
42
44
  </SmallAvatar>
43
45
  ) : (
44
- <SmallAvatarSkeleton />
46
+ <AvatarDefaultBadge />
45
47
  )
46
48
  }
47
49
  sx={sx}
48
50
  >
49
- {isLoading ? (
50
- <Skeleton width={32} height={32} variant="circular" />
51
- ) : (
52
- <Avatar src={token?.logoURI} alt={token?.symbol}>
53
- {token?.symbol?.[0]}
54
- </Avatar>
55
- )}
51
+ <Avatar src={token?.logoURI} alt={token?.symbol}>
52
+ {token?.symbol?.[0]}
53
+ </Avatar>
56
54
  </Badge>
57
55
  );
58
56
  };
@@ -83,10 +81,25 @@ export const TokenAvatarDefault: React.FC<{
83
81
  <Badge
84
82
  overlap="circular"
85
83
  anchorOrigin={{ vertical: 'bottom', horizontal: 'right' }}
86
- badgeContent={<AvatarDefaultBadge width={16} height={16} />}
84
+ badgeContent={<AvatarDefaultBadge />}
85
+ sx={sx}
86
+ >
87
+ <AvatarDefault />
88
+ </Badge>
89
+ );
90
+ };
91
+
92
+ export const TokenAvatarSkeleton: React.FC<{
93
+ sx?: SxProps<Theme>;
94
+ }> = ({ sx }) => {
95
+ return (
96
+ <Badge
97
+ overlap="circular"
98
+ anchorOrigin={{ vertical: 'bottom', horizontal: 'right' }}
99
+ badgeContent={<SmallAvatarSkeleton />}
87
100
  sx={sx}
88
101
  >
89
- <AvatarDefault width={32} height={32} />
102
+ <Skeleton width={40} height={40} variant="circular" />
90
103
  </Badge>
91
104
  );
92
105
  };
@@ -26,10 +26,12 @@ export const ListItem = styled(MuiListItem)(({ theme }) => ({
26
26
  [`.${listItemSecondaryActionClasses.root}`]: {
27
27
  right: theme.spacing(3),
28
28
  },
29
- [`& .${listItemTextClasses.primary}`]: {
30
- height: 22,
29
+ [`& .${listItemTextClasses.secondary}`]: {
30
+ fontSize: 12,
31
+ fontWeight: 500,
31
32
  },
32
33
  [`& .${listItemTextClasses.primary}, & .${listItemTextClasses.secondary}`]: {
34
+ lineHeight: 1.3334,
33
35
  textOverflow: 'ellipsis',
34
36
  overflow: 'hidden',
35
37
  whiteSpace: 'nowrap',
@@ -39,10 +41,10 @@ export const ListItem = styled(MuiListItem)(({ theme }) => ({
39
41
  export const IconButton = styled(MuiIconButton)<IconButtonProps & LinkProps>(
40
42
  ({ theme }) => ({
41
43
  lineHeight: 1,
42
- fontSize: '0.75rem',
44
+ fontSize: 12,
43
45
  fontWeight: 400,
44
46
  padding: theme.spacing(0.375, 0.375),
45
- marginLeft: theme.spacing(0.25),
47
+ margin: theme.spacing(0, 0, 0, 0.25),
46
48
  color: 'inherit',
47
49
  backgroundColor: 'unset',
48
50
  minWidth: 'unset',
@@ -54,7 +56,7 @@ export const IconButton = styled(MuiIconButton)<IconButtonProps & LinkProps>(
54
56
  : alpha(theme.palette.common.white, 0.08),
55
57
  },
56
58
  svg: {
57
- fontSize: '0.875rem',
59
+ fontSize: 14,
58
60
  },
59
61
  }),
60
62
  );
@@ -2,18 +2,17 @@ import { Box } from '@mui/material';
2
2
  import type { FC } from 'react';
3
3
  import { useRef } from 'react';
4
4
  import {
5
- useAccount,
6
5
  useChain,
7
6
  useDebouncedWatch,
8
7
  useTokenBalances,
9
8
  useTokenSearch,
10
9
  } from '../../hooks';
10
+ import { FormKeyHelper, useFieldValues } from '../../stores';
11
11
  import type { TokenAmount } from '../../types';
12
12
  import { TokenNotFound } from './TokenNotFound';
13
13
  import { VirtualizedTokenList } from './VirtualizedTokenList';
14
14
  import type { TokenListProps } from './types';
15
15
  import { useTokenSelect } from './useTokenSelect';
16
- import { useFieldValues, FormKeyHelper } from '../../stores';
17
16
 
18
17
  export const TokenList: FC<TokenListProps> = ({
19
18
  formType,
@@ -21,11 +20,10 @@ export const TokenList: FC<TokenListProps> = ({
21
20
  onClick,
22
21
  }) => {
23
22
  const parentRef = useRef<HTMLUListElement | null>(null);
24
- const { account } = useAccount();
25
23
  const [selectedChainId] = useFieldValues(FormKeyHelper.getChainKey(formType));
26
24
  const [tokenSearchFilter]: string[] = useDebouncedWatch(
27
- ['tokenSearchFilter'],
28
25
  320,
26
+ 'tokenSearchFilter',
29
27
  );
30
28
 
31
29
  const { chain, isLoading: isChainLoading } = useChain(selectedChainId);
@@ -86,7 +84,6 @@ export const TokenList: FC<TokenListProps> = ({
86
84
  chain={chain}
87
85
  isLoading={isLoading}
88
86
  isBalanceLoading={isBalanceLoading}
89
- showBalance={account.isConnected}
90
87
  showFeatured={!tokenSearchFilter}
91
88
  onClick={handleTokenClick}
92
89
  />