@lifi/widget 3.25.0-beta.5 → 3.26.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (274) hide show
  1. package/CHANGELOG.md +43 -0
  2. package/dist/esm/components/AmountInput/AmountInput.js +75 -17
  3. package/dist/esm/components/AmountInput/AmountInput.js.map +1 -1
  4. package/dist/esm/components/AmountInput/AmountInput.style.d.ts +4 -0
  5. package/dist/esm/components/AmountInput/AmountInput.style.js +11 -0
  6. package/dist/esm/components/AmountInput/AmountInput.style.js.map +1 -1
  7. package/dist/esm/components/AmountInput/AmountInputAdornment.style.d.ts +1 -0
  8. package/dist/esm/components/AmountInput/AmountInputAdornment.style.js +64 -5
  9. package/dist/esm/components/AmountInput/AmountInputAdornment.style.js.map +1 -1
  10. package/dist/esm/components/AmountInput/AmountInputEndAdornment.js +20 -7
  11. package/dist/esm/components/AmountInput/AmountInputEndAdornment.js.map +1 -1
  12. package/dist/esm/components/AmountInput/PriceFormHelperText.js +41 -15
  13. package/dist/esm/components/AmountInput/PriceFormHelperText.js.map +1 -1
  14. package/dist/esm/components/AmountInput/PriceFormHelperText.style.d.ts +1 -0
  15. package/dist/esm/components/AmountInput/PriceFormHelperText.style.js +29 -0
  16. package/dist/esm/components/AmountInput/PriceFormHelperText.style.js.map +1 -0
  17. package/dist/esm/components/AppContainer.js +1 -0
  18. package/dist/esm/components/AppContainer.js.map +1 -1
  19. package/dist/esm/components/ChainSelect/useChainSelect.js +2 -4
  20. package/dist/esm/components/ChainSelect/useChainSelect.js.map +1 -1
  21. package/dist/esm/components/Chains/ChainList.d.ts +2 -3
  22. package/dist/esm/components/Chains/ChainList.js +4 -3
  23. package/dist/esm/components/Chains/ChainList.js.map +1 -1
  24. package/dist/esm/components/Chains/ChainList.style.js +10 -3
  25. package/dist/esm/components/Chains/ChainList.style.js.map +1 -1
  26. package/dist/esm/components/Chains/ChainListItem.d.ts +4 -1
  27. package/dist/esm/components/Chains/ChainListItem.js +14 -2
  28. package/dist/esm/components/Chains/ChainListItem.js.map +1 -1
  29. package/dist/esm/components/Chains/PinChainButton.d.ts +7 -0
  30. package/dist/esm/components/Chains/PinChainButton.js +34 -0
  31. package/dist/esm/components/Chains/PinChainButton.js.map +1 -0
  32. package/dist/esm/components/Chains/SelectChainContent.js +15 -16
  33. package/dist/esm/components/Chains/SelectChainContent.js.map +1 -1
  34. package/dist/esm/components/Chains/VirtualizedChainList.d.ts +2 -1
  35. package/dist/esm/components/Chains/VirtualizedChainList.js +45 -9
  36. package/dist/esm/components/Chains/VirtualizedChainList.js.map +1 -1
  37. package/dist/esm/components/Header/NavigationHeader.js +5 -1
  38. package/dist/esm/components/Header/NavigationHeader.js.map +1 -1
  39. package/dist/esm/components/Messages/MinFromAmountUSDMessage.d.ts +6 -0
  40. package/dist/esm/components/Messages/MinFromAmountUSDMessage.js +15 -0
  41. package/dist/esm/components/Messages/MinFromAmountUSDMessage.js.map +1 -0
  42. package/dist/esm/components/Messages/WarningMessages.js +3 -0
  43. package/dist/esm/components/Messages/WarningMessages.js.map +1 -1
  44. package/dist/esm/components/Messages/useMessageQueue.js +15 -4
  45. package/dist/esm/components/Messages/useMessageQueue.js.map +1 -1
  46. package/dist/esm/components/Routes/RoutesContent.js +3 -2
  47. package/dist/esm/components/Routes/RoutesContent.js.map +1 -1
  48. package/dist/esm/components/Routes/RoutesExpanded.style.js +3 -2
  49. package/dist/esm/components/Routes/RoutesExpanded.style.js.map +1 -1
  50. package/dist/esm/components/SendToWallet/SendToWalletButton.js +1 -1
  51. package/dist/esm/components/SendToWallet/SendToWalletButton.js.map +1 -1
  52. package/dist/esm/components/SendToWallet/SendToWalletExpandButton.js +3 -3
  53. package/dist/esm/components/SendToWallet/SendToWalletExpandButton.js.map +1 -1
  54. package/dist/esm/components/Step/StepProcess.js +3 -8
  55. package/dist/esm/components/Step/StepProcess.js.map +1 -1
  56. package/dist/esm/components/TokenList/TokenDetailsSheet.js +0 -2
  57. package/dist/esm/components/TokenList/TokenDetailsSheet.js.map +1 -1
  58. package/dist/esm/components/TokenList/TokenDetailsSheetContent.js +27 -4
  59. package/dist/esm/components/TokenList/TokenDetailsSheetContent.js.map +1 -1
  60. package/dist/esm/components/TokenList/TokenList.js +10 -1
  61. package/dist/esm/components/TokenList/TokenList.js.map +1 -1
  62. package/dist/esm/components/TokenList/TokenListItem.js +3 -1
  63. package/dist/esm/components/TokenList/TokenListItem.js.map +1 -1
  64. package/dist/esm/components/TokenList/useTokenSelect.js +2 -4
  65. package/dist/esm/components/TokenList/useTokenSelect.js.map +1 -1
  66. package/dist/esm/config/version.d.ts +1 -1
  67. package/dist/esm/config/version.js +1 -1
  68. package/dist/esm/config/version.js.map +1 -1
  69. package/dist/esm/hooks/useFromAmountThreshold.d.ts +4 -0
  70. package/dist/esm/hooks/useFromAmountThreshold.js +23 -0
  71. package/dist/esm/hooks/useFromAmountThreshold.js.map +1 -0
  72. package/dist/esm/hooks/useGasSufficiency.js +3 -3
  73. package/dist/esm/hooks/useGasSufficiency.js.map +1 -1
  74. package/dist/esm/hooks/useLongPress.d.ts +7 -0
  75. package/dist/esm/hooks/useLongPress.js +41 -0
  76. package/dist/esm/hooks/useLongPress.js.map +1 -0
  77. package/dist/esm/hooks/useNavigateBack.d.ts +1 -1
  78. package/dist/esm/hooks/useNavigateBack.js +8 -2
  79. package/dist/esm/hooks/useNavigateBack.js.map +1 -1
  80. package/dist/esm/hooks/useRouteExecution.js +1 -2
  81. package/dist/esm/hooks/useRouteExecution.js.map +1 -1
  82. package/dist/esm/hooks/useRoutes.js +19 -4
  83. package/dist/esm/hooks/useRoutes.js.map +1 -1
  84. package/dist/esm/hooks/useSettingMonitor.js +1 -2
  85. package/dist/esm/hooks/useSettingMonitor.js.map +1 -1
  86. package/dist/esm/hooks/useTokenAddressBalance.js +4 -1
  87. package/dist/esm/hooks/useTokenAddressBalance.js.map +1 -1
  88. package/dist/esm/hooks/useTokenBalances.d.ts +1 -2
  89. package/dist/esm/hooks/useTokenBalances.js +2 -3
  90. package/dist/esm/hooks/useTokenBalances.js.map +1 -1
  91. package/dist/esm/hooks/useTokenSearch.d.ts +2 -2
  92. package/dist/esm/hooks/useTokenSearch.js +5 -2
  93. package/dist/esm/hooks/useTokenSearch.js.map +1 -1
  94. package/dist/esm/hooks/useTokens.d.ts +1 -2
  95. package/dist/esm/hooks/useTokens.js +3 -12
  96. package/dist/esm/hooks/useTokens.js.map +1 -1
  97. package/dist/esm/hooks/useTools.js +2 -2
  98. package/dist/esm/hooks/useTools.js.map +1 -1
  99. package/dist/esm/i18n/bn.json +5 -2
  100. package/dist/esm/i18n/de.json +5 -2
  101. package/dist/esm/i18n/en.json +5 -2
  102. package/dist/esm/i18n/es.json +5 -2
  103. package/dist/esm/i18n/fr.json +5 -2
  104. package/dist/esm/i18n/hi.json +5 -2
  105. package/dist/esm/i18n/id.json +5 -2
  106. package/dist/esm/i18n/it.json +5 -2
  107. package/dist/esm/i18n/ja.json +5 -2
  108. package/dist/esm/i18n/ko.json +5 -2
  109. package/dist/esm/i18n/pl.json +4 -1
  110. package/dist/esm/i18n/pt.json +5 -2
  111. package/dist/esm/i18n/th.json +5 -2
  112. package/dist/esm/i18n/tr.json +5 -2
  113. package/dist/esm/i18n/uk.json +5 -2
  114. package/dist/esm/i18n/vi.json +5 -2
  115. package/dist/esm/i18n/zh.json +5 -2
  116. package/dist/esm/pages/SelectEnabledToolsPage.js +4 -2
  117. package/dist/esm/pages/SelectEnabledToolsPage.js.map +1 -1
  118. package/dist/esm/pages/SelectTokenPage/SearchTokenInput.js +14 -7
  119. package/dist/esm/pages/SelectTokenPage/SearchTokenInput.js.map +1 -1
  120. package/dist/esm/pages/SettingsPage/BridgeAndExchangeSettings.js +1 -2
  121. package/dist/esm/pages/SettingsPage/BridgeAndExchangeSettings.js.map +1 -1
  122. package/dist/esm/pages/TransactionPage/TransactionPage.js +5 -3
  123. package/dist/esm/pages/TransactionPage/TransactionPage.js.map +1 -1
  124. package/dist/esm/stores/bookmarks/BookmarkStore.d.ts +1 -2
  125. package/dist/esm/stores/bookmarks/BookmarkStore.js +3 -3
  126. package/dist/esm/stores/bookmarks/BookmarkStore.js.map +1 -1
  127. package/dist/esm/stores/bookmarks/useBookmarkActions.js +1 -2
  128. package/dist/esm/stores/bookmarks/useBookmarkActions.js.map +1 -1
  129. package/dist/esm/stores/bookmarks/useBookmarks.js +1 -2
  130. package/dist/esm/stores/bookmarks/useBookmarks.js.map +1 -1
  131. package/dist/esm/stores/chains/ChainOrderStore.d.ts +1 -1
  132. package/dist/esm/stores/chains/ChainOrderStore.js +20 -7
  133. package/dist/esm/stores/chains/ChainOrderStore.js.map +1 -1
  134. package/dist/esm/stores/chains/createChainOrderStore.js +19 -1
  135. package/dist/esm/stores/chains/createChainOrderStore.js.map +1 -1
  136. package/dist/esm/stores/chains/types.d.ts +2 -0
  137. package/dist/esm/stores/chains/useChainOrder.js +1 -2
  138. package/dist/esm/stores/chains/useChainOrder.js.map +1 -1
  139. package/dist/esm/stores/form/useFieldActions.js +1 -2
  140. package/dist/esm/stores/form/useFieldActions.js.map +1 -1
  141. package/dist/esm/stores/form/useFieldValues.js +1 -2
  142. package/dist/esm/stores/form/useFieldValues.js.map +1 -1
  143. package/dist/esm/stores/form/useFormStore.d.ts +1 -2
  144. package/dist/esm/stores/form/useFormStore.js +3 -3
  145. package/dist/esm/stores/form/useFormStore.js.map +1 -1
  146. package/dist/esm/stores/form/useTouchedFields.js +1 -2
  147. package/dist/esm/stores/form/useTouchedFields.js.map +1 -1
  148. package/dist/esm/stores/form/useValidation.js +5 -2
  149. package/dist/esm/stores/form/useValidation.js.map +1 -1
  150. package/dist/esm/stores/form/useValidationActions.js +1 -2
  151. package/dist/esm/stores/form/useValidationActions.js.map +1 -1
  152. package/dist/esm/stores/header/useHeaderStore.d.ts +1 -1
  153. package/dist/esm/stores/header/useHeaderStore.js +5 -5
  154. package/dist/esm/stores/header/useHeaderStore.js.map +1 -1
  155. package/dist/esm/stores/inputMode/useInputModeStore.d.ts +9 -0
  156. package/dist/esm/stores/inputMode/useInputModeStore.js +19 -0
  157. package/dist/esm/stores/inputMode/useInputModeStore.js.map +1 -0
  158. package/dist/esm/stores/routes/RouteExecutionStore.d.ts +1 -1
  159. package/dist/esm/stores/routes/RouteExecutionStore.js +3 -2
  160. package/dist/esm/stores/routes/RouteExecutionStore.js.map +1 -1
  161. package/dist/esm/stores/routes/useExecutingRoutesIds.js +1 -2
  162. package/dist/esm/stores/routes/useExecutingRoutesIds.js.map +1 -1
  163. package/dist/esm/stores/settings/useSendToWalletStore.d.ts +2 -1
  164. package/dist/esm/stores/settings/useSendToWalletStore.js +6 -3
  165. package/dist/esm/stores/settings/useSendToWalletStore.js.map +1 -1
  166. package/dist/esm/stores/settings/useSettings.js +1 -2
  167. package/dist/esm/stores/settings/useSettings.js.map +1 -1
  168. package/dist/esm/stores/settings/useSettingsActions.js +1 -2
  169. package/dist/esm/stores/settings/useSettingsActions.js.map +1 -1
  170. package/dist/esm/stores/settings/useSettingsStore.d.ts +2 -1
  171. package/dist/esm/stores/settings/useSettingsStore.js +5 -1
  172. package/dist/esm/stores/settings/useSettingsStore.js.map +1 -1
  173. package/dist/esm/stores/settings/useSplitSubvariantStore.js +2 -1
  174. package/dist/esm/stores/settings/useSplitSubvariantStore.js.map +1 -1
  175. package/dist/esm/themes/createTheme.js +5 -1
  176. package/dist/esm/themes/createTheme.js.map +1 -1
  177. package/dist/esm/types/widget.d.ts +3 -1
  178. package/dist/esm/types/widget.js +1 -0
  179. package/dist/esm/types/widget.js.map +1 -1
  180. package/dist/esm/utils/format.d.ts +4 -0
  181. package/dist/esm/utils/format.js +26 -0
  182. package/dist/esm/utils/format.js.map +1 -1
  183. package/dist/esm/utils/getPriceImpact.d.ts +2 -2
  184. package/dist/esm/utils/getPriceImpact.js.map +1 -1
  185. package/package.json +12 -12
  186. package/package.json.tmp +14 -14
  187. package/src/components/AmountInput/AmountInput.style.tsx +13 -0
  188. package/src/components/AmountInput/AmountInput.tsx +91 -18
  189. package/src/components/AmountInput/AmountInputAdornment.style.tsx +66 -5
  190. package/src/components/AmountInput/AmountInputEndAdornment.tsx +40 -10
  191. package/src/components/AmountInput/PriceFormHelperText.style.tsx +29 -0
  192. package/src/components/AmountInput/PriceFormHelperText.tsx +63 -19
  193. package/src/components/AppContainer.tsx +1 -0
  194. package/src/components/ChainSelect/useChainSelect.ts +2 -4
  195. package/src/components/Chains/ChainList.style.tsx +10 -2
  196. package/src/components/Chains/ChainList.tsx +6 -5
  197. package/src/components/Chains/ChainListItem.tsx +29 -0
  198. package/src/components/Chains/PinChainButton.tsx +51 -0
  199. package/src/components/Chains/SelectChainContent.tsx +18 -21
  200. package/src/components/Chains/VirtualizedChainList.tsx +67 -20
  201. package/src/components/Header/NavigationHeader.tsx +10 -1
  202. package/src/components/Messages/MinFromAmountUSDMessage.tsx +35 -0
  203. package/src/components/Messages/WarningMessages.tsx +8 -0
  204. package/src/components/Messages/useMessageQueue.ts +16 -4
  205. package/src/components/Routes/RoutesContent.tsx +6 -2
  206. package/src/components/Routes/RoutesExpanded.style.ts +3 -2
  207. package/src/components/SendToWallet/SendToWalletButton.tsx +1 -1
  208. package/src/components/SendToWallet/SendToWalletExpandButton.tsx +8 -3
  209. package/src/components/Step/StepProcess.tsx +3 -8
  210. package/src/components/TokenList/TokenDetailsSheet.tsx +0 -2
  211. package/src/components/TokenList/TokenDetailsSheetContent.tsx +50 -3
  212. package/src/components/TokenList/TokenList.tsx +24 -1
  213. package/src/components/TokenList/TokenListItem.tsx +6 -0
  214. package/src/components/TokenList/useTokenSelect.ts +2 -4
  215. package/src/config/version.ts +1 -1
  216. package/src/hooks/useFromAmountThreshold.ts +35 -0
  217. package/src/hooks/useGasSufficiency.ts +4 -4
  218. package/src/hooks/useLongPress.ts +51 -0
  219. package/src/hooks/useNavigateBack.ts +26 -17
  220. package/src/hooks/useRouteExecution.ts +1 -3
  221. package/src/hooks/useRoutes.ts +24 -4
  222. package/src/hooks/useSettingMonitor.ts +7 -11
  223. package/src/hooks/useTokenAddressBalance.ts +6 -1
  224. package/src/hooks/useTokenBalances.ts +3 -10
  225. package/src/hooks/useTokenSearch.ts +7 -4
  226. package/src/hooks/useTokens.ts +4 -31
  227. package/src/hooks/useTools.ts +2 -2
  228. package/src/i18n/bn.json +5 -2
  229. package/src/i18n/de.json +5 -2
  230. package/src/i18n/en.json +5 -2
  231. package/src/i18n/es.json +5 -2
  232. package/src/i18n/fr.json +5 -2
  233. package/src/i18n/hi.json +5 -2
  234. package/src/i18n/id.json +5 -2
  235. package/src/i18n/it.json +5 -2
  236. package/src/i18n/ja.json +5 -2
  237. package/src/i18n/ko.json +5 -2
  238. package/src/i18n/pl.json +4 -1
  239. package/src/i18n/pt.json +5 -2
  240. package/src/i18n/th.json +5 -2
  241. package/src/i18n/tr.json +5 -2
  242. package/src/i18n/uk.json +5 -2
  243. package/src/i18n/vi.json +5 -2
  244. package/src/i18n/zh.json +5 -2
  245. package/src/pages/SelectEnabledToolsPage.tsx +4 -5
  246. package/src/pages/SelectTokenPage/SearchTokenInput.tsx +19 -7
  247. package/src/pages/SettingsPage/BridgeAndExchangeSettings.tsx +1 -2
  248. package/src/pages/TransactionPage/TransactionPage.tsx +17 -9
  249. package/src/stores/bookmarks/BookmarkStore.tsx +3 -6
  250. package/src/stores/bookmarks/useBookmarkActions.ts +9 -13
  251. package/src/stores/bookmarks/useBookmarks.ts +1 -3
  252. package/src/stores/chains/ChainOrderStore.tsx +26 -8
  253. package/src/stores/chains/createChainOrderStore.ts +19 -1
  254. package/src/stores/chains/types.ts +2 -0
  255. package/src/stores/chains/useChainOrder.ts +1 -5
  256. package/src/stores/form/useFieldActions.ts +10 -14
  257. package/src/stores/form/useFieldValues.ts +1 -3
  258. package/src/stores/form/useFormStore.ts +3 -6
  259. package/src/stores/form/useTouchedFields.ts +1 -2
  260. package/src/stores/form/useValidation.ts +5 -5
  261. package/src/stores/form/useValidationActions.ts +5 -9
  262. package/src/stores/header/useHeaderStore.tsx +5 -14
  263. package/src/stores/inputMode/useInputModeStore.ts +29 -0
  264. package/src/stores/routes/RouteExecutionStore.tsx +3 -3
  265. package/src/stores/routes/useExecutingRoutesIds.ts +14 -17
  266. package/src/stores/settings/useSendToWalletStore.ts +11 -8
  267. package/src/stores/settings/useSettings.ts +8 -11
  268. package/src/stores/settings/useSettingsActions.ts +8 -12
  269. package/src/stores/settings/useSettingsStore.ts +8 -1
  270. package/src/stores/settings/useSplitSubvariantStore.tsx +2 -1
  271. package/src/themes/createTheme.ts +5 -1
  272. package/src/types/widget.ts +2 -0
  273. package/src/utils/format.ts +33 -0
  274. package/src/utils/getPriceImpact.ts +2 -2
