@lifi/widget 1.13.2 → 1.13.3

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 (402) hide show
  1. package/cjs/App.d.ts +4 -0
  2. package/cjs/App.js +80 -0
  3. package/cjs/AppDrawer.d.ts +14 -0
  4. package/cjs/AppDrawer.js +44 -0
  5. package/cjs/AppDrawer.style.d.ts +53 -0
  6. package/cjs/AppDrawer.style.js +75 -0
  7. package/cjs/AppProvider.d.ts +11 -0
  8. package/cjs/AppProvider.js +31 -0
  9. package/cjs/components/AppContainer.d.ts +15 -0
  10. package/cjs/components/AppContainer.js +59 -0
  11. package/cjs/components/BottomSheet/BottomSheet.d.ts +3 -0
  12. package/cjs/components/BottomSheet/BottomSheet.js +45 -0
  13. package/cjs/components/BottomSheet/index.d.ts +2 -0
  14. package/cjs/components/BottomSheet/index.js +18 -0
  15. package/cjs/components/BottomSheet/types.d.ts +10 -0
  16. package/cjs/components/BottomSheet/types.js +2 -0
  17. package/cjs/components/Card/Card.d.ts +14 -0
  18. package/cjs/components/Card/Card.js +35 -0
  19. package/cjs/components/Card/CardHeader.d.ts +18 -0
  20. package/cjs/components/Card/CardHeader.js +23 -0
  21. package/cjs/components/Card/CardTitle.d.ts +14 -0
  22. package/cjs/components/Card/CardTitle.js +12 -0
  23. package/cjs/components/Card/index.d.ts +3 -0
  24. package/cjs/components/Card/index.js +19 -0
  25. package/cjs/components/Dialog.d.ts +3 -0
  26. package/cjs/components/Dialog.js +27 -0
  27. package/cjs/components/GasSufficiencyMessage/GasSufficiencyMessage.d.ts +6 -0
  28. package/cjs/components/GasSufficiencyMessage/GasSufficiencyMessage.js +45 -0
  29. package/cjs/components/GasSufficiencyMessage/GasSufficiencyMessage.style.d.ts +9 -0
  30. package/cjs/components/GasSufficiencyMessage/GasSufficiencyMessage.style.js +14 -0
  31. package/cjs/components/GasSufficiencyMessage/index.d.ts +1 -0
  32. package/cjs/components/GasSufficiencyMessage/index.js +17 -0
  33. package/cjs/components/Header/Header.d.ts +2 -0
  34. package/cjs/components/Header/Header.js +27 -0
  35. package/cjs/components/Header/Header.style.d.ts +20 -0
  36. package/cjs/components/Header/Header.style.js +26 -0
  37. package/cjs/components/Header/NavigationHeader.d.ts +2 -0
  38. package/cjs/components/Header/NavigationHeader.js +58 -0
  39. package/cjs/components/Header/WalletHeader.d.ts +2 -0
  40. package/cjs/components/Header/WalletHeader.js +48 -0
  41. package/cjs/components/Header/index.d.ts +2 -0
  42. package/cjs/components/Header/index.js +18 -0
  43. package/cjs/components/Header/types.d.ts +8 -0
  44. package/cjs/components/Header/types.js +2 -0
  45. package/cjs/components/Header/useHeaderActionStore.d.ts +6 -0
  46. package/cjs/components/Header/useHeaderActionStore.js +26 -0
  47. package/cjs/components/Initializer.d.ts +2 -0
  48. package/cjs/components/Initializer.js +9 -0
  49. package/cjs/components/Input.d.ts +1 -0
  50. package/cjs/components/Input.js +17 -0
  51. package/cjs/components/LiFiLogo.d.ts +5 -0
  52. package/cjs/components/LiFiLogo.js +10 -0
  53. package/cjs/components/NotFound.d.ts +2 -0
  54. package/cjs/components/NotFound.js +19 -0
  55. package/cjs/components/PoweredBy/PoweredBy.d.ts +2 -0
  56. package/cjs/components/PoweredBy/PoweredBy.js +16 -0
  57. package/cjs/components/PoweredBy/PoweredBy.style.d.ts +12 -0
  58. package/cjs/components/PoweredBy/PoweredBy.style.js +12 -0
  59. package/cjs/components/PoweredBy/index.d.ts +1 -0
  60. package/cjs/components/PoweredBy/index.js +5 -0
  61. package/cjs/components/ProgressToNextUpdate/ProgressToNextUpdate.d.ts +7 -0
  62. package/cjs/components/ProgressToNextUpdate/ProgressToNextUpdate.js +63 -0
  63. package/cjs/components/ProgressToNextUpdate/index.d.ts +1 -0
  64. package/cjs/components/ProgressToNextUpdate/index.js +17 -0
  65. package/cjs/components/ReverseTokensButton/ReverseTokensButton.d.ts +4 -0
  66. package/cjs/components/ReverseTokensButton/ReverseTokensButton.js +26 -0
  67. package/cjs/components/ReverseTokensButton/ReverseTokensButton.style.d.ts +29 -0
  68. package/cjs/components/ReverseTokensButton/ReverseTokensButton.style.js +19 -0
  69. package/cjs/components/ReverseTokensButton/index.d.ts +1 -0
  70. package/cjs/components/ReverseTokensButton/index.js +17 -0
  71. package/cjs/components/Select.d.ts +3 -0
  72. package/cjs/components/Select.js +30 -0
  73. package/cjs/components/SelectChainAndToken.d.ts +3 -0
  74. package/cjs/components/SelectChainAndToken.js +23 -0
  75. package/cjs/components/SelectTokenButton/SelectTokenButton.d.ts +5 -0
  76. package/cjs/components/SelectTokenButton/SelectTokenButton.js +35 -0
  77. package/cjs/components/SelectTokenButton/SelectTokenButton.style.d.ts +21 -0
  78. package/cjs/components/SelectTokenButton/SelectTokenButton.style.js +27 -0
  79. package/cjs/components/SelectTokenButton/index.d.ts +1 -0
  80. package/cjs/components/SelectTokenButton/index.js +17 -0
  81. package/cjs/components/SmallAvatar.d.ts +16 -0
  82. package/cjs/components/SmallAvatar.js +11 -0
  83. package/cjs/components/Step/CircularProgress.d.ts +5 -0
  84. package/cjs/components/Step/CircularProgress.js +24 -0
  85. package/cjs/components/Step/CircularProgress.style.d.ts +6 -0
  86. package/cjs/components/Step/CircularProgress.style.js +54 -0
  87. package/cjs/components/Step/Step.d.ts +7 -0
  88. package/cjs/components/Step/Step.js +36 -0
  89. package/cjs/components/Step/StepProcess.d.ts +6 -0
  90. package/cjs/components/Step/StepProcess.js +25 -0
  91. package/cjs/components/Step/StepProcess.style.d.ts +39 -0
  92. package/cjs/components/Step/StepProcess.style.js +8 -0
  93. package/cjs/components/Step/StepTimer.d.ts +5 -0
  94. package/cjs/components/Step/StepTimer.js +64 -0
  95. package/cjs/components/Step/index.d.ts +1 -0
  96. package/cjs/components/Step/index.js +17 -0
  97. package/cjs/components/Step/utils.d.ts +6 -0
  98. package/cjs/components/Step/utils.js +93 -0
  99. package/cjs/components/StepActions/StepActions.d.ts +13 -0
  100. package/cjs/components/StepActions/StepActions.js +71 -0
  101. package/cjs/components/StepActions/StepActions.style.d.ts +20 -0
  102. package/cjs/components/StepActions/StepActions.style.js +59 -0
  103. package/cjs/components/StepActions/index.d.ts +1 -0
  104. package/cjs/components/StepActions/index.js +5 -0
  105. package/cjs/components/StepActions/types.d.ts +6 -0
  106. package/cjs/components/StepActions/types.js +2 -0
  107. package/cjs/components/StepDivider/StepDivider.d.ts +2 -0
  108. package/cjs/components/StepDivider/StepDivider.js +10 -0
  109. package/cjs/components/StepDivider/StepDivider.style.d.ts +11 -0
  110. package/cjs/components/StepDivider/StepDivider.style.js +11 -0
  111. package/cjs/components/StepDivider/index.d.ts +1 -0
  112. package/cjs/components/StepDivider/index.js +17 -0
  113. package/cjs/components/SwapButton/ButtonTooltip.d.ts +5 -0
  114. package/cjs/components/SwapButton/ButtonTooltip.js +7 -0
  115. package/cjs/components/SwapButton/SwapButton.d.ts +3 -0
  116. package/cjs/components/SwapButton/SwapButton.js +74 -0
  117. package/cjs/components/SwapButton/SwapButton.style.d.ts +65 -0
  118. package/cjs/components/SwapButton/SwapButton.style.js +15 -0
  119. package/cjs/components/SwapButton/index.d.ts +1 -0
  120. package/cjs/components/SwapButton/index.js +5 -0
  121. package/cjs/components/SwapButton/types.d.ts +7 -0
  122. package/cjs/components/SwapButton/types.js +2 -0
  123. package/cjs/components/SwapInProgress/SwapInProgress.d.ts +3 -0
  124. package/cjs/components/SwapInProgress/SwapInProgress.js +29 -0
  125. package/cjs/components/SwapInProgress/SwapInProgress.style.d.ts +31 -0
  126. package/cjs/components/SwapInProgress/SwapInProgress.style.js +17 -0
  127. package/cjs/components/SwapInProgress/index.d.ts +1 -0
  128. package/cjs/components/SwapInProgress/index.js +17 -0
  129. package/cjs/components/SwapInput/FormPriceHelperText.d.ts +5 -0
  130. package/cjs/components/SwapInput/FormPriceHelperText.js +31 -0
  131. package/cjs/components/SwapInput/SwapInput.d.ts +3 -0
  132. package/cjs/components/SwapInput/SwapInput.js +46 -0
  133. package/cjs/components/SwapInput/SwapInput.style.d.ts +21 -0
  134. package/cjs/components/SwapInput/SwapInput.style.js +33 -0
  135. package/cjs/components/SwapInput/SwapInputAdornment.d.ts +3 -0
  136. package/cjs/components/SwapInput/SwapInputAdornment.js +27 -0
  137. package/cjs/components/SwapInput/SwapInputAdornment.style.d.ts +34 -0
  138. package/cjs/components/SwapInput/SwapInputAdornment.style.js +23 -0
  139. package/cjs/components/SwapInput/index.d.ts +1 -0
  140. package/cjs/components/SwapInput/index.js +17 -0
  141. package/cjs/components/SwapRouteCard/SwapRouteCard.d.ts +4 -0
  142. package/cjs/components/SwapRouteCard/SwapRouteCard.js +42 -0
  143. package/cjs/components/SwapRouteCard/SwapRouteCard.style.d.ts +16 -0
  144. package/cjs/components/SwapRouteCard/SwapRouteCard.style.js +30 -0
  145. package/cjs/components/SwapRouteCard/SwapRouteCardSkeleton.d.ts +4 -0
  146. package/cjs/components/SwapRouteCard/SwapRouteCardSkeleton.js +32 -0
  147. package/cjs/components/SwapRouteCard/SwapRouteNotFoundCard.d.ts +4 -0
  148. package/cjs/components/SwapRouteCard/SwapRouteNotFoundCard.js +30 -0
  149. package/cjs/components/SwapRouteCard/index.d.ts +3 -0
  150. package/cjs/components/SwapRouteCard/index.js +19 -0
  151. package/cjs/components/SwapRouteCard/types.d.ts +9 -0
  152. package/cjs/components/SwapRouteCard/types.js +2 -0
  153. package/cjs/components/Switch.d.ts +1 -0
  154. package/cjs/components/Switch.js +56 -0
  155. package/cjs/components/TextFitter/TextFitter.d.ts +3 -0
  156. package/cjs/components/TextFitter/TextFitter.js +52 -0
  157. package/cjs/components/TextFitter/index.d.ts +1 -0
  158. package/cjs/components/TextFitter/index.js +17 -0
  159. package/cjs/components/TextFitter/types.d.ts +12 -0
  160. package/cjs/components/TextFitter/types.js +2 -0
  161. package/cjs/components/Token/Token.d.ts +7 -0
  162. package/cjs/components/Token/Token.js +35 -0
  163. package/cjs/components/Token/Token.style.d.ts +24 -0
  164. package/cjs/components/Token/Token.style.js +34 -0
  165. package/cjs/components/Token/index.d.ts +2 -0
  166. package/cjs/components/Token/index.js +18 -0
  167. package/cjs/components/TokenAvatar/TokenAvatar.d.ts +7 -0
  168. package/cjs/components/TokenAvatar/TokenAvatar.js +13 -0
  169. package/cjs/components/TokenAvatar/TokenAvatar.style.d.ts +1 -0
  170. package/cjs/components/TokenAvatar/TokenAvatar.style.js +19 -0
  171. package/cjs/components/TokenAvatar/index.d.ts +2 -0
  172. package/cjs/components/TokenAvatar/index.js +18 -0
  173. package/cjs/components/TokenList/TokenList.d.ts +3 -0
  174. package/cjs/components/TokenList/TokenList.js +55 -0
  175. package/cjs/components/TokenList/TokenList.style.d.ts +32 -0
  176. package/cjs/components/TokenList/TokenList.style.js +28 -0
  177. package/cjs/components/TokenList/TokenListItem.d.ts +5 -0
  178. package/cjs/components/TokenList/TokenListItem.js +32 -0
  179. package/cjs/components/TokenList/TokenNotFound.d.ts +2 -0
  180. package/cjs/components/TokenList/TokenNotFound.js +19 -0
  181. package/cjs/components/TokenList/VirtualizedTokenList.d.ts +3 -0
  182. package/cjs/components/TokenList/VirtualizedTokenList.js +57 -0
  183. package/cjs/components/TokenList/index.d.ts +1 -0
  184. package/cjs/components/TokenList/index.js +17 -0
  185. package/cjs/components/TokenList/types.d.ts +32 -0
  186. package/cjs/components/TokenList/types.js +2 -0
  187. package/cjs/config/env.d.ts +3 -0
  188. package/cjs/config/env.js +6 -0
  189. package/cjs/config/lifi.d.ts +3 -0
  190. package/cjs/config/lifi.js +12 -0
  191. package/cjs/config/queryClient.d.ts +2 -0
  192. package/cjs/config/queryClient.js +28 -0
  193. package/cjs/config/sentry.d.ts +1 -0
  194. package/cjs/config/sentry.js +65 -0
  195. package/cjs/config/theme.d.ts +27 -0
  196. package/cjs/config/theme.js +175 -0
  197. package/cjs/config/version.d.ts +2 -0
  198. package/cjs/config/version.js +5 -0
  199. package/cjs/hooks/index.d.ts +17 -0
  200. package/cjs/hooks/index.js +33 -0
  201. package/cjs/hooks/useChain.d.ts +4 -0
  202. package/cjs/hooks/useChain.js +17 -0
  203. package/cjs/hooks/useChains.d.ts +101 -0
  204. package/cjs/hooks/useChains.js +43 -0
  205. package/cjs/hooks/useContentHeight.d.ts +1 -0
  206. package/cjs/hooks/useContentHeight.js +27 -0
  207. package/cjs/hooks/useDebouncedWatch.d.ts +1 -0
  208. package/cjs/hooks/useDebouncedWatch.js +36 -0
  209. package/cjs/hooks/useFeaturedTokens.d.ts +1 -0
  210. package/cjs/hooks/useFeaturedTokens.js +10 -0
  211. package/cjs/hooks/useGasSufficiency.d.ts +15 -0
  212. package/cjs/hooks/useGasSufficiency.js +105 -0
  213. package/cjs/hooks/useInitializer.d.ts +1 -0
  214. package/cjs/hooks/useInitializer.js +9 -0
  215. package/cjs/hooks/useRouteExecution.d.ts +8 -0
  216. package/cjs/hooks/useRouteExecution.js +163 -0
  217. package/cjs/hooks/useScrollableContainer.d.ts +2 -0
  218. package/cjs/hooks/useScrollableContainer.js +29 -0
  219. package/cjs/hooks/useSwapRoutes.d.ts +9 -0
  220. package/cjs/hooks/useSwapRoutes.js +109 -0
  221. package/cjs/hooks/useTelemetry.d.ts +1 -0
  222. package/cjs/hooks/useTelemetry.js +22 -0
  223. package/cjs/hooks/useToken.d.ts +5 -0
  224. package/cjs/hooks/useToken.js +18 -0
  225. package/cjs/hooks/useTokenBalance.d.ts +5 -0
  226. package/cjs/hooks/useTokenBalance.js +19 -0
  227. package/cjs/hooks/useTokenBalances.d.ts +10 -0
  228. package/cjs/hooks/useTokenBalances.js +80 -0
  229. package/cjs/hooks/useTokenSearch.d.ts +7 -0
  230. package/cjs/hooks/useTokenSearch.js +41 -0
  231. package/cjs/hooks/useTokens.d.ts +6 -0
  232. package/cjs/hooks/useTokens.js +36 -0
  233. package/cjs/hooks/useTools.d.ts +10 -0
  234. package/cjs/hooks/useTools.js +28 -0
  235. package/cjs/i18n/en/translation.json +175 -0
  236. package/cjs/i18n/index.d.ts +181 -0
  237. package/cjs/i18n/index.js +27 -0
  238. package/cjs/icons/LiFiFullLogo.d.ts +2 -0
  239. package/cjs/icons/LiFiFullLogo.js +6 -0
  240. package/cjs/icons/LiFiLogo.d.ts +2 -0
  241. package/cjs/icons/LiFiLogo.js +6 -0
  242. package/cjs/icons/LiFiToolLogo.d.ts +2 -0
  243. package/cjs/icons/LiFiToolLogo.js +6 -0
  244. package/cjs/icons/index.d.ts +3 -0
  245. package/cjs/icons/index.js +19 -0
  246. package/cjs/index.d.ts +5 -0
  247. package/cjs/index.js +28 -0
  248. package/cjs/pages/MainPage/MainPage.d.ts +2 -0
  249. package/cjs/pages/MainPage/MainPage.js +15 -0
  250. package/cjs/pages/MainPage/MainPage.style.d.ts +11 -0
  251. package/cjs/pages/MainPage/MainPage.style.js +11 -0
  252. package/cjs/pages/MainPage/MainSwapButton.d.ts +2 -0
  253. package/cjs/pages/MainPage/MainSwapButton.js +34 -0
  254. package/cjs/pages/MainPage/SwapRoutes.d.ts +3 -0
  255. package/cjs/pages/MainPage/SwapRoutes.js +40 -0
  256. package/cjs/pages/MainPage/SwapRoutes.style.d.ts +11 -0
  257. package/cjs/pages/MainPage/SwapRoutes.style.js +16 -0
  258. package/cjs/pages/MainPage/index.d.ts +1 -0
  259. package/cjs/pages/MainPage/index.js +17 -0
  260. package/cjs/pages/SelectTokenPage/ChainSelect.d.ts +3 -0
  261. package/cjs/pages/SelectTokenPage/ChainSelect.js +32 -0
  262. package/cjs/pages/SelectTokenPage/SearchTokenInput.d.ts +2 -0
  263. package/cjs/pages/SelectTokenPage/SearchTokenInput.js +21 -0
  264. package/cjs/pages/SelectTokenPage/SearchTokenInput.style.d.ts +1 -0
  265. package/cjs/pages/SelectTokenPage/SearchTokenInput.style.js +8 -0
  266. package/cjs/pages/SelectTokenPage/SelectTokenPage.d.ts +5 -0
  267. package/cjs/pages/SelectTokenPage/SelectTokenPage.js +27 -0
  268. package/cjs/pages/SelectTokenPage/index.d.ts +2 -0
  269. package/cjs/pages/SelectTokenPage/index.js +18 -0
  270. package/cjs/pages/SelectTokenPage/types.d.ts +4 -0
  271. package/cjs/pages/SelectTokenPage/types.js +8 -0
  272. package/cjs/pages/SelectWalletPage/SelectWalletPage.d.ts +2 -0
  273. package/cjs/pages/SelectWalletPage/SelectWalletPage.js +53 -0
  274. package/cjs/pages/SelectWalletPage/SelectWalletPage.style.d.ts +46 -0
  275. package/cjs/pages/SelectWalletPage/SelectWalletPage.style.js +30 -0
  276. package/cjs/pages/SelectWalletPage/index.d.ts +1 -0
  277. package/cjs/pages/SelectWalletPage/index.js +17 -0
  278. package/cjs/pages/SettingsPage/AdvancedPreferences.d.ts +2 -0
  279. package/cjs/pages/SettingsPage/AdvancedPreferences.js +24 -0
  280. package/cjs/pages/SettingsPage/ColorSchemeButtonGroup.d.ts +2 -0
  281. package/cjs/pages/SettingsPage/ColorSchemeButtonGroup.js +24 -0
  282. package/cjs/pages/SettingsPage/ColorSchemeButtonGroup.style.d.ts +33 -0
  283. package/cjs/pages/SettingsPage/ColorSchemeButtonGroup.style.js +19 -0
  284. package/cjs/pages/SettingsPage/EnabledBridgesSelect.d.ts +2 -0
  285. package/cjs/pages/SettingsPage/EnabledBridgesSelect.js +30 -0
  286. package/cjs/pages/SettingsPage/EnabledExchangesSelect.d.ts +2 -0
  287. package/cjs/pages/SettingsPage/EnabledExchangesSelect.js +29 -0
  288. package/cjs/pages/SettingsPage/GasPriceSelect.d.ts +2 -0
  289. package/cjs/pages/SettingsPage/GasPriceSelect.js +17 -0
  290. package/cjs/pages/SettingsPage/RoutePrioritySelect.d.ts +2 -0
  291. package/cjs/pages/SettingsPage/RoutePrioritySelect.js +18 -0
  292. package/cjs/pages/SettingsPage/SettingsPage.d.ts +2 -0
  293. package/cjs/pages/SettingsPage/SettingsPage.js +14 -0
  294. package/cjs/pages/SettingsPage/SlippageInput.d.ts +2 -0
  295. package/cjs/pages/SettingsPage/SlippageInput.js +29 -0
  296. package/cjs/pages/SettingsPage/index.d.ts +1 -0
  297. package/cjs/pages/SettingsPage/index.js +17 -0
  298. package/cjs/pages/SwapDetailsPage/SwapDetailsPage.d.ts +2 -0
  299. package/cjs/pages/SwapDetailsPage/SwapDetailsPage.js +69 -0
  300. package/cjs/pages/SwapDetailsPage/SwapDetailsPage.style.d.ts +11 -0
  301. package/cjs/pages/SwapDetailsPage/SwapDetailsPage.style.js +8 -0
  302. package/cjs/pages/SwapDetailsPage/index.d.ts +1 -0
  303. package/cjs/pages/SwapDetailsPage/index.js +17 -0
  304. package/cjs/pages/SwapHistoryPage/SwapHistoryEmpty.d.ts +2 -0
  305. package/cjs/pages/SwapHistoryPage/SwapHistoryEmpty.js +18 -0
  306. package/cjs/pages/SwapHistoryPage/SwapHistoryItem.d.ts +5 -0
  307. package/cjs/pages/SwapHistoryPage/SwapHistoryItem.js +27 -0
  308. package/cjs/pages/SwapHistoryPage/SwapHistoryPage.d.ts +2 -0
  309. package/cjs/pages/SwapHistoryPage/SwapHistoryPage.js +34 -0
  310. package/cjs/pages/SwapHistoryPage/index.d.ts +1 -0
  311. package/cjs/pages/SwapHistoryPage/index.js +17 -0
  312. package/cjs/pages/SwapPage/StatusBottomSheet.d.ts +3 -0
  313. package/cjs/pages/SwapPage/StatusBottomSheet.js +83 -0
  314. package/cjs/pages/SwapPage/StatusBottomSheet.style.d.ts +25 -0
  315. package/cjs/pages/SwapPage/StatusBottomSheet.style.js +35 -0
  316. package/cjs/pages/SwapPage/SwapPage.d.ts +2 -0
  317. package/cjs/pages/SwapPage/SwapPage.js +49 -0
  318. package/cjs/pages/SwapPage/SwapPage.style.d.ts +11 -0
  319. package/cjs/pages/SwapPage/SwapPage.style.js +8 -0
  320. package/cjs/pages/SwapPage/index.d.ts +1 -0
  321. package/cjs/pages/SwapPage/index.js +17 -0
  322. package/cjs/pages/SwapPage/utils.d.ts +6 -0
  323. package/cjs/pages/SwapPage/utils.js +93 -0
  324. package/cjs/pages/SwapRoutesPage/SwapRoutesPage.d.ts +3 -0
  325. package/cjs/pages/SwapRoutesPage/SwapRoutesPage.js +39 -0
  326. package/cjs/pages/SwapRoutesPage/SwapRoutesPage.style.d.ts +11 -0
  327. package/cjs/pages/SwapRoutesPage/SwapRoutesPage.style.js +9 -0
  328. package/cjs/pages/SwapRoutesPage/index.d.ts +1 -0
  329. package/cjs/pages/SwapRoutesPage/index.js +17 -0
  330. package/cjs/providers/SwapFormProvider/SwapFormProvider.d.ts +6 -0
  331. package/cjs/providers/SwapFormProvider/SwapFormProvider.js +45 -0
  332. package/cjs/providers/SwapFormProvider/index.d.ts +2 -0
  333. package/cjs/providers/SwapFormProvider/index.js +18 -0
  334. package/cjs/providers/SwapFormProvider/types.d.ts +25 -0
  335. package/cjs/providers/SwapFormProvider/types.js +17 -0
  336. package/cjs/providers/ThemeProvider/ThemeProvider.d.ts +2 -0
  337. package/cjs/providers/ThemeProvider/ThemeProvider.js +37 -0
  338. package/cjs/providers/ThemeProvider/index.d.ts +1 -0
  339. package/cjs/providers/ThemeProvider/index.js +17 -0
  340. package/cjs/providers/WalletProvider/WalletProvider.d.ts +19 -0
  341. package/cjs/providers/WalletProvider/WalletProvider.js +106 -0
  342. package/cjs/providers/WalletProvider/index.d.ts +2 -0
  343. package/cjs/providers/WalletProvider/index.js +18 -0
  344. package/cjs/providers/WalletProvider/types.d.ts +17 -0
  345. package/cjs/providers/WalletProvider/types.js +2 -0
  346. package/cjs/providers/WidgetProvider/WidgetProvider.d.ts +4 -0
  347. package/cjs/providers/WidgetProvider/WidgetProvider.js +68 -0
  348. package/cjs/providers/WidgetProvider/index.d.ts +2 -0
  349. package/cjs/providers/WidgetProvider/index.js +18 -0
  350. package/cjs/providers/WidgetProvider/types.d.ts +8 -0
  351. package/cjs/providers/WidgetProvider/types.js +2 -0
  352. package/cjs/stores/index.d.ts +2 -0
  353. package/cjs/stores/index.js +18 -0
  354. package/cjs/stores/route/index.d.ts +5 -0
  355. package/cjs/stores/route/index.js +21 -0
  356. package/cjs/stores/route/types.d.ts +14 -0
  357. package/cjs/stores/route/types.js +2 -0
  358. package/cjs/stores/route/useExecutingRoutes.d.ts +2 -0
  359. package/cjs/stores/route/useExecutingRoutes.js +13 -0
  360. package/cjs/stores/route/useRouteStore.d.ts +18 -0
  361. package/cjs/stores/route/useRouteStore.js +57 -0
  362. package/cjs/stores/route/useSetExecutableRoute.d.ts +1 -0
  363. package/cjs/stores/route/useSetExecutableRoute.js +8 -0
  364. package/cjs/stores/route/useSwapHistory.d.ts +2 -0
  365. package/cjs/stores/route/useSwapHistory.js +18 -0
  366. package/cjs/stores/settings/index.d.ts +5 -0
  367. package/cjs/stores/settings/index.js +21 -0
  368. package/cjs/stores/settings/types.d.ts +23 -0
  369. package/cjs/stores/settings/types.js +4 -0
  370. package/cjs/stores/settings/useAppearance.d.ts +2 -0
  371. package/cjs/stores/settings/useAppearance.js +14 -0
  372. package/cjs/stores/settings/useSetSettings.d.ts +5 -0
  373. package/cjs/stores/settings/useSetSettings.js +12 -0
  374. package/cjs/stores/settings/useSettings.d.ts +2 -0
  375. package/cjs/stores/settings/useSettings.js +15 -0
  376. package/cjs/stores/settings/useSettingsStore.d.ts +38 -0
  377. package/cjs/stores/settings/useSettingsStore.js +90 -0
  378. package/cjs/types/index.d.ts +2 -0
  379. package/cjs/types/index.js +18 -0
  380. package/cjs/types/token.d.ts +4 -0
  381. package/cjs/types/token.js +2 -0
  382. package/cjs/types/widget.d.ts +47 -0
  383. package/cjs/types/widget.js +2 -0
  384. package/cjs/utils/colors.d.ts +3 -0
  385. package/cjs/utils/colors.js +13 -0
  386. package/cjs/utils/deepClone.d.ts +1 -0
  387. package/cjs/utils/deepClone.js +7 -0
  388. package/cjs/utils/elements.d.ts +4 -0
  389. package/cjs/utils/elements.js +8 -0
  390. package/cjs/utils/format.d.ts +9 -0
  391. package/cjs/utils/format.js +86 -0
  392. package/cjs/utils/index.d.ts +6 -0
  393. package/cjs/utils/index.js +22 -0
  394. package/cjs/utils/input.d.ts +1 -0
  395. package/cjs/utils/input.js +28 -0
  396. package/cjs/utils/navigationRoutes.d.ts +13 -0
  397. package/cjs/utils/navigationRoutes.js +15 -0
  398. package/config/version.d.ts +1 -1
  399. package/config/version.js +1 -1
  400. package/index.js +3 -1
  401. package/package.json +25 -11
  402. package/tsconfig.cjs.tsbuildinfo +1 -0
