@rango-dev/widget-embedded 0.17.1-next.3 → 0.17.1-next.31

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 (331) hide show
  1. package/dist/QueueManager.d.ts +5 -2
  2. package/dist/QueueManager.d.ts.map +1 -1
  3. package/dist/components/AppRouter.d.ts +0 -2
  4. package/dist/components/AppRouter.d.ts.map +1 -1
  5. package/dist/components/AppRoutes.d.ts +1 -6
  6. package/dist/components/AppRoutes.d.ts.map +1 -1
  7. package/dist/components/ConfirmWalletsModal/ConfirmWallets.styles.d.ts +370 -56
  8. package/dist/components/ConfirmWalletsModal/ConfirmWallets.styles.d.ts.map +1 -1
  9. package/dist/components/ConfirmWalletsModal/ConfirmWalletsModal.d.ts.map +1 -1
  10. package/dist/components/ConfirmWalletsModal/ConfirmWalletsModal.types.d.ts +0 -2
  11. package/dist/components/ConfirmWalletsModal/ConfirmWalletsModal.types.d.ts.map +1 -1
  12. package/dist/components/ConfirmWalletsModal/WalletList.d.ts.map +1 -1
  13. package/dist/components/ConfirmWalletsModal/WalletList.type.d.ts +1 -4
  14. package/dist/components/ConfirmWalletsModal/WalletList.type.d.ts.map +1 -1
  15. package/dist/components/HeaderButtons/HomeButtons.d.ts.map +1 -1
  16. package/dist/components/Layout/Layout.d.ts.map +1 -1
  17. package/dist/components/Layout/Layout.types.d.ts +2 -2
  18. package/dist/components/Layout/Layout.types.d.ts.map +1 -1
  19. package/dist/components/LoadingSwapDetails/LoadingSwapDetailStep.d.ts.map +1 -1
  20. package/dist/components/LoadingSwapDetails/LoadingSwapDetails.d.ts.map +1 -1
  21. package/dist/components/LoadingSwapDetails/LoadingSwapDetails.styles.d.ts +1727 -0
  22. package/dist/components/LoadingSwapDetails/LoadingSwapDetails.styles.d.ts.map +1 -1
  23. package/dist/components/NotificationContent/NotificationContent.d.ts.map +1 -1
  24. package/dist/components/Quote/Quote.d.ts.map +1 -1
  25. package/dist/components/Quote/Quote.styles.d.ts +633 -3
  26. package/dist/components/Quote/Quote.styles.d.ts.map +1 -1
  27. package/dist/components/Quote/Quote.types.d.ts +0 -1
  28. package/dist/components/Quote/Quote.types.d.ts.map +1 -1
  29. package/dist/components/Quote/QuoteSummary.styles.d.ts +157 -0
  30. package/dist/components/Quote/QuoteSummary.styles.d.ts.map +1 -1
  31. package/dist/components/QuoteWarningsAndErrors/QuoteWarningsAndErrors.d.ts.map +1 -1
  32. package/dist/components/QuoteWarningsAndErrors/QuoteWarningsAndErrors.helpers.d.ts.map +1 -1
  33. package/dist/components/QuoteWarningsAndErrors/QuoteWarningsAndErrors.styles.d.ts.map +1 -1
  34. package/dist/components/QuoteWarningsAndErrors/QuoteWarningsAndErrors.types.d.ts +1 -0
  35. package/dist/components/QuoteWarningsAndErrors/QuoteWarningsAndErrors.types.d.ts.map +1 -1
  36. package/dist/components/Slippage/Slippage.d.ts.map +1 -1
  37. package/dist/components/SwapDetails/SwapDetails.Placeholder.d.ts.map +1 -1
  38. package/dist/components/SwapDetails/SwapDetails.d.ts.map +1 -1
  39. package/dist/components/SwapDetails/SwapDetails.helpers.d.ts +1 -1
  40. package/dist/components/SwapDetails/SwapDetails.helpers.d.ts.map +1 -1
  41. package/dist/components/SwapDetails/SwapDetails.styles.d.ts +628 -0
  42. package/dist/components/SwapDetails/SwapDetails.styles.d.ts.map +1 -1
  43. package/dist/components/SwapDetailsModal/SwapDetailsCompleteModal.d.ts.map +1 -1
  44. package/dist/components/SwapDetailsModal/SwapDetailsModal.helpers.d.ts +1 -1
  45. package/dist/components/SwapDetailsModal/SwapDetailsModal.helpers.d.ts.map +1 -1
  46. package/dist/components/SwapDetailsModal/SwapDetailsModal.types.d.ts +1 -1
  47. package/dist/components/SwapDetailsModal/SwapDetailsModal.types.d.ts.map +1 -1
  48. package/dist/components/SwapsGroup/SwapsGroup.d.ts.map +1 -1
  49. package/dist/components/SwapsGroup/SwapsGroup.styles.d.ts +157 -0
  50. package/dist/components/SwapsGroup/SwapsGroup.styles.d.ts.map +1 -1
  51. package/dist/components/TokenList/TokenList.d.ts.map +1 -1
  52. package/dist/components/TokenList/TokenList.helpers.d.ts +2 -2
  53. package/dist/components/TokenList/TokenList.helpers.d.ts.map +1 -1
  54. package/dist/components/TokenList/TokenList.styles.d.ts +942 -0
  55. package/dist/components/TokenList/TokenList.styles.d.ts.map +1 -1
  56. package/dist/components/TokenList/TokenList.types.d.ts +3 -9
  57. package/dist/components/TokenList/TokenList.types.d.ts.map +1 -1
  58. package/dist/components/TokenList/index.d.ts +0 -1
  59. package/dist/components/TokenList/index.d.ts.map +1 -1
  60. package/dist/components/UpdateUrl.d.ts +1 -6
  61. package/dist/components/UpdateUrl.d.ts.map +1 -1
  62. package/dist/components/WidgetEvents.d.ts.map +1 -1
  63. package/dist/constants/errors.d.ts.map +1 -1
  64. package/dist/constants/index.d.ts +1 -0
  65. package/dist/constants/index.d.ts.map +1 -1
  66. package/dist/constants/navigationRoutes.d.ts +1 -2
  67. package/dist/constants/navigationRoutes.d.ts.map +1 -1
  68. package/dist/constants/searchParams.d.ts +2 -1
  69. package/dist/constants/searchParams.d.ts.map +1 -1
  70. package/dist/containers/App/App.d.ts +3 -0
  71. package/dist/containers/App/App.d.ts.map +1 -0
  72. package/dist/containers/App/App.styles.d.ts +158 -0
  73. package/dist/containers/App/App.styles.d.ts.map +1 -0
  74. package/dist/containers/App/index.d.ts +2 -0
  75. package/dist/containers/App/index.d.ts.map +1 -0
  76. package/dist/containers/QuoteInfo/QuoteInfo.d.ts.map +1 -1
  77. package/dist/containers/QuoteInfo/QuoteInfo.styles.d.ts +316 -0
  78. package/dist/containers/QuoteInfo/QuoteInfo.styles.d.ts.map +1 -1
  79. package/dist/containers/QuoteInfo/QuoteInfo.types.d.ts +3 -0
  80. package/dist/containers/QuoteInfo/QuoteInfo.types.d.ts.map +1 -1
  81. package/dist/containers/Wallets/Wallets.d.ts +6 -0
  82. package/dist/containers/Wallets/Wallets.d.ts.map +1 -0
  83. package/dist/containers/Wallets/Wallets.types.d.ts +11 -0
  84. package/dist/containers/Wallets/Wallets.types.d.ts.map +1 -0
  85. package/dist/containers/Wallets/index.d.ts +2 -0
  86. package/dist/containers/Wallets/index.d.ts.map +1 -0
  87. package/dist/containers/Widget/Widget.d.ts +5 -0
  88. package/dist/containers/Widget/Widget.d.ts.map +1 -0
  89. package/dist/containers/Widget/Widget.types.d.ts +5 -0
  90. package/dist/containers/Widget/Widget.types.d.ts.map +1 -0
  91. package/dist/containers/Widget/index.d.ts +3 -0
  92. package/dist/containers/Widget/index.d.ts.map +1 -0
  93. package/dist/containers/WidgetInfo/WidgetInfo.d.ts +6 -0
  94. package/dist/containers/WidgetInfo/WidgetInfo.d.ts.map +1 -0
  95. package/dist/containers/WidgetInfo/WidgetInfo.helpers.d.ts +20 -0
  96. package/dist/containers/WidgetInfo/WidgetInfo.helpers.d.ts.map +1 -0
  97. package/dist/containers/WidgetInfo/WidgetInfo.types.d.ts +21 -0
  98. package/dist/containers/WidgetInfo/WidgetInfo.types.d.ts.map +1 -0
  99. package/dist/containers/WidgetInfo/index.d.ts +2 -0
  100. package/dist/containers/WidgetInfo/index.d.ts.map +1 -0
  101. package/dist/containers/WidgetProvider/WidgetProvider.d.ts +5 -0
  102. package/dist/containers/WidgetProvider/WidgetProvider.d.ts.map +1 -0
  103. package/dist/containers/WidgetProvider/WidgetProvider.types.d.ts +7 -0
  104. package/dist/containers/WidgetProvider/WidgetProvider.types.d.ts.map +1 -0
  105. package/dist/containers/WidgetProvider/index.d.ts +2 -0
  106. package/dist/containers/WidgetProvider/index.d.ts.map +1 -0
  107. package/dist/hooks/useConfirmSwap/useConfirmSwap.d.ts.map +1 -1
  108. package/dist/hooks/useConfirmSwap/useConfirmSwap.helpers.d.ts +6 -3
  109. package/dist/hooks/useConfirmSwap/useConfirmSwap.helpers.d.ts.map +1 -1
  110. package/dist/hooks/useConfirmSwap/useConfirmSwap.types.d.ts +1 -1
  111. package/dist/hooks/useConfirmSwap/useConfirmSwap.types.d.ts.map +1 -1
  112. package/dist/hooks/useForceAutoConnect.d.ts +2 -0
  113. package/dist/hooks/useForceAutoConnect.d.ts.map +1 -0
  114. package/dist/hooks/useLanguage.d.ts +1 -1
  115. package/dist/hooks/useLanguage.d.ts.map +1 -1
  116. package/dist/hooks/useNavigateBack.d.ts +1 -3
  117. package/dist/hooks/useNavigateBack.d.ts.map +1 -1
  118. package/dist/hooks/usePrepareBlockchainList/usePrepareBlockchainList.constants.d.ts +1 -1
  119. package/dist/hooks/usePrepareBlockchainList/usePrepareBlockchainList.d.ts +2 -2
  120. package/dist/hooks/usePrepareBlockchainList/usePrepareBlockchainList.d.ts.map +1 -1
  121. package/dist/hooks/usePrepareBlockchainList/usePrepareBlockchainList.helpers.d.ts +3 -5
  122. package/dist/hooks/usePrepareBlockchainList/usePrepareBlockchainList.helpers.d.ts.map +1 -1
  123. package/dist/hooks/usePrepareBlockchainList/usePrepareBlockchainList.mock.d.ts +1 -0
  124. package/dist/hooks/usePrepareBlockchainList/usePrepareBlockchainList.mock.d.ts.map +1 -1
  125. package/dist/hooks/usePrepareBlockchainList/usePrepareBlockchainList.types.d.ts +5 -1
  126. package/dist/hooks/usePrepareBlockchainList/usePrepareBlockchainList.types.d.ts.map +1 -1
  127. package/dist/hooks/useSwapInput.d.ts.map +1 -1
  128. package/dist/hooks/useSyncStoresWithConfig.d.ts +1 -2
  129. package/dist/hooks/useSyncStoresWithConfig.d.ts.map +1 -1
  130. package/dist/hooks/useTheme.d.ts +1 -1
  131. package/dist/hooks/useTheme.d.ts.map +1 -1
  132. package/dist/hooks/useWalletList.d.ts.map +1 -1
  133. package/dist/index.d.ts +20 -8
  134. package/dist/index.d.ts.map +1 -1
  135. package/dist/index.js +1 -1
  136. package/dist/index.js.map +4 -4
  137. package/dist/pages/ConfirmSwapPage.d.ts +1 -6
  138. package/dist/pages/ConfirmSwapPage.d.ts.map +1 -1
  139. package/dist/pages/HistoryPage.d.ts.map +1 -1
  140. package/dist/pages/Home.d.ts.map +1 -1
  141. package/dist/pages/LanguagePage.d.ts.map +1 -1
  142. package/dist/pages/LiquiditySourcePage.d.ts +1 -2
  143. package/dist/pages/LiquiditySourcePage.d.ts.map +1 -1
  144. package/dist/pages/SelectBlockchainPage.d.ts.map +1 -1
  145. package/dist/pages/SelectSwapItemsPage.d.ts.map +1 -1
  146. package/dist/pages/SettingsPage.d.ts +1 -6
  147. package/dist/pages/SettingsPage.d.ts.map +1 -1
  148. package/dist/pages/SwapDetailsPage.d.ts.map +1 -1
  149. package/dist/pages/ThemePage.d.ts.map +1 -1
  150. package/dist/pages/WalletsPage.d.ts +1 -8
  151. package/dist/pages/WalletsPage.d.ts.map +1 -1
  152. package/dist/store/AppStore.d.ts +47 -0
  153. package/dist/store/AppStore.d.ts.map +1 -0
  154. package/dist/store/app.d.ts +41 -22
  155. package/dist/store/app.d.ts.map +1 -1
  156. package/dist/store/notification.d.ts +4 -3
  157. package/dist/store/notification.d.ts.map +1 -1
  158. package/dist/store/quote.d.ts +23 -16
  159. package/dist/store/quote.d.ts.map +1 -1
  160. package/dist/store/slices/config.d.ts +3 -2
  161. package/dist/store/slices/config.d.ts.map +1 -1
  162. package/dist/store/slices/data.d.ts +3 -0
  163. package/dist/store/slices/data.d.ts.map +1 -1
  164. package/dist/store/slices/settings.d.ts +39 -0
  165. package/dist/store/slices/settings.d.ts.map +1 -0
  166. package/dist/store/ui.d.ts +2 -1
  167. package/dist/store/ui.d.ts.map +1 -1
  168. package/dist/store/wallets.d.ts +14 -9
  169. package/dist/store/wallets.d.ts.map +1 -1
  170. package/dist/types/config.d.ts +38 -5
  171. package/dist/types/config.d.ts.map +1 -1
  172. package/dist/types/swap.d.ts +4 -14
  173. package/dist/types/swap.d.ts.map +1 -1
  174. package/dist/types/wallets.d.ts +15 -1
  175. package/dist/types/wallets.d.ts.map +1 -1
  176. package/dist/utils/colors.d.ts.map +1 -1
  177. package/dist/utils/configs.d.ts +1 -0
  178. package/dist/utils/configs.d.ts.map +1 -1
  179. package/dist/utils/meta.d.ts +2 -1
  180. package/dist/utils/meta.d.ts.map +1 -1
  181. package/dist/utils/providers.d.ts +2 -2
  182. package/dist/utils/providers.d.ts.map +1 -1
  183. package/dist/utils/queue.d.ts +2 -2
  184. package/dist/utils/queue.d.ts.map +1 -1
  185. package/dist/utils/quote.d.ts +1 -1
  186. package/dist/utils/quote.d.ts.map +1 -1
  187. package/dist/utils/settings.d.ts +6 -2
  188. package/dist/utils/settings.d.ts.map +1 -1
  189. package/dist/utils/swap.d.ts +16 -7
  190. package/dist/utils/swap.d.ts.map +1 -1
  191. package/dist/utils/time.d.ts +1 -1
  192. package/dist/utils/time.d.ts.map +1 -1
  193. package/dist/utils/wallets.d.ts +7 -9
  194. package/dist/utils/wallets.d.ts.map +1 -1
  195. package/package.json +12 -10
  196. package/src/QueueManager.tsx +18 -17
  197. package/src/components/AppRouter.tsx +8 -32
  198. package/src/components/AppRoutes.tsx +57 -69
  199. package/src/components/BlockchainList/BlockchainList.styles.ts +2 -2
  200. package/src/components/BlockchainList/BlockchainList.tsx +4 -4
  201. package/src/components/BlockchainsSection/BlockchainsSection.tsx +4 -4
  202. package/src/components/ConfirmWalletsModal/ConfirmWallets.styles.ts +12 -6
  203. package/src/components/ConfirmWalletsModal/ConfirmWalletsModal.tsx +20 -21
  204. package/src/components/ConfirmWalletsModal/ConfirmWalletsModal.types.ts +0 -2
  205. package/src/components/ConfirmWalletsModal/WalletList.tsx +6 -5
  206. package/src/components/ConfirmWalletsModal/WalletList.type.ts +1 -4
  207. package/src/components/HeaderButtons/HomeButtons.tsx +28 -18
  208. package/src/components/Layout/Layout.tsx +20 -7
  209. package/src/components/Layout/Layout.types.ts +2 -2
  210. package/src/components/LoadingSwapDetails/LoadingSwapDetailStep.tsx +14 -7
  211. package/src/components/LoadingSwapDetails/LoadingSwapDetails.styles.ts +63 -60
  212. package/src/components/LoadingSwapDetails/LoadingSwapDetails.tsx +17 -8
  213. package/src/components/NoResult/NoResult.helpers.ts +12 -12
  214. package/src/components/NoResult/NoResult.tsx +6 -6
  215. package/src/components/NotificationContent/NotificationContent.tsx +5 -3
  216. package/src/components/Quote/Quote.styles.ts +42 -12
  217. package/src/components/Quote/Quote.tsx +106 -37
  218. package/src/components/Quote/Quote.types.ts +0 -1
  219. package/src/components/Quote/QuoteSkeleton.tsx +1 -1
  220. package/src/components/Quote/QuoteSummary.styles.ts +9 -8
  221. package/src/components/Quote/QuoteSummary.tsx +2 -2
  222. package/src/components/QuoteWarningsAndErrors/QuoteErrorsModalItem.tsx +1 -1
  223. package/src/components/QuoteWarningsAndErrors/QuoteWarningsAndErrors.helpers.ts +11 -4
  224. package/src/components/QuoteWarningsAndErrors/QuoteWarningsAndErrors.styles.ts +8 -1
  225. package/src/components/QuoteWarningsAndErrors/QuoteWarningsAndErrors.tsx +13 -13
  226. package/src/components/QuoteWarningsAndErrors/QuoteWarningsAndErrors.types.ts +1 -0
  227. package/src/components/QuoteWarningsAndErrors/SlippageWariningModal.tsx +3 -3
  228. package/src/components/Slippage/Slippage.tsx +3 -5
  229. package/src/components/SwapDetails/SwapDetails.Placeholder.tsx +5 -7
  230. package/src/components/SwapDetails/SwapDetails.helpers.tsx +1 -1
  231. package/src/components/SwapDetails/SwapDetails.styles.ts +37 -33
  232. package/src/components/SwapDetails/SwapDetails.tsx +33 -45
  233. package/src/components/SwapDetailsAlerts/SwapDetailsAlerts.Warning.tsx +1 -1
  234. package/src/components/SwapDetailsModal/SwapDetailsCompleteModal.tsx +4 -3
  235. package/src/components/SwapDetailsModal/SwapDetailsModal.Cancel.tsx +2 -2
  236. package/src/components/SwapDetailsModal/SwapDetailsModal.helpers.tsx +1 -1
  237. package/src/components/SwapDetailsModal/SwapDetailsModal.tsx +1 -1
  238. package/src/components/SwapDetailsModal/SwapDetailsModal.types.ts +1 -1
  239. package/src/components/SwapsGroup/SwapsGroup.styles.ts +10 -1
  240. package/src/components/SwapsGroup/SwapsGroup.tsx +3 -5
  241. package/src/components/TokenList/TokenList.helpers.ts +2 -2
  242. package/src/components/TokenList/TokenList.styles.ts +58 -37
  243. package/src/components/TokenList/TokenList.tsx +28 -23
  244. package/src/components/TokenList/TokenList.types.ts +3 -10
  245. package/src/components/TokenList/index.ts +0 -1
  246. package/src/components/UpdateUrl.tsx +23 -18
  247. package/src/components/WidgetEvents.tsx +4 -2
  248. package/src/constants/errors.ts +9 -5
  249. package/src/constants/index.ts +1 -0
  250. package/src/constants/navigationRoutes.ts +7 -8
  251. package/src/constants/searchParams.ts +1 -0
  252. package/src/containers/App/App.styles.ts +18 -0
  253. package/src/containers/App/App.tsx +52 -0
  254. package/src/containers/App/index.ts +1 -0
  255. package/src/containers/QuoteInfo/QuoteInfo.styles.ts +17 -1
  256. package/src/containers/QuoteInfo/QuoteInfo.tsx +44 -43
  257. package/src/containers/QuoteInfo/QuoteInfo.types.ts +3 -0
  258. package/src/{Wallets.tsx → containers/Wallets/Wallets.tsx} +48 -34
  259. package/src/containers/Wallets/Wallets.types.ts +12 -0
  260. package/src/containers/Wallets/index.ts +1 -0
  261. package/src/containers/Widget/Widget.tsx +19 -0
  262. package/src/containers/Widget/Widget.types.ts +5 -0
  263. package/src/containers/Widget/index.ts +2 -0
  264. package/src/containers/WidgetInfo/WidgetInfo.helpers.ts +64 -0
  265. package/src/containers/WidgetInfo/WidgetInfo.tsx +62 -0
  266. package/src/containers/WidgetInfo/WidgetInfo.types.ts +21 -0
  267. package/src/containers/WidgetInfo/index.ts +1 -0
  268. package/src/containers/WidgetProvider/WidgetProvider.tsx +28 -0
  269. package/src/containers/WidgetProvider/WidgetProvider.types.ts +7 -0
  270. package/src/containers/WidgetProvider/index.ts +1 -0
  271. package/src/hooks/useConfirmSwap/useConfirmSwap.helpers.ts +15 -11
  272. package/src/hooks/useConfirmSwap/useConfirmSwap.ts +25 -24
  273. package/src/hooks/useConfirmSwap/useConfirmSwap.types.ts +1 -1
  274. package/src/hooks/useForceAutoConnect.ts +27 -0
  275. package/src/hooks/useLanguage.ts +4 -5
  276. package/src/hooks/useNavigateBack.ts +3 -52
  277. package/src/hooks/usePrepareBlockchainList/usePrepareBlockchainList.constants.ts +1 -1
  278. package/src/hooks/usePrepareBlockchainList/usePrepareBlockchainList.helpers.ts +37 -7
  279. package/src/hooks/usePrepareBlockchainList/usePrepareBlockchainList.mock.ts +60 -0
  280. package/src/hooks/usePrepareBlockchainList/usePrepareBlockchainList.test.ts +78 -3
  281. package/src/hooks/usePrepareBlockchainList/usePrepareBlockchainList.ts +15 -6
  282. package/src/hooks/usePrepareBlockchainList/usePrepareBlockchainList.types.ts +6 -1
  283. package/src/hooks/useSwapInput.ts +89 -30
  284. package/src/hooks/useSyncStoresWithConfig.ts +38 -22
  285. package/src/hooks/useTheme.ts +4 -5
  286. package/src/hooks/useWalletList.ts +3 -5
  287. package/src/index.ts +53 -5
  288. package/src/pages/ConfirmSwapPage.tsx +61 -41
  289. package/src/pages/HistoryPage.tsx +2 -7
  290. package/src/pages/Home.tsx +58 -88
  291. package/src/pages/LanguagePage.tsx +0 -5
  292. package/src/pages/LiquiditySourcePage.tsx +24 -37
  293. package/src/pages/SelectBlockchainPage.tsx +28 -21
  294. package/src/pages/SelectSwapItemsPage.tsx +10 -27
  295. package/src/pages/SettingsPage.tsx +28 -24
  296. package/src/pages/SwapDetailsPage.tsx +6 -7
  297. package/src/pages/ThemePage.tsx +2 -7
  298. package/src/pages/WalletsPage.tsx +4 -15
  299. package/src/services/httpService.ts +1 -1
  300. package/src/store/AppStore.tsx +41 -0
  301. package/src/store/app.ts +44 -6
  302. package/src/store/quote.ts +29 -26
  303. package/src/store/slices/config.ts +25 -15
  304. package/src/store/slices/data.ts +64 -29
  305. package/src/store/slices/settings.ts +168 -0
  306. package/src/store/wallets.ts +68 -37
  307. package/src/types/config.ts +50 -5
  308. package/src/types/swap.ts +4 -13
  309. package/src/types/wallets.ts +18 -1
  310. package/src/utils/colors.ts +2 -1
  311. package/src/utils/configs.ts +2 -1
  312. package/src/utils/date.ts +1 -1
  313. package/src/utils/meta.ts +8 -1
  314. package/src/utils/providers.ts +8 -5
  315. package/src/utils/queue.ts +2 -2
  316. package/src/utils/quote.ts +7 -7
  317. package/src/utils/settings.ts +17 -10
  318. package/src/utils/swap.ts +59 -55
  319. package/src/utils/time.ts +1 -1
  320. package/src/utils/wallets.ts +107 -149
  321. package/dist/Wallets.d.ts +0 -17
  322. package/dist/Wallets.d.ts.map +0 -1
  323. package/dist/Widget.d.ts +0 -9
  324. package/dist/Widget.d.ts.map +0 -1
  325. package/dist/store/meta.d.ts +0 -23
  326. package/dist/store/meta.d.ts.map +0 -1
  327. package/dist/store/settings.d.ts +0 -81
  328. package/dist/store/settings.d.ts.map +0 -1
  329. package/src/Widget.tsx +0 -119
  330. package/src/store/meta.ts +0 -39
  331. package/src/store/settings.ts +0 -158