@@ -1,4 +1,4 @@
1
- import type { Route, Token } from '@lifi/sdk'
1
+ import type { Route, Token, TokensResponse } from '@lifi/sdk'
2
2
  import {
3
3
  ChainType,
4
4
  convertQuoteToRoute,
@@ -406,6 +406,24 @@ export const useRoutes = ({ observableRoute }: RoutesProps = {}) => {
406
406
  // Update local tokens cache to keep priceUSD in sync
407
407
  const { fromToken, toToken } = routesResult.routes[0]
408
408
  ;[fromToken, toToken].forEach((token) => {
409
+ queryClient.setQueriesData<TokensResponse>(
410
+ { queryKey: [getQueryKey('tokens', keyPrefix)] },
411
+ (data) => {
412
+ if (data) {
413
+ const clonedData = { ...data }
414
+ const index = clonedData.tokens?.[token.chainId]?.findIndex(
415
+ (dataToken) => dataToken.address === token.address
416
+ )
417
+ if (index >= 0) {
418
+ clonedData.tokens[token.chainId][index] = {
419
+ ...clonedData.tokens[token.chainId][index],
420
+ ...token,
421
+ }
422
+ }
423
+ return clonedData
424
+ }
425
+ }
426
+ )
409
427
  queryClient.setQueriesData<Token[]>(
410
428
  {
411
429
  queryKey: [
@@ -420,9 +438,11 @@ export const useRoutes = ({ observableRoute }: RoutesProps = {}) => {
420
438
  const index = clonedData.findIndex(
421
439
  (dataToken) => dataToken.address === token.address
422
440
  )
423
- clonedData[index] = {
424
- ...clonedData[index],
425
- ...token,
441
+ if (index >= 0) {
442
+ clonedData[index] = {
443
+ ...clonedData[index],
444
+ ...token,
445
+ }
426
446
  }
427
447
  return clonedData
428
448
  }
@@ -1,4 +1,3 @@
1
- import { shallow } from 'zustand/shallow'
2
1
  import { useWidgetConfig } from '../providers/WidgetProvider/WidgetProvider.js'
3
2
  import { useSettingsActions } from '../stores/settings/useSettingsActions.js'
4
3
  import {
@@ -14,16 +13,13 @@ export const useSettingMonitor = () => {
14
13
  routePriority,
15
14
  slippage,
16
15
  gasPrice,
17
- ] = useSettingsStore(
18
- (state) => [
19
- state.disabledBridges,
20
- state.disabledExchanges,
21
- state.routePriority,
22
- state.slippage,
23
- state.gasPrice,
24
- ],
25
- shallow
26
- )
16
+ ] = useSettingsStore((state) => [
17
+ state.disabledBridges,
18
+ state.disabledExchanges,
19
+ state.routePriority,
20
+ state.slippage,
21
+ state.gasPrice,
22
+ ])
27
23
  const { tools } = useTools()
28
24
  const config = useWidgetConfig()
29
25
  const { setDefaultSettings, resetSettings } = useSettingsActions()
@@ -11,9 +11,14 @@ export const useTokenAddressBalance = (
11
11
 
12
12
  const token = useMemo(() => {
13
13
  if (tokenAddress && chainId) {
14
- const token = (tokensWithBalance ?? tokens)?.find(
14
+ let token = tokensWithBalance?.find(
15
15
  (token) => token.address === tokenAddress && token.chainId === chainId
16
16
  )
17
+ if (!token) {
18
+ token = tokens?.find(
19
+ (token) => token.address === tokenAddress && token.chainId === chainId
20
+ )
21
+ }
17
22
  return token as TokenAmount
18
23
  }
19
24
  }, [chainId, tokenAddress, tokens, tokensWithBalance])
@@ -3,21 +3,15 @@ import { useAccount } from '@lifi/wallet-management'
3
3
  import { useQuery } from '@tanstack/react-query'
4
4
  import { formatUnits } from 'viem'
5
5
  import { useWidgetConfig } from '../providers/WidgetProvider/WidgetProvider.js'
6
- import type { FormType } from '../stores/form/types.js'
7
6
  import type { TokenAmount } from '../types/token.js'
8
7
  import { getQueryKey } from '../utils/queries.js'
9
8
  import { useTokens } from './useTokens.js'
10
9
 
11
10
  const defaultRefetchInterval = 32_000
12
11
 
13
- export const useTokenBalances = (
14
- selectedChainId?: number,
15
- formType?: FormType
16
- ) => {
17
- const { tokens, featuredTokens, popularTokens, chain, isLoading } = useTokens(
18
- selectedChainId,
19
- formType
20
- )
12
+ export const useTokenBalances = (selectedChainId?: number) => {
13
+ const { tokens, featuredTokens, popularTokens, chain, isLoading } =
14
+ useTokens(selectedChainId)
21
15
  const { account } = useAccount({ chainType: chain?.chainType })
22
16
  const { keyPrefix } = useWidgetConfig()
23
17
 
@@ -36,7 +30,6 @@ export const useTokenBalances = (
36
30
  account.address,
37
31
  selectedChainId,
38
32
  tokens?.length,
39
- formType,
40
33
  ],
41
34
  queryFn: async ({ queryKey: [, accountAddress] }) => {
42
35
  const tokensWithBalance: TokenAmount[] = await getTokenBalances(
@@ -2,12 +2,12 @@ import {
2
2
  type BaseToken,
3
3
  type ChainId,
4
4
  getToken,
5
+ type TokenExtended,
5
6
  type TokensResponse,
6
7
  } from '@lifi/sdk'
7
8
  import { useQuery, useQueryClient } from '@tanstack/react-query'
8
9
  import { useWidgetConfig } from '../providers/WidgetProvider/WidgetProvider.js'
9
10
  import type { FormType } from '../stores/form/types.js'
10
- import type { TokenAmount } from '../types/token.js'
11
11
  import { getConfigItemSets, isFormItemAllowed } from '../utils/item.js'
12
12
  import { getQueryKey } from '../utils/queries.js'
13
13
 
@@ -61,14 +61,17 @@ export const useTokenSearch = (
61
61
  (t) => t.address === token.address
62
62
  )
63
63
  ) {
64
- const clonedData = { ...data }
65
- clonedData.tokens[chainId as number]?.push(token as TokenAmount)
64
+ const clonedData = { ...data, tokens: { ...data.tokens } }
65
+ clonedData.tokens[chainId as number] = [
66
+ ...(clonedData.tokens[chainId as number] ?? []),
67
+ token,
68
+ ]
66
69
  return clonedData
67
70
  }
68
71
  }
69
72
  )
70
73
  }
71
- return token as TokenAmount
74
+ return token as TokenExtended
72
75
  },
73
76
 
74
77
  enabled: Boolean(chainId && tokenQuery && enabled),
@@ -1,14 +1,12 @@
1
- import { type BaseToken, ChainType, getTokens } from '@lifi/sdk'
1
+ import { ChainType, getTokens } from '@lifi/sdk'
2
2
  import { useQuery } from '@tanstack/react-query'
3
3
  import { useMemo } from 'react'
4
4
  import { useWidgetConfig } from '../providers/WidgetProvider/WidgetProvider.js'
5
- import type { FormType } from '../stores/form/types.js'
6
5
  import type { TokenAmount } from '../types/token.js'
7
- import { getConfigItemSets, isFormItemAllowed } from '../utils/item.js'
8
6
  import { getQueryKey } from '../utils/queries.js'
9
7
  import { useChains } from './useChains.js'
10
8
 
11
- export const useTokens = (selectedChainId?: number, formType?: FormType) => {
9
+ export const useTokens = (selectedChainId?: number) => {
12
10
  const { tokens: configTokens, keyPrefix } = useWidgetConfig()
13
11
  const { data, isLoading } = useQuery({
14
12
  queryKey: [getQueryKey('tokens', keyPrefix)],
@@ -21,8 +19,8 @@ export const useTokens = (selectedChainId?: number, formType?: FormType) => {
21
19
  ChainType.MVM,
22
20
  ],
23
21
  }),
24
- refetchInterval: 3_600_000,
25
- staleTime: 3_600_000,
22
+ refetchInterval: 300_000,
23
+ staleTime: 300_000,
26
24
  })
27
25
  const {
28
26
  chains,
@@ -47,30 +45,6 @@ export const useTokens = (selectedChainId?: number, formType?: FormType) => {
47
45
  filteredTokens = [...includedTokens, ...filteredTokens]
48
46
  }
49
47
 
50
- // Filter config tokens by chain before checking if token is allowed
51
- const filteredConfigTokens = getConfigItemSets(
52
- configTokens,
53
- (tokens: BaseToken[]) =>
54
- new Set(
55
- tokens
56
- .filter((t) => t.chainId === selectedChainId)
57
- .map((t) => t.address)
58
- ),
59
- formType
60
- )
61
-
62
- // Get the appropriate allow/deny lists based on formType
63
- filteredTokens = filteredTokens.filter(
64
- (token) =>
65
- token.chainId === selectedChainId &&
66
- isFormItemAllowed(
67
- token,
68
- filteredConfigTokens,
69
- formType,
70
- (t) => t.address
71
- )
72
- )
73
-
74
48
  const filteredTokensMap = new Map(
75
49
  filteredTokens.map((token) => [token.address, token])
76
50
  )
@@ -123,7 +97,6 @@ export const useTokens = (selectedChainId?: number, formType?: FormType) => {
123
97
  getChainById,
124
98
  isSupportedChainsLoading,
125
99
  selectedChainId,
126
- formType,
127
100
  ])
128
101
 
129
102
  return {
@@ -1,7 +1,7 @@
1
1
  import { getTools, type ToolsResponse } from '@lifi/sdk'
2
2
  import { useQuery } from '@tanstack/react-query'
3
3
  import { useWidgetConfig } from '../providers/WidgetProvider/WidgetProvider.js'
4
- import { useSettingsStore } from '../stores/settings/useSettingsStore.js'
4
+ import { settingsStore } from '../stores/settings/useSettingsStore.js'
5
5
  import { getConfigItemSets, isItemAllowedForSets } from '../utils/item.js'
6
6
  import { getQueryKey } from '../utils/queries.js'
7
7
 
@@ -33,7 +33,7 @@ export const useTools = () => {
33
33
  isItemAllowedForSets(exchange.key, exchangesConfigSets)
34
34
  ),
35
35
  }
36
- const { initializeTools } = useSettingsStore.getState()
36
+ const { initializeTools } = settingsStore.getState()
37
37
  initializeTools(
38
38
  'Bridges',
39
39
  result.bridges.map((bridge) => bridge.key)
package/src/i18n/bn.json CHANGED
@@ -36,7 +36,7 @@
36
36
  "getGas": "গ্যাস পান",
37
37
  "learnMore": "আরও জানুন",
38
38
  "light": "লাইট",
39
- "max": "সর্বোচ্চ",
39
+ "max": "",
40
40
  "ok": "ঠিক আছে",
41
41
  "options": "",
42
42
  "removeTransaction": "",
@@ -129,6 +129,7 @@
129
129
  "highValueLoss": "প্রাপ্ত টোকেনগুলির মান সোওয়াপ করা টোকেন এবং লেনদেনের খরচের তুলনায় উল্লেখযোগ্যভাবে কম।",
130
130
  "insufficientFunds": "সোওয়াপ সম্পূর্ণ করার জন্য আপনার কাছে পর্যাপ্ত তহবিল নেই।",
131
131
  "insufficientGas": "সোওয়াপ সম্পূর্ণ করার জন্য আপনার কাছে পর্যাপ্ত গ্যাস নেই। আপনাকে অন্তত যোগ করতে হবে:",
132
+ "minFromAmountUSD": "",
132
133
  "rateChanged": "বিনিময় হার পরিবর্তিত হয়েছে। সোওয়াপ চালিয়ে যাওয়ার মাধ্যমে, আপনি নতুন হার গ্রহণ করবেন।",
133
134
  "resetSettings": "এটি আপনার রুটের অগ্রাধিকার, স্লিপেজ, গ্যাসের দাম, সক্ষম ব্রিজ এবং এক্সচেঞ্জ রিসেট করবে।",
134
135
  "slippageOutsideRecommendedLimits": "",
@@ -345,6 +346,8 @@
345
346
  },
346
347
  "tokenMetric": {
347
348
  "currentPrice": "",
348
- "contractAddress": ""
349
+ "contractAddress": "",
350
+ "marketCap": "",
351
+ "volume24h": ""
349
352
  }
350
353
  }
package/src/i18n/de.json CHANGED
@@ -36,7 +36,7 @@
36
36
  "getGas": "Gas erhalten",
37
37
  "learnMore": "Mehr erfahren",
38
38
  "light": "Hell",
39
- "max": "max",
39
+ "max": "",
40
40
  "ok": "OK",
41
41
  "options": "",
42
42
  "removeTransaction": "Transaktion entfernen",
@@ -129,6 +129,7 @@
129
129
  "highValueLoss": "Der Wert der erhaltenen Token ist deutlich niedriger als die getauschten Token und die Transaktionskosten.",
130
130
  "insufficientFunds": "Sie haben nicht genug Token, um diesen Swap abzuschließen.",
131
131
  "insufficientGas": "Sie haben nicht genug Gas um diesen Swap abzuschließen. Sie müssen mindestens hinzufügen:",
132
+ "minFromAmountUSD": "",
132
133
  "rateChanged": "Der Wechselkurs hat sich geändert. Durch Fortsetzen des Swaps akzeptieren Sie den neuen Kurs.",
133
134
  "resetSettings": "Dies wird Ihre Routenpriorität, Slippage, Gaspreis, aktivierte Brücken und Exchanges zurücksetzen.",
134
135
  "slippageOutsideRecommendedLimits": "",
@@ -345,6 +346,8 @@
345
346
  },
346
347
  "tokenMetric": {
347
348
  "currentPrice": "",
348
- "contractAddress": ""
349
+ "contractAddress": "",
350
+ "marketCap": "",
351
+ "volume24h": ""
349
352
  }
350
353
  }
package/src/i18n/en.json CHANGED
@@ -36,7 +36,7 @@
36
36
  "getGas": "Get gas",
37
37
  "learnMore": "Learn more",
38
38
  "light": "Light",
39
- "max": "max",
39
+ "max": "MAX",
40
40
  "ok": "Ok",
41
41
  "options": "Options",
42
42
  "removeTransaction": "Remove transaction",
@@ -129,6 +129,7 @@
129
129
  "highValueLoss": "The value of the received tokens is significantly lower than the exchanged tokens and transaction cost.",
130
130
  "insufficientFunds": "You don't have enough funds to complete the transaction.",
131
131
  "insufficientGas": "You don't have enough gas to complete the transaction. You need to add at least:",
132
+ "minFromAmountUSD": "Minimum amount is {{amount, currencyExt(currency: USD)}}. Please enter a higher amount.",
132
133
  "rateChanged": "The exchange rate has changed. By continuing the transaction, you'll accept the new rate.",
133
134
  "resetSettings": "This will reset your route priority, slippage, gas price, enabled bridges and exchanges.",
134
135
  "slippageOutsideRecommendedLimits": "High slippage tolerance may result in unfavorable trade caused by front-running.",
@@ -345,6 +346,8 @@
345
346
  },
346
347
  "tokenMetric": {
347
348
  "currentPrice": "Current price",
348
- "contractAddress": "Contract address"
349
+ "contractAddress": "Contract address",
350
+ "marketCap": "Market cap",
351
+ "volume24h": "Volume 24h"
349
352
  }
350
353
  }
package/src/i18n/es.json CHANGED
@@ -36,7 +36,7 @@
36
36
  "getGas": "Obtener gas",
37
37
  "learnMore": "Aprender más",
38
38
  "light": "Luz",
39
- "max": "máximo",
39
+ "max": "",
40
40
  "ok": "Ok",
41
41
  "options": "Opciones",
42
42
  "removeTransaction": "Eliminar transacción",
@@ -129,6 +129,7 @@
129
129
  "highValueLoss": "El valor de los tokens recibidos es significativamente menor que los tokens intercambiados y el costo de la transacción.",
130
130
  "insufficientFunds": "No tiene fondos suficientes para ejecutar el intercambio.",
131
131
  "insufficientGas": "Debes agregar al menos:",
132
+ "minFromAmountUSD": "",
132
133
  "rateChanged": "La tasa de cambio ha cambiado. Continuar con el swap implica que estas de acuerdo con la nueva tasa.",
133
134
  "resetSettings": "Esto restablecerá su prioridad de ruta, deslizamiento, precio de gas, puentes e intercambios habilitados.",
134
135
  "slippageOutsideRecommendedLimits": "La tolerancia de los deslizamientos altos puede resultar en un comercio desfavorable causado por front-running.",
@@ -345,6 +346,8 @@
345
346
  },
346
347
  "tokenMetric": {
347
348
  "currentPrice": "",
348
- "contractAddress": ""
349
+ "contractAddress": "",
350
+ "marketCap": "",
351
+ "volume24h": ""
349
352
  }
350
353
  }
package/src/i18n/fr.json CHANGED
@@ -36,7 +36,7 @@
36
36
  "getGas": "Obtenir du gaz",
37
37
  "learnMore": "Plus d'info",
38
38
  "light": "Clair",
39
- "max": "max",
39
+ "max": "",
40
40
  "ok": "Ok",
41
41
  "options": "Options",
42
42
  "removeTransaction": "Supprimer la transaction",
@@ -129,6 +129,7 @@
129
129
  "highValueLoss": "La valeur des jetons reçus est nettement inférieure à celle des jetons échangés et au coût de la transaction.",
130
130
  "insufficientFunds": "Vous n'avez pas assez de fonds pour finaliser l'échange.",
131
131
  "insufficientGas": "Vous n'avez pas assez de gaz pour finaliser l'échange. Vous devez avoir au moins:",
132
+ "minFromAmountUSD": "",
132
133
  "rateChanged": "Le taux de change a changé. En continuant l'échange, vous devrez accepter le nouveau taux.",
133
134
  "resetSettings": "Cela réinitialisera la priorité de votre itinéraire, l'effet de glissement, le prix du gaz, les ponts et les plateformes d'échanges activés.",
134
135
  "slippageOutsideRecommendedLimits": "Une tolérance élevée au glissement peut entraîner un échange défavorable causé par le front-running.",
@@ -345,6 +346,8 @@
345
346
  },
346
347
  "tokenMetric": {
347
348
  "currentPrice": "",
348
- "contractAddress": ""
349
+ "contractAddress": "",
350
+ "marketCap": "",
351
+ "volume24h": ""
349
352
  }
350
353
  }
