@lifi/widget 0.0.0-preview-6cc63bac

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 (1255) hide show
  1. package/LICENSE +201 -0
  2. package/README.md +312 -0
  3. package/dist/esm/App.d.ts +9 -0
  4. package/dist/esm/App.d.ts.map +1 -0
  5. package/dist/esm/App.js +44 -0
  6. package/dist/esm/App.js.map +1 -0
  7. package/dist/esm/AppDefault.js +214 -0
  8. package/dist/esm/AppDefault.js.map +1 -0
  9. package/dist/esm/AppDrawer.d.ts +12 -0
  10. package/dist/esm/AppDrawer.d.ts.map +1 -0
  11. package/dist/esm/AppDrawer.js +63 -0
  12. package/dist/esm/AppDrawer.js.map +1 -0
  13. package/dist/esm/AppDrawerContext.js +8 -0
  14. package/dist/esm/AppDrawerContext.js.map +1 -0
  15. package/dist/esm/AppLayout.js +33 -0
  16. package/dist/esm/AppLayout.js.map +1 -0
  17. package/dist/esm/AppProvider.js +30 -0
  18. package/dist/esm/AppProvider.js.map +1 -0
  19. package/dist/esm/components/ActionRow/ActionRow.js +17 -0
  20. package/dist/esm/components/ActionRow/ActionRow.js.map +1 -0
  21. package/dist/esm/components/ActionRow/ActionRow.style.js +21 -0
  22. package/dist/esm/components/ActionRow/ActionRow.style.js.map +1 -0
  23. package/dist/esm/components/AmountInput/AmountInput.js +117 -0
  24. package/dist/esm/components/AmountInput/AmountInput.js.map +1 -0
  25. package/dist/esm/components/AmountInput/AmountInput.style.js +38 -0
  26. package/dist/esm/components/AmountInput/AmountInput.style.js.map +1 -0
  27. package/dist/esm/components/AmountInput/AmountInputEndAdornment.js +64 -0
  28. package/dist/esm/components/AmountInput/AmountInputEndAdornment.js.map +1 -0
  29. package/dist/esm/components/AmountInput/AmountInputEndAdornment.style.js +21 -0
  30. package/dist/esm/components/AmountInput/AmountInputEndAdornment.style.js.map +1 -0
  31. package/dist/esm/components/AmountInput/AmountInputStartAdornment.js +21 -0
  32. package/dist/esm/components/AmountInput/AmountInputStartAdornment.js.map +1 -0
  33. package/dist/esm/components/AmountInput/PriceFormHelperText.js +98 -0
  34. package/dist/esm/components/AmountInput/PriceFormHelperText.js.map +1 -0
  35. package/dist/esm/components/AmountInput/PriceFormHelperText.style.js +28 -0
  36. package/dist/esm/components/AmountInput/PriceFormHelperText.style.js.map +1 -0
  37. package/dist/esm/components/AppContainer.js +93 -0
  38. package/dist/esm/components/AppContainer.js.map +1 -0
  39. package/dist/esm/components/Avatar/AccountAvatar.js +29 -0
  40. package/dist/esm/components/Avatar/AccountAvatar.js.map +1 -0
  41. package/dist/esm/components/Avatar/Avatar.js +47 -0
  42. package/dist/esm/components/Avatar/Avatar.js.map +1 -0
  43. package/dist/esm/components/Avatar/Avatar.style.js +57 -0
  44. package/dist/esm/components/Avatar/Avatar.style.js.map +1 -0
  45. package/dist/esm/components/Avatar/ChainBadgeContent.js +17 -0
  46. package/dist/esm/components/Avatar/ChainBadgeContent.js.map +1 -0
  47. package/dist/esm/components/Avatar/SmallAvatar.js +20 -0
  48. package/dist/esm/components/Avatar/SmallAvatar.js.map +1 -0
  49. package/dist/esm/components/Avatar/TokenAvatar.js +65 -0
  50. package/dist/esm/components/Avatar/TokenAvatar.js.map +1 -0
  51. package/dist/esm/components/Avatar/utils.js +9 -0
  52. package/dist/esm/components/Avatar/utils.js.map +1 -0
  53. package/dist/esm/components/BaseTransactionButton/BaseTransactionButton.js +51 -0
  54. package/dist/esm/components/BaseTransactionButton/BaseTransactionButton.js.map +1 -0
  55. package/dist/esm/components/BottomSheet/BottomSheet.js +46 -0
  56. package/dist/esm/components/BottomSheet/BottomSheet.js.map +1 -0
  57. package/dist/esm/components/ButtonTertiary.js +21 -0
  58. package/dist/esm/components/ButtonTertiary.js.map +1 -0
  59. package/dist/esm/components/Card/Card.js +65 -0
  60. package/dist/esm/components/Card/Card.js.map +1 -0
  61. package/dist/esm/components/Card/CardButton.js +13 -0
  62. package/dist/esm/components/Card/CardButton.js.map +1 -0
  63. package/dist/esm/components/Card/CardButton.style.js +29 -0
  64. package/dist/esm/components/Card/CardButton.style.js.map +1 -0
  65. package/dist/esm/components/Card/CardHeader.js +26 -0
  66. package/dist/esm/components/Card/CardHeader.js.map +1 -0
  67. package/dist/esm/components/Card/CardIconButton.js +14 -0
  68. package/dist/esm/components/Card/CardIconButton.js.map +1 -0
  69. package/dist/esm/components/Card/CardLabel.js +62 -0
  70. package/dist/esm/components/Card/CardLabel.js.map +1 -0
  71. package/dist/esm/components/Card/CardTitle.js +22 -0
  72. package/dist/esm/components/Card/CardTitle.js.map +1 -0
  73. package/dist/esm/components/Card/InputCard.js +11 -0
  74. package/dist/esm/components/Card/InputCard.js.map +1 -0
  75. package/dist/esm/components/ChainSelect/ChainSelect.js +124 -0
  76. package/dist/esm/components/ChainSelect/ChainSelect.js.map +1 -0
  77. package/dist/esm/components/ChainSelect/ChainSelect.style.js +62 -0
  78. package/dist/esm/components/ChainSelect/ChainSelect.style.js.map +1 -0
  79. package/dist/esm/components/ChainSelect/useChainSelect.js +59 -0
  80. package/dist/esm/components/ChainSelect/useChainSelect.js.map +1 -0
  81. package/dist/esm/components/Chains/AllChainsAvatar.js +106 -0
  82. package/dist/esm/components/Chains/AllChainsAvatar.js.map +1 -0
  83. package/dist/esm/components/Chains/ChainList.js +50 -0
  84. package/dist/esm/components/Chains/ChainList.js.map +1 -0
  85. package/dist/esm/components/Chains/ChainList.style.js +43 -0
  86. package/dist/esm/components/Chains/ChainList.style.js.map +1 -0
  87. package/dist/esm/components/Chains/ChainListItem.js +55 -0
  88. package/dist/esm/components/Chains/ChainListItem.js.map +1 -0
  89. package/dist/esm/components/Chains/ChainsExpanded.js +23 -0
  90. package/dist/esm/components/Chains/ChainsExpanded.js.map +1 -0
  91. package/dist/esm/components/Chains/ChainsExpanded.style.js +19 -0
  92. package/dist/esm/components/Chains/ChainsExpanded.style.js.map +1 -0
  93. package/dist/esm/components/Chains/PinChainButton.js +43 -0
  94. package/dist/esm/components/Chains/PinChainButton.js.map +1 -0
  95. package/dist/esm/components/Chains/SelectChainExpansionContent.js +65 -0
  96. package/dist/esm/components/Chains/SelectChainExpansionContent.js.map +1 -0
  97. package/dist/esm/components/Chains/SelectChainPageContent.js +60 -0
  98. package/dist/esm/components/Chains/SelectChainPageContent.js.map +1 -0
  99. package/dist/esm/components/Chains/VirtualizedChainList.js +143 -0
  100. package/dist/esm/components/Chains/VirtualizedChainList.js.map +1 -0
  101. package/dist/esm/components/ContextMenu.js +59 -0
  102. package/dist/esm/components/ContextMenu.js.map +1 -0
  103. package/dist/esm/components/ContextMenu.style.js +12 -0
  104. package/dist/esm/components/ContextMenu.style.js.map +1 -0
  105. package/dist/esm/components/ContractComponent/ContractComponent.js +14 -0
  106. package/dist/esm/components/ContractComponent/ContractComponent.js.map +1 -0
  107. package/dist/esm/components/ContractComponent/ItemPrice.d.ts +12 -0
  108. package/dist/esm/components/ContractComponent/ItemPrice.d.ts.map +1 -0
  109. package/dist/esm/components/ContractComponent/ItemPrice.js +29 -0
  110. package/dist/esm/components/ContractComponent/ItemPrice.js.map +1 -0
  111. package/dist/esm/components/ContractComponent/NFT/NFT.d.ts +7 -0
  112. package/dist/esm/components/ContractComponent/NFT/NFT.d.ts.map +1 -0
  113. package/dist/esm/components/ContractComponent/NFT/NFT.js +33 -0
  114. package/dist/esm/components/ContractComponent/NFT/NFT.js.map +1 -0
  115. package/dist/esm/components/ContractComponent/NFT/NFT.style.js +12 -0
  116. package/dist/esm/components/ContractComponent/NFT/NFT.style.js.map +1 -0
  117. package/dist/esm/components/ContractComponent/NFT/NFTBase.d.ts +7 -0
  118. package/dist/esm/components/ContractComponent/NFT/NFTBase.d.ts.map +1 -0
  119. package/dist/esm/components/ContractComponent/NFT/NFTBase.js +76 -0
  120. package/dist/esm/components/ContractComponent/NFT/NFTBase.js.map +1 -0
  121. package/dist/esm/components/ContractComponent/NFT/types.d.ts +21 -0
  122. package/dist/esm/components/ContractComponent/NFT/types.d.ts.map +1 -0
  123. package/dist/esm/components/Dialog/Dialog.js +36 -0
  124. package/dist/esm/components/Dialog/Dialog.js.map +1 -0
  125. package/dist/esm/components/Dialog/Dialog.style.js +42 -0
  126. package/dist/esm/components/Dialog/Dialog.style.js.map +1 -0
  127. package/dist/esm/components/EmptyListIndicator/EmptyListIndicator.js +12 -0
  128. package/dist/esm/components/EmptyListIndicator/EmptyListIndicator.js.map +1 -0
  129. package/dist/esm/components/EmptyListIndicator/EmptyListIndicator.style.js +30 -0
  130. package/dist/esm/components/EmptyListIndicator/EmptyListIndicator.style.js.map +1 -0
  131. package/dist/esm/components/ExecutionStatusCard/ExecutionChecklist.js +65 -0
  132. package/dist/esm/components/ExecutionStatusCard/ExecutionChecklist.js.map +1 -0
  133. package/dist/esm/components/ExecutionStatusCard/ExecutionStatusCard.js +273 -0
  134. package/dist/esm/components/ExecutionStatusCard/ExecutionStatusCard.js.map +1 -0
  135. package/dist/esm/components/ExecutionStatusCard/StaggeredRevealTypography.js +47 -0
  136. package/dist/esm/components/ExecutionStatusCard/StaggeredRevealTypography.js.map +1 -0
  137. package/dist/esm/components/ExecutionStatusCard/StatusIcon.js +122 -0
  138. package/dist/esm/components/ExecutionStatusCard/StatusIcon.js.map +1 -0
  139. package/dist/esm/components/ExecutionStatusCard/StatusIcon.style.js +14 -0
  140. package/dist/esm/components/ExecutionStatusCard/StatusIcon.style.js.map +1 -0
  141. package/dist/esm/components/ExecutionStatusCard/iconKey.js +13 -0
  142. package/dist/esm/components/ExecutionStatusCard/iconKey.js.map +1 -0
  143. package/dist/esm/components/Expansion/Expansion.js +32 -0
  144. package/dist/esm/components/Expansion/Expansion.js.map +1 -0
  145. package/dist/esm/components/Expansion/Expansion.style.js +40 -0
  146. package/dist/esm/components/Expansion/Expansion.style.js.map +1 -0
  147. package/dist/esm/components/Expansion/ExpansionTransition.js +32 -0
  148. package/dist/esm/components/Expansion/ExpansionTransition.js.map +1 -0
  149. package/dist/esm/components/FeeBreakdownTooltip.js +39 -0
  150. package/dist/esm/components/FeeBreakdownTooltip.js.map +1 -0
  151. package/dist/esm/components/Header/ActivitiesButton.js +61 -0
  152. package/dist/esm/components/Header/ActivitiesButton.js.map +1 -0
  153. package/dist/esm/components/Header/ActivitiesButton.style.js +39 -0
  154. package/dist/esm/components/Header/ActivitiesButton.style.js.map +1 -0
  155. package/dist/esm/components/Header/BackButton.js +24 -0
  156. package/dist/esm/components/Header/BackButton.js.map +1 -0
  157. package/dist/esm/components/Header/CloseDrawerButton.js +25 -0
  158. package/dist/esm/components/Header/CloseDrawerButton.js.map +1 -0
  159. package/dist/esm/components/Header/DisconnectIconButton.js +20 -0
  160. package/dist/esm/components/Header/DisconnectIconButton.js.map +1 -0
  161. package/dist/esm/components/Header/Header.js +44 -0
  162. package/dist/esm/components/Header/Header.js.map +1 -0
  163. package/dist/esm/components/Header/Header.style.js +71 -0
  164. package/dist/esm/components/Header/Header.style.js.map +1 -0
  165. package/dist/esm/components/Header/NavigationHeader.js +62 -0
  166. package/dist/esm/components/Header/NavigationHeader.js.map +1 -0
  167. package/dist/esm/components/Header/SettingsButton.js +32 -0
  168. package/dist/esm/components/Header/SettingsButton.js.map +1 -0
  169. package/dist/esm/components/Header/SettingsButton.style.js +38 -0
  170. package/dist/esm/components/Header/SettingsButton.style.js.map +1 -0
  171. package/dist/esm/components/Header/SplitNavigationTabs.js +33 -0
  172. package/dist/esm/components/Header/SplitNavigationTabs.js.map +1 -0
  173. package/dist/esm/components/Header/WalletHeader.js +118 -0
  174. package/dist/esm/components/Header/WalletHeader.js.map +1 -0
  175. package/dist/esm/components/Header/WalletMenu.js +100 -0
  176. package/dist/esm/components/Header/WalletMenu.js.map +1 -0
  177. package/dist/esm/components/Header/WalletMenu.style.js +25 -0
  178. package/dist/esm/components/Header/WalletMenu.style.js.map +1 -0
  179. package/dist/esm/components/IconCircle/IconCircle.js +19 -0
  180. package/dist/esm/components/IconCircle/IconCircle.js.map +1 -0
  181. package/dist/esm/components/IconCircle/IconCircle.style.js +57 -0
  182. package/dist/esm/components/IconCircle/IconCircle.style.js.map +1 -0
  183. package/dist/esm/components/IconCircle/statusIcons.js +15 -0
  184. package/dist/esm/components/IconCircle/statusIcons.js.map +1 -0
  185. package/dist/esm/components/IconTypography.js +11 -0
  186. package/dist/esm/components/IconTypography.js.map +1 -0
  187. package/dist/esm/components/Initializer.js +10 -0
  188. package/dist/esm/components/Initializer.js.map +1 -0
  189. package/dist/esm/components/Input.js +15 -0
  190. package/dist/esm/components/Input.js.map +1 -0
  191. package/dist/esm/components/ListItem/ListItem.js +23 -0
  192. package/dist/esm/components/ListItem/ListItem.js.map +1 -0
  193. package/dist/esm/components/ListItem/ListItemButton.js +13 -0
  194. package/dist/esm/components/ListItem/ListItemButton.js.map +1 -0
  195. package/dist/esm/components/ListItemButton.js +30 -0
  196. package/dist/esm/components/ListItemButton.js.map +1 -0
  197. package/dist/esm/components/ListItemText.js +7 -0
  198. package/dist/esm/components/ListItemText.js.map +1 -0
  199. package/dist/esm/components/Menu.js +21 -0
  200. package/dist/esm/components/Menu.js.map +1 -0
  201. package/dist/esm/components/Messages/AccountDeployedMessage.js +27 -0
  202. package/dist/esm/components/Messages/AccountDeployedMessage.js.map +1 -0
  203. package/dist/esm/components/Messages/AccountNotDeployedMessage.js +24 -0
  204. package/dist/esm/components/Messages/AccountNotDeployedMessage.js.map +1 -0
  205. package/dist/esm/components/Messages/AlertMessage.js +16 -0
  206. package/dist/esm/components/Messages/AlertMessage.js.map +1 -0
  207. package/dist/esm/components/Messages/AlertMessage.style.js +38 -0
  208. package/dist/esm/components/Messages/AlertMessage.style.js.map +1 -0
  209. package/dist/esm/components/Messages/FundsSufficiencyMessage.js +24 -0
  210. package/dist/esm/components/Messages/FundsSufficiencyMessage.js.map +1 -0
  211. package/dist/esm/components/Messages/GasRefuelMessage.js +63 -0
  212. package/dist/esm/components/Messages/GasRefuelMessage.js.map +1 -0
  213. package/dist/esm/components/Messages/GasRefuelMessage.style.js +17 -0
  214. package/dist/esm/components/Messages/GasRefuelMessage.style.js.map +1 -0
  215. package/dist/esm/components/Messages/GasSufficiencyMessage.js +43 -0
  216. package/dist/esm/components/Messages/GasSufficiencyMessage.js.map +1 -0
  217. package/dist/esm/components/Messages/MinFromAmountUSDMessage.js +27 -0
  218. package/dist/esm/components/Messages/MinFromAmountUSDMessage.js.map +1 -0
  219. package/dist/esm/components/Messages/MissingRouteRequiredAccountMessage.js +31 -0
  220. package/dist/esm/components/Messages/MissingRouteRequiredAccountMessage.js.map +1 -0
  221. package/dist/esm/components/Messages/WarningMessages.js +45 -0
  222. package/dist/esm/components/Messages/WarningMessages.js.map +1 -0
  223. package/dist/esm/components/Messages/useMessageQueue.js +68 -0
  224. package/dist/esm/components/Messages/useMessageQueue.js.map +1 -0
  225. package/dist/esm/components/NotFound.js +44 -0
  226. package/dist/esm/components/NotFound.js.map +1 -0
  227. package/dist/esm/components/PageContainer.js +20 -0
  228. package/dist/esm/components/PageContainer.js.map +1 -0
  229. package/dist/esm/components/PageEntered.js +17 -0
  230. package/dist/esm/components/PageEntered.js.map +1 -0
  231. package/dist/esm/components/PoweredBy/PoweredBy.js +59 -0
  232. package/dist/esm/components/PoweredBy/PoweredBy.js.map +1 -0
  233. package/dist/esm/components/PoweredBy/PoweredBy.style.js +12 -0
  234. package/dist/esm/components/PoweredBy/PoweredBy.style.js.map +1 -0
  235. package/dist/esm/components/ProgressToNextUpdate.js +66 -0
  236. package/dist/esm/components/ProgressToNextUpdate.js.map +1 -0
  237. package/dist/esm/components/ReverseTokensButton/ReverseTokensButton.js +40 -0
  238. package/dist/esm/components/ReverseTokensButton/ReverseTokensButton.js.map +1 -0
  239. package/dist/esm/components/ReverseTokensButton/ReverseTokensButton.style.js +33 -0
  240. package/dist/esm/components/ReverseTokensButton/ReverseTokensButton.style.js.map +1 -0
  241. package/dist/esm/components/RouteCard/RouteCard.js +86 -0
  242. package/dist/esm/components/RouteCard/RouteCard.js.map +1 -0
  243. package/dist/esm/components/RouteCard/RouteCardEssentials.js +92 -0
  244. package/dist/esm/components/RouteCard/RouteCardEssentials.js.map +1 -0
  245. package/dist/esm/components/RouteCard/RouteCardSkeleton.js +53 -0
  246. package/dist/esm/components/RouteCard/RouteCardSkeleton.js.map +1 -0
  247. package/dist/esm/components/RouteCard/RouteDetails.js +100 -0
  248. package/dist/esm/components/RouteCard/RouteDetails.js.map +1 -0
  249. package/dist/esm/components/RouteCard/RouteDetails.style.js +35 -0
  250. package/dist/esm/components/RouteCard/RouteDetails.style.js.map +1 -0
  251. package/dist/esm/components/RouteCard/RouteNotFoundCard.js +45 -0
  252. package/dist/esm/components/RouteCard/RouteNotFoundCard.js.map +1 -0
  253. package/dist/esm/components/RouteCard/RouteToken.js +49 -0
  254. package/dist/esm/components/RouteCard/RouteToken.js.map +1 -0
  255. package/dist/esm/components/RouteCard/RouteToken.style.js +11 -0
  256. package/dist/esm/components/RouteCard/RouteToken.style.js.map +1 -0
  257. package/dist/esm/components/RouteCard/RouteTokens.js +50 -0
  258. package/dist/esm/components/RouteCard/RouteTokens.js.map +1 -0
  259. package/dist/esm/components/RouteCard/getMatchingLabels.js +24 -0
  260. package/dist/esm/components/RouteCard/getMatchingLabels.js.map +1 -0
  261. package/dist/esm/components/Routes/Routes.js +70 -0
  262. package/dist/esm/components/Routes/Routes.js.map +1 -0
  263. package/dist/esm/components/Routes/RoutesContent.js +74 -0
  264. package/dist/esm/components/Routes/RoutesContent.js.map +1 -0
  265. package/dist/esm/components/Routes/RoutesExpanded.js +69 -0
  266. package/dist/esm/components/Routes/RoutesExpanded.js.map +1 -0
  267. package/dist/esm/components/Routes/RoutesExpanded.style.js +34 -0
  268. package/dist/esm/components/Routes/RoutesExpanded.style.js.map +1 -0
  269. package/dist/esm/components/Search/SearchInput.js +46 -0
  270. package/dist/esm/components/Search/SearchInput.js.map +1 -0
  271. package/dist/esm/components/Search/SearchInput.style.js +27 -0
  272. package/dist/esm/components/Search/SearchInput.style.js.map +1 -0
  273. package/dist/esm/components/Search/SearchNotFound.js +9 -0
  274. package/dist/esm/components/Search/SearchNotFound.js.map +1 -0
  275. package/dist/esm/components/Search/SearchNotFound.style.js +28 -0
  276. package/dist/esm/components/Search/SearchNotFound.style.js.map +1 -0
  277. package/dist/esm/components/SelectChainAndToken.js +36 -0
  278. package/dist/esm/components/SelectChainAndToken.js.map +1 -0
  279. package/dist/esm/components/SelectTokenButton/SelectTokenButton.js +70 -0
  280. package/dist/esm/components/SelectTokenButton/SelectTokenButton.js.map +1 -0
  281. package/dist/esm/components/SelectTokenButton/SelectTokenButton.style.js +67 -0
  282. package/dist/esm/components/SelectTokenButton/SelectTokenButton.style.js.map +1 -0
  283. package/dist/esm/components/SendToWallet/SendToWalletButton.js +115 -0
  284. package/dist/esm/components/SendToWallet/SendToWalletButton.js.map +1 -0
  285. package/dist/esm/components/SendToWallet/SendToWalletButton.style.js +53 -0
  286. package/dist/esm/components/SendToWallet/SendToWalletButton.style.js.map +1 -0
  287. package/dist/esm/components/SendToWallet/SendToWalletExpandButton.js +49 -0
  288. package/dist/esm/components/SendToWallet/SendToWalletExpandButton.js.map +1 -0
  289. package/dist/esm/components/SettingsListItemButton.js +8 -0
  290. package/dist/esm/components/SettingsListItemButton.js.map +1 -0
  291. package/dist/esm/components/Skeleton/WidgetSkeleton.d.ts +10 -0
  292. package/dist/esm/components/Skeleton/WidgetSkeleton.d.ts.map +1 -0
  293. package/dist/esm/components/Skeleton/WidgetSkeleton.js +124 -0
  294. package/dist/esm/components/Skeleton/WidgetSkeleton.js.map +1 -0
  295. package/dist/esm/components/Skeleton/WidgetSkeleton.style.js +73 -0
  296. package/dist/esm/components/Skeleton/WidgetSkeleton.style.js.map +1 -0
  297. package/dist/esm/components/Step/StepActions.js +198 -0
  298. package/dist/esm/components/Step/StepActions.js.map +1 -0
  299. package/dist/esm/components/Step/StepActions.style.js +27 -0
  300. package/dist/esm/components/Step/StepActions.style.js.map +1 -0
  301. package/dist/esm/components/StepActions/SentToWalletRow.js +49 -0
  302. package/dist/esm/components/StepActions/SentToWalletRow.js.map +1 -0
  303. package/dist/esm/components/StepActions/SentToWalletRow.style.js +26 -0
  304. package/dist/esm/components/StepActions/SentToWalletRow.style.js.map +1 -0
  305. package/dist/esm/components/StepActions/StepActionRow.js +27 -0
  306. package/dist/esm/components/StepActions/StepActionRow.js.map +1 -0
  307. package/dist/esm/components/StepActions/StepActionRow.style.js +17 -0
  308. package/dist/esm/components/StepActions/StepActionRow.style.js.map +1 -0
  309. package/dist/esm/components/StepActions/StepActionsList.js +23 -0
  310. package/dist/esm/components/StepActions/StepActionsList.js.map +1 -0
  311. package/dist/esm/components/StepActions/executionRows.js +67 -0
  312. package/dist/esm/components/StepActions/executionRows.js.map +1 -0
  313. package/dist/esm/components/Switch.js +47 -0
  314. package/dist/esm/components/Switch.js.map +1 -0
  315. package/dist/esm/components/Tabs/NavigationTabs.js +39 -0
  316. package/dist/esm/components/Tabs/NavigationTabs.js.map +1 -0
  317. package/dist/esm/components/Tabs/Tabs.style.js +31 -0
  318. package/dist/esm/components/Tabs/Tabs.style.js.map +1 -0
  319. package/dist/esm/components/TextFitter/TextFitter.js +62 -0
  320. package/dist/esm/components/TextFitter/TextFitter.js.map +1 -0
  321. package/dist/esm/components/Timer/ExecutionTimerText.js +10 -0
  322. package/dist/esm/components/Timer/ExecutionTimerText.js.map +1 -0
  323. package/dist/esm/components/Timer/StepStatusTimer.js +56 -0
  324. package/dist/esm/components/Timer/StepStatusTimer.js.map +1 -0
  325. package/dist/esm/components/Timer/StepStatusTimer.style.js +67 -0
  326. package/dist/esm/components/Timer/StepStatusTimer.style.js.map +1 -0
  327. package/dist/esm/components/Token/Token.js +208 -0
  328. package/dist/esm/components/Token/Token.js.map +1 -0
  329. package/dist/esm/components/Token/Token.style.js +31 -0
  330. package/dist/esm/components/Token/Token.style.js.map +1 -0
  331. package/dist/esm/components/TokenList/PinTokenButton.js +36 -0
  332. package/dist/esm/components/TokenList/PinTokenButton.js.map +1 -0
  333. package/dist/esm/components/TokenList/TokenDetailsSheet.js +37 -0
  334. package/dist/esm/components/TokenList/TokenDetailsSheet.js.map +1 -0
  335. package/dist/esm/components/TokenList/TokenDetailsSheetContent.js +177 -0
  336. package/dist/esm/components/TokenList/TokenDetailsSheetContent.js.map +1 -0
  337. package/dist/esm/components/TokenList/TokenDetailsSheetContent.style.js +32 -0
  338. package/dist/esm/components/TokenList/TokenDetailsSheetContent.style.js.map +1 -0
  339. package/dist/esm/components/TokenList/TokenList.js +65 -0
  340. package/dist/esm/components/TokenList/TokenList.js.map +1 -0
  341. package/dist/esm/components/TokenList/TokenList.style.js +30 -0
  342. package/dist/esm/components/TokenList/TokenList.style.js.map +1 -0
  343. package/dist/esm/components/TokenList/TokenListItem.js +274 -0
  344. package/dist/esm/components/TokenList/TokenListItem.js.map +1 -0
  345. package/dist/esm/components/TokenList/TokenNotFound.js +12 -0
  346. package/dist/esm/components/TokenList/TokenNotFound.js.map +1 -0
  347. package/dist/esm/components/TokenList/VirtualizedTokenList.js +123 -0
  348. package/dist/esm/components/TokenList/VirtualizedTokenList.js.map +1 -0
  349. package/dist/esm/components/TokenList/useTokenSelect.js +78 -0
  350. package/dist/esm/components/TokenList/useTokenSelect.js.map +1 -0
  351. package/dist/esm/components/TokenRate/TokenRate.js +38 -0
  352. package/dist/esm/components/TokenRate/TokenRate.js.map +1 -0
  353. package/dist/esm/components/TokenRate/TokenRate.style.js +19 -0
  354. package/dist/esm/components/TokenRate/TokenRate.style.js.map +1 -0
  355. package/dist/esm/components/Tools/ToolItem.js +37 -0
  356. package/dist/esm/components/Tools/ToolItem.js.map +1 -0
  357. package/dist/esm/components/Tools/Tools.js +50 -0
  358. package/dist/esm/components/Tools/Tools.js.map +1 -0
  359. package/dist/esm/components/TransactionCard/ActiveTransactionCard.js +68 -0
  360. package/dist/esm/components/TransactionCard/ActiveTransactionCard.js.map +1 -0
  361. package/dist/esm/components/TransactionCard/ActiveTransactionCard.style.js +21 -0
  362. package/dist/esm/components/TransactionCard/ActiveTransactionCard.style.js.map +1 -0
  363. package/dist/esm/components/TransactionCard/TransactionCard.js +32 -0
  364. package/dist/esm/components/TransactionCard/TransactionCard.js.map +1 -0
  365. package/dist/esm/components/TransactionCard/TransactionCard.style.js +14 -0
  366. package/dist/esm/components/TransactionCard/TransactionCard.style.js.map +1 -0
  367. package/dist/esm/components/TransactionCard/TransactionCardSkeleton.js +63 -0
  368. package/dist/esm/components/TransactionCard/TransactionCardSkeleton.js.map +1 -0
  369. package/dist/esm/config/constants.d.ts +5 -0
  370. package/dist/esm/config/constants.d.ts.map +1 -0
  371. package/dist/esm/config/constants.js +7 -0
  372. package/dist/esm/config/constants.js.map +1 -0
  373. package/dist/esm/config/queryClient.js +18 -0
  374. package/dist/esm/config/queryClient.js.map +1 -0
  375. package/dist/esm/config/version.d.ts +6 -0
  376. package/dist/esm/config/version.d.ts.map +1 -0
  377. package/dist/esm/config/version.js +7 -0
  378. package/dist/esm/config/version.js.map +1 -0
  379. package/dist/esm/hooks/timer/time.js +26 -0
  380. package/dist/esm/hooks/timer/time.js.map +1 -0
  381. package/dist/esm/hooks/timer/useExecutionTimer.js +29 -0
  382. package/dist/esm/hooks/timer/useExecutionTimer.js.map +1 -0
  383. package/dist/esm/hooks/timer/useInterval.js +19 -0
  384. package/dist/esm/hooks/timer/useInterval.js.map +1 -0
  385. package/dist/esm/hooks/timer/useTimer.js +67 -0
  386. package/dist/esm/hooks/timer/useTimer.js.map +1 -0
  387. package/dist/esm/hooks/timer/validate.js +15 -0
  388. package/dist/esm/hooks/timer/validate.js.map +1 -0
  389. package/dist/esm/hooks/useAccountsBalancesData.js +70 -0
  390. package/dist/esm/hooks/useAccountsBalancesData.js.map +1 -0
  391. package/dist/esm/hooks/useActionMessage.js +18 -0
  392. package/dist/esm/hooks/useActionMessage.js.map +1 -0
  393. package/dist/esm/hooks/useAddressActivity.js +36 -0
  394. package/dist/esm/hooks/useAddressActivity.js.map +1 -0
  395. package/dist/esm/hooks/useAddressValidation.js +50 -0
  396. package/dist/esm/hooks/useAddressValidation.js.map +1 -0
  397. package/dist/esm/hooks/useAvailableChains.js +69 -0
  398. package/dist/esm/hooks/useAvailableChains.js.map +1 -0
  399. package/dist/esm/hooks/useChain.js +15 -0
  400. package/dist/esm/hooks/useChain.js.map +1 -0
  401. package/dist/esm/hooks/useChainSearch.js +39 -0
  402. package/dist/esm/hooks/useChainSearch.js.map +1 -0
  403. package/dist/esm/hooks/useChains.js +26 -0
  404. package/dist/esm/hooks/useChains.js.map +1 -0
  405. package/dist/esm/hooks/useContactSupport.js +15 -0
  406. package/dist/esm/hooks/useContactSupport.js.map +1 -0
  407. package/dist/esm/hooks/useDebouncedWatch.js +28 -0
  408. package/dist/esm/hooks/useDebouncedWatch.js.map +1 -0
  409. package/dist/esm/hooks/useDefaultElementId.js +10 -0
  410. package/dist/esm/hooks/useDefaultElementId.js.map +1 -0
  411. package/dist/esm/hooks/useExplorer.js +59 -0
  412. package/dist/esm/hooks/useExplorer.js.map +1 -0
  413. package/dist/esm/hooks/useFilteredByTokenBalances.js +71 -0
  414. package/dist/esm/hooks/useFilteredByTokenBalances.js.map +1 -0
  415. package/dist/esm/hooks/useFromAmountThreshold.js +29 -0
  416. package/dist/esm/hooks/useFromAmountThreshold.js.map +1 -0
  417. package/dist/esm/hooks/useFromTokenSufficiency.js +56 -0
  418. package/dist/esm/hooks/useFromTokenSufficiency.js.map +1 -0
  419. package/dist/esm/hooks/useGasRecommendation.js +38 -0
  420. package/dist/esm/hooks/useGasRecommendation.js.map +1 -0
  421. package/dist/esm/hooks/useGasRefuel.js +45 -0
  422. package/dist/esm/hooks/useGasRefuel.js.map +1 -0
  423. package/dist/esm/hooks/useGasSufficiency.js +104 -0
  424. package/dist/esm/hooks/useGasSufficiency.js.map +1 -0
  425. package/dist/esm/hooks/useHasChainExpansion.js +17 -0
  426. package/dist/esm/hooks/useHasChainExpansion.js.map +1 -0
  427. package/dist/esm/hooks/useHeader.js +23 -0
  428. package/dist/esm/hooks/useHeader.js.map +1 -0
  429. package/dist/esm/hooks/useInitializeSDKProviders.js +15 -0
  430. package/dist/esm/hooks/useInitializeSDKProviders.js.map +1 -0
  431. package/dist/esm/hooks/useInitializer.js +19 -0
  432. package/dist/esm/hooks/useInitializer.js.map +1 -0
  433. package/dist/esm/hooks/useIsBatchingSupported.js +37 -0
  434. package/dist/esm/hooks/useIsBatchingSupported.js.map +1 -0
  435. package/dist/esm/hooks/useIsContractAddress.js +30 -0
  436. package/dist/esm/hooks/useIsContractAddress.js.map +1 -0
  437. package/dist/esm/hooks/useLanguages.js +53 -0
  438. package/dist/esm/hooks/useLanguages.js.map +1 -0
  439. package/dist/esm/hooks/useListHeight.js +52 -0
  440. package/dist/esm/hooks/useListHeight.js.map +1 -0
  441. package/dist/esm/hooks/useLongPress.js +40 -0
  442. package/dist/esm/hooks/useLongPress.js.map +1 -0
  443. package/dist/esm/hooks/useNavigateBack.js +18 -0
  444. package/dist/esm/hooks/useNavigateBack.js.map +1 -0
  445. package/dist/esm/hooks/usePacedRouteExecution.js +30 -0
  446. package/dist/esm/hooks/usePacedRouteExecution.js.map +1 -0
  447. package/dist/esm/hooks/usePacedValue.js +42 -0
  448. package/dist/esm/hooks/usePacedValue.js.map +1 -0
  449. package/dist/esm/hooks/useRouteExecution.js +156 -0
  450. package/dist/esm/hooks/useRouteExecution.js.map +1 -0
  451. package/dist/esm/hooks/useRouteExecutionMessage.js +61 -0
  452. package/dist/esm/hooks/useRouteExecutionMessage.js.map +1 -0
  453. package/dist/esm/hooks/useRouteRequiredAccountConnection.js +37 -0
  454. package/dist/esm/hooks/useRouteRequiredAccountConnection.js.map +1 -0
  455. package/dist/esm/hooks/useRoutes.js +303 -0
  456. package/dist/esm/hooks/useRoutes.js.map +1 -0
  457. package/dist/esm/hooks/useScrollableContainer.js +12 -0
  458. package/dist/esm/hooks/useScrollableContainer.js.map +1 -0
  459. package/dist/esm/hooks/useSetContentHeight.js +23 -0
  460. package/dist/esm/hooks/useSetContentHeight.js.map +1 -0
  461. package/dist/esm/hooks/useSettingMonitor.js +51 -0
  462. package/dist/esm/hooks/useSettingMonitor.js.map +1 -0
  463. package/dist/esm/hooks/useSwapOnly.js +9 -0
  464. package/dist/esm/hooks/useSwapOnly.js.map +1 -0
  465. package/dist/esm/hooks/useToAddressAutoPopulate.js +51 -0
  466. package/dist/esm/hooks/useToAddressAutoPopulate.js.map +1 -0
  467. package/dist/esm/hooks/useToAddressRequirements.js +41 -0
  468. package/dist/esm/hooks/useToAddressRequirements.js.map +1 -0
  469. package/dist/esm/hooks/useToAddressReset.js +29 -0
  470. package/dist/esm/hooks/useToAddressReset.js.map +1 -0
  471. package/dist/esm/hooks/useToken.js +23 -0
  472. package/dist/esm/hooks/useToken.js.map +1 -0
  473. package/dist/esm/hooks/useTokenAddressBalance.js +21 -0
  474. package/dist/esm/hooks/useTokenAddressBalance.js.map +1 -0
  475. package/dist/esm/hooks/useTokenBalance.js +93 -0
  476. package/dist/esm/hooks/useTokenBalance.js.map +1 -0
  477. package/dist/esm/hooks/useTokenBalances.js +111 -0
  478. package/dist/esm/hooks/useTokenBalances.js.map +1 -0
  479. package/dist/esm/hooks/useTokenBalancesQueries.js +63 -0
  480. package/dist/esm/hooks/useTokenBalancesQueries.js.map +1 -0
  481. package/dist/esm/hooks/useTokenRateText.js +36 -0
  482. package/dist/esm/hooks/useTokenRateText.js.map +1 -0
  483. package/dist/esm/hooks/useTokenSearch.js +48 -0
  484. package/dist/esm/hooks/useTokenSearch.js.map +1 -0
  485. package/dist/esm/hooks/useTokens.js +100 -0
  486. package/dist/esm/hooks/useTokens.js.map +1 -0
  487. package/dist/esm/hooks/useTools.js +42 -0
  488. package/dist/esm/hooks/useTools.js.map +1 -0
  489. package/dist/esm/hooks/useTransactionDetails.js +49 -0
  490. package/dist/esm/hooks/useTransactionDetails.js.map +1 -0
  491. package/dist/esm/hooks/useTransactionHistory.js +68 -0
  492. package/dist/esm/hooks/useTransactionHistory.js.map +1 -0
  493. package/dist/esm/hooks/useTransactionList.js +57 -0
  494. package/dist/esm/hooks/useTransactionList.js.map +1 -0
  495. package/dist/esm/hooks/useWideVariant.js +13 -0
  496. package/dist/esm/hooks/useWideVariant.js.map +1 -0
  497. package/dist/esm/hooks/useWidgetChains.d.ts +12 -0
  498. package/dist/esm/hooks/useWidgetChains.d.ts.map +1 -0
  499. package/dist/esm/hooks/useWidgetChains.js +9 -0
  500. package/dist/esm/hooks/useWidgetChains.js.map +1 -0
  501. package/dist/esm/hooks/useWidgetEvents.d.ts +10 -0
  502. package/dist/esm/hooks/useWidgetEvents.d.ts.map +1 -0
  503. package/dist/esm/hooks/useWidgetEvents.js +8 -0
  504. package/dist/esm/hooks/useWidgetEvents.js.map +1 -0
  505. package/dist/esm/i18n/bn.json +362 -0
  506. package/dist/esm/i18n/de.json +362 -0
  507. package/dist/esm/i18n/en.json +360 -0
  508. package/dist/esm/i18n/es.json +362 -0
  509. package/dist/esm/i18n/fr.json +362 -0
  510. package/dist/esm/i18n/hi.json +362 -0
  511. package/dist/esm/i18n/id.json +362 -0
  512. package/dist/esm/i18n/it.json +362 -0
  513. package/dist/esm/i18n/ja.json +362 -0
  514. package/dist/esm/i18n/ko.json +362 -0
  515. package/dist/esm/i18n/pl.json +362 -0
  516. package/dist/esm/i18n/pt.json +362 -0
  517. package/dist/esm/i18n/th.json +362 -0
  518. package/dist/esm/i18n/tr.json +362 -0
  519. package/dist/esm/i18n/uk.json +362 -0
  520. package/dist/esm/i18n/vi.json +362 -0
  521. package/dist/esm/i18n/zh.json +362 -0
  522. package/dist/esm/index.d.ts +33 -0
  523. package/dist/esm/index.js +28 -0
  524. package/dist/esm/pages/ActivitiesPage/ActiveTransactionItem.js +36 -0
  525. package/dist/esm/pages/ActivitiesPage/ActiveTransactionItem.js.map +1 -0
  526. package/dist/esm/pages/ActivitiesPage/ActivitiesPage.js +101 -0
  527. package/dist/esm/pages/ActivitiesPage/ActivitiesPage.js.map +1 -0
  528. package/dist/esm/pages/ActivitiesPage/ActivitiesPageMenuButton.js +55 -0
  529. package/dist/esm/pages/ActivitiesPage/ActivitiesPageMenuButton.js.map +1 -0
  530. package/dist/esm/pages/ActivitiesPage/TransactionHistoryEmpty.js +17 -0
  531. package/dist/esm/pages/ActivitiesPage/TransactionHistoryEmpty.js.map +1 -0
  532. package/dist/esm/pages/ActivitiesPage/TransactionHistoryItem.js +24 -0
  533. package/dist/esm/pages/ActivitiesPage/TransactionHistoryItem.js.map +1 -0
  534. package/dist/esm/pages/LanguagesPage.js +31 -0
  535. package/dist/esm/pages/LanguagesPage.js.map +1 -0
  536. package/dist/esm/pages/MainPage/MainPage.js +59 -0
  537. package/dist/esm/pages/MainPage/MainPage.js.map +1 -0
  538. package/dist/esm/pages/MainPage/MainWarningMessages.js +16 -0
  539. package/dist/esm/pages/MainPage/MainWarningMessages.js.map +1 -0
  540. package/dist/esm/pages/MainPage/ReviewButton.js +60 -0
  541. package/dist/esm/pages/MainPage/ReviewButton.js.map +1 -0
  542. package/dist/esm/pages/RoutesPage/RoutesPage.js +74 -0
  543. package/dist/esm/pages/RoutesPage/RoutesPage.js.map +1 -0
  544. package/dist/esm/pages/RoutesPage/RoutesPage.style.js +10 -0
  545. package/dist/esm/pages/RoutesPage/RoutesPage.style.js.map +1 -0
  546. package/dist/esm/pages/SelectChainPage/SelectChainPage.js +35 -0
  547. package/dist/esm/pages/SelectChainPage/SelectChainPage.js.map +1 -0
  548. package/dist/esm/pages/SelectEnabledToolsPage.js +105 -0
  549. package/dist/esm/pages/SelectEnabledToolsPage.js.map +1 -0
  550. package/dist/esm/pages/SelectTokenPage/SearchTokenInput.js +40 -0
  551. package/dist/esm/pages/SelectTokenPage/SearchTokenInput.js.map +1 -0
  552. package/dist/esm/pages/SelectTokenPage/SelectTokenPage.js +46 -0
  553. package/dist/esm/pages/SelectTokenPage/SelectTokenPage.js.map +1 -0
  554. package/dist/esm/pages/SendToWallet/BookmarkAddressSheet.js +176 -0
  555. package/dist/esm/pages/SendToWallet/BookmarkAddressSheet.js.map +1 -0
  556. package/dist/esm/pages/SendToWallet/BookmarksPage.js +124 -0
  557. package/dist/esm/pages/SendToWallet/BookmarksPage.js.map +1 -0
  558. package/dist/esm/pages/SendToWallet/ConfirmAddressSheet.js +82 -0
  559. package/dist/esm/pages/SendToWallet/ConfirmAddressSheet.js.map +1 -0
  560. package/dist/esm/pages/SendToWallet/ConnectedWalletsPage.js +106 -0
  561. package/dist/esm/pages/SendToWallet/ConnectedWalletsPage.js.map +1 -0
  562. package/dist/esm/pages/SendToWallet/RecentWalletsPage.js +124 -0
  563. package/dist/esm/pages/SendToWallet/RecentWalletsPage.js.map +1 -0
  564. package/dist/esm/pages/SendToWallet/SendToConfiguredWalletPage.js +84 -0
  565. package/dist/esm/pages/SendToWallet/SendToConfiguredWalletPage.js.map +1 -0
  566. package/dist/esm/pages/SendToWallet/SendToWalletPage.js +237 -0
  567. package/dist/esm/pages/SendToWallet/SendToWalletPage.js.map +1 -0
  568. package/dist/esm/pages/SendToWallet/SendToWalletPage.style.js +90 -0
  569. package/dist/esm/pages/SendToWallet/SendToWalletPage.style.js.map +1 -0
  570. package/dist/esm/pages/SettingsPage/BridgeAndExchangeSettings.js +49 -0
  571. package/dist/esm/pages/SettingsPage/BridgeAndExchangeSettings.js.map +1 -0
  572. package/dist/esm/pages/SettingsPage/GasPriceSettings.js +56 -0
  573. package/dist/esm/pages/SettingsPage/GasPriceSettings.js.map +1 -0
  574. package/dist/esm/pages/SettingsPage/LanguageSetting.js +31 -0
  575. package/dist/esm/pages/SettingsPage/LanguageSetting.js.map +1 -0
  576. package/dist/esm/pages/SettingsPage/ResetSettingsButton.js +64 -0
  577. package/dist/esm/pages/SettingsPage/ResetSettingsButton.js.map +1 -0
  578. package/dist/esm/pages/SettingsPage/ResetSettingsButton.style.js +12 -0
  579. package/dist/esm/pages/SettingsPage/ResetSettingsButton.style.js.map +1 -0
  580. package/dist/esm/pages/SettingsPage/RoutePrioritySettings.js +48 -0
  581. package/dist/esm/pages/SettingsPage/RoutePrioritySettings.js.map +1 -0
  582. package/dist/esm/pages/SettingsPage/SettingsCard/BadgedValue.js +13 -0
  583. package/dist/esm/pages/SettingsPage/SettingsCard/BadgedValue.js.map +1 -0
  584. package/dist/esm/pages/SettingsPage/SettingsCard/SettingCard.style.js +23 -0
  585. package/dist/esm/pages/SettingsPage/SettingsCard/SettingCard.style.js.map +1 -0
  586. package/dist/esm/pages/SettingsPage/SettingsCard/SettingCardExpandable.js +47 -0
  587. package/dist/esm/pages/SettingsPage/SettingsCard/SettingCardExpandable.js.map +1 -0
  588. package/dist/esm/pages/SettingsPage/SettingsCard/SettingsAccordian.js +38 -0
  589. package/dist/esm/pages/SettingsPage/SettingsCard/SettingsAccordian.js.map +1 -0
  590. package/dist/esm/pages/SettingsPage/SettingsPage.js +39 -0
  591. package/dist/esm/pages/SettingsPage/SettingsPage.js.map +1 -0
  592. package/dist/esm/pages/SettingsPage/SlippageSettings/SlippageSettings.js +92 -0
  593. package/dist/esm/pages/SettingsPage/SlippageSettings/SlippageSettings.js.map +1 -0
  594. package/dist/esm/pages/SettingsPage/SlippageSettings/SlippageSettings.style.js +62 -0
  595. package/dist/esm/pages/SettingsPage/SlippageSettings/SlippageSettings.style.js.map +1 -0
  596. package/dist/esm/pages/SettingsPage/SmallBalanceFilterSettings.js +75 -0
  597. package/dist/esm/pages/SettingsPage/SmallBalanceFilterSettings.js.map +1 -0
  598. package/dist/esm/pages/SettingsPage/ThemeSettings.js +60 -0
  599. package/dist/esm/pages/SettingsPage/ThemeSettings.js.map +1 -0
  600. package/dist/esm/pages/TransactionDetailsPage/ContactSupportButton.js +16 -0
  601. package/dist/esm/pages/TransactionDetailsPage/ContactSupportButton.js.map +1 -0
  602. package/dist/esm/pages/TransactionDetailsPage/ContactSupportButton.style.js +14 -0
  603. package/dist/esm/pages/TransactionDetailsPage/ContactSupportButton.style.js.map +1 -0
  604. package/dist/esm/pages/TransactionDetailsPage/ReceiptsCard.js +28 -0
  605. package/dist/esm/pages/TransactionDetailsPage/ReceiptsCard.js.map +1 -0
  606. package/dist/esm/pages/TransactionDetailsPage/TransactionDetailsPage.js +84 -0
  607. package/dist/esm/pages/TransactionDetailsPage/TransactionDetailsPage.js.map +1 -0
  608. package/dist/esm/pages/TransactionDetailsPage/TransactionDetailsSkeleton.js +80 -0
  609. package/dist/esm/pages/TransactionDetailsPage/TransactionDetailsSkeleton.js.map +1 -0
  610. package/dist/esm/pages/TransactionDetailsPage/TransferIdCard.js +65 -0
  611. package/dist/esm/pages/TransactionDetailsPage/TransferIdCard.js.map +1 -0
  612. package/dist/esm/pages/TransactionPage/ConfirmToAddressSheet.js +81 -0
  613. package/dist/esm/pages/TransactionPage/ConfirmToAddressSheet.js.map +1 -0
  614. package/dist/esm/pages/TransactionPage/ExchangeRateBottomSheet.js +146 -0
  615. package/dist/esm/pages/TransactionPage/ExchangeRateBottomSheet.js.map +1 -0
  616. package/dist/esm/pages/TransactionPage/ExchangeRateBottomSheet.style.js +11 -0
  617. package/dist/esm/pages/TransactionPage/ExchangeRateBottomSheet.style.js.map +1 -0
  618. package/dist/esm/pages/TransactionPage/ExecutionDoneCard.js +38 -0
  619. package/dist/esm/pages/TransactionPage/ExecutionDoneCard.js.map +1 -0
  620. package/dist/esm/pages/TransactionPage/RouteTracker.js +47 -0
  621. package/dist/esm/pages/TransactionPage/RouteTracker.js.map +1 -0
  622. package/dist/esm/pages/TransactionPage/StartTransactionButton.js +21 -0
  623. package/dist/esm/pages/TransactionPage/StartTransactionButton.js.map +1 -0
  624. package/dist/esm/pages/TransactionPage/TokenValueBottomSheet.js +82 -0
  625. package/dist/esm/pages/TransactionPage/TokenValueBottomSheet.js.map +1 -0
  626. package/dist/esm/pages/TransactionPage/TokenValueBottomSheet.style.js +44 -0
  627. package/dist/esm/pages/TransactionPage/TokenValueBottomSheet.style.js.map +1 -0
  628. package/dist/esm/pages/TransactionPage/TransactionContent.js +21 -0
  629. package/dist/esm/pages/TransactionPage/TransactionContent.js.map +1 -0
  630. package/dist/esm/pages/TransactionPage/TransactionDoneButtons.js +46 -0
  631. package/dist/esm/pages/TransactionPage/TransactionDoneButtons.js.map +1 -0
  632. package/dist/esm/pages/TransactionPage/TransactionExecutionContent.js +78 -0
  633. package/dist/esm/pages/TransactionPage/TransactionExecutionContent.js.map +1 -0
  634. package/dist/esm/pages/TransactionPage/TransactionFailedButtons.js +80 -0
  635. package/dist/esm/pages/TransactionPage/TransactionFailedButtons.js.map +1 -0
  636. package/dist/esm/pages/TransactionPage/TransactionPage.js +79 -0
  637. package/dist/esm/pages/TransactionPage/TransactionPage.js.map +1 -0
  638. package/dist/esm/pages/TransactionPage/TransactionReview.js +115 -0
  639. package/dist/esm/pages/TransactionPage/TransactionReview.js.map +1 -0
  640. package/dist/esm/pages/TransactionPage/utils.js +12 -0
  641. package/dist/esm/pages/TransactionPage/utils.js.map +1 -0
  642. package/dist/esm/providers/I18nProvider/I18nProvider.js +83 -0
  643. package/dist/esm/providers/I18nProvider/I18nProvider.js.map +1 -0
  644. package/dist/esm/providers/I18nProvider/constants.js +43 -0
  645. package/dist/esm/providers/I18nProvider/constants.js.map +1 -0
  646. package/dist/esm/providers/I18nProvider/enResource.d.ts +2 -0
  647. package/dist/esm/providers/I18nProvider/enResource.js +2 -0
  648. package/dist/esm/providers/I18nProvider/i18n.js +18 -0
  649. package/dist/esm/providers/I18nProvider/i18n.js.map +1 -0
  650. package/dist/esm/providers/I18nProvider/types.d.ts +12 -0
  651. package/dist/esm/providers/I18nProvider/types.d.ts.map +1 -0
  652. package/dist/esm/providers/QueryClientProvider.js +15 -0
  653. package/dist/esm/providers/QueryClientProvider.js.map +1 -0
  654. package/dist/esm/providers/SDKClientProvider.js +43 -0
  655. package/dist/esm/providers/SDKClientProvider.js.map +1 -0
  656. package/dist/esm/providers/ThemeProvider/ThemeProvider.js +25 -0
  657. package/dist/esm/providers/ThemeProvider/ThemeProvider.js.map +1 -0
  658. package/dist/esm/providers/WalletProvider/WalletProvider.js +40 -0
  659. package/dist/esm/providers/WalletProvider/WalletProvider.js.map +1 -0
  660. package/dist/esm/providers/WalletProvider/useExternalWalletProvider.js +45 -0
  661. package/dist/esm/providers/WalletProvider/useExternalWalletProvider.js.map +1 -0
  662. package/dist/esm/providers/WidgetProvider/WidgetProvider.js +43 -0
  663. package/dist/esm/providers/WidgetProvider/WidgetProvider.js.map +1 -0
  664. package/dist/esm/stores/StoreProvider.js +38 -0
  665. package/dist/esm/stores/StoreProvider.js.map +1 -0
  666. package/dist/esm/stores/bookmarks/BookmarkStore.js +28 -0
  667. package/dist/esm/stores/bookmarks/BookmarkStore.js.map +1 -0
  668. package/dist/esm/stores/bookmarks/createBookmarkStore.js +45 -0
  669. package/dist/esm/stores/bookmarks/createBookmarkStore.js.map +1 -0
  670. package/dist/esm/stores/bookmarks/types.d.ts +26 -0
  671. package/dist/esm/stores/bookmarks/types.d.ts.map +1 -0
  672. package/dist/esm/stores/bookmarks/useBookmarkActions.js +17 -0
  673. package/dist/esm/stores/bookmarks/useBookmarkActions.js.map +1 -0
  674. package/dist/esm/stores/bookmarks/useBookmarks.js +18 -0
  675. package/dist/esm/stores/bookmarks/useBookmarks.js.map +1 -0
  676. package/dist/esm/stores/chains/ChainOrderStore.js +82 -0
  677. package/dist/esm/stores/chains/ChainOrderStore.js.map +1 -0
  678. package/dist/esm/stores/chains/createChainOrderStore.js +87 -0
  679. package/dist/esm/stores/chains/createChainOrderStore.js.map +1 -0
  680. package/dist/esm/stores/chains/useChainOrder.js +11 -0
  681. package/dist/esm/stores/chains/useChainOrder.js.map +1 -0
  682. package/dist/esm/stores/form/FormStore.js +72 -0
  683. package/dist/esm/stores/form/FormStore.js.map +1 -0
  684. package/dist/esm/stores/form/FormStoreContext.js +7 -0
  685. package/dist/esm/stores/form/FormStoreContext.js.map +1 -0
  686. package/dist/esm/stores/form/FormUpdater.js +37 -0
  687. package/dist/esm/stores/form/FormUpdater.js.map +1 -0
  688. package/dist/esm/stores/form/URLSearchParamsBuilder.js +79 -0
  689. package/dist/esm/stores/form/URLSearchParamsBuilder.js.map +1 -0
  690. package/dist/esm/stores/form/createFormStore.js +176 -0
  691. package/dist/esm/stores/form/createFormStore.js.map +1 -0
  692. package/dist/esm/stores/form/getDefaultValuesFromQueryString.js +22 -0
  693. package/dist/esm/stores/form/getDefaultValuesFromQueryString.js.map +1 -0
  694. package/dist/esm/stores/form/types.d.ts +76 -0
  695. package/dist/esm/stores/form/types.d.ts.map +1 -0
  696. package/dist/esm/stores/form/types.js +10 -0
  697. package/dist/esm/stores/form/types.js.map +1 -0
  698. package/dist/esm/stores/form/useClearAmountFields.js +14 -0
  699. package/dist/esm/stores/form/useClearAmountFields.js.map +1 -0
  700. package/dist/esm/stores/form/useFieldActions.d.ts +7 -0
  701. package/dist/esm/stores/form/useFieldActions.d.ts.map +1 -0
  702. package/dist/esm/stores/form/useFieldActions.js +61 -0
  703. package/dist/esm/stores/form/useFieldActions.js.map +1 -0
  704. package/dist/esm/stores/form/useFieldValues.d.ts +7 -0
  705. package/dist/esm/stores/form/useFieldValues.d.ts.map +1 -0
  706. package/dist/esm/stores/form/useFieldValues.js +9 -0
  707. package/dist/esm/stores/form/useFieldValues.js.map +1 -0
  708. package/dist/esm/stores/form/useFormRef.js +36 -0
  709. package/dist/esm/stores/form/useFormRef.js.map +1 -0
  710. package/dist/esm/stores/form/useFormStore.js +13 -0
  711. package/dist/esm/stores/form/useFormStore.js.map +1 -0
  712. package/dist/esm/stores/form/useTouchedFields.js +9 -0
  713. package/dist/esm/stores/form/useTouchedFields.js.map +1 -0
  714. package/dist/esm/stores/header/useHeaderStore.js +62 -0
  715. package/dist/esm/stores/header/useHeaderStore.js.map +1 -0
  716. package/dist/esm/stores/inputMode/useInputModeStore.js +20 -0
  717. package/dist/esm/stores/inputMode/useInputModeStore.js.map +1 -0
  718. package/dist/esm/stores/pinnedTokens/PinnedTokensStore.js +23 -0
  719. package/dist/esm/stores/pinnedTokens/PinnedTokensStore.js.map +1 -0
  720. package/dist/esm/stores/pinnedTokens/createPinnedTokensStore.js +57 -0
  721. package/dist/esm/stores/pinnedTokens/createPinnedTokensStore.js.map +1 -0
  722. package/dist/esm/stores/routes/RouteExecutionStore.js +26 -0
  723. package/dist/esm/stores/routes/RouteExecutionStore.js.map +1 -0
  724. package/dist/esm/stores/routes/createRouteExecutionStore.js +85 -0
  725. package/dist/esm/stores/routes/createRouteExecutionStore.js.map +1 -0
  726. package/dist/esm/stores/routes/useIntermediateRoutesStore.js +19 -0
  727. package/dist/esm/stores/routes/useIntermediateRoutesStore.js.map +1 -0
  728. package/dist/esm/stores/routes/useRouteExecutionIndicator.js +23 -0
  729. package/dist/esm/stores/routes/useRouteExecutionIndicator.js.map +1 -0
  730. package/dist/esm/stores/routes/useSetExecutableRoute.js +9 -0
  731. package/dist/esm/stores/routes/useSetExecutableRoute.js.map +1 -0
  732. package/dist/esm/stores/routes/utils.js +35 -0
  733. package/dist/esm/stores/routes/utils.js.map +1 -0
  734. package/dist/esm/stores/settings/SettingsStore.js +26 -0
  735. package/dist/esm/stores/settings/SettingsStore.js.map +1 -0
  736. package/dist/esm/stores/settings/createSettingsStore.js +126 -0
  737. package/dist/esm/stores/settings/createSettingsStore.js.map +1 -0
  738. package/dist/esm/stores/settings/types.d.ts +25 -0
  739. package/dist/esm/stores/settings/types.d.ts.map +1 -0
  740. package/dist/esm/stores/settings/types.js +6 -0
  741. package/dist/esm/stores/settings/types.js.map +1 -0
  742. package/dist/esm/stores/settings/useSettings.js +12 -0
  743. package/dist/esm/stores/settings/useSettings.js.map +1 -0
  744. package/dist/esm/stores/settings/useSettingsActions.js +70 -0
  745. package/dist/esm/stores/settings/useSettingsActions.js.map +1 -0
  746. package/dist/esm/stores/settings/useSplitModeStore.js +36 -0
  747. package/dist/esm/stores/settings/useSplitModeStore.js.map +1 -0
  748. package/dist/esm/stores/settings/utils/getStateValues.js +20 -0
  749. package/dist/esm/stores/settings/utils/getStateValues.js.map +1 -0
  750. package/dist/esm/themes/azureLight.d.ts +7 -0
  751. package/dist/esm/themes/azureLight.d.ts.map +1 -0
  752. package/dist/esm/themes/azureLight.js +41 -0
  753. package/dist/esm/themes/azureLight.js.map +1 -0
  754. package/dist/esm/themes/createTheme.d.ts +8 -0
  755. package/dist/esm/themes/createTheme.d.ts.map +1 -0
  756. package/dist/esm/themes/createTheme.js +322 -0
  757. package/dist/esm/themes/createTheme.js.map +1 -0
  758. package/dist/esm/themes/jumper.d.ts +7 -0
  759. package/dist/esm/themes/jumper.d.ts.map +1 -0
  760. package/dist/esm/themes/jumper.js +58 -0
  761. package/dist/esm/themes/jumper.js.map +1 -0
  762. package/dist/esm/themes/palettes.d.ts +54 -0
  763. package/dist/esm/themes/palettes.d.ts.map +1 -0
  764. package/dist/esm/themes/palettes.js +43 -0
  765. package/dist/esm/themes/palettes.js.map +1 -0
  766. package/dist/esm/themes/types.d.ts +67 -0
  767. package/dist/esm/themes/types.d.ts.map +1 -0
  768. package/dist/esm/themes/utils.js +13 -0
  769. package/dist/esm/themes/utils.js.map +1 -0
  770. package/dist/esm/themes/watermelonLight.d.ts +7 -0
  771. package/dist/esm/themes/watermelonLight.d.ts.map +1 -0
  772. package/dist/esm/themes/watermelonLight.js +45 -0
  773. package/dist/esm/themes/watermelonLight.js.map +1 -0
  774. package/dist/esm/themes/windows95.d.ts +7 -0
  775. package/dist/esm/themes/windows95.d.ts.map +1 -0
  776. package/dist/esm/themes/windows95.js +76 -0
  777. package/dist/esm/themes/windows95.js.map +1 -0
  778. package/dist/esm/types/events.d.ts +96 -0
  779. package/dist/esm/types/events.d.ts.map +1 -0
  780. package/dist/esm/types/events.js +26 -0
  781. package/dist/esm/types/events.js.map +1 -0
  782. package/dist/esm/types/token.d.ts +13 -0
  783. package/dist/esm/types/token.d.ts.map +1 -0
  784. package/dist/esm/types/widget.d.ts +332 -0
  785. package/dist/esm/types/widget.d.ts.map +1 -0
  786. package/dist/esm/types/widget.js +11 -0
  787. package/dist/esm/types/widget.js.map +1 -0
  788. package/dist/esm/utils/chainType.js +14 -0
  789. package/dist/esm/utils/chainType.js.map +1 -0
  790. package/dist/esm/utils/compactNumberFormatter.d.ts +14 -0
  791. package/dist/esm/utils/compactNumberFormatter.d.ts.map +1 -0
  792. package/dist/esm/utils/compactNumberFormatter.js +67 -0
  793. package/dist/esm/utils/compactNumberFormatter.js.map +1 -0
  794. package/dist/esm/utils/converters.js +168 -0
  795. package/dist/esm/utils/converters.js.map +1 -0
  796. package/dist/esm/utils/currencyExtendedFormatter.d.ts +5 -0
  797. package/dist/esm/utils/currencyExtendedFormatter.d.ts.map +1 -0
  798. package/dist/esm/utils/currencyExtendedFormatter.js +15 -0
  799. package/dist/esm/utils/currencyExtendedFormatter.js.map +1 -0
  800. package/dist/esm/utils/deepEqual.js +32 -0
  801. package/dist/esm/utils/deepEqual.js.map +1 -0
  802. package/dist/esm/utils/deepMerge.js +13 -0
  803. package/dist/esm/utils/deepMerge.js.map +1 -0
  804. package/dist/esm/utils/elements.js +10 -0
  805. package/dist/esm/utils/elements.js.map +1 -0
  806. package/dist/esm/utils/enum.js +6 -0
  807. package/dist/esm/utils/enum.js.map +1 -0
  808. package/dist/esm/utils/fees.js +74 -0
  809. package/dist/esm/utils/fees.js.map +1 -0
  810. package/dist/esm/utils/format.d.ts +29 -0
  811. package/dist/esm/utils/format.d.ts.map +1 -0
  812. package/dist/esm/utils/format.js +100 -0
  813. package/dist/esm/utils/format.js.map +1 -0
  814. package/dist/esm/utils/getActionMessage.js +68 -0
  815. package/dist/esm/utils/getActionMessage.js.map +1 -0
  816. package/dist/esm/utils/getErrorMessage.js +117 -0
  817. package/dist/esm/utils/getErrorMessage.js.map +1 -0
  818. package/dist/esm/utils/getPriceImpact.d.ts +18 -0
  819. package/dist/esm/utils/getPriceImpact.d.ts.map +1 -0
  820. package/dist/esm/utils/getPriceImpact.js +12 -0
  821. package/dist/esm/utils/getPriceImpact.js.map +1 -0
  822. package/dist/esm/utils/input.js +23 -0
  823. package/dist/esm/utils/input.js.map +1 -0
  824. package/dist/esm/utils/item.js +27 -0
  825. package/dist/esm/utils/item.js.map +1 -0
  826. package/dist/esm/utils/navigationRoutes.d.ts +27 -0
  827. package/dist/esm/utils/navigationRoutes.d.ts.map +1 -0
  828. package/dist/esm/utils/navigationRoutes.js +65 -0
  829. package/dist/esm/utils/navigationRoutes.js.map +1 -0
  830. package/dist/esm/utils/percentFormatter.d.ts +11 -0
  831. package/dist/esm/utils/percentFormatter.d.ts.map +1 -0
  832. package/dist/esm/utils/percentFormatter.js +23 -0
  833. package/dist/esm/utils/percentFormatter.js.map +1 -0
  834. package/dist/esm/utils/prepareActions.js +21 -0
  835. package/dist/esm/utils/prepareActions.js.map +1 -0
  836. package/dist/esm/utils/queries.js +6 -0
  837. package/dist/esm/utils/queries.js.map +1 -0
  838. package/dist/esm/utils/timer.js +23 -0
  839. package/dist/esm/utils/timer.js.map +1 -0
  840. package/dist/esm/utils/token.js +59 -0
  841. package/dist/esm/utils/token.js.map +1 -0
  842. package/dist/esm/utils/tokenList.js +147 -0
  843. package/dist/esm/utils/tokenList.js.map +1 -0
  844. package/dist/esm/utils/variant.js +10 -0
  845. package/dist/esm/utils/variant.js.map +1 -0
  846. package/dist/esm/utils/wallet.js +6 -0
  847. package/dist/esm/utils/wallet.js.map +1 -0
  848. package/dist/esm/utils/widgetSize.js +11 -0
  849. package/dist/esm/utils/widgetSize.js.map +1 -0
  850. package/package.json +95 -0
  851. package/src/App.tsx +48 -0
  852. package/src/AppDefault.tsx +266 -0
  853. package/src/AppDrawer.tsx +104 -0
  854. package/src/AppDrawerContext.ts +10 -0
  855. package/src/AppLayout.tsx +36 -0
  856. package/src/AppProvider.tsx +36 -0
  857. package/src/components/ActionRow/ActionRow.style.tsx +21 -0
  858. package/src/components/ActionRow/ActionRow.tsx +25 -0
  859. package/src/components/AmountInput/AmountInput.style.tsx +68 -0
  860. package/src/components/AmountInput/AmountInput.tsx +203 -0
  861. package/src/components/AmountInput/AmountInputEndAdornment.style.ts +22 -0
  862. package/src/components/AmountInput/AmountInputEndAdornment.tsx +96 -0
  863. package/src/components/AmountInput/AmountInputStartAdornment.tsx +26 -0
  864. package/src/components/AmountInput/PriceFormHelperText.style.tsx +34 -0
  865. package/src/components/AmountInput/PriceFormHelperText.tsx +135 -0
  866. package/src/components/AppContainer.tsx +154 -0
  867. package/src/components/Avatar/AccountAvatar.tsx +50 -0
  868. package/src/components/Avatar/Avatar.style.tsx +100 -0
  869. package/src/components/Avatar/Avatar.tsx +50 -0
  870. package/src/components/Avatar/ChainBadgeContent.tsx +22 -0
  871. package/src/components/Avatar/SmallAvatar.tsx +27 -0
  872. package/src/components/Avatar/TokenAvatar.tsx +99 -0
  873. package/src/components/Avatar/utils.ts +6 -0
  874. package/src/components/BaseTransactionButton/BaseTransactionButton.tsx +72 -0
  875. package/src/components/BaseTransactionButton/types.ts +11 -0
  876. package/src/components/BottomSheet/BottomSheet.tsx +67 -0
  877. package/src/components/BottomSheet/types.ts +14 -0
  878. package/src/components/ButtonTertiary.tsx +29 -0
  879. package/src/components/Card/Card.tsx +81 -0
  880. package/src/components/Card/CardButton.style.tsx +31 -0
  881. package/src/components/Card/CardButton.tsx +26 -0
  882. package/src/components/Card/CardHeader.tsx +28 -0
  883. package/src/components/Card/CardIconButton.tsx +20 -0
  884. package/src/components/Card/CardLabel.tsx +80 -0
  885. package/src/components/Card/CardTitle.tsx +29 -0
  886. package/src/components/Card/InputCard.tsx +11 -0
  887. package/src/components/ChainSelect/ChainSelect.style.tsx +84 -0
  888. package/src/components/ChainSelect/ChainSelect.tsx +183 -0
  889. package/src/components/ChainSelect/useChainSelect.ts +98 -0
  890. package/src/components/Chains/AllChainsAvatar.tsx +167 -0
  891. package/src/components/Chains/ChainList.style.tsx +91 -0
  892. package/src/components/Chains/ChainList.tsx +89 -0
  893. package/src/components/Chains/ChainListItem.tsx +83 -0
  894. package/src/components/Chains/ChainsExpanded.style.tsx +25 -0
  895. package/src/components/Chains/ChainsExpanded.tsx +31 -0
  896. package/src/components/Chains/PinChainButton.tsx +55 -0
  897. package/src/components/Chains/SelectChainExpansionContent.tsx +84 -0
  898. package/src/components/Chains/SelectChainPageContent.tsx +66 -0
  899. package/src/components/Chains/VirtualizedChainList.tsx +222 -0
  900. package/src/components/ContextMenu.style.tsx +13 -0
  901. package/src/components/ContextMenu.tsx +75 -0
  902. package/src/components/ContractComponent/ContractComponent.tsx +14 -0
  903. package/src/components/ContractComponent/ItemPrice.tsx +37 -0
  904. package/src/components/ContractComponent/NFT/NFT.style.ts +10 -0
  905. package/src/components/ContractComponent/NFT/NFT.tsx +46 -0
  906. package/src/components/ContractComponent/NFT/NFTBase.tsx +91 -0
  907. package/src/components/ContractComponent/NFT/types.ts +19 -0
  908. package/src/components/Dialog/Dialog.style.tsx +59 -0
  909. package/src/components/Dialog/Dialog.tsx +49 -0
  910. package/src/components/EmptyListIndicator/EmptyListIndicator.style.tsx +38 -0
  911. package/src/components/EmptyListIndicator/EmptyListIndicator.tsx +25 -0
  912. package/src/components/ExecutionStatusCard/ExecutionChecklist.tsx +61 -0
  913. package/src/components/ExecutionStatusCard/ExecutionStatusCard.tsx +242 -0
  914. package/src/components/ExecutionStatusCard/StaggeredRevealTypography.tsx +59 -0
  915. package/src/components/ExecutionStatusCard/StatusIcon.style.tsx +13 -0
  916. package/src/components/ExecutionStatusCard/StatusIcon.tsx +99 -0
  917. package/src/components/ExecutionStatusCard/iconKey.ts +37 -0
  918. package/src/components/Expansion/Expansion.style.tsx +46 -0
  919. package/src/components/Expansion/Expansion.tsx +47 -0
  920. package/src/components/Expansion/ExpansionTransition.tsx +48 -0
  921. package/src/components/FeeBreakdownTooltip.tsx +68 -0
  922. package/src/components/Header/ActivitiesButton.style.tsx +67 -0
  923. package/src/components/Header/ActivitiesButton.tsx +59 -0
  924. package/src/components/Header/BackButton.tsx +29 -0
  925. package/src/components/Header/CloseDrawerButton.tsx +35 -0
  926. package/src/components/Header/DisconnectIconButton.tsx +24 -0
  927. package/src/components/Header/Header.style.ts +126 -0
  928. package/src/components/Header/Header.tsx +59 -0
  929. package/src/components/Header/NavigationHeader.tsx +77 -0
  930. package/src/components/Header/SettingsButton.style.tsx +62 -0
  931. package/src/components/Header/SettingsButton.tsx +47 -0
  932. package/src/components/Header/SplitNavigationTabs.tsx +32 -0
  933. package/src/components/Header/WalletHeader.tsx +184 -0
  934. package/src/components/Header/WalletMenu.style.tsx +34 -0
  935. package/src/components/Header/WalletMenu.tsx +129 -0
  936. package/src/components/IconCircle/IconCircle.style.tsx +85 -0
  937. package/src/components/IconCircle/IconCircle.tsx +29 -0
  938. package/src/components/IconCircle/statusIcons.ts +14 -0
  939. package/src/components/IconTypography.ts +11 -0
  940. package/src/components/Initializer.tsx +6 -0
  941. package/src/components/Input.tsx +14 -0
  942. package/src/components/ListItem/ListItem.tsx +29 -0
  943. package/src/components/ListItem/ListItemButton.tsx +12 -0
  944. package/src/components/ListItemButton.tsx +43 -0
  945. package/src/components/ListItemText.tsx +14 -0
  946. package/src/components/Menu.tsx +30 -0
  947. package/src/components/Messages/AccountDeployedMessage.tsx +28 -0
  948. package/src/components/Messages/AccountNotDeployedMessage.tsx +22 -0
  949. package/src/components/Messages/AlertMessage.style.tsx +65 -0
  950. package/src/components/Messages/AlertMessage.tsx +34 -0
  951. package/src/components/Messages/FundsSufficiencyMessage.tsx +26 -0
  952. package/src/components/Messages/GasRefuelMessage.style.ts +23 -0
  953. package/src/components/Messages/GasRefuelMessage.tsx +81 -0
  954. package/src/components/Messages/GasSufficiencyMessage.tsx +63 -0
  955. package/src/components/Messages/MinFromAmountUSDMessage.tsx +35 -0
  956. package/src/components/Messages/MissingRouteRequiredAccountMessage.tsx +44 -0
  957. package/src/components/Messages/WarningMessages.tsx +64 -0
  958. package/src/components/Messages/types.ts +1 -0
  959. package/src/components/Messages/useMessageQueue.ts +111 -0
  960. package/src/components/NotFound.tsx +45 -0
  961. package/src/components/PageContainer.ts +34 -0
  962. package/src/components/PageEntered.ts +14 -0
  963. package/src/components/PoweredBy/PoweredBy.style.ts +13 -0
  964. package/src/components/PoweredBy/PoweredBy.tsx +61 -0
  965. package/src/components/ProgressToNextUpdate.tsx +92 -0
  966. package/src/components/ReverseTokensButton/ReverseTokensButton.style.tsx +37 -0
  967. package/src/components/ReverseTokensButton/ReverseTokensButton.tsx +61 -0
  968. package/src/components/RouteCard/RouteCard.tsx +128 -0
  969. package/src/components/RouteCard/RouteCardEssentials.tsx +101 -0
  970. package/src/components/RouteCard/RouteCardSkeleton.tsx +58 -0
  971. package/src/components/RouteCard/RouteDetails.style.tsx +43 -0
  972. package/src/components/RouteCard/RouteDetails.tsx +214 -0
  973. package/src/components/RouteCard/RouteNotFoundCard.tsx +46 -0
  974. package/src/components/RouteCard/RouteToken.style.tsx +9 -0
  975. package/src/components/RouteCard/RouteToken.tsx +68 -0
  976. package/src/components/RouteCard/RouteTokens.tsx +56 -0
  977. package/src/components/RouteCard/getMatchingLabels.ts +66 -0
  978. package/src/components/RouteCard/types.ts +16 -0
  979. package/src/components/Routes/Routes.tsx +93 -0
  980. package/src/components/Routes/RoutesContent.tsx +117 -0
  981. package/src/components/Routes/RoutesExpanded.style.ts +46 -0
  982. package/src/components/Routes/RoutesExpanded.tsx +102 -0
  983. package/src/components/Search/SearchInput.style.tsx +43 -0
  984. package/src/components/Search/SearchInput.tsx +80 -0
  985. package/src/components/Search/SearchNotFound.style.tsx +34 -0
  986. package/src/components/Search/SearchNotFound.tsx +22 -0
  987. package/src/components/SelectChainAndToken.tsx +41 -0
  988. package/src/components/SelectTokenButton/SelectTokenButton.style.tsx +108 -0
  989. package/src/components/SelectTokenButton/SelectTokenButton.tsx +100 -0
  990. package/src/components/SendToWallet/SendToWalletButton.style.tsx +81 -0
  991. package/src/components/SendToWallet/SendToWalletButton.tsx +179 -0
  992. package/src/components/SendToWallet/SendToWalletExpandButton.tsx +59 -0
  993. package/src/components/SettingsListItemButton.tsx +9 -0
  994. package/src/components/Skeleton/WidgetSkeleton.style.tsx +102 -0
  995. package/src/components/Skeleton/WidgetSkeleton.tsx +140 -0
  996. package/src/components/Step/StepActions.style.tsx +33 -0
  997. package/src/components/Step/StepActions.tsx +329 -0
  998. package/src/components/StepActions/SentToWalletRow.style.tsx +29 -0
  999. package/src/components/StepActions/SentToWalletRow.tsx +56 -0
  1000. package/src/components/StepActions/StepActionRow.style.tsx +18 -0
  1001. package/src/components/StepActions/StepActionRow.tsx +30 -0
  1002. package/src/components/StepActions/StepActionsList.tsx +40 -0
  1003. package/src/components/StepActions/executionRows.tsx +86 -0
  1004. package/src/components/Switch.tsx +54 -0
  1005. package/src/components/Tabs/NavigationTabs.tsx +45 -0
  1006. package/src/components/Tabs/Tabs.style.tsx +51 -0
  1007. package/src/components/TextFitter/TextFitter.tsx +87 -0
  1008. package/src/components/TextFitter/types.ts +13 -0
  1009. package/src/components/Timer/ExecutionTimerText.tsx +10 -0
  1010. package/src/components/Timer/StepStatusTimer.style.tsx +98 -0
  1011. package/src/components/Timer/StepStatusTimer.tsx +85 -0
  1012. package/src/components/Token/Token.style.tsx +44 -0
  1013. package/src/components/Token/Token.tsx +317 -0
  1014. package/src/components/TokenList/PinTokenButton.tsx +51 -0
  1015. package/src/components/TokenList/TokenDetailsSheet.tsx +45 -0
  1016. package/src/components/TokenList/TokenDetailsSheetContent.style.tsx +40 -0
  1017. package/src/components/TokenList/TokenDetailsSheetContent.tsx +247 -0
  1018. package/src/components/TokenList/TokenList.style.tsx +44 -0
  1019. package/src/components/TokenList/TokenList.tsx +88 -0
  1020. package/src/components/TokenList/TokenListItem.tsx +418 -0
  1021. package/src/components/TokenList/TokenNotFound.tsx +11 -0
  1022. package/src/components/TokenList/VirtualizedTokenList.tsx +253 -0
  1023. package/src/components/TokenList/types.ts +65 -0
  1024. package/src/components/TokenList/useTokenSelect.ts +135 -0
  1025. package/src/components/TokenRate/TokenRate.style.ts +20 -0
  1026. package/src/components/TokenRate/TokenRate.tsx +62 -0
  1027. package/src/components/Tools/ToolItem.tsx +41 -0
  1028. package/src/components/Tools/Tools.tsx +61 -0
  1029. package/src/components/TransactionCard/ActiveTransactionCard.style.tsx +24 -0
  1030. package/src/components/TransactionCard/ActiveTransactionCard.tsx +81 -0
  1031. package/src/components/TransactionCard/TransactionCard.style.tsx +14 -0
  1032. package/src/components/TransactionCard/TransactionCard.tsx +37 -0
  1033. package/src/components/TransactionCard/TransactionCardSkeleton.tsx +68 -0
  1034. package/src/config/constants.ts +3 -0
  1035. package/src/config/queryClient.ts +21 -0
  1036. package/src/config/version.ts +2 -0
  1037. package/src/hooks/timer/time.ts +39 -0
  1038. package/src/hooks/timer/useExecutionTimer.ts +21 -0
  1039. package/src/hooks/timer/useInterval.ts +21 -0
  1040. package/src/hooks/timer/useTimer.ts +107 -0
  1041. package/src/hooks/timer/validate.ts +15 -0
  1042. package/src/hooks/useAccountsBalancesData.ts +104 -0
  1043. package/src/hooks/useActionMessage.ts +34 -0
  1044. package/src/hooks/useAddressActivity.ts +47 -0
  1045. package/src/hooks/useAddressValidation.ts +101 -0
  1046. package/src/hooks/useAvailableChains.ts +108 -0
  1047. package/src/hooks/useChain.ts +24 -0
  1048. package/src/hooks/useChainSearch.ts +70 -0
  1049. package/src/hooks/useChains.ts +50 -0
  1050. package/src/hooks/useContactSupport.ts +16 -0
  1051. package/src/hooks/useDebouncedWatch.ts +32 -0
  1052. package/src/hooks/useDefaultElementId.ts +6 -0
  1053. package/src/hooks/useExplorer.ts +104 -0
  1054. package/src/hooks/useFilteredByTokenBalances.ts +140 -0
  1055. package/src/hooks/useFromAmountThreshold.ts +38 -0
  1056. package/src/hooks/useFromTokenSufficiency.ts +98 -0
  1057. package/src/hooks/useGasRecommendation.ts +60 -0
  1058. package/src/hooks/useGasRefuel.ts +98 -0
  1059. package/src/hooks/useGasSufficiency.ts +233 -0
  1060. package/src/hooks/useHasChainExpansion.ts +32 -0
  1061. package/src/hooks/useHeader.ts +21 -0
  1062. package/src/hooks/useInitializeSDKProviders.ts +12 -0
  1063. package/src/hooks/useInitializer.ts +16 -0
  1064. package/src/hooks/useIsBatchingSupported.ts +46 -0
  1065. package/src/hooks/useIsContractAddress.ts +39 -0
  1066. package/src/hooks/useLanguages.ts +93 -0
  1067. package/src/hooks/useListHeight.ts +107 -0
  1068. package/src/hooks/useLongPress.ts +60 -0
  1069. package/src/hooks/useNavigateBack.ts +17 -0
  1070. package/src/hooks/usePacedRouteExecution.ts +45 -0
  1071. package/src/hooks/usePacedValue.ts +45 -0
  1072. package/src/hooks/useRouteExecution.ts +246 -0
  1073. package/src/hooks/useRouteExecutionMessage.ts +100 -0
  1074. package/src/hooks/useRouteRequiredAccountConnection.ts +62 -0
  1075. package/src/hooks/useRoutes.ts +578 -0
  1076. package/src/hooks/useScrollableContainer.ts +29 -0
  1077. package/src/hooks/useSetContentHeight.ts +30 -0
  1078. package/src/hooks/useSettingMonitor.ts +93 -0
  1079. package/src/hooks/useSwapOnly.ts +6 -0
  1080. package/src/hooks/useToAddressAutoPopulate.ts +95 -0
  1081. package/src/hooks/useToAddressRequirements.ts +103 -0
  1082. package/src/hooks/useToAddressReset.ts +39 -0
  1083. package/src/hooks/useToken.ts +45 -0
  1084. package/src/hooks/useTokenAddressBalance.ts +32 -0
  1085. package/src/hooks/useTokenBalance.ts +148 -0
  1086. package/src/hooks/useTokenBalances.ts +191 -0
  1087. package/src/hooks/useTokenBalancesQueries.ts +100 -0
  1088. package/src/hooks/useTokenRateText.ts +55 -0
  1089. package/src/hooks/useTokenSearch.ts +98 -0
  1090. package/src/hooks/useTokens.ts +159 -0
  1091. package/src/hooks/useTools.ts +56 -0
  1092. package/src/hooks/useTransactionDetails.ts +93 -0
  1093. package/src/hooks/useTransactionHistory.ts +120 -0
  1094. package/src/hooks/useTransactionList.ts +83 -0
  1095. package/src/hooks/useWideVariant.ts +13 -0
  1096. package/src/hooks/useWidgetChains.ts +16 -0
  1097. package/src/hooks/useWidgetEvents.ts +8 -0
  1098. package/src/i18n/i18next.d.ts +10 -0
  1099. package/src/index.ts +37 -0
  1100. package/src/pages/ActivitiesPage/ActiveTransactionItem.tsx +43 -0
  1101. package/src/pages/ActivitiesPage/ActivitiesPage.tsx +148 -0
  1102. package/src/pages/ActivitiesPage/ActivitiesPageMenuButton.tsx +71 -0
  1103. package/src/pages/ActivitiesPage/TransactionHistoryEmpty.tsx +14 -0
  1104. package/src/pages/ActivitiesPage/TransactionHistoryItem.tsx +30 -0
  1105. package/src/pages/ActivitiesPage/types.ts +16 -0
  1106. package/src/pages/LanguagesPage.tsx +49 -0
  1107. package/src/pages/MainPage/MainPage.tsx +70 -0
  1108. package/src/pages/MainPage/MainWarningMessages.tsx +17 -0
  1109. package/src/pages/MainPage/ReviewButton.tsx +81 -0
  1110. package/src/pages/RoutesPage/RoutesPage.style.ts +9 -0
  1111. package/src/pages/RoutesPage/RoutesPage.tsx +99 -0
  1112. package/src/pages/SelectChainPage/SelectChainPage.tsx +36 -0
  1113. package/src/pages/SelectChainPage/types.ts +5 -0
  1114. package/src/pages/SelectEnabledToolsPage.tsx +131 -0
  1115. package/src/pages/SelectTokenPage/SearchTokenInput.tsx +58 -0
  1116. package/src/pages/SelectTokenPage/SelectTokenPage.tsx +80 -0
  1117. package/src/pages/SendToWallet/BookmarkAddressSheet.tsx +247 -0
  1118. package/src/pages/SendToWallet/BookmarksPage.tsx +145 -0
  1119. package/src/pages/SendToWallet/ConfirmAddressSheet.tsx +107 -0
  1120. package/src/pages/SendToWallet/ConnectedWalletsPage.tsx +134 -0
  1121. package/src/pages/SendToWallet/RecentWalletsPage.tsx +161 -0
  1122. package/src/pages/SendToWallet/SendToConfiguredWalletPage.tsx +110 -0
  1123. package/src/pages/SendToWallet/SendToWalletPage.style.tsx +137 -0
  1124. package/src/pages/SendToWallet/SendToWalletPage.tsx +308 -0
  1125. package/src/pages/SendToWallet/types.ts +4 -0
  1126. package/src/pages/SettingsPage/BridgeAndExchangeSettings.tsx +59 -0
  1127. package/src/pages/SettingsPage/GasPriceSettings.tsx +47 -0
  1128. package/src/pages/SettingsPage/LanguageSetting.tsx +40 -0
  1129. package/src/pages/SettingsPage/ResetSettingsButton.style.tsx +12 -0
  1130. package/src/pages/SettingsPage/ResetSettingsButton.tsx +83 -0
  1131. package/src/pages/SettingsPage/RoutePrioritySettings.tsx +57 -0
  1132. package/src/pages/SettingsPage/SettingsCard/BadgedValue.tsx +22 -0
  1133. package/src/pages/SettingsPage/SettingsCard/SettingCard.style.tsx +26 -0
  1134. package/src/pages/SettingsPage/SettingsCard/SettingCardExpandable.tsx +90 -0
  1135. package/src/pages/SettingsPage/SettingsCard/SettingsAccordian.tsx +48 -0
  1136. package/src/pages/SettingsPage/SettingsCard/types.ts +6 -0
  1137. package/src/pages/SettingsPage/SettingsPage.tsx +39 -0
  1138. package/src/pages/SettingsPage/SlippageSettings/SlippageSettings.style.tsx +102 -0
  1139. package/src/pages/SettingsPage/SlippageSettings/SlippageSettings.tsx +151 -0
  1140. package/src/pages/SettingsPage/SmallBalanceFilterSettings.tsx +116 -0
  1141. package/src/pages/SettingsPage/ThemeSettings.tsx +85 -0
  1142. package/src/pages/TransactionDetailsPage/ContactSupportButton.style.tsx +12 -0
  1143. package/src/pages/TransactionDetailsPage/ContactSupportButton.tsx +21 -0
  1144. package/src/pages/TransactionDetailsPage/ReceiptsCard.tsx +22 -0
  1145. package/src/pages/TransactionDetailsPage/TransactionDetailsPage.tsx +111 -0
  1146. package/src/pages/TransactionDetailsPage/TransactionDetailsSkeleton.tsx +91 -0
  1147. package/src/pages/TransactionDetailsPage/TransferIdCard.tsx +72 -0
  1148. package/src/pages/TransactionPage/ConfirmToAddressSheet.tsx +96 -0
  1149. package/src/pages/TransactionPage/ExchangeRateBottomSheet.style.tsx +9 -0
  1150. package/src/pages/TransactionPage/ExchangeRateBottomSheet.tsx +214 -0
  1151. package/src/pages/TransactionPage/ExecutionDoneCard.tsx +43 -0
  1152. package/src/pages/TransactionPage/RouteTracker.tsx +68 -0
  1153. package/src/pages/TransactionPage/StartTransactionButton.tsx +27 -0
  1154. package/src/pages/TransactionPage/TokenValueBottomSheet.style.tsx +60 -0
  1155. package/src/pages/TransactionPage/TokenValueBottomSheet.tsx +141 -0
  1156. package/src/pages/TransactionPage/TransactionContent.tsx +42 -0
  1157. package/src/pages/TransactionPage/TransactionDoneButtons.tsx +70 -0
  1158. package/src/pages/TransactionPage/TransactionExecutionContent.tsx +93 -0
  1159. package/src/pages/TransactionPage/TransactionFailedButtons.tsx +105 -0
  1160. package/src/pages/TransactionPage/TransactionPage.tsx +111 -0
  1161. package/src/pages/TransactionPage/TransactionReview.tsx +163 -0
  1162. package/src/pages/TransactionPage/types.ts +7 -0
  1163. package/src/pages/TransactionPage/utils.ts +25 -0
  1164. package/src/providers/I18nProvider/I18nProvider.tsx +133 -0
  1165. package/src/providers/I18nProvider/constants.ts +41 -0
  1166. package/src/providers/I18nProvider/enResource.ts +4 -0
  1167. package/src/providers/I18nProvider/i18n.ts +26 -0
  1168. package/src/providers/I18nProvider/types.ts +36 -0
  1169. package/src/providers/QueryClientProvider.tsx +20 -0
  1170. package/src/providers/SDKClientProvider.tsx +59 -0
  1171. package/src/providers/ThemeProvider/ThemeProvider.tsx +35 -0
  1172. package/src/providers/WalletProvider/WalletProvider.tsx +70 -0
  1173. package/src/providers/WalletProvider/useExternalWalletProvider.ts +79 -0
  1174. package/src/providers/WidgetProvider/WidgetProvider.tsx +49 -0
  1175. package/src/providers/WidgetProvider/types.ts +9 -0
  1176. package/src/stores/StoreProvider.tsx +40 -0
  1177. package/src/stores/bookmarks/BookmarkStore.tsx +38 -0
  1178. package/src/stores/bookmarks/createBookmarkStore.ts +80 -0
  1179. package/src/stores/bookmarks/types.ts +26 -0
  1180. package/src/stores/bookmarks/useBookmarkActions.ts +16 -0
  1181. package/src/stores/bookmarks/useBookmarks.ts +14 -0
  1182. package/src/stores/chains/ChainOrderStore.tsx +165 -0
  1183. package/src/stores/chains/createChainOrderStore.ts +128 -0
  1184. package/src/stores/chains/types.ts +25 -0
  1185. package/src/stores/chains/useChainOrder.ts +20 -0
  1186. package/src/stores/form/FormStore.tsx +133 -0
  1187. package/src/stores/form/FormStoreContext.ts +5 -0
  1188. package/src/stores/form/FormUpdater.tsx +52 -0
  1189. package/src/stores/form/URLSearchParamsBuilder.tsx +93 -0
  1190. package/src/stores/form/createFormStore.ts +237 -0
  1191. package/src/stores/form/getDefaultValuesFromQueryString.ts +48 -0
  1192. package/src/stores/form/types.ts +107 -0
  1193. package/src/stores/form/useClearAmountFields.ts +10 -0
  1194. package/src/stores/form/useFieldActions.ts +93 -0
  1195. package/src/stores/form/useFieldValues.ts +14 -0
  1196. package/src/stores/form/useFormRef.ts +76 -0
  1197. package/src/stores/form/useFormStore.ts +14 -0
  1198. package/src/stores/form/useTouchedFields.ts +8 -0
  1199. package/src/stores/header/types.ts +20 -0
  1200. package/src/stores/header/useHeaderStore.tsx +103 -0
  1201. package/src/stores/inputMode/useInputModeStore.ts +31 -0
  1202. package/src/stores/pinnedTokens/PinnedTokensStore.tsx +38 -0
  1203. package/src/stores/pinnedTokens/createPinnedTokensStore.ts +74 -0
  1204. package/src/stores/pinnedTokens/types.ts +20 -0
  1205. package/src/stores/routes/RouteExecutionStore.tsx +44 -0
  1206. package/src/stores/routes/createRouteExecutionStore.ts +167 -0
  1207. package/src/stores/routes/types.ts +26 -0
  1208. package/src/stores/routes/useIntermediateRoutesStore.ts +29 -0
  1209. package/src/stores/routes/useRouteExecutionIndicator.ts +43 -0
  1210. package/src/stores/routes/useSetExecutableRoute.ts +7 -0
  1211. package/src/stores/routes/utils.ts +63 -0
  1212. package/src/stores/settings/SettingsStore.tsx +45 -0
  1213. package/src/stores/settings/createSettingsStore.ts +219 -0
  1214. package/src/stores/settings/types.ts +66 -0
  1215. package/src/stores/settings/useSettings.ts +16 -0
  1216. package/src/stores/settings/useSettingsActions.ts +165 -0
  1217. package/src/stores/settings/useSplitModeStore.tsx +58 -0
  1218. package/src/stores/settings/utils/getStateValues.ts +17 -0
  1219. package/src/stores/types.ts +7 -0
  1220. package/src/themes/azureLight.ts +61 -0
  1221. package/src/themes/createTheme.ts +489 -0
  1222. package/src/themes/jumper.ts +77 -0
  1223. package/src/themes/palettes.ts +52 -0
  1224. package/src/themes/types.ts +82 -0
  1225. package/src/themes/utils.ts +18 -0
  1226. package/src/themes/watermelonLight.ts +80 -0
  1227. package/src/themes/windows95.ts +133 -0
  1228. package/src/types/events.ts +114 -0
  1229. package/src/types/token.ts +21 -0
  1230. package/src/types/widget.ts +441 -0
  1231. package/src/utils/chainType.ts +10 -0
  1232. package/src/utils/compactNumberFormatter.ts +91 -0
  1233. package/src/utils/converters.ts +238 -0
  1234. package/src/utils/currencyExtendedFormatter.ts +15 -0
  1235. package/src/utils/deepEqual.ts +62 -0
  1236. package/src/utils/deepMerge.ts +14 -0
  1237. package/src/utils/elements.ts +32 -0
  1238. package/src/utils/enum.ts +4 -0
  1239. package/src/utils/fees.ts +136 -0
  1240. package/src/utils/format.ts +195 -0
  1241. package/src/utils/getActionMessage.ts +163 -0
  1242. package/src/utils/getErrorMessage.ts +144 -0
  1243. package/src/utils/getPriceImpact.ts +35 -0
  1244. package/src/utils/input.ts +29 -0
  1245. package/src/utils/item.ts +65 -0
  1246. package/src/utils/navigationRoutes.ts +68 -0
  1247. package/src/utils/percentFormatter.ts +28 -0
  1248. package/src/utils/prepareActions.ts +27 -0
  1249. package/src/utils/queries.ts +2 -0
  1250. package/src/utils/timer.ts +45 -0
  1251. package/src/utils/token.ts +143 -0
  1252. package/src/utils/tokenList.ts +284 -0
  1253. package/src/utils/variant.ts +13 -0
  1254. package/src/utils/wallet.ts +4 -0
  1255. package/src/utils/widgetSize.ts +17 -0
