@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
@@ -1,15 +1,17 @@
1
1
  /* eslint-disable @typescript-eslint/no-unused-vars */
2
+ import type { PropsWithChildren } from 'react';
2
3
  import { useEffect, useRef } from 'react';
3
- import type { FormFieldNames } from './types';
4
4
  import { useAccount } from '../../hooks';
5
+ import { useWidgetConfig } from '../../providers';
6
+ import { isItemAllowed } from '../../utils';
7
+ import type { DefaultValues, FormFieldNames } from './types';
5
8
  import { useFieldActions } from './useFieldActions';
6
- import { isItemAllowed, useWidgetConfig } from '../../providers';
7
- import type { DefaultValues } from './types';
8
- import { FormKey } from './types';
9
9
 
10
- export const FormUpdater: React.FC<{
11
- defaultValues: Partial<DefaultValues>;
12
- }> = ({ defaultValues }) => {
10
+ export const FormUpdater: React.FC<
11
+ PropsWithChildren<{
12
+ defaultValues: Partial<DefaultValues>;
13
+ }>
14
+ > = ({ defaultValues, children }) => {
13
15
  const { fromChain, toChain, chains } = useWidgetConfig();
14
16
  const { account } = useAccount();
15
17
  const { isTouched, resetField, setFieldValue, getFieldValues } =
@@ -20,6 +22,7 @@ export const FormUpdater: React.FC<{
20
22
  useEffect(() => {
21
23
  const chainAllowed =
22
24
  account.chainId && isItemAllowed(account.chainId, chains);
25
+
23
26
  if (!account.isConnected || !account.chainId || !chainAllowed) {
24
27
  return;
25
28
  }
@@ -54,7 +57,7 @@ export const FormUpdater: React.FC<{
54
57
  const value =
55
58
  defaultValues[key] ||
56
59
  // set the chain to the current user one if it is not present in the config
57
- (key === FormKey.FromChain || key === FormKey.ToChain
60
+ (key === 'fromChain' || key === 'toChain'
58
61
  ? account.chainId || ''
59
62
  : '');
60
63
  setFieldValue(key, value);
@@ -65,5 +68,5 @@ export const FormUpdater: React.FC<{
65
68
  // eslint-disable-next-line react-hooks/exhaustive-deps
66
69
  }, [defaultValues, getFieldValues, resetField, setFieldValue]);
67
70
 
68
- return null;
71
+ return children;
69
72
  };
@@ -11,6 +11,7 @@ const formValueKeys: FormFieldNames[] = [
11
11
  'toChain',
12
12
  'toToken',
13
13
  ];
14
+
14
15
  export const URLSearchParamsBuilder = () => {
15
16
  const { pathname } = useLocation();
16
17
  const touchedFields = useTouchedFields();
@@ -19,8 +20,9 @@ export const URLSearchParamsBuilder = () => {
19
20
  useEffect(() => {
20
21
  const url = new URL(window.location as any);
21
22
  formValueKeys.forEach((key, index) => {
22
- if (touchedFields[key] && values[index]) {
23
- url.searchParams.set(key, values[index]);
23
+ const value = values[index];
24
+ if (touchedFields[key] && value) {
25
+ url.searchParams.set(key, value.toString());
24
26
  } else if (url.searchParams.has(key) && !values[index]) {
25
27
  url.searchParams.delete(key);
26
28
  }
@@ -2,11 +2,12 @@ import { createWithEqualityFn } from 'zustand/traditional';
2
2
 
3
3
  import type {
4
4
  DefaultValues,
5
+ FormFieldArray,
5
6
  FormFieldNames,
6
- GenericFormValue,
7
7
  FormValueControl,
8
8
  FormValues,
9
9
  FormValuesState,
10
+ GenericFormValue,
10
11
  } from './types';
11
12
 
12
13
  export const formDefaultValues: DefaultValues = {
@@ -27,6 +28,7 @@ const defaultValueToFormValue = (
27
28
  isDirty: false,
28
29
  value,
29
30
  });
31
+
30
32
  const valuesToFormValues = (defaultValues: DefaultValues): FormValues => {
31
33
  return (Object.keys(defaultValues) as FormFieldNames[]).reduce(
32
34
  (accum, key) => {
@@ -47,6 +49,7 @@ const getUpdatedTouchedFields = (userValues: FormValues) => {
47
49
  {},
48
50
  );
49
51
  };
52
+
50
53
  const mergeDefaultFormValues = (
51
54
  userValues: FormValues,
52
55
  defaultValues: FormValues,
@@ -72,12 +75,20 @@ const mergeDefaultFormValues = (
72
75
  { ...valuesToFormValues(formDefaultValues) },
73
76
  );
74
77
 
75
- export const createFormStore = () =>
76
- createWithEqualityFn<FormValuesState>(
77
- (set, get) => ({
78
- defaultValues: valuesToFormValues(formDefaultValues),
79
- userValues: valuesToFormValues(formDefaultValues),
78
+ export const createFormStore = (defaultValues?: DefaultValues) =>
79
+ createWithEqualityFn<FormValuesState>((set, get) => {
80
+ const _defaultValues = valuesToFormValues({
81
+ ...formDefaultValues,
82
+ ...defaultValues,
83
+ });
84
+ return {
85
+ defaultValues: _defaultValues,
86
+ userValues: _defaultValues,
80
87
  touchedFields: {},
88
+ isValid: true,
89
+ isValidating: false,
90
+ errors: {},
91
+ validation: {},
81
92
  setDefaultValues: (defaultValue) => {
82
93
  const defaultFormValues = valuesToFormValues(defaultValue);
83
94
  set((state) => ({
@@ -165,12 +176,8 @@ export const createFormStore = () =>
165
176
  touchedFields,
166
177
  }));
167
178
  },
168
- getFieldValues: (...names) =>
169
- names.map((name) => get().userValues[name]?.value),
170
- isValid: true,
171
- isValidating: false,
172
- errors: {},
173
- validation: {},
179
+ getFieldValues: <T extends FormFieldNames[]>(...names: T) =>
180
+ names.map((name) => get().userValues[name]?.value) as FormFieldArray<T>,
174
181
  addFieldValidation: (name, validationFn) => {
175
182
  set((state) => ({
176
183
  validation: {
@@ -220,6 +227,5 @@ export const createFormStore = () =>
220
227
  errors: newErrors,
221
228
  }));
222
229
  },
223
- }),
224
- Object.is,
225
- );
230
+ };
231
+ }, Object.is);
@@ -1,19 +1,19 @@
1
- import type { UseBoundStoreWithEqualityFn } from 'zustand/traditional';
2
1
  import type { StoreApi } from 'zustand';
2
+ import type { UseBoundStoreWithEqualityFn } from 'zustand/traditional';
3
3
 
4
4
  export interface DefaultValues {
5
- toAddress: string;
6
- tokenSearchFilter: string;
7
5
  contractOutputsToken: string;
8
- toContractAddress: string;
9
- toContractCallData: string;
10
- toContractGasLimit: string;
11
- toAmount: string;
12
6
  fromAmount: string;
13
- toChain?: number;
14
7
  fromChain?: number;
15
8
  fromToken?: string;
16
- toToken?: string | undefined;
9
+ toAddress: string;
10
+ toAmount: string;
11
+ toChain?: number;
12
+ toContractAddress: string;
13
+ toContractCallData: string;
14
+ toContractGasLimit: string;
15
+ toToken?: string;
16
+ tokenSearchFilter: string;
17
17
  }
18
18
 
19
19
  export type GenericFormValue = string | number | undefined;
@@ -24,21 +24,27 @@ export interface FormValueControl<T> {
24
24
  }
25
25
 
26
26
  export interface FormValues {
27
- toAddress: FormValueControl<string>;
28
- tokenSearchFilter: FormValueControl<string>;
29
27
  contractOutputsToken: FormValueControl<string>;
28
+ fromAmount: FormValueControl<string>;
29
+ fromChain?: FormValueControl<number | undefined>;
30
+ fromToken?: FormValueControl<string | undefined>;
31
+ toAddress: FormValueControl<string>;
32
+ toAmount: FormValueControl<string>;
33
+ toChain?: FormValueControl<number | undefined>;
30
34
  toContractAddress: FormValueControl<string>;
31
35
  toContractCallData: FormValueControl<string>;
32
36
  toContractGasLimit: FormValueControl<string>;
33
- toAmount: FormValueControl<string>;
34
- fromAmount: FormValueControl<string>;
35
- fromToken?: FormValueControl<string | undefined>;
36
37
  toToken?: FormValueControl<string | undefined>;
37
- toChain?: FormValueControl<number | undefined>;
38
- fromChain?: FormValueControl<number | undefined>;
38
+ tokenSearchFilter: FormValueControl<string>;
39
39
  }
40
40
 
41
41
  export type FormFieldNames = keyof FormValues;
42
+ export type ExtractValueType<T> = T extends FormValueControl<infer U>
43
+ ? U
44
+ : never;
45
+ export type FormFieldArray<T extends FormFieldNames[]> = {
46
+ [K in keyof T]: ExtractValueType<FormValues[T[K]]>;
47
+ };
42
48
 
43
49
  export type TouchedFields = { [key in FormFieldNames]?: boolean };
44
50
 
@@ -62,10 +68,6 @@ export interface ValidationActions {
62
68
  triggerFieldValidation: (name: FormFieldNames) => Promise<boolean>;
63
69
  clearErrors: (name: FormFieldNames) => void;
64
70
  }
65
- export type ValidationActionNames = keyof ValidationActions;
66
- export type ValidationActionFunctions = Array<
67
- ValidationActions[ValidationActionNames]
68
- >;
69
71
 
70
72
  export interface FormProps {
71
73
  defaultValues: FormValues;
@@ -87,12 +89,11 @@ export interface FormActions {
87
89
  value: GenericFormValue,
88
90
  options?: SetOptions,
89
91
  ) => void;
90
- getFieldValues: (...names: FormFieldNames[]) => Array<any>;
92
+ getFieldValues: <T extends FormFieldNames[]>(
93
+ ...names: T
94
+ ) => FormFieldArray<T>;
91
95
  }
92
96
 
93
- export type FormActionNames = keyof FormActions;
94
- export type FormActionFunctions = Array<FormActions[FormActionNames]>;
95
-
96
97
  export type FormValuesState = FormProps &
97
98
  FormActions &
98
99
  ValidationProps &
@@ -107,21 +108,6 @@ interface SetOptions {
107
108
  isTouched?: boolean;
108
109
  }
109
110
 
110
- export enum FormKey {
111
- ContractOutputsToken = 'contractOutputsToken',
112
- FromAmount = 'fromAmount',
113
- FromChain = 'fromChain',
114
- FromToken = 'fromToken',
115
- ToAddress = 'toAddress',
116
- ToAmount = 'toAmount',
117
- ToChain = 'toChain',
118
- ToContractAddress = 'toContractAddress',
119
- ToContractCallData = 'toContractCallData',
120
- ToContractGasLimit = 'ToContractGasLimit',
121
- ToToken = 'toToken',
122
- TokenSearchFilter = 'tokenSearchFilter',
123
- }
124
-
125
111
  export type FormType = 'from' | 'to';
126
112
 
127
113
  export interface FormTypeProps {
@@ -1,28 +1,19 @@
1
1
  import { shallow } from 'zustand/shallow';
2
- import type {
3
- FormActions,
4
- FormActionNames,
5
- FormActionFunctions,
6
- } from './types';
7
2
  import { useFormStore } from './FormStore';
8
-
9
- const actionFunctions: FormActionNames[] = [
10
- 'setDefaultValues',
11
- 'isTouched',
12
- 'setAsTouched',
13
- 'resetField',
14
- 'setFieldValue',
15
- 'getFieldValues',
16
- ];
3
+ import type { FormActions } from './types';
17
4
 
18
5
  export const useFieldActions = () => {
19
- const actions: FormActionFunctions = useFormStore(
20
- (store) => actionFunctions.map((actionName) => store[actionName]),
6
+ const actions = useFormStore<FormActions>(
7
+ (store) => ({
8
+ getFieldValues: store.getFieldValues,
9
+ isTouched: store.isTouched,
10
+ resetField: store.resetField,
11
+ setAsTouched: store.setAsTouched,
12
+ setDefaultValues: store.setDefaultValues,
13
+ setFieldValue: store.setFieldValue,
14
+ }),
21
15
  shallow,
22
16
  );
23
17
 
24
- return actions.reduce(
25
- (accum, actionName, i) => ({ ...accum, [actionFunctions[i]]: actionName }),
26
- {},
27
- ) as FormActions;
18
+ return actions;
28
19
  };
@@ -1,10 +1,12 @@
1
- import type { FormFieldNames } from './types';
2
- import { useFormStore } from './FormStore';
3
1
  import { shallow } from 'zustand/shallow';
2
+ import { useFormStore } from './FormStore';
3
+ import type { FormFieldArray, FormFieldNames } from './types';
4
4
 
5
- export const useFieldValues = (...names: FormFieldNames[]) => {
5
+ // We should return a strongly-typed array based on the specific field names we pass to the function.
6
+ export const useFieldValues = <T extends FormFieldNames[]>(...names: T) => {
6
7
  const values = useFormStore(
7
- (store) => names.map((name) => store.userValues[name]?.value),
8
+ (store) =>
9
+ names.map((name) => store.userValues[name]!.value) as FormFieldArray<T>,
8
10
  shallow,
9
11
  );
10
12
 
@@ -1,24 +1,16 @@
1
- import type { ValidationActions } from './types';
2
- import { useFormStore } from './FormStore';
3
1
  import { shallow } from 'zustand/shallow';
4
- import type { ValidationActionFunctions, ValidationActionNames } from './types';
2
+ import { useFormStore } from './FormStore';
3
+ import type { ValidationActions } from './types';
5
4
 
6
- const validationFunctions: ValidationActionNames[] = [
7
- 'addFieldValidation',
8
- 'triggerFieldValidation',
9
- 'clearErrors',
10
- ];
11
5
  export const useValidationActions = () => {
12
- const actions: ValidationActionFunctions = useFormStore(
13
- (store) => validationFunctions.map((actionName) => store[actionName]),
6
+ const actions = useFormStore<ValidationActions>(
7
+ (store) => ({
8
+ addFieldValidation: store.addFieldValidation,
9
+ triggerFieldValidation: store.triggerFieldValidation,
10
+ clearErrors: store.clearErrors,
11
+ }),
14
12
  shallow,
15
13
  );
16
14
 
17
- return actions.reduce(
18
- (accum, actionName, i) => ({
19
- ...accum,
20
- [validationFunctions[i]]: actionName,
21
- }),
22
- {},
23
- ) as ValidationActions;
15
+ return actions;
24
16
  };
@@ -1,15 +1,18 @@
1
1
  import { shallow } from 'zustand/shallow';
2
+ import { useAccount } from '../../hooks/useAccount';
2
3
  import { useRouteExecutionStore } from './RouteExecutionStore';
3
4
  import type { RouteExecution } from './types';
4
5
  import { RouteExecutionStatus } from './types';
5
6
 
6
- export const useExecutingRoutesIds = (address?: string) => {
7
+ export const useExecutingRoutesIds = () => {
8
+ const { accounts } = useAccount();
9
+ const accountAddresses = accounts.map((account) => account.address);
7
10
  return useRouteExecutionStore(
8
11
  (state) =>
9
12
  (Object.values(state.routes) as RouteExecution[])
10
13
  .filter(
11
14
  (item) =>
12
- item.route.fromAddress === address &&
15
+ accountAddresses.includes(item.route.fromAddress) &&
13
16
  (item.status === RouteExecutionStatus.Pending ||
14
17
  item.status === RouteExecutionStatus.Failed),
15
18
  )
@@ -5,12 +5,14 @@ import type { WidgetConfig } from '../../types';
5
5
  import type { SettingsProps, SettingsState } from './types';
6
6
  import { SettingsToolTypes } from './types';
7
7
 
8
+ export const defaultSlippage = '0.5';
9
+
8
10
  export const defaultConfigurableSettings: Pick<
9
11
  SettingsState,
10
12
  'routePriority' | 'slippage' | 'gasPrice'
11
13
  > = {
12
14
  routePriority: 'RECOMMENDED',
13
- slippage: '0.5',
15
+ slippage: defaultSlippage,
14
16
  gasPrice: 'normal',
15
17
  };
16
18
 
package/types/widget.ts CHANGED
@@ -1,8 +1,9 @@
1
1
  import type {
2
2
  BaseToken,
3
+ ChainType,
3
4
  Order,
4
5
  RouteOptions,
5
- SDKOptions,
6
+ SDKConfig,
6
7
  StaticToken,
7
8
  Token,
8
9
  } from '@lifi/sdk';
@@ -14,6 +15,10 @@ import type {
14
15
  Theme,
15
16
  } from '@mui/material';
16
17
  import type { TypographyOptions } from '@mui/material/styles/createTypography';
18
+ import type {
19
+ CoinbaseWalletParameters,
20
+ WalletConnectParameters,
21
+ } from '@wagmi/connectors';
17
22
  import type { CSSProperties, ReactNode, RefObject } from 'react';
18
23
  import type { LanguageKey, LanguageResources } from '../providers';
19
24
  import type { SplitSubvariantOptions } from '../stores';
@@ -33,6 +38,7 @@ export type DisabledUIType = `${DisabledUI}`;
33
38
  export enum HiddenUI {
34
39
  Appearance = 'appearance',
35
40
  DrawerButton = 'drawerButton',
41
+ DrawerCloseButton = 'drawerCloseButton',
36
42
  History = 'history',
37
43
  Language = 'language',
38
44
  PoweredBy = 'poweredBy',
@@ -58,13 +64,20 @@ export type ThemeConfig = {
58
64
  components?: Pick<Components<Omit<Theme, 'components'>>, 'MuiAvatar'>;
59
65
  };
60
66
 
61
- export interface WidgetWalletManagement {
62
- connect(): Promise<void>;
67
+ export interface WidgetWalletConfig {
68
+ onConnect(): void;
69
+ walletConnect?: WalletConnectParameters;
70
+ coinbase?: CoinbaseWalletParameters;
71
+ }
72
+
73
+ export interface AllowDeny<T> {
74
+ allow?: T[];
75
+ deny?: T[];
63
76
  }
64
77
 
65
- export interface WidgetSDKOptions
78
+ export interface WidgetSDKConfig
66
79
  extends Omit<
67
- SDKOptions,
80
+ SDKConfig,
68
81
  | 'apiKey'
69
82
  | 'disableVersionCheck'
70
83
  | 'integrator'
@@ -125,41 +138,36 @@ export interface WidgetConfig {
125
138
  requiredUI?: RequiredUIType[];
126
139
  useRecommendedRoute?: boolean;
127
140
 
128
- walletManagement?: WidgetWalletManagement;
129
- sdkConfig?: WidgetSDKOptions;
141
+ walletConfig?: WidgetWalletConfig;
142
+ sdkConfig?: WidgetSDKConfig;
130
143
 
131
144
  buildUrl?: boolean;
132
145
  keyPrefix?: string;
133
146
 
134
- bridges?: {
135
- allow?: string[];
136
- deny?: string[];
137
- };
138
- exchanges?: {
139
- allow?: string[];
140
- deny?: string[];
141
- };
147
+ bridges?: AllowDeny<string>;
148
+ exchanges?: AllowDeny<string>;
142
149
  chains?: {
143
- allow?: number[];
144
- deny?: number[];
145
- };
150
+ from?: AllowDeny<number>;
151
+ to?: AllowDeny<number>;
152
+ types?: AllowDeny<ChainType>;
153
+ } & AllowDeny<number>;
146
154
  tokens?: {
147
155
  featured?: StaticToken[];
148
156
  include?: Token[];
149
- allow?: BaseToken[];
150
- deny?: BaseToken[];
151
- };
157
+ } & AllowDeny<BaseToken>;
152
158
  languages?: {
153
159
  default?: LanguageKey;
154
- allow?: LanguageKey[];
155
- deny?: LanguageKey[];
156
- };
160
+ } & AllowDeny<LanguageKey>;
157
161
  languageResources?: LanguageResources;
158
162
  }
159
163
 
160
164
  export type WidgetDrawerProps = {
161
165
  elementRef?: RefObject<HTMLDivElement>;
162
166
  open?: boolean;
167
+ /**
168
+ * Make sure to make the onClose callback stable (e.g. using useCallback) to avoid causing re-renders of the entire widget
169
+ */
170
+ onClose?(): void;
163
171
  };
164
172
 
165
173
  export interface WidgetConfigProps {
@@ -170,7 +170,7 @@ export const buildRouteFromTxHistory = (
170
170
  toAmount: receiving.amount ?? '',
171
171
  toAmountMin: receiving.amount ?? '',
172
172
  approvalAddress: '',
173
- executionDuration: 30,
173
+ executionDuration: 0,
174
174
  },
175
175
  tool: tx.tool,
176
176
  toolDetails: usedTool,
@@ -183,11 +183,17 @@ export const buildRouteFromTxHistory = (
183
183
  fromAmount: sending.amount,
184
184
  toAmount: receiving.amount,
185
185
  toToken: receiving.token,
186
- gasAmount: sending.gasAmount,
187
- gasAmountUSD: sending.gasAmountUSD,
188
- gasPrice: sending.gasPrice,
189
- gasToken: sending.gasToken,
190
- gasUsed: sending.gasUsed,
186
+ gasCosts: [
187
+ {
188
+ amount: sending.gasAmount,
189
+ amountUSD: sending.gasAmountUSD,
190
+ token: sending.gasToken,
191
+ estimate: '0',
192
+ limit: '0',
193
+ price: '0',
194
+ type: 'SEND',
195
+ },
196
+ ],
191
197
  },
192
198
  },
193
199
  ],
@@ -1,19 +1,21 @@
1
- import type { Route, Token } from '@lifi/sdk';
1
+ import type { FeeCost, GasCost, Route, Token } from '@lifi/sdk';
2
2
 
3
- export const getGasCostsBreakdown = (route: Route) => {
3
+ export interface FeesBreakdown {
4
+ amount: bigint;
5
+ amountUSD: number;
6
+ token: Token;
7
+ }
8
+
9
+ export const getGasCostsBreakdown = (route: Route): FeesBreakdown[] => {
4
10
  return Object.values(
5
11
  route.steps.reduce(
6
12
  (groupedGasCosts, step) => {
7
13
  if (step.estimate.gasCosts?.length) {
8
- const { token } = step.estimate.gasCosts[0];
9
- const gasCostAmount = step.estimate.gasCosts.reduce(
10
- (amount, gasCost) => amount + BigInt(gasCost.amount || 0),
11
- 0n,
12
- );
13
- const gasCostAmountUSD = step.estimate.gasCosts.reduce(
14
- (amount, gasCost) => amount + parseFloat(gasCost.amountUSD || '0'),
15
- 0,
16
- );
14
+ const {
15
+ token,
16
+ amount: gasCostAmount,
17
+ amountUSD: gasCostAmountUSD,
18
+ } = getStepFeeCostsBreakdown(step.estimate.gasCosts);
17
19
  const groupedGasCost = groupedGasCosts[token.chainId];
18
20
  const amount = groupedGasCost
19
21
  ? groupedGasCost.amount + gasCostAmount
@@ -30,19 +32,15 @@ export const getGasCostsBreakdown = (route: Route) => {
30
32
  }
31
33
  return groupedGasCosts;
32
34
  },
33
- {} as Record<
34
- number,
35
- {
36
- amount: bigint;
37
- amountUSD: number;
38
- token: Token;
39
- }
40
- >,
35
+ {} as Record<number, FeesBreakdown>,
41
36
  ),
42
37
  );
43
38
  };
44
39
 
45
- export const getFeeCostsBreakdown = (route: Route, included?: boolean) => {
40
+ export const getFeeCostsBreakdown = (
41
+ route: Route,
42
+ included?: boolean,
43
+ ): FeesBreakdown[] => {
46
44
  return Object.values(
47
45
  route.steps.reduce(
48
46
  (groupedFeeCosts, step) => {
@@ -53,15 +51,11 @@ export const getFeeCostsBreakdown = (route: Route, included?: boolean) => {
53
51
  );
54
52
  }
55
53
  if (feeCosts?.length) {
56
- const { token } = feeCosts[0];
57
- const feeCostAmount = feeCosts.reduce(
58
- (amount, feeCost) => amount + BigInt(feeCost.amount || 0),
59
- 0n,
60
- );
61
- const feeCostAmountUSD = feeCosts.reduce(
62
- (amount, feeCost) => amount + parseFloat(feeCost.amountUSD || '0'),
63
- 0,
64
- );
54
+ const {
55
+ token,
56
+ amount: feeCostAmount,
57
+ amountUSD: feeCostAmountUSD,
58
+ } = getStepFeeCostsBreakdown(feeCosts);
65
59
  const groupedFeeCost = groupedFeeCosts[token.chainId];
66
60
  const amount = groupedFeeCost
67
61
  ? groupedFeeCost.amount + feeCostAmount
@@ -78,14 +72,26 @@ export const getFeeCostsBreakdown = (route: Route, included?: boolean) => {
78
72
  }
79
73
  return groupedFeeCosts;
80
74
  },
81
- {} as Record<
82
- number,
83
- {
84
- amount: bigint;
85
- amountUSD: number;
86
- token: Token;
87
- }
88
- >,
75
+ {} as Record<number, FeesBreakdown>,
89
76
  ),
90
77
  );
91
78
  };
79
+
80
+ export const getStepFeeCostsBreakdown = (
81
+ feeCosts: FeeCost[] | GasCost[],
82
+ ): FeesBreakdown => {
83
+ const token = feeCosts[0].token;
84
+ const amount = feeCosts.reduce(
85
+ (amount, feeCost) => amount + BigInt(feeCost.amount || 0),
86
+ 0n,
87
+ );
88
+ const amountUSD = feeCosts.reduce(
89
+ (amount, feeCost) => amount + parseFloat(feeCost.amountUSD || '0'),
90
+ 0,
91
+ );
92
+ return {
93
+ amount,
94
+ amountUSD,
95
+ token,
96
+ };
97
+ };
package/utils/index.ts CHANGED
@@ -2,8 +2,10 @@ export * from './colors';
2
2
  export * from './deepMerge';
3
3
  export * from './elements';
4
4
  export * from './enum';
5
+ export * from './fees';
5
6
  export * from './format';
6
7
  export * from './input';
8
+ export * from './item';
7
9
  export * from './navigationRoutes';
8
10
  export * from './svm';
9
11
  export * from './wallet';
@@ -1,10 +1,6 @@
1
- export const isItemAllowed = <T>(
2
- itemId: T,
3
- items?: {
4
- allow?: T[];
5
- deny?: T[];
6
- },
7
- ) => {
1
+ import type { AllowDeny } from '../types';
2
+
3
+ export const isItemAllowed = <T>(itemId: T, items?: AllowDeny<T>) => {
8
4
  if (items?.allow?.length) {
9
5
  return items.allow.includes(itemId);
10
6
  }
@@ -1 +0,0 @@
1
- {"version":3,"file":"FormPriceHelperText.js","sourceRoot":"","sources":["../../../components/AmountInput/FormPriceHelperText.tsx"],"names":[],"mappings":";;;;AACA,4CAAqE;AACrE,iDAA+C;AAC/C,uCAAqD;AAErD,uCAAkE;AAClE,yCAA6D;AAEtD,MAAM,mBAAmB,GAA4B,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE;IAC3E,MAAM,CAAC,OAAO,EAAE,YAAY,CAAC,GAAG,IAAA,uBAAc,EAC5C,sBAAa,CAAC,WAAW,CAAC,QAAQ,CAAC,EACnC,sBAAa,CAAC,WAAW,CAAC,QAAQ,CAAC,CACpC,CAAC;IACF,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,GAAG,IAAA,8BAAsB,EAAC,OAAO,EAAE,YAAY,CAAC,CAAC;IAE3E,OAAO,CACL,uBAAC,+BAAuB,IACtB,QAAQ,EAAE,QAAQ,EAClB,SAAS,EAAE,SAAS,EACpB,YAAY,EAAE,YAAY,EAC1B,KAAK,EAAE,KAAK,GACZ,CACH,CAAC;AACJ,CAAC,CAAC;AAfW,QAAA,mBAAmB,uBAe9B;AAEK,MAAM,uBAAuB,GAMhC,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,YAAY,EAAE,KAAK,EAAE,EAAE,EAAE;IACnD,MAAM,EAAE,CAAC,EAAE,GAAG,IAAA,8BAAc,GAAE,CAAC;IAC/B,MAAM,CAAC,MAAM,CAAC,GAAG,IAAA,uBAAc,EAAC,sBAAa,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC;IAEtE,MAAM,oBAAoB,GAAG,IAAA,wBAAgB,EAAC,MAAM,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC;IAEvE,OAAO,CACL,wBAAC,yBAAc,IACb,SAAS,EAAC,KAAK,EACf,EAAE,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,EAAE,CAAC,EAAE,aAEnE,uBAAC,qBAAU,IACT,KAAK,EAAE,oBAAoB,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,UAAU,EAC3D,UAAU,EAAE,GAAG,EACf,QAAQ,EAAE,EAAE,EACZ,UAAU,EAAE,CAAC,EACb,UAAU,EAAE,MAAM,EAClB,IAAI,EAAE,CAAC,EACP,EAAE,EAAE;oBACF,SAAS,EAAE,YAAY;oBACvB,YAAY,EAAE,YAAY;iBAC3B,YAEA,CAAC,CAAC,iBAAiB,EAAE;oBACpB,KAAK,EAAE,oBAAoB;iBAC5B,CAAC,GACS,EACZ,SAAS,IAAI,YAAY,CAAC,CAAC,CAAC,CAC3B,uBAAC,mBAAQ,IACP,OAAO,EAAC,MAAM,EACd,KAAK,EAAE,EAAE,EACT,MAAM,EAAE,EAAE,EACV,EAAE,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE,GAC1B,CACH,CAAC,CAAC,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,CAClB,uBAAC,qBAAU,IACT,UAAU,EAAE,GAAG,EACf,QAAQ,EAAE,EAAE,EACZ,KAAK,EAAC,gBAAgB,EACtB,UAAU,EAAE,MAAM,EAClB,EAAE,EAAE,IAAI,YAEP,KAAK,CAAC,CAAC,eAAe,EAAE;oBACvB,KAAK,EAAE,IAAA,yBAAiB,EAAC,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,QAAQ,CAAC;iBACvD,CAAC,EAAE,GACO,CACd,CAAC,CAAC,CAAC,IAAI,IACO,CAClB,CAAC;AACJ,CAAC,CAAC;AAvDW,QAAA,uBAAuB,2BAuDlC"}