@layerswap/widget 1.0.6 → 1.1.1

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 (437) hide show
  1. package/dist/esm/Models/LayerSwapSettings.js +0 -1
  2. package/dist/esm/Models/Theme.js +39 -0
  3. package/dist/esm/components/Buttons/submitButton.js +2 -1
  4. package/dist/esm/components/Common/ConnectWalletButton.js +9 -3
  5. package/dist/esm/components/Common/CountDownTimer.js +0 -1
  6. package/dist/esm/components/Common/WarningMessage.js +4 -2
  7. package/dist/esm/components/Common/guideLink.js +4 -6
  8. package/dist/esm/components/ErrorFallback.js +12 -12
  9. package/dist/esm/components/HeaderWithMenu.js +1 -1
  10. package/dist/esm/components/Icons/CircularLoader.js +5 -0
  11. package/dist/esm/components/Icons/FailIcon.js +2 -2
  12. package/dist/esm/components/Icons/GlobeIcon.js +3 -0
  13. package/dist/esm/components/Icons/MenuIcon.js +5 -0
  14. package/dist/esm/components/Icons/TokenIcon.js +1 -1
  15. package/dist/esm/components/Icons/Wallets/index.js +0 -1
  16. package/dist/esm/components/Input/Address/AddressNote.js +2 -2
  17. package/dist/esm/components/Input/Address/AddressPicker/AddressWithIcon.js +5 -2
  18. package/dist/esm/components/Input/Address/AddressPicker/index.js +15 -12
  19. package/dist/esm/components/Input/Address/ContractAddressNote.js +17 -0
  20. package/dist/esm/components/Input/Address/UrlAddressNote.js +10 -0
  21. package/dist/esm/components/Input/Amount/Balance.js +1 -1
  22. package/dist/esm/components/Input/Amount/ExchangeReceiveAmount.js +8 -0
  23. package/dist/esm/components/Input/Amount/MinMax.js +1 -1
  24. package/dist/esm/components/Input/Amount/PriceImpact.js +5 -40
  25. package/dist/esm/components/Input/Amount/ReceiveAmount.js +2 -2
  26. package/dist/esm/components/Input/Amount/index.js +3 -3
  27. package/dist/esm/components/Input/DestinationPicker.js +2 -2
  28. package/dist/esm/components/Input/RoutePicker/Content.js +19 -3
  29. package/dist/esm/components/Input/RoutePicker/RouteTokenSwitch.js +4 -4
  30. package/dist/esm/components/Input/RoutePicker/RouterPickerWalletConnect.js +5 -5
  31. package/dist/esm/components/Input/RoutePicker/Routes.js +27 -26
  32. package/dist/esm/components/Input/RoutePicker/Rows/CollapsableHeader.js +2 -2
  33. package/dist/esm/components/Input/RoutePicker/Rows/CollapsibleRow.js +3 -3
  34. package/dist/esm/components/Input/RoutePicker/Rows/StickyHeader.js +2 -2
  35. package/dist/esm/components/Input/RoutePicker/Rows/SuggestionsHeader.js +55 -0
  36. package/dist/esm/components/Input/RoutePicker/Rows/TitleRow.js +11 -0
  37. package/dist/esm/components/Input/RoutePicker/Rows/index.js +5 -6
  38. package/dist/esm/components/Input/RoutePicker/TokenTitleDetails.js +10 -0
  39. package/dist/esm/components/Input/RoutePicker/index.js +2 -2
  40. package/dist/esm/components/Input/SourceWalletPicker.js +6 -4
  41. package/dist/esm/components/Menu/MenuList.js +11 -19
  42. package/dist/esm/components/Menu/index.js +16 -7
  43. package/dist/esm/components/Modal/modalWithoutAnimation.js +3 -3
  44. package/dist/esm/components/Pages/Campaigns/Details/Leaderboard.js +2 -2
  45. package/dist/esm/components/Pages/Campaigns/Details/Rewards.js +2 -2
  46. package/dist/esm/components/Pages/Campaigns/Details/index.js +3 -4
  47. package/dist/esm/components/Pages/Campaigns/index.js +3 -4
  48. package/dist/esm/components/Pages/Swap/Form/ExchangeForm.js +21 -19
  49. package/dist/esm/components/Pages/Swap/Form/FeeDetails/Rate.js +6 -4
  50. package/dist/esm/components/Pages/Swap/Form/FeeDetails/Refuel.js +8 -3
  51. package/dist/esm/components/Pages/Swap/Form/FeeDetails/SwapQuote/DetailedEstimates.js +51 -14
  52. package/dist/esm/components/Pages/Swap/Form/FeeDetails/SwapQuote/SummaryRow.js +1 -1
  53. package/dist/esm/components/Pages/Swap/Form/FeeDetails/SwapQuote/index.js +3 -3
  54. package/dist/esm/components/Pages/Swap/Form/FeeDetails/index.js +10 -11
  55. package/dist/esm/components/Pages/Swap/Form/Form.js +27 -3
  56. package/dist/esm/components/Pages/Swap/Form/FormWrapper.js +35 -10
  57. package/dist/esm/components/Pages/Swap/Form/NetworkForm.js +13 -22
  58. package/dist/esm/components/Pages/Swap/Form/SecondaryComponents/FormButton.js +1 -1
  59. package/dist/esm/components/Pages/Swap/Form/SecondaryComponents/ReserveGasNote.js +8 -6
  60. package/dist/esm/components/Pages/Swap/Form/SecondaryComponents/validationError/ContractAddressValidationCache.js +19 -0
  61. package/dist/esm/components/Pages/Swap/Withdraw/Failed.js +12 -8
  62. package/dist/esm/components/Pages/Swap/Withdraw/ManualWithdraw.js +28 -9
  63. package/dist/esm/components/Pages/Swap/Withdraw/NotFound.js +15 -4
  64. package/dist/esm/components/Pages/Swap/Withdraw/Processing/Processing.js +44 -45
  65. package/dist/esm/components/Pages/Swap/Withdraw/Summary/Summary.js +2 -3
  66. package/dist/esm/components/Pages/Swap/Withdraw/Summary/index.js +2 -2
  67. package/dist/esm/components/Pages/Swap/Withdraw/SwapDetails.js +9 -7
  68. package/dist/esm/components/Pages/Swap/Withdraw/Wallet/Common/actionMessage.js +43 -0
  69. package/dist/esm/components/Pages/Swap/Withdraw/Wallet/Common/buttons.js +125 -71
  70. package/dist/esm/components/Pages/Swap/Withdraw/Wallet/index.js +56 -65
  71. package/dist/esm/components/Pages/Swap/Withdraw/WalletTransferButton.js +2 -2
  72. package/dist/esm/components/Pages/Swap/Withdraw/WalletTransferContent.js +2 -2
  73. package/dist/esm/components/Pages/Swap/Withdraw/Withdraw.js +3 -3
  74. package/dist/esm/components/Pages/Swap/Withdraw/index.js +5 -4
  75. package/dist/esm/components/Pages/Swap/Withdraw/messages/Message.js +4 -4
  76. package/dist/esm/components/Pages/Swap/Withdraw/messages/TransactionMessages.js +14 -15
  77. package/dist/esm/components/Pages/SwapHistory/History.js +2 -2
  78. package/dist/esm/components/Pages/SwapHistory/HistorySummary.js +1 -1
  79. package/dist/esm/components/Pages/SwapHistory/index.js +4 -4
  80. package/dist/esm/components/Select/Selector/SelectItem.js +1 -1
  81. package/dist/esm/components/Wallet/WalletComponents/ConnectedWallets.js +4 -4
  82. package/dist/esm/components/Wallet/WalletComponents/WalletsList.js +1 -1
  83. package/dist/esm/components/Wallet/WalletModal/Connector.js +2 -2
  84. package/dist/esm/components/Wallet/WalletModal/ConnectorsList.js +78 -125
  85. package/dist/esm/components/Wallet/WalletModal/InstalledExtensionNotFound.js +16 -0
  86. package/dist/esm/components/Wallet/WalletModal/LoadingConnect.js +27 -0
  87. package/dist/esm/components/Wallet/WalletModal/MultichainConnectorPicker.js +23 -0
  88. package/dist/esm/components/Wallet/WalletModal/ProviderPicker.js +26 -0
  89. package/dist/esm/components/Wallet/WalletModal/WalletQrCode.js +18 -0
  90. package/dist/esm/components/Wallet/WalletModal/index.js +4 -2
  91. package/dist/esm/components/Wallet/WalletProviders/index.js +4 -2
  92. package/dist/esm/components/Widget/Content.js +2 -2
  93. package/dist/esm/components/Widget/Footer.js +21 -21
  94. package/dist/esm/components/Widget/Index.js +2 -2
  95. package/dist/esm/components/WidgetLoading.js +9 -2
  96. package/dist/esm/components/shadcn/checkbox.js +1 -1
  97. package/dist/esm/context/ErrorProvider.js +14 -0
  98. package/dist/esm/context/LayerswapProvider.js +6 -5
  99. package/dist/esm/context/callbackProvider.js +60 -52
  100. package/dist/esm/context/resolverContext.js +11 -2
  101. package/dist/esm/context/swap.js +10 -13
  102. package/dist/esm/context/{balanceAccounts.js → swapAccounts.js} +17 -17
  103. package/dist/esm/context/validationContext.js +1 -1
  104. package/dist/esm/context/walletProviders.js +7 -1
  105. package/dist/esm/context/withdrawalContext.js +2 -2
  106. package/dist/esm/exports/internal.js +4 -3
  107. package/dist/esm/helpers/filterSourceNetworks.js +23 -0
  108. package/dist/esm/helpers/getSettings/getSettings.js +18 -13
  109. package/dist/esm/helpers/routes.js +4 -1
  110. package/dist/esm/hooks/useAllWithdrawalBalances.js +11 -5
  111. package/dist/esm/hooks/useConnectors.js +72 -0
  112. package/dist/esm/hooks/useFormRoutes.js +16 -8
  113. package/dist/esm/hooks/useFormValidation.js +5 -4
  114. package/dist/esm/hooks/useRouteValidation.js +1 -1
  115. package/dist/esm/hooks/useSwrSwaps.js +1 -1
  116. package/dist/esm/hooks/useTransfer.js +9 -0
  117. package/dist/esm/hooks/useWallet.js +7 -7
  118. package/dist/esm/lib/AppSettings.js +27 -16
  119. package/dist/esm/lib/ErrorHandler.js +6 -0
  120. package/dist/esm/lib/address/contractAddressResolver.js +12 -0
  121. package/dist/esm/lib/apiClients/layerSwapApiClient.js +19 -35
  122. package/dist/esm/lib/balances/balanceResolver.js +57 -11
  123. package/dist/esm/lib/balances/errorUtils.js +13 -0
  124. package/dist/esm/lib/balances/nodeErrorClassifier.js +22 -0
  125. package/dist/esm/lib/fees.js +50 -0
  126. package/dist/esm/lib/generateSwapInitialValues.js +2 -2
  127. package/dist/esm/lib/isNewListed.js +8 -0
  128. package/dist/esm/lib/knownIds.js +1 -0
  129. package/dist/esm/lib/resolvers/resolverService.js +19 -1
  130. package/dist/esm/lib/transfers/index.js +1 -0
  131. package/dist/esm/lib/transfers/transferResolver.js +14 -0
  132. package/dist/esm/stores/balanceStore.js +39 -18
  133. package/dist/esm/stores/contractAddressStore.js +178 -0
  134. package/dist/esm/stores/logStore.js +11 -0
  135. package/dist/esm/types/balance.js +23 -11
  136. package/dist/esm/types/contract.js +1 -0
  137. package/dist/esm/types/index.js +2 -0
  138. package/dist/esm/types/logEvents.js +1 -0
  139. package/dist/index.css +1 -1
  140. package/dist/tsconfig.tsbuildinfo +1 -1
  141. package/dist/types/Models/Balance.d.ts +14 -2
  142. package/dist/types/Models/Balance.d.ts.map +1 -1
  143. package/dist/types/Models/LayerSwapSettings.d.ts +7 -0
  144. package/dist/types/Models/LayerSwapSettings.d.ts.map +1 -1
  145. package/dist/types/Models/Theme.d.ts.map +1 -1
  146. package/dist/types/components/Buttons/submitButton.d.ts +1 -1
  147. package/dist/types/components/Buttons/submitButton.d.ts.map +1 -1
  148. package/dist/types/components/Common/ConnectWalletButton.d.ts +1 -1
  149. package/dist/types/components/Common/ConnectWalletButton.d.ts.map +1 -1
  150. package/dist/types/components/Common/CountDownTimer.d.ts.map +1 -1
  151. package/dist/types/components/Common/WarningMessage.d.ts.map +1 -1
  152. package/dist/types/components/Common/guideLink.d.ts.map +1 -1
  153. package/dist/types/components/ErrorFallback.d.ts.map +1 -1
  154. package/dist/types/components/HeaderWithMenu.d.ts.map +1 -1
  155. package/dist/types/components/Icons/CircularLoader.d.ts +4 -0
  156. package/dist/types/components/Icons/CircularLoader.d.ts.map +1 -0
  157. package/dist/types/components/Icons/FailIcon.d.ts.map +1 -1
  158. package/dist/types/components/Icons/GasIcon.d.ts.map +1 -1
  159. package/dist/types/components/Icons/GlobeIcon.d.ts +4 -0
  160. package/dist/types/components/Icons/GlobeIcon.d.ts.map +1 -0
  161. package/dist/types/components/Icons/MenuIcon.d.ts +4 -0
  162. package/dist/types/components/Icons/MenuIcon.d.ts.map +1 -0
  163. package/dist/types/components/Icons/TokenIcon.d.ts.map +1 -1
  164. package/dist/types/components/Icons/Wallets/index.d.ts +0 -1
  165. package/dist/types/components/Icons/Wallets/index.d.ts.map +1 -1
  166. package/dist/types/components/Input/Address/AddressNote.d.ts +5 -5
  167. package/dist/types/components/Input/Address/AddressNote.d.ts.map +1 -1
  168. package/dist/types/components/Input/Address/AddressPicker/AddressBook.d.ts +3 -3
  169. package/dist/types/components/Input/Address/AddressPicker/AddressButton.d.ts +3 -3
  170. package/dist/types/components/Input/Address/AddressPicker/AddressWithIcon.d.ts +3 -2
  171. package/dist/types/components/Input/Address/AddressPicker/AddressWithIcon.d.ts.map +1 -1
  172. package/dist/types/components/Input/Address/AddressPicker/ConnectedWallets.d.ts +2 -2
  173. package/dist/types/components/Input/Address/AddressPicker/ManualAddressInput.d.ts +4 -4
  174. package/dist/types/components/Input/Address/AddressPicker/index.d.ts +4 -4
  175. package/dist/types/components/Input/Address/AddressPicker/index.d.ts.map +1 -1
  176. package/dist/types/components/Input/Address/ContractAddressNote.d.ts +9 -0
  177. package/dist/types/components/Input/Address/ContractAddressNote.d.ts.map +1 -0
  178. package/dist/types/components/Input/Address/UrlAddressNote.d.ts +10 -0
  179. package/dist/types/components/Input/Address/UrlAddressNote.d.ts.map +1 -0
  180. package/dist/types/components/Input/Address/index.d.ts +1 -1
  181. package/dist/types/components/Input/Amount/Balance.d.ts +1 -1
  182. package/dist/types/components/Input/Amount/Balance.d.ts.map +1 -1
  183. package/dist/types/components/Input/Amount/ExchangeReceiveAmount.d.ts +11 -0
  184. package/dist/types/components/Input/Amount/ExchangeReceiveAmount.d.ts.map +1 -0
  185. package/dist/types/components/Input/Amount/MinMax.d.ts +1 -1
  186. package/dist/types/components/Input/Amount/PriceImpact.d.ts +3 -6
  187. package/dist/types/components/Input/Amount/PriceImpact.d.ts.map +1 -1
  188. package/dist/types/components/Input/Amount/ReceiveAmount.d.ts +2 -3
  189. package/dist/types/components/Input/Amount/ReceiveAmount.d.ts.map +1 -1
  190. package/dist/types/components/Input/Amount/helpers.d.ts +2 -2
  191. package/dist/types/components/Input/Amount/index.d.ts +1 -1
  192. package/dist/types/components/Input/CexPicker.d.ts +1 -1
  193. package/dist/types/components/Input/DestinationPicker.d.ts +1 -1
  194. package/dist/types/components/Input/DestinationPicker.d.ts.map +1 -1
  195. package/dist/types/components/Input/RoutePicker/Content.d.ts +5 -5
  196. package/dist/types/components/Input/RoutePicker/Content.d.ts.map +1 -1
  197. package/dist/types/components/Input/RoutePicker/RouterPickerWalletConnect.d.ts +1 -1
  198. package/dist/types/components/Input/RoutePicker/RouterPickerWalletConnect.d.ts.map +1 -1
  199. package/dist/types/components/Input/RoutePicker/Routes.d.ts +4 -8
  200. package/dist/types/components/Input/RoutePicker/Routes.d.ts.map +1 -1
  201. package/dist/types/components/Input/RoutePicker/Rows/CollapsableHeader.d.ts +3 -4
  202. package/dist/types/components/Input/RoutePicker/Rows/CollapsableHeader.d.ts.map +1 -1
  203. package/dist/types/components/Input/RoutePicker/Rows/CollapsibleRow.d.ts +6 -5
  204. package/dist/types/components/Input/RoutePicker/Rows/CollapsibleRow.d.ts.map +1 -1
  205. package/dist/types/components/Input/RoutePicker/Rows/StickyHeader.d.ts +3 -4
  206. package/dist/types/components/Input/RoutePicker/Rows/StickyHeader.d.ts.map +1 -1
  207. package/dist/types/components/Input/RoutePicker/Rows/SuggestionsHeader.d.ts +7 -0
  208. package/dist/types/components/Input/RoutePicker/Rows/SuggestionsHeader.d.ts.map +1 -0
  209. package/dist/types/components/Input/RoutePicker/Rows/TitleRow.d.ts +7 -0
  210. package/dist/types/components/Input/RoutePicker/Rows/TitleRow.d.ts.map +1 -0
  211. package/dist/types/components/Input/RoutePicker/Rows/index.d.ts +5 -5
  212. package/dist/types/components/Input/RoutePicker/Rows/index.d.ts.map +1 -1
  213. package/dist/types/components/Input/RoutePicker/TokenTitleDetails.d.ts +18 -0
  214. package/dist/types/components/Input/RoutePicker/TokenTitleDetails.d.ts.map +1 -0
  215. package/dist/types/components/Input/RoutePicker/index.d.ts +1 -1
  216. package/dist/types/components/Input/RoutePicker/index.d.ts.map +1 -1
  217. package/dist/types/components/Input/SourcePicker.d.ts +1 -1
  218. package/dist/types/components/Input/SourceWalletPicker.d.ts.map +1 -1
  219. package/dist/types/components/Menu/MenuList.d.ts.map +1 -1
  220. package/dist/types/components/Menu/index.d.ts.map +1 -1
  221. package/dist/types/components/Modal/modalWithoutAnimation.d.ts +4 -2
  222. package/dist/types/components/Modal/modalWithoutAnimation.d.ts.map +1 -1
  223. package/dist/types/components/Pages/Campaigns/Details/Leaderboard.d.ts +1 -1
  224. package/dist/types/components/Pages/Campaigns/Details/Rewards.d.ts +1 -1
  225. package/dist/types/components/Pages/Campaigns/Details/index.d.ts +1 -2
  226. package/dist/types/components/Pages/Campaigns/Details/index.d.ts.map +1 -1
  227. package/dist/types/components/Pages/Campaigns/index.d.ts +2 -3
  228. package/dist/types/components/Pages/Campaigns/index.d.ts.map +1 -1
  229. package/dist/types/components/Pages/Swap/Form/ExchangeForm.d.ts +3 -1
  230. package/dist/types/components/Pages/Swap/Form/ExchangeForm.d.ts.map +1 -1
  231. package/dist/types/components/Pages/Swap/Form/FeeDetails/Rate.d.ts +7 -6
  232. package/dist/types/components/Pages/Swap/Form/FeeDetails/Rate.d.ts.map +1 -1
  233. package/dist/types/components/Pages/Swap/Form/FeeDetails/ReceiveAmounts.d.ts +2 -2
  234. package/dist/types/components/Pages/Swap/Form/FeeDetails/Refuel.d.ts +1 -2
  235. package/dist/types/components/Pages/Swap/Form/FeeDetails/Refuel.d.ts.map +1 -1
  236. package/dist/types/components/Pages/Swap/Form/FeeDetails/RefuelModal.d.ts +1 -1
  237. package/dist/types/components/Pages/Swap/Form/FeeDetails/Slippage.d.ts +1 -1
  238. package/dist/types/components/Pages/Swap/Form/FeeDetails/SwapQuote/DetailedEstimates.d.ts +3 -2
  239. package/dist/types/components/Pages/Swap/Form/FeeDetails/SwapQuote/DetailedEstimates.d.ts.map +1 -1
  240. package/dist/types/components/Pages/Swap/Form/FeeDetails/SwapQuote/SummaryRow.d.ts +4 -4
  241. package/dist/types/components/Pages/Swap/Form/FeeDetails/SwapQuote/index.d.ts +4 -4
  242. package/dist/types/components/Pages/Swap/Form/FeeDetails/SwapQuote/index.d.ts.map +1 -1
  243. package/dist/types/components/Pages/Swap/Form/FeeDetails/SwapQuote/utils.d.ts +2 -2
  244. package/dist/types/components/Pages/Swap/Form/FeeDetails/index.d.ts +7 -4
  245. package/dist/types/components/Pages/Swap/Form/FeeDetails/index.d.ts.map +1 -1
  246. package/dist/types/components/Pages/Swap/Form/Form.d.ts.map +1 -1
  247. package/dist/types/components/Pages/Swap/Form/FormWrapper.d.ts +1 -1
  248. package/dist/types/components/Pages/Swap/Form/FormWrapper.d.ts.map +1 -1
  249. package/dist/types/components/Pages/Swap/Form/NetworkForm.d.ts +1 -1
  250. package/dist/types/components/Pages/Swap/Form/NetworkForm.d.ts.map +1 -1
  251. package/dist/types/components/Pages/Swap/Form/SecondaryComponents/FormButton.d.ts +1 -1
  252. package/dist/types/components/Pages/Swap/Form/SecondaryComponents/FormButton.d.ts.map +1 -1
  253. package/dist/types/components/Pages/Swap/Form/SecondaryComponents/ReserveGasNote.d.ts +2 -2
  254. package/dist/types/components/Pages/Swap/Form/SecondaryComponents/ReserveGasNote.d.ts.map +1 -1
  255. package/dist/types/components/Pages/Swap/Form/SecondaryComponents/validationError/ContractAddressValidationCache.d.ts +10 -0
  256. package/dist/types/components/Pages/Swap/Form/SecondaryComponents/validationError/ContractAddressValidationCache.d.ts.map +1 -0
  257. package/dist/types/components/Pages/Swap/Form/SecondaryComponents/validationError/ErrorDisplay.d.ts +1 -1
  258. package/dist/types/components/Pages/Swap/Form/SwapFormValues.d.ts +2 -2
  259. package/dist/types/components/Pages/Swap/Withdraw/Failed.d.ts.map +1 -1
  260. package/dist/types/components/Pages/Swap/Withdraw/ManualWithdraw.d.ts +4 -3
  261. package/dist/types/components/Pages/Swap/Withdraw/ManualWithdraw.d.ts.map +1 -1
  262. package/dist/types/components/Pages/Swap/Withdraw/NotFound.d.ts.map +1 -1
  263. package/dist/types/components/Pages/Swap/Withdraw/Processing/Processing.d.ts +1 -1
  264. package/dist/types/components/Pages/Swap/Withdraw/Processing/Processing.d.ts.map +1 -1
  265. package/dist/types/components/Pages/Swap/Withdraw/QuoteUpdate.d.ts +1 -1
  266. package/dist/types/components/Pages/Swap/Withdraw/Summary/Summary.d.ts +1 -1
  267. package/dist/types/components/Pages/Swap/Withdraw/Summary/Summary.d.ts.map +1 -1
  268. package/dist/types/components/Pages/Swap/Withdraw/SwapDetails.d.ts +2 -1
  269. package/dist/types/components/Pages/Swap/Withdraw/SwapDetails.d.ts.map +1 -1
  270. package/dist/types/components/Pages/Swap/Withdraw/SwapQuoteDetails.d.ts +3 -3
  271. package/dist/types/components/Pages/Swap/Withdraw/Wallet/Common/actionMessage.d.ts +6 -0
  272. package/dist/types/components/Pages/Swap/Withdraw/Wallet/Common/actionMessage.d.ts.map +1 -0
  273. package/dist/types/components/Pages/Swap/Withdraw/Wallet/Common/buttons.d.ts +4 -3
  274. package/dist/types/components/Pages/Swap/Withdraw/Wallet/Common/buttons.d.ts.map +1 -1
  275. package/dist/types/components/Pages/Swap/Withdraw/Wallet/Common/sharedTypes.d.ts +2 -1
  276. package/dist/types/components/Pages/Swap/Withdraw/Wallet/Common/sharedTypes.d.ts.map +1 -1
  277. package/dist/types/components/Pages/Swap/Withdraw/Wallet/index.d.ts +2 -1
  278. package/dist/types/components/Pages/Swap/Withdraw/Wallet/index.d.ts.map +1 -1
  279. package/dist/types/components/Pages/Swap/Withdraw/WalletTransferButton.d.ts +2 -1
  280. package/dist/types/components/Pages/Swap/Withdraw/WalletTransferButton.d.ts.map +1 -1
  281. package/dist/types/components/Pages/Swap/Withdraw/WalletTransferContent.d.ts +1 -1
  282. package/dist/types/components/Pages/Swap/Withdraw/Withdraw.d.ts +2 -1
  283. package/dist/types/components/Pages/Swap/Withdraw/Withdraw.d.ts.map +1 -1
  284. package/dist/types/components/Pages/Swap/Withdraw/index.d.ts +1 -2
  285. package/dist/types/components/Pages/Swap/Withdraw/index.d.ts.map +1 -1
  286. package/dist/types/components/Pages/Swap/Withdraw/messages/Message.d.ts.map +1 -1
  287. package/dist/types/components/Pages/Swap/Withdraw/messages/TransactionMessages.d.ts +3 -4
  288. package/dist/types/components/Pages/Swap/Withdraw/messages/TransactionMessages.d.ts.map +1 -1
  289. package/dist/types/components/Pages/SwapHistory/HistorySummary.d.ts +2 -2
  290. package/dist/types/components/Pages/SwapHistory/HistorySummary.d.ts.map +1 -1
  291. package/dist/types/components/Pages/SwapHistory/StatusIcons.d.ts +1 -1
  292. package/dist/types/components/Pages/SwapHistory/SwapDetailsComponent.d.ts +1 -1
  293. package/dist/types/components/Pages/SwapHistory/index.d.ts +3 -1
  294. package/dist/types/components/Pages/SwapHistory/index.d.ts.map +1 -1
  295. package/dist/types/components/Select/Command/commandSelect.d.ts.map +1 -1
  296. package/dist/types/components/Select/Selector/SelectItem.d.ts.map +1 -1
  297. package/dist/types/components/Wallet/WalletComponents/WalletsList.d.ts +3 -3
  298. package/dist/types/components/Wallet/WalletComponents/WalletsList.d.ts.map +1 -1
  299. package/dist/types/components/Wallet/WalletModal/Connector.d.ts +2 -1
  300. package/dist/types/components/Wallet/WalletModal/Connector.d.ts.map +1 -1
  301. package/dist/types/components/Wallet/WalletModal/ConnectorsList.d.ts +1 -1
  302. package/dist/types/components/Wallet/WalletModal/ConnectorsList.d.ts.map +1 -1
  303. package/dist/types/components/Wallet/WalletModal/InstalledExtensionNotFound.d.ts +7 -0
  304. package/dist/types/components/Wallet/WalletModal/InstalledExtensionNotFound.d.ts.map +1 -0
  305. package/dist/types/components/Wallet/WalletModal/LoadingConnect.d.ts +8 -0
  306. package/dist/types/components/Wallet/WalletModal/LoadingConnect.d.ts.map +1 -0
  307. package/dist/types/components/Wallet/WalletModal/MultichainConnectorPicker.d.ts +12 -0
  308. package/dist/types/components/Wallet/WalletModal/MultichainConnectorPicker.d.ts.map +1 -0
  309. package/dist/types/components/Wallet/WalletModal/ProviderPicker.d.ts +8 -0
  310. package/dist/types/components/Wallet/WalletModal/ProviderPicker.d.ts.map +1 -0
  311. package/dist/types/components/Wallet/WalletModal/WalletQrCode.d.ts +6 -0
  312. package/dist/types/components/Wallet/WalletModal/WalletQrCode.d.ts.map +1 -0
  313. package/dist/types/components/Wallet/WalletModal/index.d.ts +2 -1
  314. package/dist/types/components/Wallet/WalletModal/index.d.ts.map +1 -1
  315. package/dist/types/components/Wallet/WalletProviders/index.d.ts +3 -1
  316. package/dist/types/components/Wallet/WalletProviders/index.d.ts.map +1 -1
  317. package/dist/types/components/Widget/Content.d.ts +2 -1
  318. package/dist/types/components/Widget/Content.d.ts.map +1 -1
  319. package/dist/types/components/Widget/Footer.d.ts +2 -1
  320. package/dist/types/components/Widget/Footer.d.ts.map +1 -1
  321. package/dist/types/components/Widget/Index.d.ts +3 -2
  322. package/dist/types/components/Widget/Index.d.ts.map +1 -1
  323. package/dist/types/components/WidgetLoading.d.ts.map +1 -1
  324. package/dist/types/components/shadcn/command.d.ts +9 -52
  325. package/dist/types/components/shadcn/command.d.ts.map +1 -1
  326. package/dist/types/context/ErrorProvider.d.ts +3 -0
  327. package/dist/types/context/ErrorProvider.d.ts.map +1 -0
  328. package/dist/types/context/LayerswapProvider.d.ts +22 -4
  329. package/dist/types/context/LayerswapProvider.d.ts.map +1 -1
  330. package/dist/types/context/callbackProvider.d.ts +7 -10
  331. package/dist/types/context/callbackProvider.d.ts.map +1 -1
  332. package/dist/types/context/resolverContext.d.ts.map +1 -1
  333. package/dist/types/context/swap.d.ts +7 -7
  334. package/dist/types/context/swap.d.ts.map +1 -1
  335. package/dist/types/context/{balanceAccounts.d.ts → swapAccounts.d.ts} +9 -9
  336. package/dist/types/context/swapAccounts.d.ts.map +1 -0
  337. package/dist/types/context/walletProviders.d.ts.map +1 -1
  338. package/dist/types/context/withdrawalContext.d.ts +2 -0
  339. package/dist/types/context/withdrawalContext.d.ts.map +1 -1
  340. package/dist/types/exports/internal.d.ts +9 -7
  341. package/dist/types/exports/internal.d.ts.map +1 -1
  342. package/dist/types/helpers/accountSelectHelper.d.ts +1 -1
  343. package/dist/types/helpers/balanceHelper.d.ts +2 -2
  344. package/dist/types/helpers/filterSourceNetworks.d.ts +4 -0
  345. package/dist/types/helpers/filterSourceNetworks.d.ts.map +1 -0
  346. package/dist/types/helpers/getSettings/getSettings.d.ts +1 -1
  347. package/dist/types/helpers/getSettings/getSettings.d.ts.map +1 -1
  348. package/dist/types/helpers/routes.d.ts +1 -1
  349. package/dist/types/helpers/routes.d.ts.map +1 -1
  350. package/dist/types/helpers/tokenHelper.d.ts +2 -2
  351. package/dist/types/hooks/useAllWithdrawalBalances.d.ts +2 -1
  352. package/dist/types/hooks/useAllWithdrawalBalances.d.ts.map +1 -1
  353. package/dist/types/hooks/useConnectors.d.ts +28 -0
  354. package/dist/types/hooks/useConnectors.d.ts.map +1 -0
  355. package/dist/types/hooks/useFee.d.ts +1 -1
  356. package/dist/types/hooks/useFormRoutes.d.ts +2 -3
  357. package/dist/types/hooks/useFormRoutes.d.ts.map +1 -1
  358. package/dist/types/hooks/useFormValidation.d.ts +2 -1
  359. package/dist/types/hooks/useFormValidation.d.ts.map +1 -1
  360. package/dist/types/hooks/useSwapHistoryData.d.ts +2 -2
  361. package/dist/types/hooks/useTransfer.d.ts +5 -0
  362. package/dist/types/hooks/useTransfer.d.ts.map +1 -0
  363. package/dist/types/hooks/useWallet.d.ts +3 -3
  364. package/dist/types/hooks/useWallet.d.ts.map +1 -1
  365. package/dist/types/lib/AppSettings.d.ts +25 -16
  366. package/dist/types/lib/AppSettings.d.ts.map +1 -1
  367. package/dist/types/lib/ErrorHandler.d.ts +3 -0
  368. package/dist/types/lib/ErrorHandler.d.ts.map +1 -0
  369. package/dist/types/lib/address/contractAddressResolver.d.ts +7 -0
  370. package/dist/types/lib/address/contractAddressResolver.d.ts.map +1 -0
  371. package/dist/types/lib/apiClients/layerSwapApiClient.d.ts +1 -9
  372. package/dist/types/lib/apiClients/layerSwapApiClient.d.ts.map +1 -1
  373. package/dist/types/lib/balances/balanceResolver.d.ts +3 -3
  374. package/dist/types/lib/balances/balanceResolver.d.ts.map +1 -1
  375. package/dist/types/lib/balances/errorUtils.d.ts +12 -0
  376. package/dist/types/lib/balances/errorUtils.d.ts.map +1 -0
  377. package/dist/types/lib/balances/helpers.d.ts +1 -1
  378. package/dist/types/lib/balances/nodeErrorClassifier.d.ts +4 -0
  379. package/dist/types/lib/balances/nodeErrorClassifier.d.ts.map +1 -0
  380. package/dist/types/lib/balances/useBalance.d.ts +1 -1
  381. package/dist/types/lib/fees.d.ts +16 -0
  382. package/dist/types/lib/fees.d.ts.map +1 -1
  383. package/dist/types/lib/gases/gasResolver.d.ts +2 -2
  384. package/dist/types/lib/gases/useSWRGas.d.ts +3 -3
  385. package/dist/types/lib/generateSwapInitialValues.d.ts +1 -1
  386. package/dist/types/lib/isNewListed.d.ts +4 -0
  387. package/dist/types/lib/isNewListed.d.ts.map +1 -0
  388. package/dist/types/lib/knownIds.d.ts +1 -0
  389. package/dist/types/lib/knownIds.d.ts.map +1 -1
  390. package/dist/types/lib/nft/nftBalanceResolver.d.ts +1 -1
  391. package/dist/types/lib/resolvers/resolverService.d.ts +11 -5
  392. package/dist/types/lib/resolvers/resolverService.d.ts.map +1 -1
  393. package/dist/types/lib/transfers/index.d.ts +2 -0
  394. package/dist/types/lib/transfers/index.d.ts.map +1 -0
  395. package/dist/types/lib/transfers/transferResolver.d.ts +7 -0
  396. package/dist/types/lib/transfers/transferResolver.d.ts.map +1 -0
  397. package/dist/types/stores/balanceStore.d.ts +3 -0
  398. package/dist/types/stores/balanceStore.d.ts.map +1 -1
  399. package/dist/types/stores/contractAddressStore.d.ts +43 -0
  400. package/dist/types/stores/contractAddressStore.d.ts.map +1 -0
  401. package/dist/types/stores/logStore.d.ts +8 -0
  402. package/dist/types/stores/logStore.d.ts.map +1 -0
  403. package/dist/types/stores/walletStore.d.ts +1 -1
  404. package/dist/types/types/balance.d.ts +2 -2
  405. package/dist/types/types/balance.d.ts.map +1 -1
  406. package/dist/types/types/contract.d.ts +6 -0
  407. package/dist/types/types/contract.d.ts.map +1 -0
  408. package/dist/types/types/gas.d.ts +2 -2
  409. package/dist/types/types/index.d.ts +2 -0
  410. package/dist/types/types/index.d.ts.map +1 -1
  411. package/dist/types/types/logEvents.d.ts +59 -0
  412. package/dist/types/types/logEvents.d.ts.map +1 -0
  413. package/dist/types/types/nft.d.ts +1 -1
  414. package/dist/types/types/transfer.d.ts +7 -2
  415. package/dist/types/types/transfer.d.ts.map +1 -1
  416. package/dist/types/types/wallet.d.ts +29 -8
  417. package/dist/types/types/wallet.d.ts.map +1 -1
  418. package/package.json +3 -3
  419. package/dist/esm/components/Icons/Wallets/Keplr.js +0 -3
  420. package/dist/esm/components/Modal/popover.js +0 -15
  421. package/dist/esm/components/Wallet/WalletModal/utils.js +0 -23
  422. package/dist/esm/helpers/querryHelper.js +0 -13
  423. package/dist/esm/lib/logError.js +0 -17
  424. package/dist/esm/lib/sorting.js +0 -63
  425. package/dist/types/components/Icons/Wallets/Keplr.d.ts +0 -4
  426. package/dist/types/components/Icons/Wallets/Keplr.d.ts.map +0 -1
  427. package/dist/types/components/Modal/popover.d.ts +0 -12
  428. package/dist/types/components/Modal/popover.d.ts.map +0 -1
  429. package/dist/types/components/Wallet/WalletModal/utils.d.ts +0 -2
  430. package/dist/types/components/Wallet/WalletModal/utils.d.ts.map +0 -1
  431. package/dist/types/context/balanceAccounts.d.ts.map +0 -1
  432. package/dist/types/helpers/querryHelper.d.ts +0 -3
  433. package/dist/types/helpers/querryHelper.d.ts.map +0 -1
  434. package/dist/types/lib/logError.d.ts +0 -3
  435. package/dist/types/lib/logError.d.ts.map +0 -1
  436. package/dist/types/lib/sorting.d.ts +0 -22
  437. package/dist/types/lib/sorting.d.ts.map +0 -1