@@ -0,0 +1,87 @@
1
+ import { widgetEvents } from "../../hooks/useWidgetEvents.js";
2
+ import "../../types/events.js";
3
+ import { create } from "zustand";
4
+ import { persist } from "zustand/middleware";
5
+ const defaultChainState = {
6
+ from: [],
7
+ to: []
8
+ };
9
+ const createChainOrderStore = ({ namePrefix }) => create()(persist((set, get) => ({
10
+ chainOrder: defaultChainState,
11
+ fromIsAllNetworks: true,
12
+ toIsAllNetworks: true,
13
+ fromShowAllNetworks: true,
14
+ toShowAllNetworks: true,
15
+ availableChains: defaultChainState,
16
+ pinnedChains: [],
17
+ initializeChains: (chainIds, type) => {
18
+ set((state) => {
19
+ const chainOrder = state.chainOrder[type].filter((chainId) => chainIds.includes(chainId));
20
+ const chainsToAdd = chainIds.filter((chainId) => !chainOrder.includes(chainId));
21
+ if (chainOrder.length === 8 || !chainsToAdd.length) return {
22
+ availableChains: {
23
+ ...state.availableChains,
24
+ [type]: chainIds
25
+ },
26
+ chainOrder: {
27
+ ...state.chainOrder,
28
+ [type]: chainOrder
29
+ }
30
+ };
31
+ const chainsToAddLength = 8 - chainOrder.length;
32
+ for (let index = 0; index < chainsToAddLength; index++) chainOrder.push(chainsToAdd[index]);
33
+ return {
34
+ availableChains: {
35
+ ...state.availableChains,
36
+ [type]: chainIds
37
+ },
38
+ chainOrder: {
39
+ ...state.chainOrder,
40
+ [type]: chainOrder
41
+ }
42
+ };
43
+ });
44
+ return get().chainOrder[type].slice(0, 8);
45
+ },
46
+ setChain: (chainId, type) => {
47
+ const state = get();
48
+ if (state.chainOrder[type].includes(chainId) || !state.availableChains[type].includes(chainId)) return;
49
+ set((state) => {
50
+ const chainOrder = [chainId, ...state.chainOrder[type]].slice(0, 8);
51
+ return { chainOrder: {
52
+ ...state.chainOrder,
53
+ [type]: chainOrder
54
+ } };
55
+ });
56
+ },
57
+ setIsAllNetworks: (isAllNetworks, formType) => {
58
+ set({ [`${formType}IsAllNetworks`]: isAllNetworks });
59
+ },
60
+ setShowAllNetworks: (showAllNetworks, formType) => {
61
+ set({ [`${formType}ShowAllNetworks`]: showAllNetworks });
62
+ },
63
+ setPinnedChain: (chainId) => {
64
+ const wasAlreadyPinned = get().pinnedChains.includes(chainId);
65
+ set((state) => {
66
+ const pinnedChains = [...state.pinnedChains];
67
+ if (wasAlreadyPinned) return { pinnedChains: pinnedChains.filter((id) => id !== chainId) };
68
+ pinnedChains.push(chainId);
69
+ return { pinnedChains };
70
+ });
71
+ widgetEvents.emit("chainPinned", {
72
+ chainId,
73
+ pinned: !wasAlreadyPinned
74
+ });
75
+ }
76
+ }), {
77
+ name: `${namePrefix || "li.fi"}-widget-chains-order`,
78
+ version: 4,
79
+ partialize: (state) => ({
80
+ chainOrder: state.chainOrder,
81
+ pinnedChains: state.pinnedChains
82
+ })
83
+ }));
84
+ //#endregion
85
+ export { createChainOrderStore };
86
+
87
+ //# sourceMappingURL=createChainOrderStore.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createChainOrderStore.js","names":[],"sources":["../../../../src/stores/chains/createChainOrderStore.ts"],"sourcesContent":["import type { StoreApi, UseBoundStore } from 'zustand'\nimport { create } from 'zustand'\nimport { persist } from 'zustand/middleware'\nimport { widgetEvents } from '../../hooks/useWidgetEvents.js'\nimport { WidgetEvent } from '../../types/events.js'\nimport type { PersistStoreProps } from '../types.js'\nimport type { ChainOrderState } from './types.js'\n\n// (10 tiles: 9 + 1 for \"All chains\")\nexport const maxGridItemsToShow = 10\nexport const maxChainsToShow: number = maxGridItemsToShow - 1\n// If there are more than maxChainsToShow chains to show,\n// -1 tile to show a button \"+ N\" more chains\nexport const maxChainsToOrder: number = maxChainsToShow - 1\n\nconst defaultChainState = {\n from: [],\n to: [],\n}\n\nexport const createChainOrderStore = ({\n namePrefix,\n}: PersistStoreProps): UseBoundStore<StoreApi<ChainOrderState>> =>\n create<ChainOrderState>()(\n persist(\n (set, get) => ({\n chainOrder: defaultChainState,\n fromIsAllNetworks: true,\n toIsAllNetworks: true,\n fromShowAllNetworks: true,\n toShowAllNetworks: true,\n availableChains: defaultChainState,\n pinnedChains: [],\n initializeChains: (chainIds, type) => {\n set((state: ChainOrderState) => {\n const chainOrder = state.chainOrder[type].filter((chainId) =>\n chainIds.includes(chainId)\n )\n const chainsToAdd = chainIds.filter(\n (chainId) => !chainOrder.includes(chainId)\n )\n if (chainOrder.length === maxChainsToOrder || !chainsToAdd.length) {\n return {\n availableChains: {\n ...state.availableChains,\n [type]: chainIds,\n },\n chainOrder: {\n ...state.chainOrder,\n [type]: chainOrder,\n },\n }\n }\n const chainsToAddLength = maxChainsToOrder - chainOrder.length\n for (let index = 0; index < chainsToAddLength; index++) {\n chainOrder.push(chainsToAdd[index])\n }\n return {\n availableChains: {\n ...state.availableChains,\n [type]: chainIds,\n },\n chainOrder: {\n ...state.chainOrder,\n [type]: chainOrder,\n },\n }\n })\n return get().chainOrder[type].slice(0, maxChainsToOrder)\n },\n setChain: (chainId, type) => {\n const state = get()\n if (\n state.chainOrder[type].includes(chainId) ||\n !state.availableChains[type].includes(chainId)\n ) {\n return\n }\n set((state: ChainOrderState) => {\n const chainOrder = [chainId, ...state.chainOrder[type]].slice(\n 0,\n maxChainsToOrder\n )\n return {\n chainOrder: {\n ...state.chainOrder,\n [type]: chainOrder,\n },\n }\n })\n },\n setIsAllNetworks: (isAllNetworks, formType) => {\n set({ [`${formType}IsAllNetworks`]: isAllNetworks })\n },\n setShowAllNetworks: (showAllNetworks, formType) => {\n set({ [`${formType}ShowAllNetworks`]: showAllNetworks })\n },\n setPinnedChain: (chainId) => {\n const currentPinnedChains = get().pinnedChains\n const wasAlreadyPinned = currentPinnedChains.includes(chainId)\n set((state: ChainOrderState) => {\n const pinnedChains = [...state.pinnedChains]\n if (wasAlreadyPinned) {\n return {\n pinnedChains: pinnedChains.filter((id) => id !== chainId),\n }\n }\n pinnedChains.push(chainId)\n return {\n pinnedChains,\n }\n })\n widgetEvents.emit(WidgetEvent.ChainPinned, {\n chainId,\n pinned: !wasAlreadyPinned,\n })\n },\n }),\n {\n name: `${namePrefix || 'li.fi'}-widget-chains-order`,\n version: 4,\n partialize: (state) => ({\n chainOrder: state.chainOrder,\n pinnedChains: state.pinnedChains,\n }),\n }\n )\n )\n"],"mappings":";;;;AAeA,MAAM,oBAAoB;CACxB,MAAM,CAAC;CACP,IAAI,CAAC;AACP;AAEA,MAAa,yBAAyB,EACpC,iBAEA,OAAwB,EACtB,SACG,KAAK,SAAS;CACb,YAAY;CACZ,mBAAmB;CACnB,iBAAiB;CACjB,qBAAqB;CACrB,mBAAmB;CACnB,iBAAiB;CACjB,cAAc,CAAC;CACf,mBAAmB,UAAU,SAAS;EACpC,KAAK,UAA2B;GAC9B,MAAM,aAAa,MAAM,WAAW,MAAM,QAAQ,YAChD,SAAS,SAAS,OAAO,CAC3B;GACA,MAAM,cAAc,SAAS,QAC1B,YAAY,CAAC,WAAW,SAAS,OAAO,CAC3C;GACA,IAAI,WAAW,WAAA,KAA+B,CAAC,YAAY,QACzD,OAAO;IACL,iBAAiB;KACf,GAAG,MAAM;MACR,OAAO;IACV;IACA,YAAY;KACV,GAAG,MAAM;MACR,OAAO;IACV;GACF;GAEF,MAAM,oBAAA,IAAuC,WAAW;GACxD,KAAK,IAAI,QAAQ,GAAG,QAAQ,mBAAmB,SAC7C,WAAW,KAAK,YAAY,MAAM;GAEpC,OAAO;IACL,iBAAiB;KACf,GAAG,MAAM;MACR,OAAO;IACV;IACA,YAAY;KACV,GAAG,MAAM;MACR,OAAO;IACV;GACF;EACF,CAAC;EACD,OAAO,IAAI,EAAE,WAAW,MAAM,MAAM,GAAA,CAAmB;CACzD;CACA,WAAW,SAAS,SAAS;EAC3B,MAAM,QAAQ,IAAI;EAClB,IACE,MAAM,WAAW,MAAM,SAAS,OAAO,KACvC,CAAC,MAAM,gBAAgB,MAAM,SAAS,OAAO,GAE7C;EAEF,KAAK,UAA2B;GAC9B,MAAM,aAAa,CAAC,SAAS,GAAG,MAAM,WAAW,KAAK,EAAE,MACtD,GAAA,CAEF;GACA,OAAO,EACL,YAAY;IACV,GAAG,MAAM;KACR,OAAO;GACV,EACF;EACF,CAAC;CACH;CACA,mBAAmB,eAAe,aAAa;EAC7C,IAAI,GAAG,GAAG,SAAS,iBAAiB,cAAc,CAAC;CACrD;CACA,qBAAqB,iBAAiB,aAAa;EACjD,IAAI,GAAG,GAAG,SAAS,mBAAmB,gBAAgB,CAAC;CACzD;CACA,iBAAiB,YAAY;EAE3B,MAAM,mBADsB,IAAI,EAAE,aACW,SAAS,OAAO;EAC7D,KAAK,UAA2B;GAC9B,MAAM,eAAe,CAAC,GAAG,MAAM,YAAY;GAC3C,IAAI,kBACF,OAAO,EACL,cAAc,aAAa,QAAQ,OAAO,OAAO,OAAO,EAC1D;GAEF,aAAa,KAAK,OAAO;GACzB,OAAO,EACL,aACF;EACF,CAAC;EACD,aAAa,KAAA,eAA8B;GACzC;GACA,QAAQ,CAAC;EACX,CAAC;CACH;AACF,IACA;CACE,MAAM,GAAG,cAAc,QAAQ;CAC/B,SAAS;CACT,aAAa,WAAW;EACtB,YAAY,MAAM;EAClB,cAAc,MAAM;CACtB;AACF,CACF,CACF"}
@@ -0,0 +1,11 @@
1
+ import { useChainOrderStore } from "./ChainOrderStore.js";
2
+ import { useMemo } from "react";
3
+ //#region src/stores/chains/useChainOrder.ts
4
+ const useChainOrder = (type) => {
5
+ const [chainOrder, setChain] = useChainOrderStore((state) => [state.chainOrder[type], state.setChain]);
6
+ return [useMemo(() => chainOrder.slice(0, 8), [chainOrder]), setChain];
7
+ };
8
+ //#endregion
9
+ export { useChainOrder };
10
+
11
+ //# sourceMappingURL=useChainOrder.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useChainOrder.js","names":[],"sources":["../../../../src/stores/chains/useChainOrder.ts"],"sourcesContent":["import { useMemo } from 'react'\nimport type { FormType } from '../form/types.js'\nimport { useChainOrderStore } from './ChainOrderStore.js'\nimport { maxChainsToOrder } from './createChainOrderStore.js'\n\nexport const useChainOrder = (\n type: FormType\n): [number[], (chainId: number, type: FormType) => void] => {\n const [chainOrder, setChain] = useChainOrderStore((state) => [\n state.chainOrder[type],\n state.setChain,\n ])\n\n const limitedChainOrder = useMemo(\n () => chainOrder.slice(0, maxChainsToOrder),\n [chainOrder]\n )\n\n return [limitedChainOrder, setChain]\n}\n"],"mappings":";;;AAKA,MAAa,iBACX,SAC0D;CAC1D,MAAM,CAAC,YAAY,YAAY,oBAAoB,UAAU,CAC3D,MAAM,WAAW,OACjB,MAAM,QACR,CAAC;CAOD,OAAO,CALmB,cAClB,WAAW,MAAM,GAAA,CAAmB,GAC1C,CAAC,UAAU,CAGW,GAAG,QAAQ;AACrC"}
@@ -0,0 +1,72 @@
1
+ import { useWidgetConfig } from "../../providers/WidgetProvider/WidgetProvider.js";
2
+ import { FormStoreContext } from "./FormStoreContext.js";
3
+ import { getDefaultValuesFromQueryString } from "./getDefaultValuesFromQueryString.js";
4
+ import { createFormStore, formDefaultValues } from "./createFormStore.js";
5
+ import { FormUpdater } from "./FormUpdater.js";
6
+ import { useFormRef } from "./useFormRef.js";
7
+ import { useMemo, useRef } from "react";
8
+ import { jsx, jsxs } from "react/jsx-runtime";
9
+ //#region src/stores/form/FormStore.tsx
10
+ const initialiseDefaultValues = (defaultValues) => ({
11
+ ...formDefaultValues,
12
+ ...defaultValues,
13
+ fromAmount: (typeof defaultValues.fromAmount === "number" ? defaultValues.fromAmount?.toPrecision?.() : defaultValues.fromAmount) || formDefaultValues.fromAmount,
14
+ toAmount: (typeof defaultValues.toAmount === "number" ? defaultValues.toAmount?.toPrecision?.() : defaultValues.toAmount) || formDefaultValues.toAmount,
15
+ toAddress: defaultValues.toAddress || formDefaultValues.toAddress
16
+ });
17
+ const FormStoreProvider = ({ children, formRef }) => {
18
+ const widgetConfig = useWidgetConfig();
19
+ const { fromChain, fromToken, toChain, toToken, fromAmount, toAmount, toAddress, formUpdateKey, buildUrl } = widgetConfig;
20
+ const storeRef = useRef(null);
21
+ const configHasFromChain = Object.hasOwn(widgetConfig, "fromChain");
22
+ const configHasFromToken = Object.hasOwn(widgetConfig, "fromToken");
23
+ const configHasFromAmount = Object.hasOwn(widgetConfig, "fromAmount");
24
+ const configHasToAmount = Object.hasOwn(widgetConfig, "toAmount");
25
+ const configHasToAddress = Object.hasOwn(widgetConfig, "toAddress");
26
+ const configHasToChain = Object.hasOwn(widgetConfig, "toChain");
27
+ const configHasToToken = Object.hasOwn(widgetConfig, "toToken");
28
+ const reactiveFormValues = useMemo(() => ({
29
+ ...configHasFromChain ? { fromChain } : void 0,
30
+ ...configHasFromToken ? { fromToken } : void 0,
31
+ ...configHasFromAmount ? { fromAmount: (typeof fromAmount === "number" ? fromAmount?.toPrecision() : fromAmount) || formDefaultValues.fromAmount } : void 0,
32
+ ...configHasToAmount ? { toAmount: (typeof toAmount === "number" ? toAmount?.toPrecision() : toAmount) || formDefaultValues.toAmount } : void 0,
33
+ ...configHasToChain ? { toChain } : void 0,
34
+ ...configHasToToken ? { toToken } : void 0,
35
+ ...configHasToAddress ? { toAddress: toAddress?.address || formDefaultValues.toAddress } : void 0
36
+ }), [
37
+ fromAmount,
38
+ toAmount,
39
+ fromChain,
40
+ fromToken,
41
+ toAddress,
42
+ toChain,
43
+ toToken,
44
+ formUpdateKey,
45
+ configHasFromChain,
46
+ configHasFromToken,
47
+ configHasFromAmount,
48
+ configHasToAmount,
49
+ configHasToAddress,
50
+ configHasToChain,
51
+ configHasToToken
52
+ ]);
53
+ if (!storeRef.current) {
54
+ const queryDefaults = getDefaultValuesFromQueryString({
55
+ buildUrl,
56
+ includeToAddress: false
57
+ });
58
+ storeRef.current = createFormStore(initialiseDefaultValues({
59
+ ...reactiveFormValues,
60
+ ...queryDefaults
61
+ }));
62
+ }
63
+ useFormRef(storeRef.current, formRef);
64
+ return /* @__PURE__ */ jsxs(FormStoreContext.Provider, {
65
+ value: storeRef.current,
66
+ children: [children, /* @__PURE__ */ jsx(FormUpdater, { reactiveFormValues })]
67
+ });
68
+ };
69
+ //#endregion
70
+ export { FormStoreProvider };
71
+
72
+ //# sourceMappingURL=FormStore.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FormStore.js","names":[],"sources":["../../../../src/stores/form/FormStore.tsx"],"sourcesContent":["import type { PropsWithChildren } from 'react'\nimport { useMemo, useRef } from 'react'\nimport { useWidgetConfig } from '../../providers/WidgetProvider/WidgetProvider.js'\nimport type { FormRef } from '../../types/widget.js'\nimport { createFormStore, formDefaultValues } from './createFormStore.js'\nimport { FormStoreContext } from './FormStoreContext.js'\nimport { FormUpdater } from './FormUpdater.js'\nimport { getDefaultValuesFromQueryString } from './getDefaultValuesFromQueryString.js'\nimport type { DefaultValues, FormStoreStore } from './types.js'\nimport { useFormRef } from './useFormRef.js'\n\n// decorates and initialise the form date for use in the form store\nconst initialiseDefaultValues = (defaultValues: Partial<DefaultValues>) => ({\n ...formDefaultValues,\n ...defaultValues,\n fromAmount:\n (typeof defaultValues.fromAmount === 'number'\n ? (defaultValues.fromAmount as number)?.toPrecision?.()\n : defaultValues.fromAmount) || formDefaultValues.fromAmount,\n toAmount:\n (typeof defaultValues.toAmount === 'number'\n ? (defaultValues.toAmount as number)?.toPrecision?.()\n : defaultValues.toAmount) || formDefaultValues.toAmount,\n // Prevent setting address when the field is hidden\n toAddress: defaultValues.toAddress || formDefaultValues.toAddress,\n})\n\ninterface FormStoreProviderProps extends PropsWithChildren {\n formRef?: FormRef\n}\n\nexport const FormStoreProvider: React.FC<FormStoreProviderProps> = ({\n children,\n formRef,\n}) => {\n const widgetConfig = useWidgetConfig()\n\n const {\n fromChain,\n fromToken,\n toChain,\n toToken,\n fromAmount,\n toAmount,\n toAddress,\n formUpdateKey,\n buildUrl,\n } = widgetConfig\n\n const storeRef = useRef<FormStoreStore>(null)\n\n const configHasFromChain = Object.hasOwn(widgetConfig, 'fromChain')\n const configHasFromToken = Object.hasOwn(widgetConfig, 'fromToken')\n const configHasFromAmount = Object.hasOwn(widgetConfig, 'fromAmount')\n const configHasToAmount = Object.hasOwn(widgetConfig, 'toAmount')\n const configHasToAddress = Object.hasOwn(widgetConfig, 'toAddress')\n const configHasToChain = Object.hasOwn(widgetConfig, 'toChain')\n const configHasToToken = Object.hasOwn(widgetConfig, 'toToken')\n\n // We use the presence/absence of a property to decide if the form values in state need to be updated\n // We only build and set a property on the memoized form values here if they are included in the\n // config - undefined is considered a valid value that will reset that form field\n // biome-ignore lint/correctness/useExhaustiveDependencies: formUpdateKey is needed here.\n const reactiveFormValues = useMemo(\n () => ({\n ...(configHasFromChain ? { fromChain } : undefined),\n ...(configHasFromToken ? { fromToken } : undefined),\n ...(configHasFromAmount\n ? {\n fromAmount:\n (typeof fromAmount === 'number'\n ? fromAmount?.toPrecision()\n : fromAmount) || formDefaultValues.fromAmount,\n }\n : undefined),\n ...(configHasToAmount\n ? {\n toAmount:\n (typeof toAmount === 'number'\n ? toAmount?.toPrecision()\n : toAmount) || formDefaultValues.toAmount,\n }\n : undefined),\n ...(configHasToChain ? { toChain } : undefined),\n ...(configHasToToken ? { toToken } : undefined),\n ...(configHasToAddress\n ? {\n toAddress: toAddress?.address || formDefaultValues.toAddress,\n }\n : undefined),\n }),\n [\n fromAmount,\n toAmount,\n fromChain,\n fromToken,\n toAddress,\n toChain,\n toToken,\n // formUpdateKey should be a randomly assigned unique key. It can be used to force updates for the form field values\n formUpdateKey,\n configHasFromChain,\n configHasFromToken,\n configHasFromAmount,\n configHasToAmount,\n configHasToAddress,\n configHasToChain,\n configHasToToken,\n ]\n )\n\n if (!storeRef.current) {\n const queryDefaults = getDefaultValuesFromQueryString({\n buildUrl,\n includeToAddress: false,\n })\n storeRef.current = createFormStore(\n initialiseDefaultValues({\n ...reactiveFormValues,\n ...queryDefaults,\n })\n )\n }\n\n useFormRef(storeRef.current, formRef)\n\n return (\n <FormStoreContext.Provider value={storeRef.current}>\n {children}\n <FormUpdater reactiveFormValues={reactiveFormValues} />\n </FormStoreContext.Provider>\n )\n}\n"],"mappings":";;;;;;;;;AAYA,MAAM,2BAA2B,mBAA2C;CAC1E,GAAG;CACH,GAAG;CACH,aACG,OAAO,cAAc,eAAe,WAChC,cAAc,YAAuB,cAAc,IACpD,cAAc,eAAe,kBAAkB;CACrD,WACG,OAAO,cAAc,aAAa,WAC9B,cAAc,UAAqB,cAAc,IAClD,cAAc,aAAa,kBAAkB;CAEnD,WAAW,cAAc,aAAa,kBAAkB;AAC1D;AAMA,MAAa,qBAAuD,EAClE,UACA,cACI;CACJ,MAAM,eAAe,gBAAgB;CAErC,MAAM,EACJ,WACA,WACA,SACA,SACA,YACA,UACA,WACA,eACA,aACE;CAEJ,MAAM,WAAW,OAAuB,IAAI;CAE5C,MAAM,qBAAqB,OAAO,OAAO,cAAc,WAAW;CAClE,MAAM,qBAAqB,OAAO,OAAO,cAAc,WAAW;CAClE,MAAM,sBAAsB,OAAO,OAAO,cAAc,YAAY;CACpE,MAAM,oBAAoB,OAAO,OAAO,cAAc,UAAU;CAChE,MAAM,qBAAqB,OAAO,OAAO,cAAc,WAAW;CAClE,MAAM,mBAAmB,OAAO,OAAO,cAAc,SAAS;CAC9D,MAAM,mBAAmB,OAAO,OAAO,cAAc,SAAS;CAM9D,MAAM,qBAAqB,eAClB;EACL,GAAI,qBAAqB,EAAE,UAAU,IAAI,KAAA;EACzC,GAAI,qBAAqB,EAAE,UAAU,IAAI,KAAA;EACzC,GAAI,sBACA,EACE,aACG,OAAO,eAAe,WACnB,YAAY,YAAY,IACxB,eAAe,kBAAkB,WACzC,IACA,KAAA;EACJ,GAAI,oBACA,EACE,WACG,OAAO,aAAa,WACjB,UAAU,YAAY,IACtB,aAAa,kBAAkB,SACvC,IACA,KAAA;EACJ,GAAI,mBAAmB,EAAE,QAAQ,IAAI,KAAA;EACrC,GAAI,mBAAmB,EAAE,QAAQ,IAAI,KAAA;EACrC,GAAI,qBACA,EACE,WAAW,WAAW,WAAW,kBAAkB,UACrD,IACA,KAAA;CACN,IACA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EAEA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;CACF,CACF;CAEA,IAAI,CAAC,SAAS,SAAS;EACrB,MAAM,gBAAgB,gCAAgC;GACpD;GACA,kBAAkB;EACpB,CAAC;EACD,SAAS,UAAU,gBACjB,wBAAwB;GACtB,GAAG;GACH,GAAG;EACL,CAAC,CACH;CACF;CAEA,WAAW,SAAS,SAAS,OAAO;CAEpC,OACE,qBAAC,iBAAiB,UAAlB;EAA2B,OAAO,SAAS;YAA3C,CACG,UACD,oBAAC,aAAD,EAAiC,mBAAqB,CAAA,CAC7B;;AAE/B"}
@@ -0,0 +1,7 @@
1
+ import { createContext } from "react";
2
+ //#region src/stores/form/FormStoreContext.ts
3
+ const FormStoreContext = createContext(null);
4
+ //#endregion
5
+ export { FormStoreContext };
6
+
7
+ //# sourceMappingURL=FormStoreContext.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FormStoreContext.js","names":[],"sources":["../../../../src/stores/form/FormStoreContext.ts"],"sourcesContent":["import { type Context, createContext } from 'react'\nimport type { FormStoreStore } from './types.js'\n\nexport const FormStoreContext: Context<FormStoreStore | null> =\n createContext<FormStoreStore | null>(null)\n"],"mappings":";;AAGA,MAAa,mBACX,cAAqC,IAAI"}
@@ -0,0 +1,37 @@
1
+ import { useWidgetConfig } from "../../providers/WidgetProvider/WidgetProvider.js";
2
+ import { useBookmarkActions } from "../bookmarks/useBookmarkActions.js";
3
+ import { useFieldActions } from "./useFieldActions.js";
4
+ import { formDefaultValues } from "./createFormStore.js";
5
+ import { useEffect } from "react";
6
+ import { useAccount } from "@lifi/wallet-management";
7
+ //#region src/stores/form/FormUpdater.tsx
8
+ const FormUpdater = ({ reactiveFormValues }) => {
9
+ const { toAddress } = useWidgetConfig();
10
+ const { account } = useAccount();
11
+ const { setSelectedBookmark } = useBookmarkActions();
12
+ const { setUserAndDefaultValues } = useFieldActions();
13
+ useEffect(() => {
14
+ if (toAddress) setSelectedBookmark(toAddress);
15
+ setUserAndDefaultValues(accountForChainId(reactiveFormValues, account.chainId));
16
+ }, [
17
+ toAddress,
18
+ reactiveFormValues,
19
+ setUserAndDefaultValues,
20
+ setSelectedBookmark
21
+ ]);
22
+ return null;
23
+ };
24
+ const accountForChainId = (defaultValues, chainId) => {
25
+ const result = { ...defaultValues };
26
+ for (const key in result) {
27
+ const k = key;
28
+ if (result[k] === formDefaultValues[k]) {
29
+ if ((k === "fromChain" || k === "toChain") && chainId) result[k] = chainId;
30
+ }
31
+ }
32
+ return result;
33
+ };
34
+ //#endregion
35
+ export { FormUpdater };
36
+
37
+ //# sourceMappingURL=FormUpdater.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FormUpdater.js","names":[],"sources":["../../../../src/stores/form/FormUpdater.tsx"],"sourcesContent":["import { useAccount } from '@lifi/wallet-management'\nimport { useEffect } from 'react'\nimport { useWidgetConfig } from '../../providers/WidgetProvider/WidgetProvider.js'\nimport { useBookmarkActions } from '../../stores/bookmarks/useBookmarkActions.js'\nimport { formDefaultValues } from '../../stores/form/createFormStore.js'\nimport type { DefaultValues } from './types.js'\nimport { useFieldActions } from './useFieldActions.js'\n\nexport const FormUpdater: React.FC<{\n reactiveFormValues: Partial<DefaultValues>\n}> = ({ reactiveFormValues }) => {\n const { toAddress } = useWidgetConfig()\n const { account } = useAccount()\n const { setSelectedBookmark } = useBookmarkActions()\n const { setUserAndDefaultValues } = useFieldActions()\n\n // React to changes in widget config options (reactiveFormValues), updating userValues accordingly.\n // Includes special logic for chain fields, where account.chainId is only a fallback and not a direct reactivity source.\n // biome-ignore lint/correctness/useExhaustiveDependencies: account.chainId is used as a fallback only and does not need to be a dependency for reactivity.\n useEffect(() => {\n if (toAddress) {\n setSelectedBookmark(toAddress)\n }\n\n setUserAndDefaultValues(\n accountForChainId(reactiveFormValues, account.chainId)\n )\n }, [\n toAddress,\n reactiveFormValues,\n setUserAndDefaultValues,\n setSelectedBookmark,\n ])\n\n return null\n}\n\nconst accountForChainId = (\n defaultValues: Partial<DefaultValues>,\n chainId?: number\n) => {\n const result: Partial<DefaultValues> = { ...defaultValues }\n for (const key in result) {\n const k = key as keyof DefaultValues\n if (result[k] === formDefaultValues[k]) {\n if ((k === 'fromChain' || k === 'toChain') && chainId) {\n result[k] = chainId\n }\n }\n }\n return result\n}\n"],"mappings":";;;;;;;AAQA,MAAa,eAEP,EAAE,yBAAyB;CAC/B,MAAM,EAAE,cAAc,gBAAgB;CACtC,MAAM,EAAE,YAAY,WAAW;CAC/B,MAAM,EAAE,wBAAwB,mBAAmB;CACnD,MAAM,EAAE,4BAA4B,gBAAgB;CAKpD,gBAAgB;EACd,IAAI,WACF,oBAAoB,SAAS;EAG/B,wBACE,kBAAkB,oBAAoB,QAAQ,OAAO,CACvD;CACF,GAAG;EACD;EACA;EACA;EACA;CACF,CAAC;CAED,OAAO;AACT;AAEA,MAAM,qBACJ,eACA,YACG;CACH,MAAM,SAAiC,EAAE,GAAG,cAAc;CAC1D,KAAK,MAAM,OAAO,QAAQ;EACxB,MAAM,IAAI;EACV,IAAI,OAAO,OAAO,kBAAkB;QAC7B,MAAM,eAAe,MAAM,cAAc,SAC5C,OAAO,KAAK;EAAA;CAGlB;CACA,OAAO;AACT"}
@@ -0,0 +1,79 @@
1
+ import { useWidgetConfig } from "../../providers/WidgetProvider/WidgetProvider.js";
2
+ import { useBookmarkActions } from "../bookmarks/useBookmarkActions.js";
3
+ import { useFieldActions } from "./useFieldActions.js";
4
+ import { getDefaultValuesFromQueryString } from "./getDefaultValuesFromQueryString.js";
5
+ import { useFieldValues } from "./useFieldValues.js";
6
+ import { useAddressValidation } from "../../hooks/useAddressValidation.js";
7
+ import { useTouchedFields } from "./useTouchedFields.js";
8
+ import { useEffect } from "react";
9
+ import { useLocation } from "@tanstack/react-router";
10
+ //#region src/stores/form/URLSearchParamsBuilder.tsx
11
+ const formValueKeys = [
12
+ "fromAmount",
13
+ "fromChain",
14
+ "fromToken",
15
+ "toAddress",
16
+ "toChain",
17
+ "toToken"
18
+ ];
19
+ const URLSearchParamsBuilder = () => {
20
+ const { pathname } = useLocation();
21
+ const touchedFields = useTouchedFields();
22
+ const values = useFieldValues(...formValueKeys);
23
+ const { setSelectedBookmark, addRecentWallet } = useBookmarkActions();
24
+ const { validateAddress } = useAddressValidation();
25
+ const { buildUrl } = useWidgetConfig();
26
+ const { getFieldValues, isTouched, setUserAndDefaultValues } = useFieldActions();
27
+ useEffect(() => {
28
+ const { toAddress, ...initialFormValues } = getDefaultValuesFromQueryString({ buildUrl });
29
+ /**
30
+ * When URL builder is enabled and user opens a page with toAddress parameter,
31
+ * validate the address and set it up as a bookmark. This allows direct linking
32
+ * to the widget with a pre-filled destination address that will be treated the
33
+ * same way as a manually entered and validated address.
34
+ */
35
+ const initializeFromAddress = async () => {
36
+ if (toAddress) try {
37
+ const validationResult = await validateAddress({ value: toAddress });
38
+ if (validationResult.isValid && toAddress) {
39
+ const bookmark = {
40
+ address: validationResult.address,
41
+ chainType: validationResult.chainType
42
+ };
43
+ setUserAndDefaultValues({ toAddress });
44
+ setSelectedBookmark(bookmark);
45
+ addRecentWallet(bookmark);
46
+ }
47
+ } catch (_) {}
48
+ };
49
+ setUserAndDefaultValues(initialFormValues);
50
+ initializeFromAddress();
51
+ }, [
52
+ setUserAndDefaultValues,
53
+ validateAddress,
54
+ setSelectedBookmark,
55
+ addRecentWallet,
56
+ buildUrl
57
+ ]);
58
+ useEffect(() => {
59
+ const url = new URL(window.location);
60
+ formValueKeys.forEach((key, _index) => {
61
+ const value = getFieldValues(key)[0];
62
+ if (isTouched(key) && value) url.searchParams.set(key, value.toString());
63
+ else if (url.searchParams.has(key) && !value) url.searchParams.delete(key);
64
+ });
65
+ url.searchParams.sort();
66
+ window.history.replaceState(window.history.state, "", url);
67
+ }, [
68
+ pathname,
69
+ touchedFields,
70
+ values,
71
+ isTouched,
72
+ getFieldValues
73
+ ]);
74
+ return null;
75
+ };
76
+ //#endregion
77
+ export { URLSearchParamsBuilder };
78
+
79
+ //# sourceMappingURL=URLSearchParamsBuilder.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"URLSearchParamsBuilder.js","names":[],"sources":["../../../../src/stores/form/URLSearchParamsBuilder.tsx"],"sourcesContent":["import { useLocation } from '@tanstack/react-router'\nimport { useEffect } from 'react'\nimport { useAddressValidation } from '../../hooks/useAddressValidation.js'\nimport { useWidgetConfig } from '../../providers/WidgetProvider/WidgetProvider.js'\nimport { useBookmarkActions } from '../bookmarks/useBookmarkActions.js'\nimport type { FormFieldNames } from '../form/types.js'\nimport { useFieldActions } from '../form/useFieldActions.js'\nimport { useFieldValues } from '../form/useFieldValues.js'\nimport { useTouchedFields } from '../form/useTouchedFields.js'\nimport { getDefaultValuesFromQueryString } from './getDefaultValuesFromQueryString.js'\n\nconst formValueKeys: FormFieldNames[] = [\n 'fromAmount',\n 'fromChain',\n 'fromToken',\n 'toAddress',\n 'toChain',\n 'toToken',\n]\n\nexport const URLSearchParamsBuilder = () => {\n const { pathname } = useLocation()\n const touchedFields = useTouchedFields()\n const values = useFieldValues(...formValueKeys)\n const { setSelectedBookmark, addRecentWallet } = useBookmarkActions()\n const { validateAddress } = useAddressValidation()\n const { buildUrl } = useWidgetConfig()\n // Using these methods as trying to use the touchedFields and values above\n // often has a lag that can effect the widgets initialisation sequence\n // and accidentally cause values to be wiped from the query string\n const { getFieldValues, isTouched, setUserAndDefaultValues } =\n useFieldActions()\n\n useEffect(() => {\n // get the initial values from the querystring\n const formValues = getDefaultValuesFromQueryString({ buildUrl })\n const { toAddress, ...initialFormValues } = formValues\n\n /**\n * When URL builder is enabled and user opens a page with toAddress parameter,\n * validate the address and set it up as a bookmark. This allows direct linking\n * to the widget with a pre-filled destination address that will be treated the\n * same way as a manually entered and validated address.\n */\n const initializeFromAddress = async () => {\n if (toAddress) {\n try {\n const validationResult = await validateAddress({\n value: toAddress,\n })\n if (validationResult.isValid && toAddress) {\n const bookmark = {\n address: validationResult.address,\n chainType: validationResult.chainType,\n }\n setUserAndDefaultValues({ toAddress })\n setSelectedBookmark(bookmark)\n addRecentWallet(bookmark)\n }\n } catch (_) {\n // Address validation failed\n }\n }\n }\n\n setUserAndDefaultValues(initialFormValues)\n initializeFromAddress()\n }, [\n setUserAndDefaultValues,\n validateAddress,\n setSelectedBookmark,\n addRecentWallet,\n buildUrl,\n ])\n\n // biome-ignore lint/correctness/useExhaustiveDependencies: run only when pathname changes\n useEffect(() => {\n // set the values on the querysting\n const url = new URL(window.location as any)\n formValueKeys.forEach((key, _index) => {\n const value = getFieldValues(key)[0]\n if (isTouched(key) && value) {\n url.searchParams.set(key, value.toString())\n } else if (url.searchParams.has(key) && !value) {\n url.searchParams.delete(key)\n }\n })\n url.searchParams.sort()\n window.history.replaceState(window.history.state, '', url)\n }, [pathname, touchedFields, values, isTouched, getFieldValues])\n\n return null\n}\n"],"mappings":";;;;;;;;;;AAWA,MAAM,gBAAkC;CACtC;CACA;CACA;CACA;CACA;CACA;AACF;AAEA,MAAa,+BAA+B;CAC1C,MAAM,EAAE,aAAa,YAAY;CACjC,MAAM,gBAAgB,iBAAiB;CACvC,MAAM,SAAS,eAAe,GAAG,aAAa;CAC9C,MAAM,EAAE,qBAAqB,oBAAoB,mBAAmB;CACpE,MAAM,EAAE,oBAAoB,qBAAqB;CACjD,MAAM,EAAE,aAAa,gBAAgB;CAIrC,MAAM,EAAE,gBAAgB,WAAW,4BACjC,gBAAgB;CAElB,gBAAgB;EAGd,MAAM,EAAE,WAAW,GAAG,sBADH,gCAAgC,EAAE,SAAS,CACT;;;;;;;EAQrD,MAAM,wBAAwB,YAAY;GACxC,IAAI,WACF,IAAI;IACF,MAAM,mBAAmB,MAAM,gBAAgB,EAC7C,OAAO,UACT,CAAC;IACD,IAAI,iBAAiB,WAAW,WAAW;KACzC,MAAM,WAAW;MACf,SAAS,iBAAiB;MAC1B,WAAW,iBAAiB;KAC9B;KACA,wBAAwB,EAAE,UAAU,CAAC;KACrC,oBAAoB,QAAQ;KAC5B,gBAAgB,QAAQ;IAC1B;GACF,SAAS,GAAG,CAEZ;EAEJ;EAEA,wBAAwB,iBAAiB;EACzC,sBAAsB;CACxB,GAAG;EACD;EACA;EACA;EACA;EACA;CACF,CAAC;CAGD,gBAAgB;EAEd,MAAM,MAAM,IAAI,IAAI,OAAO,QAAe;EAC1C,cAAc,SAAS,KAAK,WAAW;GACrC,MAAM,QAAQ,eAAe,GAAG,EAAE;GAClC,IAAI,UAAU,GAAG,KAAK,OACpB,IAAI,aAAa,IAAI,KAAK,MAAM,SAAS,CAAC;QACrC,IAAI,IAAI,aAAa,IAAI,GAAG,KAAK,CAAC,OACvC,IAAI,aAAa,OAAO,GAAG;EAE/B,CAAC;EACD,IAAI,aAAa,KAAK;EACtB,OAAO,QAAQ,aAAa,OAAO,QAAQ,OAAO,IAAI,GAAG;CAC3D,GAAG;EAAC;EAAU;EAAe;EAAQ;EAAW;CAAc,CAAC;CAE/D,OAAO;AACT"}
@@ -0,0 +1,176 @@
1
+ import { create } from "zustand";
2
+ //#region src/stores/form/createFormStore.ts
3
+ const formDefaultValues = {
4
+ fromAmount: "",
5
+ toAmount: "",
6
+ tokenSearchFilter: ""
7
+ };
8
+ const defaultValueToFormValue = (value) => ({
9
+ isTouched: false,
10
+ isDirty: false,
11
+ value
12
+ });
13
+ const valuesToFormValues = (defaultValues) => {
14
+ return Object.keys(defaultValues).reduce((accum, key) => {
15
+ accum[key] = defaultValueToFormValue(defaultValues[key]);
16
+ return accum;
17
+ }, {});
18
+ };
19
+ const isString = (str) => typeof str === "string" || str instanceof String;
20
+ const getUpdatedTouchedFields = (userValues) => {
21
+ return Object.keys(userValues).reduce((accum, key) => {
22
+ if (userValues[key]?.isTouched) accum[key] = true;
23
+ return accum;
24
+ }, {});
25
+ };
26
+ const mergeDefaultFormValues = (userValues, defaultValues) => Object.keys(defaultValues).reduce((accum, key) => {
27
+ accum[key] = {
28
+ isTouched: !!(userValues[key]?.isTouched || defaultValues[key]?.isTouched),
29
+ isDirty: !!(userValues[key]?.isDirty || defaultValues[key]?.isTouched),
30
+ value: userValues[key]?.value || Number.isFinite(userValues[key]?.value) ? userValues[key]?.value : defaultValues[key]?.value
31
+ };
32
+ return accum;
33
+ }, { ...valuesToFormValues(formDefaultValues) });
34
+ const createFormStore = (defaultValues) => create((set, get) => {
35
+ const _defaultValues = valuesToFormValues({
36
+ ...formDefaultValues,
37
+ ...defaultValues
38
+ });
39
+ return {
40
+ defaultValues: _defaultValues,
41
+ userValues: _defaultValues,
42
+ touchedFields: {},
43
+ isValid: true,
44
+ isValidating: false,
45
+ errors: {},
46
+ validation: {},
47
+ setDefaultValues: (defaultValue) => {
48
+ const defaultFormValues = valuesToFormValues(defaultValue);
49
+ set((state) => ({
50
+ defaultValues: defaultFormValues,
51
+ userValues: mergeDefaultFormValues(state.userValues, defaultFormValues)
52
+ }));
53
+ },
54
+ setUserAndDefaultValues: (formValues) => {
55
+ const currentUserValues = get().userValues;
56
+ Object.keys(formValues).forEach((key) => {
57
+ if (formValues[key] !== currentUserValues[key]?.value) {
58
+ get().resetField(key, { defaultValue: formValues[key] });
59
+ get().setFieldValue(key, formValues[key], { isTouched: true });
60
+ }
61
+ });
62
+ },
63
+ isTouched: (fieldName) => !!get().userValues[fieldName]?.isTouched,
64
+ isDirty: (fieldName) => !!get().userValues[fieldName]?.isDirty,
65
+ setAsTouched: (fieldName) => {
66
+ const userValues = {
67
+ ...get().userValues,
68
+ [fieldName]: {
69
+ ...get().userValues[fieldName],
70
+ isTouched: true
71
+ }
72
+ };
73
+ const touchedFields = getUpdatedTouchedFields(userValues);
74
+ set(() => ({
75
+ userValues,
76
+ touchedFields
77
+ }));
78
+ },
79
+ resetField: (fieldName, { defaultValue } = {}) => {
80
+ if (defaultValue) {
81
+ const fieldValues = {
82
+ ...get().defaultValues[fieldName],
83
+ value: defaultValue
84
+ };
85
+ const defaultValues = {
86
+ ...get().defaultValues,
87
+ [fieldName]: { ...fieldValues }
88
+ };
89
+ const userValues = {
90
+ ...get().userValues,
91
+ [fieldName]: { ...fieldValues }
92
+ };
93
+ const touchedFields = getUpdatedTouchedFields(userValues);
94
+ set(() => {
95
+ return {
96
+ defaultValues,
97
+ userValues,
98
+ touchedFields
99
+ };
100
+ });
101
+ } else {
102
+ const userValues = {
103
+ ...get().userValues,
104
+ [fieldName]: { ...get().defaultValues[fieldName] }
105
+ };
106
+ const touchedFields = getUpdatedTouchedFields(userValues);
107
+ set(() => ({
108
+ userValues,
109
+ touchedFields
110
+ }));
111
+ }
112
+ },
113
+ setFieldValue: (fieldName, value, { isDirty, isTouched } = {}) => {
114
+ const userValues = {
115
+ ...get().userValues,
116
+ [fieldName]: {
117
+ value,
118
+ isDirty: isDirty === void 0 ? get().userValues[fieldName]?.isDirty : isDirty,
119
+ isTouched: isTouched === void 0 ? get().userValues[fieldName]?.isTouched : isTouched
120
+ }
121
+ };
122
+ const touchedFields = getUpdatedTouchedFields(userValues);
123
+ set(() => ({
124
+ userValues,
125
+ touchedFields
126
+ }));
127
+ },
128
+ getFieldValues: (...names) => names.map((name) => get().userValues[name]?.value),
129
+ addFieldValidation: (name, validationFn) => {
130
+ set((state) => ({ validation: {
131
+ ...state.validation,
132
+ [name]: validationFn
133
+ } }));
134
+ },
135
+ triggerFieldValidation: async (name) => {
136
+ try {
137
+ let valid = true;
138
+ set(() => ({
139
+ isValid: false,
140
+ isValidating: true
141
+ }));
142
+ const validationFn = get().validation[name];
143
+ if (validationFn) {
144
+ const result = await validationFn(get().userValues?.[name]?.value);
145
+ if (isString(result)) {
146
+ valid = false;
147
+ set((state) => ({ errors: {
148
+ ...state.errors,
149
+ [name]: result
150
+ } }));
151
+ } else {
152
+ valid = result;
153
+ if (valid) get().clearErrors(name);
154
+ }
155
+ }
156
+ set(() => ({
157
+ isValid: valid,
158
+ isValidating: false
159
+ }));
160
+ return valid;
161
+ } catch (err) {
162
+ set(() => ({ isValidating: false }));
163
+ throw err;
164
+ }
165
+ },
166
+ clearErrors: (name) => {
167
+ const newErrors = { ...get().errors };
168
+ delete newErrors[name];
169
+ set(() => ({ errors: newErrors }));
170
+ }
171
+ };
172
+ });
173
+ //#endregion
174
+ export { createFormStore, formDefaultValues };
175
+
176
+ //# sourceMappingURL=createFormStore.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createFormStore.js","names":[],"sources":["../../../../src/stores/form/createFormStore.ts"],"sourcesContent":["import type { StoreApi, UseBoundStore } from 'zustand'\nimport { create } from 'zustand'\n\nimport type {\n DefaultValues,\n FormFieldArray,\n FormFieldNames,\n FormValueControl,\n FormValues,\n FormValuesState,\n} from './types.js'\n\nexport const formDefaultValues: DefaultValues = {\n fromAmount: '',\n toAmount: '',\n tokenSearchFilter: '',\n}\n\nconst defaultValueToFormValue = <T>(value: T): FormValueControl<T> => ({\n isTouched: false,\n isDirty: false,\n value,\n})\n\nconst valuesToFormValues = (defaultValues: DefaultValues): FormValues => {\n return (Object.keys(defaultValues) as FormFieldNames[]).reduce(\n (accum, key) => {\n accum[key] = defaultValueToFormValue(defaultValues[key]) as never\n return accum\n },\n {} as FormValues\n )\n}\n\nconst isString = (str: any) => typeof str === 'string' || str instanceof String\n\nconst getUpdatedTouchedFields = (userValues: FormValues) => {\n return (Object.keys(userValues) as FormFieldNames[]).reduce(\n (accum, key) => {\n if (userValues[key]?.isTouched) {\n accum[key] = true\n }\n return accum\n },\n {} as Record<FormFieldNames, boolean>\n )\n}\n\nconst mergeDefaultFormValues = (\n userValues: FormValues,\n defaultValues: FormValues\n) =>\n (Object.keys(defaultValues) as FormFieldNames[]).reduce<FormValues>(\n (accum, key) => {\n const formValue = {\n isTouched: !!(\n userValues[key]?.isTouched || defaultValues[key]?.isTouched\n ),\n isDirty: !!(userValues[key]?.isDirty || defaultValues[key]?.isTouched),\n value:\n userValues[key]?.value || Number.isFinite(userValues[key]?.value)\n ? userValues[key]?.value\n : defaultValues[key]?.value,\n }\n accum[key] = formValue as never\n return accum\n },\n { ...valuesToFormValues(formDefaultValues) }\n )\n\nexport const createFormStore = (\n defaultValues?: DefaultValues\n): UseBoundStore<StoreApi<FormValuesState>> =>\n create<FormValuesState>((set, get) => {\n const _defaultValues = valuesToFormValues({\n ...formDefaultValues,\n ...defaultValues,\n })\n return {\n defaultValues: _defaultValues,\n userValues: _defaultValues,\n touchedFields: {},\n isValid: true,\n isValidating: false,\n errors: {},\n validation: {},\n setDefaultValues: (defaultValue) => {\n const defaultFormValues = valuesToFormValues(defaultValue)\n set((state) => ({\n defaultValues: defaultFormValues,\n userValues: mergeDefaultFormValues(\n state.userValues,\n defaultFormValues\n ),\n }))\n },\n setUserAndDefaultValues: (formValues) => {\n const currentUserValues = get().userValues\n ;(Object.keys(formValues) as FormFieldNames[]).forEach((key) => {\n if (formValues[key] !== currentUserValues[key]?.value) {\n get().resetField(key, { defaultValue: formValues[key] })\n get().setFieldValue(key, formValues[key], { isTouched: true })\n }\n })\n },\n isTouched: (fieldName: FormFieldNames) =>\n !!get().userValues[fieldName]?.isTouched,\n isDirty: (fieldName: FormFieldNames) =>\n !!get().userValues[fieldName]?.isDirty,\n setAsTouched: (fieldName: FormFieldNames) => {\n const userValues = {\n ...get().userValues,\n [fieldName]: {\n ...get().userValues[fieldName],\n isTouched: true,\n },\n }\n\n const touchedFields = getUpdatedTouchedFields(userValues)\n\n set(() => ({\n userValues,\n touchedFields,\n }))\n },\n resetField: (fieldName, { defaultValue } = {}) => {\n if (defaultValue) {\n const fieldValues = {\n ...get().defaultValues[fieldName],\n value: defaultValue,\n }\n const defaultValues = {\n ...get().defaultValues,\n [fieldName]: { ...fieldValues },\n }\n const userValues = {\n ...get().userValues,\n [fieldName]: { ...fieldValues },\n }\n const touchedFields = getUpdatedTouchedFields(userValues)\n\n set(() => {\n return {\n defaultValues,\n userValues,\n touchedFields,\n }\n })\n } else {\n const userValues = {\n ...get().userValues,\n [fieldName]: { ...get().defaultValues[fieldName] },\n }\n const touchedFields = getUpdatedTouchedFields(userValues)\n\n set(() => ({\n userValues,\n touchedFields,\n }))\n }\n },\n setFieldValue: (fieldName, value, { isDirty, isTouched } = {}) => {\n const userValues = {\n ...get().userValues,\n [fieldName]: {\n value,\n isDirty:\n isDirty === undefined\n ? get().userValues[fieldName]?.isDirty\n : isDirty,\n isTouched:\n isTouched === undefined\n ? get().userValues[fieldName]?.isTouched\n : isTouched,\n },\n }\n\n const touchedFields = getUpdatedTouchedFields(userValues)\n\n set(() => ({\n userValues,\n touchedFields,\n }))\n },\n getFieldValues: <T extends FormFieldNames[]>(...names: T) =>\n names.map((name) => get().userValues[name]?.value) as FormFieldArray<T>,\n addFieldValidation: (name, validationFn) => {\n set((state) => ({\n validation: {\n ...state.validation,\n [name]: validationFn,\n },\n }))\n },\n triggerFieldValidation: async (name) => {\n try {\n let valid = true\n set(() => ({ isValid: false, isValidating: true }))\n\n const validationFn = get().validation[name]\n\n if (validationFn) {\n const result = await validationFn(get().userValues?.[name]?.value)\n if (isString(result)) {\n valid = false\n set((state) => ({\n errors: {\n ...state.errors,\n [name]: result,\n },\n }))\n } else {\n valid = result as boolean\n if (valid) {\n get().clearErrors(name)\n }\n }\n }\n\n set(() => ({ isValid: valid, isValidating: false }))\n return valid\n } catch (err) {\n set(() => ({ isValidating: false }))\n throw err\n }\n },\n clearErrors: (name) => {\n const newErrors = { ...get().errors }\n\n delete newErrors[name]\n\n set(() => ({\n errors: newErrors,\n }))\n },\n }\n })\n"],"mappings":";;AAYA,MAAa,oBAAmC;CAC9C,YAAY;CACZ,UAAU;CACV,mBAAmB;AACrB;AAEA,MAAM,2BAA8B,WAAmC;CACrE,WAAW;CACX,SAAS;CACT;AACF;AAEA,MAAM,sBAAsB,kBAA6C;CACvE,OAAQ,OAAO,KAAK,aAAa,EAAuB,QACrD,OAAO,QAAQ;EACd,MAAM,OAAO,wBAAwB,cAAc,IAAI;EACvD,OAAO;CACT,GACA,CAAC,CACH;AACF;AAEA,MAAM,YAAY,QAAa,OAAO,QAAQ,YAAY,eAAe;AAEzE,MAAM,2BAA2B,eAA2B;CAC1D,OAAQ,OAAO,KAAK,UAAU,EAAuB,QAClD,OAAO,QAAQ;EACd,IAAI,WAAW,MAAM,WACnB,MAAM,OAAO;EAEf,OAAO;CACT,GACA,CAAC,CACH;AACF;AAEA,MAAM,0BACJ,YACA,kBAEC,OAAO,KAAK,aAAa,EAAuB,QAC9C,OAAO,QAAQ;CAWd,MAAM,OAAO;EATX,WAAW,CAAC,EACV,WAAW,MAAM,aAAa,cAAc,MAAM;EAEpD,SAAS,CAAC,EAAE,WAAW,MAAM,WAAW,cAAc,MAAM;EAC5D,OACE,WAAW,MAAM,SAAS,OAAO,SAAS,WAAW,MAAM,KAAK,IAC5D,WAAW,MAAM,QACjB,cAAc,MAAM;CAEP;CACrB,OAAO;AACT,GACA,EAAE,GAAG,mBAAmB,iBAAiB,EAAE,CAC7C;AAEF,MAAa,mBACX,kBAEA,QAAyB,KAAK,QAAQ;CACpC,MAAM,iBAAiB,mBAAmB;EACxC,GAAG;EACH,GAAG;CACL,CAAC;CACD,OAAO;EACL,eAAe;EACf,YAAY;EACZ,eAAe,CAAC;EAChB,SAAS;EACT,cAAc;EACd,QAAQ,CAAC;EACT,YAAY,CAAC;EACb,mBAAmB,iBAAiB;GAClC,MAAM,oBAAoB,mBAAmB,YAAY;GACzD,KAAK,WAAW;IACd,eAAe;IACf,YAAY,uBACV,MAAM,YACN,iBACF;GACF,EAAE;EACJ;EACA,0BAA0B,eAAe;GACvC,MAAM,oBAAoB,IAAI,EAAE;GAC/B,OAAQ,KAAK,UAAU,EAAuB,SAAS,QAAQ;IAC9D,IAAI,WAAW,SAAS,kBAAkB,MAAM,OAAO;KACrD,IAAI,EAAE,WAAW,KAAK,EAAE,cAAc,WAAW,KAAK,CAAC;KACvD,IAAI,EAAE,cAAc,KAAK,WAAW,MAAM,EAAE,WAAW,KAAK,CAAC;IAC/D;GACF,CAAC;EACH;EACA,YAAY,cACV,CAAC,CAAC,IAAI,EAAE,WAAW,YAAY;EACjC,UAAU,cACR,CAAC,CAAC,IAAI,EAAE,WAAW,YAAY;EACjC,eAAe,cAA8B;GAC3C,MAAM,aAAa;IACjB,GAAG,IAAI,EAAE;KACR,YAAY;KACX,GAAG,IAAI,EAAE,WAAW;KACpB,WAAW;IACb;GACF;GAEA,MAAM,gBAAgB,wBAAwB,UAAU;GAExD,WAAW;IACT;IACA;GACF,EAAE;EACJ;EACA,aAAa,WAAW,EAAE,iBAAiB,CAAC,MAAM;GAChD,IAAI,cAAc;IAChB,MAAM,cAAc;KAClB,GAAG,IAAI,EAAE,cAAc;KACvB,OAAO;IACT;IACA,MAAM,gBAAgB;KACpB,GAAG,IAAI,EAAE;MACR,YAAY,EAAE,GAAG,YAAY;IAChC;IACA,MAAM,aAAa;KACjB,GAAG,IAAI,EAAE;MACR,YAAY,EAAE,GAAG,YAAY;IAChC;IACA,MAAM,gBAAgB,wBAAwB,UAAU;IAExD,UAAU;KACR,OAAO;MACL;MACA;MACA;KACF;IACF,CAAC;GACH,OAAO;IACL,MAAM,aAAa;KACjB,GAAG,IAAI,EAAE;MACR,YAAY,EAAE,GAAG,IAAI,EAAE,cAAc,WAAW;IACnD;IACA,MAAM,gBAAgB,wBAAwB,UAAU;IAExD,WAAW;KACT;KACA;IACF,EAAE;GACJ;EACF;EACA,gBAAgB,WAAW,OAAO,EAAE,SAAS,cAAc,CAAC,MAAM;GAChE,MAAM,aAAa;IACjB,GAAG,IAAI,EAAE;KACR,YAAY;KACX;KACA,SACE,YAAY,KAAA,IACR,IAAI,EAAE,WAAW,YAAY,UAC7B;KACN,WACE,cAAc,KAAA,IACV,IAAI,EAAE,WAAW,YAAY,YAC7B;IACR;GACF;GAEA,MAAM,gBAAgB,wBAAwB,UAAU;GAExD,WAAW;IACT;IACA;GACF,EAAE;EACJ;EACA,iBAA6C,GAAG,UAC9C,MAAM,KAAK,SAAS,IAAI,EAAE,WAAW,OAAO,KAAK;EACnD,qBAAqB,MAAM,iBAAiB;GAC1C,KAAK,WAAW,EACd,YAAY;IACV,GAAG,MAAM;KACR,OAAO;GACV,EACF,EAAE;EACJ;EACA,wBAAwB,OAAO,SAAS;GACtC,IAAI;IACF,IAAI,QAAQ;IACZ,WAAW;KAAE,SAAS;KAAO,cAAc;IAAK,EAAE;IAElD,MAAM,eAAe,IAAI,EAAE,WAAW;IAEtC,IAAI,cAAc;KAChB,MAAM,SAAS,MAAM,aAAa,IAAI,EAAE,aAAa,OAAO,KAAK;KACjE,IAAI,SAAS,MAAM,GAAG;MACpB,QAAQ;MACR,KAAK,WAAW,EACd,QAAQ;OACN,GAAG,MAAM;QACR,OAAO;MACV,EACF,EAAE;KACJ,OAAO;MACL,QAAQ;MACR,IAAI,OACF,IAAI,EAAE,YAAY,IAAI;KAE1B;IACF;IAEA,WAAW;KAAE,SAAS;KAAO,cAAc;IAAM,EAAE;IACnD,OAAO;GACT,SAAS,KAAK;IACZ,WAAW,EAAE,cAAc,MAAM,EAAE;IACnC,MAAM;GACR;EACF;EACA,cAAc,SAAS;GACrB,MAAM,YAAY,EAAE,GAAG,IAAI,EAAE,OAAO;GAEpC,OAAO,UAAU;GAEjB,WAAW,EACT,QAAQ,UACV,EAAE;EACJ;CACF;AACF,CAAC"}
@@ -0,0 +1,22 @@
1
+ import { formatInputAmount } from "../../utils/format.js";
2
+ //#region src/stores/form/getDefaultValuesFromQueryString.ts
3
+ const getDefaultValuesFromQueryString = ({ buildUrl = false, includeToAddress = true }) => {
4
+ if (typeof window === "undefined") return {};
5
+ if (!buildUrl) return {};
6
+ const searchParams = Object.fromEntries(new URLSearchParams(window.location.search));
7
+ ["from", "to"].forEach((key) => {
8
+ if (searchParams[`${key}Token`] && !searchParams[`${key}Chain`]) delete searchParams[`${key}Token`];
9
+ });
10
+ return {
11
+ ...Number.isFinite(Number.parseInt(searchParams.fromChain, 10)) ? { fromChain: Number.parseInt(searchParams.fromChain, 10) } : {},
12
+ ...Number.isFinite(Number.parseInt(searchParams.toChain, 10)) ? { toChain: Number.parseInt(searchParams.toChain, 10) } : {},
13
+ ...searchParams.fromToken ? { fromToken: searchParams.fromToken } : {},
14
+ ...searchParams.toToken ? { toToken: searchParams.toToken } : {},
15
+ ...Number.isFinite(Number.parseFloat(searchParams.fromAmount)) ? { fromAmount: formatInputAmount(searchParams.fromAmount) } : {},
16
+ ...includeToAddress && searchParams.toAddress ? { toAddress: searchParams.toAddress } : {}
17
+ };
18
+ };
19
+ //#endregion
20
+ export { getDefaultValuesFromQueryString };
21
+
22
+ //# sourceMappingURL=getDefaultValuesFromQueryString.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getDefaultValuesFromQueryString.js","names":[],"sources":["../../../../src/stores/form/getDefaultValuesFromQueryString.ts"],"sourcesContent":["import { formatInputAmount } from '../../utils/format.js'\nimport type { DefaultValues } from './types.js'\n\ninterface GetDefaultValuesFromQueryStringOptions {\n includeToAddress?: boolean\n buildUrl?: boolean\n}\n\nexport const getDefaultValuesFromQueryString = ({\n buildUrl = false,\n includeToAddress = true,\n}: GetDefaultValuesFromQueryStringOptions): Partial<DefaultValues> => {\n if (typeof window === 'undefined') {\n return {}\n }\n\n if (!buildUrl) {\n return {}\n }\n\n const searchParams = Object.fromEntries(\n new URLSearchParams(window.location.search)\n )\n\n // Prevent using fromToken/toToken params if chain is not selected.\n ;(['from', 'to'] as const).forEach((key) => {\n if (searchParams[`${key}Token`] && !searchParams[`${key}Chain`]) {\n delete searchParams[`${key}Token`]\n }\n })\n\n return {\n ...(Number.isFinite(Number.parseInt(searchParams.fromChain, 10))\n ? { fromChain: Number.parseInt(searchParams.fromChain, 10) }\n : {}),\n ...(Number.isFinite(Number.parseInt(searchParams.toChain, 10))\n ? { toChain: Number.parseInt(searchParams.toChain, 10) }\n : {}),\n ...(searchParams.fromToken ? { fromToken: searchParams.fromToken } : {}),\n ...(searchParams.toToken ? { toToken: searchParams.toToken } : {}),\n ...(Number.isFinite(Number.parseFloat(searchParams.fromAmount))\n ? { fromAmount: formatInputAmount(searchParams.fromAmount) }\n : {}),\n ...(includeToAddress && searchParams.toAddress\n ? { toAddress: searchParams.toAddress }\n : {}),\n }\n}\n"],"mappings":";;AAQA,MAAa,mCAAmC,EAC9C,WAAW,OACX,mBAAmB,WACiD;CACpE,IAAI,OAAO,WAAW,aACpB,OAAO,CAAC;CAGV,IAAI,CAAC,UACH,OAAO,CAAC;CAGV,MAAM,eAAe,OAAO,YAC1B,IAAI,gBAAgB,OAAO,SAAS,MAAM,CAC5C;CAGC,CAAE,QAAQ,IAAI,EAAY,SAAS,QAAQ;EAC1C,IAAI,aAAa,GAAG,IAAI,WAAW,CAAC,aAAa,GAAG,IAAI,SACtD,OAAO,aAAa,GAAG,IAAI;CAE/B,CAAC;CAED,OAAO;EACL,GAAI,OAAO,SAAS,OAAO,SAAS,aAAa,WAAW,EAAE,CAAC,IAC3D,EAAE,WAAW,OAAO,SAAS,aAAa,WAAW,EAAE,EAAE,IACzD,CAAC;EACL,GAAI,OAAO,SAAS,OAAO,SAAS,aAAa,SAAS,EAAE,CAAC,IACzD,EAAE,SAAS,OAAO,SAAS,aAAa,SAAS,EAAE,EAAE,IACrD,CAAC;EACL,GAAI,aAAa,YAAY,EAAE,WAAW,aAAa,UAAU,IAAI,CAAC;EACtE,GAAI,aAAa,UAAU,EAAE,SAAS,aAAa,QAAQ,IAAI,CAAC;EAChE,GAAI,OAAO,SAAS,OAAO,WAAW,aAAa,UAAU,CAAC,IAC1D,EAAE,YAAY,kBAAkB,aAAa,UAAU,EAAE,IACzD,CAAC;EACL,GAAI,oBAAoB,aAAa,YACjC,EAAE,WAAW,aAAa,UAAU,IACpC,CAAC;CACP;AACF"}