@relayprotocol/relay-kit-ui 2.17.2

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 (924) hide show
  1. package/LICENSE +21 -0
  2. package/_cjs/package.json +1 -0
  3. package/_cjs/src/components/common/AmountInput.js +42 -0
  4. package/_cjs/src/components/common/AmountInput.js.map +1 -0
  5. package/_cjs/src/components/common/BalanceDisplay.js +18 -0
  6. package/_cjs/src/components/common/BalanceDisplay.js.map +1 -0
  7. package/_cjs/src/components/common/CopyToClipBoard.js +36 -0
  8. package/_cjs/src/components/common/CopyToClipBoard.js.map +1 -0
  9. package/_cjs/src/components/common/CustomAddressModal.js +105 -0
  10. package/_cjs/src/components/common/CustomAddressModal.js.map +1 -0
  11. package/_cjs/src/components/common/ErrorWell.js +41 -0
  12. package/_cjs/src/components/common/ErrorWell.js.map +1 -0
  13. package/_cjs/src/components/common/LoadingSpinner.js +19 -0
  14. package/_cjs/src/components/common/LoadingSpinner.js.map +1 -0
  15. package/_cjs/src/components/common/Modal.js +34 -0
  16. package/_cjs/src/components/common/Modal.js.map +1 -0
  17. package/_cjs/src/components/common/MultiWalletDropdown.js +148 -0
  18. package/_cjs/src/components/common/MultiWalletDropdown.js.map +1 -0
  19. package/_cjs/src/components/common/RefundReason.js +52 -0
  20. package/_cjs/src/components/common/RefundReason.js.map +1 -0
  21. package/_cjs/src/components/common/SlippageToleranceConfig.js +143 -0
  22. package/_cjs/src/components/common/SlippageToleranceConfig.js.map +1 -0
  23. package/_cjs/src/components/common/TokenSelector/ChainFilter.js +119 -0
  24. package/_cjs/src/components/common/TokenSelector/ChainFilter.js.map +1 -0
  25. package/_cjs/src/components/common/TokenSelector/ChainFilterSidebar.js +150 -0
  26. package/_cjs/src/components/common/TokenSelector/ChainFilterSidebar.js.map +1 -0
  27. package/_cjs/src/components/common/TokenSelector/SuggestedTokens.js +67 -0
  28. package/_cjs/src/components/common/TokenSelector/SuggestedTokens.js.map +1 -0
  29. package/_cjs/src/components/common/TokenSelector/TagPill.js +18 -0
  30. package/_cjs/src/components/common/TokenSelector/TagPill.js.map +1 -0
  31. package/_cjs/src/components/common/TokenSelector/TokenList.js +83 -0
  32. package/_cjs/src/components/common/TokenSelector/TokenList.js.map +1 -0
  33. package/_cjs/src/components/common/TokenSelector/TokenSelector.js +402 -0
  34. package/_cjs/src/components/common/TokenSelector/TokenSelector.js.map +1 -0
  35. package/_cjs/src/components/common/TokenSelector/triggers/TokenTrigger.js +42 -0
  36. package/_cjs/src/components/common/TokenSelector/triggers/TokenTrigger.js.map +1 -0
  37. package/_cjs/src/components/common/TransactionModal/DepositAddressModal.js +85 -0
  38. package/_cjs/src/components/common/TransactionModal/DepositAddressModal.js.map +1 -0
  39. package/_cjs/src/components/common/TransactionModal/DepositAddressModalRenderer.js +247 -0
  40. package/_cjs/src/components/common/TransactionModal/DepositAddressModalRenderer.js.map +1 -0
  41. package/_cjs/src/components/common/TransactionModal/TransactionModal.js +121 -0
  42. package/_cjs/src/components/common/TransactionModal/TransactionModal.js.map +1 -0
  43. package/_cjs/src/components/common/TransactionModal/TransactionModalRenderer.js +136 -0
  44. package/_cjs/src/components/common/TransactionModal/TransactionModalRenderer.js.map +1 -0
  45. package/_cjs/src/components/common/TransactionModal/steps/ApprovalPlusSwapStep.js +80 -0
  46. package/_cjs/src/components/common/TransactionModal/steps/ApprovalPlusSwapStep.js.map +1 -0
  47. package/_cjs/src/components/common/TransactionModal/steps/DepositAddressValidatingStep.js +21 -0
  48. package/_cjs/src/components/common/TransactionModal/steps/DepositAddressValidatingStep.js.map +1 -0
  49. package/_cjs/src/components/common/TransactionModal/steps/ErrorStep.js +82 -0
  50. package/_cjs/src/components/common/TransactionModal/steps/ErrorStep.js.map +1 -0
  51. package/_cjs/src/components/common/TransactionModal/steps/SwapConfirmationStep.js +117 -0
  52. package/_cjs/src/components/common/TransactionModal/steps/SwapConfirmationStep.js.map +1 -0
  53. package/_cjs/src/components/common/TransactionModal/steps/SwapSuccessStep.js +131 -0
  54. package/_cjs/src/components/common/TransactionModal/steps/SwapSuccessStep.js.map +1 -0
  55. package/_cjs/src/components/common/TransactionModal/steps/TransactionsByChain.js +67 -0
  56. package/_cjs/src/components/common/TransactionModal/steps/TransactionsByChain.js.map +1 -0
  57. package/_cjs/src/components/common/TransactionModal/steps/WaitingForDepositStep.js +86 -0
  58. package/_cjs/src/components/common/TransactionModal/steps/WaitingForDepositStep.js.map +1 -0
  59. package/_cjs/src/components/common/UnverifiedTokenModal.js +75 -0
  60. package/_cjs/src/components/common/UnverifiedTokenModal.js.map +1 -0
  61. package/_cjs/src/components/primitives/AccessibleList.js +33 -0
  62. package/_cjs/src/components/primitives/AccessibleList.js.map +1 -0
  63. package/_cjs/src/components/primitives/Anchor.js +57 -0
  64. package/_cjs/src/components/primitives/Anchor.js.map +1 -0
  65. package/_cjs/src/components/primitives/Box.js +10 -0
  66. package/_cjs/src/components/primitives/Box.js.map +1 -0
  67. package/_cjs/src/components/primitives/Button.js +155 -0
  68. package/_cjs/src/components/primitives/Button.js.map +1 -0
  69. package/_cjs/src/components/primitives/ChainIcon.js +35 -0
  70. package/_cjs/src/components/primitives/ChainIcon.js.map +1 -0
  71. package/_cjs/src/components/primitives/ChainTokenIcon.js +54 -0
  72. package/_cjs/src/components/primitives/ChainTokenIcon.js.map +1 -0
  73. package/_cjs/src/components/primitives/Collapsible.js +46 -0
  74. package/_cjs/src/components/primitives/Collapsible.js.map +1 -0
  75. package/_cjs/src/components/primitives/Dialog.js +104 -0
  76. package/_cjs/src/components/primitives/Dialog.js.map +1 -0
  77. package/_cjs/src/components/primitives/Dropdown.js +55 -0
  78. package/_cjs/src/components/primitives/Dropdown.js.map +1 -0
  79. package/_cjs/src/components/primitives/Flex.js +76 -0
  80. package/_cjs/src/components/primitives/Flex.js.map +1 -0
  81. package/_cjs/src/components/primitives/Input.js +69 -0
  82. package/_cjs/src/components/primitives/Input.js.map +1 -0
  83. package/_cjs/src/components/primitives/Pill.js +64 -0
  84. package/_cjs/src/components/primitives/Pill.js.map +1 -0
  85. package/_cjs/src/components/primitives/Skeleton.js +18 -0
  86. package/_cjs/src/components/primitives/Skeleton.js.map +1 -0
  87. package/_cjs/src/components/primitives/Switch.js +53 -0
  88. package/_cjs/src/components/primitives/Switch.js.map +1 -0
  89. package/_cjs/src/components/primitives/Tabs.js +53 -0
  90. package/_cjs/src/components/primitives/Tabs.js.map +1 -0
  91. package/_cjs/src/components/primitives/Text.js +106 -0
  92. package/_cjs/src/components/primitives/Text.js.map +1 -0
  93. package/_cjs/src/components/primitives/Tooltip.js +44 -0
  94. package/_cjs/src/components/primitives/Tooltip.js.map +1 -0
  95. package/_cjs/src/components/primitives/index.js +31 -0
  96. package/_cjs/src/components/primitives/index.js.map +1 -0
  97. package/_cjs/src/components/widgets/FeeBreakdown.js +165 -0
  98. package/_cjs/src/components/widgets/FeeBreakdown.js.map +1 -0
  99. package/_cjs/src/components/widgets/FetchingQuoteLoader.js +20 -0
  100. package/_cjs/src/components/widgets/FetchingQuoteLoader.js.map +1 -0
  101. package/_cjs/src/components/widgets/OnrampWidget/index.js +9 -0
  102. package/_cjs/src/components/widgets/OnrampWidget/index.js.map +1 -0
  103. package/_cjs/src/components/widgets/OnrampWidget/modals/OnrampModal.js +286 -0
  104. package/_cjs/src/components/widgets/OnrampWidget/modals/OnrampModal.js.map +1 -0
  105. package/_cjs/src/components/widgets/OnrampWidget/modals/steps/OnrampConfirmingStep.js +42 -0
  106. package/_cjs/src/components/widgets/OnrampWidget/modals/steps/OnrampConfirmingStep.js.map +1 -0
  107. package/_cjs/src/components/widgets/OnrampWidget/modals/steps/OnrampMoonPayStep.js +203 -0
  108. package/_cjs/src/components/widgets/OnrampWidget/modals/steps/OnrampMoonPayStep.js.map +1 -0
  109. package/_cjs/src/components/widgets/OnrampWidget/modals/steps/OnrampProcessingPassthroughStep.js +45 -0
  110. package/_cjs/src/components/widgets/OnrampWidget/modals/steps/OnrampProcessingPassthroughStep.js.map +1 -0
  111. package/_cjs/src/components/widgets/OnrampWidget/modals/steps/OnrampProcessingStepUI.js +87 -0
  112. package/_cjs/src/components/widgets/OnrampWidget/modals/steps/OnrampProcessingStepUI.js.map +1 -0
  113. package/_cjs/src/components/widgets/OnrampWidget/modals/steps/OnrampSuccessStep.js +39 -0
  114. package/_cjs/src/components/widgets/OnrampWidget/modals/steps/OnrampSuccessStep.js.map +1 -0
  115. package/_cjs/src/components/widgets/OnrampWidget/widget/FiatCurrencyModal.js +171 -0
  116. package/_cjs/src/components/widgets/OnrampWidget/widget/FiatCurrencyModal.js.map +1 -0
  117. package/_cjs/src/components/widgets/OnrampWidget/widget/OnrampWidgetRenderer.js +197 -0
  118. package/_cjs/src/components/widgets/OnrampWidget/widget/OnrampWidgetRenderer.js.map +1 -0
  119. package/_cjs/src/components/widgets/OnrampWidget/widget/index.js +332 -0
  120. package/_cjs/src/components/widgets/OnrampWidget/widget/index.js.map +1 -0
  121. package/_cjs/src/components/widgets/PriceImpactTooltip.js +28 -0
  122. package/_cjs/src/components/widgets/PriceImpactTooltip.js.map +1 -0
  123. package/_cjs/src/components/widgets/SwapButton.js +37 -0
  124. package/_cjs/src/components/widgets/SwapButton.js.map +1 -0
  125. package/_cjs/src/components/widgets/SwapRouteSelector.js +86 -0
  126. package/_cjs/src/components/widgets/SwapRouteSelector.js.map +1 -0
  127. package/_cjs/src/components/widgets/SwapWidget/GasTopUpSection.js +24 -0
  128. package/_cjs/src/components/widgets/SwapWidget/GasTopUpSection.js.map +1 -0
  129. package/_cjs/src/components/widgets/SwapWidget/index.js +912 -0
  130. package/_cjs/src/components/widgets/SwapWidget/index.js.map +1 -0
  131. package/_cjs/src/components/widgets/SwapWidgetRenderer.js +735 -0
  132. package/_cjs/src/components/widgets/SwapWidgetRenderer.js.map +1 -0
  133. package/_cjs/src/components/widgets/TokenSelectorContainer.js +20 -0
  134. package/_cjs/src/components/widgets/TokenSelectorContainer.js.map +1 -0
  135. package/_cjs/src/components/widgets/WidgetContainer.js +27 -0
  136. package/_cjs/src/components/widgets/WidgetContainer.js.map +1 -0
  137. package/_cjs/src/components/widgets/WidgetErrorWell.js +148 -0
  138. package/_cjs/src/components/widgets/WidgetErrorWell.js.map +1 -0
  139. package/_cjs/src/components/widgets/WidgetFooter.js +34 -0
  140. package/_cjs/src/components/widgets/WidgetFooter.js.map +1 -0
  141. package/_cjs/src/constants/address.js +15 -0
  142. package/_cjs/src/constants/address.js.map +1 -0
  143. package/_cjs/src/constants/agwRegistryAbi.js +20 -0
  144. package/_cjs/src/constants/agwRegistryAbi.js.map +1 -0
  145. package/_cjs/src/constants/cache.js +6 -0
  146. package/_cjs/src/constants/cache.js.map +1 -0
  147. package/_cjs/src/constants/chainIdToAlchemyNetworkMap.js +13 -0
  148. package/_cjs/src/constants/chainIdToAlchemyNetworkMap.js.map +1 -0
  149. package/_cjs/src/constants/currencies.js +3 -0
  150. package/_cjs/src/constants/currencies.js.map +1 -0
  151. package/_cjs/src/constants/depositAddresses.js +14 -0
  152. package/_cjs/src/constants/depositAddresses.js.map +1 -0
  153. package/_cjs/src/constants/events.js +62 -0
  154. package/_cjs/src/constants/events.js.map +1 -0
  155. package/_cjs/src/constants/maxGasBuffer.js +12 -0
  156. package/_cjs/src/constants/maxGasBuffer.js.map +1 -0
  157. package/_cjs/src/constants/moonPayCurrencies.js +295 -0
  158. package/_cjs/src/constants/moonPayCurrencies.js.map +1 -0
  159. package/_cjs/src/constants/moonPayFiatCurrencies.js +209 -0
  160. package/_cjs/src/constants/moonPayFiatCurrencies.js.map +1 -0
  161. package/_cjs/src/constants/walletCompatibility.js +23 -0
  162. package/_cjs/src/constants/walletCompatibility.js.map +1 -0
  163. package/_cjs/src/hooks/index.js +51 -0
  164. package/_cjs/src/hooks/index.js.map +1 -0
  165. package/_cjs/src/hooks/useAdaptedWalletBalance.js +28 -0
  166. package/_cjs/src/hooks/useAdaptedWalletBalance.js.map +1 -0
  167. package/_cjs/src/hooks/useAtomicBatchSupport.js +34 -0
  168. package/_cjs/src/hooks/useAtomicBatchSupport.js.map +1 -0
  169. package/_cjs/src/hooks/useBitcoinBalance.js +40 -0
  170. package/_cjs/src/hooks/useBitcoinBalance.js.map +1 -0
  171. package/_cjs/src/hooks/useCexAddresses.js +21 -0
  172. package/_cjs/src/hooks/useCexAddresses.js.map +1 -0
  173. package/_cjs/src/hooks/useCurrencyBalance.js +234 -0
  174. package/_cjs/src/hooks/useCurrencyBalance.js.map +1 -0
  175. package/_cjs/src/hooks/useDebounceState.js +35 -0
  176. package/_cjs/src/hooks/useDebounceState.js.map +1 -0
  177. package/_cjs/src/hooks/useDisconnected.js +14 -0
  178. package/_cjs/src/hooks/useDisconnected.js.map +1 -0
  179. package/_cjs/src/hooks/useDuneBalances.js +99 -0
  180. package/_cjs/src/hooks/useDuneBalances.js.map +1 -0
  181. package/_cjs/src/hooks/useENSResolver.js +37 -0
  182. package/_cjs/src/hooks/useENSResolver.js.map +1 -0
  183. package/_cjs/src/hooks/useEclipseBalance.js +47 -0
  184. package/_cjs/src/hooks/useEclipseBalance.js.map +1 -0
  185. package/_cjs/src/hooks/useEnhancedTokensList.js +80 -0
  186. package/_cjs/src/hooks/useEnhancedTokensList.js.map +1 -0
  187. package/_cjs/src/hooks/useFallbackState.js +12 -0
  188. package/_cjs/src/hooks/useFallbackState.js.map +1 -0
  189. package/_cjs/src/hooks/useGasTopUpRequired.js +59 -0
  190. package/_cjs/src/hooks/useGasTopUpRequired.js.map +1 -0
  191. package/_cjs/src/hooks/useHyperliquidUsdcBalance.js +37 -0
  192. package/_cjs/src/hooks/useHyperliquidUsdcBalance.js.map +1 -0
  193. package/_cjs/src/hooks/useInternalRelayChains.js +23 -0
  194. package/_cjs/src/hooks/useInternalRelayChains.js.map +1 -0
  195. package/_cjs/src/hooks/useIpAddress.js +12 -0
  196. package/_cjs/src/hooks/useIpAddress.js.map +1 -0
  197. package/_cjs/src/hooks/useIsAGW.js +34 -0
  198. package/_cjs/src/hooks/useIsAGW.js.map +1 -0
  199. package/_cjs/src/hooks/useIsPassthrough.js +56 -0
  200. package/_cjs/src/hooks/useIsPassthrough.js.map +1 -0
  201. package/_cjs/src/hooks/useIsWalletCompatible.js +42 -0
  202. package/_cjs/src/hooks/useIsWalletCompatible.js.map +1 -0
  203. package/_cjs/src/hooks/useMoonPayCurrencies.js +23 -0
  204. package/_cjs/src/hooks/useMoonPayCurrencies.js.map +1 -0
  205. package/_cjs/src/hooks/useMoonPayGeolocation.js +25 -0
  206. package/_cjs/src/hooks/useMoonPayGeolocation.js.map +1 -0
  207. package/_cjs/src/hooks/useMoonPayTransaction.js +25 -0
  208. package/_cjs/src/hooks/useMoonPayTransaction.js.map +1 -0
  209. package/_cjs/src/hooks/useMounted.js +11 -0
  210. package/_cjs/src/hooks/useMounted.js.map +1 -0
  211. package/_cjs/src/hooks/usePreviousValueChange.js +14 -0
  212. package/_cjs/src/hooks/usePreviousValueChange.js.map +1 -0
  213. package/_cjs/src/hooks/useRelayClient.js +9 -0
  214. package/_cjs/src/hooks/useRelayClient.js.map +1 -0
  215. package/_cjs/src/hooks/useSuiBalance.js +48 -0
  216. package/_cjs/src/hooks/useSuiBalance.js.map +1 -0
  217. package/_cjs/src/hooks/useSupportedMoonPayCurrencyCode.js +65 -0
  218. package/_cjs/src/hooks/useSupportedMoonPayCurrencyCode.js.map +1 -0
  219. package/_cjs/src/hooks/useWalletAddress.js +23 -0
  220. package/_cjs/src/hooks/useWalletAddress.js.map +1 -0
  221. package/_cjs/src/hooks/widget/useSwapButtonCta.js +76 -0
  222. package/_cjs/src/hooks/widget/useSwapButtonCta.js.map +1 -0
  223. package/_cjs/src/icons/SwitchIcon.js +9 -0
  224. package/_cjs/src/icons/SwitchIcon.js.map +1 -0
  225. package/_cjs/src/icons/index.js +6 -0
  226. package/_cjs/src/icons/index.js.map +1 -0
  227. package/_cjs/src/img/AllChainsLogo.js +10 -0
  228. package/_cjs/src/img/AllChainsLogo.js.map +1 -0
  229. package/_cjs/src/img/MoonPayLogo.js +10 -0
  230. package/_cjs/src/img/MoonPayLogo.js.map +1 -0
  231. package/_cjs/src/img/ReservoirText.js +10 -0
  232. package/_cjs/src/img/ReservoirText.js.map +1 -0
  233. package/_cjs/src/index.js +23 -0
  234. package/_cjs/src/index.js.map +1 -0
  235. package/_cjs/src/providers/RelayClientProvider.js +14 -0
  236. package/_cjs/src/providers/RelayClientProvider.js.map +1 -0
  237. package/_cjs/src/providers/RelayKitProvider.js +123 -0
  238. package/_cjs/src/providers/RelayKitProvider.js.map +1 -0
  239. package/_cjs/src/styles.css +3408 -0
  240. package/_cjs/src/themes/RelayKitTheme.js +89 -0
  241. package/_cjs/src/themes/RelayKitTheme.js.map +1 -0
  242. package/_cjs/src/themes/index.js +6 -0
  243. package/_cjs/src/themes/index.js.map +1 -0
  244. package/_cjs/src/types/BridgeFee.js +3 -0
  245. package/_cjs/src/types/BridgeFee.js.map +1 -0
  246. package/_cjs/src/types/Fiat.js +3 -0
  247. package/_cjs/src/types/Fiat.js.map +1 -0
  248. package/_cjs/src/types/RelayTransaction.js +3 -0
  249. package/_cjs/src/types/RelayTransaction.js.map +1 -0
  250. package/_cjs/src/types/index.js +3 -0
  251. package/_cjs/src/types/index.js.map +1 -0
  252. package/_cjs/src/utils/address.js +75 -0
  253. package/_cjs/src/utils/address.js.map +1 -0
  254. package/_cjs/src/utils/bitcoin.js +12 -0
  255. package/_cjs/src/utils/bitcoin.js.map +1 -0
  256. package/_cjs/src/utils/browser.js +8 -0
  257. package/_cjs/src/utils/browser.js.map +1 -0
  258. package/_cjs/src/utils/ens.js +9 -0
  259. package/_cjs/src/utils/ens.js.map +1 -0
  260. package/_cjs/src/utils/errors.js +38 -0
  261. package/_cjs/src/utils/errors.js.map +1 -0
  262. package/_cjs/src/utils/fetcher.js +20 -0
  263. package/_cjs/src/utils/fetcher.js.map +1 -0
  264. package/_cjs/src/utils/getChainBlockExplorerUrl.js +12 -0
  265. package/_cjs/src/utils/getChainBlockExplorerUrl.js.map +1 -0
  266. package/_cjs/src/utils/getTxBlockExplorerUrl.js +28 -0
  267. package/_cjs/src/utils/getTxBlockExplorerUrl.js.map +1 -0
  268. package/_cjs/src/utils/hashing.js +41 -0
  269. package/_cjs/src/utils/hashing.js.map +1 -0
  270. package/_cjs/src/utils/localStorage.js +84 -0
  271. package/_cjs/src/utils/localStorage.js.map +1 -0
  272. package/_cjs/src/utils/moonPay.js +49 -0
  273. package/_cjs/src/utils/moonPay.js.map +1 -0
  274. package/_cjs/src/utils/nativeMaxAmount.js +137 -0
  275. package/_cjs/src/utils/nativeMaxAmount.js.map +1 -0
  276. package/_cjs/src/utils/numbers.js +171 -0
  277. package/_cjs/src/utils/numbers.js.map +1 -0
  278. package/_cjs/src/utils/qrcode.js +23 -0
  279. package/_cjs/src/utils/qrcode.js.map +1 -0
  280. package/_cjs/src/utils/quote.js +262 -0
  281. package/_cjs/src/utils/quote.js.map +1 -0
  282. package/_cjs/src/utils/relayTransaction.js +85 -0
  283. package/_cjs/src/utils/relayTransaction.js.map +1 -0
  284. package/_cjs/src/utils/slippage.js +18 -0
  285. package/_cjs/src/utils/slippage.js.map +1 -0
  286. package/_cjs/src/utils/solana.js +16 -0
  287. package/_cjs/src/utils/solana.js.map +1 -0
  288. package/_cjs/src/utils/steps.js +87 -0
  289. package/_cjs/src/utils/steps.js.map +1 -0
  290. package/_cjs/src/utils/sui.js +15 -0
  291. package/_cjs/src/utils/sui.js.map +1 -0
  292. package/_cjs/src/utils/theme.js +40 -0
  293. package/_cjs/src/utils/theme.js.map +1 -0
  294. package/_cjs/src/utils/time.js +36 -0
  295. package/_cjs/src/utils/time.js.map +1 -0
  296. package/_cjs/src/utils/titleCase.js +9 -0
  297. package/_cjs/src/utils/titleCase.js.map +1 -0
  298. package/_cjs/src/utils/tokenSelector.js +81 -0
  299. package/_cjs/src/utils/tokenSelector.js.map +1 -0
  300. package/_cjs/src/utils/tokens.js +56 -0
  301. package/_cjs/src/utils/tokens.js.map +1 -0
  302. package/_cjs/src/utils/tron.js +12 -0
  303. package/_cjs/src/utils/tron.js.map +1 -0
  304. package/_cjs/src/utils/truncate.js +18 -0
  305. package/_cjs/src/utils/truncate.js.map +1 -0
  306. package/_cjs/src/version.js +5 -0
  307. package/_cjs/src/version.js.map +1 -0
  308. package/_cjs/tsconfig.build.tsbuildinfo +1 -0
  309. package/_esm/package.json +1 -0
  310. package/_esm/src/components/common/AmountInput.js +43 -0
  311. package/_esm/src/components/common/AmountInput.js.map +1 -0
  312. package/_esm/src/components/common/BalanceDisplay.js +15 -0
  313. package/_esm/src/components/common/BalanceDisplay.js.map +1 -0
  314. package/_esm/src/components/common/CopyToClipBoard.js +31 -0
  315. package/_esm/src/components/common/CopyToClipBoard.js.map +1 -0
  316. package/_esm/src/components/common/CustomAddressModal.js +102 -0
  317. package/_esm/src/components/common/CustomAddressModal.js.map +1 -0
  318. package/_esm/src/components/common/ErrorWell.js +38 -0
  319. package/_esm/src/components/common/ErrorWell.js.map +1 -0
  320. package/_esm/src/components/common/LoadingSpinner.js +15 -0
  321. package/_esm/src/components/common/LoadingSpinner.js.map +1 -0
  322. package/_esm/src/components/common/Modal.js +30 -0
  323. package/_esm/src/components/common/Modal.js.map +1 -0
  324. package/_esm/src/components/common/MultiWalletDropdown.js +144 -0
  325. package/_esm/src/components/common/MultiWalletDropdown.js.map +1 -0
  326. package/_esm/src/components/common/RefundReason.js +49 -0
  327. package/_esm/src/components/common/RefundReason.js.map +1 -0
  328. package/_esm/src/components/common/SlippageToleranceConfig.js +143 -0
  329. package/_esm/src/components/common/SlippageToleranceConfig.js.map +1 -0
  330. package/_esm/src/components/common/TokenSelector/ChainFilter.js +116 -0
  331. package/_esm/src/components/common/TokenSelector/ChainFilter.js.map +1 -0
  332. package/_esm/src/components/common/TokenSelector/ChainFilterSidebar.js +150 -0
  333. package/_esm/src/components/common/TokenSelector/ChainFilterSidebar.js.map +1 -0
  334. package/_esm/src/components/common/TokenSelector/SuggestedTokens.js +63 -0
  335. package/_esm/src/components/common/TokenSelector/SuggestedTokens.js.map +1 -0
  336. package/_esm/src/components/common/TokenSelector/TagPill.js +15 -0
  337. package/_esm/src/components/common/TokenSelector/TagPill.js.map +1 -0
  338. package/_esm/src/components/common/TokenSelector/TokenList.js +79 -0
  339. package/_esm/src/components/common/TokenSelector/TokenList.js.map +1 -0
  340. package/_esm/src/components/common/TokenSelector/TokenSelector.js +411 -0
  341. package/_esm/src/components/common/TokenSelector/TokenSelector.js.map +1 -0
  342. package/_esm/src/components/common/TokenSelector/triggers/TokenTrigger.js +37 -0
  343. package/_esm/src/components/common/TokenSelector/triggers/TokenTrigger.js.map +1 -0
  344. package/_esm/src/components/common/TransactionModal/DepositAddressModal.js +83 -0
  345. package/_esm/src/components/common/TransactionModal/DepositAddressModal.js.map +1 -0
  346. package/_esm/src/components/common/TransactionModal/DepositAddressModalRenderer.js +245 -0
  347. package/_esm/src/components/common/TransactionModal/DepositAddressModalRenderer.js.map +1 -0
  348. package/_esm/src/components/common/TransactionModal/TransactionModal.js +120 -0
  349. package/_esm/src/components/common/TransactionModal/TransactionModal.js.map +1 -0
  350. package/_esm/src/components/common/TransactionModal/TransactionModalRenderer.js +135 -0
  351. package/_esm/src/components/common/TransactionModal/TransactionModalRenderer.js.map +1 -0
  352. package/_esm/src/components/common/TransactionModal/steps/ApprovalPlusSwapStep.js +77 -0
  353. package/_esm/src/components/common/TransactionModal/steps/ApprovalPlusSwapStep.js.map +1 -0
  354. package/_esm/src/components/common/TransactionModal/steps/DepositAddressValidatingStep.js +20 -0
  355. package/_esm/src/components/common/TransactionModal/steps/DepositAddressValidatingStep.js.map +1 -0
  356. package/_esm/src/components/common/TransactionModal/steps/ErrorStep.js +80 -0
  357. package/_esm/src/components/common/TransactionModal/steps/ErrorStep.js.map +1 -0
  358. package/_esm/src/components/common/TransactionModal/steps/SwapConfirmationStep.js +112 -0
  359. package/_esm/src/components/common/TransactionModal/steps/SwapConfirmationStep.js.map +1 -0
  360. package/_esm/src/components/common/TransactionModal/steps/SwapSuccessStep.js +130 -0
  361. package/_esm/src/components/common/TransactionModal/steps/SwapSuccessStep.js.map +1 -0
  362. package/_esm/src/components/common/TransactionModal/steps/TransactionsByChain.js +64 -0
  363. package/_esm/src/components/common/TransactionModal/steps/TransactionsByChain.js.map +1 -0
  364. package/_esm/src/components/common/TransactionModal/steps/WaitingForDepositStep.js +84 -0
  365. package/_esm/src/components/common/TransactionModal/steps/WaitingForDepositStep.js.map +1 -0
  366. package/_esm/src/components/common/UnverifiedTokenModal.js +70 -0
  367. package/_esm/src/components/common/UnverifiedTokenModal.js.map +1 -0
  368. package/_esm/src/components/primitives/AccessibleList.js +28 -0
  369. package/_esm/src/components/primitives/AccessibleList.js.map +1 -0
  370. package/_esm/src/components/primitives/Anchor.js +53 -0
  371. package/_esm/src/components/primitives/Anchor.js.map +1 -0
  372. package/_esm/src/components/primitives/Box.js +8 -0
  373. package/_esm/src/components/primitives/Box.js.map +1 -0
  374. package/_esm/src/components/primitives/Button.js +153 -0
  375. package/_esm/src/components/primitives/Button.js.map +1 -0
  376. package/_esm/src/components/primitives/ChainIcon.js +32 -0
  377. package/_esm/src/components/primitives/ChainIcon.js.map +1 -0
  378. package/_esm/src/components/primitives/ChainTokenIcon.js +50 -0
  379. package/_esm/src/components/primitives/ChainTokenIcon.js.map +1 -0
  380. package/_esm/src/components/primitives/Collapsible.js +40 -0
  381. package/_esm/src/components/primitives/Collapsible.js.map +1 -0
  382. package/_esm/src/components/primitives/Dialog.js +97 -0
  383. package/_esm/src/components/primitives/Dialog.js.map +1 -0
  384. package/_esm/src/components/primitives/Dropdown.js +49 -0
  385. package/_esm/src/components/primitives/Dropdown.js.map +1 -0
  386. package/_esm/src/components/primitives/Flex.js +73 -0
  387. package/_esm/src/components/primitives/Flex.js.map +1 -0
  388. package/_esm/src/components/primitives/Input.js +66 -0
  389. package/_esm/src/components/primitives/Input.js.map +1 -0
  390. package/_esm/src/components/primitives/Pill.js +60 -0
  391. package/_esm/src/components/primitives/Pill.js.map +1 -0
  392. package/_esm/src/components/primitives/Skeleton.js +16 -0
  393. package/_esm/src/components/primitives/Skeleton.js.map +1 -0
  394. package/_esm/src/components/primitives/Switch.js +49 -0
  395. package/_esm/src/components/primitives/Switch.js.map +1 -0
  396. package/_esm/src/components/primitives/Tabs.js +46 -0
  397. package/_esm/src/components/primitives/Tabs.js.map +1 -0
  398. package/_esm/src/components/primitives/Text.js +104 -0
  399. package/_esm/src/components/primitives/Text.js.map +1 -0
  400. package/_esm/src/components/primitives/Tooltip.js +41 -0
  401. package/_esm/src/components/primitives/Tooltip.js.map +1 -0
  402. package/_esm/src/components/primitives/index.js +14 -0
  403. package/_esm/src/components/primitives/index.js.map +1 -0
  404. package/_esm/src/components/widgets/FeeBreakdown.js +162 -0
  405. package/_esm/src/components/widgets/FeeBreakdown.js.map +1 -0
  406. package/_esm/src/components/widgets/FetchingQuoteLoader.js +19 -0
  407. package/_esm/src/components/widgets/FetchingQuoteLoader.js.map +1 -0
  408. package/_esm/src/components/widgets/OnrampWidget/index.js +2 -0
  409. package/_esm/src/components/widgets/OnrampWidget/index.js.map +1 -0
  410. package/_esm/src/components/widgets/OnrampWidget/modals/OnrampModal.js +281 -0
  411. package/_esm/src/components/widgets/OnrampWidget/modals/OnrampModal.js.map +1 -0
  412. package/_esm/src/components/widgets/OnrampWidget/modals/steps/OnrampConfirmingStep.js +38 -0
  413. package/_esm/src/components/widgets/OnrampWidget/modals/steps/OnrampConfirmingStep.js.map +1 -0
  414. package/_esm/src/components/widgets/OnrampWidget/modals/steps/OnrampMoonPayStep.js +176 -0
  415. package/_esm/src/components/widgets/OnrampWidget/modals/steps/OnrampMoonPayStep.js.map +1 -0
  416. package/_esm/src/components/widgets/OnrampWidget/modals/steps/OnrampProcessingPassthroughStep.js +40 -0
  417. package/_esm/src/components/widgets/OnrampWidget/modals/steps/OnrampProcessingPassthroughStep.js.map +1 -0
  418. package/_esm/src/components/widgets/OnrampWidget/modals/steps/OnrampProcessingStepUI.js +83 -0
  419. package/_esm/src/components/widgets/OnrampWidget/modals/steps/OnrampProcessingStepUI.js.map +1 -0
  420. package/_esm/src/components/widgets/OnrampWidget/modals/steps/OnrampSuccessStep.js +35 -0
  421. package/_esm/src/components/widgets/OnrampWidget/modals/steps/OnrampSuccessStep.js.map +1 -0
  422. package/_esm/src/components/widgets/OnrampWidget/widget/FiatCurrencyModal.js +170 -0
  423. package/_esm/src/components/widgets/OnrampWidget/widget/FiatCurrencyModal.js.map +1 -0
  424. package/_esm/src/components/widgets/OnrampWidget/widget/OnrampWidgetRenderer.js +195 -0
  425. package/_esm/src/components/widgets/OnrampWidget/widget/OnrampWidgetRenderer.js.map +1 -0
  426. package/_esm/src/components/widgets/OnrampWidget/widget/index.js +332 -0
  427. package/_esm/src/components/widgets/OnrampWidget/widget/index.js.map +1 -0
  428. package/_esm/src/components/widgets/PriceImpactTooltip.js +23 -0
  429. package/_esm/src/components/widgets/PriceImpactTooltip.js.map +1 -0
  430. package/_esm/src/components/widgets/SwapButton.js +36 -0
  431. package/_esm/src/components/widgets/SwapButton.js.map +1 -0
  432. package/_esm/src/components/widgets/SwapRouteSelector.js +84 -0
  433. package/_esm/src/components/widgets/SwapRouteSelector.js.map +1 -0
  434. package/_esm/src/components/widgets/SwapWidget/GasTopUpSection.js +23 -0
  435. package/_esm/src/components/widgets/SwapWidget/GasTopUpSection.js.map +1 -0
  436. package/_esm/src/components/widgets/SwapWidget/index.js +955 -0
  437. package/_esm/src/components/widgets/SwapWidget/index.js.map +1 -0
  438. package/_esm/src/components/widgets/SwapWidgetRenderer.js +754 -0
  439. package/_esm/src/components/widgets/SwapWidgetRenderer.js.map +1 -0
  440. package/_esm/src/components/widgets/TokenSelectorContainer.js +20 -0
  441. package/_esm/src/components/widgets/TokenSelectorContainer.js.map +1 -0
  442. package/_esm/src/components/widgets/WidgetContainer.js +26 -0
  443. package/_esm/src/components/widgets/WidgetContainer.js.map +1 -0
  444. package/_esm/src/components/widgets/WidgetErrorWell.js +153 -0
  445. package/_esm/src/components/widgets/WidgetErrorWell.js.map +1 -0
  446. package/_esm/src/components/widgets/WidgetFooter.js +31 -0
  447. package/_esm/src/components/widgets/WidgetFooter.js.map +1 -0
  448. package/_esm/src/constants/address.js +11 -0
  449. package/_esm/src/constants/address.js.map +1 -0
  450. package/_esm/src/constants/agwRegistryAbi.js +17 -0
  451. package/_esm/src/constants/agwRegistryAbi.js.map +1 -0
  452. package/_esm/src/constants/cache.js +3 -0
  453. package/_esm/src/constants/cache.js.map +1 -0
  454. package/_esm/src/constants/chainIdToAlchemyNetworkMap.js +11 -0
  455. package/_esm/src/constants/chainIdToAlchemyNetworkMap.js.map +1 -0
  456. package/_esm/src/constants/currencies.js +2 -0
  457. package/_esm/src/constants/currencies.js.map +1 -0
  458. package/_esm/src/constants/depositAddresses.js +11 -0
  459. package/_esm/src/constants/depositAddresses.js.map +1 -0
  460. package/_esm/src/constants/events.js +60 -0
  461. package/_esm/src/constants/events.js.map +1 -0
  462. package/_esm/src/constants/maxGasBuffer.js +9 -0
  463. package/_esm/src/constants/maxGasBuffer.js.map +1 -0
  464. package/_esm/src/constants/moonPayCurrencies.js +293 -0
  465. package/_esm/src/constants/moonPayCurrencies.js.map +1 -0
  466. package/_esm/src/constants/moonPayFiatCurrencies.js +207 -0
  467. package/_esm/src/constants/moonPayFiatCurrencies.js.map +1 -0
  468. package/_esm/src/constants/walletCompatibility.js +20 -0
  469. package/_esm/src/constants/walletCompatibility.js.map +1 -0
  470. package/_esm/src/hooks/index.js +25 -0
  471. package/_esm/src/hooks/index.js.map +1 -0
  472. package/_esm/src/hooks/useAdaptedWalletBalance.js +26 -0
  473. package/_esm/src/hooks/useAdaptedWalletBalance.js.map +1 -0
  474. package/_esm/src/hooks/useAtomicBatchSupport.js +33 -0
  475. package/_esm/src/hooks/useAtomicBatchSupport.js.map +1 -0
  476. package/_esm/src/hooks/useBitcoinBalance.js +38 -0
  477. package/_esm/src/hooks/useBitcoinBalance.js.map +1 -0
  478. package/_esm/src/hooks/useCexAddresses.js +19 -0
  479. package/_esm/src/hooks/useCexAddresses.js.map +1 -0
  480. package/_esm/src/hooks/useCurrencyBalance.js +232 -0
  481. package/_esm/src/hooks/useCurrencyBalance.js.map +1 -0
  482. package/_esm/src/hooks/useDebounceState.js +33 -0
  483. package/_esm/src/hooks/useDebounceState.js.map +1 -0
  484. package/_esm/src/hooks/useDisconnected.js +12 -0
  485. package/_esm/src/hooks/useDisconnected.js.map +1 -0
  486. package/_esm/src/hooks/useDuneBalances.js +98 -0
  487. package/_esm/src/hooks/useDuneBalances.js.map +1 -0
  488. package/_esm/src/hooks/useENSResolver.js +35 -0
  489. package/_esm/src/hooks/useENSResolver.js.map +1 -0
  490. package/_esm/src/hooks/useEclipseBalance.js +44 -0
  491. package/_esm/src/hooks/useEclipseBalance.js.map +1 -0
  492. package/_esm/src/hooks/useEnhancedTokensList.js +85 -0
  493. package/_esm/src/hooks/useEnhancedTokensList.js.map +1 -0
  494. package/_esm/src/hooks/useFallbackState.js +10 -0
  495. package/_esm/src/hooks/useFallbackState.js.map +1 -0
  496. package/_esm/src/hooks/useGasTopUpRequired.js +57 -0
  497. package/_esm/src/hooks/useGasTopUpRequired.js.map +1 -0
  498. package/_esm/src/hooks/useHyperliquidUsdcBalance.js +35 -0
  499. package/_esm/src/hooks/useHyperliquidUsdcBalance.js.map +1 -0
  500. package/_esm/src/hooks/useInternalRelayChains.js +19 -0
  501. package/_esm/src/hooks/useInternalRelayChains.js.map +1 -0
  502. package/_esm/src/hooks/useIpAddress.js +10 -0
  503. package/_esm/src/hooks/useIpAddress.js.map +1 -0
  504. package/_esm/src/hooks/useIsAGW.js +31 -0
  505. package/_esm/src/hooks/useIsAGW.js.map +1 -0
  506. package/_esm/src/hooks/useIsPassthrough.js +53 -0
  507. package/_esm/src/hooks/useIsPassthrough.js.map +1 -0
  508. package/_esm/src/hooks/useIsWalletCompatible.js +40 -0
  509. package/_esm/src/hooks/useIsWalletCompatible.js.map +1 -0
  510. package/_esm/src/hooks/useMoonPayCurrencies.js +21 -0
  511. package/_esm/src/hooks/useMoonPayCurrencies.js.map +1 -0
  512. package/_esm/src/hooks/useMoonPayGeolocation.js +23 -0
  513. package/_esm/src/hooks/useMoonPayGeolocation.js.map +1 -0
  514. package/_esm/src/hooks/useMoonPayTransaction.js +23 -0
  515. package/_esm/src/hooks/useMoonPayTransaction.js.map +1 -0
  516. package/_esm/src/hooks/useMounted.js +9 -0
  517. package/_esm/src/hooks/useMounted.js.map +1 -0
  518. package/_esm/src/hooks/usePreviousValueChange.js +12 -0
  519. package/_esm/src/hooks/usePreviousValueChange.js.map +1 -0
  520. package/_esm/src/hooks/useRelayClient.js +6 -0
  521. package/_esm/src/hooks/useRelayClient.js.map +1 -0
  522. package/_esm/src/hooks/useSuiBalance.js +45 -0
  523. package/_esm/src/hooks/useSuiBalance.js.map +1 -0
  524. package/_esm/src/hooks/useSupportedMoonPayCurrencyCode.js +61 -0
  525. package/_esm/src/hooks/useSupportedMoonPayCurrencyCode.js.map +1 -0
  526. package/_esm/src/hooks/useWalletAddress.js +20 -0
  527. package/_esm/src/hooks/useWalletAddress.js.map +1 -0
  528. package/_esm/src/hooks/widget/useSwapButtonCta.js +77 -0
  529. package/_esm/src/hooks/widget/useSwapButtonCta.js.map +1 -0
  530. package/_esm/src/icons/SwitchIcon.js +6 -0
  531. package/_esm/src/icons/SwitchIcon.js.map +1 -0
  532. package/_esm/src/icons/index.js +2 -0
  533. package/_esm/src/icons/index.js.map +1 -0
  534. package/_esm/src/img/AllChainsLogo.js +7 -0
  535. package/_esm/src/img/AllChainsLogo.js.map +1 -0
  536. package/_esm/src/img/MoonPayLogo.js +7 -0
  537. package/_esm/src/img/MoonPayLogo.js.map +1 -0
  538. package/_esm/src/img/ReservoirText.js +7 -0
  539. package/_esm/src/img/ReservoirText.js.map +1 -0
  540. package/_esm/src/index.js +13 -0
  541. package/_esm/src/index.js.map +1 -0
  542. package/_esm/src/providers/RelayClientProvider.js +10 -0
  543. package/_esm/src/providers/RelayClientProvider.js.map +1 -0
  544. package/_esm/src/providers/RelayKitProvider.js +120 -0
  545. package/_esm/src/providers/RelayKitProvider.js.map +1 -0
  546. package/_esm/src/styles.css +3408 -0
  547. package/_esm/src/themes/RelayKitTheme.js +86 -0
  548. package/_esm/src/themes/RelayKitTheme.js.map +1 -0
  549. package/_esm/src/themes/index.js +2 -0
  550. package/_esm/src/themes/index.js.map +1 -0
  551. package/_esm/src/types/BridgeFee.js +2 -0
  552. package/_esm/src/types/BridgeFee.js.map +1 -0
  553. package/_esm/src/types/Fiat.js +2 -0
  554. package/_esm/src/types/Fiat.js.map +1 -0
  555. package/_esm/src/types/RelayTransaction.js +2 -0
  556. package/_esm/src/types/RelayTransaction.js.map +1 -0
  557. package/_esm/src/types/index.js +2 -0
  558. package/_esm/src/types/index.js.map +1 -0
  559. package/_esm/src/utils/address.js +68 -0
  560. package/_esm/src/utils/address.js.map +1 -0
  561. package/_esm/src/utils/bitcoin.js +8 -0
  562. package/_esm/src/utils/bitcoin.js.map +1 -0
  563. package/_esm/src/utils/browser.js +4 -0
  564. package/_esm/src/utils/browser.js.map +1 -0
  565. package/_esm/src/utils/ens.js +5 -0
  566. package/_esm/src/utils/ens.js.map +1 -0
  567. package/_esm/src/utils/errors.js +36 -0
  568. package/_esm/src/utils/errors.js.map +1 -0
  569. package/_esm/src/utils/fetcher.js +15 -0
  570. package/_esm/src/utils/fetcher.js.map +1 -0
  571. package/_esm/src/utils/getChainBlockExplorerUrl.js +11 -0
  572. package/_esm/src/utils/getChainBlockExplorerUrl.js.map +1 -0
  573. package/_esm/src/utils/getTxBlockExplorerUrl.js +23 -0
  574. package/_esm/src/utils/getTxBlockExplorerUrl.js.map +1 -0
  575. package/_esm/src/utils/hashing.js +38 -0
  576. package/_esm/src/utils/hashing.js.map +1 -0
  577. package/_esm/src/utils/localStorage.js +93 -0
  578. package/_esm/src/utils/localStorage.js.map +1 -0
  579. package/_esm/src/utils/moonPay.js +44 -0
  580. package/_esm/src/utils/moonPay.js.map +1 -0
  581. package/_esm/src/utils/nativeMaxAmount.js +172 -0
  582. package/_esm/src/utils/nativeMaxAmount.js.map +1 -0
  583. package/_esm/src/utils/numbers.js +191 -0
  584. package/_esm/src/utils/numbers.js.map +1 -0
  585. package/_esm/src/utils/qrcode.js +19 -0
  586. package/_esm/src/utils/qrcode.js.map +1 -0
  587. package/_esm/src/utils/quote.js +248 -0
  588. package/_esm/src/utils/quote.js.map +1 -0
  589. package/_esm/src/utils/relayTransaction.js +80 -0
  590. package/_esm/src/utils/relayTransaction.js.map +1 -0
  591. package/_esm/src/utils/slippage.js +14 -0
  592. package/_esm/src/utils/slippage.js.map +1 -0
  593. package/_esm/src/utils/solana.js +12 -0
  594. package/_esm/src/utils/solana.js.map +1 -0
  595. package/_esm/src/utils/steps.js +102 -0
  596. package/_esm/src/utils/steps.js.map +1 -0
  597. package/_esm/src/utils/sui.js +11 -0
  598. package/_esm/src/utils/sui.js.map +1 -0
  599. package/_esm/src/utils/theme.js +37 -0
  600. package/_esm/src/utils/theme.js.map +1 -0
  601. package/_esm/src/utils/time.js +29 -0
  602. package/_esm/src/utils/time.js.map +1 -0
  603. package/_esm/src/utils/titleCase.js +12 -0
  604. package/_esm/src/utils/titleCase.js.map +1 -0
  605. package/_esm/src/utils/tokenSelector.js +79 -0
  606. package/_esm/src/utils/tokenSelector.js.map +1 -0
  607. package/_esm/src/utils/tokens.js +50 -0
  608. package/_esm/src/utils/tokens.js.map +1 -0
  609. package/_esm/src/utils/tron.js +8 -0
  610. package/_esm/src/utils/tron.js.map +1 -0
  611. package/_esm/src/utils/truncate.js +23 -0
  612. package/_esm/src/utils/truncate.js.map +1 -0
  613. package/_esm/src/version.js +2 -0
  614. package/_esm/src/version.js.map +1 -0
  615. package/_esm/tsconfig.build.tsbuildinfo +1 -0
  616. package/_types/src/components/common/AmountInput.d.ts +10 -0
  617. package/_types/src/components/common/AmountInput.d.ts.map +1 -0
  618. package/_types/src/components/common/BalanceDisplay.d.ts +14 -0
  619. package/_types/src/components/common/BalanceDisplay.d.ts.map +1 -0
  620. package/_types/src/components/common/CopyToClipBoard.d.ts +7 -0
  621. package/_types/src/components/common/CopyToClipBoard.d.ts.map +1 -0
  622. package/_types/src/components/common/CustomAddressModal.d.ts +22 -0
  623. package/_types/src/components/common/CustomAddressModal.d.ts.map +1 -0
  624. package/_types/src/components/common/ErrorWell.d.ts +11 -0
  625. package/_types/src/components/common/ErrorWell.d.ts.map +1 -0
  626. package/_types/src/components/common/LoadingSpinner.d.ts +6 -0
  627. package/_types/src/components/common/LoadingSpinner.d.ts.map +1 -0
  628. package/_types/src/components/common/Modal.d.ts +15 -0
  629. package/_types/src/components/common/Modal.d.ts.map +1 -0
  630. package/_types/src/components/common/MultiWalletDropdown.d.ts +17 -0
  631. package/_types/src/components/common/MultiWalletDropdown.d.ts.map +1 -0
  632. package/_types/src/components/common/RefundReason.d.ts +8 -0
  633. package/_types/src/components/common/RefundReason.d.ts.map +1 -0
  634. package/_types/src/components/common/SlippageToleranceConfig.d.ts +8 -0
  635. package/_types/src/components/common/SlippageToleranceConfig.d.ts.map +1 -0
  636. package/_types/src/components/common/TokenSelector/ChainFilter.d.ts +16 -0
  637. package/_types/src/components/common/TokenSelector/ChainFilter.d.ts.map +1 -0
  638. package/_types/src/components/common/TokenSelector/ChainFilterSidebar.d.ts +20 -0
  639. package/_types/src/components/common/TokenSelector/ChainFilterSidebar.d.ts.map +1 -0
  640. package/_types/src/components/common/TokenSelector/SuggestedTokens.d.ts +10 -0
  641. package/_types/src/components/common/TokenSelector/SuggestedTokens.d.ts.map +1 -0
  642. package/_types/src/components/common/TokenSelector/TagPill.d.ts +7 -0
  643. package/_types/src/components/common/TokenSelector/TagPill.d.ts.map +1 -0
  644. package/_types/src/components/common/TokenSelector/TokenList.d.ts +13 -0
  645. package/_types/src/components/common/TokenSelector/TokenList.d.ts.map +1 -0
  646. package/_types/src/components/common/TokenSelector/TokenSelector.d.ts +22 -0
  647. package/_types/src/components/common/TokenSelector/TokenSelector.d.ts.map +1 -0
  648. package/_types/src/components/common/TokenSelector/triggers/TokenTrigger.d.ts +11 -0
  649. package/_types/src/components/common/TokenSelector/triggers/TokenTrigger.d.ts.map +1 -0
  650. package/_types/src/components/common/TransactionModal/DepositAddressModal.d.ts +26 -0
  651. package/_types/src/components/common/TransactionModal/DepositAddressModal.d.ts.map +1 -0
  652. package/_types/src/components/common/TransactionModal/DepositAddressModalRenderer.d.ts +57 -0
  653. package/_types/src/components/common/TransactionModal/DepositAddressModalRenderer.d.ts.map +1 -0
  654. package/_types/src/components/common/TransactionModal/TransactionModal.d.ts +33 -0
  655. package/_types/src/components/common/TransactionModal/TransactionModal.d.ts.map +1 -0
  656. package/_types/src/components/common/TransactionModal/TransactionModalRenderer.d.ts +63 -0
  657. package/_types/src/components/common/TransactionModal/TransactionModalRenderer.d.ts.map +1 -0
  658. package/_types/src/components/common/TransactionModal/steps/ApprovalPlusSwapStep.d.ts +15 -0
  659. package/_types/src/components/common/TransactionModal/steps/ApprovalPlusSwapStep.d.ts.map +1 -0
  660. package/_types/src/components/common/TransactionModal/steps/DepositAddressValidatingStep.d.ts +9 -0
  661. package/_types/src/components/common/TransactionModal/steps/DepositAddressValidatingStep.d.ts.map +1 -0
  662. package/_types/src/components/common/TransactionModal/steps/ErrorStep.d.ts +17 -0
  663. package/_types/src/components/common/TransactionModal/steps/ErrorStep.d.ts.map +1 -0
  664. package/_types/src/components/common/TransactionModal/steps/SwapConfirmationStep.d.ts +30 -0
  665. package/_types/src/components/common/TransactionModal/steps/SwapConfirmationStep.d.ts.map +1 -0
  666. package/_types/src/components/common/TransactionModal/steps/SwapSuccessStep.d.ts +24 -0
  667. package/_types/src/components/common/TransactionModal/steps/SwapSuccessStep.d.ts.map +1 -0
  668. package/_types/src/components/common/TransactionModal/steps/TransactionsByChain.d.ts +14 -0
  669. package/_types/src/components/common/TransactionModal/steps/TransactionsByChain.d.ts.map +1 -0
  670. package/_types/src/components/common/TransactionModal/steps/WaitingForDepositStep.d.ts +13 -0
  671. package/_types/src/components/common/TransactionModal/steps/WaitingForDepositStep.d.ts.map +1 -0
  672. package/_types/src/components/common/UnverifiedTokenModal.d.ts +16 -0
  673. package/_types/src/components/common/UnverifiedTokenModal.d.ts.map +1 -0
  674. package/_types/src/components/primitives/AccessibleList.d.ts +17 -0
  675. package/_types/src/components/primitives/AccessibleList.d.ts.map +1 -0
  676. package/_types/src/components/primitives/Anchor.d.ts +44 -0
  677. package/_types/src/components/primitives/Anchor.d.ts.map +1 -0
  678. package/_types/src/components/primitives/Box.d.ts +10 -0
  679. package/_types/src/components/primitives/Box.d.ts.map +1 -0
  680. package/_types/src/components/primitives/Button.d.ts +11 -0
  681. package/_types/src/components/primitives/Button.d.ts.map +1 -0
  682. package/_types/src/components/primitives/ChainIcon.d.ts +12 -0
  683. package/_types/src/components/primitives/ChainIcon.d.ts.map +1 -0
  684. package/_types/src/components/primitives/ChainTokenIcon.d.ts +13 -0
  685. package/_types/src/components/primitives/ChainTokenIcon.d.ts.map +1 -0
  686. package/_types/src/components/primitives/Collapsible.d.ts +20 -0
  687. package/_types/src/components/primitives/Collapsible.d.ts.map +1 -0
  688. package/_types/src/components/primitives/Dialog.d.ts +23 -0
  689. package/_types/src/components/primitives/Dialog.d.ts.map +1 -0
  690. package/_types/src/components/primitives/Dropdown.d.ts +16 -0
  691. package/_types/src/components/primitives/Dropdown.d.ts.map +1 -0
  692. package/_types/src/components/primitives/Flex.d.ts +71 -0
  693. package/_types/src/components/primitives/Flex.d.ts.map +1 -0
  694. package/_types/src/components/primitives/Input.d.ts +18 -0
  695. package/_types/src/components/primitives/Input.d.ts.map +1 -0
  696. package/_types/src/components/primitives/Pill.d.ts +50 -0
  697. package/_types/src/components/primitives/Pill.d.ts.map +1 -0
  698. package/_types/src/components/primitives/Skeleton.d.ts +8 -0
  699. package/_types/src/components/primitives/Skeleton.d.ts.map +1 -0
  700. package/_types/src/components/primitives/Switch.d.ts +10 -0
  701. package/_types/src/components/primitives/Switch.d.ts.map +1 -0
  702. package/_types/src/components/primitives/Tabs.d.ts +17 -0
  703. package/_types/src/components/primitives/Tabs.d.ts.map +1 -0
  704. package/_types/src/components/primitives/Text.d.ts +99 -0
  705. package/_types/src/components/primitives/Text.d.ts.map +1 -0
  706. package/_types/src/components/primitives/Tooltip.d.ts +3 -0
  707. package/_types/src/components/primitives/Tooltip.d.ts.map +1 -0
  708. package/_types/src/components/primitives/index.d.ts +14 -0
  709. package/_types/src/components/primitives/index.d.ts.map +1 -0
  710. package/_types/src/components/widgets/FeeBreakdown.d.ts +14 -0
  711. package/_types/src/components/widgets/FeeBreakdown.d.ts.map +1 -0
  712. package/_types/src/components/widgets/FetchingQuoteLoader.d.ts +9 -0
  713. package/_types/src/components/widgets/FetchingQuoteLoader.d.ts.map +1 -0
  714. package/_types/src/components/widgets/OnrampWidget/index.d.ts +2 -0
  715. package/_types/src/components/widgets/OnrampWidget/index.d.ts.map +1 -0
  716. package/_types/src/components/widgets/OnrampWidget/modals/OnrampModal.d.ts +41 -0
  717. package/_types/src/components/widgets/OnrampWidget/modals/OnrampModal.d.ts.map +1 -0
  718. package/_types/src/components/widgets/OnrampWidget/modals/steps/OnrampConfirmingStep.d.ts +22 -0
  719. package/_types/src/components/widgets/OnrampWidget/modals/steps/OnrampConfirmingStep.d.ts.map +1 -0
  720. package/_types/src/components/widgets/OnrampWidget/modals/steps/OnrampMoonPayStep.d.ts +33 -0
  721. package/_types/src/components/widgets/OnrampWidget/modals/steps/OnrampMoonPayStep.d.ts.map +1 -0
  722. package/_types/src/components/widgets/OnrampWidget/modals/steps/OnrampProcessingPassthroughStep.d.ts +11 -0
  723. package/_types/src/components/widgets/OnrampWidget/modals/steps/OnrampProcessingPassthroughStep.d.ts.map +1 -0
  724. package/_types/src/components/widgets/OnrampWidget/modals/steps/OnrampProcessingStepUI.d.ts +19 -0
  725. package/_types/src/components/widgets/OnrampWidget/modals/steps/OnrampProcessingStepUI.d.ts.map +1 -0
  726. package/_types/src/components/widgets/OnrampWidget/modals/steps/OnrampSuccessStep.d.ts +15 -0
  727. package/_types/src/components/widgets/OnrampWidget/modals/steps/OnrampSuccessStep.d.ts.map +1 -0
  728. package/_types/src/components/widgets/OnrampWidget/widget/FiatCurrencyModal.d.ts +10 -0
  729. package/_types/src/components/widgets/OnrampWidget/widget/FiatCurrencyModal.d.ts.map +1 -0
  730. package/_types/src/components/widgets/OnrampWidget/widget/OnrampWidgetRenderer.d.ts +45 -0
  731. package/_types/src/components/widgets/OnrampWidget/widget/OnrampWidgetRenderer.d.ts.map +1 -0
  732. package/_types/src/components/widgets/OnrampWidget/widget/index.d.ts +38 -0
  733. package/_types/src/components/widgets/OnrampWidget/widget/index.d.ts.map +1 -0
  734. package/_types/src/components/widgets/PriceImpactTooltip.d.ts +10 -0
  735. package/_types/src/components/widgets/PriceImpactTooltip.d.ts.map +1 -0
  736. package/_types/src/components/widgets/SwapButton.d.ts +14 -0
  737. package/_types/src/components/widgets/SwapButton.d.ts.map +1 -0
  738. package/_types/src/components/widgets/SwapRouteSelector.d.ts +14 -0
  739. package/_types/src/components/widgets/SwapRouteSelector.d.ts.map +1 -0
  740. package/_types/src/components/widgets/SwapWidget/GasTopUpSection.d.ts +13 -0
  741. package/_types/src/components/widgets/SwapWidget/GasTopUpSection.d.ts.map +1 -0
  742. package/_types/src/components/widgets/SwapWidget/index.d.ts +50 -0
  743. package/_types/src/components/widgets/SwapWidget/index.d.ts.map +1 -0
  744. package/_types/src/components/widgets/SwapWidgetRenderer.d.ts +133 -0
  745. package/_types/src/components/widgets/SwapWidgetRenderer.d.ts.map +1 -0
  746. package/_types/src/components/widgets/TokenSelectorContainer.d.ts +8 -0
  747. package/_types/src/components/widgets/TokenSelectorContainer.d.ts.map +1 -0
  748. package/_types/src/components/widgets/WidgetContainer.d.ts +29 -0
  749. package/_types/src/components/widgets/WidgetContainer.d.ts.map +1 -0
  750. package/_types/src/components/widgets/WidgetErrorWell.d.ts +26 -0
  751. package/_types/src/components/widgets/WidgetErrorWell.d.ts.map +1 -0
  752. package/_types/src/components/widgets/WidgetFooter.d.ts +3 -0
  753. package/_types/src/components/widgets/WidgetFooter.d.ts.map +1 -0
  754. package/_types/src/constants/address.d.ts +5 -0
  755. package/_types/src/constants/address.d.ts.map +1 -0
  756. package/_types/src/constants/agwRegistryAbi.d.ts +16 -0
  757. package/_types/src/constants/agwRegistryAbi.d.ts.map +1 -0
  758. package/_types/src/constants/cache.d.ts +3 -0
  759. package/_types/src/constants/cache.d.ts.map +1 -0
  760. package/_types/src/constants/chainIdToAlchemyNetworkMap.d.ts +2 -0
  761. package/_types/src/constants/chainIdToAlchemyNetworkMap.d.ts.map +1 -0
  762. package/_types/src/constants/currencies.d.ts +8 -0
  763. package/_types/src/constants/currencies.d.ts.map +1 -0
  764. package/_types/src/constants/depositAddresses.d.ts +2 -0
  765. package/_types/src/constants/depositAddresses.d.ts.map +1 -0
  766. package/_types/src/constants/events.d.ts +59 -0
  767. package/_types/src/constants/events.d.ts.map +1 -0
  768. package/_types/src/constants/maxGasBuffer.d.ts +9 -0
  769. package/_types/src/constants/maxGasBuffer.d.ts.map +1 -0
  770. package/_types/src/constants/moonPayCurrencies.d.ts +11 -0
  771. package/_types/src/constants/moonPayCurrencies.d.ts.map +1 -0
  772. package/_types/src/constants/moonPayFiatCurrencies.d.ts +8 -0
  773. package/_types/src/constants/moonPayFiatCurrencies.d.ts.map +1 -0
  774. package/_types/src/constants/walletCompatibility.d.ts +4 -0
  775. package/_types/src/constants/walletCompatibility.d.ts.map +1 -0
  776. package/_types/src/hooks/index.d.ts +25 -0
  777. package/_types/src/hooks/index.d.ts.map +1 -0
  778. package/_types/src/hooks/useAdaptedWalletBalance.d.ts +175 -0
  779. package/_types/src/hooks/useAdaptedWalletBalance.d.ts.map +1 -0
  780. package/_types/src/hooks/useAtomicBatchSupport.d.ts +9 -0
  781. package/_types/src/hooks/useAtomicBatchSupport.d.ts.map +1 -0
  782. package/_types/src/hooks/useBitcoinBalance.d.ts +13 -0
  783. package/_types/src/hooks/useBitcoinBalance.d.ts.map +1 -0
  784. package/_types/src/hooks/useCexAddresses.d.ts +6 -0
  785. package/_types/src/hooks/useCexAddresses.d.ts.map +1 -0
  786. package/_types/src/hooks/useCurrencyBalance.d.ts +23 -0
  787. package/_types/src/hooks/useCurrencyBalance.d.ts.map +1 -0
  788. package/_types/src/hooks/useDebounceState.d.ts +11 -0
  789. package/_types/src/hooks/useDebounceState.d.ts.map +1 -0
  790. package/_types/src/hooks/useDisconnected.d.ts +4 -0
  791. package/_types/src/hooks/useDisconnected.d.ts.map +1 -0
  792. package/_types/src/hooks/useDuneBalances.d.ts +25 -0
  793. package/_types/src/hooks/useDuneBalances.d.ts.map +1 -0
  794. package/_types/src/hooks/useENSResolver.d.ts +14 -0
  795. package/_types/src/hooks/useENSResolver.d.ts.map +1 -0
  796. package/_types/src/hooks/useEclipseBalance.d.ts +12 -0
  797. package/_types/src/hooks/useEclipseBalance.d.ts.map +1 -0
  798. package/_types/src/hooks/useEnhancedTokensList.d.ts +23 -0
  799. package/_types/src/hooks/useEnhancedTokensList.d.ts.map +1 -0
  800. package/_types/src/hooks/useFallbackState.d.ts +5 -0
  801. package/_types/src/hooks/useFallbackState.d.ts.map +1 -0
  802. package/_types/src/hooks/useGasTopUpRequired.d.ts +9 -0
  803. package/_types/src/hooks/useGasTopUpRequired.d.ts.map +1 -0
  804. package/_types/src/hooks/useHyperliquidUsdcBalance.d.ts +23 -0
  805. package/_types/src/hooks/useHyperliquidUsdcBalance.d.ts.map +1 -0
  806. package/_types/src/hooks/useInternalRelayChains.d.ts +131 -0
  807. package/_types/src/hooks/useInternalRelayChains.d.ts.map +1 -0
  808. package/_types/src/hooks/useIpAddress.d.ts +9 -0
  809. package/_types/src/hooks/useIpAddress.d.ts.map +1 -0
  810. package/_types/src/hooks/useIsAGW.d.ts +2 -0
  811. package/_types/src/hooks/useIsAGW.d.ts.map +1 -0
  812. package/_types/src/hooks/useIsPassthrough.d.ts +17 -0
  813. package/_types/src/hooks/useIsPassthrough.d.ts.map +1 -0
  814. package/_types/src/hooks/useIsWalletCompatible.d.ts +4 -0
  815. package/_types/src/hooks/useIsWalletCompatible.d.ts.map +1 -0
  816. package/_types/src/hooks/useMoonPayCurrencies.d.ts +51 -0
  817. package/_types/src/hooks/useMoonPayCurrencies.d.ts.map +1 -0
  818. package/_types/src/hooks/useMoonPayGeolocation.d.ts +25 -0
  819. package/_types/src/hooks/useMoonPayGeolocation.d.ts.map +1 -0
  820. package/_types/src/hooks/useMoonPayTransaction.d.ts +22 -0
  821. package/_types/src/hooks/useMoonPayTransaction.d.ts.map +1 -0
  822. package/_types/src/hooks/useMounted.d.ts +3 -0
  823. package/_types/src/hooks/useMounted.d.ts.map +1 -0
  824. package/_types/src/hooks/usePreviousValueChange.d.ts +3 -0
  825. package/_types/src/hooks/usePreviousValueChange.d.ts.map +1 -0
  826. package/_types/src/hooks/useRelayClient.d.ts +2 -0
  827. package/_types/src/hooks/useRelayClient.d.ts.map +1 -0
  828. package/_types/src/hooks/useSuiBalance.d.ts +14 -0
  829. package/_types/src/hooks/useSuiBalance.d.ts.map +1 -0
  830. package/_types/src/hooks/useSupportedMoonPayCurrencyCode.d.ts +11 -0
  831. package/_types/src/hooks/useSupportedMoonPayCurrencyCode.d.ts.map +1 -0
  832. package/_types/src/hooks/useWalletAddress.d.ts +5 -0
  833. package/_types/src/hooks/useWalletAddress.d.ts.map +1 -0
  834. package/_types/src/hooks/widget/useSwapButtonCta.d.ts +28 -0
  835. package/_types/src/hooks/widget/useSwapButtonCta.d.ts.map +1 -0
  836. package/_types/src/icons/SwitchIcon.d.ts +9 -0
  837. package/_types/src/icons/SwitchIcon.d.ts.map +1 -0
  838. package/_types/src/icons/index.d.ts +2 -0
  839. package/_types/src/icons/index.d.ts.map +1 -0
  840. package/_types/src/img/AllChainsLogo.d.ts +4 -0
  841. package/_types/src/img/AllChainsLogo.d.ts.map +1 -0
  842. package/_types/src/img/MoonPayLogo.d.ts +4 -0
  843. package/_types/src/img/MoonPayLogo.d.ts.map +1 -0
  844. package/_types/src/img/ReservoirText.d.ts +4 -0
  845. package/_types/src/img/ReservoirText.d.ts.map +1 -0
  846. package/_types/src/index.d.ts +11 -0
  847. package/_types/src/index.d.ts.map +1 -0
  848. package/_types/src/providers/RelayClientProvider.d.ts +9 -0
  849. package/_types/src/providers/RelayClientProvider.d.ts.map +1 -0
  850. package/_types/src/providers/RelayKitProvider.d.ts +58 -0
  851. package/_types/src/providers/RelayKitProvider.d.ts.map +1 -0
  852. package/_types/src/themes/RelayKitTheme.d.ts +78 -0
  853. package/_types/src/themes/RelayKitTheme.d.ts.map +1 -0
  854. package/_types/src/themes/index.d.ts +3 -0
  855. package/_types/src/themes/index.d.ts.map +1 -0
  856. package/_types/src/types/BridgeFee.d.ts +15 -0
  857. package/_types/src/types/BridgeFee.d.ts.map +1 -0
  858. package/_types/src/types/Fiat.d.ts +7 -0
  859. package/_types/src/types/Fiat.d.ts.map +1 -0
  860. package/_types/src/types/RelayTransaction.d.ts +4 -0
  861. package/_types/src/types/RelayTransaction.d.ts.map +1 -0
  862. package/_types/src/types/index.d.ts +21 -0
  863. package/_types/src/types/index.d.ts.map +1 -0
  864. package/_types/src/utils/address.d.ts +8 -0
  865. package/_types/src/utils/address.d.ts.map +1 -0
  866. package/_types/src/utils/bitcoin.d.ts +5 -0
  867. package/_types/src/utils/bitcoin.d.ts.map +1 -0
  868. package/_types/src/utils/browser.d.ts +2 -0
  869. package/_types/src/utils/browser.d.ts.map +1 -0
  870. package/_types/src/utils/ens.d.ts +2 -0
  871. package/_types/src/utils/ens.d.ts.map +1 -0
  872. package/_types/src/utils/errors.d.ts +3 -0
  873. package/_types/src/utils/errors.d.ts.map +1 -0
  874. package/_types/src/utils/fetcher.d.ts +4 -0
  875. package/_types/src/utils/fetcher.d.ts.map +1 -0
  876. package/_types/src/utils/getChainBlockExplorerUrl.d.ts +4 -0
  877. package/_types/src/utils/getChainBlockExplorerUrl.d.ts.map +1 -0
  878. package/_types/src/utils/getTxBlockExplorerUrl.d.ts +3 -0
  879. package/_types/src/utils/getTxBlockExplorerUrl.d.ts.map +1 -0
  880. package/_types/src/utils/hashing.d.ts +2 -0
  881. package/_types/src/utils/hashing.d.ts.map +1 -0
  882. package/_types/src/utils/localStorage.d.ts +30 -0
  883. package/_types/src/utils/localStorage.d.ts.map +1 -0
  884. package/_types/src/utils/moonPay.d.ts +11 -0
  885. package/_types/src/utils/moonPay.d.ts.map +1 -0
  886. package/_types/src/utils/nativeMaxAmount.d.ts +34 -0
  887. package/_types/src/utils/nativeMaxAmount.d.ts.map +1 -0
  888. package/_types/src/utils/numbers.d.ts +21 -0
  889. package/_types/src/utils/numbers.d.ts.map +1 -0
  890. package/_types/src/utils/qrcode.d.ts +3 -0
  891. package/_types/src/utils/qrcode.d.ts.map +1 -0
  892. package/_types/src/utils/quote.d.ts +132 -0
  893. package/_types/src/utils/quote.d.ts.map +1 -0
  894. package/_types/src/utils/relayTransaction.d.ts +21 -0
  895. package/_types/src/utils/relayTransaction.d.ts.map +1 -0
  896. package/_types/src/utils/slippage.d.ts +9 -0
  897. package/_types/src/utils/slippage.d.ts.map +1 -0
  898. package/_types/src/utils/solana.d.ts +10 -0
  899. package/_types/src/utils/solana.d.ts.map +1 -0
  900. package/_types/src/utils/steps.d.ts +43 -0
  901. package/_types/src/utils/steps.d.ts.map +1 -0
  902. package/_types/src/utils/sui.d.ts +8 -0
  903. package/_types/src/utils/sui.d.ts.map +1 -0
  904. package/_types/src/utils/theme.d.ts +5 -0
  905. package/_types/src/utils/theme.d.ts.map +1 -0
  906. package/_types/src/utils/time.d.ts +4 -0
  907. package/_types/src/utils/time.d.ts.map +1 -0
  908. package/_types/src/utils/titleCase.d.ts +8 -0
  909. package/_types/src/utils/titleCase.d.ts.map +1 -0
  910. package/_types/src/utils/tokenSelector.d.ts +23 -0
  911. package/_types/src/utils/tokenSelector.d.ts.map +1 -0
  912. package/_types/src/utils/tokens.d.ts +21 -0
  913. package/_types/src/utils/tokens.d.ts.map +1 -0
  914. package/_types/src/utils/tron.d.ts +6 -0
  915. package/_types/src/utils/tron.d.ts.map +1 -0
  916. package/_types/src/utils/truncate.d.ts +13 -0
  917. package/_types/src/utils/truncate.d.ts.map +1 -0
  918. package/_types/src/version.d.ts +2 -0
  919. package/_types/src/version.d.ts.map +1 -0
  920. package/_types/tsconfig.build.tsbuildinfo +1 -0
  921. package/dist/panda.buildinfo.json +575 -0
  922. package/dist/styles.css +3408 -0
  923. package/package.json +109 -0
  924. package/readme.md +36 -0