@@ -0,0 +1,109 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ var __importDefault = (this && this.__importDefault) || function (mod) {
12
+ return (mod && mod.__esModule) ? mod : { "default": mod };
13
+ };
14
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ exports.useSwapRoutes = void 0;
16
+ const react_query_1 = require("@tanstack/react-query");
17
+ const big_js_1 = __importDefault(require("big.js"));
18
+ const react_hook_form_1 = require("react-hook-form");
19
+ const _1 = require(".");
20
+ const lifi_1 = require("../config/lifi");
21
+ const SwapFormProvider_1 = require("../providers/SwapFormProvider");
22
+ const WalletProvider_1 = require("../providers/WalletProvider");
23
+ const stores_1 = require("../stores");
24
+ const refetchTime = 60000;
25
+ const useSwapRoutes = () => {
26
+ var _a;
27
+ const { account } = (0, WalletProvider_1.useWallet)();
28
+ const queryClient = (0, react_query_1.useQueryClient)();
29
+ const { slippage, enabledBridges, enabledExchanges, routePriority } = (0, stores_1.useSettings)([
30
+ 'slippage',
31
+ 'routePriority',
32
+ 'enabledBridges',
33
+ 'enabledExchanges',
34
+ ]);
35
+ const [fromChainId, fromTokenAddress, toChainId, toTokenAddress] = (0, react_hook_form_1.useWatch)({
36
+ name: [
37
+ SwapFormProvider_1.SwapFormKey.FromChain,
38
+ SwapFormProvider_1.SwapFormKey.FromToken,
39
+ SwapFormProvider_1.SwapFormKey.ToChain,
40
+ SwapFormProvider_1.SwapFormKey.ToToken,
41
+ ],
42
+ });
43
+ const [fromTokenAmount] = (0, _1.useDebouncedWatch)([SwapFormProvider_1.SwapFormKey.FromAmount], 250);
44
+ const { token } = (0, _1.useToken)(fromChainId, fromTokenAddress);
45
+ const isEnabled =
46
+ // Boolean(account.address) &&
47
+ !isNaN(fromChainId) &&
48
+ !isNaN(toChainId) &&
49
+ Boolean(token === null || token === void 0 ? void 0 : token.address) &&
50
+ Boolean(toTokenAddress) &&
51
+ !isNaN(fromTokenAmount) &&
52
+ Number(fromTokenAmount) > 0 &&
53
+ !Number.isNaN(slippage);
54
+ const queryKey = [
55
+ 'routes',
56
+ account.address,
57
+ fromChainId,
58
+ token === null || token === void 0 ? void 0 : token.address,
59
+ fromTokenAmount,
60
+ toChainId,
61
+ toTokenAddress,
62
+ slippage,
63
+ enabledBridges,
64
+ enabledExchanges,
65
+ routePriority,
66
+ ];
67
+ const previousDataUpdatedAt = (_a = queryClient.getQueryState(queryKey)) === null || _a === void 0 ? void 0 : _a.dataUpdatedAt;
68
+ const refetchInterval = previousDataUpdatedAt
69
+ ? Math.min(Math.abs(refetchTime - (Date.now() - previousDataUpdatedAt)), refetchTime)
70
+ : refetchTime;
71
+ const { data, isLoading, isFetching, isFetched, dataUpdatedAt, refetch } = (0, react_query_1.useQuery)(queryKey, ({ queryKey: [_, address, fromChainId, fromTokenAddress, fromTokenAmount, toChainId, toTokenAddress, slippage, enabledBridges, enabledExchanges, routePriority,], signal, }) => __awaiter(void 0, void 0, void 0, function* () {
72
+ var _b;
73
+ return lifi_1.LiFi.getRoutes({
74
+ fromChainId,
75
+ fromAmount: (0, big_js_1.default)(Number(fromTokenAmount) * Math.pow(10, ((_b = token === null || token === void 0 ? void 0 : token.decimals) !== null && _b !== void 0 ? _b : 0))).toString(),
76
+ fromTokenAddress,
77
+ toChainId,
78
+ toTokenAddress,
79
+ fromAddress: address,
80
+ toAddress: address,
81
+ options: {
82
+ slippage: slippage / 100,
83
+ bridges: {
84
+ allow: enabledBridges,
85
+ },
86
+ exchanges: {
87
+ allow: enabledExchanges,
88
+ },
89
+ order: routePriority,
90
+ },
91
+ }, { signal });
92
+ }), {
93
+ enabled: isEnabled,
94
+ refetchIntervalInBackground: true,
95
+ refetchInterval,
96
+ staleTime: refetchTime,
97
+ cacheTime: refetchTime,
98
+ });
99
+ return {
100
+ routes: data === null || data === void 0 ? void 0 : data.routes,
101
+ isLoading: isEnabled && isLoading,
102
+ isFetching,
103
+ isFetched,
104
+ dataUpdatedAt,
105
+ refetchTime,
106
+ refetch,
107
+ };
108
+ };
109
+ exports.useSwapRoutes = useSwapRoutes;
@@ -0,0 +1 @@
1
+ export declare const useTelemetry: (disabled?: boolean) => void;
@@ -0,0 +1,22 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.useTelemetry = void 0;
4
+ /* eslint-disable consistent-return */
5
+ const react_1 = require("react");
6
+ const sentry_1 = require("../config/sentry");
7
+ const useTelemetry = (disabled) => {
8
+ (0, react_1.useEffect)(() => {
9
+ if (disabled) {
10
+ if (process.env.NODE_ENV === 'production') {
11
+ console.warn('Enable crash reports and diagnostic data to be collected. This helps us to better understand how the widget is performing and where improvements need to be made.');
12
+ }
13
+ }
14
+ else {
15
+ (0, sentry_1.initSentry)(true);
16
+ return () => {
17
+ (0, sentry_1.initSentry)(false);
18
+ };
19
+ }
20
+ }, [disabled]);
21
+ };
22
+ exports.useTelemetry = useTelemetry;
@@ -0,0 +1,5 @@
1
+ export declare const useToken: (chainId: number, tokenAddress: string) => {
2
+ token: import("..").Token | undefined;
3
+ isLoading: boolean;
4
+ isFetching: boolean;
5
+ };
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.useToken = void 0;
4
+ const react_1 = require("react");
5
+ const useTokens_1 = require("./useTokens");
6
+ const useToken = (chainId, tokenAddress) => {
7
+ const { tokens, isLoading, isFetching } = (0, useTokens_1.useTokens)(chainId);
8
+ const token = (0, react_1.useMemo)(() => {
9
+ const token = tokens === null || tokens === void 0 ? void 0 : tokens.find((token) => token.address === tokenAddress && token.chainId === chainId);
10
+ return token;
11
+ }, [chainId, tokenAddress, tokens]);
12
+ return {
13
+ token,
14
+ isLoading,
15
+ isFetching,
16
+ };
17
+ };
18
+ exports.useToken = useToken;
@@ -0,0 +1,5 @@
1
+ export declare const useTokenBalance: (chainId: number, tokenAddress: string) => {
2
+ token: import("..").Token | undefined;
3
+ isLoading: boolean;
4
+ refetch: <TPageData>(options?: (import("@tanstack/query-core").RefetchOptions & import("@tanstack/query-core").RefetchQueryFilters<TPageData>) | undefined) => Promise<import("@tanstack/query-core").QueryObserverResult<import("..").Token[] | undefined, unknown>>;
5
+ };
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.useTokenBalance = void 0;
4
+ const react_1 = require("react");
5
+ const useTokenBalances_1 = require("./useTokenBalances");
6
+ const useTokenBalance = (chainId, tokenAddress) => {
7
+ const { tokens, tokensWithBalance, isBalanceLoading, refetch } = (0, useTokenBalances_1.useTokenBalances)(chainId);
8
+ const token = (0, react_1.useMemo)(() => {
9
+ var _a;
10
+ const token = (_a = (tokensWithBalance !== null && tokensWithBalance !== void 0 ? tokensWithBalance : tokens)) === null || _a === void 0 ? void 0 : _a.find((token) => token.address === tokenAddress && token.chainId === chainId);
11
+ return token;
12
+ }, [chainId, tokenAddress, tokens, tokensWithBalance]);
13
+ return {
14
+ token,
15
+ isLoading: isBalanceLoading,
16
+ refetch,
17
+ };
18
+ };
19
+ exports.useTokenBalance = useTokenBalance;
@@ -0,0 +1,10 @@
1
+ import { Token } from '../types';
2
+ export declare const useTokenBalances: (selectedChainId: number) => {
3
+ tokens: Token[] | undefined;
4
+ tokensWithBalance: Token[] | undefined;
5
+ featuredTokens: import("@lifi/types").Token[] | undefined;
6
+ isLoading: boolean;
7
+ isBalanceLoading: boolean;
8
+ isBalanceFetched: boolean;
9
+ refetch: <TPageData>(options?: (import("@tanstack/react-query").RefetchOptions & import("@tanstack/react-query").RefetchQueryFilters<TPageData>) | undefined) => Promise<import("@tanstack/react-query").QueryObserverResult<Token[] | undefined, unknown>>;
10
+ };
@@ -0,0 +1,80 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.useTokenBalances = void 0;
13
+ /* eslint-disable consistent-return */
14
+ const react_query_1 = require("@tanstack/react-query");
15
+ const react_1 = require("react");
16
+ const lifi_1 = require("../config/lifi");
17
+ const WalletProvider_1 = require("../providers/WalletProvider");
18
+ const utils_1 = require("../utils");
19
+ const useFeaturedTokens_1 = require("./useFeaturedTokens");
20
+ const useTokens_1 = require("./useTokens");
21
+ const defaultRefetchInterval = 60000;
22
+ const minRefetchInterval = 1000;
23
+ const useTokenBalances = (selectedChainId) => {
24
+ const { account } = (0, WalletProvider_1.useWallet)();
25
+ const featuredTokens = (0, useFeaturedTokens_1.useFeaturedTokens)(selectedChainId);
26
+ const { tokens, isLoading } = (0, useTokens_1.useTokens)(selectedChainId);
27
+ const [refetchInterval, setRefetchInterval] = (0, react_1.useState)(defaultRefetchInterval);
28
+ const isBalanceLoadingEnabled = Boolean(account.address) && Boolean(tokens === null || tokens === void 0 ? void 0 : tokens.length);
29
+ const { data: tokensWithBalance, isLoading: isBalanceLoading, isFetched: isBalanceFetched, refetch, } = (0, react_query_1.useQuery)(['token-balances', account.address, selectedChainId, tokens === null || tokens === void 0 ? void 0 : tokens.length], ({ queryKey: [, accountAddress] }) => __awaiter(void 0, void 0, void 0, function* () {
30
+ if (!accountAddress || !tokens) {
31
+ return;
32
+ }
33
+ const tokenBalances = yield lifi_1.LiFi.getTokenBalances(accountAddress, tokens);
34
+ if (!(tokenBalances === null || tokenBalances === void 0 ? void 0 : tokenBalances.length)) {
35
+ // Sometimes RPCs (e.g. Arbitrum) don't return balances on first call
36
+ // TODO: fix and remove backplane
37
+ setRefetchInterval((interval) => interval === defaultRefetchInterval
38
+ ? minRefetchInterval
39
+ : interval * 2);
40
+ return;
41
+ }
42
+ const featuredTokenAddresses = new Set(featuredTokens === null || featuredTokens === void 0 ? void 0 : featuredTokens.map((token) => token.address));
43
+ const sortFn = (a, b) => {
44
+ var _a, _b, _c, _d;
45
+ return parseFloat((_a = b.amount) !== null && _a !== void 0 ? _a : '0') * parseFloat((_b = b.priceUSD) !== null && _b !== void 0 ? _b : '0') -
46
+ parseFloat((_c = a.amount) !== null && _c !== void 0 ? _c : '0') * parseFloat((_d = a.priceUSD) !== null && _d !== void 0 ? _d : '0');
47
+ };
48
+ const formattedTokens = (tokenBalances.length === 0 ? tokens : tokenBalances).map((token) => {
49
+ token.amount = (0, utils_1.formatTokenAmount)(token.amount);
50
+ return token;
51
+ });
52
+ const result = [
53
+ ...formattedTokens
54
+ .filter((token) => token.amount !== '0' && featuredTokenAddresses.has(token.address))
55
+ .sort(sortFn),
56
+ ...formattedTokens.filter((token) => token.amount === '0' && featuredTokenAddresses.has(token.address)),
57
+ ...formattedTokens
58
+ .filter((token) => token.amount !== '0' &&
59
+ !featuredTokenAddresses.has(token.address))
60
+ .sort(sortFn),
61
+ ...formattedTokens.filter((token) => token.amount === '0' && !featuredTokenAddresses.has(token.address)),
62
+ ];
63
+ return result;
64
+ }), {
65
+ enabled: isBalanceLoadingEnabled,
66
+ refetchIntervalInBackground: true,
67
+ refetchInterval,
68
+ staleTime: refetchInterval,
69
+ });
70
+ return {
71
+ tokens,
72
+ tokensWithBalance,
73
+ featuredTokens,
74
+ isLoading,
75
+ isBalanceLoading: isBalanceLoading && isBalanceLoadingEnabled,
76
+ isBalanceFetched,
77
+ refetch,
78
+ };
79
+ };
80
+ exports.useTokenBalances = useTokenBalances;
@@ -0,0 +1,7 @@
1
+ import { Token } from '../types';
2
+ export declare const useTokenSearch: (token: string, chainId: number, enabled?: boolean) => {
3
+ token: Token | undefined;
4
+ isLoading: boolean;
5
+ isFetching: boolean;
6
+ isFetched: boolean;
7
+ };
@@ -0,0 +1,41 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.useTokenSearch = void 0;
13
+ const react_query_1 = require("@tanstack/react-query");
14
+ const lifi_1 = require("../config/lifi");
15
+ const useTokenSearch = (token, chainId, enabled) => {
16
+ const queryClient = (0, react_query_1.useQueryClient)();
17
+ const { data, isLoading, isFetching, isFetched } = (0, react_query_1.useQuery)(['token-search', chainId, token], ({ queryKey: [, chainId, token], signal }) => __awaiter(void 0, void 0, void 0, function* () {
18
+ const data = yield lifi_1.LiFi.getToken(chainId, token, {
19
+ signal,
20
+ });
21
+ if (data) {
22
+ queryClient.setQueriesData(['tokens', chainId], (tokens) => {
23
+ if (!(tokens === null || tokens === void 0 ? void 0 : tokens.some((token) => token.address === data.address))) {
24
+ tokens === null || tokens === void 0 ? void 0 : tokens.push(data);
25
+ }
26
+ return tokens;
27
+ });
28
+ }
29
+ return data;
30
+ }), {
31
+ enabled,
32
+ retry: false,
33
+ });
34
+ return {
35
+ token: data,
36
+ isLoading,
37
+ isFetching,
38
+ isFetched,
39
+ };
40
+ };
41
+ exports.useTokenSearch = useTokenSearch;
@@ -0,0 +1,6 @@
1
+ import { Token } from '../types';
2
+ export declare const useTokens: (selectedChainId: number) => {
3
+ tokens: Token[] | undefined;
4
+ isLoading: boolean;
5
+ isFetching: boolean;
6
+ };
@@ -0,0 +1,36 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.useTokens = void 0;
13
+ const react_query_1 = require("@tanstack/react-query");
14
+ const lifi_1 = require("../config/lifi");
15
+ const useFeaturedTokens_1 = require("./useFeaturedTokens");
16
+ const useTokens = (selectedChainId) => {
17
+ const featuredTokens = (0, useFeaturedTokens_1.useFeaturedTokens)(selectedChainId);
18
+ const { data: tokens, isLoading, isFetching, } = (0, react_query_1.useQuery)(['tokens', selectedChainId, featuredTokens === null || featuredTokens === void 0 ? void 0 : featuredTokens.length], () => __awaiter(void 0, void 0, void 0, function* () {
19
+ var _a, _b, _c;
20
+ const data = yield lifi_1.LiFi.getTokens({ chains: [selectedChainId] });
21
+ const featuredTokenAddresses = new Set(featuredTokens === null || featuredTokens === void 0 ? void 0 : featuredTokens.map((token) => token.address));
22
+ return [
23
+ ...((_a = featuredTokens === null || featuredTokens === void 0 ? void 0 : featuredTokens.map((token) => {
24
+ token.featured = true;
25
+ return token;
26
+ })) !== null && _a !== void 0 ? _a : []),
27
+ ...((_c = (_b = data.tokens) === null || _b === void 0 ? void 0 : _b[selectedChainId].filter((token) => !featuredTokenAddresses.has(token.address))) !== null && _c !== void 0 ? _c : []),
28
+ ];
29
+ }));
30
+ return {
31
+ tokens,
32
+ isLoading,
33
+ isFetching,
34
+ };
35
+ };
36
+ exports.useTokens = useTokens;
@@ -0,0 +1,10 @@
1
+ import { Bridge, Exchange } from '@lifi/sdk';
2
+ declare type FormattedTool<T, K extends keyof T> = Record<string, Pick<T, K>>;
3
+ export declare const useTools: () => {
4
+ tools: import("@lifi/sdk").ToolsResponse | undefined;
5
+ formattedTools: {
6
+ bridges: FormattedTool<Bridge, "key" | "name" | "logoURI"> | undefined;
7
+ exchanges: FormattedTool<Exchange, "key" | "name" | "logoURI"> | undefined;
8
+ };
9
+ };
10
+ export {};
@@ -0,0 +1,28 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.useTools = void 0;
4
+ const react_query_1 = require("@tanstack/react-query");
5
+ const react_1 = require("react");
6
+ const lifi_1 = require("../config/lifi");
7
+ const stores_1 = require("../stores");
8
+ const useTools = () => {
9
+ const initializeTools = (0, stores_1.useSettingsStore)((state) => state.initializeTools);
10
+ const { data } = (0, react_query_1.useQuery)(['tools'], ({ signal }) => lifi_1.LiFi.getTools(undefined, { signal }), {
11
+ onSuccess(data) {
12
+ initializeTools('Bridges', data.bridges.map((bridge) => bridge.key));
13
+ initializeTools('Exchanges', data.exchanges.map((exchange) => exchange.key));
14
+ },
15
+ });
16
+ const formattedTools = (0, react_1.useMemo)(() => ({
17
+ bridges: data === null || data === void 0 ? void 0 : data.bridges.reduce((bridges, bridge) => {
18
+ bridges[bridge.key] = bridge;
19
+ return bridges;
20
+ }, {}),
21
+ exchanges: data === null || data === void 0 ? void 0 : data.exchanges.reduce((exchanges, exchange) => {
22
+ exchanges[exchange.key] = exchange;
23
+ return exchanges;
24
+ }, {}),
25
+ }), [data === null || data === void 0 ? void 0 : data.bridges, data === null || data === void 0 ? void 0 : data.exchanges]);
26
+ return { tools: data, formattedTools };
27
+ };
28
+ exports.useTools = useTools;
@@ -0,0 +1,175 @@
1
+ {
2
+ "header": {
3
+ "walletConnected": "Wallet connected",
4
+ "connectWallet": "Connect wallet",
5
+ "selectWallet": "Select your wallet",
6
+ "swap": "Swap",
7
+ "from": "Swap from",
8
+ "to": "Swap to",
9
+ "settings": "Settings",
10
+ "routes": "You get",
11
+ "swapHistory": "Swap history",
12
+ "swapDetails": "Swap details"
13
+ },
14
+ "button": {
15
+ "connectWallet": "Connect wallet",
16
+ "switchChain": "Switch chain",
17
+ "swap": "Swap",
18
+ "reviewSwap": "Review swap",
19
+ "startSwap": "Start swap",
20
+ "restartSwap": "Restart swap",
21
+ "removeSwap": "Remove swap",
22
+ "done": "Done",
23
+ "okay": "Okay",
24
+ "seeDetails": "See details",
25
+ "tryAgain": "Try again",
26
+ "light": "Light",
27
+ "dark": "Dark",
28
+ "auto": "Auto",
29
+ "ok": "Ok",
30
+ "cancel": "Cancel",
31
+ "delete": "Delete",
32
+ "hide": "Hide",
33
+ "max": "max",
34
+ "contactSupport": "Contact support",
35
+ "lifiSwap": "LI.FI Swap"
36
+ },
37
+ "swap": {
38
+ "from": "From",
39
+ "to": "To",
40
+ "amount": "You pay",
41
+ "maxAmount": "/ {{amount}}",
42
+ "routes": "You get",
43
+ "approximateCurrency": "\u2248 {{value, currency(currency: USD)}}",
44
+ "currency": "{{value, currency(currency: USD)}}",
45
+ "sendToRecipient": "Send to recipient",
46
+ "addressConfirmation": "I confirm that the address above is correct",
47
+ "gas": "gas fee",
48
+ "minutes": "minutes",
49
+ "tokenSearch": "Search your token",
50
+ "selectChain": "Chain",
51
+ "selectToken": "Token",
52
+ "selectChainAndToken": "Select chain and token",
53
+ "featuredTokens": "Featured tokens",
54
+ "otherTokens": "Other tokens",
55
+ "inProgress": "In progress",
56
+ "couldntFindTokens": "We couldn't find tokens on this chain or you don't have any.",
57
+ "stepSwap": "Swap",
58
+ "stepBridge": "Bridge",
59
+ "stepSwapAndBridge": "Swap and bridge",
60
+ "estimatedTime": "~{{value}} min.",
61
+ "networkIsBusy": "Network is busy...",
62
+ "crossStepDetails": "Bridge from {{from}} to {{to}} via {{tool}}",
63
+ "swapStepDetails": "Swap on {{chain}} via {{tool}}",
64
+ "tokenOnChain": "{{tokenSymbol}} on {{chainName}}",
65
+ "tokenOnChainAmount": "{{amount}} {{tokenSymbol}} on {{chainName}}",
66
+ "routeId": "Route ID",
67
+ "tags": {
68
+ "recommended": "Recommended",
69
+ "fastest": "Fast",
70
+ "cheapest": "Cheap",
71
+ "safest": "Safe",
72
+ "general": "General"
73
+ },
74
+ "success": {
75
+ "title": {
76
+ "fundsReceived": "Funds received"
77
+ },
78
+ "message": {
79
+ "fundsReceived": "You now have {{amount}} {{tokenSymbol}} in your wallet on {{chainName}} chain."
80
+ }
81
+ },
82
+ "info": {
83
+ "title": {
84
+ "routeNotFound": "No routes available",
85
+ "emptySwapHistory": "No recent swaps"
86
+ },
87
+ "message": {
88
+ "routeNotFound": "Try another token combination.",
89
+ "emptySwapHistory": "Swap history is only stored locally and will be deleted if you clear your browser data."
90
+ }
91
+ },
92
+ "warning": {
93
+ "title": {
94
+ "insufficientGas": "Insufficient gas",
95
+ "deleteSwap": "Delete this swap?",
96
+ "deleteSwapHistory": "Delete swap history?"
97
+ },
98
+ "message": {
99
+ "insufficientFunds": "You don't have enough funds to execute the swap.",
100
+ "insufficientGas": "You need to add at least:",
101
+ "deleteSwap": "Swap history is only stored locally and can't be recovered if you delete it."
102
+ }
103
+ },
104
+ "error": {
105
+ "title": {
106
+ "chainSwitch": "Chain switch required.",
107
+ "transactionFailed": "Transaction has failed.",
108
+ "transactionUnderpriced": "Transaction is underpriced.",
109
+ "transactionUnprepared": "Unable to prepare transaction.",
110
+ "unknown": "Something went wrong.",
111
+ "userRejectedSignatureRequest": "Signature required.",
112
+ "slippageTooLarge": "Slippage too large."
113
+ },
114
+ "message": {
115
+ "signatureRequired": "Your signature is required to complete the transaction. {{amount}} {{tokenSymbol}} on {{chainName}} remain in your wallet.",
116
+ "transactionFailed": "Please check the block explorer for more information.",
117
+ "transactionNotSent": "Transaction was not sent, your funds are still in your wallet ({{amount}} {{tokenSymbol}} on {{chainName}}).",
118
+ "slippageTooLarge": "The slippage is larger than the defined threshold. Please request a new route to get a fresh quote."
119
+ }
120
+ },
121
+ "process": {
122
+ "tokenAllowance": {
123
+ "started": "Setting token allowance.",
124
+ "pending": "Waiting for token allowance.",
125
+ "done": "Token allowance approved."
126
+ },
127
+ "switchChain": {
128
+ "pending": "Chain switch required.",
129
+ "done": "Chain switched successfully."
130
+ },
131
+ "swap": {
132
+ "started": "Preparing swap.",
133
+ "actionRequired": "Please sign the transaction.",
134
+ "pending": "Swapping.",
135
+ "done": "Swap completed."
136
+ },
137
+ "crossChain": {
138
+ "started": "Preparing transaction.",
139
+ "actionRequired": "Please sign the transaction.",
140
+ "pending": "Waiting for transaction.",
141
+ "done": "Transaction approved."
142
+ },
143
+ "receivingChain": {
144
+ "pending": "Waiting for receiving chain.",
145
+ "done": "Funds received."
146
+ }
147
+ }
148
+ },
149
+ "settings": {
150
+ "routePriority": "Route priority",
151
+ "slippage": "Slippage",
152
+ "gasPrice": {
153
+ "title": "Gas price",
154
+ "slow": "Slow",
155
+ "normal": "Normal",
156
+ "fast": "Fast"
157
+ },
158
+ "advancedPreferences": "Advanced preferences",
159
+ "enabledBridges": "Enabled bridges",
160
+ "selectEnabledBridges": "Select enabled bridges",
161
+ "enabledExchanges": "Enabled exchanges",
162
+ "selectEnabledExchanges": "Select enabled exchanges",
163
+ "resetToDefault": "Reset to default"
164
+ },
165
+ "wallet": {
166
+ "extensionNotFound": "Please make sure that only the {{name}} browser extension is active before choosing this wallet."
167
+ },
168
+ "tooltip": {
169
+ "notFound": {
170
+ "title": "404",
171
+ "text": "We couldn't find this page."
172
+ },
173
+ "progressToNextUpdate": "Displayed data will auto-refresh after {{value}} seconds. Click this circle to update manually."
174
+ }
175
+ }