@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.
- package/LICENSE +21 -0
- package/_cjs/package.json +1 -0
- package/_cjs/src/components/common/AmountInput.js +42 -0
- package/_cjs/src/components/common/AmountInput.js.map +1 -0
- package/_cjs/src/components/common/BalanceDisplay.js +18 -0
- package/_cjs/src/components/common/BalanceDisplay.js.map +1 -0
- package/_cjs/src/components/common/CopyToClipBoard.js +36 -0
- package/_cjs/src/components/common/CopyToClipBoard.js.map +1 -0
- package/_cjs/src/components/common/CustomAddressModal.js +105 -0
- package/_cjs/src/components/common/CustomAddressModal.js.map +1 -0
- package/_cjs/src/components/common/ErrorWell.js +41 -0
- package/_cjs/src/components/common/ErrorWell.js.map +1 -0
- package/_cjs/src/components/common/LoadingSpinner.js +19 -0
- package/_cjs/src/components/common/LoadingSpinner.js.map +1 -0
- package/_cjs/src/components/common/Modal.js +34 -0
- package/_cjs/src/components/common/Modal.js.map +1 -0
- package/_cjs/src/components/common/MultiWalletDropdown.js +148 -0
- package/_cjs/src/components/common/MultiWalletDropdown.js.map +1 -0
- package/_cjs/src/components/common/RefundReason.js +52 -0
- package/_cjs/src/components/common/RefundReason.js.map +1 -0
- package/_cjs/src/components/common/SlippageToleranceConfig.js +143 -0
- package/_cjs/src/components/common/SlippageToleranceConfig.js.map +1 -0
- package/_cjs/src/components/common/TokenSelector/ChainFilter.js +119 -0
- package/_cjs/src/components/common/TokenSelector/ChainFilter.js.map +1 -0
- package/_cjs/src/components/common/TokenSelector/ChainFilterSidebar.js +150 -0
- package/_cjs/src/components/common/TokenSelector/ChainFilterSidebar.js.map +1 -0
- package/_cjs/src/components/common/TokenSelector/SuggestedTokens.js +67 -0
- package/_cjs/src/components/common/TokenSelector/SuggestedTokens.js.map +1 -0
- package/_cjs/src/components/common/TokenSelector/TagPill.js +18 -0
- package/_cjs/src/components/common/TokenSelector/TagPill.js.map +1 -0
- package/_cjs/src/components/common/TokenSelector/TokenList.js +83 -0
- package/_cjs/src/components/common/TokenSelector/TokenList.js.map +1 -0
- package/_cjs/src/components/common/TokenSelector/TokenSelector.js +402 -0
- package/_cjs/src/components/common/TokenSelector/TokenSelector.js.map +1 -0
- package/_cjs/src/components/common/TokenSelector/triggers/TokenTrigger.js +42 -0
- package/_cjs/src/components/common/TokenSelector/triggers/TokenTrigger.js.map +1 -0
- package/_cjs/src/components/common/TransactionModal/DepositAddressModal.js +85 -0
- package/_cjs/src/components/common/TransactionModal/DepositAddressModal.js.map +1 -0
- package/_cjs/src/components/common/TransactionModal/DepositAddressModalRenderer.js +247 -0
- package/_cjs/src/components/common/TransactionModal/DepositAddressModalRenderer.js.map +1 -0
- package/_cjs/src/components/common/TransactionModal/TransactionModal.js +121 -0
- package/_cjs/src/components/common/TransactionModal/TransactionModal.js.map +1 -0
- package/_cjs/src/components/common/TransactionModal/TransactionModalRenderer.js +136 -0
- package/_cjs/src/components/common/TransactionModal/TransactionModalRenderer.js.map +1 -0
- package/_cjs/src/components/common/TransactionModal/steps/ApprovalPlusSwapStep.js +80 -0
- package/_cjs/src/components/common/TransactionModal/steps/ApprovalPlusSwapStep.js.map +1 -0
- package/_cjs/src/components/common/TransactionModal/steps/DepositAddressValidatingStep.js +21 -0
- package/_cjs/src/components/common/TransactionModal/steps/DepositAddressValidatingStep.js.map +1 -0
- package/_cjs/src/components/common/TransactionModal/steps/ErrorStep.js +82 -0
- package/_cjs/src/components/common/TransactionModal/steps/ErrorStep.js.map +1 -0
- package/_cjs/src/components/common/TransactionModal/steps/SwapConfirmationStep.js +117 -0
- package/_cjs/src/components/common/TransactionModal/steps/SwapConfirmationStep.js.map +1 -0
- package/_cjs/src/components/common/TransactionModal/steps/SwapSuccessStep.js +131 -0
- package/_cjs/src/components/common/TransactionModal/steps/SwapSuccessStep.js.map +1 -0
- package/_cjs/src/components/common/TransactionModal/steps/TransactionsByChain.js +67 -0
- package/_cjs/src/components/common/TransactionModal/steps/TransactionsByChain.js.map +1 -0
- package/_cjs/src/components/common/TransactionModal/steps/WaitingForDepositStep.js +86 -0
- package/_cjs/src/components/common/TransactionModal/steps/WaitingForDepositStep.js.map +1 -0
- package/_cjs/src/components/common/UnverifiedTokenModal.js +75 -0
- package/_cjs/src/components/common/UnverifiedTokenModal.js.map +1 -0
- package/_cjs/src/components/primitives/AccessibleList.js +33 -0
- package/_cjs/src/components/primitives/AccessibleList.js.map +1 -0
- package/_cjs/src/components/primitives/Anchor.js +57 -0
- package/_cjs/src/components/primitives/Anchor.js.map +1 -0
- package/_cjs/src/components/primitives/Box.js +10 -0
- package/_cjs/src/components/primitives/Box.js.map +1 -0
- package/_cjs/src/components/primitives/Button.js +155 -0
- package/_cjs/src/components/primitives/Button.js.map +1 -0
- package/_cjs/src/components/primitives/ChainIcon.js +35 -0
- package/_cjs/src/components/primitives/ChainIcon.js.map +1 -0
- package/_cjs/src/components/primitives/ChainTokenIcon.js +54 -0
- package/_cjs/src/components/primitives/ChainTokenIcon.js.map +1 -0
- package/_cjs/src/components/primitives/Collapsible.js +46 -0
- package/_cjs/src/components/primitives/Collapsible.js.map +1 -0
- package/_cjs/src/components/primitives/Dialog.js +104 -0
- package/_cjs/src/components/primitives/Dialog.js.map +1 -0
- package/_cjs/src/components/primitives/Dropdown.js +55 -0
- package/_cjs/src/components/primitives/Dropdown.js.map +1 -0
- package/_cjs/src/components/primitives/Flex.js +76 -0
- package/_cjs/src/components/primitives/Flex.js.map +1 -0
- package/_cjs/src/components/primitives/Input.js +69 -0
- package/_cjs/src/components/primitives/Input.js.map +1 -0
- package/_cjs/src/components/primitives/Pill.js +64 -0
- package/_cjs/src/components/primitives/Pill.js.map +1 -0
- package/_cjs/src/components/primitives/Skeleton.js +18 -0
- package/_cjs/src/components/primitives/Skeleton.js.map +1 -0
- package/_cjs/src/components/primitives/Switch.js +53 -0
- package/_cjs/src/components/primitives/Switch.js.map +1 -0
- package/_cjs/src/components/primitives/Tabs.js +53 -0
- package/_cjs/src/components/primitives/Tabs.js.map +1 -0
- package/_cjs/src/components/primitives/Text.js +106 -0
- package/_cjs/src/components/primitives/Text.js.map +1 -0
- package/_cjs/src/components/primitives/Tooltip.js +44 -0
- package/_cjs/src/components/primitives/Tooltip.js.map +1 -0
- package/_cjs/src/components/primitives/index.js +31 -0
- package/_cjs/src/components/primitives/index.js.map +1 -0
- package/_cjs/src/components/widgets/FeeBreakdown.js +165 -0
- package/_cjs/src/components/widgets/FeeBreakdown.js.map +1 -0
- package/_cjs/src/components/widgets/FetchingQuoteLoader.js +20 -0
- package/_cjs/src/components/widgets/FetchingQuoteLoader.js.map +1 -0
- package/_cjs/src/components/widgets/OnrampWidget/index.js +9 -0
- package/_cjs/src/components/widgets/OnrampWidget/index.js.map +1 -0
- package/_cjs/src/components/widgets/OnrampWidget/modals/OnrampModal.js +286 -0
- package/_cjs/src/components/widgets/OnrampWidget/modals/OnrampModal.js.map +1 -0
- package/_cjs/src/components/widgets/OnrampWidget/modals/steps/OnrampConfirmingStep.js +42 -0
- package/_cjs/src/components/widgets/OnrampWidget/modals/steps/OnrampConfirmingStep.js.map +1 -0
- package/_cjs/src/components/widgets/OnrampWidget/modals/steps/OnrampMoonPayStep.js +203 -0
- package/_cjs/src/components/widgets/OnrampWidget/modals/steps/OnrampMoonPayStep.js.map +1 -0
- package/_cjs/src/components/widgets/OnrampWidget/modals/steps/OnrampProcessingPassthroughStep.js +45 -0
- package/_cjs/src/components/widgets/OnrampWidget/modals/steps/OnrampProcessingPassthroughStep.js.map +1 -0
- package/_cjs/src/components/widgets/OnrampWidget/modals/steps/OnrampProcessingStepUI.js +87 -0
- package/_cjs/src/components/widgets/OnrampWidget/modals/steps/OnrampProcessingStepUI.js.map +1 -0
- package/_cjs/src/components/widgets/OnrampWidget/modals/steps/OnrampSuccessStep.js +39 -0
- package/_cjs/src/components/widgets/OnrampWidget/modals/steps/OnrampSuccessStep.js.map +1 -0
- package/_cjs/src/components/widgets/OnrampWidget/widget/FiatCurrencyModal.js +171 -0
- package/_cjs/src/components/widgets/OnrampWidget/widget/FiatCurrencyModal.js.map +1 -0
- package/_cjs/src/components/widgets/OnrampWidget/widget/OnrampWidgetRenderer.js +197 -0
- package/_cjs/src/components/widgets/OnrampWidget/widget/OnrampWidgetRenderer.js.map +1 -0
- package/_cjs/src/components/widgets/OnrampWidget/widget/index.js +332 -0
- package/_cjs/src/components/widgets/OnrampWidget/widget/index.js.map +1 -0
- package/_cjs/src/components/widgets/PriceImpactTooltip.js +28 -0
- package/_cjs/src/components/widgets/PriceImpactTooltip.js.map +1 -0
- package/_cjs/src/components/widgets/SwapButton.js +37 -0
- package/_cjs/src/components/widgets/SwapButton.js.map +1 -0
- package/_cjs/src/components/widgets/SwapRouteSelector.js +86 -0
- package/_cjs/src/components/widgets/SwapRouteSelector.js.map +1 -0
- package/_cjs/src/components/widgets/SwapWidget/GasTopUpSection.js +24 -0
- package/_cjs/src/components/widgets/SwapWidget/GasTopUpSection.js.map +1 -0
- package/_cjs/src/components/widgets/SwapWidget/index.js +912 -0
- package/_cjs/src/components/widgets/SwapWidget/index.js.map +1 -0
- package/_cjs/src/components/widgets/SwapWidgetRenderer.js +735 -0
- package/_cjs/src/components/widgets/SwapWidgetRenderer.js.map +1 -0
- package/_cjs/src/components/widgets/TokenSelectorContainer.js +20 -0
- package/_cjs/src/components/widgets/TokenSelectorContainer.js.map +1 -0
- package/_cjs/src/components/widgets/WidgetContainer.js +27 -0
- package/_cjs/src/components/widgets/WidgetContainer.js.map +1 -0
- package/_cjs/src/components/widgets/WidgetErrorWell.js +148 -0
- package/_cjs/src/components/widgets/WidgetErrorWell.js.map +1 -0
- package/_cjs/src/components/widgets/WidgetFooter.js +34 -0
- package/_cjs/src/components/widgets/WidgetFooter.js.map +1 -0
- package/_cjs/src/constants/address.js +15 -0
- package/_cjs/src/constants/address.js.map +1 -0
- package/_cjs/src/constants/agwRegistryAbi.js +20 -0
- package/_cjs/src/constants/agwRegistryAbi.js.map +1 -0
- package/_cjs/src/constants/cache.js +6 -0
- package/_cjs/src/constants/cache.js.map +1 -0
- package/_cjs/src/constants/chainIdToAlchemyNetworkMap.js +13 -0
- package/_cjs/src/constants/chainIdToAlchemyNetworkMap.js.map +1 -0
- package/_cjs/src/constants/currencies.js +3 -0
- package/_cjs/src/constants/currencies.js.map +1 -0
- package/_cjs/src/constants/depositAddresses.js +14 -0
- package/_cjs/src/constants/depositAddresses.js.map +1 -0
- package/_cjs/src/constants/events.js +62 -0
- package/_cjs/src/constants/events.js.map +1 -0
- package/_cjs/src/constants/maxGasBuffer.js +12 -0
- package/_cjs/src/constants/maxGasBuffer.js.map +1 -0
- package/_cjs/src/constants/moonPayCurrencies.js +295 -0
- package/_cjs/src/constants/moonPayCurrencies.js.map +1 -0
- package/_cjs/src/constants/moonPayFiatCurrencies.js +209 -0
- package/_cjs/src/constants/moonPayFiatCurrencies.js.map +1 -0
- package/_cjs/src/constants/walletCompatibility.js +23 -0
- package/_cjs/src/constants/walletCompatibility.js.map +1 -0
- package/_cjs/src/hooks/index.js +51 -0
- package/_cjs/src/hooks/index.js.map +1 -0
- package/_cjs/src/hooks/useAdaptedWalletBalance.js +28 -0
- package/_cjs/src/hooks/useAdaptedWalletBalance.js.map +1 -0
- package/_cjs/src/hooks/useAtomicBatchSupport.js +34 -0
- package/_cjs/src/hooks/useAtomicBatchSupport.js.map +1 -0
- package/_cjs/src/hooks/useBitcoinBalance.js +40 -0
- package/_cjs/src/hooks/useBitcoinBalance.js.map +1 -0
- package/_cjs/src/hooks/useCexAddresses.js +21 -0
- package/_cjs/src/hooks/useCexAddresses.js.map +1 -0
- package/_cjs/src/hooks/useCurrencyBalance.js +234 -0
- package/_cjs/src/hooks/useCurrencyBalance.js.map +1 -0
- package/_cjs/src/hooks/useDebounceState.js +35 -0
- package/_cjs/src/hooks/useDebounceState.js.map +1 -0
- package/_cjs/src/hooks/useDisconnected.js +14 -0
- package/_cjs/src/hooks/useDisconnected.js.map +1 -0
- package/_cjs/src/hooks/useDuneBalances.js +99 -0
- package/_cjs/src/hooks/useDuneBalances.js.map +1 -0
- package/_cjs/src/hooks/useENSResolver.js +37 -0
- package/_cjs/src/hooks/useENSResolver.js.map +1 -0
- package/_cjs/src/hooks/useEclipseBalance.js +47 -0
- package/_cjs/src/hooks/useEclipseBalance.js.map +1 -0
- package/_cjs/src/hooks/useEnhancedTokensList.js +80 -0
- package/_cjs/src/hooks/useEnhancedTokensList.js.map +1 -0
- package/_cjs/src/hooks/useFallbackState.js +12 -0
- package/_cjs/src/hooks/useFallbackState.js.map +1 -0
- package/_cjs/src/hooks/useGasTopUpRequired.js +59 -0
- package/_cjs/src/hooks/useGasTopUpRequired.js.map +1 -0
- package/_cjs/src/hooks/useHyperliquidUsdcBalance.js +37 -0
- package/_cjs/src/hooks/useHyperliquidUsdcBalance.js.map +1 -0
- package/_cjs/src/hooks/useInternalRelayChains.js +23 -0
- package/_cjs/src/hooks/useInternalRelayChains.js.map +1 -0
- package/_cjs/src/hooks/useIpAddress.js +12 -0
- package/_cjs/src/hooks/useIpAddress.js.map +1 -0
- package/_cjs/src/hooks/useIsAGW.js +34 -0
- package/_cjs/src/hooks/useIsAGW.js.map +1 -0
- package/_cjs/src/hooks/useIsPassthrough.js +56 -0
- package/_cjs/src/hooks/useIsPassthrough.js.map +1 -0
- package/_cjs/src/hooks/useIsWalletCompatible.js +42 -0
- package/_cjs/src/hooks/useIsWalletCompatible.js.map +1 -0
- package/_cjs/src/hooks/useMoonPayCurrencies.js +23 -0
- package/_cjs/src/hooks/useMoonPayCurrencies.js.map +1 -0
- package/_cjs/src/hooks/useMoonPayGeolocation.js +25 -0
- package/_cjs/src/hooks/useMoonPayGeolocation.js.map +1 -0
- package/_cjs/src/hooks/useMoonPayTransaction.js +25 -0
- package/_cjs/src/hooks/useMoonPayTransaction.js.map +1 -0
- package/_cjs/src/hooks/useMounted.js +11 -0
- package/_cjs/src/hooks/useMounted.js.map +1 -0
- package/_cjs/src/hooks/usePreviousValueChange.js +14 -0
- package/_cjs/src/hooks/usePreviousValueChange.js.map +1 -0
- package/_cjs/src/hooks/useRelayClient.js +9 -0
- package/_cjs/src/hooks/useRelayClient.js.map +1 -0
- package/_cjs/src/hooks/useSuiBalance.js +48 -0
- package/_cjs/src/hooks/useSuiBalance.js.map +1 -0
- package/_cjs/src/hooks/useSupportedMoonPayCurrencyCode.js +65 -0
- package/_cjs/src/hooks/useSupportedMoonPayCurrencyCode.js.map +1 -0
- package/_cjs/src/hooks/useWalletAddress.js +23 -0
- package/_cjs/src/hooks/useWalletAddress.js.map +1 -0
- package/_cjs/src/hooks/widget/useSwapButtonCta.js +76 -0
- package/_cjs/src/hooks/widget/useSwapButtonCta.js.map +1 -0
- package/_cjs/src/icons/SwitchIcon.js +9 -0
- package/_cjs/src/icons/SwitchIcon.js.map +1 -0
- package/_cjs/src/icons/index.js +6 -0
- package/_cjs/src/icons/index.js.map +1 -0
- package/_cjs/src/img/AllChainsLogo.js +10 -0
- package/_cjs/src/img/AllChainsLogo.js.map +1 -0
- package/_cjs/src/img/MoonPayLogo.js +10 -0
- package/_cjs/src/img/MoonPayLogo.js.map +1 -0
- package/_cjs/src/img/ReservoirText.js +10 -0
- package/_cjs/src/img/ReservoirText.js.map +1 -0
- package/_cjs/src/index.js +23 -0
- package/_cjs/src/index.js.map +1 -0
- package/_cjs/src/providers/RelayClientProvider.js +14 -0
- package/_cjs/src/providers/RelayClientProvider.js.map +1 -0
- package/_cjs/src/providers/RelayKitProvider.js +123 -0
- package/_cjs/src/providers/RelayKitProvider.js.map +1 -0
- package/_cjs/src/styles.css +3408 -0
- package/_cjs/src/themes/RelayKitTheme.js +89 -0
- package/_cjs/src/themes/RelayKitTheme.js.map +1 -0
- package/_cjs/src/themes/index.js +6 -0
- package/_cjs/src/themes/index.js.map +1 -0
- package/_cjs/src/types/BridgeFee.js +3 -0
- package/_cjs/src/types/BridgeFee.js.map +1 -0
- package/_cjs/src/types/Fiat.js +3 -0
- package/_cjs/src/types/Fiat.js.map +1 -0
- package/_cjs/src/types/RelayTransaction.js +3 -0
- package/_cjs/src/types/RelayTransaction.js.map +1 -0
- package/_cjs/src/types/index.js +3 -0
- package/_cjs/src/types/index.js.map +1 -0
- package/_cjs/src/utils/address.js +75 -0
- package/_cjs/src/utils/address.js.map +1 -0
- package/_cjs/src/utils/bitcoin.js +12 -0
- package/_cjs/src/utils/bitcoin.js.map +1 -0
- package/_cjs/src/utils/browser.js +8 -0
- package/_cjs/src/utils/browser.js.map +1 -0
- package/_cjs/src/utils/ens.js +9 -0
- package/_cjs/src/utils/ens.js.map +1 -0
- package/_cjs/src/utils/errors.js +38 -0
- package/_cjs/src/utils/errors.js.map +1 -0
- package/_cjs/src/utils/fetcher.js +20 -0
- package/_cjs/src/utils/fetcher.js.map +1 -0
- package/_cjs/src/utils/getChainBlockExplorerUrl.js +12 -0
- package/_cjs/src/utils/getChainBlockExplorerUrl.js.map +1 -0
- package/_cjs/src/utils/getTxBlockExplorerUrl.js +28 -0
- package/_cjs/src/utils/getTxBlockExplorerUrl.js.map +1 -0
- package/_cjs/src/utils/hashing.js +41 -0
- package/_cjs/src/utils/hashing.js.map +1 -0
- package/_cjs/src/utils/localStorage.js +84 -0
- package/_cjs/src/utils/localStorage.js.map +1 -0
- package/_cjs/src/utils/moonPay.js +49 -0
- package/_cjs/src/utils/moonPay.js.map +1 -0
- package/_cjs/src/utils/nativeMaxAmount.js +137 -0
- package/_cjs/src/utils/nativeMaxAmount.js.map +1 -0
- package/_cjs/src/utils/numbers.js +171 -0
- package/_cjs/src/utils/numbers.js.map +1 -0
- package/_cjs/src/utils/qrcode.js +23 -0
- package/_cjs/src/utils/qrcode.js.map +1 -0
- package/_cjs/src/utils/quote.js +262 -0
- package/_cjs/src/utils/quote.js.map +1 -0
- package/_cjs/src/utils/relayTransaction.js +85 -0
- package/_cjs/src/utils/relayTransaction.js.map +1 -0
- package/_cjs/src/utils/slippage.js +18 -0
- package/_cjs/src/utils/slippage.js.map +1 -0
- package/_cjs/src/utils/solana.js +16 -0
- package/_cjs/src/utils/solana.js.map +1 -0
- package/_cjs/src/utils/steps.js +87 -0
- package/_cjs/src/utils/steps.js.map +1 -0
- package/_cjs/src/utils/sui.js +15 -0
- package/_cjs/src/utils/sui.js.map +1 -0
- package/_cjs/src/utils/theme.js +40 -0
- package/_cjs/src/utils/theme.js.map +1 -0
- package/_cjs/src/utils/time.js +36 -0
- package/_cjs/src/utils/time.js.map +1 -0
- package/_cjs/src/utils/titleCase.js +9 -0
- package/_cjs/src/utils/titleCase.js.map +1 -0
- package/_cjs/src/utils/tokenSelector.js +81 -0
- package/_cjs/src/utils/tokenSelector.js.map +1 -0
- package/_cjs/src/utils/tokens.js +56 -0
- package/_cjs/src/utils/tokens.js.map +1 -0
- package/_cjs/src/utils/tron.js +12 -0
- package/_cjs/src/utils/tron.js.map +1 -0
- package/_cjs/src/utils/truncate.js +18 -0
- package/_cjs/src/utils/truncate.js.map +1 -0
- package/_cjs/src/version.js +5 -0
- package/_cjs/src/version.js.map +1 -0
- package/_cjs/tsconfig.build.tsbuildinfo +1 -0
- package/_esm/package.json +1 -0
- package/_esm/src/components/common/AmountInput.js +43 -0
- package/_esm/src/components/common/AmountInput.js.map +1 -0
- package/_esm/src/components/common/BalanceDisplay.js +15 -0
- package/_esm/src/components/common/BalanceDisplay.js.map +1 -0
- package/_esm/src/components/common/CopyToClipBoard.js +31 -0
- package/_esm/src/components/common/CopyToClipBoard.js.map +1 -0
- package/_esm/src/components/common/CustomAddressModal.js +102 -0
- package/_esm/src/components/common/CustomAddressModal.js.map +1 -0
- package/_esm/src/components/common/ErrorWell.js +38 -0
- package/_esm/src/components/common/ErrorWell.js.map +1 -0
- package/_esm/src/components/common/LoadingSpinner.js +15 -0
- package/_esm/src/components/common/LoadingSpinner.js.map +1 -0
- package/_esm/src/components/common/Modal.js +30 -0
- package/_esm/src/components/common/Modal.js.map +1 -0
- package/_esm/src/components/common/MultiWalletDropdown.js +144 -0
- package/_esm/src/components/common/MultiWalletDropdown.js.map +1 -0
- package/_esm/src/components/common/RefundReason.js +49 -0
- package/_esm/src/components/common/RefundReason.js.map +1 -0
- package/_esm/src/components/common/SlippageToleranceConfig.js +143 -0
- package/_esm/src/components/common/SlippageToleranceConfig.js.map +1 -0
- package/_esm/src/components/common/TokenSelector/ChainFilter.js +116 -0
- package/_esm/src/components/common/TokenSelector/ChainFilter.js.map +1 -0
- package/_esm/src/components/common/TokenSelector/ChainFilterSidebar.js +150 -0
- package/_esm/src/components/common/TokenSelector/ChainFilterSidebar.js.map +1 -0
- package/_esm/src/components/common/TokenSelector/SuggestedTokens.js +63 -0
- package/_esm/src/components/common/TokenSelector/SuggestedTokens.js.map +1 -0
- package/_esm/src/components/common/TokenSelector/TagPill.js +15 -0
- package/_esm/src/components/common/TokenSelector/TagPill.js.map +1 -0
- package/_esm/src/components/common/TokenSelector/TokenList.js +79 -0
- package/_esm/src/components/common/TokenSelector/TokenList.js.map +1 -0
- package/_esm/src/components/common/TokenSelector/TokenSelector.js +411 -0
- package/_esm/src/components/common/TokenSelector/TokenSelector.js.map +1 -0
- package/_esm/src/components/common/TokenSelector/triggers/TokenTrigger.js +37 -0
- package/_esm/src/components/common/TokenSelector/triggers/TokenTrigger.js.map +1 -0
- package/_esm/src/components/common/TransactionModal/DepositAddressModal.js +83 -0
- package/_esm/src/components/common/TransactionModal/DepositAddressModal.js.map +1 -0
- package/_esm/src/components/common/TransactionModal/DepositAddressModalRenderer.js +245 -0
- package/_esm/src/components/common/TransactionModal/DepositAddressModalRenderer.js.map +1 -0
- package/_esm/src/components/common/TransactionModal/TransactionModal.js +120 -0
- package/_esm/src/components/common/TransactionModal/TransactionModal.js.map +1 -0
- package/_esm/src/components/common/TransactionModal/TransactionModalRenderer.js +135 -0
- package/_esm/src/components/common/TransactionModal/TransactionModalRenderer.js.map +1 -0
- package/_esm/src/components/common/TransactionModal/steps/ApprovalPlusSwapStep.js +77 -0
- package/_esm/src/components/common/TransactionModal/steps/ApprovalPlusSwapStep.js.map +1 -0
- package/_esm/src/components/common/TransactionModal/steps/DepositAddressValidatingStep.js +20 -0
- package/_esm/src/components/common/TransactionModal/steps/DepositAddressValidatingStep.js.map +1 -0
- package/_esm/src/components/common/TransactionModal/steps/ErrorStep.js +80 -0
- package/_esm/src/components/common/TransactionModal/steps/ErrorStep.js.map +1 -0
- package/_esm/src/components/common/TransactionModal/steps/SwapConfirmationStep.js +112 -0
- package/_esm/src/components/common/TransactionModal/steps/SwapConfirmationStep.js.map +1 -0
- package/_esm/src/components/common/TransactionModal/steps/SwapSuccessStep.js +130 -0
- package/_esm/src/components/common/TransactionModal/steps/SwapSuccessStep.js.map +1 -0
- package/_esm/src/components/common/TransactionModal/steps/TransactionsByChain.js +64 -0
- package/_esm/src/components/common/TransactionModal/steps/TransactionsByChain.js.map +1 -0
- package/_esm/src/components/common/TransactionModal/steps/WaitingForDepositStep.js +84 -0
- package/_esm/src/components/common/TransactionModal/steps/WaitingForDepositStep.js.map +1 -0
- package/_esm/src/components/common/UnverifiedTokenModal.js +70 -0
- package/_esm/src/components/common/UnverifiedTokenModal.js.map +1 -0
- package/_esm/src/components/primitives/AccessibleList.js +28 -0
- package/_esm/src/components/primitives/AccessibleList.js.map +1 -0
- package/_esm/src/components/primitives/Anchor.js +53 -0
- package/_esm/src/components/primitives/Anchor.js.map +1 -0
- package/_esm/src/components/primitives/Box.js +8 -0
- package/_esm/src/components/primitives/Box.js.map +1 -0
- package/_esm/src/components/primitives/Button.js +153 -0
- package/_esm/src/components/primitives/Button.js.map +1 -0
- package/_esm/src/components/primitives/ChainIcon.js +32 -0
- package/_esm/src/components/primitives/ChainIcon.js.map +1 -0
- package/_esm/src/components/primitives/ChainTokenIcon.js +50 -0
- package/_esm/src/components/primitives/ChainTokenIcon.js.map +1 -0
- package/_esm/src/components/primitives/Collapsible.js +40 -0
- package/_esm/src/components/primitives/Collapsible.js.map +1 -0
- package/_esm/src/components/primitives/Dialog.js +97 -0
- package/_esm/src/components/primitives/Dialog.js.map +1 -0
- package/_esm/src/components/primitives/Dropdown.js +49 -0
- package/_esm/src/components/primitives/Dropdown.js.map +1 -0
- package/_esm/src/components/primitives/Flex.js +73 -0
- package/_esm/src/components/primitives/Flex.js.map +1 -0
- package/_esm/src/components/primitives/Input.js +66 -0
- package/_esm/src/components/primitives/Input.js.map +1 -0
- package/_esm/src/components/primitives/Pill.js +60 -0
- package/_esm/src/components/primitives/Pill.js.map +1 -0
- package/_esm/src/components/primitives/Skeleton.js +16 -0
- package/_esm/src/components/primitives/Skeleton.js.map +1 -0
- package/_esm/src/components/primitives/Switch.js +49 -0
- package/_esm/src/components/primitives/Switch.js.map +1 -0
- package/_esm/src/components/primitives/Tabs.js +46 -0
- package/_esm/src/components/primitives/Tabs.js.map +1 -0
- package/_esm/src/components/primitives/Text.js +104 -0
- package/_esm/src/components/primitives/Text.js.map +1 -0
- package/_esm/src/components/primitives/Tooltip.js +41 -0
- package/_esm/src/components/primitives/Tooltip.js.map +1 -0
- package/_esm/src/components/primitives/index.js +14 -0
- package/_esm/src/components/primitives/index.js.map +1 -0
- package/_esm/src/components/widgets/FeeBreakdown.js +162 -0
- package/_esm/src/components/widgets/FeeBreakdown.js.map +1 -0
- package/_esm/src/components/widgets/FetchingQuoteLoader.js +19 -0
- package/_esm/src/components/widgets/FetchingQuoteLoader.js.map +1 -0
- package/_esm/src/components/widgets/OnrampWidget/index.js +2 -0
- package/_esm/src/components/widgets/OnrampWidget/index.js.map +1 -0
- package/_esm/src/components/widgets/OnrampWidget/modals/OnrampModal.js +281 -0
- package/_esm/src/components/widgets/OnrampWidget/modals/OnrampModal.js.map +1 -0
- package/_esm/src/components/widgets/OnrampWidget/modals/steps/OnrampConfirmingStep.js +38 -0
- package/_esm/src/components/widgets/OnrampWidget/modals/steps/OnrampConfirmingStep.js.map +1 -0
- package/_esm/src/components/widgets/OnrampWidget/modals/steps/OnrampMoonPayStep.js +176 -0
- package/_esm/src/components/widgets/OnrampWidget/modals/steps/OnrampMoonPayStep.js.map +1 -0
- package/_esm/src/components/widgets/OnrampWidget/modals/steps/OnrampProcessingPassthroughStep.js +40 -0
- package/_esm/src/components/widgets/OnrampWidget/modals/steps/OnrampProcessingPassthroughStep.js.map +1 -0
- package/_esm/src/components/widgets/OnrampWidget/modals/steps/OnrampProcessingStepUI.js +83 -0
- package/_esm/src/components/widgets/OnrampWidget/modals/steps/OnrampProcessingStepUI.js.map +1 -0
- package/_esm/src/components/widgets/OnrampWidget/modals/steps/OnrampSuccessStep.js +35 -0
- package/_esm/src/components/widgets/OnrampWidget/modals/steps/OnrampSuccessStep.js.map +1 -0
- package/_esm/src/components/widgets/OnrampWidget/widget/FiatCurrencyModal.js +170 -0
- package/_esm/src/components/widgets/OnrampWidget/widget/FiatCurrencyModal.js.map +1 -0
- package/_esm/src/components/widgets/OnrampWidget/widget/OnrampWidgetRenderer.js +195 -0
- package/_esm/src/components/widgets/OnrampWidget/widget/OnrampWidgetRenderer.js.map +1 -0
- package/_esm/src/components/widgets/OnrampWidget/widget/index.js +332 -0
- package/_esm/src/components/widgets/OnrampWidget/widget/index.js.map +1 -0
- package/_esm/src/components/widgets/PriceImpactTooltip.js +23 -0
- package/_esm/src/components/widgets/PriceImpactTooltip.js.map +1 -0
- package/_esm/src/components/widgets/SwapButton.js +36 -0
- package/_esm/src/components/widgets/SwapButton.js.map +1 -0
- package/_esm/src/components/widgets/SwapRouteSelector.js +84 -0
- package/_esm/src/components/widgets/SwapRouteSelector.js.map +1 -0
- package/_esm/src/components/widgets/SwapWidget/GasTopUpSection.js +23 -0
- package/_esm/src/components/widgets/SwapWidget/GasTopUpSection.js.map +1 -0
- package/_esm/src/components/widgets/SwapWidget/index.js +955 -0
- package/_esm/src/components/widgets/SwapWidget/index.js.map +1 -0
- package/_esm/src/components/widgets/SwapWidgetRenderer.js +754 -0
- package/_esm/src/components/widgets/SwapWidgetRenderer.js.map +1 -0
- package/_esm/src/components/widgets/TokenSelectorContainer.js +20 -0
- package/_esm/src/components/widgets/TokenSelectorContainer.js.map +1 -0
- package/_esm/src/components/widgets/WidgetContainer.js +26 -0
- package/_esm/src/components/widgets/WidgetContainer.js.map +1 -0
- package/_esm/src/components/widgets/WidgetErrorWell.js +153 -0
- package/_esm/src/components/widgets/WidgetErrorWell.js.map +1 -0
- package/_esm/src/components/widgets/WidgetFooter.js +31 -0
- package/_esm/src/components/widgets/WidgetFooter.js.map +1 -0
- package/_esm/src/constants/address.js +11 -0
- package/_esm/src/constants/address.js.map +1 -0
- package/_esm/src/constants/agwRegistryAbi.js +17 -0
- package/_esm/src/constants/agwRegistryAbi.js.map +1 -0
- package/_esm/src/constants/cache.js +3 -0
- package/_esm/src/constants/cache.js.map +1 -0
- package/_esm/src/constants/chainIdToAlchemyNetworkMap.js +11 -0
- package/_esm/src/constants/chainIdToAlchemyNetworkMap.js.map +1 -0
- package/_esm/src/constants/currencies.js +2 -0
- package/_esm/src/constants/currencies.js.map +1 -0
- package/_esm/src/constants/depositAddresses.js +11 -0
- package/_esm/src/constants/depositAddresses.js.map +1 -0
- package/_esm/src/constants/events.js +60 -0
- package/_esm/src/constants/events.js.map +1 -0
- package/_esm/src/constants/maxGasBuffer.js +9 -0
- package/_esm/src/constants/maxGasBuffer.js.map +1 -0
- package/_esm/src/constants/moonPayCurrencies.js +293 -0
- package/_esm/src/constants/moonPayCurrencies.js.map +1 -0
- package/_esm/src/constants/moonPayFiatCurrencies.js +207 -0
- package/_esm/src/constants/moonPayFiatCurrencies.js.map +1 -0
- package/_esm/src/constants/walletCompatibility.js +20 -0
- package/_esm/src/constants/walletCompatibility.js.map +1 -0
- package/_esm/src/hooks/index.js +25 -0
- package/_esm/src/hooks/index.js.map +1 -0
- package/_esm/src/hooks/useAdaptedWalletBalance.js +26 -0
- package/_esm/src/hooks/useAdaptedWalletBalance.js.map +1 -0
- package/_esm/src/hooks/useAtomicBatchSupport.js +33 -0
- package/_esm/src/hooks/useAtomicBatchSupport.js.map +1 -0
- package/_esm/src/hooks/useBitcoinBalance.js +38 -0
- package/_esm/src/hooks/useBitcoinBalance.js.map +1 -0
- package/_esm/src/hooks/useCexAddresses.js +19 -0
- package/_esm/src/hooks/useCexAddresses.js.map +1 -0
- package/_esm/src/hooks/useCurrencyBalance.js +232 -0
- package/_esm/src/hooks/useCurrencyBalance.js.map +1 -0
- package/_esm/src/hooks/useDebounceState.js +33 -0
- package/_esm/src/hooks/useDebounceState.js.map +1 -0
- package/_esm/src/hooks/useDisconnected.js +12 -0
- package/_esm/src/hooks/useDisconnected.js.map +1 -0
- package/_esm/src/hooks/useDuneBalances.js +98 -0
- package/_esm/src/hooks/useDuneBalances.js.map +1 -0
- package/_esm/src/hooks/useENSResolver.js +35 -0
- package/_esm/src/hooks/useENSResolver.js.map +1 -0
- package/_esm/src/hooks/useEclipseBalance.js +44 -0
- package/_esm/src/hooks/useEclipseBalance.js.map +1 -0
- package/_esm/src/hooks/useEnhancedTokensList.js +85 -0
- package/_esm/src/hooks/useEnhancedTokensList.js.map +1 -0
- package/_esm/src/hooks/useFallbackState.js +10 -0
- package/_esm/src/hooks/useFallbackState.js.map +1 -0
- package/_esm/src/hooks/useGasTopUpRequired.js +57 -0
- package/_esm/src/hooks/useGasTopUpRequired.js.map +1 -0
- package/_esm/src/hooks/useHyperliquidUsdcBalance.js +35 -0
- package/_esm/src/hooks/useHyperliquidUsdcBalance.js.map +1 -0
- package/_esm/src/hooks/useInternalRelayChains.js +19 -0
- package/_esm/src/hooks/useInternalRelayChains.js.map +1 -0
- package/_esm/src/hooks/useIpAddress.js +10 -0
- package/_esm/src/hooks/useIpAddress.js.map +1 -0
- package/_esm/src/hooks/useIsAGW.js +31 -0
- package/_esm/src/hooks/useIsAGW.js.map +1 -0
- package/_esm/src/hooks/useIsPassthrough.js +53 -0
- package/_esm/src/hooks/useIsPassthrough.js.map +1 -0
- package/_esm/src/hooks/useIsWalletCompatible.js +40 -0
- package/_esm/src/hooks/useIsWalletCompatible.js.map +1 -0
- package/_esm/src/hooks/useMoonPayCurrencies.js +21 -0
- package/_esm/src/hooks/useMoonPayCurrencies.js.map +1 -0
- package/_esm/src/hooks/useMoonPayGeolocation.js +23 -0
- package/_esm/src/hooks/useMoonPayGeolocation.js.map +1 -0
- package/_esm/src/hooks/useMoonPayTransaction.js +23 -0
- package/_esm/src/hooks/useMoonPayTransaction.js.map +1 -0
- package/_esm/src/hooks/useMounted.js +9 -0
- package/_esm/src/hooks/useMounted.js.map +1 -0
- package/_esm/src/hooks/usePreviousValueChange.js +12 -0
- package/_esm/src/hooks/usePreviousValueChange.js.map +1 -0
- package/_esm/src/hooks/useRelayClient.js +6 -0
- package/_esm/src/hooks/useRelayClient.js.map +1 -0
- package/_esm/src/hooks/useSuiBalance.js +45 -0
- package/_esm/src/hooks/useSuiBalance.js.map +1 -0
- package/_esm/src/hooks/useSupportedMoonPayCurrencyCode.js +61 -0
- package/_esm/src/hooks/useSupportedMoonPayCurrencyCode.js.map +1 -0
- package/_esm/src/hooks/useWalletAddress.js +20 -0
- package/_esm/src/hooks/useWalletAddress.js.map +1 -0
- package/_esm/src/hooks/widget/useSwapButtonCta.js +77 -0
- package/_esm/src/hooks/widget/useSwapButtonCta.js.map +1 -0
- package/_esm/src/icons/SwitchIcon.js +6 -0
- package/_esm/src/icons/SwitchIcon.js.map +1 -0
- package/_esm/src/icons/index.js +2 -0
- package/_esm/src/icons/index.js.map +1 -0
- package/_esm/src/img/AllChainsLogo.js +7 -0
- package/_esm/src/img/AllChainsLogo.js.map +1 -0
- package/_esm/src/img/MoonPayLogo.js +7 -0
- package/_esm/src/img/MoonPayLogo.js.map +1 -0
- package/_esm/src/img/ReservoirText.js +7 -0
- package/_esm/src/img/ReservoirText.js.map +1 -0
- package/_esm/src/index.js +13 -0
- package/_esm/src/index.js.map +1 -0
- package/_esm/src/providers/RelayClientProvider.js +10 -0
- package/_esm/src/providers/RelayClientProvider.js.map +1 -0
- package/_esm/src/providers/RelayKitProvider.js +120 -0
- package/_esm/src/providers/RelayKitProvider.js.map +1 -0
- package/_esm/src/styles.css +3408 -0
- package/_esm/src/themes/RelayKitTheme.js +86 -0
- package/_esm/src/themes/RelayKitTheme.js.map +1 -0
- package/_esm/src/themes/index.js +2 -0
- package/_esm/src/themes/index.js.map +1 -0
- package/_esm/src/types/BridgeFee.js +2 -0
- package/_esm/src/types/BridgeFee.js.map +1 -0
- package/_esm/src/types/Fiat.js +2 -0
- package/_esm/src/types/Fiat.js.map +1 -0
- package/_esm/src/types/RelayTransaction.js +2 -0
- package/_esm/src/types/RelayTransaction.js.map +1 -0
- package/_esm/src/types/index.js +2 -0
- package/_esm/src/types/index.js.map +1 -0
- package/_esm/src/utils/address.js +68 -0
- package/_esm/src/utils/address.js.map +1 -0
- package/_esm/src/utils/bitcoin.js +8 -0
- package/_esm/src/utils/bitcoin.js.map +1 -0
- package/_esm/src/utils/browser.js +4 -0
- package/_esm/src/utils/browser.js.map +1 -0
- package/_esm/src/utils/ens.js +5 -0
- package/_esm/src/utils/ens.js.map +1 -0
- package/_esm/src/utils/errors.js +36 -0
- package/_esm/src/utils/errors.js.map +1 -0
- package/_esm/src/utils/fetcher.js +15 -0
- package/_esm/src/utils/fetcher.js.map +1 -0
- package/_esm/src/utils/getChainBlockExplorerUrl.js +11 -0
- package/_esm/src/utils/getChainBlockExplorerUrl.js.map +1 -0
- package/_esm/src/utils/getTxBlockExplorerUrl.js +23 -0
- package/_esm/src/utils/getTxBlockExplorerUrl.js.map +1 -0
- package/_esm/src/utils/hashing.js +38 -0
- package/_esm/src/utils/hashing.js.map +1 -0
- package/_esm/src/utils/localStorage.js +93 -0
- package/_esm/src/utils/localStorage.js.map +1 -0
- package/_esm/src/utils/moonPay.js +44 -0
- package/_esm/src/utils/moonPay.js.map +1 -0
- package/_esm/src/utils/nativeMaxAmount.js +172 -0
- package/_esm/src/utils/nativeMaxAmount.js.map +1 -0
- package/_esm/src/utils/numbers.js +191 -0
- package/_esm/src/utils/numbers.js.map +1 -0
- package/_esm/src/utils/qrcode.js +19 -0
- package/_esm/src/utils/qrcode.js.map +1 -0
- package/_esm/src/utils/quote.js +248 -0
- package/_esm/src/utils/quote.js.map +1 -0
- package/_esm/src/utils/relayTransaction.js +80 -0
- package/_esm/src/utils/relayTransaction.js.map +1 -0
- package/_esm/src/utils/slippage.js +14 -0
- package/_esm/src/utils/slippage.js.map +1 -0
- package/_esm/src/utils/solana.js +12 -0
- package/_esm/src/utils/solana.js.map +1 -0
- package/_esm/src/utils/steps.js +102 -0
- package/_esm/src/utils/steps.js.map +1 -0
- package/_esm/src/utils/sui.js +11 -0
- package/_esm/src/utils/sui.js.map +1 -0
- package/_esm/src/utils/theme.js +37 -0
- package/_esm/src/utils/theme.js.map +1 -0
- package/_esm/src/utils/time.js +29 -0
- package/_esm/src/utils/time.js.map +1 -0
- package/_esm/src/utils/titleCase.js +12 -0
- package/_esm/src/utils/titleCase.js.map +1 -0
- package/_esm/src/utils/tokenSelector.js +79 -0
- package/_esm/src/utils/tokenSelector.js.map +1 -0
- package/_esm/src/utils/tokens.js +50 -0
- package/_esm/src/utils/tokens.js.map +1 -0
- package/_esm/src/utils/tron.js +8 -0
- package/_esm/src/utils/tron.js.map +1 -0
- package/_esm/src/utils/truncate.js +23 -0
- package/_esm/src/utils/truncate.js.map +1 -0
- package/_esm/src/version.js +2 -0
- package/_esm/src/version.js.map +1 -0
- package/_esm/tsconfig.build.tsbuildinfo +1 -0
- package/_types/src/components/common/AmountInput.d.ts +10 -0
- package/_types/src/components/common/AmountInput.d.ts.map +1 -0
- package/_types/src/components/common/BalanceDisplay.d.ts +14 -0
- package/_types/src/components/common/BalanceDisplay.d.ts.map +1 -0
- package/_types/src/components/common/CopyToClipBoard.d.ts +7 -0
- package/_types/src/components/common/CopyToClipBoard.d.ts.map +1 -0
- package/_types/src/components/common/CustomAddressModal.d.ts +22 -0
- package/_types/src/components/common/CustomAddressModal.d.ts.map +1 -0
- package/_types/src/components/common/ErrorWell.d.ts +11 -0
- package/_types/src/components/common/ErrorWell.d.ts.map +1 -0
- package/_types/src/components/common/LoadingSpinner.d.ts +6 -0
- package/_types/src/components/common/LoadingSpinner.d.ts.map +1 -0
- package/_types/src/components/common/Modal.d.ts +15 -0
- package/_types/src/components/common/Modal.d.ts.map +1 -0
- package/_types/src/components/common/MultiWalletDropdown.d.ts +17 -0
- package/_types/src/components/common/MultiWalletDropdown.d.ts.map +1 -0
- package/_types/src/components/common/RefundReason.d.ts +8 -0
- package/_types/src/components/common/RefundReason.d.ts.map +1 -0
- package/_types/src/components/common/SlippageToleranceConfig.d.ts +8 -0
- package/_types/src/components/common/SlippageToleranceConfig.d.ts.map +1 -0
- package/_types/src/components/common/TokenSelector/ChainFilter.d.ts +16 -0
- package/_types/src/components/common/TokenSelector/ChainFilter.d.ts.map +1 -0
- package/_types/src/components/common/TokenSelector/ChainFilterSidebar.d.ts +20 -0
- package/_types/src/components/common/TokenSelector/ChainFilterSidebar.d.ts.map +1 -0
- package/_types/src/components/common/TokenSelector/SuggestedTokens.d.ts +10 -0
- package/_types/src/components/common/TokenSelector/SuggestedTokens.d.ts.map +1 -0
- package/_types/src/components/common/TokenSelector/TagPill.d.ts +7 -0
- package/_types/src/components/common/TokenSelector/TagPill.d.ts.map +1 -0
- package/_types/src/components/common/TokenSelector/TokenList.d.ts +13 -0
- package/_types/src/components/common/TokenSelector/TokenList.d.ts.map +1 -0
- package/_types/src/components/common/TokenSelector/TokenSelector.d.ts +22 -0
- package/_types/src/components/common/TokenSelector/TokenSelector.d.ts.map +1 -0
- package/_types/src/components/common/TokenSelector/triggers/TokenTrigger.d.ts +11 -0
- package/_types/src/components/common/TokenSelector/triggers/TokenTrigger.d.ts.map +1 -0
- package/_types/src/components/common/TransactionModal/DepositAddressModal.d.ts +26 -0
- package/_types/src/components/common/TransactionModal/DepositAddressModal.d.ts.map +1 -0
- package/_types/src/components/common/TransactionModal/DepositAddressModalRenderer.d.ts +57 -0
- package/_types/src/components/common/TransactionModal/DepositAddressModalRenderer.d.ts.map +1 -0
- package/_types/src/components/common/TransactionModal/TransactionModal.d.ts +33 -0
- package/_types/src/components/common/TransactionModal/TransactionModal.d.ts.map +1 -0
- package/_types/src/components/common/TransactionModal/TransactionModalRenderer.d.ts +63 -0
- package/_types/src/components/common/TransactionModal/TransactionModalRenderer.d.ts.map +1 -0
- package/_types/src/components/common/TransactionModal/steps/ApprovalPlusSwapStep.d.ts +15 -0
- package/_types/src/components/common/TransactionModal/steps/ApprovalPlusSwapStep.d.ts.map +1 -0
- package/_types/src/components/common/TransactionModal/steps/DepositAddressValidatingStep.d.ts +9 -0
- package/_types/src/components/common/TransactionModal/steps/DepositAddressValidatingStep.d.ts.map +1 -0
- package/_types/src/components/common/TransactionModal/steps/ErrorStep.d.ts +17 -0
- package/_types/src/components/common/TransactionModal/steps/ErrorStep.d.ts.map +1 -0
- package/_types/src/components/common/TransactionModal/steps/SwapConfirmationStep.d.ts +30 -0
- package/_types/src/components/common/TransactionModal/steps/SwapConfirmationStep.d.ts.map +1 -0
- package/_types/src/components/common/TransactionModal/steps/SwapSuccessStep.d.ts +24 -0
- package/_types/src/components/common/TransactionModal/steps/SwapSuccessStep.d.ts.map +1 -0
- package/_types/src/components/common/TransactionModal/steps/TransactionsByChain.d.ts +14 -0
- package/_types/src/components/common/TransactionModal/steps/TransactionsByChain.d.ts.map +1 -0
- package/_types/src/components/common/TransactionModal/steps/WaitingForDepositStep.d.ts +13 -0
- package/_types/src/components/common/TransactionModal/steps/WaitingForDepositStep.d.ts.map +1 -0
- package/_types/src/components/common/UnverifiedTokenModal.d.ts +16 -0
- package/_types/src/components/common/UnverifiedTokenModal.d.ts.map +1 -0
- package/_types/src/components/primitives/AccessibleList.d.ts +17 -0
- package/_types/src/components/primitives/AccessibleList.d.ts.map +1 -0
- package/_types/src/components/primitives/Anchor.d.ts +44 -0
- package/_types/src/components/primitives/Anchor.d.ts.map +1 -0
- package/_types/src/components/primitives/Box.d.ts +10 -0
- package/_types/src/components/primitives/Box.d.ts.map +1 -0
- package/_types/src/components/primitives/Button.d.ts +11 -0
- package/_types/src/components/primitives/Button.d.ts.map +1 -0
- package/_types/src/components/primitives/ChainIcon.d.ts +12 -0
- package/_types/src/components/primitives/ChainIcon.d.ts.map +1 -0
- package/_types/src/components/primitives/ChainTokenIcon.d.ts +13 -0
- package/_types/src/components/primitives/ChainTokenIcon.d.ts.map +1 -0
- package/_types/src/components/primitives/Collapsible.d.ts +20 -0
- package/_types/src/components/primitives/Collapsible.d.ts.map +1 -0
- package/_types/src/components/primitives/Dialog.d.ts +23 -0
- package/_types/src/components/primitives/Dialog.d.ts.map +1 -0
- package/_types/src/components/primitives/Dropdown.d.ts +16 -0
- package/_types/src/components/primitives/Dropdown.d.ts.map +1 -0
- package/_types/src/components/primitives/Flex.d.ts +71 -0
- package/_types/src/components/primitives/Flex.d.ts.map +1 -0
- package/_types/src/components/primitives/Input.d.ts +18 -0
- package/_types/src/components/primitives/Input.d.ts.map +1 -0
- package/_types/src/components/primitives/Pill.d.ts +50 -0
- package/_types/src/components/primitives/Pill.d.ts.map +1 -0
- package/_types/src/components/primitives/Skeleton.d.ts +8 -0
- package/_types/src/components/primitives/Skeleton.d.ts.map +1 -0
- package/_types/src/components/primitives/Switch.d.ts +10 -0
- package/_types/src/components/primitives/Switch.d.ts.map +1 -0
- package/_types/src/components/primitives/Tabs.d.ts +17 -0
- package/_types/src/components/primitives/Tabs.d.ts.map +1 -0
- package/_types/src/components/primitives/Text.d.ts +99 -0
- package/_types/src/components/primitives/Text.d.ts.map +1 -0
- package/_types/src/components/primitives/Tooltip.d.ts +3 -0
- package/_types/src/components/primitives/Tooltip.d.ts.map +1 -0
- package/_types/src/components/primitives/index.d.ts +14 -0
- package/_types/src/components/primitives/index.d.ts.map +1 -0
- package/_types/src/components/widgets/FeeBreakdown.d.ts +14 -0
- package/_types/src/components/widgets/FeeBreakdown.d.ts.map +1 -0
- package/_types/src/components/widgets/FetchingQuoteLoader.d.ts +9 -0
- package/_types/src/components/widgets/FetchingQuoteLoader.d.ts.map +1 -0
- package/_types/src/components/widgets/OnrampWidget/index.d.ts +2 -0
- package/_types/src/components/widgets/OnrampWidget/index.d.ts.map +1 -0
- package/_types/src/components/widgets/OnrampWidget/modals/OnrampModal.d.ts +41 -0
- package/_types/src/components/widgets/OnrampWidget/modals/OnrampModal.d.ts.map +1 -0
- package/_types/src/components/widgets/OnrampWidget/modals/steps/OnrampConfirmingStep.d.ts +22 -0
- package/_types/src/components/widgets/OnrampWidget/modals/steps/OnrampConfirmingStep.d.ts.map +1 -0
- package/_types/src/components/widgets/OnrampWidget/modals/steps/OnrampMoonPayStep.d.ts +33 -0
- package/_types/src/components/widgets/OnrampWidget/modals/steps/OnrampMoonPayStep.d.ts.map +1 -0
- package/_types/src/components/widgets/OnrampWidget/modals/steps/OnrampProcessingPassthroughStep.d.ts +11 -0
- package/_types/src/components/widgets/OnrampWidget/modals/steps/OnrampProcessingPassthroughStep.d.ts.map +1 -0
- package/_types/src/components/widgets/OnrampWidget/modals/steps/OnrampProcessingStepUI.d.ts +19 -0
- package/_types/src/components/widgets/OnrampWidget/modals/steps/OnrampProcessingStepUI.d.ts.map +1 -0
- package/_types/src/components/widgets/OnrampWidget/modals/steps/OnrampSuccessStep.d.ts +15 -0
- package/_types/src/components/widgets/OnrampWidget/modals/steps/OnrampSuccessStep.d.ts.map +1 -0
- package/_types/src/components/widgets/OnrampWidget/widget/FiatCurrencyModal.d.ts +10 -0
- package/_types/src/components/widgets/OnrampWidget/widget/FiatCurrencyModal.d.ts.map +1 -0
- package/_types/src/components/widgets/OnrampWidget/widget/OnrampWidgetRenderer.d.ts +45 -0
- package/_types/src/components/widgets/OnrampWidget/widget/OnrampWidgetRenderer.d.ts.map +1 -0
- package/_types/src/components/widgets/OnrampWidget/widget/index.d.ts +38 -0
- package/_types/src/components/widgets/OnrampWidget/widget/index.d.ts.map +1 -0
- package/_types/src/components/widgets/PriceImpactTooltip.d.ts +10 -0
- package/_types/src/components/widgets/PriceImpactTooltip.d.ts.map +1 -0
- package/_types/src/components/widgets/SwapButton.d.ts +14 -0
- package/_types/src/components/widgets/SwapButton.d.ts.map +1 -0
- package/_types/src/components/widgets/SwapRouteSelector.d.ts +14 -0
- package/_types/src/components/widgets/SwapRouteSelector.d.ts.map +1 -0
- package/_types/src/components/widgets/SwapWidget/GasTopUpSection.d.ts +13 -0
- package/_types/src/components/widgets/SwapWidget/GasTopUpSection.d.ts.map +1 -0
- package/_types/src/components/widgets/SwapWidget/index.d.ts +50 -0
- package/_types/src/components/widgets/SwapWidget/index.d.ts.map +1 -0
- package/_types/src/components/widgets/SwapWidgetRenderer.d.ts +133 -0
- package/_types/src/components/widgets/SwapWidgetRenderer.d.ts.map +1 -0
- package/_types/src/components/widgets/TokenSelectorContainer.d.ts +8 -0
- package/_types/src/components/widgets/TokenSelectorContainer.d.ts.map +1 -0
- package/_types/src/components/widgets/WidgetContainer.d.ts +29 -0
- package/_types/src/components/widgets/WidgetContainer.d.ts.map +1 -0
- package/_types/src/components/widgets/WidgetErrorWell.d.ts +26 -0
- package/_types/src/components/widgets/WidgetErrorWell.d.ts.map +1 -0
- package/_types/src/components/widgets/WidgetFooter.d.ts +3 -0
- package/_types/src/components/widgets/WidgetFooter.d.ts.map +1 -0
- package/_types/src/constants/address.d.ts +5 -0
- package/_types/src/constants/address.d.ts.map +1 -0
- package/_types/src/constants/agwRegistryAbi.d.ts +16 -0
- package/_types/src/constants/agwRegistryAbi.d.ts.map +1 -0
- package/_types/src/constants/cache.d.ts +3 -0
- package/_types/src/constants/cache.d.ts.map +1 -0
- package/_types/src/constants/chainIdToAlchemyNetworkMap.d.ts +2 -0
- package/_types/src/constants/chainIdToAlchemyNetworkMap.d.ts.map +1 -0
- package/_types/src/constants/currencies.d.ts +8 -0
- package/_types/src/constants/currencies.d.ts.map +1 -0
- package/_types/src/constants/depositAddresses.d.ts +2 -0
- package/_types/src/constants/depositAddresses.d.ts.map +1 -0
- package/_types/src/constants/events.d.ts +59 -0
- package/_types/src/constants/events.d.ts.map +1 -0
- package/_types/src/constants/maxGasBuffer.d.ts +9 -0
- package/_types/src/constants/maxGasBuffer.d.ts.map +1 -0
- package/_types/src/constants/moonPayCurrencies.d.ts +11 -0
- package/_types/src/constants/moonPayCurrencies.d.ts.map +1 -0
- package/_types/src/constants/moonPayFiatCurrencies.d.ts +8 -0
- package/_types/src/constants/moonPayFiatCurrencies.d.ts.map +1 -0
- package/_types/src/constants/walletCompatibility.d.ts +4 -0
- package/_types/src/constants/walletCompatibility.d.ts.map +1 -0
- package/_types/src/hooks/index.d.ts +25 -0
- package/_types/src/hooks/index.d.ts.map +1 -0
- package/_types/src/hooks/useAdaptedWalletBalance.d.ts +175 -0
- package/_types/src/hooks/useAdaptedWalletBalance.d.ts.map +1 -0
- package/_types/src/hooks/useAtomicBatchSupport.d.ts +9 -0
- package/_types/src/hooks/useAtomicBatchSupport.d.ts.map +1 -0
- package/_types/src/hooks/useBitcoinBalance.d.ts +13 -0
- package/_types/src/hooks/useBitcoinBalance.d.ts.map +1 -0
- package/_types/src/hooks/useCexAddresses.d.ts +6 -0
- package/_types/src/hooks/useCexAddresses.d.ts.map +1 -0
- package/_types/src/hooks/useCurrencyBalance.d.ts +23 -0
- package/_types/src/hooks/useCurrencyBalance.d.ts.map +1 -0
- package/_types/src/hooks/useDebounceState.d.ts +11 -0
- package/_types/src/hooks/useDebounceState.d.ts.map +1 -0
- package/_types/src/hooks/useDisconnected.d.ts +4 -0
- package/_types/src/hooks/useDisconnected.d.ts.map +1 -0
- package/_types/src/hooks/useDuneBalances.d.ts +25 -0
- package/_types/src/hooks/useDuneBalances.d.ts.map +1 -0
- package/_types/src/hooks/useENSResolver.d.ts +14 -0
- package/_types/src/hooks/useENSResolver.d.ts.map +1 -0
- package/_types/src/hooks/useEclipseBalance.d.ts +12 -0
- package/_types/src/hooks/useEclipseBalance.d.ts.map +1 -0
- package/_types/src/hooks/useEnhancedTokensList.d.ts +23 -0
- package/_types/src/hooks/useEnhancedTokensList.d.ts.map +1 -0
- package/_types/src/hooks/useFallbackState.d.ts +5 -0
- package/_types/src/hooks/useFallbackState.d.ts.map +1 -0
- package/_types/src/hooks/useGasTopUpRequired.d.ts +9 -0
- package/_types/src/hooks/useGasTopUpRequired.d.ts.map +1 -0
- package/_types/src/hooks/useHyperliquidUsdcBalance.d.ts +23 -0
- package/_types/src/hooks/useHyperliquidUsdcBalance.d.ts.map +1 -0
- package/_types/src/hooks/useInternalRelayChains.d.ts +131 -0
- package/_types/src/hooks/useInternalRelayChains.d.ts.map +1 -0
- package/_types/src/hooks/useIpAddress.d.ts +9 -0
- package/_types/src/hooks/useIpAddress.d.ts.map +1 -0
- package/_types/src/hooks/useIsAGW.d.ts +2 -0
- package/_types/src/hooks/useIsAGW.d.ts.map +1 -0
- package/_types/src/hooks/useIsPassthrough.d.ts +17 -0
- package/_types/src/hooks/useIsPassthrough.d.ts.map +1 -0
- package/_types/src/hooks/useIsWalletCompatible.d.ts +4 -0
- package/_types/src/hooks/useIsWalletCompatible.d.ts.map +1 -0
- package/_types/src/hooks/useMoonPayCurrencies.d.ts +51 -0
- package/_types/src/hooks/useMoonPayCurrencies.d.ts.map +1 -0
- package/_types/src/hooks/useMoonPayGeolocation.d.ts +25 -0
- package/_types/src/hooks/useMoonPayGeolocation.d.ts.map +1 -0
- package/_types/src/hooks/useMoonPayTransaction.d.ts +22 -0
- package/_types/src/hooks/useMoonPayTransaction.d.ts.map +1 -0
- package/_types/src/hooks/useMounted.d.ts +3 -0
- package/_types/src/hooks/useMounted.d.ts.map +1 -0
- package/_types/src/hooks/usePreviousValueChange.d.ts +3 -0
- package/_types/src/hooks/usePreviousValueChange.d.ts.map +1 -0
- package/_types/src/hooks/useRelayClient.d.ts +2 -0
- package/_types/src/hooks/useRelayClient.d.ts.map +1 -0
- package/_types/src/hooks/useSuiBalance.d.ts +14 -0
- package/_types/src/hooks/useSuiBalance.d.ts.map +1 -0
- package/_types/src/hooks/useSupportedMoonPayCurrencyCode.d.ts +11 -0
- package/_types/src/hooks/useSupportedMoonPayCurrencyCode.d.ts.map +1 -0
- package/_types/src/hooks/useWalletAddress.d.ts +5 -0
- package/_types/src/hooks/useWalletAddress.d.ts.map +1 -0
- package/_types/src/hooks/widget/useSwapButtonCta.d.ts +28 -0
- package/_types/src/hooks/widget/useSwapButtonCta.d.ts.map +1 -0
- package/_types/src/icons/SwitchIcon.d.ts +9 -0
- package/_types/src/icons/SwitchIcon.d.ts.map +1 -0
- package/_types/src/icons/index.d.ts +2 -0
- package/_types/src/icons/index.d.ts.map +1 -0
- package/_types/src/img/AllChainsLogo.d.ts +4 -0
- package/_types/src/img/AllChainsLogo.d.ts.map +1 -0
- package/_types/src/img/MoonPayLogo.d.ts +4 -0
- package/_types/src/img/MoonPayLogo.d.ts.map +1 -0
- package/_types/src/img/ReservoirText.d.ts +4 -0
- package/_types/src/img/ReservoirText.d.ts.map +1 -0
- package/_types/src/index.d.ts +11 -0
- package/_types/src/index.d.ts.map +1 -0
- package/_types/src/providers/RelayClientProvider.d.ts +9 -0
- package/_types/src/providers/RelayClientProvider.d.ts.map +1 -0
- package/_types/src/providers/RelayKitProvider.d.ts +58 -0
- package/_types/src/providers/RelayKitProvider.d.ts.map +1 -0
- package/_types/src/themes/RelayKitTheme.d.ts +78 -0
- package/_types/src/themes/RelayKitTheme.d.ts.map +1 -0
- package/_types/src/themes/index.d.ts +3 -0
- package/_types/src/themes/index.d.ts.map +1 -0
- package/_types/src/types/BridgeFee.d.ts +15 -0
- package/_types/src/types/BridgeFee.d.ts.map +1 -0
- package/_types/src/types/Fiat.d.ts +7 -0
- package/_types/src/types/Fiat.d.ts.map +1 -0
- package/_types/src/types/RelayTransaction.d.ts +4 -0
- package/_types/src/types/RelayTransaction.d.ts.map +1 -0
- package/_types/src/types/index.d.ts +21 -0
- package/_types/src/types/index.d.ts.map +1 -0
- package/_types/src/utils/address.d.ts +8 -0
- package/_types/src/utils/address.d.ts.map +1 -0
- package/_types/src/utils/bitcoin.d.ts +5 -0
- package/_types/src/utils/bitcoin.d.ts.map +1 -0
- package/_types/src/utils/browser.d.ts +2 -0
- package/_types/src/utils/browser.d.ts.map +1 -0
- package/_types/src/utils/ens.d.ts +2 -0
- package/_types/src/utils/ens.d.ts.map +1 -0
- package/_types/src/utils/errors.d.ts +3 -0
- package/_types/src/utils/errors.d.ts.map +1 -0
- package/_types/src/utils/fetcher.d.ts +4 -0
- package/_types/src/utils/fetcher.d.ts.map +1 -0
- package/_types/src/utils/getChainBlockExplorerUrl.d.ts +4 -0
- package/_types/src/utils/getChainBlockExplorerUrl.d.ts.map +1 -0
- package/_types/src/utils/getTxBlockExplorerUrl.d.ts +3 -0
- package/_types/src/utils/getTxBlockExplorerUrl.d.ts.map +1 -0
- package/_types/src/utils/hashing.d.ts +2 -0
- package/_types/src/utils/hashing.d.ts.map +1 -0
- package/_types/src/utils/localStorage.d.ts +30 -0
- package/_types/src/utils/localStorage.d.ts.map +1 -0
- package/_types/src/utils/moonPay.d.ts +11 -0
- package/_types/src/utils/moonPay.d.ts.map +1 -0
- package/_types/src/utils/nativeMaxAmount.d.ts +34 -0
- package/_types/src/utils/nativeMaxAmount.d.ts.map +1 -0
- package/_types/src/utils/numbers.d.ts +21 -0
- package/_types/src/utils/numbers.d.ts.map +1 -0
- package/_types/src/utils/qrcode.d.ts +3 -0
- package/_types/src/utils/qrcode.d.ts.map +1 -0
- package/_types/src/utils/quote.d.ts +132 -0
- package/_types/src/utils/quote.d.ts.map +1 -0
- package/_types/src/utils/relayTransaction.d.ts +21 -0
- package/_types/src/utils/relayTransaction.d.ts.map +1 -0
- package/_types/src/utils/slippage.d.ts +9 -0
- package/_types/src/utils/slippage.d.ts.map +1 -0
- package/_types/src/utils/solana.d.ts +10 -0
- package/_types/src/utils/solana.d.ts.map +1 -0
- package/_types/src/utils/steps.d.ts +43 -0
- package/_types/src/utils/steps.d.ts.map +1 -0
- package/_types/src/utils/sui.d.ts +8 -0
- package/_types/src/utils/sui.d.ts.map +1 -0
- package/_types/src/utils/theme.d.ts +5 -0
- package/_types/src/utils/theme.d.ts.map +1 -0
- package/_types/src/utils/time.d.ts +4 -0
- package/_types/src/utils/time.d.ts.map +1 -0
- package/_types/src/utils/titleCase.d.ts +8 -0
- package/_types/src/utils/titleCase.d.ts.map +1 -0
- package/_types/src/utils/tokenSelector.d.ts +23 -0
- package/_types/src/utils/tokenSelector.d.ts.map +1 -0
- package/_types/src/utils/tokens.d.ts +21 -0
- package/_types/src/utils/tokens.d.ts.map +1 -0
- package/_types/src/utils/tron.d.ts +6 -0
- package/_types/src/utils/tron.d.ts.map +1 -0
- package/_types/src/utils/truncate.d.ts +13 -0
- package/_types/src/utils/truncate.d.ts.map +1 -0
- package/_types/src/version.d.ts +2 -0
- package/_types/src/version.d.ts.map +1 -0
- package/_types/tsconfig.build.tsbuildinfo +1 -0
- package/dist/panda.buildinfo.json +575 -0
- package/dist/styles.css +3408 -0
- package/package.json +109 -0
- package/readme.md +36 -0
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import {} from 'viem';
|
|
3
|
+
import { useEffect } from 'react';
|
|
4
|
+
import { DepositAddressModalRenderer, TransactionProgressStep } from './DepositAddressModalRenderer.js';
|
|
5
|
+
import { Modal } from '../Modal.js';
|
|
6
|
+
import { Flex, Text } from '../../primitives/index.js';
|
|
7
|
+
import { ErrorStep } from './steps/ErrorStep.js';
|
|
8
|
+
import { EventNames } from '../../../constants/events.js';
|
|
9
|
+
import {} from '../../../types/index.js';
|
|
10
|
+
import { SwapSuccessStep } from './steps/SwapSuccessStep.js';
|
|
11
|
+
import { formatBN } from '../../../utils/numbers.js';
|
|
12
|
+
import { extractQuoteId } from '../../../utils/quote.js';
|
|
13
|
+
import { WaitingForDepositStep } from './steps/WaitingForDepositStep.js';
|
|
14
|
+
import { DepositAddressValidatingStep } from './steps/DepositAddressValidatingStep.js';
|
|
15
|
+
export const DepositAddressModal = (depositAddressModalProps) => {
|
|
16
|
+
const { open, address, fromChain, fromToken, toToken, recipient, debouncedInputAmountValue, debouncedOutputAmountValue, onOpenChange, invalidateBalanceQueries, onAnalyticEvent, onSuccess } = depositAddressModalProps;
|
|
17
|
+
useEffect(() => {
|
|
18
|
+
onOpenChange(open);
|
|
19
|
+
}, [open]);
|
|
20
|
+
return (_jsx(DepositAddressModalRenderer, { open: open, fromChain: fromChain, fromToken: fromToken, toToken: toToken, debouncedInputAmountValue: debouncedInputAmountValue, debouncedOutputAmountValue: debouncedOutputAmountValue, address: address, recipient: recipient, invalidateBalanceQueries: invalidateBalanceQueries, onAnalyticEvent: onAnalyticEvent, onSuccess: (quote, executionStatus) => {
|
|
21
|
+
const details = quote?.details;
|
|
22
|
+
const fees = quote?.fees;
|
|
23
|
+
const extraData = {
|
|
24
|
+
amount_in: parseFloat(`${details?.currencyIn?.amountFormatted}`),
|
|
25
|
+
amount_out: parseFloat(`${details?.currencyOut?.amountFormatted}`)
|
|
26
|
+
};
|
|
27
|
+
if (fees?.gas?.amountFormatted) {
|
|
28
|
+
extraData.gas_fee = parseFloat(fees.gas.amountFormatted);
|
|
29
|
+
}
|
|
30
|
+
if (fees?.relayer?.amountFormatted) {
|
|
31
|
+
extraData.relayer_fee = parseFloat(fees.relayer.amountFormatted);
|
|
32
|
+
}
|
|
33
|
+
const quoteId = quote
|
|
34
|
+
? extractQuoteId(quote?.steps)
|
|
35
|
+
: undefined;
|
|
36
|
+
onAnalyticEvent?.(EventNames.SWAP_SUCCESS, {
|
|
37
|
+
...extraData,
|
|
38
|
+
chain_id_in: fromToken?.chainId,
|
|
39
|
+
currency_in: fromToken?.symbol,
|
|
40
|
+
chain_id_out: toToken?.chainId,
|
|
41
|
+
currency_out: toToken?.symbol,
|
|
42
|
+
quote_id: quoteId,
|
|
43
|
+
txHashes: [
|
|
44
|
+
...(executionStatus?.inTxHashes ?? []),
|
|
45
|
+
...(executionStatus?.txHashes ?? [])
|
|
46
|
+
],
|
|
47
|
+
steps: quote?.steps
|
|
48
|
+
});
|
|
49
|
+
onSuccess?.({
|
|
50
|
+
steps: quote?.steps,
|
|
51
|
+
fees: fees,
|
|
52
|
+
details: details
|
|
53
|
+
});
|
|
54
|
+
}, children: (rendererProps) => {
|
|
55
|
+
return (_jsx(InnerDepositAddressModal, { address: address, onAnalyticEvent: onAnalyticEvent, ...depositAddressModalProps, ...rendererProps }));
|
|
56
|
+
} }));
|
|
57
|
+
};
|
|
58
|
+
const InnerDepositAddressModal = ({ open, onOpenChange, fromToken, toToken, quote, isFetchingQuote, quoteError, address, swapError, progressStep, allTxHashes, transaction, timeEstimate, fillTime, seconds, fromChain, toChain, recipient, depositAddress, executionStatus, isLoadingTransaction, requestId }) => {
|
|
59
|
+
const details = quote?.details;
|
|
60
|
+
const fromAmountFormatted = details?.currencyIn?.amount
|
|
61
|
+
? formatBN(details?.currencyIn?.amount, 6, fromToken?.decimals, false)
|
|
62
|
+
: '';
|
|
63
|
+
const toAmountFormatted = details?.currencyOut?.amount
|
|
64
|
+
? formatBN(details?.currencyOut.amount, 6, toToken?.decimals, false)
|
|
65
|
+
: '';
|
|
66
|
+
const isWaitingForDeposit = progressStep === TransactionProgressStep.WaitingForDeposit;
|
|
67
|
+
return (_jsx(Modal, { trigger: null, open: open, onOpenChange: onOpenChange, css: {
|
|
68
|
+
overflow: 'hidden',
|
|
69
|
+
p: '4',
|
|
70
|
+
maxWidth: '412px !important'
|
|
71
|
+
}, showCloseButton: true, onPointerDownOutside: (e) => {
|
|
72
|
+
const dynamicModalElements = Array.from(document.querySelectorAll('#dynamic-send-transaction'));
|
|
73
|
+
const clickedInsideDynamicModal = dynamicModalElements.some((el) => e.target ? el.contains(e.target) : false);
|
|
74
|
+
if (clickedInsideDynamicModal && dynamicModalElements.length > 0) {
|
|
75
|
+
e.preventDefault();
|
|
76
|
+
}
|
|
77
|
+
}, children: _jsxs(Flex, { direction: "column", css: {
|
|
78
|
+
width: '100%',
|
|
79
|
+
height: '100%',
|
|
80
|
+
gap: isWaitingForDeposit ? '3' : '4'
|
|
81
|
+
}, children: [_jsx(Text, { style: "h6", css: { mb: 8 }, children: isWaitingForDeposit ? 'Manual Transfer' : 'Trade Details' }), progressStep === TransactionProgressStep.WaitingForDeposit ? (_jsx(WaitingForDepositStep, { fromToken: fromToken, fromChain: fromChain, fromAmountFormatted: fromAmountFormatted, isFetchingQuote: isFetchingQuote, depositAddress: depositAddress })) : null, progressStep === TransactionProgressStep.Validating ? (_jsx(DepositAddressValidatingStep, { status: executionStatus?.status, txHashes: executionStatus?.txHashes ?? [] })) : null, progressStep === TransactionProgressStep.Success ? (_jsx(SwapSuccessStep, { fromToken: fromToken, toToken: toToken, fromAmountFormatted: fromAmountFormatted, toAmountFormatted: toAmountFormatted, allTxHashes: allTxHashes, transaction: transaction, fillTime: fillTime, seconds: seconds ?? 0, onOpenChange: onOpenChange, timeEstimate: timeEstimate?.formattedTime, isCanonical: false, details: details, isLoadingTransaction: isLoadingTransaction, requestId: requestId })) : null, progressStep === TransactionProgressStep.Error ? (_jsx(ErrorStep, { error: swapError || quoteError, allTxHashes: allTxHashes, address: address, onOpenChange: onOpenChange, transaction: transaction, fromChain: fromChain, toChain: toChain })) : null] }) }));
|
|
82
|
+
};
|
|
83
|
+
//# sourceMappingURL=DepositAddressModal.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DepositAddressModal.js","sourceRoot":"","sources":["../../../../../src/components/common/TransactionModal/DepositAddressModal.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,245 @@
|
|
|
1
|
+
import { Fragment as _Fragment, jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { useMemo, useState, useEffect, useContext } from 'react';
|
|
3
|
+
import { parseUnits } from 'viem';
|
|
4
|
+
import {} from '@relayprotocol/relay-sdk';
|
|
5
|
+
import { calculateFillTime, extractDepositRequestId } from '../../../utils/relayTransaction.js';
|
|
6
|
+
import { useQuote, useRequests, useExecutionStatus } from '@relayprotocol/relay-kit-hooks';
|
|
7
|
+
import { useRelayClient } from '../../../hooks/index.js';
|
|
8
|
+
import { EventNames } from '../../../constants/events.js';
|
|
9
|
+
import { ProviderOptionsContext } from '../../../providers/RelayKitProvider.js';
|
|
10
|
+
import { useAccount } from 'wagmi';
|
|
11
|
+
import { calculatePriceTimeEstimate, extractDepositAddress, extractQuoteId } from '../../../utils/quote.js';
|
|
12
|
+
import { getDeadAddress } from '@relayprotocol/relay-sdk';
|
|
13
|
+
import { useQueryClient } from '@tanstack/react-query';
|
|
14
|
+
import { bitcoin } from '../../../utils/bitcoin.js';
|
|
15
|
+
import { errorToJSON } from '../../../utils/errors.js';
|
|
16
|
+
import { sha256 } from '../../../utils/hashing.js';
|
|
17
|
+
import { get15MinuteInterval } from '../../../utils/time.js';
|
|
18
|
+
export var TransactionProgressStep;
|
|
19
|
+
(function (TransactionProgressStep) {
|
|
20
|
+
TransactionProgressStep[TransactionProgressStep["WaitingForDeposit"] = 0] = "WaitingForDeposit";
|
|
21
|
+
TransactionProgressStep[TransactionProgressStep["Validating"] = 1] = "Validating";
|
|
22
|
+
TransactionProgressStep[TransactionProgressStep["Success"] = 2] = "Success";
|
|
23
|
+
TransactionProgressStep[TransactionProgressStep["Error"] = 3] = "Error";
|
|
24
|
+
})(TransactionProgressStep || (TransactionProgressStep = {}));
|
|
25
|
+
export const DepositAddressModalRenderer = ({ open, address, fromChain, fromToken, toToken, debouncedInputAmountValue, debouncedOutputAmountValue, recipient, invalidateBalanceQueries, children, onSuccess, onAnalyticEvent, onSwapError }) => {
|
|
26
|
+
const queryClient = useQueryClient();
|
|
27
|
+
const [progressStep, setProgressStep] = useState(TransactionProgressStep.WaitingForDeposit);
|
|
28
|
+
const [swapError, setSwapError] = useState(null);
|
|
29
|
+
const relayClient = useRelayClient();
|
|
30
|
+
const providerOptionsContext = useContext(ProviderOptionsContext);
|
|
31
|
+
const { connector } = useAccount();
|
|
32
|
+
const deadAddress = getDeadAddress(fromChain?.vmType, fromChain?.id);
|
|
33
|
+
const quoteParameters = fromToken && toToken
|
|
34
|
+
? {
|
|
35
|
+
user: deadAddress,
|
|
36
|
+
originChainId: fromToken.chainId,
|
|
37
|
+
destinationChainId: toToken.chainId,
|
|
38
|
+
originCurrency: fromToken.address,
|
|
39
|
+
destinationCurrency: toToken.address,
|
|
40
|
+
recipient: recipient,
|
|
41
|
+
tradeType: 'EXACT_INPUT',
|
|
42
|
+
appFees: providerOptionsContext.appFees,
|
|
43
|
+
amount: parseUnits(debouncedInputAmountValue, fromToken.decimals).toString(),
|
|
44
|
+
referrer: relayClient?.source ?? undefined,
|
|
45
|
+
useDepositAddress: true
|
|
46
|
+
}
|
|
47
|
+
: undefined;
|
|
48
|
+
const { data: quoteData, isLoading: isFetchingQuote, isRefetching, error: quoteError, queryKey } = useQuote(relayClient ? relayClient : undefined, undefined, quoteParameters, (options, config) => {
|
|
49
|
+
const interval = get15MinuteInterval();
|
|
50
|
+
const quoteRequestId = sha256({ ...options, interval });
|
|
51
|
+
onAnalyticEvent?.(EventNames.QUOTE_REQUESTED, {
|
|
52
|
+
parameters: options,
|
|
53
|
+
httpConfig: config,
|
|
54
|
+
quote_request_id: quoteRequestId,
|
|
55
|
+
chain_id_in: options?.originChainId,
|
|
56
|
+
chain_id_out: options?.destinationChainId
|
|
57
|
+
});
|
|
58
|
+
}, ({ steps, details }, options) => {
|
|
59
|
+
const interval = get15MinuteInterval();
|
|
60
|
+
const quoteRequestId = sha256({ ...options, interval });
|
|
61
|
+
onAnalyticEvent?.(EventNames.QUOTE_RECEIVED, {
|
|
62
|
+
parameters: options,
|
|
63
|
+
wallet_connector: connector?.name,
|
|
64
|
+
quote_id: steps ? extractQuoteId(steps) : undefined,
|
|
65
|
+
quote_request_id: quoteRequestId,
|
|
66
|
+
amount_in: details?.currencyIn?.amountFormatted,
|
|
67
|
+
amount_in_raw: details?.currencyIn?.amount,
|
|
68
|
+
currency_in: details?.currencyIn?.currency?.symbol,
|
|
69
|
+
chain_id_in: details?.currencyIn?.currency?.chainId,
|
|
70
|
+
amount_out: details?.currencyOut?.amountFormatted,
|
|
71
|
+
amount_out_raw: details?.currencyOut?.amount,
|
|
72
|
+
currency_out: details?.currencyOut?.currency?.symbol,
|
|
73
|
+
chain_id_out: details?.currencyOut?.currency?.chainId,
|
|
74
|
+
slippage_tolerance_destination_percentage: details?.slippageTolerance?.destination?.percent,
|
|
75
|
+
slippage_tolerance_origin_percentage: details?.slippageTolerance?.origin?.percent,
|
|
76
|
+
steps
|
|
77
|
+
});
|
|
78
|
+
}, {
|
|
79
|
+
enabled: Boolean(open &&
|
|
80
|
+
progressStep === TransactionProgressStep.WaitingForDeposit &&
|
|
81
|
+
relayClient &&
|
|
82
|
+
debouncedInputAmountValue &&
|
|
83
|
+
debouncedInputAmountValue.length > 0 &&
|
|
84
|
+
Number(debouncedInputAmountValue) !== 0 &&
|
|
85
|
+
fromToken !== undefined &&
|
|
86
|
+
toToken !== undefined),
|
|
87
|
+
refetchOnWindowFocus: false,
|
|
88
|
+
refetchOnReconnect: false,
|
|
89
|
+
refetchInterval: false,
|
|
90
|
+
refetchOnMount: false,
|
|
91
|
+
retryOnMount: false,
|
|
92
|
+
staleTime: Infinity
|
|
93
|
+
}, (e) => {
|
|
94
|
+
const errorMessage = errorToJSON(e?.response?.data?.message ? new Error(e?.response?.data?.message) : e);
|
|
95
|
+
const interval = get15MinuteInterval();
|
|
96
|
+
const quoteRequestId = sha256({ ...quoteParameters, interval });
|
|
97
|
+
onAnalyticEvent?.(EventNames.QUOTE_ERROR, {
|
|
98
|
+
wallet_connector: connector?.name,
|
|
99
|
+
error_message: errorMessage,
|
|
100
|
+
parameters: quoteParameters,
|
|
101
|
+
quote_request_id: quoteRequestId
|
|
102
|
+
});
|
|
103
|
+
});
|
|
104
|
+
const quote = isFetchingQuote || isRefetching ? undefined : quoteData;
|
|
105
|
+
const requestId = useMemo(() => extractDepositRequestId(quote?.steps), [quote]);
|
|
106
|
+
const depositAddress = useMemo(() => extractDepositAddress(quote?.steps), [quote]);
|
|
107
|
+
useEffect(() => {
|
|
108
|
+
if (!open) {
|
|
109
|
+
if (quote) {
|
|
110
|
+
onAnalyticEvent?.(EventNames.DEPOSIT_ADDRESS_MODAL_CLOSED);
|
|
111
|
+
}
|
|
112
|
+
setSwapError(null);
|
|
113
|
+
queryClient.invalidateQueries({ queryKey });
|
|
114
|
+
}
|
|
115
|
+
else {
|
|
116
|
+
setProgressStep(TransactionProgressStep.WaitingForDeposit);
|
|
117
|
+
onAnalyticEvent?.(EventNames.DEPOSIT_ADDRESS_MODAL_OPEN);
|
|
118
|
+
}
|
|
119
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
120
|
+
}, [open]);
|
|
121
|
+
const { data: executionStatus } = useExecutionStatus(relayClient ? relayClient : undefined, {
|
|
122
|
+
requestId: requestId ?? undefined,
|
|
123
|
+
referrer: relayClient?.source
|
|
124
|
+
}, undefined, undefined, {
|
|
125
|
+
enabled: requestId !== null && open,
|
|
126
|
+
refetchInterval(query) {
|
|
127
|
+
const observableStates = ['waiting', 'pending', 'delayed'];
|
|
128
|
+
if (!query.state.data?.status ||
|
|
129
|
+
(requestId && observableStates.includes(query.state.data?.status))) {
|
|
130
|
+
return 1000;
|
|
131
|
+
}
|
|
132
|
+
return 0;
|
|
133
|
+
}
|
|
134
|
+
});
|
|
135
|
+
useEffect(() => {
|
|
136
|
+
if (executionStatus?.status === 'failure' ||
|
|
137
|
+
executionStatus?.status === 'refund' ||
|
|
138
|
+
quoteError) {
|
|
139
|
+
const swapError = new Error(executionStatus?.details ??
|
|
140
|
+
'Oops! Something went wrong while processing your transaction.');
|
|
141
|
+
if (progressStep !== TransactionProgressStep.Error) {
|
|
142
|
+
onSwapError?.(swapError.message, quote);
|
|
143
|
+
}
|
|
144
|
+
setProgressStep(TransactionProgressStep.Error);
|
|
145
|
+
onAnalyticEvent?.(EventNames.DEPOSIT_ADDRESS_SWAP_ERROR, {
|
|
146
|
+
error_message: errorToJSON(executionStatus?.details ?? quoteError),
|
|
147
|
+
wallet_connector: connector?.name,
|
|
148
|
+
quote_id: requestId,
|
|
149
|
+
amount_in: parseFloat(`${debouncedInputAmountValue}`),
|
|
150
|
+
currency_in: fromToken?.symbol,
|
|
151
|
+
chain_id_in: fromToken?.chainId,
|
|
152
|
+
amount_out: parseFloat(`${debouncedOutputAmountValue}`),
|
|
153
|
+
currency_out: toToken?.symbol,
|
|
154
|
+
chain_id_out: toToken?.chainId,
|
|
155
|
+
txHashes: executionStatus?.txHashes ?? []
|
|
156
|
+
});
|
|
157
|
+
setSwapError(swapError);
|
|
158
|
+
invalidateBalanceQueries();
|
|
159
|
+
}
|
|
160
|
+
else if (executionStatus?.status === 'success') {
|
|
161
|
+
if (progressStep !== TransactionProgressStep.Success) {
|
|
162
|
+
onSuccess?.(quote, executionStatus);
|
|
163
|
+
}
|
|
164
|
+
setProgressStep(TransactionProgressStep.Success);
|
|
165
|
+
invalidateBalanceQueries();
|
|
166
|
+
}
|
|
167
|
+
else if (executionStatus?.status === 'pending') {
|
|
168
|
+
const timeEstimateMs = ((quote?.details?.timeEstimate ?? 0) +
|
|
169
|
+
(fromChain && fromChain.id === bitcoin.id ? 600 : 0)) *
|
|
170
|
+
1000;
|
|
171
|
+
const isDelayedTx = timeEstimateMs >
|
|
172
|
+
(relayClient?.maxPollingAttemptsBeforeTimeout ?? 30) *
|
|
173
|
+
(relayClient?.pollingInterval ?? 5000);
|
|
174
|
+
if (isDelayedTx) {
|
|
175
|
+
setProgressStep(TransactionProgressStep.Success);
|
|
176
|
+
}
|
|
177
|
+
else {
|
|
178
|
+
setProgressStep(TransactionProgressStep.Validating);
|
|
179
|
+
}
|
|
180
|
+
}
|
|
181
|
+
}, [executionStatus?.status, quoteError]);
|
|
182
|
+
const allTxHashes = useMemo(() => {
|
|
183
|
+
const isRefund = executionStatus?.status === 'refund';
|
|
184
|
+
const _allTxHashes = [];
|
|
185
|
+
executionStatus?.txHashes?.forEach((txHash) => {
|
|
186
|
+
_allTxHashes.push({
|
|
187
|
+
txHash,
|
|
188
|
+
chainId: isRefund
|
|
189
|
+
? fromToken?.chainId
|
|
190
|
+
: toToken?.chainId
|
|
191
|
+
});
|
|
192
|
+
});
|
|
193
|
+
executionStatus?.inTxHashes?.forEach((txHash) => {
|
|
194
|
+
_allTxHashes.push({
|
|
195
|
+
txHash,
|
|
196
|
+
chainId: fromToken?.chainId
|
|
197
|
+
});
|
|
198
|
+
});
|
|
199
|
+
return _allTxHashes;
|
|
200
|
+
}, [executionStatus?.txHashes, executionStatus?.inTxHashes]);
|
|
201
|
+
const { data: transactions, isLoading: isLoadingTransaction } = useRequests((progressStep === TransactionProgressStep.Success ||
|
|
202
|
+
progressStep === TransactionProgressStep.Error) &&
|
|
203
|
+
allTxHashes[0]
|
|
204
|
+
? {
|
|
205
|
+
user: address,
|
|
206
|
+
hash: allTxHashes[0]?.txHash
|
|
207
|
+
}
|
|
208
|
+
: undefined, relayClient?.baseApiUrl, {
|
|
209
|
+
enabled: (progressStep === TransactionProgressStep.Success ||
|
|
210
|
+
progressStep === TransactionProgressStep.Error) &&
|
|
211
|
+
allTxHashes[0]
|
|
212
|
+
? true
|
|
213
|
+
: false,
|
|
214
|
+
refetchOnWindowFocus: false,
|
|
215
|
+
refetchOnReconnect: false,
|
|
216
|
+
refetchInterval: false,
|
|
217
|
+
retryOnMount: false
|
|
218
|
+
});
|
|
219
|
+
const transaction = transactions[0];
|
|
220
|
+
const { fillTime, seconds } = calculateFillTime(transaction);
|
|
221
|
+
const timeEstimate = calculatePriceTimeEstimate(quote?.details);
|
|
222
|
+
const toChain = toToken?.chainId
|
|
223
|
+
? relayClient?.chains.find((chain) => chain.id === toToken?.chainId)
|
|
224
|
+
: null;
|
|
225
|
+
return (_jsx(_Fragment, { children: children({
|
|
226
|
+
progressStep,
|
|
227
|
+
setProgressStep,
|
|
228
|
+
quote,
|
|
229
|
+
isFetchingQuote: isFetchingQuote || isRefetching,
|
|
230
|
+
quoteError,
|
|
231
|
+
swapError,
|
|
232
|
+
setSwapError,
|
|
233
|
+
allTxHashes,
|
|
234
|
+
transaction,
|
|
235
|
+
fillTime,
|
|
236
|
+
seconds,
|
|
237
|
+
requestId,
|
|
238
|
+
depositAddress,
|
|
239
|
+
executionStatus,
|
|
240
|
+
isLoadingTransaction,
|
|
241
|
+
toChain,
|
|
242
|
+
timeEstimate
|
|
243
|
+
}) }));
|
|
244
|
+
};
|
|
245
|
+
//# sourceMappingURL=DepositAddressModalRenderer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DepositAddressModalRenderer.js","sourceRoot":"","sources":["../../../../../src/components/common/TransactionModal/DepositAddressModalRenderer.tsx"],"names":[],"mappings":";AAAA,OAAO,EAEL,OAAO,EACP,QAAQ,EACR,SAAS,EAIT,UAAU,EACX,MAAM,OAAO,CAAA;AACd,OAAO,EAAE,UAAU,EAAgB,MAAM,MAAM,CAAA;AAC/C,OAAO,EAIN,MAAM,0BAA0B,CAAA;AACjC,OAAO,EACL,iBAAiB,EACjB,uBAAuB,EACxB,MAAM,oCAAoC,CAAA;AAE3C,OAAO,EACL,QAAQ,EACR,WAAW,EACX,kBAAkB,EACnB,MAAM,gCAAgC,CAAA;AACvC,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAA;AACxD,OAAO,EAAE,UAAU,EAAE,MAAM,8BAA8B,CAAA;AACzD,OAAO,EAAE,sBAAsB,EAAE,MAAM,wCAAwC,CAAA;AAC/E,OAAO,EAAE,UAAU,EAAE,MAAM,OAAO,CAAA;AAClC,OAAO,EACL,0BAA0B,EAC1B,qBAAqB,EACrB,cAAc,EACf,MAAM,yBAAyB,CAAA;AAChC,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAA;AACzD,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAA;AACtD,OAAO,EAAE,OAAO,EAAE,MAAM,2BAA2B,CAAA;AACnD,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAA;AACtD,OAAO,EAAE,MAAM,EAAE,MAAM,2BAA2B,CAAA;AAClD,OAAO,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAA;AAE5D,MAAM,CAAN,IAAY,uBAKX;AALD,WAAY,uBAAuB;IACjC,+FAAiB,CAAA;IACjB,iFAAU,CAAA;IACV,2EAAO,CAAA;IACP,uEAAK,CAAA;AACP,CAAC,EALW,uBAAuB,KAAvB,uBAAuB,QAKlC;AA6CD,MAAM,CAAC,MAAM,2BAA2B,GAAc,CAAC,EACrD,IAAI,EACJ,OAAO,EACP,SAAS,EACT,SAAS,EACT,OAAO,EACP,yBAAyB,EACzB,0BAA0B,EAC1B,SAAS,EACT,wBAAwB,EACxB,QAAQ,EACR,SAAS,EACT,eAAe,EACf,WAAW,EACZ,EAAE,EAAE;IACH,MAAM,WAAW,GAAG,cAAc,EAAE,CAAA;IACpC,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,QAAQ,CAC9C,uBAAuB,CAAC,iBAAiB,CAC1C,CAAA;IACD,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,QAAQ,CAAe,IAAI,CAAC,CAAA;IAE9D,MAAM,WAAW,GAAG,cAAc,EAAE,CAAA;IACpC,MAAM,sBAAsB,GAAG,UAAU,CAAC,sBAAsB,CAAC,CAAA;IACjE,MAAM,EAAE,SAAS,EAAE,GAAG,UAAU,EAAE,CAAA;IAClC,MAAM,WAAW,GAAG,cAAc,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,EAAE,CAAC,CAAA;IACpE,MAAM,eAAe,GACnB,SAAS,IAAI,OAAO;QAClB,CAAC,CAAC;YACE,IAAI,EAAE,WAAW;YACjB,aAAa,EAAE,SAAS,CAAC,OAAO;YAChC,kBAAkB,EAAE,OAAO,CAAC,OAAO;YACnC,cAAc,EAAE,SAAS,CAAC,OAAO;YACjC,mBAAmB,EAAE,OAAO,CAAC,OAAO;YACpC,SAAS,EAAE,SAAmB;YAC9B,SAAS,EAAE,aAAa;YACxB,OAAO,EAAE,sBAAsB,CAAC,OAAO;YACvC,MAAM,EAAE,UAAU,CAChB,yBAAyB,EACzB,SAAS,CAAC,QAAQ,CACnB,CAAC,QAAQ,EAAE;YACZ,QAAQ,EAAE,WAAW,EAAE,MAAM,IAAI,SAAS;YAC1C,iBAAiB,EAAE,IAAI;SACxB;QACH,CAAC,CAAC,SAAS,CAAA;IACf,MAAM,EACJ,IAAI,EAAE,SAAS,EACf,SAAS,EAAE,eAAe,EAC1B,YAAY,EACZ,KAAK,EAAE,UAAU,EACjB,QAAQ,EACT,GAAG,QAAQ,CACV,WAAW,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,EACrC,SAAS,EACT,eAAe,EACf,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QAClB,MAAM,QAAQ,GAAG,mBAAmB,EAAE,CAAA;QACtC,MAAM,cAAc,GAAG,MAAM,CAAC,EAAE,GAAG,OAAO,EAAE,QAAQ,EAAE,CAAC,CAAA;QACvD,eAAe,EAAE,CAAC,UAAU,CAAC,eAAe,EAAE;YAC5C,UAAU,EAAE,OAAO;YACnB,UAAU,EAAE,MAAM;YAClB,gBAAgB,EAAE,cAAc;YAChC,WAAW,EAAE,OAAO,EAAE,aAAa;YACnC,YAAY,EAAE,OAAO,EAAE,kBAAkB;SAC1C,CAAC,CAAA;IACJ,CAAC,EACD,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,OAAO,EAAE,EAAE;QAC9B,MAAM,QAAQ,GAAG,mBAAmB,EAAE,CAAA;QACtC,MAAM,cAAc,GAAG,MAAM,CAAC,EAAE,GAAG,OAAO,EAAE,QAAQ,EAAE,CAAC,CAAA;QACvD,eAAe,EAAE,CAAC,UAAU,CAAC,cAAc,EAAE;YAC3C,UAAU,EAAE,OAAO;YACnB,gBAAgB,EAAE,SAAS,EAAE,IAAI;YACjC,QAAQ,EAAE,KAAK,CAAC,CAAC,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS;YACnD,gBAAgB,EAAE,cAAc;YAChC,SAAS,EAAE,OAAO,EAAE,UAAU,EAAE,eAAe;YAC/C,aAAa,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM;YAC1C,WAAW,EAAE,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM;YAClD,WAAW,EAAE,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO;YACnD,UAAU,EAAE,OAAO,EAAE,WAAW,EAAE,eAAe;YACjD,cAAc,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM;YAC5C,YAAY,EAAE,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM;YACpD,YAAY,EAAE,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,OAAO;YACrD,yCAAyC,EACvC,OAAO,EAAE,iBAAiB,EAAE,WAAW,EAAE,OAAO;YAClD,oCAAoC,EAClC,OAAO,EAAE,iBAAiB,EAAE,MAAM,EAAE,OAAO;YAC7C,KAAK;SACN,CAAC,CAAA;IACJ,CAAC,EACD;QACE,OAAO,EAAE,OAAO,CACd,IAAI;YACF,YAAY,KAAK,uBAAuB,CAAC,iBAAiB;YAC1D,WAAW;YACX,yBAAyB;YACzB,yBAAyB,CAAC,MAAM,GAAG,CAAC;YACpC,MAAM,CAAC,yBAAyB,CAAC,KAAK,CAAC;YACvC,SAAS,KAAK,SAAS;YACvB,OAAO,KAAK,SAAS,CACxB;QACD,oBAAoB,EAAE,KAAK;QAC3B,kBAAkB,EAAE,KAAK;QACzB,eAAe,EAAE,KAAK;QACtB,cAAc,EAAE,KAAK;QACrB,YAAY,EAAE,KAAK;QACnB,SAAS,EAAE,QAAQ;KACpB,EACD,CAAC,CAAM,EAAE,EAAE;QACT,MAAM,YAAY,GAAG,WAAW,CAC9B,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CACvE,CAAA;QACD,MAAM,QAAQ,GAAG,mBAAmB,EAAE,CAAA;QACtC,MAAM,cAAc,GAAG,MAAM,CAAC,EAAE,GAAG,eAAe,EAAE,QAAQ,EAAE,CAAC,CAAA;QAC/D,eAAe,EAAE,CAAC,UAAU,CAAC,WAAW,EAAE;YACxC,gBAAgB,EAAE,SAAS,EAAE,IAAI;YACjC,aAAa,EAAE,YAAY;YAC3B,UAAU,EAAE,eAAe;YAC3B,gBAAgB,EAAE,cAAc;SACjC,CAAC,CAAA;IACJ,CAAC,CACF,CAAA;IAED,MAAM,KAAK,GAAG,eAAe,IAAI,YAAY,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAA;IAErE,MAAM,SAAS,GAAG,OAAO,CACvB,GAAG,EAAE,CAAC,uBAAuB,CAAC,KAAK,EAAE,KAAyB,CAAC,EAC/D,CAAC,KAAK,CAAC,CACR,CAAA;IAED,MAAM,cAAc,GAAG,OAAO,CAC5B,GAAG,EAAE,CAAC,qBAAqB,CAAC,KAAK,EAAE,KAAyB,CAAC,EAC7D,CAAC,KAAK,CAAC,CACR,CAAA;IAED,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,IAAI,KAAK,EAAE,CAAC;gBACV,eAAe,EAAE,CAAC,UAAU,CAAC,4BAA4B,CAAC,CAAA;YAC5D,CAAC;YACD,YAAY,CAAC,IAAI,CAAC,CAAA;YAClB,WAAW,CAAC,iBAAiB,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAA;QAC7C,CAAC;aAAM,CAAC;YACN,eAAe,CAAC,uBAAuB,CAAC,iBAAiB,CAAC,CAAA;YAC1D,eAAe,EAAE,CAAC,UAAU,CAAC,0BAA0B,CAAC,CAAA;QAC1D,CAAC;QACD,uDAAuD;IACzD,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAA;IAEV,MAAM,EAAE,IAAI,EAAE,eAAe,EAAE,GAAG,kBAAkB,CAClD,WAAW,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,EACrC;QACE,SAAS,EAAE,SAAS,IAAI,SAAS;QACjC,QAAQ,EAAE,WAAW,EAAE,MAAM;KAC9B,EACD,SAAS,EACT,SAAS,EACT;QACE,OAAO,EAAE,SAAS,KAAK,IAAI,IAAI,IAAI;QACnC,eAAe,CAAC,KAAK;YACnB,MAAM,gBAAgB,GAAG,CAAC,SAAS,EAAE,SAAS,EAAE,SAAS,CAAC,CAAA;YAE1D,IACE,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,MAAM;gBACzB,CAAC,SAAS,IAAI,gBAAgB,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,EAClE,CAAC;gBACD,OAAO,IAAI,CAAA;YACb,CAAC;YACD,OAAO,CAAC,CAAA;QACV,CAAC;KACF,CACF,CAAA;IAED,SAAS,CAAC,GAAG,EAAE;QACb,IACE,eAAe,EAAE,MAAM,KAAK,SAAS;YACrC,eAAe,EAAE,MAAM,KAAK,QAAQ;YACpC,UAAU,EACV,CAAC;YACD,MAAM,SAAS,GAAG,IAAI,KAAK,CACzB,eAAe,EAAE,OAAO;gBACtB,+DAA+D,CAClE,CAAA;YACD,IAAI,YAAY,KAAK,uBAAuB,CAAC,KAAK,EAAE,CAAC;gBACnD,WAAW,EAAE,CAAC,SAAS,CAAC,OAAO,EAAE,KAAgB,CAAC,CAAA;YACpD,CAAC;YACD,eAAe,CAAC,uBAAuB,CAAC,KAAK,CAAC,CAAA;YAC9C,eAAe,EAAE,CAAC,UAAU,CAAC,0BAA0B,EAAE;gBACvD,aAAa,EAAE,WAAW,CAAC,eAAe,EAAE,OAAO,IAAI,UAAU,CAAC;gBAClE,gBAAgB,EAAE,SAAS,EAAE,IAAI;gBACjC,QAAQ,EAAE,SAAS;gBACnB,SAAS,EAAE,UAAU,CAAC,GAAG,yBAAyB,EAAE,CAAC;gBACrD,WAAW,EAAE,SAAS,EAAE,MAAM;gBAC9B,WAAW,EAAE,SAAS,EAAE,OAAO;gBAC/B,UAAU,EAAE,UAAU,CAAC,GAAG,0BAA0B,EAAE,CAAC;gBACvD,YAAY,EAAE,OAAO,EAAE,MAAM;gBAC7B,YAAY,EAAE,OAAO,EAAE,OAAO;gBAC9B,QAAQ,EAAE,eAAe,EAAE,QAAQ,IAAI,EAAE;aAC1C,CAAC,CAAA;YACF,YAAY,CAAC,SAAS,CAAC,CAAA;YACvB,wBAAwB,EAAE,CAAA;QAC5B,CAAC;aAAM,IAAI,eAAe,EAAE,MAAM,KAAK,SAAS,EAAE,CAAC;YACjD,IAAI,YAAY,KAAK,uBAAuB,CAAC,OAAO,EAAE,CAAC;gBACrD,SAAS,EAAE,CAAC,KAAK,EAAE,eAAe,CAAC,CAAA;YACrC,CAAC;YACD,eAAe,CAAC,uBAAuB,CAAC,OAAO,CAAC,CAAA;YAChD,wBAAwB,EAAE,CAAA;QAC5B,CAAC;aAAM,IAAI,eAAe,EAAE,MAAM,KAAK,SAAS,EAAE,CAAC;YACjD,MAAM,cAAc,GAClB,CAAC,CAAC,KAAK,EAAE,OAAO,EAAE,YAAY,IAAI,CAAC,CAAC;gBAClC,CAAC,SAAS,IAAI,SAAS,CAAC,EAAE,KAAK,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;gBACvD,IAAI,CAAA;YACN,MAAM,WAAW,GACf,cAAc;gBACd,CAAC,WAAW,EAAE,+BAA+B,IAAI,EAAE,CAAC;oBAClD,CAAC,WAAW,EAAE,eAAe,IAAI,IAAI,CAAC,CAAA;YAC1C,IAAI,WAAW,EAAE,CAAC;gBAChB,eAAe,CAAC,uBAAuB,CAAC,OAAO,CAAC,CAAA;YAClD,CAAC;iBAAM,CAAC;gBACN,eAAe,CAAC,uBAAuB,CAAC,UAAU,CAAC,CAAA;YACrD,CAAC;QACH,CAAC;IACH,CAAC,EAAE,CAAC,eAAe,EAAE,MAAM,EAAE,UAAU,CAAC,CAAC,CAAA;IAEzC,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG,EAAE;QAC/B,MAAM,QAAQ,GAAG,eAAe,EAAE,MAAM,KAAK,QAAQ,CAAA;QACrD,MAAM,YAAY,GAAa,EAAE,CAAA;QACjC,eAAe,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE;YAC5C,YAAY,CAAC,IAAI,CAAC;gBAChB,MAAM;gBACN,OAAO,EAAE,QAAQ;oBACf,CAAC,CAAE,SAAS,EAAE,OAAkB;oBAChC,CAAC,CAAE,OAAO,EAAE,OAAkB;aACjC,CAAC,CAAA;QACJ,CAAC,CAAC,CAAA;QAEF,eAAe,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE;YAC9C,YAAY,CAAC,IAAI,CAAC;gBAChB,MAAM;gBACN,OAAO,EAAE,SAAS,EAAE,OAAiB;aACtC,CAAC,CAAA;QACJ,CAAC,CAAC,CAAA;QACF,OAAO,YAAY,CAAA;IACrB,CAAC,EAAE,CAAC,eAAe,EAAE,QAAQ,EAAE,eAAe,EAAE,UAAU,CAAC,CAAC,CAAA;IAE5D,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,SAAS,EAAE,oBAAoB,EAAE,GAAG,WAAW,CACzE,CAAC,YAAY,KAAK,uBAAuB,CAAC,OAAO;QAC/C,YAAY,KAAK,uBAAuB,CAAC,KAAK,CAAC;QAC/C,WAAW,CAAC,CAAC,CAAC;QACd,CAAC,CAAC;YACE,IAAI,EAAE,OAAO;YACb,IAAI,EAAE,WAAW,CAAC,CAAC,CAAC,EAAE,MAAM;SAC7B;QACH,CAAC,CAAC,SAAS,EACb,WAAW,EAAE,UAAU,EACvB;QACE,OAAO,EACL,CAAC,YAAY,KAAK,uBAAuB,CAAC,OAAO;YAC/C,YAAY,KAAK,uBAAuB,CAAC,KAAK,CAAC;YACjD,WAAW,CAAC,CAAC,CAAC;YACZ,CAAC,CAAC,IAAI;YACN,CAAC,CAAC,KAAK;QACX,oBAAoB,EAAE,KAAK;QAC3B,kBAAkB,EAAE,KAAK;QACzB,eAAe,EAAE,KAAK;QACtB,YAAY,EAAE,KAAK;KACpB,CACF,CAAA;IAED,MAAM,WAAW,GAAG,YAAY,CAAC,CAAC,CAAC,CAAA;IAEnC,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,iBAAiB,CAAC,WAAW,CAAC,CAAA;IAC5D,MAAM,YAAY,GAAG,0BAA0B,CAAC,KAAK,EAAE,OAAO,CAAC,CAAA;IAC/D,MAAM,OAAO,GAAG,OAAO,EAAE,OAAO;QAC9B,CAAC,CAAC,WAAW,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,KAAK,OAAO,EAAE,OAAO,CAAC;QACpE,CAAC,CAAC,IAAI,CAAA;IAER,OAAO,CACL,4BACG,QAAQ,CAAC;YACR,YAAY;YACZ,eAAe;YACf,KAAK;YACL,eAAe,EAAE,eAAe,IAAI,YAAY;YAChD,UAAU;YACV,SAAS;YACT,YAAY;YACZ,WAAW;YACX,WAAW;YACX,QAAQ;YACR,OAAO;YACP,SAAS;YACT,cAAc;YACd,eAAe;YACf,oBAAoB;YACpB,OAAO;YACP,YAAY;SACb,CAAC,GACD,CACJ,CAAA;AACH,CAAC,CAAA"}
|
|
@@ -0,0 +1,120 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import {} from 'viem';
|
|
3
|
+
import { useEffect } from 'react';
|
|
4
|
+
import { TransactionModalRenderer, TransactionProgressStep } from './TransactionModalRenderer.js';
|
|
5
|
+
import { Modal } from '../Modal.js';
|
|
6
|
+
import { Flex, Text } from '../../primitives/index.js';
|
|
7
|
+
import { ErrorStep } from './steps/ErrorStep.js';
|
|
8
|
+
import { EventNames } from '../../../constants/events.js';
|
|
9
|
+
import { SwapConfirmationStep } from './steps/SwapConfirmationStep.js';
|
|
10
|
+
import {} from '../../../types/index.js';
|
|
11
|
+
import { SwapSuccessStep } from './steps/SwapSuccessStep.js';
|
|
12
|
+
import { formatBN } from '../../../utils/numbers.js';
|
|
13
|
+
import { extractQuoteId } from '../../../utils/quote.js';
|
|
14
|
+
export const TransactionModal = (transactionModalProps) => {
|
|
15
|
+
const { quote, steps, swapError, setSwapError, open, address, fromToken, toToken, useExternalLiquidity, slippageTolerance, isCanonical, wallet, onOpenChange, onAnalyticEvent, onSuccess, onSwapValidating } = transactionModalProps;
|
|
16
|
+
useEffect(() => {
|
|
17
|
+
onOpenChange(open);
|
|
18
|
+
}, [open]);
|
|
19
|
+
return (_jsx(TransactionModalRenderer, { open: open, fromToken: fromToken, toToken: toToken, quote: quote, steps: steps, swapError: swapError, setSwapError: setSwapError, slippageTolerance: slippageTolerance, address: address, wallet: wallet, onValidating: (quote) => {
|
|
20
|
+
const steps = quote?.steps;
|
|
21
|
+
const details = quote?.details;
|
|
22
|
+
const fees = quote?.fees;
|
|
23
|
+
onSwapValidating?.({
|
|
24
|
+
steps: steps,
|
|
25
|
+
fees: fees,
|
|
26
|
+
details: details
|
|
27
|
+
});
|
|
28
|
+
}, onSuccess: (quote, steps) => {
|
|
29
|
+
const details = quote?.details;
|
|
30
|
+
const fees = quote?.fees;
|
|
31
|
+
const extraData = {
|
|
32
|
+
amount_in: parseFloat(`${details?.currencyIn?.amountFormatted}`),
|
|
33
|
+
amount_out: parseFloat(`${details?.currencyOut?.amountFormatted}`)
|
|
34
|
+
};
|
|
35
|
+
if (fees?.gas?.amountFormatted) {
|
|
36
|
+
extraData.gas_fee = parseFloat(fees.gas.amountFormatted);
|
|
37
|
+
}
|
|
38
|
+
if (fees?.relayer?.amountFormatted) {
|
|
39
|
+
extraData.relayer_fee = parseFloat(fees.relayer.amountFormatted);
|
|
40
|
+
}
|
|
41
|
+
const quoteId = steps ? extractQuoteId(steps) : undefined;
|
|
42
|
+
onAnalyticEvent?.(EventNames.SWAP_SUCCESS, {
|
|
43
|
+
...extraData,
|
|
44
|
+
chain_id_in: fromToken?.chainId,
|
|
45
|
+
currency_in: fromToken?.symbol,
|
|
46
|
+
chain_id_out: toToken?.chainId,
|
|
47
|
+
currency_out: toToken?.symbol,
|
|
48
|
+
currency_in_usd: details?.currencyIn?.amountUsd,
|
|
49
|
+
currency_out_usd: details?.currencyOut?.amountUsd,
|
|
50
|
+
is_canonical: useExternalLiquidity,
|
|
51
|
+
quote_id: quoteId,
|
|
52
|
+
txHashes: steps
|
|
53
|
+
?.map((step) => {
|
|
54
|
+
let txHashes = [];
|
|
55
|
+
step.items?.forEach((item) => {
|
|
56
|
+
if (item.txHashes) {
|
|
57
|
+
txHashes = txHashes.concat([
|
|
58
|
+
...(item.txHashes ?? []),
|
|
59
|
+
...(item.internalTxHashes ?? [])
|
|
60
|
+
]);
|
|
61
|
+
}
|
|
62
|
+
});
|
|
63
|
+
return txHashes;
|
|
64
|
+
})
|
|
65
|
+
.flat(),
|
|
66
|
+
steps
|
|
67
|
+
});
|
|
68
|
+
onSuccess?.({
|
|
69
|
+
steps: steps,
|
|
70
|
+
fees: fees,
|
|
71
|
+
details: details
|
|
72
|
+
});
|
|
73
|
+
}, children: (rendererProps) => {
|
|
74
|
+
return (_jsx(InnerTransactionModal, { address: address, onAnalyticEvent: onAnalyticEvent, isCanonical: isCanonical, ...transactionModalProps, ...rendererProps }));
|
|
75
|
+
} }));
|
|
76
|
+
};
|
|
77
|
+
const InnerTransactionModal = ({ open, onOpenChange, fromToken, toToken, quote, address, swapError, setSwapError, progressStep, setProgressStep, steps, setSteps, currentStep, setCurrentStep, setCurrentStepItem, allTxHashes, setAllTxHashes, transaction, executionTime, executionTimeSeconds, setStartTimestamp, onAnalyticEvent, timeEstimate, isCanonical, fromChain, toChain, isLoadingTransaction, setQuote, requestId }) => {
|
|
78
|
+
useEffect(() => {
|
|
79
|
+
if (!open) {
|
|
80
|
+
if (currentStep) {
|
|
81
|
+
onAnalyticEvent?.(EventNames.SWAP_MODAL_CLOSED);
|
|
82
|
+
}
|
|
83
|
+
setCurrentStep(null);
|
|
84
|
+
setCurrentStepItem(null);
|
|
85
|
+
setAllTxHashes([]);
|
|
86
|
+
setStartTimestamp(0);
|
|
87
|
+
setSwapError(null);
|
|
88
|
+
setSteps(null);
|
|
89
|
+
setQuote(null);
|
|
90
|
+
}
|
|
91
|
+
else {
|
|
92
|
+
setProgressStep(TransactionProgressStep.Confirmation);
|
|
93
|
+
onAnalyticEvent?.(EventNames.SWAP_MODAL_OPEN);
|
|
94
|
+
}
|
|
95
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
96
|
+
}, [open]);
|
|
97
|
+
const details = quote?.details;
|
|
98
|
+
const fromAmountFormatted = details?.currencyIn?.amount
|
|
99
|
+
? formatBN(details?.currencyIn?.amount, 6, fromToken?.decimals, false)
|
|
100
|
+
: '';
|
|
101
|
+
const toAmountFormatted = details?.currencyOut?.amount
|
|
102
|
+
? formatBN(details?.currencyOut.amount, 6, toToken?.decimals, false)
|
|
103
|
+
: '';
|
|
104
|
+
return (_jsx(Modal, { trigger: null, open: open, onOpenChange: onOpenChange, css: {
|
|
105
|
+
overflow: 'hidden',
|
|
106
|
+
p: '4',
|
|
107
|
+
maxWidth: '412px !important'
|
|
108
|
+
}, showCloseButton: true, onPointerDownOutside: (e) => {
|
|
109
|
+
const dynamicModalElements = Array.from(document.querySelectorAll('#dynamic-send-transaction'));
|
|
110
|
+
const clickedInsideDynamicModal = dynamicModalElements.some((el) => e.target ? el.contains(e.target) : false);
|
|
111
|
+
if (clickedInsideDynamicModal && dynamicModalElements.length > 0) {
|
|
112
|
+
e.preventDefault();
|
|
113
|
+
}
|
|
114
|
+
}, children: _jsxs(Flex, { direction: "column", css: {
|
|
115
|
+
width: '100%',
|
|
116
|
+
height: '100%',
|
|
117
|
+
gap: '3'
|
|
118
|
+
}, children: [_jsx(Text, { style: "h6", css: { mb: 8 }, children: "Transaction Details" }), progressStep === TransactionProgressStep.Confirmation ? (_jsx(SwapConfirmationStep, { fromToken: fromToken, toToken: toToken, fromChain: fromChain, toChain: toChain, fromAmountFormatted: fromAmountFormatted, toAmountFormatted: toAmountFormatted, quote: quote, steps: steps })) : null, progressStep === TransactionProgressStep.Success ? (_jsx(SwapSuccessStep, { fromToken: fromToken, toToken: toToken, fromAmountFormatted: fromAmountFormatted, toAmountFormatted: toAmountFormatted, allTxHashes: allTxHashes, transaction: transaction, fillTime: executionTime ?? '', seconds: executionTimeSeconds ?? 0, onOpenChange: onOpenChange, timeEstimate: timeEstimate?.formattedTime, isCanonical: isCanonical, details: details, isLoadingTransaction: isLoadingTransaction, requestId: requestId })) : null, progressStep === TransactionProgressStep.Error ? (_jsx(ErrorStep, { error: swapError, allTxHashes: allTxHashes, address: address, onOpenChange: onOpenChange, transaction: transaction, fromChain: fromChain, toChain: toChain })) : null] }) }));
|
|
119
|
+
};
|
|
120
|
+
//# sourceMappingURL=TransactionModal.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TransactionModal.js","sourceRoot":"","sources":["../../../../../src/components/common/TransactionModal/TransactionModal.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,135 @@
|
|
|
1
|
+
import { Fragment as _Fragment, jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { useMemo, useState, useEffect } from 'react';
|
|
3
|
+
import {} from 'viem';
|
|
4
|
+
import {} from '@relayprotocol/relay-sdk';
|
|
5
|
+
import { calculateExecutionTime, calculateFillTime, extractDepositRequestId } from '../../../utils/relayTransaction.js';
|
|
6
|
+
import { useRequests } from '@relayprotocol/relay-kit-hooks';
|
|
7
|
+
import { useRelayClient } from '../../../hooks/index.js';
|
|
8
|
+
import { calculatePriceTimeEstimate } from '../../../utils/quote.js';
|
|
9
|
+
export var TransactionProgressStep;
|
|
10
|
+
(function (TransactionProgressStep) {
|
|
11
|
+
TransactionProgressStep[TransactionProgressStep["Confirmation"] = 0] = "Confirmation";
|
|
12
|
+
TransactionProgressStep[TransactionProgressStep["Success"] = 1] = "Success";
|
|
13
|
+
TransactionProgressStep[TransactionProgressStep["Error"] = 2] = "Error";
|
|
14
|
+
})(TransactionProgressStep || (TransactionProgressStep = {}));
|
|
15
|
+
export const TransactionModalRenderer = ({ open, address, fromToken, toToken, slippageTolerance, wallet, steps, quote, swapError, setSwapError, children, onSuccess, onValidating }) => {
|
|
16
|
+
const relayClient = useRelayClient();
|
|
17
|
+
const [progressStep, setProgressStep] = useState(TransactionProgressStep.Confirmation);
|
|
18
|
+
const [currentStep, setCurrentStep] = useState();
|
|
19
|
+
const [currentStepItem, setCurrentStepItem] = useState();
|
|
20
|
+
const [allTxHashes, setAllTxHashes] = useState([]);
|
|
21
|
+
const [startTimestamp, setStartTimestamp] = useState(0);
|
|
22
|
+
const [waitingForSteps, setWaitingForSteps] = useState(false);
|
|
23
|
+
const [hasStartedValidation, setHasStartedValidation] = useState(false);
|
|
24
|
+
useEffect(() => {
|
|
25
|
+
if (!open) {
|
|
26
|
+
setHasStartedValidation(false);
|
|
27
|
+
}
|
|
28
|
+
}, [open]);
|
|
29
|
+
useEffect(() => {
|
|
30
|
+
if (swapError) {
|
|
31
|
+
setProgressStep(TransactionProgressStep.Error);
|
|
32
|
+
return;
|
|
33
|
+
}
|
|
34
|
+
if (!steps) {
|
|
35
|
+
return;
|
|
36
|
+
}
|
|
37
|
+
const executableSteps = steps.filter((step) => step.items && step.items.length > 0);
|
|
38
|
+
let stepCount = executableSteps.length;
|
|
39
|
+
let txHashes = [];
|
|
40
|
+
let currentStep = null;
|
|
41
|
+
let currentStepItem;
|
|
42
|
+
for (const step of executableSteps) {
|
|
43
|
+
for (const item of step.items || []) {
|
|
44
|
+
if (item.txHashes && item.txHashes.length > 0) {
|
|
45
|
+
txHashes = item.txHashes.concat([...txHashes]);
|
|
46
|
+
}
|
|
47
|
+
if (item.internalTxHashes && item.internalTxHashes.length > 0) {
|
|
48
|
+
txHashes = item.internalTxHashes.concat([...txHashes]);
|
|
49
|
+
}
|
|
50
|
+
if (item.status === 'incomplete') {
|
|
51
|
+
currentStep = step;
|
|
52
|
+
currentStepItem = item;
|
|
53
|
+
break; // Exit the inner loop once the first incomplete item is found
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
if (currentStep && currentStepItem)
|
|
57
|
+
break; // Exit the outer loop if the current step and item have been found
|
|
58
|
+
}
|
|
59
|
+
setAllTxHashes(txHashes);
|
|
60
|
+
if (!hasStartedValidation &&
|
|
61
|
+
(txHashes.length > 0 || currentStepItem?.isValidatingSignature == true) &&
|
|
62
|
+
progressStep === TransactionProgressStep.Confirmation) {
|
|
63
|
+
onValidating?.(quote);
|
|
64
|
+
setStartTimestamp(new Date().getTime());
|
|
65
|
+
setHasStartedValidation(true);
|
|
66
|
+
}
|
|
67
|
+
if (!currentStep) {
|
|
68
|
+
currentStep = executableSteps[stepCount - 1];
|
|
69
|
+
}
|
|
70
|
+
setCurrentStep(currentStep);
|
|
71
|
+
setCurrentStepItem(currentStepItem);
|
|
72
|
+
if (steps.every((step) => !step.items ||
|
|
73
|
+
step.items.length == 0 ||
|
|
74
|
+
step.items?.every((item) => item.status === 'complete')) &&
|
|
75
|
+
progressStep !== TransactionProgressStep.Success) {
|
|
76
|
+
setProgressStep(TransactionProgressStep.Success);
|
|
77
|
+
onSuccess?.(quote, steps);
|
|
78
|
+
}
|
|
79
|
+
}, [steps, swapError]);
|
|
80
|
+
const requestId = useMemo(() => extractDepositRequestId(steps), [steps]);
|
|
81
|
+
// Fetch Success Tx
|
|
82
|
+
const { data: transactions, isInitialLoading: isLoadingTransaction } = useRequests((progressStep === TransactionProgressStep.Success ||
|
|
83
|
+
progressStep === TransactionProgressStep.Error) &&
|
|
84
|
+
requestId
|
|
85
|
+
? { id: requestId }
|
|
86
|
+
: undefined, relayClient?.baseApiUrl, {
|
|
87
|
+
enabled: (progressStep === TransactionProgressStep.Success ||
|
|
88
|
+
progressStep === TransactionProgressStep.Error) &&
|
|
89
|
+
(requestId || allTxHashes[0])
|
|
90
|
+
? true
|
|
91
|
+
: false,
|
|
92
|
+
refetchInterval(query) {
|
|
93
|
+
if (query.state.dataUpdateCount > 10) {
|
|
94
|
+
return 0;
|
|
95
|
+
}
|
|
96
|
+
if (!query.state.data?.pages[0].requests?.[0]) {
|
|
97
|
+
return 2500;
|
|
98
|
+
}
|
|
99
|
+
return 0;
|
|
100
|
+
}
|
|
101
|
+
});
|
|
102
|
+
const transaction = transactions[0];
|
|
103
|
+
const { fillTime, seconds } = calculateFillTime(transaction);
|
|
104
|
+
const { fillTime: executionTime, seconds: executionTimeSeconds } = calculateExecutionTime(Math.floor(startTimestamp / 1000), transaction);
|
|
105
|
+
const isAutoSlippage = slippageTolerance === undefined;
|
|
106
|
+
const timeEstimate = calculatePriceTimeEstimate(quote?.details);
|
|
107
|
+
return (_jsx(_Fragment, { children: children({
|
|
108
|
+
wallet,
|
|
109
|
+
progressStep,
|
|
110
|
+
setProgressStep,
|
|
111
|
+
currentStep,
|
|
112
|
+
setCurrentStep,
|
|
113
|
+
currentStepItem,
|
|
114
|
+
setCurrentStepItem,
|
|
115
|
+
quote,
|
|
116
|
+
steps,
|
|
117
|
+
waitingForSteps,
|
|
118
|
+
swapError,
|
|
119
|
+
setSwapError,
|
|
120
|
+
allTxHashes,
|
|
121
|
+
setAllTxHashes,
|
|
122
|
+
transaction,
|
|
123
|
+
fillTime,
|
|
124
|
+
seconds,
|
|
125
|
+
executionTime,
|
|
126
|
+
executionTimeSeconds,
|
|
127
|
+
startTimestamp,
|
|
128
|
+
setStartTimestamp,
|
|
129
|
+
requestId,
|
|
130
|
+
isLoadingTransaction,
|
|
131
|
+
isAutoSlippage,
|
|
132
|
+
timeEstimate
|
|
133
|
+
}) }));
|
|
134
|
+
};
|
|
135
|
+
//# sourceMappingURL=TransactionModalRenderer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TransactionModalRenderer.js","sourceRoot":"","sources":["../../../../../src/components/common/TransactionModal/TransactionModalRenderer.tsx"],"names":[],"mappings":"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"}
|