@@ -0,0 +1,955 @@
1
+ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
+ import { Flex, Button, Text, Box } from '../../primitives/index.js';
3
+ import { useCallback, useContext, useEffect, useMemo, useState } from 'react';
4
+ import { useRelayClient } from '../../../hooks/index.js';
5
+ import { formatUnits } from 'viem';
6
+ import { usePublicClient } from 'wagmi';
7
+ import { formatFixedLength, formatDollar, formatNumber } from '../../../utils/numbers.js';
8
+ import AmountInput from '../../common/AmountInput.js';
9
+ import { FontAwesomeIcon } from '@fortawesome/react-fontawesome';
10
+ import { SwitchIcon } from '../../../icons/index.js';
11
+ import { getFeeBufferAmount } from '../../../utils/nativeMaxAmount.js';
12
+ import { WidgetErrorWell } from '../WidgetErrorWell.js';
13
+ import { BalanceDisplay } from '../../common/BalanceDisplay.js';
14
+ import { EventNames } from '../../../constants/events.js';
15
+ import SwapWidgetRenderer from '../SwapWidgetRenderer.js';
16
+ import WidgetContainer from '../WidgetContainer.js';
17
+ import SwapButton from '../SwapButton.js';
18
+ import TokenSelectorContainer from '../TokenSelectorContainer.js';
19
+ import FeeBreakdown from '../FeeBreakdown.js';
20
+ import { faArrowDown, faClipboard } from '@fortawesome/free-solid-svg-icons';
21
+ import { TokenTrigger } from '../../common/TokenSelector/triggers/TokenTrigger.js';
22
+ import { MultiWalletDropdown } from '../../common/MultiWalletDropdown.js';
23
+ import { findSupportedWallet } from '../../../utils/address.js';
24
+ import { isDeadAddress, tronDeadAddress } from '@relayprotocol/relay-sdk';
25
+ import SwapRouteSelector from '../SwapRouteSelector.js';
26
+ import { ProviderOptionsContext } from '../../../providers/RelayKitProvider.js';
27
+ import { findBridgableToken } from '../../../utils/tokens.js';
28
+ import { isChainLocked } from '../../../utils/tokenSelector.js';
29
+ import TokenSelector from '../../common/TokenSelector/TokenSelector.js';
30
+ import { UnverifiedTokenModal } from '../../common/UnverifiedTokenModal.js';
31
+ import { alreadyAcceptedToken } from '../../../utils/localStorage.js';
32
+ import GasTopUpSection from './GasTopUpSection.js';
33
+ import { calculateUsdValue, getSwapEventData } from '../../../utils/quote.js';
34
+ const SwapWidget = ({ fromToken, setFromToken, toToken, setToToken, defaultToAddress, defaultAmount, defaultTradeType, slippageTolerance, lockToToken = false, lockFromToken = false, lockChainId, singleChainMode = false, wallet, multiWalletSupportEnabled = false, linkedWallets, supportedWalletVMs, disableInputAutoFocus = false, popularChainIds, disablePasteWalletAddressOption, onSetPrimaryWallet, onLinkNewWallet, onFromTokenChange, onToTokenChange, onConnectWallet, onAnalyticEvent: _onAnalyticEvent, onSwapSuccess, onSwapValidating, onSwapError }) => {
35
+ const onAnalyticEvent = useCallback((eventName, data) => {
36
+ try {
37
+ _onAnalyticEvent?.(eventName, data);
38
+ }
39
+ catch (e) {
40
+ console.error('Error in onAnalyticEvent', eventName, data, e);
41
+ }
42
+ }, [_onAnalyticEvent]);
43
+ const relayClient = useRelayClient();
44
+ const providerOptionsContext = useContext(ProviderOptionsContext);
45
+ const connectorKeyOverrides = providerOptionsContext.vmConnectorKeyOverrides;
46
+ const [transactionModalOpen, setTransactionModalOpen] = useState(false);
47
+ const [depositAddressModalOpen, setDepositAddressModalOpen] = useState(false);
48
+ const [addressModalOpen, setAddressModalOpen] = useState(false);
49
+ const [pendingSuccessFlush, setPendingSuccessFlush] = useState(false);
50
+ const [unverifiedTokens, setUnverifiedTokens] = useState([]);
51
+ const [isUsdInputMode, setIsUsdInputMode] = useState(false);
52
+ const [usdInputValue, setUsdInputValue] = useState('');
53
+ const [usdOutputValue, setUsdOutputValue] = useState('');
54
+ const [tokenInputCache, setTokenInputCache] = useState('');
55
+ const hasLockedToken = lockFromToken || lockToToken;
56
+ const isSingleChainLocked = singleChainMode && lockChainId !== undefined;
57
+ //Handle external unverified tokens
58
+ useEffect(() => {
59
+ if (fromToken && 'verified' in fromToken && !fromToken.verified) {
60
+ const isAlreadyAccepted = alreadyAcceptedToken(fromToken);
61
+ if (!isAlreadyAccepted) {
62
+ unverifiedTokens.push({ token: fromToken, context: 'from' });
63
+ setFromToken?.(undefined);
64
+ }
65
+ }
66
+ if (toToken && 'verified' in toToken && !toToken.verified) {
67
+ const isAlreadyAccepted = alreadyAcceptedToken(toToken);
68
+ if (!isAlreadyAccepted) {
69
+ unverifiedTokens.push({ token: toToken, context: 'to' });
70
+ setToToken?.(undefined);
71
+ }
72
+ }
73
+ }, [fromToken, toToken]);
74
+ return (_jsx(SwapWidgetRenderer, { context: "Swap", transactionModalOpen: transactionModalOpen, setTransactionModalOpen: setTransactionModalOpen, depositAddressModalOpen: depositAddressModalOpen, defaultAmount: defaultAmount, defaultToAddress: defaultToAddress, defaultTradeType: defaultTradeType, toToken: toToken, setToToken: setToToken, fromToken: fromToken, setFromToken: setFromToken, slippageTolerance: slippageTolerance, wallet: wallet, linkedWallets: linkedWallets, multiWalletSupportEnabled: multiWalletSupportEnabled, onSwapError: onSwapError, onAnalyticEvent: onAnalyticEvent, supportedWalletVMs: supportedWalletVMs, children: ({ quote, steps, swap, setSteps, feeBreakdown, fromToken, setFromToken, toToken, setToToken, error, toDisplayName, address, recipient, customToAddress, setCustomToAddress, tradeType, setTradeType, isSameCurrencySameRecipientSwap, debouncedInputAmountValue, debouncedAmountInputControls, setAmountInputValue, amountInputValue, amountOutputValue, debouncedOutputAmountValue, debouncedAmountOutputControls, setAmountOutputValue, toBalance, toBalancePending, isLoadingToBalance, isFetchingQuote, isLoadingFromBalance, fromBalance, fromBalancePending, highRelayerServiceFee, relayerFeeProportion, hasInsufficientBalance, isInsufficientLiquidityError, isCapacityExceededError, isCouldNotExecuteError, ctaCopy, isFromNative, timeEstimate, isSvmSwap, isBvmSwap, isValidFromAddress, isValidToAddress, supportsExternalLiquidity, useExternalLiquidity, slippageTolerance, canonicalTimeEstimate, fromChainWalletVMSupported, toChainWalletVMSupported, isRecipientLinked, swapError, recipientWalletSupportsChain, gasTopUpEnabled, setGasTopUpEnabled, gasTopUpRequired, gasTopUpAmount, gasTopUpAmountUsd, linkedWallet, quoteParameters, setSwapError, setUseExternalLiquidity, invalidateBalanceQueries, invalidateQuoteQuery, quoteInProgress, setQuoteInProgress, abortController, fromTokenPriceData, toTokenPriceData, isLoadingFromTokenPrice, isLoadingToTokenPrice }) => {
75
+ // Calculate the USD value of the input amount
76
+ const inputAmountUsd = useMemo(() => {
77
+ return calculateUsdValue(fromTokenPriceData?.price, amountInputValue);
78
+ }, [fromTokenPriceData, amountInputValue]);
79
+ // Calculate the USD value of the output amount
80
+ const outputAmountUsd = useMemo(() => {
81
+ return calculateUsdValue(toTokenPriceData?.price, amountOutputValue);
82
+ }, [toTokenPriceData, amountOutputValue]);
83
+ const handleMaxAmountClicked = async (amount, percent, bufferAmount) => {
84
+ if (fromToken) {
85
+ const formattedAmount = formatUnits(amount, fromToken?.decimals);
86
+ setAmountInputValue(formattedAmount);
87
+ setTradeType('EXACT_INPUT');
88
+ debouncedAmountOutputControls.cancel();
89
+ debouncedAmountInputControls.flush();
90
+ onAnalyticEvent?.(EventNames.MAX_AMOUNT_CLICKED, {
91
+ percent: percent,
92
+ bufferAmount: bufferAmount ? bufferAmount.toString() : '0',
93
+ chainType: fromChain?.vmType
94
+ });
95
+ if (isUsdInputMode && conversionRate) {
96
+ const numericTokenAmount = Number(formattedAmount);
97
+ if (!isNaN(numericTokenAmount)) {
98
+ const usdEquivalent = numericTokenAmount * conversionRate;
99
+ setUsdInputValue(usdEquivalent.toFixed(2));
100
+ }
101
+ }
102
+ }
103
+ };
104
+ const handleSetFromToken = (token) => {
105
+ if (!token) {
106
+ setFromToken(undefined);
107
+ onFromTokenChange?.(undefined);
108
+ return;
109
+ }
110
+ let _token = token;
111
+ const newFromChain = relayClient?.chains.find((chain) => token?.chainId == chain.id);
112
+ if (newFromChain?.vmType &&
113
+ !supportedWalletVMs.includes(newFromChain?.vmType)) {
114
+ setTradeType('EXACT_INPUT');
115
+ const _toToken = findBridgableToken(toChain, toToken);
116
+ if (_toToken && _toToken?.address != toToken?.address) {
117
+ handleSetToToken(_toToken);
118
+ }
119
+ const _fromToken = findBridgableToken(newFromChain, _token);
120
+ if (_fromToken && _fromToken.address != _token?.address) {
121
+ _token = _fromToken;
122
+ }
123
+ }
124
+ setFromToken(_token);
125
+ onFromTokenChange?.(_token);
126
+ };
127
+ const handleSetToToken = (token) => {
128
+ if (!token) {
129
+ setToToken(undefined);
130
+ onToTokenChange?.(undefined);
131
+ return;
132
+ }
133
+ let _token = token;
134
+ if (!fromChainWalletVMSupported) {
135
+ const newToChain = relayClient?.chains.find((chain) => token?.chainId == chain.id);
136
+ if (newToChain) {
137
+ const _toToken = findBridgableToken(newToChain, _token);
138
+ if (_toToken && _toToken.address != _token?.address) {
139
+ _token = _toToken;
140
+ }
141
+ }
142
+ }
143
+ setToToken(_token);
144
+ onToTokenChange?.(_token);
145
+ };
146
+ const fromChain = relayClient?.chains?.find((chain) => chain.id === fromToken?.chainId);
147
+ const toChain = relayClient?.chains?.find((chain) => chain.id === toToken?.chainId);
148
+ // Get public client for the fromChain to estimate gas
149
+ const publicClient = usePublicClient({ chainId: fromChain?.id });
150
+ useEffect(() => {
151
+ if (multiWalletSupportEnabled &&
152
+ fromChain &&
153
+ address &&
154
+ linkedWallets &&
155
+ !isValidFromAddress) {
156
+ const supportedAddress = findSupportedWallet(fromChain, address, linkedWallets, connectorKeyOverrides);
157
+ if (supportedAddress) {
158
+ onSetPrimaryWallet?.(supportedAddress);
159
+ }
160
+ }
161
+ if (multiWalletSupportEnabled &&
162
+ toChain &&
163
+ recipient &&
164
+ linkedWallets &&
165
+ !isValidToAddress) {
166
+ const supportedAddress = findSupportedWallet(toChain, recipient, linkedWallets, connectorKeyOverrides);
167
+ if (supportedAddress) {
168
+ setCustomToAddress(supportedAddress);
169
+ }
170
+ else {
171
+ setCustomToAddress(undefined);
172
+ }
173
+ }
174
+ }, [
175
+ multiWalletSupportEnabled,
176
+ fromChain?.id,
177
+ toChain?.id,
178
+ address,
179
+ linkedWallets,
180
+ onSetPrimaryWallet,
181
+ isValidFromAddress,
182
+ isValidToAddress,
183
+ connectorKeyOverrides
184
+ ]);
185
+ //Handle if the paste wallet address option is disabled while there is a custom to address
186
+ useEffect(() => {
187
+ if (disablePasteWalletAddressOption && customToAddress) {
188
+ setCustomToAddress(undefined);
189
+ }
190
+ }, [disablePasteWalletAddressOption]);
191
+ const promptSwitchRoute = (isCapacityExceededError || isCouldNotExecuteError) &&
192
+ supportsExternalLiquidity &&
193
+ !isSingleChainLocked;
194
+ const isAutoSlippage = slippageTolerance === undefined;
195
+ const isHighPriceImpact = Number(quote?.details?.totalImpact?.percent) < -3.5;
196
+ const totalImpactUsd = quote?.details?.totalImpact?.usd;
197
+ const showHighPriceImpactWarning = Boolean(isHighPriceImpact && totalImpactUsd && Number(totalImpactUsd) <= -10);
198
+ // Calculate conversion rate
199
+ const conversionRate = useMemo(() => {
200
+ if (isUsdInputMode) {
201
+ // When in USD input mode, the conversion rate is the price of the fromToken.
202
+ if (fromTokenPriceData?.price && fromTokenPriceData.price > 0) {
203
+ return fromTokenPriceData.price;
204
+ }
205
+ else {
206
+ // If no price data, or price is 0, return null to avoid stale calculations.
207
+ return null;
208
+ }
209
+ }
210
+ else {
211
+ // When in token input mode, calculate rate from quote if available.
212
+ if (amountInputValue &&
213
+ Number(amountInputValue) > 0 &&
214
+ quote?.details?.currencyIn?.amountUsd) {
215
+ const tokenVal = Number(amountInputValue);
216
+ const usdVal = Number(quote.details.currencyIn.amountUsd);
217
+ if (tokenVal > 0 && usdVal > 0) {
218
+ const rate = usdVal / tokenVal;
219
+ return rate;
220
+ }
221
+ else {
222
+ return null;
223
+ }
224
+ }
225
+ else {
226
+ // If in token mode and token input is cleared or zero, return null
227
+ return null;
228
+ }
229
+ }
230
+ }, [
231
+ isUsdInputMode,
232
+ fromTokenPriceData?.price,
233
+ quote?.details?.currencyIn?.amountUsd,
234
+ amountInputValue
235
+ ]);
236
+ // toggle between token and usd input mode
237
+ const toggleInputMode = () => {
238
+ if (!isUsdInputMode) {
239
+ // Switching TO USD mode
240
+ let newUsdInputValue = '';
241
+ let newUsdOutputValue = '';
242
+ // Calculate USD input value
243
+ if (quote?.details?.currencyIn?.amountUsd &&
244
+ Number(quote.details.currencyIn.amountUsd) > 0) {
245
+ newUsdInputValue = String(Number(quote.details.currencyIn.amountUsd));
246
+ }
247
+ else if (inputAmountUsd && inputAmountUsd > 0) {
248
+ newUsdInputValue = inputAmountUsd.toFixed(2);
249
+ }
250
+ else if (amountInputValue &&
251
+ Number(amountInputValue) > 0 &&
252
+ conversionRate &&
253
+ conversionRate > 0) {
254
+ newUsdInputValue = (Number(amountInputValue) * conversionRate).toFixed(2);
255
+ }
256
+ // Calculate USD output value
257
+ if (quote?.details?.currencyOut?.amountUsd &&
258
+ Number(quote.details.currencyOut.amountUsd) > 0) {
259
+ newUsdOutputValue = String(Number(quote.details.currencyOut.amountUsd));
260
+ }
261
+ else if (outputAmountUsd && outputAmountUsd > 0) {
262
+ newUsdOutputValue = outputAmountUsd.toFixed(2);
263
+ }
264
+ else if (amountOutputValue &&
265
+ Number(amountOutputValue) > 0 &&
266
+ toTokenPriceData?.price &&
267
+ toTokenPriceData.price > 0) {
268
+ newUsdOutputValue = (Number(amountOutputValue) * toTokenPriceData.price).toFixed(2);
269
+ }
270
+ setTokenInputCache(amountInputValue);
271
+ setUsdInputValue(newUsdInputValue);
272
+ setUsdOutputValue(newUsdOutputValue);
273
+ setIsUsdInputMode(true);
274
+ // Default to EXACT_INPUT unless we're currently in EXPECTED_OUTPUT mode with a valid USD output value
275
+ if (tradeType !== 'EXPECTED_OUTPUT' || !newUsdOutputValue) {
276
+ setTradeType('EXACT_INPUT');
277
+ }
278
+ }
279
+ else {
280
+ // Switching FROM USD mode
281
+ if (!usdInputValue && tokenInputCache) {
282
+ setAmountInputValue(tokenInputCache);
283
+ }
284
+ setUsdInputValue('');
285
+ setUsdOutputValue('');
286
+ setIsUsdInputMode(false);
287
+ // Maintain current trade type when switching back to token mode
288
+ }
289
+ };
290
+ //Update token input value when USD input changes in USD mode
291
+ useEffect(() => {
292
+ if (isUsdInputMode) {
293
+ if (conversionRate && conversionRate > 0 && usdInputValue) {
294
+ const usdValue = Number(usdInputValue);
295
+ if (!isNaN(usdValue) && usdValue > 0) {
296
+ const tokenEquivalent = (usdValue / conversionRate).toFixed(fromToken?.decimals ?? 8);
297
+ setAmountInputValue(tokenEquivalent);
298
+ }
299
+ }
300
+ else if (usdInputValue === '' || Number(usdInputValue) === 0) {
301
+ setAmountInputValue('');
302
+ }
303
+ }
304
+ }, [
305
+ isUsdInputMode,
306
+ usdInputValue,
307
+ conversionRate,
308
+ setAmountInputValue,
309
+ fromToken?.decimals
310
+ ]);
311
+ //Update token output value when USD output changes in USD mode
312
+ useEffect(() => {
313
+ if (isUsdInputMode && tradeType === 'EXPECTED_OUTPUT') {
314
+ if (toTokenPriceData?.price &&
315
+ toTokenPriceData.price > 0 &&
316
+ usdOutputValue) {
317
+ const usdValue = Number(usdOutputValue);
318
+ if (!isNaN(usdValue) && usdValue > 0) {
319
+ const tokenEquivalent = (usdValue / toTokenPriceData.price).toFixed(toToken?.decimals ?? 8);
320
+ setAmountOutputValue(tokenEquivalent);
321
+ }
322
+ }
323
+ else if (usdOutputValue === '' || Number(usdOutputValue) === 0) {
324
+ setAmountOutputValue('');
325
+ }
326
+ }
327
+ }, [
328
+ isUsdInputMode,
329
+ tradeType,
330
+ usdOutputValue,
331
+ toTokenPriceData?.price,
332
+ setAmountOutputValue,
333
+ toToken?.decimals
334
+ ]);
335
+ //Update USD output value when in USD mode
336
+ useEffect(() => {
337
+ if (isUsdInputMode) {
338
+ // For EXPECTED_OUTPUT, don't override user's typed value
339
+ if (tradeType === 'EXPECTED_OUTPUT') {
340
+ // User is controlling the output value directly
341
+ return;
342
+ }
343
+ // For EXACT_INPUT, update based on quote or calculations
344
+ if (quote?.details?.currencyOut?.amountUsd && !isFetchingQuote) {
345
+ // Use quote USD value when available
346
+ const quoteUsdValue = Number(quote.details.currencyOut.amountUsd);
347
+ if (!isNaN(quoteUsdValue) && quoteUsdValue >= 0) {
348
+ setUsdOutputValue(quoteUsdValue.toFixed(2));
349
+ }
350
+ }
351
+ else if (toTokenPriceData?.price &&
352
+ toTokenPriceData.price > 0 &&
353
+ amountOutputValue &&
354
+ Number(amountOutputValue) > 0) {
355
+ // Fallback to direct token price calculation
356
+ const tokenAmount = Number(amountOutputValue);
357
+ const usdEquivalent = tokenAmount * toTokenPriceData.price;
358
+ if (!isNaN(usdEquivalent) && usdEquivalent >= 0) {
359
+ setUsdOutputValue(usdEquivalent.toFixed(2));
360
+ }
361
+ }
362
+ else if (!amountOutputValue || Number(amountOutputValue) === 0) {
363
+ setUsdOutputValue('');
364
+ }
365
+ }
366
+ }, [
367
+ isUsdInputMode,
368
+ tradeType,
369
+ quote?.details?.currencyOut?.amountUsd,
370
+ isFetchingQuote,
371
+ toTokenPriceData?.price,
372
+ amountOutputValue
373
+ ]);
374
+ //Update USD input value when in EXPECTED_OUTPUT mode
375
+ useEffect(() => {
376
+ if (isUsdInputMode && tradeType === 'EXPECTED_OUTPUT') {
377
+ if (quote?.details?.currencyIn?.amountUsd && !isFetchingQuote) {
378
+ // Use quote USD value when available
379
+ const quoteUsdValue = Number(quote.details.currencyIn.amountUsd);
380
+ if (!isNaN(quoteUsdValue) && quoteUsdValue >= 0) {
381
+ setUsdInputValue(quoteUsdValue.toFixed(2));
382
+ }
383
+ }
384
+ else if (!amountInputValue || Number(amountInputValue) === 0) {
385
+ setUsdInputValue('');
386
+ }
387
+ }
388
+ }, [
389
+ isUsdInputMode,
390
+ tradeType,
391
+ quote?.details?.currencyIn?.amountUsd,
392
+ isFetchingQuote,
393
+ amountInputValue
394
+ ]);
395
+ const recipientLinkedWallet = linkedWallets?.find((wallet) => wallet.address === recipient);
396
+ return (_jsxs(_Fragment, { children: [_jsx(WidgetContainer, { steps: steps, setSteps: setSteps, quoteInProgress: quoteInProgress, setQuoteInProgress: setQuoteInProgress, transactionModalOpen: transactionModalOpen, setTransactionModalOpen: setTransactionModalOpen, depositAddressModalOpen: depositAddressModalOpen, setDepositAddressModalOpen: setDepositAddressModalOpen, addressModalOpen: addressModalOpen, setAddressModalOpen: setAddressModalOpen, fromToken: fromToken, fromChain: fromChain, toToken: toToken, toChain: toChain, address: address, recipient: recipient, amountInputValue: amountInputValue, amountOutputValue: amountOutputValue, debouncedInputAmountValue: debouncedInputAmountValue, debouncedOutputAmountValue: debouncedOutputAmountValue, tradeType: tradeType, onTransactionModalOpenChange: (open) => {
397
+ if (!open) {
398
+ if (pendingSuccessFlush) {
399
+ setPendingSuccessFlush(false);
400
+ }
401
+ else if (steps) {
402
+ invalidateQuoteQuery();
403
+ }
404
+ // Abort ongoing execution
405
+ if (abortController) {
406
+ abortController.abort();
407
+ }
408
+ setSwapError(null);
409
+ setSteps(null);
410
+ setQuoteInProgress(null);
411
+ }
412
+ else if (pendingSuccessFlush) {
413
+ setPendingSuccessFlush(false);
414
+ }
415
+ }, onDepositAddressModalOpenChange: (open) => {
416
+ if (!open) {
417
+ setSwapError(null);
418
+ if (pendingSuccessFlush) {
419
+ setPendingSuccessFlush(false);
420
+ }
421
+ else {
422
+ invalidateQuoteQuery();
423
+ }
424
+ }
425
+ else if (pendingSuccessFlush) {
426
+ setPendingSuccessFlush(false);
427
+ }
428
+ }, useExternalLiquidity: useExternalLiquidity, slippageTolerance: slippageTolerance, swapError: swapError, setSwapError: setSwapError, onSwapSuccess: (data) => {
429
+ setPendingSuccessFlush(true);
430
+ setGasTopUpEnabled(true);
431
+ setAmountInputValue('');
432
+ setAmountOutputValue('');
433
+ onSwapSuccess?.(data);
434
+ }, onSwapValidating: onSwapValidating, onAnalyticEvent: onAnalyticEvent, invalidateBalanceQueries: invalidateBalanceQueries, invalidateQuoteQuery: invalidateQuoteQuery, customToAddress: customToAddress, setCustomToAddress: setCustomToAddress, timeEstimate: timeEstimate, wallet: wallet, linkedWallets: linkedWallets, multiWalletSupportEnabled: multiWalletSupportEnabled, children: () => {
435
+ return (_jsxs(Flex, { direction: "column", css: {
436
+ width: '100%',
437
+ overflow: 'hidden',
438
+ border: 'widget-border',
439
+ minWidth: 300,
440
+ maxWidth: 408
441
+ }, children: [_jsxs(TokenSelectorContainer, { css: { backgroundColor: 'widget-background' }, id: 'from-token-section', children: [_jsxs(Flex, { align: "center", justify: "between", css: { gap: '2', width: '100%' }, children: [_jsx(Text, { style: "subtitle2", color: "subtle", children: "Sell" }), multiWalletSupportEnabled === true &&
442
+ fromChainWalletVMSupported ? (_jsx(MultiWalletDropdown, { context: "origin", selectedWalletAddress: address, disablePasteWalletAddressOption: disablePasteWalletAddressOption, onSelect: (wallet) => onSetPrimaryWallet?.(wallet.address), chain: fromChain, onLinkNewWallet: () => {
443
+ if (!address && fromChainWalletVMSupported) {
444
+ onConnectWallet?.();
445
+ }
446
+ else {
447
+ onLinkNewWallet?.({
448
+ chain: fromChain,
449
+ direction: 'from'
450
+ })?.then((wallet) => {
451
+ onSetPrimaryWallet?.(wallet.address);
452
+ });
453
+ }
454
+ }, setAddressModalOpen: setAddressModalOpen, wallets: linkedWallets, onAnalyticEvent: onAnalyticEvent })) : null] }), _jsxs(Flex, { align: "center", justify: "between", css: { gap: '4', width: '100%' }, children: [_jsx(AmountInput, { autoFocus: !disableInputAutoFocus, prefixSymbol: isUsdInputMode ? '$' : undefined, value: isUsdInputMode
455
+ ? usdInputValue
456
+ : tradeType === 'EXACT_INPUT'
457
+ ? amountInputValue
458
+ : amountInputValue
459
+ ? formatFixedLength(amountInputValue, 8)
460
+ : amountInputValue, setValue: (e) => {
461
+ if (isUsdInputMode) {
462
+ setUsdInputValue(e);
463
+ setTradeType('EXACT_INPUT');
464
+ setTokenInputCache('');
465
+ if (Number(e) === 0) {
466
+ setAmountOutputValue('');
467
+ setUsdOutputValue('');
468
+ debouncedAmountInputControls.flush();
469
+ }
470
+ }
471
+ else {
472
+ setAmountInputValue(e);
473
+ setTradeType('EXACT_INPUT');
474
+ if (Number(e) === 0) {
475
+ setAmountOutputValue('');
476
+ debouncedAmountInputControls.flush();
477
+ }
478
+ }
479
+ }, onFocus: () => {
480
+ onAnalyticEvent?.(EventNames.SWAP_INPUT_FOCUSED);
481
+ }, css: {
482
+ fontWeight: '700',
483
+ fontSize: 32,
484
+ lineHeight: '36px',
485
+ py: 0,
486
+ color: isFetchingQuote && tradeType === 'EXPECTED_OUTPUT'
487
+ ? 'text-subtle'
488
+ : 'input-color',
489
+ _placeholder: {
490
+ color: isFetchingQuote &&
491
+ tradeType === 'EXPECTED_OUTPUT'
492
+ ? 'text-subtle'
493
+ : 'input-color'
494
+ }
495
+ } }), _jsx(TokenSelector, { address: address, isValidAddress: isValidFromAddress, token: fromToken, onAnalyticEvent: onAnalyticEvent, fromChainWalletVMSupported: fromChainWalletVMSupported, supportedWalletVMs: supportedWalletVMs, setToken: (token) => {
496
+ if (token.address === toToken?.address &&
497
+ token.chainId === toToken?.chainId &&
498
+ address === recipient &&
499
+ (!lockToToken || !fromToken)) {
500
+ handleSetFromToken(toToken);
501
+ handleSetToToken(fromToken);
502
+ }
503
+ else {
504
+ handleSetFromToken(token);
505
+ }
506
+ }, context: "from", multiWalletSupportEnabled: multiWalletSupportEnabled, lockedChainIds: isSingleChainLocked
507
+ ? [lockChainId]
508
+ : isChainLocked(fromToken?.chainId, lockChainId, toToken?.chainId, lockFromToken) && fromToken?.chainId
509
+ ? [fromToken.chainId]
510
+ : undefined, chainIdsFilter: !fromChainWalletVMSupported && toToken
511
+ ? [toToken.chainId]
512
+ : undefined, popularChainIds: popularChainIds, trigger: _jsx("div", { style: { width: 'max-content' }, children: _jsx(TokenTrigger, { token: fromToken, locked: lockFromToken, isSingleChainLocked: isSingleChainLocked, address: address }) }) })] }), _jsxs(Flex, { align: "center", justify: "between", css: { gap: '3', width: '100%' }, children: [_jsxs(Flex, { align: "center", css: { gap: '4px', _hover: { cursor: 'pointer' } }, onClick: () => {
513
+ toggleInputMode();
514
+ }, children: [_jsx(Text, { style: "subtitle3", color: "subtleSecondary", css: {
515
+ minHeight: 18,
516
+ display: 'flex',
517
+ alignItems: 'center'
518
+ }, children: isUsdInputMode ? (fromToken ? (
519
+ // In USD input mode, show token equivalent
520
+ usdInputValue && Number(usdInputValue) > 0 ? (
521
+ // USD input has a value
522
+ amountInputValue &&
523
+ conversionRate &&
524
+ !isLoadingFromTokenPrice ? (`${formatNumber(amountInputValue, 4, false)} ${fromToken.symbol}`) : (_jsx(Box, { css: {
525
+ width: 45,
526
+ height: 12,
527
+ backgroundColor: 'gray7',
528
+ borderRadius: 'widget-border-radius'
529
+ } }))) : (
530
+ // USD input is empty or zero, show "0 TOKEN_SYMBOL"
531
+ `0 ${fromToken.symbol}`)) : null) : quote?.details?.currencyIn?.amountUsd &&
532
+ !isFetchingQuote ? (
533
+ // In token input mode, show USD equivalent from quote
534
+ formatDollar(Number(quote.details.currencyIn.amountUsd))) : isLoadingFromTokenPrice && // This is for the direct fromToken price, used when quote isn't available yet
535
+ amountInputValue &&
536
+ Number(amountInputValue) > 0 ? (_jsx(Box, { css: {
537
+ width: 45,
538
+ height: 12,
539
+ backgroundColor: 'gray7',
540
+ borderRadius: 'widget-border-radius'
541
+ } })) : inputAmountUsd &&
542
+ inputAmountUsd > 0 &&
543
+ fromTokenPriceData?.price &&
544
+ fromTokenPriceData.price > 0 ? (formatDollar(inputAmountUsd)) : ('$0.00') }), _jsx(Button, { "aria-label": "Switch Input Mode", size: "none", color: "ghost", css: {
545
+ color: 'gray11',
546
+ alignSelf: 'center',
547
+ justifyContent: 'center',
548
+ width: '20px',
549
+ height: '20px',
550
+ borderRadius: '100px',
551
+ padding: '4px',
552
+ backgroundColor: 'gray3'
553
+ }, onClick: toggleInputMode, children: _jsx(SwitchIcon, { width: 16, height: 10 }) })] }), _jsxs(Flex, { align: "center", css: { gap: '3', marginLeft: 'auto', height: 23 }, children: [fromToken ? (_jsx(BalanceDisplay, { isLoading: isLoadingFromBalance, balance: fromBalance, decimals: fromToken?.decimals, symbol: fromToken?.symbol, hasInsufficientBalance: hasInsufficientBalance, displaySymbol: false, isConnected: !isDeadAddress(address) &&
554
+ address !== tronDeadAddress &&
555
+ address !== undefined, pending: fromBalancePending })) : (_jsx(Flex, { css: { height: 18 } })), fromBalance &&
556
+ (fromChain?.vmType === 'evm' || // EVM
557
+ fromChain?.vmType === 'svm') ? (_jsxs(Flex, { css: { gap: '1' }, children: [_jsx(Button, { "aria-label": "20%", css: {
558
+ fontSize: 12,
559
+ fontWeight: '500',
560
+ px: '1',
561
+ py: '1',
562
+ minHeight: '23px',
563
+ lineHeight: '100%',
564
+ backgroundColor: 'widget-selector-background',
565
+ border: 'none',
566
+ _hover: {
567
+ backgroundColor: 'widget-selector-hover-background'
568
+ }
569
+ }, color: "white", onClick: () => {
570
+ const percentageBuffer = (fromBalance * 20n) / 100n; // 20% of the balance
571
+ handleMaxAmountClicked(percentageBuffer, '20%');
572
+ }, children: "20%" }), _jsx(Button, { "aria-label": "50%", css: {
573
+ fontSize: 12,
574
+ fontWeight: '500',
575
+ px: '1',
576
+ py: '1',
577
+ minHeight: '23px',
578
+ lineHeight: '100%',
579
+ backgroundColor: 'widget-selector-background',
580
+ border: 'none',
581
+ _hover: {
582
+ backgroundColor: 'widget-selector-hover-background'
583
+ }
584
+ }, color: "white", onClick: () => {
585
+ const percentageBuffer = (fromBalance * 50n) / 100n; // 50% of the balance
586
+ handleMaxAmountClicked(percentageBuffer, '50%');
587
+ }, children: "50%" }), _jsx(Button, { "aria-label": "MAX", css: {
588
+ fontSize: 12,
589
+ fontWeight: '500',
590
+ px: '1',
591
+ py: '1',
592
+ minHeight: '23px',
593
+ lineHeight: '100%',
594
+ backgroundColor: 'widget-selector-background',
595
+ border: 'none',
596
+ _hover: {
597
+ backgroundColor: 'widget-selector-hover-background'
598
+ }
599
+ }, color: "white", onMouseEnter: () => {
600
+ if (fromChain?.vmType === 'evm' &&
601
+ publicClient &&
602
+ fromBalance) {
603
+ getFeeBufferAmount(fromChain.vmType, fromChain.id, fromBalance, publicClient);
604
+ }
605
+ else if (fromChain?.vmType === 'svm' &&
606
+ fromChain.id) {
607
+ getFeeBufferAmount(fromChain.vmType, fromChain.id, 0n, null);
608
+ }
609
+ }, onClick: async () => {
610
+ if (!fromBalance || !fromToken || !fromChain)
611
+ return;
612
+ let feeBufferAmount = 0n;
613
+ if (isFromNative) {
614
+ feeBufferAmount = await getFeeBufferAmount(fromChain.vmType, fromChain.id, fromBalance, publicClient ?? null);
615
+ }
616
+ const finalMaxAmount = isFromNative && feeBufferAmount > 0n
617
+ ? fromBalance > feeBufferAmount
618
+ ? fromBalance - feeBufferAmount
619
+ : 0n
620
+ : fromBalance;
621
+ handleMaxAmountClicked(finalMaxAmount, 'max', isFromNative ? feeBufferAmount : 0n);
622
+ }, children: "MAX" })] })) : null] })] })] }), _jsx(Box, { css: {
623
+ position: 'relative',
624
+ my: -13,
625
+ mx: 'auto',
626
+ height: 32,
627
+ width: 32
628
+ }, children: hasLockedToken ||
629
+ ((isSvmSwap || isBvmSwap) &&
630
+ !multiWalletSupportEnabled) ? null : (_jsx(Button, { "aria-label": "Swap Tokens Direction", size: "none", color: "white", css: {
631
+ mt: '4px',
632
+ color: 'gray9',
633
+ alignSelf: 'center',
634
+ justifyContent: 'center',
635
+ width: '100%',
636
+ height: '100%',
637
+ '--borderWidth': 'borders.widget-swap-currency-button-border-width',
638
+ '--borderColor': 'colors.widget-swap-currency-button-border-color',
639
+ border: `var(--borderWidth) solid var(--borderColor)`,
640
+ zIndex: 10,
641
+ borderRadius: 'widget-swap-currency-button-border-radius'
642
+ }, onClick: () => {
643
+ if (fromToken || toToken) {
644
+ if (isUsdInputMode) {
645
+ // In USD mode, switch the tokens and values
646
+ handleSetFromToken(toToken);
647
+ handleSetToToken(fromToken);
648
+ // Switch USD values
649
+ const tempUsdInput = usdInputValue;
650
+ setUsdInputValue(usdOutputValue);
651
+ setUsdOutputValue(tempUsdInput);
652
+ // Always use EXACT_INPUT after switching
653
+ setTradeType('EXACT_INPUT');
654
+ debouncedAmountInputControls.flush();
655
+ debouncedAmountOutputControls.flush();
656
+ }
657
+ else {
658
+ // Token-denominated mode: maintain current behaviour when swapping token order
659
+ if (tradeType === 'EXACT_INPUT') {
660
+ setTradeType('EXPECTED_OUTPUT');
661
+ setAmountInputValue('');
662
+ setAmountOutputValue(amountInputValue);
663
+ }
664
+ else {
665
+ setTradeType('EXACT_INPUT');
666
+ setAmountOutputValue('');
667
+ setAmountInputValue(amountOutputValue);
668
+ }
669
+ handleSetFromToken(toToken);
670
+ handleSetToToken(fromToken);
671
+ debouncedAmountInputControls.flush();
672
+ debouncedAmountOutputControls.flush();
673
+ }
674
+ }
675
+ }, children: _jsx(FontAwesomeIcon, { icon: faArrowDown, width: 16, height: 16 }) })) }), _jsxs(TokenSelectorContainer, { css: {
676
+ backgroundColor: 'widget-background',
677
+ mb: 'widget-card-section-gutter'
678
+ }, id: 'to-token-section', children: [_jsxs(Flex, { css: { width: '100%' }, align: "center", justify: "between", children: [_jsx(Text, { style: "subtitle2", color: "subtle", children: "Buy" }), multiWalletSupportEnabled &&
679
+ toChainWalletVMSupported ? (_jsx(MultiWalletDropdown, { context: "destination", disablePasteWalletAddressOption: disablePasteWalletAddressOption, selectedWalletAddress: recipient, onSelect: (wallet) => {
680
+ setCustomToAddress(wallet.address);
681
+ }, chain: toChain, onLinkNewWallet: () => {
682
+ if (!address && toChainWalletVMSupported) {
683
+ onConnectWallet?.();
684
+ }
685
+ else {
686
+ onLinkNewWallet?.({
687
+ chain: toChain,
688
+ direction: 'to'
689
+ })?.then((wallet) => {
690
+ setCustomToAddress(wallet.address);
691
+ });
692
+ }
693
+ }, setAddressModalOpen: setAddressModalOpen, wallets: linkedWallets, onAnalyticEvent: onAnalyticEvent })) : null, !multiWalletSupportEnabled ||
694
+ !toChainWalletVMSupported ? (_jsxs(Button, { color: isValidToAddress &&
695
+ multiWalletSupportEnabled &&
696
+ !isRecipientLinked
697
+ ? 'warning'
698
+ : 'secondary', corners: "pill", size: "none", css: {
699
+ display: 'flex',
700
+ alignItems: 'center',
701
+ px: '2',
702
+ py: '1'
703
+ }, onClick: () => {
704
+ setAddressModalOpen(true);
705
+ onAnalyticEvent?.(EventNames.SWAP_ADDRESS_MODAL_CLICKED);
706
+ }, children: [isValidToAddress &&
707
+ multiWalletSupportEnabled &&
708
+ !isRecipientLinked ? (_jsx(Box, { css: { color: 'amber11' }, children: _jsx(FontAwesomeIcon, { icon: faClipboard, width: 16, height: 16 }) })) : null, _jsx(Text, { style: "subtitle2", css: {
709
+ color: isValidToAddress &&
710
+ multiWalletSupportEnabled &&
711
+ !isRecipientLinked
712
+ ? 'amber11'
713
+ : 'anchor-color'
714
+ }, children: !isValidToAddress
715
+ ? `Enter Address`
716
+ : toDisplayName })] })) : null] }), _jsxs(Flex, { align: "center", justify: "between", css: { gap: '4', width: '100%' }, children: [_jsx(AmountInput, { prefixSymbol: isUsdInputMode ? '$' : undefined, value: isUsdInputMode
717
+ ? usdOutputValue
718
+ : tradeType === 'EXPECTED_OUTPUT'
719
+ ? amountOutputValue
720
+ : amountOutputValue
721
+ ? formatFixedLength(amountOutputValue, 8)
722
+ : amountOutputValue, setValue: (e) => {
723
+ if (isUsdInputMode) {
724
+ setUsdOutputValue(e);
725
+ setTradeType('EXPECTED_OUTPUT');
726
+ if (Number(e) === 0) {
727
+ setAmountInputValue('');
728
+ setUsdInputValue('');
729
+ debouncedAmountOutputControls.flush();
730
+ }
731
+ }
732
+ else {
733
+ setAmountOutputValue(e);
734
+ setTradeType('EXPECTED_OUTPUT');
735
+ if (Number(e) === 0) {
736
+ setAmountInputValue('');
737
+ debouncedAmountOutputControls.flush();
738
+ }
739
+ }
740
+ }, disabled: !toToken || !fromChainWalletVMSupported, onFocus: () => {
741
+ onAnalyticEvent?.(EventNames.SWAP_OUTPUT_FOCUSED);
742
+ }, css: {
743
+ fontWeight: '700',
744
+ fontSize: 32,
745
+ color: isFetchingQuote && tradeType === 'EXACT_INPUT'
746
+ ? 'text-subtle'
747
+ : 'input-color',
748
+ _placeholder: {
749
+ color: isFetchingQuote && tradeType === 'EXACT_INPUT'
750
+ ? 'text-subtle'
751
+ : 'input-color'
752
+ },
753
+ _disabled: {
754
+ cursor: 'not-allowed',
755
+ _placeholder: {
756
+ color: 'gray10'
757
+ },
758
+ color: 'gray10'
759
+ }
760
+ } }), _jsx(TokenSelector, { address: recipient, isValidAddress: isValidToAddress, token: toToken, fromChainWalletVMSupported: fromChainWalletVMSupported, supportedWalletVMs: supportedWalletVMs, setToken: (token) => {
761
+ if (token.address === fromToken?.address &&
762
+ token.chainId === fromToken?.chainId &&
763
+ address === recipient &&
764
+ (!lockToToken || !fromToken)) {
765
+ handleSetToToken(fromToken);
766
+ handleSetFromToken(toToken);
767
+ }
768
+ else {
769
+ handleSetToToken(token);
770
+ }
771
+ }, context: "to", multiWalletSupportEnabled: multiWalletSupportEnabled, trigger: _jsx("div", { style: { width: 'max-content' }, children: _jsx(TokenTrigger, { token: toToken, locked: lockToToken, isSingleChainLocked: isSingleChainLocked, address: address }) }), onAnalyticEvent: onAnalyticEvent, lockedChainIds: isSingleChainLocked
772
+ ? [lockChainId]
773
+ : isChainLocked(toToken?.chainId, lockChainId, fromToken?.chainId, lockToToken) && toToken?.chainId
774
+ ? [toToken.chainId]
775
+ : undefined, chainIdsFilter: !fromChainWalletVMSupported && fromToken
776
+ ? [fromToken.chainId]
777
+ : undefined, popularChainIds: popularChainIds })] }), _jsxs(Flex, { align: "center", justify: "between", css: { gap: '3', width: '100%' }, children: [_jsxs(Flex, { align: "center", css: {
778
+ gap: '1',
779
+ minHeight: 18
780
+ }, children: [_jsx(Text, { style: "subtitle3", color: "subtleSecondary", children: isUsdInputMode ? (toToken ? (
781
+ // In USD input mode, show token equivalent
782
+ usdOutputValue && Number(usdOutputValue) > 0 ? (
783
+ // USD output has a value
784
+ amountOutputValue &&
785
+ !isLoadingToTokenPrice ? (`${formatNumber(amountOutputValue, 4, false)} ${toToken.symbol}`) : (_jsx(Box, { css: {
786
+ width: 45,
787
+ height: 12,
788
+ backgroundColor: 'gray7',
789
+ borderRadius: 'widget-border-radius'
790
+ } }))) : (
791
+ // USD output is empty or zero, show "0 TOKEN_SYMBOL"
792
+ `0 ${toToken.symbol}`)) : null) : toToken &&
793
+ quote?.details?.currencyOut?.amountUsd &&
794
+ !isFetchingQuote ? (formatDollar(Number(quote.details.currencyOut.amountUsd))) : toToken &&
795
+ isLoadingToTokenPrice &&
796
+ amountOutputValue &&
797
+ Number(amountOutputValue) > 0 ? (_jsx(Box, { css: {
798
+ width: 45,
799
+ height: 12,
800
+ backgroundColor: 'gray7',
801
+ borderRadius: 'widget-border-radius'
802
+ } })) : toToken &&
803
+ outputAmountUsd &&
804
+ outputAmountUsd > 0 &&
805
+ toTokenPriceData?.price &&
806
+ toTokenPriceData.price > 0 ? (formatDollar(outputAmountUsd)) : ('$0.00') }), !isUsdInputMode &&
807
+ toToken &&
808
+ quote?.details?.currencyOut?.amountUsd &&
809
+ quote?.details?.currencyOut?.amountUsd !== '0' &&
810
+ !isFetchingQuote &&
811
+ quote?.details?.totalImpact?.percent ? (_jsxs(Text, { style: "subtitle3", color: feeBreakdown?.totalFees.priceImpactColor, children: ["(", feeBreakdown?.totalFees.priceImpactPercentage, ")"] })) : null] }), _jsx(Flex, { css: { marginLeft: 'auto' }, children: toToken ? (_jsx(BalanceDisplay, { isLoading: isLoadingToBalance, balance: toBalance, decimals: toToken?.decimals, symbol: toToken?.symbol, displaySymbol: false, isConnected: !isDeadAddress(address) &&
812
+ address !== tronDeadAddress &&
813
+ address !== undefined, pending: toBalancePending })) : (_jsx(Flex, { css: { height: 18 } })) })] })] }), error &&
814
+ !isFetchingQuote &&
815
+ !isSingleChainLocked &&
816
+ fromChainWalletVMSupported ? (_jsx(Box, { css: {
817
+ borderRadius: 'widget-card-border-radius',
818
+ backgroundColor: 'widget-background',
819
+ border: 'widget-card-border',
820
+ overflow: 'hidden',
821
+ mb: 'widget-card-section-gutter'
822
+ }, id: 'swap-route-selection-section', children: _jsx(SwapRouteSelector, { chain: toChain, supportsExternalLiquidity: supportsExternalLiquidity, externalLiquidtySelected: useExternalLiquidity, canonicalTimeEstimate: canonicalTimeEstimate?.formattedTime, onExternalLiquidityChange: (selected) => {
823
+ setUseExternalLiquidity(selected);
824
+ }, error: error }) })) : null, _jsx(GasTopUpSection, { toChain: toChain, gasTopUpEnabled: gasTopUpEnabled, onGasTopUpEnabled: (enabled) => {
825
+ setGasTopUpEnabled(enabled);
826
+ onAnalyticEvent?.(EventNames.GAS_TOP_UP_TOGGLE, {
827
+ enabled,
828
+ amount: gasTopUpAmount,
829
+ amount_usd: gasTopUpAmountUsd,
830
+ quote
831
+ });
832
+ }, gasTopUpRequired: gasTopUpRequired, gasTopUpAmount: gasTopUpAmount, gasTopUpAmountUsd: gasTopUpAmountUsd }), _jsx(FeeBreakdown, { feeBreakdown: feeBreakdown, isFetchingQuote: isFetchingQuote, toToken: toToken, fromToken: fromToken, quote: quote, timeEstimate: timeEstimate, supportsExternalLiquidity: supportsExternalLiquidity, useExternalLiquidity: useExternalLiquidity, isAutoSlippage: isAutoSlippage, slippageInputBps: slippageTolerance, toChain: toChain, setUseExternalLiquidity: (enabled) => {
833
+ setUseExternalLiquidity(enabled);
834
+ onAnalyticEvent?.(EventNames.SWAP_ROUTE_SELECTED, {
835
+ route: enabled ? 'canonical' : 'relay'
836
+ });
837
+ }, canonicalTimeEstimate: canonicalTimeEstimate, isSingleChainLocked: isSingleChainLocked, fromChainWalletVMSupported: fromChainWalletVMSupported, error: error }), _jsx(WidgetErrorWell, { hasInsufficientBalance: hasInsufficientBalance, error: error, quote: quote, currency: fromToken, isHighRelayerServiceFee: highRelayerServiceFee, isCapacityExceededError: isCapacityExceededError, isCouldNotExecuteError: isCouldNotExecuteError, relayerFeeProportion: relayerFeeProportion, supportsExternalLiquidity: supportsExternalLiquidity, containerCss: {
838
+ mb: 'widget-card-section-gutter'
839
+ }, recipientWalletSupportsChain: recipientWalletSupportsChain, recipient: recipient, toChainWalletVMSupported: toChainWalletVMSupported, recipientLinkedWallet: recipientLinkedWallet, toChainVmType: toChain?.vmType }), promptSwitchRoute ? (_jsx(Button, { color: "primary", css: { flexGrow: '1', justifyContent: 'center' }, onClick: () => {
840
+ setUseExternalLiquidity(true);
841
+ onAnalyticEvent?.(EventNames.CTA_SWITCH_ROUTE_CLICKED);
842
+ }, children: "Switch Route" })) : (_jsx(SwapButton, { isFetchingQuote: isFetchingQuote, transactionModalOpen: transactionModalOpen, depositAddressModalOpen: depositAddressModalOpen, isValidFromAddress: isValidFromAddress, isValidToAddress: isValidToAddress, fromChainWalletVMSupported: fromChainWalletVMSupported, context: 'Swap', showHighPriceImpactWarning: showHighPriceImpactWarning, onConnectWallet: onConnectWallet, onAnalyticEvent: onAnalyticEvent, quote: quote, address: address, hasInsufficientBalance: hasInsufficientBalance, isInsufficientLiquidityError: isInsufficientLiquidityError, recipientWalletSupportsChain: recipientWalletSupportsChain, debouncedInputAmountValue: debouncedInputAmountValue, debouncedOutputAmountValue: debouncedOutputAmountValue, isSameCurrencySameRecipientSwap: isSameCurrencySameRecipientSwap, onClick: () => {
843
+ if (fromChainWalletVMSupported) {
844
+ if (!isValidToAddress || !isValidFromAddress) {
845
+ if (multiWalletSupportEnabled &&
846
+ (isValidToAddress ||
847
+ (!isValidToAddress &&
848
+ toChainWalletVMSupported))) {
849
+ const chain = !isValidFromAddress
850
+ ? fromChain
851
+ : toChain;
852
+ if (!address) {
853
+ onConnectWallet?.();
854
+ }
855
+ else {
856
+ onLinkNewWallet?.({
857
+ chain: chain,
858
+ direction: !isValidFromAddress
859
+ ? 'from'
860
+ : 'to'
861
+ })?.then((wallet) => {
862
+ if (!isValidFromAddress) {
863
+ onSetPrimaryWallet?.(wallet.address);
864
+ }
865
+ else {
866
+ setCustomToAddress(wallet.address);
867
+ }
868
+ });
869
+ }
870
+ }
871
+ else {
872
+ setAddressModalOpen(true);
873
+ }
874
+ }
875
+ else {
876
+ swap();
877
+ }
878
+ }
879
+ else {
880
+ if (!isValidToAddress) {
881
+ if (multiWalletSupportEnabled &&
882
+ toChainWalletVMSupported) {
883
+ if (!address) {
884
+ onConnectWallet?.();
885
+ }
886
+ else {
887
+ onLinkNewWallet?.({
888
+ chain: toChain,
889
+ direction: 'to'
890
+ })?.then((wallet) => {
891
+ setCustomToAddress(wallet.address);
892
+ });
893
+ }
894
+ }
895
+ else {
896
+ setAddressModalOpen(true);
897
+ }
898
+ }
899
+ else {
900
+ const swapEventData = getSwapEventData(quote?.details, quote?.steps
901
+ ? quote?.steps
902
+ : null, linkedWallet?.connector, quoteParameters);
903
+ onAnalyticEvent?.(EventNames.SWAP_CTA_CLICKED, swapEventData);
904
+ setDepositAddressModalOpen(true);
905
+ }
906
+ }
907
+ }, ctaCopy: ctaCopy }))] }));
908
+ } }), _jsx(UnverifiedTokenModal, { open: unverifiedTokens.length > 0, onOpenChange: () => { }, data: unverifiedTokens.length > 0 ? unverifiedTokens[0] : undefined, onDecline: (token, context) => {
909
+ const tokens = unverifiedTokens.filter((unverifiedToken) => !(unverifiedToken.context === context &&
910
+ unverifiedToken.token.address === token?.address &&
911
+ unverifiedToken.token.chainId === token?.chainId));
912
+ setUnverifiedTokens(tokens);
913
+ }, onAcceptToken: (token, context) => {
914
+ if (token) {
915
+ if (context === 'to') {
916
+ onAnalyticEvent?.(EventNames.SWAP_TOKEN_SELECT, {
917
+ direction: 'output',
918
+ token_symbol: token.symbol
919
+ });
920
+ if (token.address === fromToken?.address &&
921
+ token.chainId === fromToken?.chainId &&
922
+ address === recipient &&
923
+ (!lockToToken || !fromToken)) {
924
+ handleSetToToken(fromToken);
925
+ handleSetFromToken(toToken);
926
+ }
927
+ else {
928
+ handleSetToToken(token);
929
+ }
930
+ }
931
+ else if (context === 'from') {
932
+ onAnalyticEvent?.(EventNames.SWAP_TOKEN_SELECT, {
933
+ direction: 'input',
934
+ token_symbol: token.symbol
935
+ });
936
+ if (token.address === toToken?.address &&
937
+ token.chainId === toToken?.chainId &&
938
+ address === recipient &&
939
+ (!lockToToken || !fromToken)) {
940
+ handleSetFromToken(toToken);
941
+ handleSetToToken(fromToken);
942
+ }
943
+ else {
944
+ handleSetFromToken(token);
945
+ }
946
+ }
947
+ }
948
+ const tokens = unverifiedTokens.filter((unverifiedToken) => !(unverifiedToken.token.address === token?.address &&
949
+ unverifiedToken.token.chainId === token?.chainId));
950
+ setUnverifiedTokens(tokens);
951
+ } })] }));
952
+ } }));
953
+ };
954
+ export default SwapWidget;
955
+ //# sourceMappingURL=index.js.map