@@ -1,9 +1,18 @@
1
- import { styled } from '@rango-dev/ui';
1
+ import { css, darkTheme, styled } from '@rango-dev/ui';
2
+
3
+ export const groupStyles = css();
2
4
 
3
5
  export const Group = styled('div', {
4
6
  width: '100%',
5
7
  display: 'flex',
6
8
  flexDirection: 'column',
9
+ [`& .${groupStyles}`]: {
10
+ $$color: '$colors$neutral600',
11
+ [`.${darkTheme} &`]: {
12
+ $$color: '$colors$neutral700',
13
+ },
14
+ color: '$$color',
15
+ },
7
16
  });
8
17
 
9
18
  export const Time = styled('div', {
@@ -6,7 +6,7 @@ import React from 'react';
6
6
 
7
7
  import { limitDecimalPlaces } from '../../utils/numbers';
8
8
 
9
- import { Group, SwapList, Time } from './SwapsGroup.styles';
9
+ import { Group, groupStyles, SwapList, Time } from './SwapsGroup.styles';
10
10
 
11
11
  export function SwapsGroup(props: PropTypes) {
12
12
  const { list, onSwapClick, groupBy, isLoading } = props;
@@ -34,8 +34,7 @@ export function SwapsGroup(props: PropTypes) {
34
34
  <Typography
35
35
  variant="label"
36
36
  size="medium"
37
- color="neutral600"
38
- className="group-title">
37
+ className={groupStyles()}>
39
38
  {i18n.t(group.title)}
40
39
  </Typography>
41
40
  </Time>
@@ -68,8 +67,7 @@ export function SwapsGroup(props: PropTypes) {
68
67
  <Typography
69
68
  variant="label"
70
69
  size="medium"
71
- color="neutral600"
72
- className="group-title">
70
+ className={groupStyles()}>
73
71
  {i18n.t(group.title)}
74
72
  </Typography>
75
73
  </Time>
@@ -1,8 +1,8 @@
1
- import type { TokenWithBalance } from './TokenList.types';
1
+ import type { Token } from 'rango-sdk';
2
2
 
3
3
  import { containsText } from '../../utils/common';
4
4
 
5
- export const filterTokens = (list: TokenWithBalance[], searchedFor: string) =>
5
+ export const filterTokens = (list: Token[], searchedFor: string) =>
6
6
  list.filter(
7
7
  (token) =>
8
8
  containsText(token.symbol, searchedFor) ||
@@ -1,4 +1,47 @@
1
- import { styled, Typography } from '@rango-dev/ui';
1
+ import {
2
+ css,
3
+ darkTheme,
4
+ ImageContainer,
5
+ styled,
6
+ Typography,
7
+ } from '@rango-dev/ui';
8
+
9
+ export const tokenNameStyles = css({
10
+ position: 'absolute',
11
+ transform: 'none',
12
+ transition: 'transform 225ms cubic-bezier(0, 0, 0.2, 1) 0ms',
13
+ textOverflow: 'ellipsis',
14
+ whiteSpace: 'nowrap',
15
+ maxWidth: 100,
16
+ overflow: 'hidden',
17
+ });
18
+ export const descriptionStyles = css({
19
+ position: 'relative',
20
+ height: 12,
21
+ width: 150,
22
+ });
23
+ export const tokenTitleStyles = css({
24
+ position: 'absolute',
25
+ transform: 'none',
26
+ transition: 'transform 225ms cubic-bezier(0, 0, 0.2, 1) 0ms',
27
+ bottom: '-8px',
28
+ });
29
+ export const tokenAddressStyles = css({
30
+ transform: 'translateY(12px)',
31
+ visibility: 'hidden',
32
+ '& a': {
33
+ fontSize: '$12',
34
+ lineHeight: '$16',
35
+ $$color: '$colors$neutral600',
36
+ [`.${darkTheme} &`]: {
37
+ $$color: '$colors$neutral700',
38
+ },
39
+ color: '$$color',
40
+ textDecoration: 'none',
41
+ },
42
+ });
43
+ export const tokenWithoutNameStyles = css({});
44
+ export const usdValueStyles = css();
2
45
 
3
46
  export const Container = styled('div', {
4
47
  display: 'flex',
@@ -23,54 +66,25 @@ export const List = styled('ul', {
23
66
  listStyle: 'none',
24
67
  '& li': {
25
68
  alignItems: 'none',
26
- '.description': {
27
- position: 'relative',
28
- height: 12,
29
- width: 150,
30
- '.token-title': {
31
- position: 'absolute',
32
- transform: 'none',
33
- transition: 'transform 225ms cubic-bezier(0, 0, 0.2, 1) 0ms',
34
- bottom: '-8px',
35
- },
36
69
 
37
- '.token-address': {
38
- transform: 'translateY(12px)',
39
- visibility: 'hidden',
40
- '& a': {
41
- fontSize: '$12',
42
- lineHeight: '$16',
43
- color: '$neutral600',
44
- textDecoration: 'none',
45
- },
46
- },
47
- '.token-name': {
48
- position: 'absolute',
49
- transform: 'none',
50
- transition: 'transform 225ms cubic-bezier(0, 0, 0.2, 1) 0ms',
51
- textOverflow: 'ellipsis',
52
- whiteSpace: 'nowrap',
53
- maxWidth: 100,
54
- overflow: 'hidden',
55
- },
56
- },
57
70
  '&:hover': {
58
- '.description': {
59
- '.token-address': {
71
+ [`& .${descriptionStyles}`]: {
72
+ [`& .${tokenAddressStyles}`]: {
60
73
  position: 'absolute',
61
74
  transform: 'none',
62
75
  transition: 'transform 225ms cubic-bezier(0, 0, 0.2, 1) 0ms',
63
76
  visibility: 'visible',
64
77
  },
65
- '.token-address-without-name': {
78
+
79
+ [`& .${tokenWithoutNameStyles}`]: {
66
80
  bottom: '-15px',
67
81
  },
68
- '.token-name': {
82
+ [`& .${tokenNameStyles}`]: {
69
83
  position: 'absolute',
70
84
  transform: 'translateY(-12px)',
71
85
  visibility: 'hidden',
72
86
  },
73
- '.token-title': {
87
+ [`& .${tokenTitleStyles}`]: {
74
88
  position: 'absolute',
75
89
  transform: 'translateY(-12px)',
76
90
  bottom: '-10px',
@@ -92,6 +106,13 @@ export const TagTitle = styled(Typography, {});
92
106
 
93
107
  export const BalanceContainer = styled('div', {
94
108
  textAlign: 'right',
109
+ [`& .${usdValueStyles}`]: {
110
+ $$color: '$colors$neutral600',
111
+ [`.${darkTheme} &`]: {
112
+ $$color: '$colors$neutral700',
113
+ },
114
+ color: '$$color',
115
+ },
95
116
  });
96
117
 
97
118
  export const End = styled('ul', {
@@ -106,7 +127,7 @@ export const Description = styled('div', {
106
127
  });
107
128
  export const ImageSection = styled('div', {
108
129
  position: 'relative',
109
- '.image-container': {
130
+ [`& ${ImageContainer}`]: {
110
131
  borderRadius: '$xm',
111
132
  overflow: 'hidden',
112
133
  },
@@ -1,9 +1,6 @@
1
1
  /* eslint-disable @typescript-eslint/no-magic-numbers */
2
- import type {
3
- PropTypes,
4
- RenderDescProps,
5
- TokenWithBalance,
6
- } from './TokenList.types';
2
+ import type { PropTypes, RenderDescProps } from './TokenList.types';
3
+ import type { Token } from 'rango-sdk';
7
4
  import type { CommonProps } from 'react-window';
8
5
 
9
6
  import { i18n } from '@lingui/core';
@@ -21,15 +18,16 @@ import {
21
18
  } from '@rango-dev/ui';
22
19
  import React, { forwardRef, useEffect, useState } from 'react';
23
20
 
24
- import { useAppStore } from '../../store/app';
25
- import { useMetaStore } from '../../store/meta';
21
+ import { useAppStore } from '../../store/AppStore';
26
22
  import { useWalletsStore } from '../../store/wallets';
27
23
  import { generateRangeColors } from '../../utils/colors';
24
+ import { formatBalance } from '../../utils/wallets';
28
25
 
29
26
  import { LoadingTokenList } from './LoadingTokenList';
30
27
  import {
31
28
  BalanceContainer,
32
29
  Container,
30
+ descriptionStyles,
33
31
  End,
34
32
  ImageSection,
35
33
  List,
@@ -37,6 +35,11 @@ import {
37
35
  Tag,
38
36
  TagTitle,
39
37
  Title,
38
+ tokenAddressStyles,
39
+ tokenNameStyles,
40
+ tokenTitleStyles,
41
+ tokenWithoutNameStyles,
42
+ usdValueStyles,
40
43
  } from './TokenList.styles';
41
44
 
42
45
  const PAGE_SIZE = 20;
@@ -47,11 +50,11 @@ const renderDesc = (props: RenderDescProps) => {
47
50
  const length = address.length;
48
51
 
49
52
  return (
50
- <div className="description">
53
+ <div className={descriptionStyles()}>
51
54
  {name ? (
52
- <div className="token-name">{name}</div>
55
+ <div className={tokenNameStyles()}>{name}</div>
53
56
  ) : (
54
- <Title className="token-title">
57
+ <Title className={tokenTitleStyles()}>
55
58
  <Typography variant="title" size="xmedium">
56
59
  {token.symbol}
57
60
  </Typography>
@@ -66,7 +69,9 @@ const renderDesc = (props: RenderDescProps) => {
66
69
 
67
70
  {!!address && (
68
71
  <div
69
- className={`token-address ${!name && 'token-address-without-name'}`}>
72
+ className={`${tokenAddressStyles()} ${
73
+ !name && tokenWithoutNameStyles()
74
+ }`}>
70
75
  <a
71
76
  href={url}
72
77
  target="_blank"
@@ -86,11 +91,11 @@ const renderDesc = (props: RenderDescProps) => {
86
91
  export function TokenList(props: PropTypes) {
87
92
  const { list, searchedFor = '', onChange, selectedBlockchain } = props;
88
93
 
89
- const [tokens, setTokens] = useState<TokenWithBalance[]>(list);
90
- const loadingStatus = useMetaStore.use.loadingStatus();
94
+ const [tokens, setTokens] = useState<Token[]>(list);
95
+ const fetchStatus = useAppStore().fetchStatus;
96
+ const blockchains = useAppStore().blockchains();
91
97
  const [hasNextPage, setHasNextPage] = useState<boolean>(true);
92
- const loadingWallet = useWalletsStore.use.loading();
93
- const { blockchains } = useMetaStore.use.meta();
98
+ const { getBalanceFor, loading: loadingWallet } = useWalletsStore();
94
99
  const { isTokenPinned } = useAppStore();
95
100
 
96
101
  // eslint-disable-next-line react/display-name
@@ -135,7 +140,7 @@ export function TokenList(props: PropTypes) {
135
140
  <VirtualizedList
136
141
  Item={({ index, style }) => {
137
142
  const token = tokens[index];
138
-
143
+ const tokenBalance = formatBalance(getBalanceFor(token));
139
144
  const address = token.address || '';
140
145
  const blockchain = blockchains.find(
141
146
  (blockchain) => blockchain.name === token.blockchain
@@ -230,18 +235,18 @@ export function TokenList(props: PropTypes) {
230
235
  <Skeleton variant="text" size="medium" width={50} />
231
236
  </End>
232
237
  ) : (
233
- tokens[index]?.balance && (
238
+ tokenBalance && (
234
239
  <BalanceContainer>
235
240
  <Typography variant="title" size="small">
236
- {token.balance?.amount}
241
+ {tokenBalance.amount}
237
242
  </Typography>
238
243
  <div />
239
- {token.balance?.usdValue && (
244
+ {tokenBalance.usdValue && (
240
245
  <Typography
241
246
  variant="body"
242
- color="neutral600"
247
+ className={usdValueStyles()}
243
248
  size="xsmall">
244
- {`$${token.balance?.usdValue}`}
249
+ {`$${tokenBalance.usdValue}`}
245
250
  </Typography>
246
251
  )}
247
252
  </BalanceContainer>
@@ -268,8 +273,8 @@ export function TokenList(props: PropTypes) {
268
273
  {i18n.t('Select Token')}
269
274
  </Typography>
270
275
  <Divider size={4} />
271
- {loadingStatus === 'loading' && <LoadingTokenList size={PAGE_SIZE} />}
272
- {loadingStatus === 'success' && <List>{renderList()}</List>}
276
+ {fetchStatus === 'loading' && <LoadingTokenList size={PAGE_SIZE} />}
277
+ {fetchStatus === 'success' && <List>{renderList()}</List>}
273
278
  </Container>
274
279
  );
275
280
  }
@@ -1,16 +1,9 @@
1
1
  import type { Token } from 'rango-sdk';
2
2
 
3
- export interface TokenWithBalance extends Token {
4
- balance?: {
5
- amount: string;
6
- usdValue: string;
7
- };
8
- }
9
-
10
3
  export interface PropTypes {
11
- list: TokenWithBalance[];
4
+ list: Token[];
12
5
  searchedFor?: string;
13
- onChange: (token: TokenWithBalance) => void;
6
+ onChange: (token: Token) => void;
14
7
  selectedBlockchain?: string;
15
8
  }
16
9
 
@@ -22,7 +15,7 @@ export interface RenderDescProps {
22
15
  name?: string | null;
23
16
  address: string;
24
17
  url: string;
25
- token: TokenWithBalance;
18
+ token: Token;
26
19
  customCssForTag: TagCSS;
27
20
  customCssForTagTitle: TitleCSS;
28
21
  }
@@ -1,2 +1 @@
1
1
  export { TokenList } from './TokenList';
2
- export type { TokenWithBalance } from './TokenList.types';
@@ -1,5 +1,3 @@
1
- import type { WidgetConfig } from '../types';
2
-
3
1
  import { useEffect, useRef } from 'react';
4
2
  import {
5
3
  createSearchParams,
@@ -9,15 +7,12 @@ import {
9
7
 
10
8
  import { navigationRoutes } from '../constants/navigationRoutes';
11
9
  import { SearchParams } from '../constants/searchParams';
12
- import { useSyncStoresWithConfig } from '../hooks/useSyncStoresWithConfig';
13
- import { useMetaStore } from '../store/meta';
10
+ import { useAppStore } from '../store/AppStore';
14
11
  import { useQuoteStore } from '../store/quote';
15
12
  import { useUiStore } from '../store/ui';
16
13
  import { searchParamsToToken } from '../utils/quote';
17
14
 
18
- type Props = { config: WidgetConfig | undefined };
19
-
20
- export function UpdateUrl(props: Props) {
15
+ export function UpdateUrl() {
21
16
  const firstRender = useRef(true);
22
17
  const [searchParams, setSearchParams] = useSearchParams();
23
18
  const location = useLocation();
@@ -33,10 +28,10 @@ export function UpdateUrl(props: Props) {
33
28
  const setToToken = useQuoteStore.use.setToToken();
34
29
  const inputAmount = useQuoteStore.use.inputAmount();
35
30
  const setInputAmount = useQuoteStore.use.setInputAmount();
36
- const loadingStatus = useMetaStore.use.loadingStatus();
37
- const { blockchains, tokens } = useMetaStore.use.meta();
31
+ const fetchMetaStatus = useAppStore().fetchStatus;
32
+ const blockchains = useAppStore().blockchains();
33
+ const tokens = useAppStore().tokens();
38
34
  const setSelectedSwap = useUiStore.use.setSelectedSwap();
39
- useSyncStoresWithConfig(props.config);
40
35
 
41
36
  useEffect(() => {
42
37
  const params: Record<string, string> = {};
@@ -60,7 +55,8 @@ export function UpdateUrl(props: Props) {
60
55
  toChainString = '',
61
56
  toTokenString = '',
62
57
  fromAmount = '';
63
- if (loadingStatus !== 'success') {
58
+ const autoConnect = searchParamsRef.current[SearchParams.AUTO_CONNECT];
59
+ if (fetchMetaStatus !== 'success') {
64
60
  fromChainString = searchParamsRef.current[SearchParams.FROM_CHAIN];
65
61
  fromTokenString = searchParamsRef.current[SearchParams.FROM_TOKEN];
66
62
  toChainString = searchParamsRef.current[SearchParams.TO_CHAIN];
@@ -68,9 +64,6 @@ export function UpdateUrl(props: Props) {
68
64
  fromAmount =
69
65
  searchParamsRef.current[SearchParams.FROM_AMOUNT] || inputAmount;
70
66
  } else {
71
- if (location.state === 'redirect') {
72
- return;
73
- }
74
67
  fromChainString = fromBlockchain?.name || '';
75
68
  fromTokenString =
76
69
  (fromToken?.symbol || '') +
@@ -94,6 +87,9 @@ export function UpdateUrl(props: Props) {
94
87
  ...(fromAmount && {
95
88
  [SearchParams.FROM_AMOUNT]: fromAmount.toString(),
96
89
  }),
90
+ ...(autoConnect && {
91
+ [SearchParams.AUTO_CONNECT]: autoConnect,
92
+ }),
97
93
  },
98
94
  { replace: true }
99
95
  );
@@ -109,7 +105,7 @@ export function UpdateUrl(props: Props) {
109
105
  ]);
110
106
 
111
107
  useEffect(() => {
112
- if (loadingStatus === 'success') {
108
+ if (fetchMetaStatus === 'success') {
113
109
  const fromChainString = searchParams.get(SearchParams.FROM_CHAIN);
114
110
  const fromTokenString = searchParams.get(SearchParams.FROM_TOKEN);
115
111
  const toChainString = searchParams.get(SearchParams.TO_CHAIN);
@@ -134,20 +130,29 @@ export function UpdateUrl(props: Props) {
134
130
  if (!!fromBlockchain) {
135
131
  setFromBlockchain(fromBlockchain);
136
132
  if (!!fromToken) {
137
- setFromToken(fromToken);
133
+ setFromToken({
134
+ token: fromToken,
135
+ meta: {
136
+ blockchains: blockchains,
137
+ tokens: tokens,
138
+ },
139
+ });
138
140
  }
139
141
  }
140
142
  if (!!toBlockchain) {
141
143
  setToBlockchain(toBlockchain);
142
144
  if (!!toToken) {
143
- setToToken(toToken);
145
+ setToToken({
146
+ token: toToken,
147
+ meta: { blockchains: blockchains, tokens: tokens },
148
+ });
144
149
  }
145
150
  }
146
151
  if (fromAmount) {
147
152
  setInputAmount(fromAmount);
148
153
  }
149
154
  }
150
- }, [loadingStatus]);
155
+ }, [fetchMetaStatus]);
151
156
 
152
157
  return null;
153
158
  }
@@ -8,11 +8,13 @@ import {
8
8
  } from '@rango-dev/queue-manager-rango-preset';
9
9
  import { useEffect } from 'react';
10
10
 
11
+ import { useAppStore } from '../store/AppStore';
11
12
  import { useNotificationStore } from '../store/notification';
12
13
  import { useWalletsStore } from '../store/wallets';
13
14
  import { validBlockedStatuses } from '../types/notification';
14
15
 
15
16
  export function WidgetEvents() {
17
+ const tokens = useAppStore().tokens();
16
18
  const connectedWallets = useWalletsStore.use.connectedWallets();
17
19
  const getWalletsDetails = useWalletsStore.use.getWalletsDetails();
18
20
  const setNotification = useNotificationStore.use.setNotification();
@@ -38,8 +40,8 @@ export function WidgetEvents() {
38
40
  (wallet) => wallet.chain === step?.toBlockchain
39
41
  );
40
42
 
41
- fromAccount && getWalletsDetails([fromAccount]);
42
- toAccount && getWalletsDetails([toAccount]);
43
+ fromAccount && getWalletsDetails([fromAccount], tokens);
44
+ toAccount && getWalletsDetails([toAccount], tokens);
43
45
  }
44
46
  if (
45
47
  (event.type === StepEventType.TX_EXECUTION_BLOCKED &&
@@ -10,18 +10,22 @@ export const errorMessages = () => {
10
10
  liquiditySourcesError: {
11
11
  title: i18n.t('Please reset your liquidity sources.'),
12
12
  description: i18n.t(
13
- 'You have limited the liquidity sources and this might result in Rango finding no routes. Please consider resetting your liquidity sources'
13
+ 'You have limited the liquidity sources and this might result in Rango finding no routes. Please consider resetting your liquidity sources.'
14
14
  ),
15
15
  },
16
16
  noResultError: {
17
- title: i18n.t('No Routes Found'),
17
+ title: i18n.t('No Routes Found.'),
18
18
  description: i18n.t(
19
19
  "Reasons why Rango couldn't find a route: low liquidity on token, very low input amount or no routes available for the selected input/output token combination."
20
20
  ),
21
21
  },
22
22
  bridgeLimitErrors: {
23
- increaseAmount: i18n.t('Bridge Limit Error: Please increase your amount'),
24
- decreaseAmount: i18n.t('Bridge Limit Error: Please decrease your amount'),
23
+ increaseAmount: i18n.t(
24
+ 'Bridge Limit Error: Please increase your amount.'
25
+ ),
26
+ decreaseAmount: i18n.t(
27
+ 'Bridge Limit Error: Please decrease your amount.'
28
+ ),
25
29
  },
26
30
  highValueLossError: {
27
31
  impactTitle: i18n.t('High Price Impact'),
@@ -29,7 +33,7 @@ export const errorMessages = () => {
29
33
  description: i18n.t(
30
34
  'The price impact is significantly higher than the allowed amount. If you are sure, continue, otherwise, change the swap.'
31
35
  ),
32
- confirmMessage: i18n.t('Confirm High price impact'),
36
+ confirmMessage: i18n.t('Confirm high price impact'),
33
37
  },
34
38
  quoteUpdatedWithHighValueLoss: {
35
39
  title: i18n.t(
@@ -1 +1,2 @@
1
1
  export const RANGO_PUBLIC_API_KEY = 'c6381a79-2817-4602-83bf-6a641a409e32';
2
+ export const DEFAULT_BASE_URL = 'https://api.rango.exchange';
@@ -1,17 +1,16 @@
1
1
  export const navigationRoutes = {
2
2
  home: '/',
3
3
  fromSwap: 'from-swap',
4
- fromBlockchain: '/from-swap/blockchains',
5
- toBlockchain: '/to-swap/blockchains',
6
4
  toSwap: 'to-swap',
5
+ blockchains: 'blockchains',
7
6
  settings: 'settings',
8
- liquiditySources: '/settings/liquidity-sources',
9
- themes: '/settings/themes',
10
- bridges: '/settings/bridges',
11
- exchanges: '/settings/exchanges',
12
- languages: '/settings/languages',
7
+ liquiditySources: 'liquidity-sources',
8
+ themes: 'themes',
9
+ bridges: 'bridges',
10
+ exchanges: 'exchanges',
11
+ languages: 'languages',
13
12
  swaps: 'swaps',
14
13
  wallets: 'wallets',
15
14
  confirmSwap: 'confirm-swap',
16
- swapDetails: 'swaps/:requestId',
15
+ swapDetails: ':requestId',
17
16
  };
@@ -4,4 +4,5 @@ export enum SearchParams {
4
4
  'TO_CHAIN' = 'toBlockchain',
5
5
  'TO_TOKEN' = 'toToken',
6
6
  'FROM_AMOUNT' = 'fromAmount',
7
+ 'AUTO_CONNECT' = 'autoConnect',
7
8
  }
@@ -0,0 +1,18 @@
1
+ import { styled } from '@rango-dev/ui';
2
+
3
+ export const MainContainer = styled('div', {
4
+ width: '100%',
5
+ display: 'flex',
6
+ justifyContent: 'center',
7
+ alignItems: 'center',
8
+ fontFamily: '$widget',
9
+ boxSizing: 'border-box',
10
+ '& *, *::before, *::after': {
11
+ boxSizing: 'inherit',
12
+ listStyleType: 'none',
13
+ },
14
+ '& *:focus-visible': {
15
+ outlineColor: '$info500',
16
+ transition: 'none',
17
+ },
18
+ });
@@ -0,0 +1,52 @@
1
+ import type { WalletType } from '@rango-dev/wallets-shared';
2
+
3
+ import { I18nManager } from '@rango-dev/ui';
4
+ import React, { useContext, useEffect, useState } from 'react';
5
+
6
+ import { AppRouter } from '../../components/AppRouter';
7
+ import { AppRoutes } from '../../components/AppRoutes';
8
+ import { WidgetEvents } from '../../components/WidgetEvents';
9
+ import { globalFont } from '../../globalStyles';
10
+ import { useLanguage } from '../../hooks/useLanguage';
11
+ import { useTheme } from '../../hooks/useTheme';
12
+ import { useAppStore } from '../../store/AppStore';
13
+ import { useNotificationStore } from '../../store/notification';
14
+ import { WidgetContext } from '../Wallets';
15
+
16
+ import { MainContainer } from './App.styles';
17
+
18
+ export function Main() {
19
+ globalFont();
20
+
21
+ const { config } = useAppStore();
22
+ const { activeTheme } = useTheme(config?.theme || {});
23
+ const { activeLanguage, changeLanguage } = useLanguage();
24
+ const [lastConnectedWalletWithNetwork, setLastConnectedWalletWithNetwork] =
25
+ useState<string>('');
26
+ const [disconnectedWallet, setDisconnectedWallet] = useState<WalletType>();
27
+ const widgetContext = useContext(WidgetContext);
28
+
29
+ useEffect(() => {
30
+ void useNotificationStore.persist.rehydrate();
31
+ widgetContext.onConnectWallet(setLastConnectedWalletWithNetwork);
32
+ }, []);
33
+ useEffect(() => {
34
+ changeLanguage(config?.language);
35
+ }, [config?.language]);
36
+
37
+ return (
38
+ <I18nManager language={activeLanguage}>
39
+ <MainContainer id="swap-container" className={activeTheme()}>
40
+ <WidgetEvents />
41
+ <AppRouter
42
+ lastConnectedWallet={lastConnectedWalletWithNetwork}
43
+ disconnectedWallet={disconnectedWallet}
44
+ clearDisconnectedWallet={() => {
45
+ setDisconnectedWallet(undefined);
46
+ }}>
47
+ <AppRoutes />
48
+ </AppRouter>
49
+ </MainContainer>
50
+ </I18nManager>
51
+ );
52
+ }
@@ -0,0 +1 @@
1
+ export { Main } from './App';
@@ -1,8 +1,24 @@
1
1
  import { styled } from '@rango-dev/ui';
2
2
 
3
+ export const PositionTopAlerts = styled('div', {
4
+ paddingBottom: '$10',
5
+ });
6
+
3
7
  export const QuoteContainer = styled('div', {
4
8
  width: '100%',
5
- paddingTop: '$2',
9
+ '& .position-top__skeleton': {
10
+ paddingTop: '$10',
11
+ },
12
+ });
13
+
14
+ export const SkeletonContainer = styled('div', {
15
+ variants: {
16
+ paddingTop: {
17
+ true: {
18
+ paddingTop: '$10',
19
+ },
20
+ },
21
+ },
6
22
  });
7
23
 
8
24
  export const FooterStepAlarm = styled('div', {