@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
@@ -4,7 +4,7 @@ import { Avatar, Box, Skeleton, Tooltip, Typography } from '@mui/material';
4
4
  import { useEffect } from 'react';
5
5
  import { useNavigate } from 'react-router-dom';
6
6
  import type { FormTypeProps } from '../../stores';
7
- import { maxChainToOrder, useFieldValues, FormKeyHelper } from '../../stores';
7
+ import { FormKeyHelper, maxChainToOrder, useFieldValues } from '../../stores';
8
8
  import { navigationRoutes } from '../../utils';
9
9
  import { ChainCard, ChainContainer } from './ChainSelect.style';
10
10
  import { useChainSelect } from './useChainSelect';
@@ -23,12 +23,14 @@ export const ChainSelect = ({ formType }: FormTypeProps) => {
23
23
  const [chainId] = useFieldValues(FormKeyHelper.getChainKey(formType));
24
24
 
25
25
  useEffect(() => {
26
- const hasChainInOrderedList = chainOrder.includes(chainId);
27
- // If we don't have a chain in the ordered chain list we should add it.
28
- if (!hasChainInOrderedList) {
29
- setChainOrder(chainId);
26
+ if (chainId) {
27
+ const hasChainInOrderedList = chainOrder.includes(chainId);
28
+ // If we don't have a chain in the ordered chain list we should add it.
29
+ if (!hasChainInOrderedList) {
30
+ setChainOrder(chainId, formType);
31
+ }
30
32
  }
31
- }, [chainId, chainOrder, setChainOrder]);
33
+ }, [chainId, chainOrder, formType, setChainOrder]);
32
34
 