package/src/i18n/hi.json CHANGED
@@ -36,7 +36,7 @@
36
36
  "getGas": "गेस शुल्क ले",
37
37
  "learnMore": "",
38
38
  "light": "रोशनी",
39
- "max": "अधिकतम",
39
+ "max": "",
40
40
  "ok": "ठीक है",
41
41
  "options": "",
42
42
  "removeTransaction": "",
@@ -129,6 +129,7 @@
129
129
  "highValueLoss": "",
130
130
  "insufficientFunds": "",
131
131
  "insufficientGas": "",
132
+ "minFromAmountUSD": "",
132
133
  "rateChanged": "",
133
134
  "resetSettings": "",
134
135
  "slippageOutsideRecommendedLimits": "",
@@ -345,6 +346,8 @@
345
346
  },
346
347
  "tokenMetric": {
347
348
  "currentPrice": "",
348
- "contractAddress": ""
349
+ "contractAddress": "",
350
+ "marketCap": "",
351
+ "volume24h": ""
349
352
  }
350
353
  }
package/src/i18n/id.json CHANGED
@@ -36,7 +36,7 @@
36
36
  "getGas": "Dapatkan gas",
37
37
  "learnMore": "Pelajari lebih lanjut",
38
38
  "light": "Terang",
39
- "max": "maks",
39
+ "max": "",
40
40
  "ok": "Ya",