@@ -2,13 +2,15 @@ import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-run
2
2
  import { useCallback, useEffect, useState } from "react";
3
3
  import { WithdrawalProvider } from "../../../../../context/withdrawalContext";
4
4
  import useWallet from "../../../../../hooks/useWallet";
5
- import { useSelectedAccount } from "../../../../../context/balanceAccounts";
5
+ import { useSelectedAccount } from "../../../../../context/swapAccounts";
6
6
  import { ChangeNetworkButton, ConnectWalletButton, SendTransactionButton } from "./Common/buttons";
7
- import TransactionMessages, { TransactionMessageType } from "../messages/TransactionMessages";
8
7
  import { useInitialSettings, useSettingsState } from "../../../../../context/settings";
9
8
  import WalletIcon from "../../../../../components/Icons/WalletIcon";
10
9
  import { useBalance } from "../../../../../lib/balances/useBalance";
11
- export const WalletTransferAction = ({ swapData, swapId, refuel, onWalletWithdrawalSuccess }) => {
10
+ import { ActionMessage } from "./Common/actionMessage";
11
+ import { ActionMessages } from "../messages/TransactionMessages";
12
+ import { useTransfer } from "../../../../../hooks/useTransfer";
13
+ export const WalletTransferAction = ({ swapData, swapId, refuel, onWalletWithdrawalSuccess, onCancelWithdrawal }) => {
12
14
  const { source_network } = swapData;
13
15
  const { provider, wallets } = useWallet(source_network, "withdrawal");
14
16
  const selectedSourceAccount = useSelectedAccount("from", source_network?.name);
@@ -19,7 +21,7 @@ export const WalletTransferAction = ({ swapData, swapId, refuel, onWalletWithdra
19
21
  }
20
22
  }, [selectedSourceAccount?.address, source_network?.name]);
21
23
  return _jsx(_Fragment, { children: swapData &&
22
- _jsx(WithdrawalProvider, { onWalletWithdrawalSuccess: onWalletWithdrawalSuccess, children: _jsx(WalletWithdrawal, { swapId: swapId, swapBasicData: swapData, refuel: refuel }) }) });
24
+ _jsx(WithdrawalProvider, { onWalletWithdrawalSuccess: onWalletWithdrawalSuccess, onCancelWithdrawal: onCancelWithdrawal, children: _jsx(WalletWithdrawal, { swapId: swapId, swapBasicData: swapData, refuel: refuel }) }) });
23
25
  };