33
35
  const showAllChains = () => {
34
36
  navigate(navigationRoutes[`${formType}Chain`]);
@@ -1,12 +1,12 @@
1
1
  import type { EVMChain } from '@lifi/sdk';
2
2
  import { useChains, useSwapOnly } from '../../hooks';
3
- import type { FormType } from '../../stores';
4
3
  import { useWidgetConfig } from '../../providers';
4
+ import type { FormType } from '../../stores';
5
5
  import {
6
+ FormKeyHelper,
6
7
  useChainOrder,
7
8
  useFieldActions,
8
9
  useFieldController,
9
- FormKeyHelper,
10
10
  } from '../../stores';
11
11
  import { RequiredUI } from '../../types';
12
12
 
@@ -16,8 +16,8 @@ export const useChainSelect = (formType: FormType) => {
16
16
  const { onChange, onBlur } = useFieldController({ name: chainKey });
17
17
 
18
18
  const { setFieldValue, getFieldValues } = useFieldActions();
19
- const { chains, isLoading, getChainById } = useChains();
20
- const [chainOrder, setChainOrder] = useChainOrder();
19
+ const { chains, isLoading, getChainById } = useChains(formType);
20
+ const [chainOrder, setChainOrder] = useChainOrder(formType);
21
21
  const swapOnly = useSwapOnly();
22
22
 
23
23
  const getChains = () => {
@@ -63,7 +63,7 @@ export const useChainSelect = (formType: FormType) => {
63
63
  if (!requiredToAddress) {
64
64
  setFieldValue('toAddress', '');
65
65
  }
66
- setChainOrder(chainId);
66
+ setChainOrder(chainId, formType);
67
67
  };
68
68
 
69
69
  return {
@@ -0,0 +1,18 @@
1
+ import CloseIcon from '@mui/icons-material/CloseRounded';
2
+ import { Tooltip } from '@mui/material';
3
+ import IconButton from '@mui/material/IconButton';
4
+ import { useTranslation } from 'react-i18next';
5
+ import { useDrawer } from '../../AppDrawerContext';
6
+
7
+ export const CloseDrawerButton = () => {
8
+ const { t } = useTranslation();
9
+ const { closeDrawer } = useDrawer();
10
+
11
+ return (
12
+ <Tooltip title={t('button.close')} enterDelay={400} arrow>
13
+ <IconButton size="medium" onClick={closeDrawer}>
14
+ <CloseIcon />
15
+ </IconButton>
16
+ </Tooltip>
17
+ );
18
+ };
@@ -0,0 +1,24 @@
1
+ import PowerSettingsNewIcon from '@mui/icons-material/PowerSettingsNewRounded';
2
+ import { IconButton } from '@mui/material';
3
+ import type { Connector } from 'wagmi';
4
+ import { useDisconnect } from 'wagmi';
5
+
6
+ export const EVMDisconnectIconButton = ({
7
+ connector,
8
+ }: {
9
+ connector?: Connector;
10
+ }) => {
11
+ const { disconnect } = useDisconnect();
12
+
13
+ return (
14
+ <IconButton
15
+ size="medium"
16
+ onClick={(e) => {
17
+ e.stopPropagation();
18
+ disconnect({ connector });
19
+ }}
20
+ >
21
+ <PowerSettingsNewIcon />
22
+ </IconButton>
23
+ );
24
+ };
@@ -55,19 +55,25 @@ export const WalletButton = styled(Button)(({ theme }) => ({
55
55
  },
56
56
  }));
57
57
 
58
- export const DrawerWalletContainer = styled(Box)(() => ({
58
+ export const DrawerWalletContainer = styled(Box)(({ theme }) => ({
59
59
  width: '100%',
60
60
  display: 'flex',
61
- justifyItems: 'start',
61
+ justifyContent: 'space-between',
62
62
 
63
- '& > button': {
64
- marginLeft: '-0.5rem',
63
+ '& button:first-of-type': {
64
+ marginLeft: theme.spacing(-1),
65
+ },
66
+ '& button:last-of-type': {
67
+ marginRight: theme.spacing(-1.25),
65
68
  },
66
69
  }));
67
70
 
68
71
  export const HeaderControlsContainer = styled(Box)(({ theme }) => ({
69
72
  display: 'flex',
70
73
  gap: theme.spacing(0.5),
74
+ '& button:last-of-type': {
75
+ marginRight: theme.spacing(-1.25),
76
+ },
71
77
  }));
72
78
 
73
79
  export const SplitTabs = styled(Tabs)(({ theme }) => ({
@@ -1,8 +1,6 @@
1
1
  import type { FC, PropsWithChildren } from 'react';
2
2
  import { useLocation } from 'react-router-dom';
3
3
  import { useDefaultElementId } from '../../hooks';
4
- import { useWidgetConfig } from '../../providers';
5
- import { HiddenUI } from '../../types';
6
4
  import { ElementId, createElementId, stickyHeaderRoutes } from '../../utils';
7
5
  import { Container } from './Header.style';
8
6
  import { NavigationHeader } from './NavigationHeader';
@@ -22,14 +20,9 @@ export const HeaderContainer: FC<PropsWithChildren<{}>> = ({ children }) => {
22
20
  };
23
21
 
24
22
  export const Header: FC = () => {
25
- const { walletManagement, subvariant, hiddenUI } = useWidgetConfig();
26
23
  return (
27
24
  <HeaderContainer>
28
- {!walletManagement &&
29
- subvariant !== 'split' &&
30
- !hiddenUI?.includes(HiddenUI.WalletMenu) ? (
31
- <WalletHeader />
32
- ) : null}
25
+ <WalletHeader />
33
26
  <NavigationHeader />
34
27
  </HeaderContainer>
35
28
  );
@@ -1,6 +1,5 @@
1
1
  import ArrowBackIcon from '@mui/icons-material/ArrowBack';
2
- import ReceiptLongIcon from '@mui/icons-material/ReceiptLong';
3
- import { Box, Tooltip, Typography } from '@mui/material';
2
+ import { Box, Typography } from '@mui/material';
4
3
  import IconButton from '@mui/material/IconButton';
5
4
  import { useTranslation } from 'react-i18next';
6
5
  import { Route, Routes, useLocation } from 'react-router-dom';
@@ -13,32 +12,18 @@ import {
13
12
  navigationRoutes,
14
13
  navigationRoutesValues,
15
14
  } from '../../utils';
15
+ import { CloseDrawerButton } from './CloseDrawerButton';
16
16
  import { HeaderAppBar, HeaderControlsContainer } from './Header.style';
17
17
  import { NavigationTabs } from './NavigationTabs';
18
18
  import { SettingsButton } from './SettingsButton';
19
- import { WalletMenuButton } from './WalletHeader';
19
+ import { TransactionHistoryButton } from './TransactionHistoryButton';
20
+ import { SplitWalletMenuButton } from './WalletHeader';
20
21
 
21
- export const TransactionHistoryButton = () => {
22
- const { t } = useTranslation();
23
- const { navigate } = useNavigateBack();
24
-
25
- return (
26
- <Tooltip title={t(`header.transactionHistory`)} enterDelay={400} arrow>
27
- <IconButton
28
- size="medium"
29
- edge="start"
30
- onClick={() => navigate(navigationRoutes.transactionHistory)}
31
- >
32
- <ReceiptLongIcon />
33
- </IconButton>
34
- </Tooltip>
35
- );
36
- };
37
22
  export const NavigationHeader: React.FC = () => {
38
23
  const { t } = useTranslation();
39
24
  const { subvariant, hiddenUI, variant } = useWidgetConfig();
40
25
  const { navigateBack } = useNavigateBack();
41
- const { account } = useAccount();
26
+ const { isConnected } = useAccount();
42
27
  const { element, title } = useHeaderStore((state) => state);
43
28
  const { pathname } = useLocation();
44
29
 
@@ -115,9 +100,7 @@ export const NavigationHeader: React.FC = () => {
115
100
  ) : null}
116
101
  {splitSubvariant ? (
117
102
  <Box flex={1}>
118
- {!hiddenUI?.includes(HiddenUI.WalletMenu) ? (
119
- <WalletMenuButton />
120
- ) : null}
103
+ <SplitWalletMenuButton />
121
104
  </Box>
122
105
  ) : (
123
106
  <Typography
@@ -134,16 +117,16 @@ export const NavigationHeader: React.FC = () => {
134
117
  <Route
135
118
  path={navigationRoutes.home}
136
119
  element={
137
- <HeaderControlsContainer
138
- paddingRight={
139
- variant === 'drawer' && subvariant === 'split' ? 5 : 0
140
- }
141
- >
142
- {account.isConnected &&
143
- !hiddenUI?.includes(HiddenUI.History) ? (
120
+ <HeaderControlsContainer>
121
+ {isConnected && !hiddenUI?.includes(HiddenUI.History) ? (
144
122
  <TransactionHistoryButton />
145
123
  ) : null}
146
124
  <SettingsButton />
125
+ {variant === 'drawer' &&
126
+ subvariant === 'split' &&
127
+ !hiddenUI?.includes(HiddenUI.DrawerCloseButton) ? (
128
+ <CloseDrawerButton />
129
+ ) : null}
147
130
  </HeaderControlsContainer>
148
131
  }
149
132
  />
@@ -0,0 +1,19 @@
1
+ import PowerSettingsNewIcon from '@mui/icons-material/PowerSettingsNewRounded';
2
+ import { IconButton } from '@mui/material';
3
+ import { useWallet } from '@solana/wallet-adapter-react';
4
+
5
+ export const SVMDisconnectIconButton = () => {
6
+ const { disconnect } = useWallet();
7
+
8
+ return (
9
+ <IconButton
10
+ size="medium"
11
+ onClick={(e) => {
12
+ e.stopPropagation();
13
+ disconnect();
14
+ }}
15
+ >
16
+ <PowerSettingsNewIcon />
17
+ </IconButton>
18
+ );
19
+ };
@@ -23,26 +23,22 @@ interface SettingsIconButtonProps {
23
23
  export const SettingsIconButton = styled(IconButton, {
24
24
  shouldForwardProp: (props) => props !== 'variant',
25
25
  })<SettingsIconButtonProps>(({ theme, variant }) => {
26
- const variantStyles = {
27
- info: {
28
- backgroundColor: getInfoBackgroundColor(theme),
29
- '&:hover': {
30
- backgroundColor: darken(getInfoBackgroundColor(theme), 0.2),
31
- },
32
- },
33
- warning: {
34
- backgroundColor: getWarningBackgroundColor(theme),
35
- '&:hover': {
36
- backgroundColor: darken(getWarningBackgroundColor(theme), 0.2),
37
- },
38
- },
39
- default: {
40
- marginRight: theme.spacing(-1.25),
41
- },
42
- };
43
-
44
- return {
45
- borderRadius: 20,
46
- ...variantStyles[variant ?? 'default'],
47
- };
26
+ switch (variant) {
27
+ case 'info':
28
+ return {
29
+ backgroundColor: getInfoBackgroundColor(theme),
30
+ '&:hover': {
31
+ backgroundColor: darken(getInfoBackgroundColor(theme), 0.2),
32
+ },
33
+ };
34
+ case 'warning':
35
+ return {
36
+ backgroundColor: getWarningBackgroundColor(theme),
37
+ '&:hover': {
38
+ backgroundColor: darken(getWarningBackgroundColor(theme), 0.2),
39
+ },
40
+ };
41
+ default:
42
+ break;
43
+ }
48
44
  });
@@ -0,0 +1,23 @@
1
+ import ReceiptLongIcon from '@mui/icons-material/ReceiptLong';
2
+ import { Tooltip } from '@mui/material';
3
+ import IconButton from '@mui/material/IconButton';
4
+ import { useTranslation } from 'react-i18next';
5
+ import { useNavigateBack } from '../../hooks';
6
+ import { navigationRoutes } from '../../utils';
7
+
8
+ export const TransactionHistoryButton = () => {
9
+ const { t } = useTranslation();
10
+ const { navigate } = useNavigateBack();
11
+
12
+ return (
13
+ <Tooltip title={t(`header.transactionHistory`)} enterDelay={400} arrow>
14
+ <IconButton
15
+ size="medium"
16
+ edge="start"
17
+ onClick={() => navigate(navigationRoutes.transactionHistory)}
18
+ >
19
+ <ReceiptLongIcon />
20
+ </IconButton>
21
+ </Tooltip>
22
+ );
23
+ };
@@ -1,14 +1,19 @@
1
+ import { getWalletIcon } from '@lifi/wallet-management';
1
2
  import ExpandMoreIcon from '@mui/icons-material/ExpandMore';
2
3
  import WalletIcon from '@mui/icons-material/Wallet';
3
4
  import { Avatar, Badge } from '@mui/material';
4
5
  import { useState } from 'react';
5
6
  import { useTranslation } from 'react-i18next';
6
7
  import { useLocation, useNavigate } from 'react-router-dom';
8
+ import type { Connector } from 'wagmi';
7
9
  import type { Account } from '../../hooks';
8
10
  import { useAccount, useChain } from '../../hooks';
9
11
  import { useWidgetConfig } from '../../providers';
12
+ import { useHasExternalWalletProvider } from '../../providers/WalletProvider';
13
+ import { HiddenUI } from '../../types';
10
14
  import { navigationRoutes, shortenAddress } from '../../utils';
11
15
  import { SmallAvatar } from '../SmallAvatar';
16
+ import { CloseDrawerButton } from './CloseDrawerButton';
12
17
  import {
13
18
  DrawerWalletContainer,
14
19
  HeaderAppBar,
@@ -18,16 +23,28 @@ import { WalletMenu } from './WalletMenu';
18
23
  import { WalletMenuContainer } from './WalletMenu.style';
19
24
 
20
25
  export const WalletHeader: React.FC = () => {
21
- return (
26
+ const { subvariant, hiddenUI } = useWidgetConfig();
27
+ const { hasExternalProvider } = useHasExternalWalletProvider();
28
+ return !hasExternalProvider &&
29
+ subvariant !== 'split' &&
30
+ !hiddenUI?.includes(HiddenUI.WalletMenu) ? (
22
31
  <HeaderAppBar elevation={0} sx={{ justifyContent: 'flex-end' }}>
23
32
  <WalletMenuButton />
24
33
  </HeaderAppBar>
25
- );
34
+ ) : null;
35
+ };
36
+
37
+ export const SplitWalletMenuButton: React.FC = () => {
38
+ const { hiddenUI } = useWidgetConfig();
39
+ const { hasExternalProvider } = useHasExternalWalletProvider();
40
+ return !hasExternalProvider && !hiddenUI?.includes(HiddenUI.WalletMenu) ? (
41
+ <WalletMenuButton />
42
+ ) : null;
26
43
  };
27
44
 
28
45
  export const WalletMenuButton: React.FC = () => {
29
46
  const { account } = useAccount();
30
- const { variant } = useWidgetConfig();
47
+ const { variant, subvariant, hiddenUI } = useWidgetConfig();
31
48
 
32
49
  if (variant === 'drawer') {
33
50
  return (
@@ -37,6 +54,10 @@ export const WalletMenuButton: React.FC = () => {
37
54
  ) : (
38
55
  <ConnectButton />
39
56
  )}
57
+ {subvariant !== 'split' &&
58
+ !hiddenUI?.includes(HiddenUI.DrawerCloseButton) ? (
59
+ <CloseDrawerButton />
60
+ ) : null}
40
61
  </DrawerWalletContainer>
41
62
  );
42
63
  }
@@ -50,11 +71,11 @@ export const WalletMenuButton: React.FC = () => {
50
71
  const ConnectButton = () => {
51
72
  const { t } = useTranslation();
52
73
  const { pathname } = useLocation();
53
- const { walletManagement, subvariant, variant } = useWidgetConfig();
74
+ const { walletConfig, subvariant, variant } = useWidgetConfig();
54
75
  const navigate = useNavigate();
55
76
  const connect = async () => {
56
- if (walletManagement) {
57
- await walletManagement.connect();
77
+ if (walletConfig?.onConnect) {
78
+ walletConfig.onConnect();
58
79
  return;
59
80
  }
60
81
  navigate(navigationRoutes.selectWallet);
@@ -100,7 +121,10 @@ const ConnectedButton = ({ account }: { account: Account }) => {
100
121
 
101
122
  const avatar = (
102
123
  <Avatar
103
- src={account.connector?.icon}
124
+ src={
125
+ account.connector?.icon ||
126
+ getWalletIcon((account.connector as Connector)?.id)
127
+ }
104
128
  alt={account.connector?.name}
105
129
  sx={{ width: 24, height: 24 }}
106
130
  >
@@ -118,7 +142,11 @@ const ConnectedButton = ({ account }: { account: Account }) => {
118
142
  overlap="circular"
119
143
  anchorOrigin={{ vertical: 'bottom', horizontal: 'right' }}
120
144
  badgeContent={
121
- <SmallAvatar src={chain?.logoURI} alt={chain?.name}>
145
+ <SmallAvatar
146
+ src={chain?.logoURI}
147
+ alt={chain?.name}
148
+ sx={{ width: 16, height: 16 }}
149
+ >
122
150
  {chain?.name[0]}
123
151
  </SmallAvatar>
124
152
  }
@@ -1,4 +1,5 @@
1
1
  import { ChainType } from '@lifi/sdk';
2
+ import { getWalletIcon } from '@lifi/wallet-management';
2
3
  import ContentCopyIcon from '@mui/icons-material/ContentCopyRounded';
3
4
  import OpenInNewIcon from '@mui/icons-material/OpenInNewRounded';
4
5
  import PowerSettingsNewIcon from '@mui/icons-material/PowerSettingsNewRounded';
@@ -10,14 +11,14 @@ import {
10
11
  IconButton,
11
12
  MenuItem,
12
13
  } from '@mui/material';
13
- import { useWallet } from '@solana/wallet-adapter-react';
14
14
  import { useTranslation } from 'react-i18next';
15
15
  import { useLocation, useNavigate } from 'react-router-dom';
16
16
  import type { Connector } from 'wagmi';
17
- import { useDisconnect } from 'wagmi';
18
17
  import { useAccount, useAvailableChains } from '../../hooks';
19
18
  import { navigationRoutes, shortenAddress } from '../../utils';
20
19
  import { SmallAvatar } from '../SmallAvatar';
20
+ import { EVMDisconnectIconButton } from './EVMDisconnectIconButton.js';
21
+ import { SVMDisconnectIconButton } from './SVMDisconnectIconButton.js';
21
22
 
22
23
  export const WalletMenu = ({ onClose }: { onClose: () => void }) => {
23
24
  const { t } = useTranslation();
@@ -33,71 +34,70 @@ export const WalletMenu = ({ onClose }: { onClose: () => void }) => {
33
34
  return (
34
35
  <Box>
35
36
  <Box display="flex" flexDirection="column">
36
- {accounts
37
- .filter((account) => account.isConnected)
38
- .map((account) => {
39
- const chain = getChainById(account.chainId);
40
- const walletAddress = shortenAddress(account.address);
41
- const handleCopyAddress = async () => {
42
- await navigator.clipboard.writeText(account.address ?? '');
43
- onClose();
44
- };
45
- const avatar = (
46
- <Avatar
47
- src={account.connector?.icon}
48
- alt={account.connector?.name}
49
- sx={{
50
- width: 32,
51
- height: 32,
52
- marginRight: chain?.logoURI ? 0 : 1.5,
53
- }}
54
- >
55
- {account.connector?.name[0]}
56
- </Avatar>
57
- );
58
- return (
59
- <MenuItem key={account.address}>
60
- <Box flex={1} display="flex" alignItems="center">
61
- {chain?.logoURI ? (
62
- <Badge
63
- overlap="circular"
64
- anchorOrigin={{ vertical: 'bottom', horizontal: 'right' }}
65
- badgeContent={
66
- <SmallAvatar src={chain?.logoURI} alt={chain?.name}>
67
- {chain?.name[0]}
68
- </SmallAvatar>
69
- }
70
- sx={{ marginRight: 1.5 }}
71
- >
72
- {avatar}
73
- </Badge>
74
- ) : (
75
- avatar
76
- )}
77
- {walletAddress}
78
- </Box>
79
- <Box ml={1}>
80
- <IconButton size="medium" onClick={handleCopyAddress}>
81
- <ContentCopyIcon />
82
- </IconButton>
83
- <IconButton
84
- size="medium"
85
- component="a"
86
- onClick={onClose}
87
- href={`${chain?.metamask.blockExplorerUrls[0]}address/${account.address}`}
88
- target="_blank"
37
+ {accounts.map((account) => {
38
+ const chain = getChainById(account.chainId);
39
+ const walletAddress = shortenAddress(account.address);
40
+ const handleCopyAddress = async () => {
41
+ await navigator.clipboard.writeText(account.address ?? '');
42
+ onClose();
43
+ };
44
+ const avatar = (
45
+ <Avatar
46
+ src={
47
+ account.connector?.icon ||
48
+ getWalletIcon((account.connector as Connector)?.id)
49
+ }
50
+ alt={account.connector?.name}
51
+ sx={{
52
+ marginRight: chain?.logoURI ? 0 : 1.5,
53
+ }}
54
+ >
55
+ {account.connector?.name[0]}
56
+ </Avatar>
57
+ );
58
+ return (
59
+ <MenuItem key={account.address}>
60
+ <Box flex={1} display="flex" alignItems="center">
61
+ {chain?.logoURI ? (
62
+ <Badge
63
+ overlap="circular"
64
+ anchorOrigin={{ vertical: 'bottom', horizontal: 'right' }}
65
+ badgeContent={
66
+ <SmallAvatar src={chain?.logoURI} alt={chain?.name}>
67
+ {chain?.name[0]}
68
+ </SmallAvatar>
69
+ }
70
+ sx={{ marginRight: 1.5 }}
89
71
  >
90
- <OpenInNewIcon />
91
- </IconButton>
92
- {account.chainType === ChainType.EVM ? (
93
- <EVMDisconnectIconButton connector={account.connector} />
94
- ) : account.chainType === ChainType.SVM ? (
95
- <SVMDisconnectIconButton />
96
- ) : null}
97
- </Box>
98
- </MenuItem>
99
- );
100
- })}
72
+ {avatar}
73
+ </Badge>
74
+ ) : (
75
+ avatar
76
+ )}
77
+ {walletAddress}
78
+ </Box>
79
+ <Box ml={1}>
80
+ <IconButton size="medium" onClick={handleCopyAddress}>
81
+ <ContentCopyIcon />
82
+ </IconButton>
83
+ <IconButton
84
+ size="medium"
85
+ component="a"
86
+ onClick={onClose}
87
+ href={`${chain?.metamask.blockExplorerUrls[0]}address/${account.address}`}
88
+ target="_blank"
89
+ >
90
+ <OpenInNewIcon />
91
+ </IconButton>
92
+ {account.chainType === ChainType.EVM ? (
93
+ <EVMDisconnectIconButton connector={account.connector} />
94
+ ) : account.chainType === ChainType.SVM ? (
95
+ <SVMDisconnectIconButton />
96
+ ) : null}
97
+ </Box>
98
+ </MenuItem>
99
+ );
100
+ })}
101
101
  </Box>
102
102
  {!pathname.includes(navigationRoutes.selectWallet) ? (
103
103
  <Button
@@ -108,7 +108,7 @@ export const WalletMenu = ({ onClose }: { onClose: () => void }) => {
108
108
  marginTop: 1,
109
109
  }}
110
110
  >
111
- {accounts.filter((account) => account.isConnected).length > 1
111
+ {accounts.length > 1
112
112
  ? t(`button.changeWallet`)
113
113
  : t(`button.connectWallet`)}
114
114
  </Button>
@@ -116,35 +116,3 @@ export const WalletMenu = ({ onClose }: { onClose: () => void }) => {
116
116
  </Box>
117
117
  );
118
118
  };
119
-
120
- const EVMDisconnectIconButton = ({ connector }: { connector?: Connector }) => {
121
- const { disconnect } = useDisconnect();
122
-
123
- return (
124
- <IconButton
125
- size="medium"
126
- onClick={(e) => {
127
- e.stopPropagation();
128
- disconnect({ connector });
129
- }}
130
- >
131
- <PowerSettingsNewIcon />
132
- </IconButton>
133
- );
134
- };
135
-
136
- const SVMDisconnectIconButton = () => {
137
- const { disconnect } = useWallet();
138
-
139
- return (
140
- <IconButton
141
- size="medium"
142
- onClick={(e) => {
143
- e.stopPropagation();
144
- disconnect();
145
- }}
146
- >
147
- <PowerSettingsNewIcon />
148
- </IconButton>
149
- );
150
- };