41
41
  "options": "Opsi",
42
42
  "removeTransaction": "Hapus transaksi",
@@ -129,6 +129,7 @@
129
129
  "highValueLoss": "Nilai token yang diterima jauh lebih rendah daripada token yang ditukar dan biaya transaksi.",
130
130
  "insufficientFunds": "Anda tidak memiliki cukup dana untuk menyelesaikan penukaran.",
131
131
  "insufficientGas": "Anda tidak memiliki cukup gas untuk menyelesaikan penukaran. Anda perlu menambahkan setidaknya:",
132
+ "minFromAmountUSD": "",
132
133
  "rateChanged": "Nilai tukar telah berubah. Dengan melanjutkan penukaran, Anda akan menerima tarif baru.",
133
134
  "resetSettings": "Ini akan mengatur ulang prioritas rute Anda, slippage, harga gas, jembatan yang diaktifkan, dan pertukaran.",
134
135
  "slippageOutsideRecommendedLimits": "Toleransi selip yang tinggi dapat mengakibatkan perdagangan yang tidak menguntungkan yang disebabkan oleh front-running.",
@@ -345,6 +346,8 @@
345
346
  },
346
347
  "tokenMetric": {
347
348
  "currentPrice": "",
348
- "contractAddress": ""
349
+ "contractAddress": "",
350
+ "marketCap": "",
351
+ "volume24h": ""
349
352
  }