24
26
  export const WalletWithdrawal = ({ swapBasicData, refuel, swapId }) => {
25
27
  const { source_network, destination_network, destination_address } = swapBasicData;
@@ -27,7 +29,7 @@ export const WalletWithdrawal = ({ swapBasicData, refuel, swapId }) => {
27
29
  const { wallets, provider } = useWallet(source_network, "withdrawal");
28
30
  const { sameAccountNetwork } = useInitialSettings();
29
31
  const wallet = wallets.find(w => w.id === selectedSourceAccount?.id && w.withdrawalSupportedNetworks?.includes(source_network?.name));
30
- const networkChainId = Number(source_network?.chain_id) ?? undefined;
32
+ const networkChainId = source_network?.chain_id ?? undefined;
31
33
  const [savedTransactionHash, setSavedTransactionHash] = useState();
32
34
  useEffect(() => {
33
35
  if (!swapId)
@@ -54,16 +56,16 @@ export const WalletWithdrawal = ({ swapBasicData, refuel, swapId }) => {
54
56
  if ((source_network?.name.toLowerCase() === sameAccountNetwork?.toLowerCase() || destination_network?.name.toLowerCase() === sameAccountNetwork?.toLowerCase())
55
57
  && (selectedSourceAccount?.address && destination_address && selectedSourceAccount?.address.toLowerCase() !== destination_address?.toLowerCase())) {
56
58
  const network = source_network?.name.toLowerCase() === sameAccountNetwork?.toLowerCase() ? source_network : destination_network;
57
- return _jsx(TransactionMessages.DifferentAccountsNotAllowedError, { network: network?.display_name });
59
+ return _jsx(ActionMessages.DifferentAccountsNotAllowedError, { network: network?.display_name });
58
60
  }
59
61
  if (!wallet) {
60
62
  return _jsx(ConnectWalletButton, {});
61
63
  }
62
- else if (wallet.chainId && wallet.chainId !== networkChainId && source_network) {
63
- return _jsx(ChangeNetworkButton, { chainId: networkChainId, network: source_network });
64
+ else if (wallet.chainId && wallet.chainId != networkChainId && source_network) {
65
+ return _jsx(ChangeNetworkButton, { chainId: Number(networkChainId), network: source_network });
64
66
  }
65
67
  else {
66
- return _jsx(TransferTokenButton, { swapData: swapBasicData, refuel: refuel, chainId: networkChainId, savedTransactionHash: savedTransactionHash });
68
+ return _jsx(TransferTokenButton, { swapData: swapBasicData, refuel: refuel, chainId: Number(networkChainId), savedTransactionHash: savedTransactionHash });
67
69
  }
68
70
  };
69
71
  const TransferTokenButton = ({ savedTransactionHash, chainId, swapData, refuel }) => {
@@ -76,7 +78,8 @@ const TransferTokenButton = ({ savedTransactionHash, chainId, swapData, refuel }
76
78
  const { provider, wallets } = useWallet(swapData.source_network, "withdrawal");
77
79
  const { balances } = useBalance(selectedSourceAccount?.address, networkWithTokens);
78
80
  const wallet = wallets.find(w => w.id === selectedSourceAccount?.id);
79
- const clickHandler = useCallback(async ({ amount, callData, depositAddress }) => {
81
+ const { executeTransfer } = useTransfer();
82
+ const clickHandler = useCallback(async ({ amount, callData, depositAddress, swapId }) => {
80
83
  setButtonClicked(true);
81
84
  setError(undefined);
82
85
  setLoading(true);
@@ -87,22 +90,47 @@ const TransferTokenButton = ({ savedTransactionHash, chainId, swapData, refuel }
87
90
  throw new Error('Missing amount');
88
91
  if (!wallet)
89
92
  throw new Error('No selected account');
90
- if (!provider?.transfer)
91
- throw new Error('No provider transfer');
92
- const tx = await provider.transfer({
93
- token: swapData.source_token,
94
- amount,
95
- depositAddress,
96
- callData,
97
- selectedWallet: wallet,
98
- network: swapData.source_network,
99
- balances: balances,
100
- userDestinationAddress: swapData.destination_address,
101
- });
102
- if (!tx)
103
- throw new Error('No transaction');
104
- if (tx) {
105
- return tx;
93
+ try {
94
+ const tx = await executeTransfer({
95
+ token: swapData.source_token,
96
+ amount,
97
+ depositAddress,
98
+ callData,
99
+ selectedWallet: wallet,
100
+ network: swapData.source_network,
101
+ balances: balances,
102
+ userDestinationAddress: swapData.destination_address,
103
+ swapId,
104
+ }, wallet);
105
+ if (!tx)
106
+ throw new Error('No transaction');
107
+ if (tx) {
108
+ return tx;
109
+ }
110
+ }
111
+ catch (e) {
112
+ if (typeof e === 'string' && e?.includes('No transfer provider found for network:')) {
113
+ if (!provider?.transfer)
114
+ throw new Error('No provider transfer');
115
+ const tx = await provider.transfer({
116
+ token: swapData.source_token,
117
+ amount,
118
+ depositAddress,
119
+ callData,
120
+ selectedWallet: wallet,
121
+ network: swapData.source_network,
122
+ balances: balances,
123
+ userDestinationAddress: swapData.destination_address,
124
+ }, wallet);
125
+ if (!tx)
126
+ throw new Error('No transaction');
127
+ if (tx) {
128
+ return tx;
129
+ }
130
+ }
131
+ else {
132
+ throw e;
133
+ }
106
134
  }
107
135
  }
108
136
  catch (e) {
@@ -110,45 +138,8 @@ const TransferTokenButton = ({ savedTransactionHash, chainId, swapData, refuel }
110
138
  setError(e);
111
139
  throw e;
112
140
  }
113
- }, [provider, chainId, selectedSourceAccount?.address]);
141
+ }, [executeTransfer, chainId, selectedSourceAccount?.address, wallet, swapData, balances]);
114
142
  return _jsxs("div", { className: "w-full space-y-3 flex flex-col justify-between h-full text-primary-text", children: [buttonClicked &&
115
- _jsx(TransactionMessage, { error: error, isLoading: loading }), !loading &&
143
+ _jsx(ActionMessage, { error: error, isLoading: loading }), !loading &&
116
144
  _jsx(SendTransactionButton, { onClick: clickHandler, icon: _jsx(WalletIcon, { className: "stroke-2 w-6 h-6" }), error: !!error && buttonClicked, swapData: swapData, refuel: refuel })] });
117
145
  };
118
- const TransactionMessage = ({ error, isLoading }) => {
119
- if (isLoading) {
120
- return _jsx(TransactionMessages.ConfirmTransactionMessage, {});
121
- }
122
- else if (error.name === TransactionMessageType.TransactionRejected) {
123
- return _jsx(TransactionMessages.TransactionRejectedMessage, {});
124
- }
125
- else if (error.name === TransactionMessageType.TransactionFailed) {
126
- return _jsx(TransactionMessages.TransactionFailedMessage, {});
127
- }
128
- else if (error.name === TransactionMessageType.InsufficientFunds) {
129
- return _jsx(TransactionMessages.InsufficientFundsMessage, {});
130
- }
131
- else if (error.name === TransactionMessageType.WaletMismatch) {
132
- return _jsx(TransactionMessages.WaletMismatchMessage, { address: error.message });
133
- }
134
- else if (error.name === TransactionMessageType.DifferentAccountsNotAllowedError) {
135
- return _jsx(TransactionMessages.DifferentAccountsNotAllowedError, { network: error.message });
136
- }
137
- else if (error) {
138
- const swapWithdrawalError = new Error(error.message);
139
- swapWithdrawalError.name = `SwapWithdrawalError`;
140
- swapWithdrawalError.cause = error;
141
- // posthog.captureException('$exception', {
142
- // name: swapWithdrawalError.name,
143
- // message: swapWithdrawalError.message,
144
- // $layerswap_exception_type: "Swap Withdrawal Error",
145
- // stack: swapWithdrawalError.stack,
146
- // cause: swapWithdrawalError.cause,
147
- // where: 'swapWithdrawalError',
148
- // severity: 'error',
149
- // });
150
- return _jsx(TransactionMessages.UnexpectedErrorMessage, { message: error.message });
151
- }
152
- else
153
- return _jsx(_Fragment, {});
154
- };
@@ -1,6 +1,6 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
2
  import { WalletTransferAction } from './Wallet';
3
- const WalletTransferButton = ({ swapBasicData: swapData, swapId, refuel, balanceWarning, onWalletWithdrawalSuccess }) => {
4
- return _jsx(_Fragment, { children: _jsx("div", { className: 'rounded-2xl bg-secondary-500 divide-y divide-secondary-300 p-3', children: _jsxs("div", { className: 'flex flex-col gap-2.5', children: [balanceWarning, _jsx(WalletTransferAction, { swapData: swapData, swapId: swapId, refuel: refuel, onWalletWithdrawalSuccess: onWalletWithdrawalSuccess })] }) }) });
3
+ const WalletTransferButton = ({ swapBasicData: swapData, swapId, refuel, balanceWarning, onWalletWithdrawalSuccess, onCancelWithdrawal }) => {
4
+ return _jsx(_Fragment, { children: _jsxs("div", { className: 'space-y-2.5', children: [balanceWarning, _jsx(WalletTransferAction, { swapData: swapData, swapId: swapId, refuel: refuel, onWalletWithdrawalSuccess: onWalletWithdrawalSuccess, onCancelWithdrawal: onCancelWithdrawal })] }) });
5
5
  };
6
6
  export default WalletTransferButton;
@@ -7,7 +7,7 @@ import { truncateDecimals } from '../../../../components/utils/RoundDecimals';
7
7
  import VaulDrawer from '../../../../components/Modal/vaulModal';
8
8
  import { useSettingsState } from '../../../../context/settings';
9
9
  import WalletsList from '../../../../components/Wallet/WalletComponents/WalletsList';
10
- import { useSelectedAccount, useUpdateBalanceAccount } from '../../../../context/balanceAccounts';
10
+ import { useSelectedAccount, useSelectSwapAccount } from '../../../../context/swapAccounts';
11
11
  import { useBalance } from '../../../../lib/balances/useBalance';
12
12
  const WalletTransferContent = ({ openModal, setOpenModal, swapData }) => {
13
13
  const { networks } = useSettingsState();
@@ -16,7 +16,7 @@ const WalletTransferContent = ({ openModal, setOpenModal, swapData }) => {
16
16
  const { provider } = useWallet(source_network, 'withdrawal');
17
17
  const selectedSourceAccount = useSelectedAccount("from", source_network?.name);
18
18
  const availableWallets = provider?.connectedWallets?.filter(c => !c.isNotAvailable) || [];
19
- const selectSourceAccount = useUpdateBalanceAccount("from");
19
+ const selectSourceAccount = useSelectSwapAccount("from");
20
20
  const changeWallet = async (props) => {
21
21
  selectSourceAccount({
22
22
  id: props.walletId,
@@ -9,9 +9,9 @@ import { SwapQuoteDetails } from './SwapQuoteDetails';
9
9
  import WalletTransferButton from './WalletTransferButton';
10
10
  import { useBalance } from '../../../../lib/balances/useBalance';
11
11
  import { useSettingsState } from '../../../../context/settings';
12
- import { useSelectedAccount } from '../../../../context/balanceAccounts';
12
+ import { useSelectedAccount } from '../../../../context/swapAccounts';
13
13
  import { ErrorDisplay } from '../../../../components/Pages/Swap/Form/SecondaryComponents/validationError/ErrorDisplay';
14
- const Withdraw = ({ type, onWalletWithdrawalSuccess, partner }) => {
14
+ const Withdraw = ({ type, onWalletWithdrawalSuccess, onCancelWithdrawal, partner }) => {
15
15
  const { swapBasicData, swapDetails, quote, refuel, quoteIsLoading, quoteError } = useSwapDataState();
16
16
  const { appName, signature } = useInitialSettings();
17
17
  const sourceIsImmutableX = swapBasicData?.source_network.name?.toUpperCase() === KnownInternalNames.Networks.ImmutableXMainnet?.toUpperCase()
@@ -30,7 +30,7 @@ const Withdraw = ({ type, onWalletWithdrawalSuccess, partner }) => {
30
30
  && Number(walletBalanceAmount) < Number(swapBasicData?.requested_amount);
31
31
  if (swapBasicData?.use_deposit_address === false) {
32
32
  withdraw = {
33
- footer: _jsx(WalletTransferButton, { swapBasicData: swapBasicData, swapId: swapDetails?.id, refuel: !!refuel, onWalletWithdrawalSuccess: onWalletWithdrawalSuccess, balanceWarning: showInsufficientBalanceWarning ? _jsx(ErrorDisplay, { errorName: 'insufficientFunds' }) : null })
33
+ footer: _jsx(WalletTransferButton, { swapBasicData: swapBasicData, swapId: swapDetails?.id, refuel: !!refuel, onWalletWithdrawalSuccess: onWalletWithdrawalSuccess, balanceWarning: showInsufficientBalanceWarning ? _jsx(ErrorDisplay, { errorName: 'insufficientFunds' }) : null, onCancelWithdrawal: onCancelWithdrawal })
34
34
  };
35
35
  }
36
36
  if (isImtblMarketplace) {
@@ -5,18 +5,19 @@ import { Widget } from "../../../Widget/Index";
5
5
  import { SwapDataProvider, useSwapDataState, useSwapDataUpdate } from "../../../../context/swap";
6
6
  import NotFound from "./NotFound";
7
7
  import SwapDetails from "./SwapDetails";
8
- import { LayerswapProvider } from "../../../../context/LayerswapProvider";
8
+ import { useCallbacks } from "../../../../context/callbackProvider";
9
9
  const Comp = () => {
10
10
  const { swapBasicData, swapApiError, swapId } = useSwapDataState();
11
11
  const { mutateSwap } = useSwapDataUpdate();
12
+ const { onBackClick } = useCallbacks();
12
13
  useEffect(() => {
13
14
  mutateSwap();
14
15
  }, []);
15
16
  if (!swapBasicData)
16
- return _jsx(Widget, { children: _jsx("div", { className: `rounded-lg w-full overflow-hidden relative h-[548px]`, children: swapApiError &&
17
+ return _jsx(Widget, { goBack: onBackClick, children: _jsx("div", { className: `rounded-lg w-full overflow-hidden relative h-[548px]`, children: swapApiError &&
17
18
  _jsx(NotFound, { swapId: swapId }) }) });
18
19
  return (_jsx(SwapDetails, { type: "widget" }));
19
20
  };
20
- export const SwapWithdrawal = (props) => {
21
- return (_jsx(LayerswapProvider, { ...props, children: _jsx(SwapDataProvider, { children: _jsx(Comp, {}) }) }));
21
+ export const SwapWithdrawal = () => {
22
+ return (_jsx(SwapDataProvider, { children: _jsx(Comp, {}) }));
22
23
  };
@@ -3,9 +3,9 @@ import { ChevronDown } from "lucide-react";
3
3
  import FailIcon from "../../../../Icons/FailIcon";
4
4
  import { Accordion, AccordionContent, AccordionItem, AccordionTrigger } from "../../../../../components/shadcn/accordion";
5
5
  const WalletMessage = ({ header, details, status, showInModal }) => {
6
- return _jsxs("div", { className: "flex text-center space-x-2", children: [_jsx("div", { className: 'relative -mt-0.5', children: status === "error" ?
7
- _jsx(FailIcon, { className: "relative top-0 left-0 w-6 h-6 md:w-7 md:h-7" })
8
- :
9
- _jsxs(_Fragment, { children: [_jsx("div", { className: 'absolute top-1 left-1 w-4 h-4 md:w-5 md:h-5 opacity-40 bg bg-primary rounded-full animate-ping' }), _jsx("div", { className: 'absolute top-2 left-2 w-2 h-2 md:w-3 md:h-3 opacity-40 bg bg-primary rounded-full animate-ping' }), _jsx("div", { className: 'relative top-0 left-0 w-6 h-6 md:w-7 md:h-7 scale-50 bg bg-primary rounded-full ' })] }) }), showInModal ? (_jsx("div", { className: "text-left space-y-1 w-full max-w-2xl", children: _jsx(Accordion, { type: "single", collapsible: true, children: _jsxs(AccordionItem, { value: "wallet-message", children: [_jsxs(AccordionTrigger, { className: "flex justify-between w-full items-center", children: [_jsx("p", { className: "text-md font-semibold self-center text-primary-text", children: header }), _jsx(ChevronDown, { className: "h-4 w-4 shrink-0 text-primary-text transition-transform duration-200 data-[state=open]:rotate-180" })] }), _jsx(AccordionContent, { children: _jsx("div", { className: "text-left space-y-1", children: _jsx("p", { className: "text-sm text-secondary-text wrap-anywhere whitespace-pre-wrap", children: details }) }) })] }) }) })) : (_jsxs("div", { className: "text-left space-y-1", children: [_jsx("p", { className: "text-md font-semibold self-center text-primary-text", children: header }), _jsx("p", { className: `text-sm text-secondary-text ${details.length > 200 ? "break-words" : ""}`, children: details })] }))] });
6
+ return _jsx(_Fragment, { children: _jsx("div", { className: "px-2 py-3 rounded-2xl bg-secondary-400", children: _jsxs("div", { className: "flex items-start gap-2 relative", children: [_jsx("span", { className: "shrink-0 p-0.5", children: status === "error" ?
7
+ _jsx(FailIcon, { className: "relative top-0 left-0 h-5 w-5" })
8
+ :
9
+ _jsxs(_Fragment, { children: [_jsx("div", { className: 'absolute top-1.5 left-1.5 w-4 h-4 md:w-5 md:h-5 opacity-40 bg bg-primary rounded-full animate-ping' }), _jsx("div", { className: 'absolute top-2.5 left-2.5 w-2 h-2 md:w-3 md:h-3 opacity-40 bg bg-primary rounded-full animate-ping' }), _jsx("div", { className: 'relative top-0 left-0 w-6 h-6 md:w-7 md:h-7 scale-50 bg bg-primary rounded-full ' })] }) }), showInModal ? (_jsx("div", { className: "text-left space-y-1 w-full max-w-2xl", children: _jsx(Accordion, { type: "single", collapsible: true, children: _jsxs(AccordionItem, { value: "wallet-message", children: [_jsxs(AccordionTrigger, { className: "flex justify-between w-full items-center mt-0.5", children: [_jsx("p", { className: "text-primary-text font-medium leading-4 text-base mt-0.5", children: header }), _jsx(ChevronDown, { className: "h-4 w-4 shrink-0 text-primary-text transition-transform duration-200 data-[state=open]:rotate-180" })] }), _jsx(AccordionContent, { children: _jsx("div", { className: "text-left space-y-1", children: _jsx("p", { className: "text-sm text-secondary-text wrap-anywhere whitespace-pre-wrap", children: details }) }) })] }) }) })) : (_jsxs("div", { className: "flex flex-col gap-1", children: [_jsx("p", { className: "text-primary-text font-medium leading-4 text-base mt-0.5", children: header }), details ? _jsx("p", { className: "text-secondary-text text-sm leading-[18px]", children: details }) : null] }))] }) }) });
10
10
  };
11
11
  export default WalletMessage;
@@ -1,7 +1,7 @@
1
1
  import { jsx as _jsx } from "react/jsx-runtime";
2
2
  import WalletMessage from "./Message";
3
3
  import shortenAddress from "../../../../../components/utils/ShortenAddress";
4
- const ConfirmTransactionMessage = () => {
4
+ const ConfirmActionMessage = () => {
5
5
  return _jsx(WalletMessage, { status: "pending", header: 'Confirm in wallet', details: 'Please confirm the transaction in your wallet' });
6
6
  };
7
7
  const TransactionInProgressMessage = () => {
@@ -28,8 +28,8 @@ const SwapErrorMessage = ({ message }) => {
28
28
  const UnexpectedErrorMessage = ({ message }) => {
29
29
  return _jsx(WalletMessage, { status: "error", header: 'Unexpected error', details: message, showInModal: true });
30
30
  };
31
- const ActionMessages = {
32
- ConfirmTransactionMessage,
31
+ export const ActionMessages = {
32
+ ConfirmActionMessage,
33
33
  TransactionInProgressMessage,
34
34
  InsufficientFundsMessage,
35
35
  TransactionRejectedMessage,
@@ -39,15 +39,14 @@ const ActionMessages = {
39
39
  UnexpectedErrorMessage,
40
40
  DifferentAccountsNotAllowedError
41
41
  };
42
- export var TransactionMessageType;
43
- (function (TransactionMessageType) {
44
- TransactionMessageType["ConfirmTransaction"] = "ConfirmTransaction";
45
- TransactionMessageType["TransactionInProgress"] = "TransactionInProgress";
46
- TransactionMessageType["InsufficientFunds"] = "InsufficientFunds";
47
- TransactionMessageType["TransactionRejected"] = "TransactionRejected";
48
- TransactionMessageType["WaletMismatch"] = "WaletMismatch";
49
- TransactionMessageType["TransactionFailed"] = "TransactionFailed";
50
- TransactionMessageType["UnexpectedErrorMessage"] = "UnexpectedErrorMessage";
51
- TransactionMessageType["DifferentAccountsNotAllowedError"] = "DifferentAccountsNotAllowedError";
52
- })(TransactionMessageType || (TransactionMessageType = {}));
53
- export default ActionMessages;
42
+ export var ActionMessageType;
43
+ (function (ActionMessageType) {
44
+ ActionMessageType["ConfirmTransaction"] = "ConfirmTransaction";
45
+ ActionMessageType["TransactionInProgress"] = "TransactionInProgress";
46
+ ActionMessageType["InsufficientFunds"] = "InsufficientFunds";
47
+ ActionMessageType["TransactionRejected"] = "TransactionRejected";
48
+ ActionMessageType["WaletMismatch"] = "WaletMismatch";
49
+ ActionMessageType["TransactionFailed"] = "TransactionFailed";
50
+ ActionMessageType["UnexpectedErrorMessage"] = "UnexpectedErrorMessage";
51
+ ActionMessageType["DifferentAccountsNotAllowedError"] = "DifferentAccountsNotAllowedError";
52
+ })(ActionMessageType || (ActionMessageType = {}));
@@ -46,7 +46,7 @@ const HistoryList = ({ onNewTransferClick }) => {
46
46
  ], [showAll, pendingSwaps, flattenedSwaps]);
47
47
  const rowVirtualizer = useVirtualizer({
48
48
  count: (list?.length || 0),
49
- getScrollElement: () => window.document.getElementById('virtualListContainer'),
49
+ getScrollElement: () => parentRef.current,
50
50
  estimateSize: () => 35,
51
51
  });
52
52
  const items = rowVirtualizer.getVirtualItems();
@@ -85,7 +85,7 @@ const HistoryList = ({ onNewTransferClick }) => {
85
85
  }) }) }) }) }) }));
86
86
  };
87
87
  const BlankHistory = ({ onNewTransferClick }) => {
88
- return _jsxs("div", { className: "w-full h-full min-h-[inherit] flex flex-col justify-between items-center space-y-10", children: [_jsx("div", {}), _jsxs("div", { className: "w-full h-full flex flex-col justify-center items-center ", children: [_jsx(HistoryItemSceleton, { className: "scale-[.63] w-full shadow-lg mr-7" }), _jsx(HistoryItemSceleton, { className: "scale-[.63] -mt-12 shadow-card ml-7 w-full" }), _jsxs("div", { className: "mt-2 text-center space-y-2", children: [_jsx("h1", { className: "text-secondary-text text-[28px] font-bold tracking-wide", children: "No Transfer History" }), _jsx("p", { className: "max-w-xs text-center text-primary-text-tertiary text-base font-normal mx-auto", children: "Transfers you make with this wallet/account will appear here after excution." })] }), _jsxs("button", { type: 'button', onClick: onNewTransferClick, className: "mt-10 flex items-center gap-2 text-base text-secondary-text font-normal bg-secondary-500 hover:bg-secondary-400 py-2 px-3 rounded-lg", children: [_jsx(Plus, { className: "w-4 h-4" }), _jsx("p", { children: "New Transfer" })] })] })] });
88
+ return _jsxs("div", { className: "w-full h-full min-h-[inherit] flex flex-col justify-between items-center space-y-10", children: [_jsx("div", {}), _jsxs("div", { className: "w-full h-full flex flex-col justify-center items-center ", children: [_jsx(HistoryItemSceleton, { className: "scale-[.63] w-full shadow-card mr-7" }), _jsx(HistoryItemSceleton, { className: "scale-[.63] -mt-12 shadow-card ml-7 w-full" }), _jsxs("div", { className: "mt-2 text-center space-y-2", children: [_jsx("h1", { className: "text-secondary-text text-[28px] font-bold tracking-wide", children: "No Transfer History" }), _jsx("p", { className: "max-w-xs text-center text-primary-text-tertiary text-base font-normal mx-auto", children: "Transfers you make with this wallet/account will appear here after excution." })] }), _jsxs("button", { type: 'button', onClick: onNewTransferClick, className: "mt-10 flex items-center gap-2 text-base text-secondary-text font-normal bg-secondary-500 hover:bg-secondary-400 py-2 px-3 rounded-lg", children: [_jsx(Plus, { className: "w-4 h-4" }), _jsx("p", { children: "New Transfer" })] })] })] });
89
89
  };
90
90
  const ConnectWalletCard = () => {
91
91
  return _jsxs("div", { className: "w-full h-full flex flex-col justify-between items-center space-y-10", children: [_jsxs("div", { className: "flex flex-col items-center justify-center text-center w-full h-full", children: [_jsx(HistoryItemSceleton, { className: "scale-[.63] w-full shadow-card mr-7" }), _jsx(HistoryItemSceleton, { className: "scale-[.63] -mt-12 shadow-card ml-7 w-full" }), _jsxs("div", { className: "mt-4 text-center space-y-3", children: [_jsx("h1", { className: "text-secondary-text text-[28px] font-bold tracking-wide", children: "Connect wallet" }), _jsx("p", { className: "max-w-xs text-center text-primary-text-tertiary text-base font-normal mx-auto", children: "In order to see your transfer history you need to connect your wallet." })] })] }), _jsx("div", { className: "flex flex-col items-center w-full space-y-3", children: _jsx(ConnectButton, { className: "w-full", children: _jsx("div", { className: "w-full py-2.5 px-3 text-xl font-semibold bg-primary-text-tertiary hover:opacity-90 duration-200 active:opacity-80 transition-opacity rounded-lg text-secondary-900", children: _jsx("div", { className: "text-center text-xl font-semibold", children: "Connect Wallet" }) }) }) })] });
@@ -34,7 +34,7 @@ const HistorySummary = ({ swapResponse, wallets, className }) => {
34
34
  sourceAccountAddress = shortenEmail(exchange_account_name, 10);
35
35
  }
36
36
  const destAddress = (hideAddress && hideTo && account) ? account : destination_address;
37
- return (source_token && _jsxs(_Fragment, { children: [_jsx("div", { className: `${className || ""} bg-secondary-500 relative z-10 w-full rounded-xl overflow-hidden hover:bg-secondary-400`, children: _jsxs("div", { className: "grid grid-cols-12 items-center gap-2 relative z-50", children: [_jsxs("div", { className: "col-span-6 flex items-center gap-2 p-3", children: [_jsxs("div", { className: "w-8 h-8 relative", children: [_jsx(ImageWithFallback, { src: source_token.logo, alt: `${source_token.symbol} logo`, width: 30, height: 30, className: "rounded-full" }), source?.logo && (_jsx(ImageWithFallback, { src: source.logo, alt: `${source.display_name} badge`, width: 18, height: 18, className: "absolute -bottom-1 -right-1 h-[18px] w-[18px] rounded-md" }))] }), _jsxs("div", { className: "flex min-w-0 flex-col items-start space-y-0.5", children: [_jsxs("span", { className: "text-primary-text text-lg leading-5 flex min-w-0", children: [_jsxs(Tooltip, { children: [_jsx(TooltipTrigger, { asChild: true, children: _jsx("span", { className: "truncate overflow-hidden whitespace-nowrap max-w-[100px]", children: requested_amount.toLocaleString('en-US', { maximumFractionDigits: 20 }) }) }), _jsx(TooltipContent, { children: requested_amount })] }), "\u00A0", source_token.symbol] }), _jsx("span", { className: "text-secondary-text text-sm leading-[14px]", children: source?.display_name || "" })] })] }), _jsx("div", { className: "absolute left-1/2 top-1/2 -translate-x-1/2 -translate-y-1/2 pointer-events-none -z-10", children: _jsx("div", { className: "h-7 w-6 rounded-md bg-secondary-400 flex items-center justify-center", children: _jsx(ChevronRightIcon, { className: "h-5 w-5 text-primary-text" }) }) }), _jsxs("div", { className: "col-span-6 flex items-center justify-end gap-2 bg-secondary-400 p-3 rounded-xl", children: [_jsxs("div", { className: "flex min-w-0 flex-col items-end space-y-0.5", children: [_jsxs("span", { className: "text-primary-text text-lg leading-5 flex min-w-0", children: [_jsxs(Tooltip, { children: [_jsx(TooltipTrigger, { asChild: true, children: _jsx("span", { className: "truncate overflow-hidden whitespace-nowrap max-w-[100px]", children: calculatedReceiveAmount.toLocaleString('en-US', { maximumFractionDigits: 20 }) }) }), _jsx(TooltipContent, { children: calculatedReceiveAmount })] }), "\u00A0", destination_token.symbol] }), _jsx("span", { className: "text-secondary-text text-sm leading-[14px]", children: destination?.display_name || "" })] }), _jsxs("div", { className: "relative w-8 h-8", children: [_jsx(ImageWithFallback, { src: destination_token.logo, alt: `${destination_token.symbol} logo`, width: 30, height: 30, className: "rounded-full" }), destination?.logo && (_jsx(ImageWithFallback, { src: destination.logo, alt: `${destination.display_name} badge`, width: 18, height: 18, className: "absolute -bottom-1 -right-1 h-[18px] w-[18px] rounded-md" }))] })] })] }) }), swap.status !== SwapStatus.Completed &&
37
+ return (source_token && _jsxs(_Fragment, { children: [_jsx("div", { className: `${className || ""} bg-secondary-500 relative z-10 w-full rounded-xl overflow-hidden hover:bg-secondary-400`, children: _jsxs("div", { className: "grid grid-cols-12 items-center gap-2 relative z-50", children: [_jsxs("div", { className: "col-span-6 flex items-center gap-2 p-3", children: [_jsxs("div", { className: "w-8 h-8 relative", children: [_jsx("div", { className: "h-[30px] w-[30px] rounded-full overflow-hidden", children: _jsx(ImageWithFallback, { src: source_token.logo, alt: `${source_token.symbol} logo`, width: 30, height: 30, className: "rounded-full" }) }), source?.logo && (_jsx("div", { className: "absolute -bottom-0.5 -right-1 h-[18px] w-[18px] rounded-md overflow-hidden border border-secondary-500", children: _jsx(ImageWithFallback, { src: source.logo, alt: `${source.display_name} badge`, width: 18, height: 18, className: "" }) }))] }), _jsxs("div", { className: "flex min-w-0 flex-col items-start space-y-0.5 overflow-hidden", children: [_jsxs("div", { className: "text-primary-text text-sm sm:text-lg leading-5 flex items-center min-w-0 gap-1 w-full", children: [_jsxs(Tooltip, { children: [_jsx(TooltipTrigger, { asChild: true, children: _jsx("span", { className: "truncate block shrink", children: requested_amount.toLocaleString('en-US', { maximumFractionDigits: 20 }) }) }), _jsx(TooltipContent, { children: requested_amount })] }), _jsx("span", { className: "shrink-0", children: source_token.symbol })] }), _jsx("span", { className: "text-secondary-text text-sm text-left leading-3.5", children: source?.display_name || "" })] })] }), _jsx("div", { className: "absolute left-1/2 top-1/2 -translate-x-1/2 -translate-y-1/2 pointer-events-none -z-10", children: _jsx("div", { className: "h-7 w-6 rounded-md bg-secondary-400 flex items-center justify-center", children: _jsx(ChevronRightIcon, { className: "h-5 w-5 text-primary-text" }) }) }), _jsxs("div", { className: "col-span-6 flex items-center justify-end gap-2 bg-secondary-400 p-3 rounded-xl", children: [_jsxs("div", { className: "flex min-w-0 flex-col items-end space-y-0.5 overflow-hidden", children: [_jsxs("div", { className: "text-primary-text text-sm sm:text-lg leading-5 flex items-center min-w-0 gap-1 w-full justify-end", children: [_jsxs(Tooltip, { children: [_jsx(TooltipTrigger, { asChild: true, children: _jsx("span", { className: "truncate block shrink", children: calculatedReceiveAmount.toLocaleString('en-US', { maximumFractionDigits: 20 }) }) }), _jsx(TooltipContent, { children: calculatedReceiveAmount })] }), _jsx("span", { className: "shrink-0", children: destination_token.symbol })] }), _jsx("span", { className: "text-secondary-text text-sm text-right leading-3.5", children: destination?.display_name || "" })] }), _jsxs("div", { className: "relative w-8 h-8", children: [_jsx("div", { className: "h-[30px] w-[30px] rounded-full overflow-hidden", children: _jsx(ImageWithFallback, { src: destination_token.logo, alt: `${destination_token.symbol} logo`, width: 30, height: 30, className: "rounded-full" }) }), destination?.logo && (_jsx("div", { className: "absolute -bottom-0.5 -right-1 h-[18px] w-[18px] rounded-md overflow-hidden border border-secondary-500", children: _jsx(ImageWithFallback, { src: destination.logo, alt: `${destination.display_name} badge`, width: 18, height: 18, className: "" }) }))] })] })] }) }), swap.status !== SwapStatus.Completed &&
38
38
  _jsx("div", { className: "-mt-2 z-0 relative", children: _jsx(StatusIcon, { swap: swap, withBg: true }) })] }));
39
39
  };
40
40
  export default HistorySummary;
@@ -2,9 +2,9 @@
2
2
  import { jsx as _jsx } from "react/jsx-runtime";
3
3
  import Content from "./History";
4
4
  import { SwapDataProvider } from "../../../context/swap";
5
- import { useBackClickCallback } from "../../../context/callbackProvider";
5
+ import { useCallbacks } from "../../../context/callbackProvider";
6
6
  import { Widget } from "../../../components/Widget/Index";
7
- export const TransactionsHistory = () => {
8
- const triggerOnBackClickCallback = useBackClickCallback();
9
- return (_jsx(SwapDataProvider, { children: _jsx(Widget, { goBack: triggerOnBackClickCallback, children: _jsx(Widget.Content, { children: _jsx("div", { className: "px-6 h-full overflow-y-auto styled-scroll max-h-[80vh]", id: 'virtualListContainer', children: _jsx(Content, {}) }) }) }) }));
7
+ export const TransactionsHistory = ({ height = '600px' }) => {
8
+ const { onBackClick } = useCallbacks();
9
+ return (_jsx(SwapDataProvider, { children: _jsx(Widget, { goBack: onBackClick, children: _jsx(Widget.Content, { children: _jsx("div", { style: { height }, className: "h-full w-full overflow-y-auto styled-scroll", id: 'virtualListContainer', children: _jsx(Content, {}) }) }) }) }));
10
10
  };
@@ -13,7 +13,7 @@ const Title = ({ children, className }) => {
13
13
  return _jsx("div", { className: `flex justify-between w-full text-base items-center pb-0.5 ${className}`, children: children });
14
14
  };
15
15
  const DetailedTitle = ({ children, className, title, secondary, secondaryImageAlt, secondaryLogoSrc, logoClassName }) => {
16
- return _jsxs(Title, { className: clsx("w-full grid grid-cols-9", className), children: [_jsxs("div", { className: "col-span-5 sm:col-span-7 truncate flex flex-col gap-1 leading-5 align-middle font-medium", children: [_jsx("span", { className: "align-middle leading-5 text-base", children: title }), _jsxs("div", { className: "flex items-center space-x-1 align-middle", children: [secondaryLogoSrc && _jsx(ImageWithFallback, { src: secondaryLogoSrc, alt: secondaryImageAlt, height: "16", width: "16", loading: "eager", className: clsx("h-4 w-4 object-contain rounded", logoClassName) }), _jsx("span", { className: "text-secondary-text text-xs whitespace-nowrap", children: secondary })] })] }), _jsx("div", { className: 'col-span-4 sm:col-span-2 place-self-end self-center', children: children })] });
16
+ return _jsxs(Title, { className: clsx("w-full grid grid-cols-9", className), children: [_jsx("div", { className: "col-span-9 flex flex-col gap-1 leading-5 align-middle font-medium", children: _jsx("div", { className: "align-middle leading-5 text-base flex items-center justify-between w-full min-w-0", children: title }) }), _jsxs("div", { className: "col-span-5 sm:col-span-6 flex items-center gap-1 min-w-0 overflow-hidden pr-2", children: [secondaryLogoSrc && _jsx(ImageWithFallback, { src: secondaryLogoSrc, alt: secondaryImageAlt, height: "16", width: "16", loading: "eager", className: clsx("h-4 w-4 object-contain rounded shrink-0", logoClassName) }), _jsx("div", { className: "text-secondary-text text-xs min-w-0 whitespace-nowrap", children: secondary })] }), children && _jsx("div", { className: "col-span-4 sm:col-span-3 text-right truncate", children: children })] });
17
17
  };
18
18
  SelectItem.Logo = Logo;
19
19
  SelectItem.Title = Title;
@@ -22,9 +22,9 @@ export const WalletsIcons = ({ wallets }) => {
22
22
  const firstWallet = uniqueWallets[0];
23
23
  const secondWallet = uniqueWallets[1];
24
24
  return (_jsxs("div", { className: "-space-x-2 flex", children: [firstWallet?.displayName &&
25
- _jsx(firstWallet.icon, { className: "rounded-full border-2 border-secondary-600 bg-secondary-700 shrink-0 h-6 w-6" }), secondWallet?.displayName &&
26
- _jsx(secondWallet.icon, { className: "rounded-full border-2 border-secondary-600 bg-secondary-700 shrink-0 h-6 w-6" }), uniqueWallets.length > 2 &&
27
- _jsx("div", { className: "h-6 w-6 shrink-0 rounded-full justify-center p-1 bg-secondary-600 text-primary-text overlfow-hidden text-xs", children: _jsxs("span", { children: [_jsx("span", { children: "+" }), uniqueWallets.length - 2] }) })] }));
25
+ _jsx(firstWallet.icon, { className: "rounded-md border-2 border-secondary-600 bg-secondary-700 shrink-0 h-6 w-6" }), secondWallet?.displayName &&
26
+ _jsx(secondWallet.icon, { className: "rounded-md border-2 border-secondary-600 bg-secondary-700 shrink-0 h-6 w-6" }), uniqueWallets.length > 2 &&
27
+ _jsx("div", { className: "h-6 w-6 shrink-0 rounded-md justify-center p-1 bg-secondary-600 text-primary-text overlfow-hidden text-xs", children: _jsxs("span", { children: [_jsx("span", { children: "+" }), uniqueWallets.length - 2] }) })] }));
28
28
  };
29
29
  export const WalletsMenu = () => {
30
30
  const { wallets } = useWallet();
@@ -39,5 +39,5 @@ const WalletsMenuWalletsList = ({ wallets }) => {
39
39
  return _jsxs(_Fragment, { children: [_jsx("button", { onClick: () => setOpenModal(true), type: "button", className: "py-3 px-4 bg-secondary-500 flex items-center w-full rounded-xl space-x-1 disabled:text-secondary-text/40 disabled:bg-primary-900 disabled:cursor-not-allowed relative font-semibold transform border border-secondary-500 hover:bg-secondary-400 transition duration-200 ease-in-out outline-hidden", children: wallets.length === 1 ?
40
40
  _jsxs("div", { className: "flex gap-4 items-start text-primary-text", children: [_jsx(wallet.icon, { className: 'h-5 w-5' }), !wallet.isLoading && wallet.address && _jsx("p", { children: shortenAddress(wallet.address) })] })
41
41
  :
42
- _jsxs(_Fragment, { children: [_jsx("div", { className: "flex justify-center w-full", children: "Connected wallets" }), _jsx("div", { className: "place-items-end absolute left-2.5", children: _jsx(WalletsIcons, { wallets: wallets }) })] }) }), _jsx(VaulDrawer, { show: openModal, setShow: setOpenModal, header: `Connected wallets`, modalId: "connectedWallets", className: "expandContainerHeight", children: _jsx(VaulDrawer.Snap, { id: "item-1", children: _jsx(WalletsList, { wallets: wallets }) }) })] });
42
+ _jsxs(_Fragment, { children: [_jsx("div", { className: "flex justify-center w-full", children: "Connected wallets" }), _jsx("div", { className: "place-items-end absolute left-2.5", children: _jsx(WalletsIcons, { wallets: wallets }) })] }) }), _jsx(VaulDrawer, { show: openModal, setShow: setOpenModal, header: `Connected wallets`, modalId: "connectedWallets", children: _jsx(VaulDrawer.Snap, { id: "item-1", children: _jsx(WalletsList, { wallets: wallets }) }) })] });
43
43
  };
@@ -10,7 +10,7 @@ import { truncateDecimals } from "../../../components/utils/RoundDecimals";
10
10
  import { useSettingsState } from "../../../context/settings";
11
11
  import { Tooltip, TooltipContent, TooltipTrigger } from "../../../components/shadcn/tooltip";
12
12
  import { ImageWithFallback } from "../../../components/Common/ImageWithFallback";
13
- import { useSelectedAccount } from "../../../context/balanceAccounts";
13
+ import { useSelectedAccount } from "../../../context/swapAccounts";
14
14
  import { useBalance } from "../../../lib/balances/useBalance";
15
15
  const WalletsList = (props) => {
16
16
  const { wallets, token, network, provider, selectable, onSelect, selectedDepositMethod } = props;
@@ -1,11 +1,11 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
2
  import { Loader } from "lucide-react";
3
3
  import { resolveWalletConnectorIcon } from "../../../lib/wallets/utils/resolveWalletIcon";
4
- const Connector = ({ connector, connectingConnector, onClick, isRecent, ...props }) => {
4
+ const Connector = ({ connector, connectingConnector, onClick, isRecent, isProviderReady = true, ...props }) => {
5
5
  const connectorName = connector?.name;
6
6
  const Icon = resolveWalletConnectorIcon({ connector: connector, iconUrl: connector.icon });
7
7
  const isLoading = connectingConnector?.name === connectorName;
8
- return (_jsx(_Fragment, { children: _jsx("button", { type: "button", disabled: !!connectingConnector, className: "w-full h-fit flex items-center justify-between bg-secondary-500 hover:bg-secondary-400 transition-colors duration-200 rounded-xl p-3", onClick: onClick, ...props, children: _jsxs("div", { className: "flex gap-2.5 items-center font-medium w-full", children: [_jsx("div", { className: "w-11", children: _jsx(Icon, { className: "w-11 h-auto p-0.5 rounded-[10px] bg-secondary-800" }) }), _jsxs("div", { className: 'flex flex-col items-start justify-center col-start-2 col-span-3 min-h-[40px] truncate', children: [_jsx("p", { className: 'text-base text-left truncate w-full', children: connectorName }), connector.type === 'injected' && !isRecent &&
8
+ return (_jsx(_Fragment, { children: _jsx("button", { type: "button", disabled: !!connectingConnector || !isProviderReady, className: "w-full h-fit flex items-center justify-between bg-secondary-500 hover:bg-secondary-400 transition-colors duration-200 rounded-xl p-3 disabled:opacity-50 disabled:cursor-not-allowed", onClick: onClick, ...props, children: _jsxs("div", { className: "flex gap-2.5 items-center font-medium w-full", children: [_jsx("div", { className: "w-11", children: _jsx(Icon, { className: "w-11 h-auto p-0.5 rounded-[10px] bg-secondary-800" }) }), _jsxs("div", { className: 'flex flex-col items-start justify-center col-start-2 col-span-3 min-h-[40px] truncate', children: [_jsx("p", { className: 'text-base text-left truncate w-full', children: connectorName }), connector.type === 'injected' && !isRecent &&
9
9
  _jsx("p", { className: 'text-xs text-secondary-text font-medium', children: "Installed" }), isRecent &&
10
10
  _jsx("p", { className: 'text-xs text-primary-buttonTextColor font-semibold bg-primary-700 px-1 py-0.5 rounded-md', children: "Recent" })] }), isLoading &&
11
11
  _jsx("div", { className: 'absolute right-0 bg-secondary-800 rounded-lg p-1', children: _jsx(Loader, { className: 'h-4 w-4 animate-spin' }) })] }) }) }));