@0xsequence/checkout 5.3.7 → 5.3.8
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/dist/cjs/components/NavigationHeaderCheckout.d.ts +8 -0
- package/dist/cjs/components/NavigationHeaderCheckout.d.ts.map +1 -0
- package/dist/cjs/components/NavigationHeaderCheckout.js +18 -0
- package/dist/cjs/components/NavigationHeaderCheckout.js.map +1 -0
- package/dist/cjs/components/SequenceCheckoutProvider/SequenceCheckoutProvider.d.ts.map +1 -1
- package/dist/cjs/components/SequenceCheckoutProvider/SequenceCheckoutProvider.js +69 -36
- package/dist/cjs/components/SequenceCheckoutProvider/SequenceCheckoutProvider.js.map +1 -1
- package/dist/cjs/constants/index.d.ts +1 -1
- package/dist/cjs/constants/index.js +1 -1
- package/dist/cjs/contexts/NavigationCheckout.d.ts +29 -0
- package/dist/cjs/contexts/NavigationCheckout.d.ts.map +1 -0
- package/dist/cjs/contexts/NavigationCheckout.js +9 -0
- package/dist/cjs/contexts/NavigationCheckout.js.map +1 -0
- package/dist/cjs/contexts/SelectPaymentModal.d.ts +0 -4
- package/dist/cjs/contexts/SelectPaymentModal.d.ts.map +1 -1
- package/dist/cjs/contexts/SelectPaymentModal.js.map +1 -1
- package/dist/cjs/contexts/index.d.ts +1 -0
- package/dist/cjs/contexts/index.d.ts.map +1 -1
- package/dist/cjs/contexts/index.js +1 -0
- package/dist/cjs/contexts/index.js.map +1 -1
- package/dist/cjs/hooks/useERC1155SaleContractCheckout.d.ts.map +1 -1
- package/dist/cjs/hooks/useERC1155SaleContractCheckout.js +0 -3
- package/dist/cjs/hooks/useERC1155SaleContractCheckout.js.map +1 -1
- package/dist/cjs/hooks/useNavigationCheckout.d.ts +11 -0
- package/dist/cjs/hooks/useNavigationCheckout.d.ts.map +1 -0
- package/dist/cjs/hooks/useNavigationCheckout.js +24 -0
- package/dist/cjs/hooks/useNavigationCheckout.js.map +1 -0
- package/dist/cjs/views/Checkout/PaymentMethodSelect/OrderSummary/Price.d.ts.map +1 -0
- package/dist/cjs/views/{PaymentSelection → Checkout/PaymentMethodSelect}/OrderSummary/Price.js +1 -1
- package/dist/cjs/views/Checkout/PaymentMethodSelect/OrderSummary/Price.js.map +1 -0
- package/dist/cjs/views/Checkout/PaymentMethodSelect/OrderSummary/index.d.ts.map +1 -0
- package/dist/cjs/views/Checkout/PaymentMethodSelect/OrderSummary/index.js +61 -0
- package/dist/cjs/views/Checkout/PaymentMethodSelect/OrderSummary/index.js.map +1 -0
- package/dist/cjs/views/Checkout/PaymentMethodSelect/PayWithCreditCard/PaymentProviderOption.d.ts.map +1 -0
- package/dist/cjs/views/Checkout/PaymentMethodSelect/PayWithCreditCard/PaymentProviderOption.js.map +1 -0
- package/dist/cjs/views/Checkout/PaymentMethodSelect/PayWithCreditCard/index.d.ts +6 -0
- package/dist/cjs/views/Checkout/PaymentMethodSelect/PayWithCreditCard/index.d.ts.map +1 -0
- package/dist/cjs/views/{PaymentSelection → Checkout/PaymentMethodSelect}/PayWithCreditCard/index.js +26 -40
- package/dist/cjs/views/Checkout/PaymentMethodSelect/PayWithCreditCard/index.js.map +1 -0
- package/dist/cjs/views/Checkout/PaymentMethodSelect/PayWithCreditCard/providers/SardineLogo.d.ts.map +1 -0
- package/dist/cjs/views/Checkout/PaymentMethodSelect/PayWithCreditCard/providers/SardineLogo.js.map +1 -0
- package/dist/cjs/views/Checkout/PaymentMethodSelect/PayWithCrypto/index.d.ts +6 -0
- package/dist/cjs/views/Checkout/PaymentMethodSelect/PayWithCrypto/index.d.ts.map +1 -0
- package/dist/cjs/views/Checkout/PaymentMethodSelect/PayWithCrypto/index.js +391 -0
- package/dist/cjs/views/Checkout/PaymentMethodSelect/PayWithCrypto/index.js.map +1 -0
- package/dist/cjs/views/Checkout/PaymentMethodSelect/index.d.ts.map +1 -0
- package/dist/cjs/views/Checkout/PaymentMethodSelect/index.js +63 -0
- package/dist/cjs/views/Checkout/PaymentMethodSelect/index.js.map +1 -0
- package/dist/cjs/views/Checkout/TokenSelection/index.d.ts +2 -0
- package/dist/cjs/views/Checkout/TokenSelection/index.d.ts.map +1 -0
- package/dist/cjs/views/Checkout/TokenSelection/index.js +109 -0
- package/dist/cjs/views/Checkout/TokenSelection/index.js.map +1 -0
- package/dist/cjs/views/Checkout/index.d.ts +3 -0
- package/dist/cjs/views/Checkout/index.d.ts.map +1 -0
- package/dist/cjs/views/Checkout/index.js +19 -0
- package/dist/cjs/views/Checkout/index.js.map +1 -0
- package/dist/cjs/views/index.d.ts +1 -1
- package/dist/cjs/views/index.d.ts.map +1 -1
- package/dist/cjs/views/index.js +1 -1
- package/dist/cjs/views/index.js.map +1 -1
- package/dist/esm/components/NavigationHeaderCheckout.d.ts +8 -0
- package/dist/esm/components/NavigationHeaderCheckout.d.ts.map +1 -0
- package/dist/esm/components/NavigationHeaderCheckout.js +14 -0
- package/dist/esm/components/NavigationHeaderCheckout.js.map +1 -0
- package/dist/esm/components/SequenceCheckoutProvider/SequenceCheckoutProvider.d.ts.map +1 -1
- package/dist/esm/components/SequenceCheckoutProvider/SequenceCheckoutProvider.js +71 -38
- package/dist/esm/components/SequenceCheckoutProvider/SequenceCheckoutProvider.js.map +1 -1
- package/dist/esm/constants/index.d.ts +1 -1
- package/dist/esm/constants/index.js +1 -1
- package/dist/esm/contexts/NavigationCheckout.d.ts +29 -0
- package/dist/esm/contexts/NavigationCheckout.d.ts.map +1 -0
- package/dist/esm/contexts/NavigationCheckout.js +5 -0
- package/dist/esm/contexts/NavigationCheckout.js.map +1 -0
- package/dist/esm/contexts/SelectPaymentModal.d.ts +0 -4
- package/dist/esm/contexts/SelectPaymentModal.d.ts.map +1 -1
- package/dist/esm/contexts/SelectPaymentModal.js.map +1 -1
- package/dist/esm/contexts/index.d.ts +1 -0
- package/dist/esm/contexts/index.d.ts.map +1 -1
- package/dist/esm/contexts/index.js +1 -0
- package/dist/esm/contexts/index.js.map +1 -1
- package/dist/esm/hooks/useERC1155SaleContractCheckout.d.ts.map +1 -1
- package/dist/esm/hooks/useERC1155SaleContractCheckout.js +0 -3
- package/dist/esm/hooks/useERC1155SaleContractCheckout.js.map +1 -1
- package/dist/esm/hooks/useNavigationCheckout.d.ts +11 -0
- package/dist/esm/hooks/useNavigationCheckout.d.ts.map +1 -0
- package/dist/esm/hooks/useNavigationCheckout.js +20 -0
- package/dist/esm/hooks/useNavigationCheckout.js.map +1 -0
- package/dist/esm/views/Checkout/PaymentMethodSelect/OrderSummary/Price.d.ts.map +1 -0
- package/dist/esm/views/{PaymentSelection → Checkout/PaymentMethodSelect}/OrderSummary/Price.js +1 -1
- package/dist/esm/views/Checkout/PaymentMethodSelect/OrderSummary/Price.js.map +1 -0
- package/dist/esm/views/Checkout/PaymentMethodSelect/OrderSummary/index.d.ts.map +1 -0
- package/dist/esm/views/Checkout/PaymentMethodSelect/OrderSummary/index.js +57 -0
- package/dist/esm/views/Checkout/PaymentMethodSelect/OrderSummary/index.js.map +1 -0
- package/dist/esm/views/Checkout/PaymentMethodSelect/PayWithCreditCard/PaymentProviderOption.d.ts.map +1 -0
- package/dist/esm/views/Checkout/PaymentMethodSelect/PayWithCreditCard/PaymentProviderOption.js.map +1 -0
- package/dist/esm/views/Checkout/PaymentMethodSelect/PayWithCreditCard/index.d.ts +6 -0
- package/dist/esm/views/Checkout/PaymentMethodSelect/PayWithCreditCard/index.d.ts.map +1 -0
- package/dist/esm/views/{PaymentSelection → Checkout/PaymentMethodSelect}/PayWithCreditCard/index.js +25 -39
- package/dist/esm/views/Checkout/PaymentMethodSelect/PayWithCreditCard/index.js.map +1 -0
- package/dist/esm/views/Checkout/PaymentMethodSelect/PayWithCreditCard/providers/SardineLogo.d.ts.map +1 -0
- package/dist/esm/views/Checkout/PaymentMethodSelect/PayWithCreditCard/providers/SardineLogo.js.map +1 -0
- package/dist/esm/views/Checkout/PaymentMethodSelect/PayWithCrypto/index.d.ts +6 -0
- package/dist/esm/views/Checkout/PaymentMethodSelect/PayWithCrypto/index.d.ts.map +1 -0
- package/dist/esm/views/Checkout/PaymentMethodSelect/PayWithCrypto/index.js +387 -0
- package/dist/esm/views/Checkout/PaymentMethodSelect/PayWithCrypto/index.js.map +1 -0
- package/dist/esm/views/Checkout/PaymentMethodSelect/index.d.ts.map +1 -0
- package/dist/esm/views/Checkout/PaymentMethodSelect/index.js +57 -0
- package/dist/esm/views/Checkout/PaymentMethodSelect/index.js.map +1 -0
- package/dist/esm/views/Checkout/TokenSelection/index.d.ts +2 -0
- package/dist/esm/views/Checkout/TokenSelection/index.d.ts.map +1 -0
- package/dist/esm/views/Checkout/TokenSelection/index.js +102 -0
- package/dist/esm/views/Checkout/TokenSelection/index.js.map +1 -0
- package/dist/esm/views/Checkout/index.d.ts +3 -0
- package/dist/esm/views/Checkout/index.d.ts.map +1 -0
- package/dist/esm/views/Checkout/index.js +3 -0
- package/dist/esm/views/Checkout/index.js.map +1 -0
- package/dist/esm/views/index.d.ts +1 -1
- package/dist/esm/views/index.d.ts.map +1 -1
- package/dist/esm/views/index.js +1 -1
- package/dist/esm/views/index.js.map +1 -1
- package/package.json +5 -4
- package/dist/cjs/views/PaymentSelection/Footer.d.ts +0 -2
- package/dist/cjs/views/PaymentSelection/Footer.d.ts.map +0 -1
- package/dist/cjs/views/PaymentSelection/Footer.js +0 -12
- package/dist/cjs/views/PaymentSelection/Footer.js.map +0 -1
- package/dist/cjs/views/PaymentSelection/FundWithFiat.d.ts +0 -11
- package/dist/cjs/views/PaymentSelection/FundWithFiat.d.ts.map +0 -1
- package/dist/cjs/views/PaymentSelection/FundWithFiat.js +0 -29
- package/dist/cjs/views/PaymentSelection/FundWithFiat.js.map +0 -1
- package/dist/cjs/views/PaymentSelection/OrderSummary/Price.d.ts.map +0 -1
- package/dist/cjs/views/PaymentSelection/OrderSummary/Price.js.map +0 -1
- package/dist/cjs/views/PaymentSelection/OrderSummary/index.d.ts.map +0 -1
- package/dist/cjs/views/PaymentSelection/OrderSummary/index.js +0 -68
- package/dist/cjs/views/PaymentSelection/OrderSummary/index.js.map +0 -1
- package/dist/cjs/views/PaymentSelection/PayWithCreditCard/PaymentProviderOption.d.ts.map +0 -1
- package/dist/cjs/views/PaymentSelection/PayWithCreditCard/PaymentProviderOption.js.map +0 -1
- package/dist/cjs/views/PaymentSelection/PayWithCreditCard/index.d.ts +0 -9
- package/dist/cjs/views/PaymentSelection/PayWithCreditCard/index.d.ts.map +0 -1
- package/dist/cjs/views/PaymentSelection/PayWithCreditCard/index.js.map +0 -1
- package/dist/cjs/views/PaymentSelection/PayWithCreditCard/providers/SardineLogo.d.ts.map +0 -1
- package/dist/cjs/views/PaymentSelection/PayWithCreditCard/providers/SardineLogo.js.map +0 -1
- package/dist/cjs/views/PaymentSelection/PayWithCrypto/index.d.ts +0 -15
- package/dist/cjs/views/PaymentSelection/PayWithCrypto/index.d.ts.map +0 -1
- package/dist/cjs/views/PaymentSelection/PayWithCrypto/index.js +0 -201
- package/dist/cjs/views/PaymentSelection/PayWithCrypto/index.js.map +0 -1
- package/dist/cjs/views/PaymentSelection/TransferFunds.d.ts +0 -2
- package/dist/cjs/views/PaymentSelection/TransferFunds.d.ts.map +0 -1
- package/dist/cjs/views/PaymentSelection/TransferFunds.js +0 -39
- package/dist/cjs/views/PaymentSelection/TransferFunds.js.map +0 -1
- package/dist/cjs/views/PaymentSelection/index.d.ts.map +0 -1
- package/dist/cjs/views/PaymentSelection/index.js +0 -345
- package/dist/cjs/views/PaymentSelection/index.js.map +0 -1
- package/dist/esm/views/PaymentSelection/Footer.d.ts +0 -2
- package/dist/esm/views/PaymentSelection/Footer.d.ts.map +0 -1
- package/dist/esm/views/PaymentSelection/Footer.js +0 -8
- package/dist/esm/views/PaymentSelection/Footer.js.map +0 -1
- package/dist/esm/views/PaymentSelection/FundWithFiat.d.ts +0 -11
- package/dist/esm/views/PaymentSelection/FundWithFiat.d.ts.map +0 -1
- package/dist/esm/views/PaymentSelection/FundWithFiat.js +0 -25
- package/dist/esm/views/PaymentSelection/FundWithFiat.js.map +0 -1
- package/dist/esm/views/PaymentSelection/OrderSummary/Price.d.ts.map +0 -1
- package/dist/esm/views/PaymentSelection/OrderSummary/Price.js.map +0 -1
- package/dist/esm/views/PaymentSelection/OrderSummary/index.d.ts.map +0 -1
- package/dist/esm/views/PaymentSelection/OrderSummary/index.js +0 -64
- package/dist/esm/views/PaymentSelection/OrderSummary/index.js.map +0 -1
- package/dist/esm/views/PaymentSelection/PayWithCreditCard/PaymentProviderOption.d.ts.map +0 -1
- package/dist/esm/views/PaymentSelection/PayWithCreditCard/PaymentProviderOption.js.map +0 -1
- package/dist/esm/views/PaymentSelection/PayWithCreditCard/index.d.ts +0 -9
- package/dist/esm/views/PaymentSelection/PayWithCreditCard/index.d.ts.map +0 -1
- package/dist/esm/views/PaymentSelection/PayWithCreditCard/index.js.map +0 -1
- package/dist/esm/views/PaymentSelection/PayWithCreditCard/providers/SardineLogo.d.ts.map +0 -1
- package/dist/esm/views/PaymentSelection/PayWithCreditCard/providers/SardineLogo.js.map +0 -1
- package/dist/esm/views/PaymentSelection/PayWithCrypto/index.d.ts +0 -15
- package/dist/esm/views/PaymentSelection/PayWithCrypto/index.d.ts.map +0 -1
- package/dist/esm/views/PaymentSelection/PayWithCrypto/index.js +0 -197
- package/dist/esm/views/PaymentSelection/PayWithCrypto/index.js.map +0 -1
- package/dist/esm/views/PaymentSelection/TransferFunds.d.ts +0 -2
- package/dist/esm/views/PaymentSelection/TransferFunds.d.ts.map +0 -1
- package/dist/esm/views/PaymentSelection/TransferFunds.js +0 -35
- package/dist/esm/views/PaymentSelection/TransferFunds.js.map +0 -1
- package/dist/esm/views/PaymentSelection/index.d.ts.map +0 -1
- package/dist/esm/views/PaymentSelection/index.js +0 -339
- package/dist/esm/views/PaymentSelection/index.js.map +0 -1
- /package/dist/cjs/views/{PaymentSelection → Checkout/PaymentMethodSelect}/OrderSummary/Price.d.ts +0 -0
- /package/dist/cjs/views/{PaymentSelection → Checkout/PaymentMethodSelect}/OrderSummary/index.d.ts +0 -0
- /package/dist/cjs/views/{PaymentSelection → Checkout/PaymentMethodSelect}/PayWithCreditCard/PaymentProviderOption.d.ts +0 -0
- /package/dist/cjs/views/{PaymentSelection → Checkout/PaymentMethodSelect}/PayWithCreditCard/PaymentProviderOption.js +0 -0
- /package/dist/cjs/views/{PaymentSelection → Checkout/PaymentMethodSelect}/PayWithCreditCard/providers/SardineLogo.d.ts +0 -0
- /package/dist/cjs/views/{PaymentSelection → Checkout/PaymentMethodSelect}/PayWithCreditCard/providers/SardineLogo.js +0 -0
- /package/dist/cjs/views/{PaymentSelection → Checkout/PaymentMethodSelect}/index.d.ts +0 -0
- /package/dist/esm/views/{PaymentSelection → Checkout/PaymentMethodSelect}/OrderSummary/Price.d.ts +0 -0
- /package/dist/esm/views/{PaymentSelection → Checkout/PaymentMethodSelect}/OrderSummary/index.d.ts +0 -0
- /package/dist/esm/views/{PaymentSelection → Checkout/PaymentMethodSelect}/PayWithCreditCard/PaymentProviderOption.d.ts +0 -0
- /package/dist/esm/views/{PaymentSelection → Checkout/PaymentMethodSelect}/PayWithCreditCard/PaymentProviderOption.js +0 -0
- /package/dist/esm/views/{PaymentSelection → Checkout/PaymentMethodSelect}/PayWithCreditCard/providers/SardineLogo.d.ts +0 -0
- /package/dist/esm/views/{PaymentSelection → Checkout/PaymentMethodSelect}/PayWithCreditCard/providers/SardineLogo.js +0 -0
- /package/dist/esm/views/{PaymentSelection → Checkout/PaymentMethodSelect}/index.d.ts +0 -0
|
@@ -0,0 +1,387 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { compareAddress, ContractVerificationStatus, formatDisplay, sendTransactions, TRANSACTION_CONFIRMATIONS_DEFAULT, useAnalyticsContext } from '@0xsequence/connect';
|
|
3
|
+
import { AddIcon, Button, ChevronDownIcon, Spinner, Text, TokenImage, WarningIcon } from '@0xsequence/design-system';
|
|
4
|
+
import { useClearCachedBalances, useGetCoinPrices, useGetContractInfo, useGetSwapQuote, useGetTokenBalancesSummary, useIndexerClient } from '@0xsequence/hooks';
|
|
5
|
+
import { TransactionOnRampProvider } from '@0xsequence/marketplace';
|
|
6
|
+
import { findSupportedNetwork } from '@0xsequence/network';
|
|
7
|
+
import { useState } from 'react';
|
|
8
|
+
import { encodeFunctionData, formatUnits, zeroAddress } from 'viem';
|
|
9
|
+
import { useAccount, usePublicClient, useReadContract, useWalletClient } from 'wagmi';
|
|
10
|
+
import { ERC_20_CONTRACT_ABI } from '../../../../constants/abi.js';
|
|
11
|
+
import { EVENT_SOURCE } from '../../../../constants/index.js';
|
|
12
|
+
import { useAddFundsModal } from '../../../../hooks/index.js';
|
|
13
|
+
import { useSelectPaymentModal, useTransactionStatusModal } from '../../../../hooks/index.js';
|
|
14
|
+
import { useNavigationCheckout } from '../../../../hooks/useNavigationCheckout.js';
|
|
15
|
+
export const PayWithCryptoTab = ({ skipOnCloseCallback }) => {
|
|
16
|
+
const { triggerAddFunds } = useAddFundsModal();
|
|
17
|
+
const { clearCachedBalances } = useClearCachedBalances();
|
|
18
|
+
const [isPurchasing, setIsPurchasing] = useState(false);
|
|
19
|
+
const { openTransactionStatusModal } = useTransactionStatusModal();
|
|
20
|
+
const { selectPaymentSettings = {}, closeSelectPaymentModal } = useSelectPaymentModal();
|
|
21
|
+
const { analytics } = useAnalyticsContext();
|
|
22
|
+
const [isError, setIsError] = useState(false);
|
|
23
|
+
const { navigation, setNavigation } = useNavigationCheckout();
|
|
24
|
+
const { chain, collectibles, collectionAddress, currencyAddress, targetContractAddress, approvedSpenderAddress, price, txData, transactionConfirmations = TRANSACTION_CONFIRMATIONS_DEFAULT, onRampProvider, onSuccess = () => { }, onError = () => { }, onClose = () => { }, supplementaryAnalyticsInfo, slippageBps } = selectPaymentSettings;
|
|
25
|
+
const network = findSupportedNetwork(chain);
|
|
26
|
+
const chainId = network?.chainId || 137;
|
|
27
|
+
const { address: userAddress, connector } = useAccount();
|
|
28
|
+
const { data: walletClient } = useWalletClient({
|
|
29
|
+
chainId: chainId
|
|
30
|
+
});
|
|
31
|
+
const publicClient = usePublicClient({
|
|
32
|
+
chainId: chainId
|
|
33
|
+
});
|
|
34
|
+
const indexerClient = useIndexerClient(chainId);
|
|
35
|
+
const selectedCurrency = navigation.params?.selectedCurrency || {
|
|
36
|
+
address: currencyAddress,
|
|
37
|
+
chainId: chain
|
|
38
|
+
};
|
|
39
|
+
const isNativeToken = compareAddress(currencyAddress, zeroAddress);
|
|
40
|
+
const isNativeTokenSelectedCurrency = compareAddress(selectedCurrency.address, zeroAddress);
|
|
41
|
+
const { data: tokenBalancesData, isLoading: tokenBalancesIsLoading } = useGetTokenBalancesSummary({
|
|
42
|
+
chainIds: [chainId],
|
|
43
|
+
filter: {
|
|
44
|
+
accountAddresses: userAddress ? [userAddress] : [],
|
|
45
|
+
contractStatus: ContractVerificationStatus.ALL,
|
|
46
|
+
contractWhitelist: [selectedCurrency.address],
|
|
47
|
+
omitNativeBalances: !isNativeTokenSelectedCurrency
|
|
48
|
+
},
|
|
49
|
+
omitMetadata: true
|
|
50
|
+
});
|
|
51
|
+
const { data: coinPricesData, isLoading: isLoadingCoinPrice } = useGetCoinPrices([
|
|
52
|
+
{
|
|
53
|
+
chainId,
|
|
54
|
+
contractAddress: selectedCurrency.address
|
|
55
|
+
}
|
|
56
|
+
]);
|
|
57
|
+
const { data: dataCurrencyInfo, isLoading: isLoadingCurrencyInfo } = useGetContractInfo({
|
|
58
|
+
chainID: String(chainId),
|
|
59
|
+
contractAddress: currencyAddress
|
|
60
|
+
});
|
|
61
|
+
const isSwapTransaction = !compareAddress(selectedCurrency.address, currencyAddress);
|
|
62
|
+
const { data: dataSelectedCurrencyInfo, isLoading: isLoadingSelectedCurrencyInfo } = useGetContractInfo({
|
|
63
|
+
chainID: String(chainId),
|
|
64
|
+
contractAddress: selectedCurrency.address
|
|
65
|
+
}, {
|
|
66
|
+
disabled: !isSwapTransaction
|
|
67
|
+
});
|
|
68
|
+
const selectedCurrencyInfo = isSwapTransaction ? dataSelectedCurrencyInfo : dataCurrencyInfo;
|
|
69
|
+
const buyCurrencyAddress = currencyAddress;
|
|
70
|
+
const { data: swapQuote, isLoading: isLoadingSwapQuote } = useGetSwapQuote({
|
|
71
|
+
params: {
|
|
72
|
+
walletAddress: userAddress ?? '',
|
|
73
|
+
toTokenAddress: buyCurrencyAddress,
|
|
74
|
+
fromTokenAddress: selectedCurrency.address || '',
|
|
75
|
+
toTokenAmount: price,
|
|
76
|
+
chainId: chainId,
|
|
77
|
+
includeApprove: true,
|
|
78
|
+
slippageBps: slippageBps || 100
|
|
79
|
+
}
|
|
80
|
+
}, {
|
|
81
|
+
disabled: !isSwapTransaction
|
|
82
|
+
});
|
|
83
|
+
const selectedCurrencyPrice = isSwapTransaction ? swapQuote?.maxPrice || 0 : price || 0;
|
|
84
|
+
const { data: allowanceData, isLoading: allowanceIsLoading } = useReadContract({
|
|
85
|
+
abi: ERC_20_CONTRACT_ABI,
|
|
86
|
+
functionName: 'allowance',
|
|
87
|
+
chainId: chainId,
|
|
88
|
+
address: currencyAddress,
|
|
89
|
+
args: [userAddress, approvedSpenderAddress || targetContractAddress],
|
|
90
|
+
query: {
|
|
91
|
+
enabled: !!userAddress && !isNativeTokenSelectedCurrency
|
|
92
|
+
}
|
|
93
|
+
});
|
|
94
|
+
const isLoading = isLoadingCoinPrice ||
|
|
95
|
+
isLoadingCurrencyInfo ||
|
|
96
|
+
(allowanceIsLoading && !isNativeTokenSelectedCurrency) ||
|
|
97
|
+
isLoadingSwapQuote ||
|
|
98
|
+
tokenBalancesIsLoading ||
|
|
99
|
+
isLoadingSelectedCurrencyInfo;
|
|
100
|
+
const tokenBalance = tokenBalancesData?.pages?.[0]?.balances?.find(balance => compareAddress(balance.contractAddress, selectedCurrency.address));
|
|
101
|
+
const isInsufficientBalance = tokenBalance?.balance && BigInt(tokenBalance.balance) < BigInt(selectedCurrencyPrice);
|
|
102
|
+
const isApproved = allowanceData >= BigInt(price) || isNativeToken;
|
|
103
|
+
const formattedPrice = formatUnits(BigInt(selectedCurrencyPrice), selectedCurrencyInfo?.decimals || 0);
|
|
104
|
+
const displayPrice = formatDisplay(formattedPrice, {
|
|
105
|
+
disableScientificNotation: true,
|
|
106
|
+
disableCompactNotation: true,
|
|
107
|
+
significantDigits: 6
|
|
108
|
+
});
|
|
109
|
+
const fiatExchangeRate = coinPricesData?.[0].price?.value || 0;
|
|
110
|
+
const priceFiat = (fiatExchangeRate * Number(formattedPrice)).toFixed(2);
|
|
111
|
+
const onPurchaseMainCurrency = async () => {
|
|
112
|
+
if (!walletClient || !userAddress || !publicClient || !indexerClient || !connector) {
|
|
113
|
+
return;
|
|
114
|
+
}
|
|
115
|
+
setIsPurchasing(true);
|
|
116
|
+
setIsError(false);
|
|
117
|
+
try {
|
|
118
|
+
const walletClientChainId = await walletClient.getChainId();
|
|
119
|
+
if (walletClientChainId !== chainId) {
|
|
120
|
+
await walletClient.switchChain({ id: chainId });
|
|
121
|
+
}
|
|
122
|
+
const approveTxData = encodeFunctionData({
|
|
123
|
+
abi: ERC_20_CONTRACT_ABI,
|
|
124
|
+
functionName: 'approve',
|
|
125
|
+
args: [approvedSpenderAddress || targetContractAddress, price]
|
|
126
|
+
});
|
|
127
|
+
const transactions = [
|
|
128
|
+
...(isApproved
|
|
129
|
+
? []
|
|
130
|
+
: [
|
|
131
|
+
{
|
|
132
|
+
to: currencyAddress,
|
|
133
|
+
data: approveTxData,
|
|
134
|
+
chainId
|
|
135
|
+
}
|
|
136
|
+
]),
|
|
137
|
+
{
|
|
138
|
+
to: targetContractAddress,
|
|
139
|
+
data: txData,
|
|
140
|
+
chainId,
|
|
141
|
+
...(isNativeTokenSelectedCurrency
|
|
142
|
+
? {
|
|
143
|
+
value: BigInt(price)
|
|
144
|
+
}
|
|
145
|
+
: {})
|
|
146
|
+
}
|
|
147
|
+
];
|
|
148
|
+
const txHash = await sendTransactions({
|
|
149
|
+
chainId,
|
|
150
|
+
senderAddress: userAddress,
|
|
151
|
+
publicClient,
|
|
152
|
+
walletClient,
|
|
153
|
+
indexerClient,
|
|
154
|
+
connector,
|
|
155
|
+
transactions,
|
|
156
|
+
transactionConfirmations,
|
|
157
|
+
waitConfirmationForLastTransaction: false
|
|
158
|
+
});
|
|
159
|
+
analytics?.track({
|
|
160
|
+
event: 'SEND_TRANSACTION_REQUEST',
|
|
161
|
+
props: {
|
|
162
|
+
...supplementaryAnalyticsInfo,
|
|
163
|
+
type: 'crypto',
|
|
164
|
+
source: EVENT_SOURCE,
|
|
165
|
+
chainId: String(chainId),
|
|
166
|
+
listedCurrency: selectedCurrency.address,
|
|
167
|
+
purchasedCurrency: selectedCurrency.address,
|
|
168
|
+
origin: window.location.origin,
|
|
169
|
+
from: userAddress,
|
|
170
|
+
to: targetContractAddress,
|
|
171
|
+
item_ids: JSON.stringify(collectibles.map(c => c.tokenId)),
|
|
172
|
+
item_quantities: JSON.stringify(collectibles.map(c => c.quantity)),
|
|
173
|
+
currencySymbol: dataCurrencyInfo?.symbol || '',
|
|
174
|
+
collectionAddress,
|
|
175
|
+
txHash
|
|
176
|
+
},
|
|
177
|
+
nums: {
|
|
178
|
+
currencyValue: Number(price),
|
|
179
|
+
currencyValueDecimal: Number(formatUnits(BigInt(price), dataCurrencyInfo?.decimals || 18))
|
|
180
|
+
}
|
|
181
|
+
});
|
|
182
|
+
closeSelectPaymentModal();
|
|
183
|
+
skipOnCloseCallback();
|
|
184
|
+
openTransactionStatusModal({
|
|
185
|
+
chainId,
|
|
186
|
+
currencyAddress: selectedCurrency.address,
|
|
187
|
+
collectionAddress,
|
|
188
|
+
txHash,
|
|
189
|
+
items: collectibles.map(collectible => ({
|
|
190
|
+
tokenId: collectible.tokenId,
|
|
191
|
+
quantity: collectible.quantity,
|
|
192
|
+
decimals: collectible.decimals,
|
|
193
|
+
price: collectible.price || price
|
|
194
|
+
})),
|
|
195
|
+
onSuccess: () => {
|
|
196
|
+
clearCachedBalances();
|
|
197
|
+
onSuccess(txHash);
|
|
198
|
+
},
|
|
199
|
+
onClose
|
|
200
|
+
});
|
|
201
|
+
}
|
|
202
|
+
catch (e) {
|
|
203
|
+
console.error('Failed to purchase...', e);
|
|
204
|
+
onError(e);
|
|
205
|
+
setIsError(true);
|
|
206
|
+
}
|
|
207
|
+
setIsPurchasing(false);
|
|
208
|
+
};
|
|
209
|
+
const onClickPurchaseSwap = async () => {
|
|
210
|
+
if (!walletClient || !userAddress || !publicClient || !userAddress || !connector || !swapQuote) {
|
|
211
|
+
return;
|
|
212
|
+
}
|
|
213
|
+
setIsPurchasing(true);
|
|
214
|
+
setIsError(false);
|
|
215
|
+
try {
|
|
216
|
+
const walletClientChainId = await walletClient.getChainId();
|
|
217
|
+
if (walletClientChainId !== chainId) {
|
|
218
|
+
await walletClient.switchChain({ id: chainId });
|
|
219
|
+
}
|
|
220
|
+
const approveTxData = encodeFunctionData({
|
|
221
|
+
abi: ERC_20_CONTRACT_ABI,
|
|
222
|
+
functionName: 'approve',
|
|
223
|
+
args: [approvedSpenderAddress || targetContractAddress, price]
|
|
224
|
+
});
|
|
225
|
+
const isSwapNativeToken = compareAddress(zeroAddress, selectedCurrency.address);
|
|
226
|
+
const transactions = [
|
|
227
|
+
// Swap quote optional approve step
|
|
228
|
+
...(swapQuote?.approveData && !isSwapNativeToken
|
|
229
|
+
? [
|
|
230
|
+
{
|
|
231
|
+
to: selectedCurrency.address,
|
|
232
|
+
data: swapQuote.approveData,
|
|
233
|
+
chain: chainId
|
|
234
|
+
}
|
|
235
|
+
]
|
|
236
|
+
: []),
|
|
237
|
+
// Swap quote tx
|
|
238
|
+
{
|
|
239
|
+
to: swapQuote.to,
|
|
240
|
+
data: swapQuote.transactionData,
|
|
241
|
+
chain: chainId,
|
|
242
|
+
...(isSwapNativeToken
|
|
243
|
+
? {
|
|
244
|
+
value: BigInt(swapQuote.transactionValue)
|
|
245
|
+
}
|
|
246
|
+
: {})
|
|
247
|
+
},
|
|
248
|
+
// Actual transaction optional approve step
|
|
249
|
+
...(isApproved || isNativeTokenSelectedCurrency
|
|
250
|
+
? []
|
|
251
|
+
: [
|
|
252
|
+
{
|
|
253
|
+
to: currencyAddress,
|
|
254
|
+
data: approveTxData,
|
|
255
|
+
chainId: chainId
|
|
256
|
+
}
|
|
257
|
+
]),
|
|
258
|
+
// transaction on the contract
|
|
259
|
+
{
|
|
260
|
+
to: targetContractAddress,
|
|
261
|
+
data: txData,
|
|
262
|
+
chainId,
|
|
263
|
+
...(isNativeToken
|
|
264
|
+
? {
|
|
265
|
+
value: BigInt(price)
|
|
266
|
+
}
|
|
267
|
+
: {})
|
|
268
|
+
}
|
|
269
|
+
];
|
|
270
|
+
const txHash = await sendTransactions({
|
|
271
|
+
chainId,
|
|
272
|
+
senderAddress: userAddress,
|
|
273
|
+
publicClient,
|
|
274
|
+
walletClient,
|
|
275
|
+
indexerClient,
|
|
276
|
+
connector,
|
|
277
|
+
transactions,
|
|
278
|
+
transactionConfirmations,
|
|
279
|
+
waitConfirmationForLastTransaction: false
|
|
280
|
+
});
|
|
281
|
+
analytics?.track({
|
|
282
|
+
event: 'SEND_TRANSACTION_REQUEST',
|
|
283
|
+
props: {
|
|
284
|
+
...supplementaryAnalyticsInfo,
|
|
285
|
+
type: 'crypto',
|
|
286
|
+
source: EVENT_SOURCE,
|
|
287
|
+
chainId: String(chainId),
|
|
288
|
+
listedCurrency: selectedCurrency.address,
|
|
289
|
+
purchasedCurrency: currencyAddress,
|
|
290
|
+
origin: window.location.origin,
|
|
291
|
+
from: userAddress,
|
|
292
|
+
to: targetContractAddress,
|
|
293
|
+
item_ids: JSON.stringify(collectibles.map(c => c.tokenId)),
|
|
294
|
+
item_quantities: JSON.stringify(collectibles.map(c => c.quantity)),
|
|
295
|
+
currencySymbol: dataCurrencyInfo?.symbol || '',
|
|
296
|
+
collectionAddress,
|
|
297
|
+
txHash
|
|
298
|
+
},
|
|
299
|
+
nums: {
|
|
300
|
+
currencyValue: Number(price),
|
|
301
|
+
currencyValueDecimal: Number(formatUnits(BigInt(price), dataCurrencyInfo?.decimals || 18))
|
|
302
|
+
}
|
|
303
|
+
});
|
|
304
|
+
closeSelectPaymentModal();
|
|
305
|
+
skipOnCloseCallback();
|
|
306
|
+
openTransactionStatusModal({
|
|
307
|
+
chainId,
|
|
308
|
+
currencyAddress: selectedCurrency.address,
|
|
309
|
+
collectionAddress,
|
|
310
|
+
txHash,
|
|
311
|
+
items: collectibles.map(collectible => ({
|
|
312
|
+
tokenId: collectible.tokenId,
|
|
313
|
+
quantity: collectible.quantity,
|
|
314
|
+
decimals: collectible.decimals,
|
|
315
|
+
price: collectible.price || price
|
|
316
|
+
})),
|
|
317
|
+
onSuccess: () => {
|
|
318
|
+
clearCachedBalances();
|
|
319
|
+
onSuccess(txHash);
|
|
320
|
+
},
|
|
321
|
+
onClose
|
|
322
|
+
});
|
|
323
|
+
}
|
|
324
|
+
catch (e) {
|
|
325
|
+
console.error('Failed to purchase...', e);
|
|
326
|
+
onError(e);
|
|
327
|
+
setIsError(true);
|
|
328
|
+
}
|
|
329
|
+
setIsPurchasing(false);
|
|
330
|
+
};
|
|
331
|
+
const onClickPurchase = () => {
|
|
332
|
+
if (compareAddress(selectedCurrency.address, currencyAddress)) {
|
|
333
|
+
onPurchaseMainCurrency();
|
|
334
|
+
}
|
|
335
|
+
else {
|
|
336
|
+
onClickPurchaseSwap();
|
|
337
|
+
}
|
|
338
|
+
};
|
|
339
|
+
const onClickAddFunds = () => {
|
|
340
|
+
const getNetworks = () => {
|
|
341
|
+
const network = findSupportedNetwork(chainId);
|
|
342
|
+
return network?.name?.toLowerCase();
|
|
343
|
+
};
|
|
344
|
+
skipOnCloseCallback();
|
|
345
|
+
closeSelectPaymentModal();
|
|
346
|
+
triggerAddFunds({
|
|
347
|
+
walletAddress: userAddress || '',
|
|
348
|
+
provider: onRampProvider || TransactionOnRampProvider.sardine,
|
|
349
|
+
networks: getNetworks(),
|
|
350
|
+
defaultCryptoCurrency: dataCurrencyInfo?.symbol || '',
|
|
351
|
+
onClose: selectPaymentSettings?.onClose
|
|
352
|
+
});
|
|
353
|
+
};
|
|
354
|
+
const TokenSelector = () => {
|
|
355
|
+
return (_jsxs("div", { onClick: () => {
|
|
356
|
+
setNavigation({
|
|
357
|
+
location: 'token-selection',
|
|
358
|
+
params: {
|
|
359
|
+
selectedCurrency: {
|
|
360
|
+
address: selectedCurrency.address,
|
|
361
|
+
chainId: Number(selectedCurrency.chainId)
|
|
362
|
+
}
|
|
363
|
+
}
|
|
364
|
+
});
|
|
365
|
+
}, className: "flex flex-row gap-2 justify-between items-center p-2 bg-button-glass rounded-full cursor-pointer select-none", children: [_jsx(TokenImage, { disableAnimation: true, size: "sm", src: selectedCurrencyInfo?.logoURI, withNetwork: Number(selectedCurrency.chainId) }), _jsx(Text, { variant: "small", color: "text100", fontWeight: "bold", children: selectedCurrencyInfo?.symbol }), _jsx("div", { className: "text-primary", children: _jsx(ChevronDownIcon, { size: "md" }) })] }));
|
|
366
|
+
};
|
|
367
|
+
if (isLoading) {
|
|
368
|
+
return (_jsxs("div", { className: "flex flex-col gap-3 justify-center items-center h-full", children: [_jsx(Spinner, {}), _jsx(Text, { color: "text50", fontWeight: "medium", variant: "xsmall", children: "Fetching best crypto price for this purchase" })] }));
|
|
369
|
+
}
|
|
370
|
+
if (isInsufficientBalance) {
|
|
371
|
+
const formattedBalance = formatUnits(BigInt(tokenBalance?.balance || '0'), selectedCurrencyInfo?.decimals || 18);
|
|
372
|
+
const displayBalance = formatDisplay(formattedBalance, {
|
|
373
|
+
disableScientificNotation: true,
|
|
374
|
+
disableCompactNotation: true,
|
|
375
|
+
significantDigits: 6
|
|
376
|
+
});
|
|
377
|
+
return (_jsxs("div", { className: "flex flex-col justify-center items-center h-full w-full gap-3", children: [_jsxs("div", { className: "flex flex-row justify-between items-center w-full", children: [_jsxs("div", { className: "flex flex-col gap-0.5", children: [_jsx(Text, { variant: "xsmall", color: "negative", fontWeight: "bold", style: {
|
|
378
|
+
fontSize: '24px'
|
|
379
|
+
}, children: displayPrice }), _jsxs("div", { className: "flex flex-row gap-1 items-center", children: [_jsx("div", { className: "text-negative", children: _jsx(WarningIcon, { style: { width: '14px', height: '14px' } }) }), _jsx(Text, { color: "negative", variant: "xsmall", fontWeight: "normal", children: "Insufficient funds" })] }), _jsxs(Text, { color: "negative", variant: "xsmall", fontWeight: "normal", children: ["Balance: ", displayBalance, " ", selectedCurrencyInfo?.symbol] })] }), _jsx("div", { children: _jsx(TokenSelector, {}) })] }), _jsx(Button, { label: "Add Funds", className: "w-full", shape: "square", variant: "glass", leftIcon: () => _jsx(AddIcon, { size: "md" }), onClick: onClickAddFunds })] }));
|
|
380
|
+
}
|
|
381
|
+
return (_jsxs("div", { className: "flex flex-col justify-center items-center h-full w-full gap-3", children: [_jsxs("div", { className: "flex flex-row justify-between items-center w-full", children: [_jsxs("div", { className: "flex flex-col gap-0", children: [_jsx(Text, { variant: "xsmall", color: "text100", fontWeight: "bold", style: {
|
|
382
|
+
fontSize: '24px'
|
|
383
|
+
}, children: displayPrice }), _jsxs("div", { children: [_jsxs(Text, { color: "text50", variant: "xsmall", fontWeight: "normal", children: ["~$", priceFiat, " USD"] }), _jsx(Text, { color: "text50", fontWeight: "bold", style: {
|
|
384
|
+
fontSize: '10px'
|
|
385
|
+
}, children: "\u00A0(fees included)" })] })] }), _jsx("div", { children: _jsx(TokenSelector, {}) })] }), _jsxs("div", { className: "flex flex-col justify-start items-center w-full gap-1", children: [isError && (_jsx("div", { className: "flex flex-col justify-start items-center w-full", children: _jsx(Text, { variant: "xsmall", color: "negative", children: "An error occurred. Please try again." }) })), _jsx(Button, { disabled: isPurchasing, label: "Confirm payment", className: "w-full", shape: "square", variant: "primary", onClick: onClickPurchase })] })] }));
|
|
386
|
+
};
|
|
387
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../src/views/Checkout/PaymentMethodSelect/PayWithCrypto/index.tsx"],"names":[],"mappings":";AAAA,OAAO,EACL,cAAc,EACd,0BAA0B,EAC1B,aAAa,EACb,gBAAgB,EAChB,iCAAiC,EACjC,mBAAmB,EACpB,MAAM,qBAAqB,CAAA;AAC5B,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,eAAe,EAAE,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAA;AACpH,OAAO,EACL,sBAAsB,EACtB,gBAAgB,EAChB,kBAAkB,EAClB,eAAe,EACf,0BAA0B,EAC1B,gBAAgB,EACjB,MAAM,mBAAmB,CAAA;AAC1B,OAAO,EAAE,yBAAyB,EAAE,MAAM,yBAAyB,CAAA;AACnE,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAA;AAC1D,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;AAChC,OAAO,EAAE,kBAAkB,EAAE,WAAW,EAAE,WAAW,EAAY,MAAM,MAAM,CAAA;AAC7E,OAAO,EAAE,UAAU,EAAE,eAAe,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,OAAO,CAAA;AAErF,OAAO,EAAE,mBAAmB,EAAE,MAAM,8BAA8B,CAAA;AAClE,OAAO,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAA;AAE7D,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAA;AAC7D,OAAO,EAAE,qBAAqB,EAAE,yBAAyB,EAAE,MAAM,4BAA4B,CAAA;AAC7F,OAAO,EAAE,qBAAqB,EAAE,MAAM,4CAA4C,CAAA;AAMlF,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,EAAE,mBAAmB,EAAyB,EAAE,EAAE;IACjF,MAAM,EAAE,eAAe,EAAE,GAAG,gBAAgB,EAAE,CAAA;IAC9C,MAAM,EAAE,mBAAmB,EAAE,GAAG,sBAAsB,EAAE,CAAA;IACxD,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,QAAQ,CAAU,KAAK,CAAC,CAAA;IAChE,MAAM,EAAE,0BAA0B,EAAE,GAAG,yBAAyB,EAAE,CAAA;IAClE,MAAM,EAAE,qBAAqB,GAAG,EAA2B,EAAE,uBAAuB,EAAE,GAAG,qBAAqB,EAAE,CAAA;IAChH,MAAM,EAAE,SAAS,EAAE,GAAG,mBAAmB,EAAE,CAAA;IAC3C,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAU,KAAK,CAAC,CAAA;IACtD,MAAM,EAAE,UAAU,EAAE,aAAa,EAAE,GAAG,qBAAqB,EAAE,CAAA;IAE7D,MAAM,EACJ,KAAK,EACL,YAAY,EACZ,iBAAiB,EACjB,eAAe,EACf,qBAAqB,EACrB,sBAAsB,EACtB,KAAK,EACL,MAAM,EACN,wBAAwB,GAAG,iCAAiC,EAC5D,cAAc,EACd,SAAS,GAAG,GAAG,EAAE,GAAE,CAAC,EACpB,OAAO,GAAG,GAAG,EAAE,GAAE,CAAC,EAClB,OAAO,GAAG,GAAG,EAAE,GAAE,CAAC,EAClB,0BAA0B,EAC1B,WAAW,EACZ,GAAG,qBAAqB,CAAA;IAEzB,MAAM,OAAO,GAAG,oBAAoB,CAAC,KAAK,CAAC,CAAA;IAC3C,MAAM,OAAO,GAAG,OAAO,EAAE,OAAO,IAAI,GAAG,CAAA;IAEvC,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,GAAG,UAAU,EAAE,CAAA;IACxD,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,GAAG,eAAe,CAAC;QAC7C,OAAO,EAAE,OAAO;KACjB,CAAC,CAAA;IACF,MAAM,YAAY,GAAG,eAAe,CAAC;QACnC,OAAO,EAAE,OAAO;KACjB,CAAC,CAAA;IACF,MAAM,aAAa,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAA;IAE/C,MAAM,gBAAgB,GAAG,UAAU,CAAC,MAAM,EAAE,gBAAgB,IAAI;QAC9D,OAAO,EAAE,eAAe;QACxB,OAAO,EAAE,KAAK;KACf,CAAA;IAED,MAAM,aAAa,GAAG,cAAc,CAAC,eAAe,EAAE,WAAW,CAAC,CAAA;IAClE,MAAM,6BAA6B,GAAG,cAAc,CAAC,gBAAgB,CAAC,OAAO,EAAE,WAAW,CAAC,CAAA;IAE3F,MAAM,EAAE,IAAI,EAAE,iBAAiB,EAAE,SAAS,EAAE,sBAAsB,EAAE,GAAG,0BAA0B,CAAC;QAChG,QAAQ,EAAE,CAAC,OAAO,CAAC;QACnB,MAAM,EAAE;YACN,gBAAgB,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,EAAE;YAClD,cAAc,EAAE,0BAA0B,CAAC,GAAG;YAC9C,iBAAiB,EAAE,CAAC,gBAAgB,CAAC,OAAO,CAAC;YAC7C,kBAAkB,EAAE,CAAC,6BAA6B;SACnD;QACD,YAAY,EAAE,IAAI;KACnB,CAAC,CAAA;IAEF,MAAM,EAAE,IAAI,EAAE,cAAc,EAAE,SAAS,EAAE,kBAAkB,EAAE,GAAG,gBAAgB,CAAC;QAC/E;YACE,OAAO;YACP,eAAe,EAAE,gBAAgB,CAAC,OAAO;SAC1C;KACF,CAAC,CAAA;IAEF,MAAM,EAAE,IAAI,EAAE,gBAAgB,EAAE,SAAS,EAAE,qBAAqB,EAAE,GAAG,kBAAkB,CAAC;QACtF,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC;QACxB,eAAe,EAAE,eAAe;KACjC,CAAC,CAAA;IACF,MAAM,iBAAiB,GAAG,CAAC,cAAc,CAAC,gBAAgB,CAAC,OAAO,EAAE,eAAe,CAAC,CAAA;IAEpF,MAAM,EAAE,IAAI,EAAE,wBAAwB,EAAE,SAAS,EAAE,6BAA6B,EAAE,GAAG,kBAAkB,CACrG;QACE,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC;QACxB,eAAe,EAAE,gBAAgB,CAAC,OAAO;KAC1C,EACD;QACE,QAAQ,EAAE,CAAC,iBAAiB;KAC7B,CACF,CAAA;IAED,MAAM,oBAAoB,GAAG,iBAAiB,CAAC,CAAC,CAAC,wBAAwB,CAAC,CAAC,CAAC,gBAAgB,CAAA;IAE5F,MAAM,kBAAkB,GAAG,eAAe,CAAA;IAE1C,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,SAAS,EAAE,kBAAkB,EAAE,GAAG,eAAe,CACxE;QACE,MAAM,EAAE;YACN,aAAa,EAAE,WAAW,IAAI,EAAE;YAChC,cAAc,EAAE,kBAAkB;YAClC,gBAAgB,EAAE,gBAAgB,CAAC,OAAO,IAAI,EAAE;YAChD,aAAa,EAAE,KAAK;YACpB,OAAO,EAAE,OAAO;YAChB,cAAc,EAAE,IAAI;YACpB,WAAW,EAAE,WAAW,IAAI,GAAG;SAChC;KACF,EACD;QACE,QAAQ,EAAE,CAAC,iBAAiB;KAC7B,CACF,CAAA;IAED,MAAM,qBAAqB,GAAG,iBAAiB,CAAC,CAAC,CAAC,SAAS,EAAE,QAAQ,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,CAAA;IAEvF,MAAM,EAAE,IAAI,EAAE,aAAa,EAAE,SAAS,EAAE,kBAAkB,EAAE,GAAG,eAAe,CAAC;QAC7E,GAAG,EAAE,mBAAmB;QACxB,YAAY,EAAE,WAAW;QACzB,OAAO,EAAE,OAAO;QAChB,OAAO,EAAE,eAAsB;QAC/B,IAAI,EAAE,CAAC,WAAW,EAAE,sBAAsB,IAAI,qBAAqB,CAAC;QACpE,KAAK,EAAE;YACL,OAAO,EAAE,CAAC,CAAC,WAAW,IAAI,CAAC,6BAA6B;SACzD;KACF,CAAC,CAAA;IAEF,MAAM,SAAS,GACb,kBAAkB;QAClB,qBAAqB;QACrB,CAAC,kBAAkB,IAAI,CAAC,6BAA6B,CAAC;QACtD,kBAAkB;QAClB,sBAAsB;QACtB,6BAA6B,CAAA;IAE/B,MAAM,YAAY,GAAG,iBAAiB,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,OAAO,CAAC,EAAE,CAC3E,cAAc,CAAC,OAAO,CAAC,eAAe,EAAE,gBAAgB,CAAC,OAAO,CAAC,CAClE,CAAA;IAED,MAAM,qBAAqB,GAAG,YAAY,EAAE,OAAO,IAAI,MAAM,CAAC,YAAY,CAAC,OAAO,CAAC,GAAG,MAAM,CAAC,qBAAqB,CAAC,CAAA;IAEnH,MAAM,UAAU,GAAa,aAAwB,IAAI,MAAM,CAAC,KAAK,CAAC,IAAI,aAAa,CAAA;IAEvF,MAAM,cAAc,GAAG,WAAW,CAAC,MAAM,CAAC,qBAAqB,CAAC,EAAE,oBAAoB,EAAE,QAAQ,IAAI,CAAC,CAAC,CAAA;IACtG,MAAM,YAAY,GAAG,aAAa,CAAC,cAAc,EAAE;QACjD,yBAAyB,EAAE,IAAI;QAC/B,sBAAsB,EAAE,IAAI;QAC5B,iBAAiB,EAAE,CAAC;KACrB,CAAC,CAAA;IAEF,MAAM,gBAAgB,GAAG,cAAc,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,KAAK,IAAI,CAAC,CAAA;IAC9D,MAAM,SAAS,GAAG,CAAC,gBAAgB,GAAG,MAAM,CAAC,cAAc,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAA;IAExE,MAAM,sBAAsB,GAAG,KAAK,IAAI,EAAE;QACxC,IAAI,CAAC,YAAY,IAAI,CAAC,WAAW,IAAI,CAAC,YAAY,IAAI,CAAC,aAAa,IAAI,CAAC,SAAS,EAAE,CAAC;YACnF,OAAM;QACR,CAAC;QAED,eAAe,CAAC,IAAI,CAAC,CAAA;QACrB,UAAU,CAAC,KAAK,CAAC,CAAA;QAEjB,IAAI,CAAC;YACH,MAAM,mBAAmB,GAAG,MAAM,YAAY,CAAC,UAAU,EAAE,CAAA;YAC3D,IAAI,mBAAmB,KAAK,OAAO,EAAE,CAAC;gBACpC,MAAM,YAAY,CAAC,WAAW,CAAC,EAAE,EAAE,EAAE,OAAO,EAAE,CAAC,CAAA;YACjD,CAAC;YAED,MAAM,aAAa,GAAG,kBAAkB,CAAC;gBACvC,GAAG,EAAE,mBAAmB;gBACxB,YAAY,EAAE,SAAS;gBACvB,IAAI,EAAE,CAAC,sBAAsB,IAAI,qBAAqB,EAAE,KAAK,CAAC;aAC/D,CAAC,CAAA;YAEF,MAAM,YAAY,GAAG;gBACnB,GAAG,CAAC,UAAU;oBACZ,CAAC,CAAC,EAAE;oBACJ,CAAC,CAAC;wBACE;4BACE,EAAE,EAAE,eAAsB;4BAC1B,IAAI,EAAE,aAAa;4BACnB,OAAO;yBACR;qBACF,CAAC;gBACN;oBACE,EAAE,EAAE,qBAA4B;oBAChC,IAAI,EAAE,MAAM;oBACZ,OAAO;oBACP,GAAG,CAAC,6BAA6B;wBAC/B,CAAC,CAAC;4BACE,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC;yBACrB;wBACH,CAAC,CAAC,EAAE,CAAC;iBACR;aACF,CAAA;YAED,MAAM,MAAM,GAAG,MAAM,gBAAgB,CAAC;gBACpC,OAAO;gBACP,aAAa,EAAE,WAAW;gBAC1B,YAAY;gBACZ,YAAY;gBACZ,aAAa;gBACb,SAAS;gBACT,YAAY;gBACZ,wBAAwB;gBACxB,kCAAkC,EAAE,KAAK;aAC1C,CAAC,CAAA;YAEF,SAAS,EAAE,KAAK,CAAC;gBACf,KAAK,EAAE,0BAA0B;gBACjC,KAAK,EAAE;oBACL,GAAG,0BAA0B;oBAC7B,IAAI,EAAE,QAAQ;oBACd,MAAM,EAAE,YAAY;oBACpB,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC;oBACxB,cAAc,EAAE,gBAAgB,CAAC,OAAO;oBACxC,iBAAiB,EAAE,gBAAgB,CAAC,OAAO;oBAC3C,MAAM,EAAE,MAAM,CAAC,QAAQ,CAAC,MAAM;oBAC9B,IAAI,EAAE,WAAW;oBACjB,EAAE,EAAE,qBAAqB;oBACzB,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;oBAC1D,eAAe,EAAE,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;oBAClE,cAAc,EAAE,gBAAgB,EAAE,MAAM,IAAI,EAAE;oBAC9C,iBAAiB;oBACjB,MAAM;iBACP;gBACD,IAAI,EAAE;oBACJ,aAAa,EAAE,MAAM,CAAC,KAAK,CAAC;oBAC5B,oBAAoB,EAAE,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,gBAAgB,EAAE,QAAQ,IAAI,EAAE,CAAC,CAAC;iBAC3F;aACF,CAAC,CAAA;YAEF,uBAAuB,EAAE,CAAA;YAEzB,mBAAmB,EAAE,CAAA;YAErB,0BAA0B,CAAC;gBACzB,OAAO;gBACP,eAAe,EAAE,gBAAgB,CAAC,OAAO;gBACzC,iBAAiB;gBACjB,MAAM;gBACN,KAAK,EAAE,YAAY,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;oBACtC,OAAO,EAAE,WAAW,CAAC,OAAO;oBAC5B,QAAQ,EAAE,WAAW,CAAC,QAAQ;oBAC9B,QAAQ,EAAE,WAAW,CAAC,QAAQ;oBAC9B,KAAK,EAAE,WAAW,CAAC,KAAK,IAAI,KAAK;iBAClC,CAAC,CAAC;gBACH,SAAS,EAAE,GAAG,EAAE;oBACd,mBAAmB,EAAE,CAAA;oBACrB,SAAS,CAAC,MAAM,CAAC,CAAA;gBACnB,CAAC;gBACD,OAAO;aACR,CAAC,CAAA;QACJ,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,OAAO,CAAC,KAAK,CAAC,uBAAuB,EAAE,CAAC,CAAC,CAAA;YACzC,OAAO,CAAC,CAAU,CAAC,CAAA;YACnB,UAAU,CAAC,IAAI,CAAC,CAAA;QAClB,CAAC;QAED,eAAe,CAAC,KAAK,CAAC,CAAA;IACxB,CAAC,CAAA;IAED,MAAM,mBAAmB,GAAG,KAAK,IAAI,EAAE;QACrC,IAAI,CAAC,YAAY,IAAI,CAAC,WAAW,IAAI,CAAC,YAAY,IAAI,CAAC,WAAW,IAAI,CAAC,SAAS,IAAI,CAAC,SAAS,EAAE,CAAC;YAC/F,OAAM;QACR,CAAC;QAED,eAAe,CAAC,IAAI,CAAC,CAAA;QACrB,UAAU,CAAC,KAAK,CAAC,CAAA;QAEjB,IAAI,CAAC;YACH,MAAM,mBAAmB,GAAG,MAAM,YAAY,CAAC,UAAU,EAAE,CAAA;YAC3D,IAAI,mBAAmB,KAAK,OAAO,EAAE,CAAC;gBACpC,MAAM,YAAY,CAAC,WAAW,CAAC,EAAE,EAAE,EAAE,OAAO,EAAE,CAAC,CAAA;YACjD,CAAC;YAED,MAAM,aAAa,GAAG,kBAAkB,CAAC;gBACvC,GAAG,EAAE,mBAAmB;gBACxB,YAAY,EAAE,SAAS;gBACvB,IAAI,EAAE,CAAC,sBAAsB,IAAI,qBAAqB,EAAE,KAAK,CAAC;aAC/D,CAAC,CAAA;YAEF,MAAM,iBAAiB,GAAG,cAAc,CAAC,WAAW,EAAE,gBAAgB,CAAC,OAAO,CAAC,CAAA;YAE/E,MAAM,YAAY,GAAG;gBACnB,mCAAmC;gBACnC,GAAG,CAAC,SAAS,EAAE,WAAW,IAAI,CAAC,iBAAiB;oBAC9C,CAAC,CAAC;wBACE;4BACE,EAAE,EAAE,gBAAgB,CAAC,OAAc;4BACnC,IAAI,EAAE,SAAS,CAAC,WAAkB;4BAClC,KAAK,EAAE,OAAO;yBACf;qBACF;oBACH,CAAC,CAAC,EAAE,CAAC;gBACP,gBAAgB;gBAChB;oBACE,EAAE,EAAE,SAAS,CAAC,EAAS;oBACvB,IAAI,EAAE,SAAS,CAAC,eAAsB;oBACtC,KAAK,EAAE,OAAO;oBACd,GAAG,CAAC,iBAAiB;wBACnB,CAAC,CAAC;4BACE,KAAK,EAAE,MAAM,CAAC,SAAS,CAAC,gBAAgB,CAAC;yBAC1C;wBACH,CAAC,CAAC,EAAE,CAAC;iBACR;gBACD,2CAA2C;gBAC3C,GAAG,CAAC,UAAU,IAAI,6BAA6B;oBAC7C,CAAC,CAAC,EAAE;oBACJ,CAAC,CAAC;wBACE;4BACE,EAAE,EAAE,eAAsB;4BAC1B,IAAI,EAAE,aAAoB;4BAC1B,OAAO,EAAE,OAAO;yBACjB;qBACF,CAAC;gBACN,8BAA8B;gBAC9B;oBACE,EAAE,EAAE,qBAA4B;oBAChC,IAAI,EAAE,MAAa;oBACnB,OAAO;oBACP,GAAG,CAAC,aAAa;wBACf,CAAC,CAAC;4BACE,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC;yBACrB;wBACH,CAAC,CAAC,EAAE,CAAC;iBACR;aACF,CAAA;YAED,MAAM,MAAM,GAAG,MAAM,gBAAgB,CAAC;gBACpC,OAAO;gBACP,aAAa,EAAE,WAAW;gBAC1B,YAAY;gBACZ,YAAY;gBACZ,aAAa;gBACb,SAAS;gBACT,YAAY;gBACZ,wBAAwB;gBACxB,kCAAkC,EAAE,KAAK;aAC1C,CAAC,CAAA;YAEF,SAAS,EAAE,KAAK,CAAC;gBACf,KAAK,EAAE,0BAA0B;gBACjC,KAAK,EAAE;oBACL,GAAG,0BAA0B;oBAC7B,IAAI,EAAE,QAAQ;oBACd,MAAM,EAAE,YAAY;oBACpB,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC;oBACxB,cAAc,EAAE,gBAAgB,CAAC,OAAO;oBACxC,iBAAiB,EAAE,eAAe;oBAClC,MAAM,EAAE,MAAM,CAAC,QAAQ,CAAC,MAAM;oBAC9B,IAAI,EAAE,WAAW;oBACjB,EAAE,EAAE,qBAAqB;oBACzB,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;oBAC1D,eAAe,EAAE,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;oBAClE,cAAc,EAAE,gBAAgB,EAAE,MAAM,IAAI,EAAE;oBAC9C,iBAAiB;oBACjB,MAAM;iBACP;gBACD,IAAI,EAAE;oBACJ,aAAa,EAAE,MAAM,CAAC,KAAK,CAAC;oBAC5B,oBAAoB,EAAE,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,gBAAgB,EAAE,QAAQ,IAAI,EAAE,CAAC,CAAC;iBAC3F;aACF,CAAC,CAAA;YAEF,uBAAuB,EAAE,CAAA;YAEzB,mBAAmB,EAAE,CAAA;YAErB,0BAA0B,CAAC;gBACzB,OAAO;gBACP,eAAe,EAAE,gBAAgB,CAAC,OAAO;gBACzC,iBAAiB;gBACjB,MAAM;gBACN,KAAK,EAAE,YAAY,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;oBACtC,OAAO,EAAE,WAAW,CAAC,OAAO;oBAC5B,QAAQ,EAAE,WAAW,CAAC,QAAQ;oBAC9B,QAAQ,EAAE,WAAW,CAAC,QAAQ;oBAC9B,KAAK,EAAE,WAAW,CAAC,KAAK,IAAI,KAAK;iBAClC,CAAC,CAAC;gBACH,SAAS,EAAE,GAAG,EAAE;oBACd,mBAAmB,EAAE,CAAA;oBACrB,SAAS,CAAC,MAAM,CAAC,CAAA;gBACnB,CAAC;gBACD,OAAO;aACR,CAAC,CAAA;QACJ,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,OAAO,CAAC,KAAK,CAAC,uBAAuB,EAAE,CAAC,CAAC,CAAA;YACzC,OAAO,CAAC,CAAU,CAAC,CAAA;YACnB,UAAU,CAAC,IAAI,CAAC,CAAA;QAClB,CAAC;QAED,eAAe,CAAC,KAAK,CAAC,CAAA;IACxB,CAAC,CAAA;IAED,MAAM,eAAe,GAAG,GAAG,EAAE;QAC3B,IAAI,cAAc,CAAC,gBAAgB,CAAC,OAAO,EAAE,eAAe,CAAC,EAAE,CAAC;YAC9D,sBAAsB,EAAE,CAAA;QAC1B,CAAC;aAAM,CAAC;YACN,mBAAmB,EAAE,CAAA;QACvB,CAAC;IACH,CAAC,CAAA;IAED,MAAM,eAAe,GAAG,GAAG,EAAE;QAC3B,MAAM,WAAW,GAAG,GAAuB,EAAE;YAC3C,MAAM,OAAO,GAAG,oBAAoB,CAAC,OAAO,CAAC,CAAA;YAC7C,OAAO,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,CAAA;QACrC,CAAC,CAAA;QAED,mBAAmB,EAAE,CAAA;QACrB,uBAAuB,EAAE,CAAA;QACzB,eAAe,CAAC;YACd,aAAa,EAAE,WAAW,IAAI,EAAE;YAChC,QAAQ,EAAE,cAAc,IAAI,yBAAyB,CAAC,OAAO;YAC7D,QAAQ,EAAE,WAAW,EAAE;YACvB,qBAAqB,EAAE,gBAAgB,EAAE,MAAM,IAAI,EAAE;YACrD,OAAO,EAAE,qBAAqB,EAAE,OAAO;SACxC,CAAC,CAAA;IACJ,CAAC,CAAA;IAED,MAAM,aAAa,GAAG,GAAG,EAAE;QACzB,OAAO,CACL,eACE,OAAO,EAAE,GAAG,EAAE;gBACZ,aAAa,CAAC;oBACZ,QAAQ,EAAE,iBAAiB;oBAC3B,MAAM,EAAE;wBACN,gBAAgB,EAAE;4BAChB,OAAO,EAAE,gBAAgB,CAAC,OAAO;4BACjC,OAAO,EAAE,MAAM,CAAC,gBAAgB,CAAC,OAAO,CAAC;yBAC1C;qBACF;iBACF,CAAC,CAAA;YACJ,CAAC,EACD,SAAS,EAAC,8GAA8G,aAExH,KAAC,UAAU,IACT,gBAAgB,QAChB,IAAI,EAAC,IAAI,EACT,GAAG,EAAE,oBAAoB,EAAE,OAAO,EAClC,WAAW,EAAE,MAAM,CAAC,gBAAgB,CAAC,OAAO,CAAC,GAC7C,EACF,KAAC,IAAI,IAAC,OAAO,EAAC,OAAO,EAAC,KAAK,EAAC,SAAS,EAAC,UAAU,EAAC,MAAM,YACpD,oBAAoB,EAAE,MAAM,GACxB,EACP,cAAK,SAAS,EAAC,cAAc,YAC3B,KAAC,eAAe,IAAC,IAAI,EAAC,IAAI,GAAG,GACzB,IACF,CACP,CAAA;IACH,CAAC,CAAA;IAED,IAAI,SAAS,EAAE,CAAC;QACd,OAAO,CACL,eAAK,SAAS,EAAC,wDAAwD,aACrE,KAAC,OAAO,KAAG,EACX,KAAC,IAAI,IAAC,KAAK,EAAC,QAAQ,EAAC,UAAU,EAAC,QAAQ,EAAC,OAAO,EAAC,QAAQ,6DAElD,IACH,CACP,CAAA;IACH,CAAC;IAED,IAAI,qBAAqB,EAAE,CAAC;QAC1B,MAAM,gBAAgB,GAAG,WAAW,CAAC,MAAM,CAAC,YAAY,EAAE,OAAO,IAAI,GAAG,CAAC,EAAE,oBAAoB,EAAE,QAAQ,IAAI,EAAE,CAAC,CAAA;QAChH,MAAM,cAAc,GAAG,aAAa,CAAC,gBAAgB,EAAE;YACrD,yBAAyB,EAAE,IAAI;YAC/B,sBAAsB,EAAE,IAAI;YAC5B,iBAAiB,EAAE,CAAC;SACrB,CAAC,CAAA;QAEF,OAAO,CACL,eAAK,SAAS,EAAC,+DAA+D,aAC5E,eAAK,SAAS,EAAC,mDAAmD,aAChE,eAAK,SAAS,EAAC,uBAAuB,aACpC,KAAC,IAAI,IACH,OAAO,EAAC,QAAQ,EAChB,KAAK,EAAC,UAAU,EAChB,UAAU,EAAC,MAAM,EACjB,KAAK,EAAE;wCACL,QAAQ,EAAE,MAAM;qCACjB,YAEA,YAAY,GACR,EACP,eAAK,SAAS,EAAC,kCAAkC,aAC/C,cAAK,SAAS,EAAC,eAAe,YAC5B,KAAC,WAAW,IAAC,KAAK,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,GAAI,GACrD,EACN,KAAC,IAAI,IAAC,KAAK,EAAC,UAAU,EAAC,OAAO,EAAC,QAAQ,EAAC,UAAU,EAAC,QAAQ,mCAEpD,IACH,EACN,MAAC,IAAI,IAAC,KAAK,EAAC,UAAU,EAAC,OAAO,EAAC,QAAQ,EAAC,UAAU,EAAC,QAAQ,0BAC/C,cAAc,OAAG,oBAAoB,EAAE,MAAM,IAClD,IACH,EACN,wBACE,KAAC,aAAa,KAAG,GACb,IACF,EACN,KAAC,MAAM,IACL,KAAK,EAAC,WAAW,EACjB,SAAS,EAAC,QAAQ,EAClB,KAAK,EAAC,QAAQ,EACd,OAAO,EAAC,OAAO,EACf,QAAQ,EAAE,GAAG,EAAE,CAAC,KAAC,OAAO,IAAC,IAAI,EAAC,IAAI,GAAG,EACrC,OAAO,EAAE,eAAe,GAChB,IACN,CACP,CAAA;IACH,CAAC;IAED,OAAO,CACL,eAAK,SAAS,EAAC,+DAA+D,aAC5E,eAAK,SAAS,EAAC,mDAAmD,aAChE,eAAK,SAAS,EAAC,qBAAqB,aAClC,KAAC,IAAI,IACH,OAAO,EAAC,QAAQ,EAChB,KAAK,EAAC,SAAS,EACf,UAAU,EAAC,MAAM,EACjB,KAAK,EAAE;oCACL,QAAQ,EAAE,MAAM;iCACjB,YAEA,YAAY,GACR,EACP,0BACE,MAAC,IAAI,IAAC,KAAK,EAAC,QAAQ,EAAC,OAAO,EAAC,QAAQ,EAAC,UAAU,EAAC,QAAQ,mBACpD,SAAS,YACP,EACP,KAAC,IAAI,IACH,KAAK,EAAC,QAAQ,EACd,UAAU,EAAC,MAAM,EACjB,KAAK,EAAE;4CACL,QAAQ,EAAE,MAAM;yCACjB,sCAGI,IACH,IACF,EACN,wBACE,KAAC,aAAa,KAAG,GACb,IACF,EAEN,eAAK,SAAS,EAAC,uDAAuD,aACnE,OAAO,IAAI,CACV,cAAK,SAAS,EAAC,iDAAiD,YAC9D,KAAC,IAAI,IAAC,OAAO,EAAC,QAAQ,EAAC,KAAK,EAAC,UAAU,qDAEhC,GACH,CACP,EAED,KAAC,MAAM,IACL,QAAQ,EAAE,YAAY,EACtB,KAAK,EAAC,iBAAiB,EACvB,SAAS,EAAC,QAAQ,EAClB,KAAK,EAAC,QAAQ,EACd,OAAO,EAAC,SAAS,EACjB,OAAO,EAAE,eAAe,GAChB,IACN,IACF,CACP,CAAA;AACH,CAAC,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/views/Checkout/PaymentMethodSelect/index.tsx"],"names":[],"mappings":"AAcA,eAAO,MAAM,gBAAgB,+CAO5B,CAAA;AAED,eAAO,MAAM,sBAAsB,+CAElC,CAAA;AAID,eAAO,MAAM,uBAAuB,+CAkFnC,CAAA"}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { Divider, TabsContent, TabsHeader, TabsRoot, Text } from '@0xsequence/design-system';
|
|
3
|
+
import { useClearCachedBalances } from '@0xsequence/hooks';
|
|
4
|
+
import { useEffect, useRef, useState } from 'react';
|
|
5
|
+
import { NavigationHeaderCheckout } from '../../../components/NavigationHeaderCheckout.js';
|
|
6
|
+
import { HEADER_HEIGHT } from '../../../constants/index.js';
|
|
7
|
+
import { useSelectPaymentModal } from '../../../hooks/index.js';
|
|
8
|
+
import { useSkipOnCloseCallback } from '../../../hooks/useSkipOnCloseCallback.js';
|
|
9
|
+
import { OrderSummary } from './OrderSummary/index.js';
|
|
10
|
+
import { PayWithCreditCardTab } from './PayWithCreditCard/index.js';
|
|
11
|
+
import { PayWithCryptoTab } from './PayWithCrypto/index.js';
|
|
12
|
+
export const PaymentSelection = () => {
|
|
13
|
+
return (_jsxs(_Fragment, { children: [_jsx(PaymentSelectionHeader, {}), _jsx(PaymentSelectionContent, {})] }));
|
|
14
|
+
};
|
|
15
|
+
export const PaymentSelectionHeader = () => {
|
|
16
|
+
return _jsx(NavigationHeaderCheckout, { primaryText: "Checkout" });
|
|
17
|
+
};
|
|
18
|
+
export const PaymentSelectionContent = () => {
|
|
19
|
+
const { selectPaymentSettings = {} } = useSelectPaymentModal();
|
|
20
|
+
const isFirstRender = useRef(true);
|
|
21
|
+
const { collectibles, creditCardProviders = [], onClose = () => { } } = selectPaymentSettings;
|
|
22
|
+
const { skipOnCloseCallback } = useSkipOnCloseCallback(onClose);
|
|
23
|
+
const validCreditCardProviders = creditCardProviders.filter(provider => {
|
|
24
|
+
if (provider === 'transak') {
|
|
25
|
+
return !!selectPaymentSettings?.transakConfig;
|
|
26
|
+
}
|
|
27
|
+
return true;
|
|
28
|
+
});
|
|
29
|
+
const [selectedTab, setSelectedTab] = useState('crypto');
|
|
30
|
+
const { clearCachedBalances } = useClearCachedBalances();
|
|
31
|
+
useEffect(() => {
|
|
32
|
+
clearCachedBalances();
|
|
33
|
+
}, []);
|
|
34
|
+
const isTokenIdUnknown = collectibles.some(collectible => !collectible.tokenId);
|
|
35
|
+
const showCreditCardPayment = validCreditCardProviders.length > 0 && !isTokenIdUnknown;
|
|
36
|
+
const tabs = [
|
|
37
|
+
{ label: 'Crypto', value: 'crypto' },
|
|
38
|
+
...(showCreditCardPayment ? [{ label: 'Credit Card', value: 'credit-card' }] : [])
|
|
39
|
+
];
|
|
40
|
+
const TabWrapper = ({ children }) => {
|
|
41
|
+
return _jsx("div", { className: "w-full bg-background-secondary mt-2 p-3 rounded-xl h-[128px]", children: children });
|
|
42
|
+
};
|
|
43
|
+
return (_jsx(_Fragment, { children: _jsxs("div", { className: "flex flex-col gap-2 items-start w-full pb-0 px-3 h-full transition-opacity duration-200", style: {
|
|
44
|
+
paddingTop: HEADER_HEIGHT
|
|
45
|
+
}, children: [_jsx("div", { className: "flex flex-col w-full gap-2 pt-2", children: _jsx(OrderSummary, {}) }), _jsxs("div", { className: "w-full relative", children: [_jsx("div", { className: "absolute top-[50%] left-[50%] -translate-x-1/2 -translate-y-1/2 bg-background-primary px-2", children: _jsx(Text, { variant: "xsmall", color: "text50", className: "relative top-[-2px]", fontWeight: "normal", children: "Pay with" }) }), _jsx(Divider, { className: "w-full" })] }), _jsxs(TabsRoot, { className: 'w-full', value: selectedTab, onValueChange: value => {
|
|
46
|
+
// There is a bug with the tabs components which causes the tabs
|
|
47
|
+
// to change to the credit card tab upon initial mount.
|
|
48
|
+
if (isFirstRender.current) {
|
|
49
|
+
isFirstRender.current = false;
|
|
50
|
+
return;
|
|
51
|
+
}
|
|
52
|
+
else {
|
|
53
|
+
setSelectedTab(value);
|
|
54
|
+
}
|
|
55
|
+
}, children: [_jsx(TabsHeader, { tabs: tabs, value: selectedTab }), _jsx(TabsContent, { value: "crypto", children: _jsx(TabWrapper, { children: _jsx(PayWithCryptoTab, { skipOnCloseCallback: skipOnCloseCallback }) }) }), _jsx(TabsContent, { value: "credit-card", children: _jsx(TabWrapper, { children: _jsx(PayWithCreditCardTab, { skipOnCloseCallback: skipOnCloseCallback }) }) })] })] }) }));
|
|
56
|
+
};
|
|
57
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/views/Checkout/PaymentMethodSelect/index.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/views/Checkout/TokenSelection/index.tsx"],"names":[],"mappings":"AAaA,eAAO,MAAM,qBAAqB,+CA+JjC,CAAA"}
|
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { compareAddress, ContractVerificationStatus, formatDisplay } from '@0xsequence/connect';
|
|
3
|
+
import { Card, Scroll, SearchInput, Spinner, Text, TokenImage } from '@0xsequence/design-system';
|
|
4
|
+
import { useGetContractInfo, useGetSwapRoutes, useGetTokenBalancesSummary } from '@0xsequence/hooks';
|
|
5
|
+
import { findSupportedNetwork } from '@0xsequence/network';
|
|
6
|
+
import Fuse from 'fuse.js';
|
|
7
|
+
import { useState } from 'react';
|
|
8
|
+
import { formatUnits } from 'viem';
|
|
9
|
+
import { HEADER_HEIGHT } from '../../../constants/index.js';
|
|
10
|
+
import { useNavigationCheckout } from '../../../hooks/useNavigationCheckout.js';
|
|
11
|
+
import { useSelectPaymentModal } from '../../../hooks/useSelectPaymentModal.js';
|
|
12
|
+
export const TokenSelectionContent = () => {
|
|
13
|
+
const [search, setSearch] = useState('');
|
|
14
|
+
const { navigation, setHistory } = useNavigationCheckout();
|
|
15
|
+
const { selectedCurrency } = navigation.params;
|
|
16
|
+
const { selectPaymentSettings } = useSelectPaymentModal();
|
|
17
|
+
const { chain, currencyAddress, recipientAddress, price } = selectPaymentSettings;
|
|
18
|
+
const network = findSupportedNetwork(chain);
|
|
19
|
+
const chainId = network?.chainId || 137;
|
|
20
|
+
const { data: currencyInfoData, isLoading: isLoadingCurrencyInfo } = useGetContractInfo({
|
|
21
|
+
chainID: String(chainId),
|
|
22
|
+
contractAddress: currencyAddress
|
|
23
|
+
});
|
|
24
|
+
const { data: swapRoutes = [], isLoading: swapRoutesIsLoading } = useGetSwapRoutes({
|
|
25
|
+
walletAddress: recipientAddress ?? '',
|
|
26
|
+
chainId,
|
|
27
|
+
toTokenAmount: price,
|
|
28
|
+
toTokenAddress: currencyAddress
|
|
29
|
+
}, { retry: 3 });
|
|
30
|
+
const { data: currencyBalanceDataPaginated, isLoading: currencyBalanceIsLoading } = useGetTokenBalancesSummary({
|
|
31
|
+
chainIds: [chainId],
|
|
32
|
+
filter: {
|
|
33
|
+
accountAddresses: recipientAddress ? [recipientAddress] : [],
|
|
34
|
+
contractStatus: ContractVerificationStatus.ALL,
|
|
35
|
+
contractWhitelist: [currencyAddress, ...swapRoutes.flatMap(swapRoute => swapRoute.fromTokens.map(token => token.address))],
|
|
36
|
+
omitNativeBalances: false
|
|
37
|
+
},
|
|
38
|
+
omitMetadata: true
|
|
39
|
+
});
|
|
40
|
+
const currencyBalanceData = currencyBalanceDataPaginated?.pages?.flatMap(page => page.balances);
|
|
41
|
+
const isLoading = isLoadingCurrencyInfo || swapRoutesIsLoading || currencyBalanceIsLoading;
|
|
42
|
+
const allTokens = [
|
|
43
|
+
{
|
|
44
|
+
name: currencyInfoData?.name || '',
|
|
45
|
+
symbol: currencyInfoData?.symbol || '',
|
|
46
|
+
chainId,
|
|
47
|
+
contractAddress: currencyAddress
|
|
48
|
+
},
|
|
49
|
+
...(swapRoutes?.[0]?.fromTokens?.map(token => ({
|
|
50
|
+
name: token.name,
|
|
51
|
+
symbol: token.symbol,
|
|
52
|
+
chainId: token.chainId,
|
|
53
|
+
contractAddress: token.address
|
|
54
|
+
})) || [])
|
|
55
|
+
];
|
|
56
|
+
const fuzzyTokens = new Fuse(allTokens, {
|
|
57
|
+
keys: ['name', 'symbol']
|
|
58
|
+
});
|
|
59
|
+
const foundTokens = fuzzyTokens.search(search);
|
|
60
|
+
const displayedTokens = search === '' ? allTokens : foundTokens.map(token => token.item);
|
|
61
|
+
const TokenOptions = () => {
|
|
62
|
+
if (displayedTokens.length == 0) {
|
|
63
|
+
return (_jsx("div", { className: "flex flex-col gap-[6px] mt-4 justify-center items-center", children: _jsx(Text, { color: "text100", variant: "small", fontWeight: "normal", children: "No tokens found" }) }));
|
|
64
|
+
}
|
|
65
|
+
return (_jsx("div", { className: "flex flex-col gap-[6px]", children: displayedTokens.map(token => {
|
|
66
|
+
const isMainToken = compareAddress(token.contractAddress, currencyAddress);
|
|
67
|
+
const tokenInfo = isMainToken
|
|
68
|
+
? currencyInfoData
|
|
69
|
+
: swapRoutes[0].fromTokens.find(t => compareAddress(t.address, token.contractAddress));
|
|
70
|
+
const logoUrl = tokenInfo && 'logoURI' in tokenInfo ? tokenInfo.logoURI : tokenInfo?.logoUri;
|
|
71
|
+
const isSelected = chainId == selectedCurrency.chainId && compareAddress(selectedCurrency.address, token.contractAddress);
|
|
72
|
+
const balanceRaw = currencyBalanceData?.find(balance => compareAddress(balance.contractAddress, token.contractAddress))?.balance || '0';
|
|
73
|
+
return (_jsx(TokenOption, { tokenName: tokenInfo?.name || '', chainId: token.chainId, balanceRaw: balanceRaw, decimals: tokenInfo?.decimals || 0, logoUrl: logoUrl || '', symbol: tokenInfo?.symbol || '', isSelected: isSelected, onClick: () => {
|
|
74
|
+
setHistory([
|
|
75
|
+
{
|
|
76
|
+
location: 'payment-method-selection',
|
|
77
|
+
params: {
|
|
78
|
+
selectedCurrency: {
|
|
79
|
+
address: token.contractAddress,
|
|
80
|
+
chainId: token.chainId
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
]);
|
|
85
|
+
} }, token.contractAddress));
|
|
86
|
+
}) }));
|
|
87
|
+
};
|
|
88
|
+
return (_jsxs("div", { className: "px-3 pb-3 h-full w-full", style: {
|
|
89
|
+
paddingTop: HEADER_HEIGHT
|
|
90
|
+
}, children: [_jsx("div", { className: "flex justify-center items-center mb-4", children: _jsx(Text, { color: "text100", variant: "normal", fontWeight: "bold", children: "Select token" }) }), _jsxs("div", { className: "flex flex-col gap-2 h-full", children: [_jsx(SearchInput, { className: "w-full", width: "full", name: "search", placeholder: "Search", value: search, onChange: e => setSearch(e.target.value) }), isLoading && (_jsx("div", { className: "w-full h-full mt-4 flex justify-center items-center", children: _jsx(Spinner, {}) })), !isLoading && (_jsx(Scroll, { shadows: false, className: "h-[206px] scrollbar-color-gray-black scrollbar-width-thin", children: _jsx(TokenOptions, {}) }))] })] }));
|
|
91
|
+
};
|
|
92
|
+
const TokenOption = ({ tokenName, chainId, balanceRaw, decimals, logoUrl, symbol, onClick }) => {
|
|
93
|
+
const network = findSupportedNetwork(chainId);
|
|
94
|
+
const formattedBalance = formatUnits(BigInt(balanceRaw), decimals);
|
|
95
|
+
const displayBalance = formatDisplay(formattedBalance, {
|
|
96
|
+
disableScientificNotation: true,
|
|
97
|
+
disableCompactNotation: true,
|
|
98
|
+
significantDigits: 6
|
|
99
|
+
});
|
|
100
|
+
return (_jsx(Card, { clickable: true, className: "select-none p-3 flex flex-row justify-between items-center cursor-pointer border-1 border-transparent hover:border-[var(--seq-color-border-normal)]", onClick: onClick, children: _jsxs("div", { className: "flex flex-row gap-2 items-center", children: [_jsx(TokenImage, { disableAnimation: true, src: logoUrl, withNetwork: chainId, className: "w-6 h-6" }), _jsxs("div", { className: "flex flex-col gap-0", children: [_jsxs("div", { className: "flex flex-row gap-1", children: [_jsx(Text, { color: "text80", variant: "small", fontWeight: "bold", children: tokenName }), _jsxs(Text, { color: "text50", variant: "xsmall", fontWeight: "bold", children: ["on ", network?.title] })] }), _jsxs(Text, { color: "text50", variant: "xsmall", fontWeight: "normal", children: ["Balance: ", displayBalance, " ", symbol] })] })] }) }));
|
|
101
|
+
};
|
|
102
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/views/Checkout/TokenSelection/index.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/views/Checkout/index.tsx"],"names":[],"mappings":"AAAA,cAAc,2BAA2B,CAAA;AACzC,cAAc,gCAAgC,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/views/Checkout/index.tsx"],"names":[],"mappings":"AAAA,cAAc,2BAA2B,CAAA;AACzC,cAAc,gCAAgC,CAAA"}
|
|
@@ -3,7 +3,7 @@ export * from './TransactionSuccess.js';
|
|
|
3
3
|
export * from './TransactionError.js';
|
|
4
4
|
export * from './CheckoutSelection/index.js';
|
|
5
5
|
export * from './AddFunds.js';
|
|
6
|
-
export * from './
|
|
6
|
+
export * from './Checkout/index.js';
|
|
7
7
|
export * from './TransferToWallet/index.js';
|
|
8
8
|
export * from './TransactionStatus/index.js';
|
|
9
9
|
export * from './Swap/index.js';
|