350
353
  }
package/src/i18n/it.json CHANGED
@@ -36,7 +36,7 @@
36
36
  "getGas": "Ottieni gas",
37
37
  "learnMore": "Ulteriori informazioni",
38
38
  "light": "Chiaro",
39
- "max": "massimo",
39
+ "max": "",
40
40
  "ok": "Ok",
41
41
  "options": "",
42
42
  "removeTransaction": "Rimuovi transazione",
@@ -129,6 +129,7 @@
129
129
  "highValueLoss": "Il valore dei token ricevuti è significativamente inferiore ai token scambiati più il costo della transazione.",
130
130
  "insufficientFunds": "Non hai abbastanza fondi per completare lo scambio.",
131
131
  "insufficientGas": "Non hai abbastanza gas per completare lo scambio. Devi aggiungere almeno:",
132
+ "minFromAmountUSD": "",
132
133
  "rateChanged": "Il tasso di scambio è cambiato. Se procedi, confermi di accettare il nuovo tasso.",
133
134
  "resetSettings": "Questo porterà al ripristino della priorità di route, slittamento di prezzo, prezzo del gas, bridge abilitati ed exchanges.",
134
135
  "slippageOutsideRecommendedLimits": "",
@@ -345,6 +346,8 @@
345
346
  },
346
347
  "tokenMetric": {
347
348
  "currentPrice": "",
348
- "contractAddress": ""
349
+ "contractAddress": "",
350
+ "marketCap": "",
351
+ "volume24h": ""
349
352
  }
350
353
  }
package/src/i18n/ja.json CHANGED
@@ -36,7 +36,7 @@
36
36
  "getGas": "ガス代を入手",
37
37
  "learnMore": "さらに詳しく",
38
38
  "light": "ライト",
39
- "max": "最大値",
39
+ "max": "",
40
40
  "ok": "OK",
41
41
  "options": "オプション",
42
42
  "removeTransaction": "トランザクションを削除",
@@ -129,6 +129,7 @@
129
129
  "highValueLoss": "受け取るトークンの価値は、交換されたトークンとトランザクションコストよりも大幅に低くなります。",
130
130
  "insufficientFunds": "トランザクションを完了するのに十分な資金がありません。",
131
131
  "insufficientGas": "トランザクションを完了するのに十分なガスがありません。少なくとも以下を追加する必要があります:",
132
+ "minFromAmountUSD": "",
132
133
  "rateChanged": "交換レートが変更されました。取引を続行すると、新しい為替レートを受け入れることになります。",
133
134
  "resetSettings": "これにより、ルートの優先順位、スリッページ、ガス価格、使用可能なブリッジ、取引所がリセットされます。",
134
135
  "slippageOutsideRecommendedLimits": "スリッページ許容度が高すぎると、フロントランニングによる不利なトレードをひき起こす可能性があります。",
@@ -345,6 +346,8 @@
345
346
  },
346
347
  "tokenMetric": {
347
348
  "currentPrice": "",
348
- "contractAddress": ""
349
+ "contractAddress": "",
350
+ "marketCap": "",
351
+ "volume24h": ""
349
352
  }
350
353
  }
package/src/i18n/ko.json CHANGED
@@ -36,7 +36,7 @@
36
36
  "getGas": "가스 받기",
37
37
  "learnMore": "자세히 알아보기",
38
38
  "light": "밝게",
39
- "max": "최대",
39
+ "max": "",
40
40
  "ok": "확인",
41
41
  "options": "",
42
42
  "removeTransaction": "거래 지우기",
@@ -129,6 +129,7 @@
129
129
  "highValueLoss": "받은 토큰의 가치가 스왑된 토큰 및 트랜잭션 비용보다 상당히 낮습니다.",
130
130
  "insufficientFunds": "스왑을 진행할 자금이 부족합니다.",
131
131
  "insufficientGas": "스왑을 진행할 가스가 부족합니다. 최소 다음과 같은 가스가 필요합니다:",
132
+ "minFromAmountUSD": "",
132
133
  "rateChanged": "거래 비율이 변경되었습니다. 스왑을 계속하면 새로운 비율이 적용됩니다.",
133
134
  "resetSettings": "우선 경로, 슬리피지, 가스 비용, 활성화된 브릿지 및 거래소가 재설정됩니다.",
134
135
  "slippageOutsideRecommendedLimits": "",
@@ -345,6 +346,8 @@
345
346
  },
346
347
  "tokenMetric": {
347
348
  "currentPrice": "",
348
- "contractAddress": ""
349
+ "contractAddress": "",
350
+ "marketCap": "",
351
+ "volume24h": ""
349
352
  }
350
353
  }
package/src/i18n/pl.json CHANGED
@@ -129,6 +129,7 @@
129
129
  "highValueLoss": "",
130
130
  "insufficientFunds": "",
131
131
  "insufficientGas": "",
132
+ "minFromAmountUSD": "",
132
133
  "rateChanged": "",
133
134
  "resetSettings": "",
134
135
  "slippageOutsideRecommendedLimits": "",
@@ -345,6 +346,8 @@
345
346
  },
346
347
  "tokenMetric": {
347
348
  "currentPrice": "",
348
- "contractAddress": ""
349
+ "contractAddress": "",
350
+ "marketCap": "",
351
+ "volume24h": ""
349
352
  }
350
353
  }
package/src/i18n/pt.json CHANGED
@@ -36,7 +36,7 @@
36
36
  "getGas": "Obter gás",
37
37
  "learnMore": "Saiba mais",
38
38
  "light": "Claro",
39
- "max": "máximo",
39
+ "max": "",
40
40
  "ok": "Tudo certo",
41
41
  "options": "Opções",
42
42
  "removeTransaction": "Remover transação",
@@ -129,6 +129,7 @@
129
129
  "highValueLoss": "A quantidade de tokens a serem recebidos é significativamente menor do que os tokens convertidos e os custos da transação.",
130
130
  "insufficientFunds": "Você não possui fundos suficientes para completar a conversão.",
131
131
  "insufficientGas": "Você não tem gás suficiente para completar a conversão. É necessário adicionar pelo menos:",
132
+ "minFromAmountUSD": "Valor mínimo é {{amount, currencyExt(currency: USD)}}. Por favor, insira um valor maior.",
132
133
  "rateChanged": "A taxa de câmbio mudou. Ao continuar a conversão, você aceitará a nova taxa.",
133
134
  "resetSettings": "Isto redefinirá sua prioridade de rota, tolerância a derrapagem, preço de gás, pontes e trocas ativadas.",
134
135
  "slippageOutsideRecommendedLimits": "Alta tolerância na derrapagem pode resultar em negociação desfavorável ​​causada pelo front-running.",
@@ -345,6 +346,8 @@
345
346
  },
346
347
  "tokenMetric": {
347
348
  "currentPrice": "Preço atual",
348
- "contractAddress": "Endereço do Contrato"
349
+ "contractAddress": "Endereço do Contrato",
350
+ "marketCap": "Capitalização de mercado",
351
+ "volume24h": "Volume 24h"
349
352
  }
350
353
  }
package/src/i18n/th.json CHANGED
@@ -36,7 +36,7 @@
36
36
  "getGas": "รับแก็ส",
37
37
  "learnMore": "เรียนรู้เพิ่มเติม",
38
38
  "light": "สว่าง",
39
- "max": "สูงสุด",
39
+ "max": "",
40
40
  "ok": "ตกลง",
41
41
  "options": "การตั้งค่า",
42
42
  "removeTransaction": "นำรายการออก",
@@ -129,6 +129,7 @@
129
129
  "highValueLoss": "มูลค่าของโทเค็นที่ได้รับนั้นต่ำกว่าโทเค็นที่แลกเปลี่ยนและต้นทุนการทำธุรกรรมอย่างมาก.",
130
130
  "insufficientFunds": "คุณมีเงินไม่เพียงพอที่จะดำเนินการแลกเปลี่ยน.",
131
131
  "insufficientGas": "คุณมีแก๊สไม่เพียงพอที่จะแลกเปลี่ยนให้เสร็จสมบูรณ์ คุณต้องเพิ่มอย่างน้อย:",
132
+ "minFromAmountUSD": "",
132
133
  "rateChanged": "อัตราแลกเปลี่ยนมีการเปลี่ยนแปลง คุณจะยอมรับอัตราใหม่.",
133
134
  "resetSettings": "การดำเนินการนี้จะรีเซ็ตลำดับความสำคัญของเส้นทาง การคลาดเลื่อน ค่าแก็ส บริดจ์ที่เปิดใช้งานและการแลกเปลี่ยน",
134
135
  "slippageOutsideRecommendedLimits": "การยอมรับความผิดปกติในการสลิปเพจสูงอาจส่งผลให้เกิดการซื้อขายที่ไม่คุ้มค่า ซึ่งเกิดจากการดำเนินการขายก่อน",
@@ -345,6 +346,8 @@
345
346
  },
346
347
  "tokenMetric": {
347
348
  "currentPrice": "",
348
- "contractAddress": ""
349
+ "contractAddress": "",
350
+ "marketCap": "",
351
+ "volume24h": ""
349
352
  }
350
353
  }
package/src/i18n/tr.json CHANGED
@@ -36,7 +36,7 @@
36
36
  "getGas": "Gaz al",
37
37
  "learnMore": "Daha fazla bilgi edinin",
38
38
  "light": "Açık",
39
- "max": "maksimum",
39
+ "max": "",
40
40
  "ok": "Tamam",
41
41
  "options": "Ayarlar",
42
42
  "removeTransaction": "İşlemi kaldır",
@@ -129,6 +129,7 @@
129
129
  "highValueLoss": "Elde edilecek varlıkların değeri, takas edilen varlıklardan ve işlem maliyetinden önemli ölçüde düşüktür.",
130
130
  "insufficientFunds": "Takas işlemini gerçekleştirmek için yeterli bakiyeniz bulunmamaktadır.",
131
131
  "insufficientGas": "En azından şunları eklemelisiniz:",
132
+ "minFromAmountUSD": "",
132
133
  "rateChanged": "Takas oranı değişti. İşleme devam ederek yeni oranı kabul etmiş olursunuz.",
133
134
  "resetSettings": "Bu, rota önceliğinizi, slipajı, gaz fiyatını, etkin köprüleri ve takasları sıfırlayacaktır.",
134
135
  "slippageOutsideRecommendedLimits": "Yüksek slipaj, ani fiyat hareketleri nedeniyle zarara yol açabilir.",
@@ -345,6 +346,8 @@
345
346
  },
346
347
  "tokenMetric": {
347
348
  "currentPrice": "",
348
- "contractAddress": ""
349
+ "contractAddress": "",
350
+ "marketCap": "",
351
+ "volume24h": ""
349
352
  }
350
353
  }
package/src/i18n/uk.json CHANGED
@@ -36,7 +36,7 @@
36
36
  "getGas": "Отримати газ",
37
37
  "learnMore": "Докладніше",
38
38
  "light": "Світла",
39
- "max": "макс",
39
+ "max": "",
40
40
  "ok": "Ок",
41
41
  "options": "Опції",
42
42
  "removeTransaction": "Видалити транзакцію",
@@ -129,6 +129,7 @@
129
129
  "highValueLoss": "Вартість отриманих токенів значно нижча, ніж обмінені токени та вартість транзакції.",
130
130
  "insufficientFunds": "У вас недостатньо коштів для здійснення свопу.",
131
131
  "insufficientGas": "Для завершення свопа у вас недостатньо газу. Вам необхідно додати хоча б:",
132
+ "minFromAmountUSD": "",
132
133
  "rateChanged": "Курс обміну змінився. Продовжуючи своп, ви приймете новий курс.",
133
134
  "resetSettings": "Це скине пріоритет вашого маршруту, прослизання, ціну газу, увімкнені бриджі та обмінники.",
134
135
  "slippageOutsideRecommendedLimits": "Високий допуск до прослизання може призвести до несприятливої торгівлі через фронт-біг.",
@@ -345,6 +346,8 @@
345
346
  },
346
347
  "tokenMetric": {
347
348
  "currentPrice": "Поточна ціна",
348
- "contractAddress": "Адреса контракту"
349
+ "contractAddress": "Адреса контракту",
350
+ "marketCap": "",
351
+ "volume24h": ""
349
352
  }
350
353
  }