thirdweb 5.88.6 → 5.88.8-nightly-1fa36c1d56758788a8f9053f8929497bacb2b115-20250224233959
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/contract/deployment/utils/create-2-factory.js +4 -0
- package/dist/cjs/contract/deployment/utils/create-2-factory.js.map +1 -1
- package/dist/cjs/pay/buyWithFiat/getQuote.js +1 -0
- package/dist/cjs/pay/buyWithFiat/getQuote.js.map +1 -1
- package/dist/cjs/pay/buyWithFiat/isSwapRequiredPostOnramp.js +44 -0
- package/dist/cjs/pay/buyWithFiat/isSwapRequiredPostOnramp.js.map +1 -1
- package/dist/cjs/pay/convert/type.js +30 -1
- package/dist/cjs/pay/convert/type.js.map +1 -1
- package/dist/cjs/react/core/hooks/pay/useBuyWithFiatStatus.js +1 -0
- package/dist/cjs/react/core/hooks/pay/useBuyWithFiatStatus.js.map +1 -1
- package/dist/cjs/react/core/hooks/wallets/useSendToken.js +18 -2
- package/dist/cjs/react/core/hooks/wallets/useSendToken.js.map +1 -1
- package/dist/cjs/react/core/providers/invalidateWalletBalance.js +6 -1
- package/dist/cjs/react/core/providers/invalidateWalletBalance.js.map +1 -1
- package/dist/cjs/react/core/utils/account.js +2 -7
- package/dist/cjs/react/core/utils/account.js.map +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/NetworkSelector.js +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/NetworkSelector.js.map +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/icons/currencies/JPYIcon.js +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/icons/currencies/JPYIcon.js.map +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/BuyScreen.js +6 -4
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/BuyScreen.js.map +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/PayWIthCreditCard.js +2 -1
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/PayWIthCreditCard.js.map +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/fiat/CurrencySelection.js +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/fiat/CurrencySelection.js.map +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/fiat/FiatScreenContent.js +0 -13
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/fiat/FiatScreenContent.js.map +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/fiat/FiatSteps.js +6 -26
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/fiat/FiatSteps.js.map +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/fiat/FiatTxDetailsTable.js +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/fiat/FiatTxDetailsTable.js.map +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/fiat/OnRampScreen.js +541 -0
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/fiat/OnRampScreen.js.map +1 -0
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/fiat/currencies.js +23 -0
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/fiat/currencies.js.map +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/main/useUISelectionStates.js +8 -0
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/main/useUISelectionStates.js.map +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/swap/StepConnector.js +21 -0
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/swap/StepConnector.js.map +1 -0
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/swap/SwapSummary.js +4 -9
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/swap/SwapSummary.js.map +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/swap/TokenSelectorScreen.js +2 -2
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/swap/TokenSelectorScreen.js.map +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/swap/WalletRow.js +2 -1
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/swap/WalletRow.js.map +1 -1
- package/dist/cjs/rpc/rpc.js +1 -1
- package/dist/cjs/storage/upload/mobile.js +1 -1
- package/dist/cjs/storage/upload/mobile.js.map +1 -1
- package/dist/cjs/storage/upload/web-node.js +1 -0
- package/dist/cjs/storage/upload/web-node.js.map +1 -1
- package/dist/cjs/version.js +1 -1
- package/dist/cjs/version.js.map +1 -1
- package/dist/cjs/wallets/in-app/web/ecosystem.js +1 -1
- package/dist/cjs/wallets/in-app/web/lib/iframe-wallet.js +1 -1
- package/dist/cjs/wallets/in-app/web/lib/iframe-wallet.js.map +1 -1
- package/dist/esm/contract/deployment/utils/create-2-factory.js +4 -0
- package/dist/esm/contract/deployment/utils/create-2-factory.js.map +1 -1
- package/dist/esm/pay/buyWithFiat/getQuote.js +1 -0
- package/dist/esm/pay/buyWithFiat/getQuote.js.map +1 -1
- package/dist/esm/pay/buyWithFiat/isSwapRequiredPostOnramp.js +43 -0
- package/dist/esm/pay/buyWithFiat/isSwapRequiredPostOnramp.js.map +1 -1
- package/dist/esm/pay/convert/type.js +29 -2
- package/dist/esm/pay/convert/type.js.map +1 -1
- package/dist/esm/react/core/hooks/pay/useBuyWithFiatStatus.js +1 -0
- package/dist/esm/react/core/hooks/pay/useBuyWithFiatStatus.js.map +1 -1
- package/dist/esm/react/core/hooks/wallets/useSendToken.js +19 -3
- package/dist/esm/react/core/hooks/wallets/useSendToken.js.map +1 -1
- package/dist/esm/react/core/providers/invalidateWalletBalance.js +6 -1
- package/dist/esm/react/core/providers/invalidateWalletBalance.js.map +1 -1
- package/dist/esm/react/core/utils/account.js +1 -6
- package/dist/esm/react/core/utils/account.js.map +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/NetworkSelector.js +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/NetworkSelector.js.map +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/icons/currencies/JPYIcon.js +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/icons/currencies/JPYIcon.js.map +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/BuyScreen.js +6 -4
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/BuyScreen.js.map +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/PayWIthCreditCard.js +2 -1
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/PayWIthCreditCard.js.map +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/fiat/CurrencySelection.js +3 -3
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/fiat/CurrencySelection.js.map +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/fiat/FiatScreenContent.js +0 -13
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/fiat/FiatScreenContent.js.map +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/fiat/FiatSteps.js +7 -27
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/fiat/FiatSteps.js.map +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/fiat/FiatTxDetailsTable.js +2 -2
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/fiat/FiatTxDetailsTable.js.map +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/fiat/OnRampScreen.js +538 -0
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/fiat/OnRampScreen.js.map +1 -0
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/fiat/currencies.js +22 -0
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/fiat/currencies.js.map +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/main/useUISelectionStates.js +8 -0
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/main/useUISelectionStates.js.map +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/swap/StepConnector.js +18 -0
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/swap/StepConnector.js.map +1 -0
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/swap/SwapSummary.js +5 -10
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/swap/SwapSummary.js.map +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/swap/TokenSelectorScreen.js +2 -2
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/swap/TokenSelectorScreen.js.map +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/swap/WalletRow.js +2 -1
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/swap/WalletRow.js.map +1 -1
- package/dist/esm/rpc/rpc.js +1 -1
- package/dist/esm/storage/upload/mobile.js +1 -1
- package/dist/esm/storage/upload/mobile.js.map +1 -1
- package/dist/esm/storage/upload/web-node.js +1 -0
- package/dist/esm/storage/upload/web-node.js.map +1 -1
- package/dist/esm/version.js +1 -1
- package/dist/esm/version.js.map +1 -1
- package/dist/esm/wallets/in-app/web/ecosystem.js +1 -1
- package/dist/esm/wallets/in-app/web/lib/iframe-wallet.js +1 -1
- package/dist/esm/wallets/in-app/web/lib/iframe-wallet.js.map +1 -1
- package/dist/types/pay/buyWithFiat/getQuote.d.ts +8 -32
- package/dist/types/pay/buyWithFiat/getQuote.d.ts.map +1 -1
- package/dist/types/pay/buyWithFiat/isSwapRequiredPostOnramp.d.ts +7 -0
- package/dist/types/pay/buyWithFiat/isSwapRequiredPostOnramp.d.ts.map +1 -1
- package/dist/types/pay/convert/type.d.ts +2 -1
- package/dist/types/pay/convert/type.d.ts.map +1 -1
- package/dist/types/react/core/hooks/connection/ConnectButtonProps.d.ts +2 -1
- package/dist/types/react/core/hooks/connection/ConnectButtonProps.d.ts.map +1 -1
- package/dist/types/react/core/hooks/pay/useBuyWithFiatStatus.d.ts +2 -1
- package/dist/types/react/core/hooks/pay/useBuyWithFiatStatus.d.ts.map +1 -1
- package/dist/types/react/core/hooks/wallets/useSendToken.d.ts +6 -1
- package/dist/types/react/core/hooks/wallets/useSendToken.d.ts.map +1 -1
- package/dist/types/react/core/providers/invalidateWalletBalance.d.ts +1 -1
- package/dist/types/react/core/providers/invalidateWalletBalance.d.ts.map +1 -1
- package/dist/types/react/core/utils/account.d.ts +1 -1
- package/dist/types/react/core/utils/account.d.ts.map +1 -1
- package/dist/types/react/web/ui/ConnectWallet/screens/Buy/PayWIthCreditCard.d.ts +1 -1
- package/dist/types/react/web/ui/ConnectWallet/screens/Buy/PayWIthCreditCard.d.ts.map +1 -1
- package/dist/types/react/web/ui/ConnectWallet/screens/Buy/fiat/CurrencySelection.d.ts.map +1 -1
- package/dist/types/react/web/ui/ConnectWallet/screens/Buy/fiat/FiatScreenContent.d.ts.map +1 -1
- package/dist/types/react/web/ui/ConnectWallet/screens/Buy/fiat/FiatSteps.d.ts +7 -2
- package/dist/types/react/web/ui/ConnectWallet/screens/Buy/fiat/FiatSteps.d.ts.map +1 -1
- package/dist/types/react/web/ui/ConnectWallet/screens/Buy/fiat/{FiatFlow.d.ts → OnRampScreen.d.ts} +4 -4
- package/dist/types/react/web/ui/ConnectWallet/screens/Buy/fiat/OnRampScreen.d.ts.map +1 -0
- package/dist/types/react/web/ui/ConnectWallet/screens/Buy/fiat/currencies.d.ts +6 -2
- package/dist/types/react/web/ui/ConnectWallet/screens/Buy/fiat/currencies.d.ts.map +1 -1
- package/dist/types/react/web/ui/ConnectWallet/screens/Buy/main/types.d.ts +0 -1
- package/dist/types/react/web/ui/ConnectWallet/screens/Buy/main/types.d.ts.map +1 -1
- package/dist/types/react/web/ui/ConnectWallet/screens/Buy/swap/StepConnector.d.ts +4 -0
- package/dist/types/react/web/ui/ConnectWallet/screens/Buy/swap/StepConnector.d.ts.map +1 -0
- package/dist/types/react/web/ui/ConnectWallet/screens/Buy/swap/SwapSummary.d.ts.map +1 -1
- package/dist/types/react/web/ui/ConnectWallet/screens/Buy/swap/TokenSelectorScreen.d.ts +1 -0
- package/dist/types/react/web/ui/ConnectWallet/screens/Buy/swap/TokenSelectorScreen.d.ts.map +1 -1
- package/dist/types/react/web/ui/ConnectWallet/screens/Buy/swap/WalletRow.d.ts +1 -0
- package/dist/types/react/web/ui/ConnectWallet/screens/Buy/swap/WalletRow.d.ts.map +1 -1
- package/dist/types/react/web/ui/MediaRenderer/MediaRenderer.d.ts +2 -2
- package/dist/types/react/web/ui/MediaRenderer/ModelViewer.d.ts +1 -1
- package/dist/types/storage/upload/web-node.d.ts.map +1 -1
- package/dist/types/version.d.ts +1 -1
- package/dist/types/version.d.ts.map +1 -1
- package/dist/types/wallets/in-app/web/ecosystem.d.ts +1 -1
- package/package.json +1 -1
- package/src/contract/deployment/utils/create-2-factory.ts +4 -0
- package/src/pay/buyWithFiat/getQuote.ts +9 -33
- package/src/pay/buyWithFiat/isSwapRequiredPostOnramp.ts +56 -0
- package/src/pay/convert/type.ts +30 -1
- package/src/react/core/hooks/connection/ConnectButtonProps.ts +2 -1
- package/src/react/core/hooks/pay/useBuyWithFiatStatus.ts +3 -1
- package/src/react/core/hooks/wallets/useSendToken.ts +19 -3
- package/src/react/core/providers/invalidateWalletBalance.ts +6 -1
- package/src/react/core/utils/account.ts +4 -8
- package/src/react/web/ui/ConnectWallet/NetworkSelector.tsx +1 -1
- package/src/react/web/ui/ConnectWallet/icons/currencies/JPYIcon.tsx +1 -1
- package/src/react/web/ui/ConnectWallet/screens/Buy/BuyScreen.tsx +8 -3
- package/src/react/web/ui/ConnectWallet/screens/Buy/PayWIthCreditCard.tsx +2 -2
- package/src/react/web/ui/ConnectWallet/screens/Buy/fiat/CurrencySelection.tsx +3 -6
- package/src/react/web/ui/ConnectWallet/screens/Buy/fiat/FiatScreenContent.tsx +0 -19
- package/src/react/web/ui/ConnectWallet/screens/Buy/fiat/FiatSteps.tsx +9 -32
- package/src/react/web/ui/ConnectWallet/screens/Buy/fiat/FiatTxDetailsTable.tsx +2 -2
- package/src/react/web/ui/ConnectWallet/screens/Buy/fiat/OnRampScreen.tsx +790 -0
- package/src/react/web/ui/ConnectWallet/screens/Buy/fiat/currencies.tsx +38 -2
- package/src/react/web/ui/ConnectWallet/screens/Buy/main/types.ts +0 -1
- package/src/react/web/ui/ConnectWallet/screens/Buy/main/useUISelectionStates.ts +10 -0
- package/src/react/web/ui/ConnectWallet/screens/Buy/swap/StepConnector.tsx +55 -0
- package/src/react/web/ui/ConnectWallet/screens/Buy/swap/SwapSummary.tsx +18 -41
- package/src/react/web/ui/ConnectWallet/screens/Buy/swap/TokenSelectorScreen.tsx +25 -22
- package/src/react/web/ui/ConnectWallet/screens/Buy/swap/WalletRow.tsx +10 -1
- package/src/rpc/rpc.ts +1 -1
- package/src/storage/upload/mobile.ts +1 -1
- package/src/storage/upload/web-node.ts +1 -0
- package/src/version.ts +1 -1
- package/src/wallets/in-app/web/ecosystem.ts +1 -1
- package/src/wallets/in-app/web/lib/iframe-wallet.ts +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/fiat/FiatFlow.js +0 -63
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/fiat/FiatFlow.js.map +0 -1
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/fiat/FiatStatusScreen.js +0 -116
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/fiat/FiatStatusScreen.js.map +0 -1
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/fiat/FiatFlow.js +0 -60
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/fiat/FiatFlow.js.map +0 -1
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/fiat/FiatStatusScreen.js +0 -113
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/fiat/FiatStatusScreen.js.map +0 -1
- package/dist/types/react/web/ui/ConnectWallet/screens/Buy/fiat/FiatFlow.d.ts.map +0 -1
- package/dist/types/react/web/ui/ConnectWallet/screens/Buy/fiat/FiatStatusScreen.d.ts +0 -24
- package/dist/types/react/web/ui/ConnectWallet/screens/Buy/fiat/FiatStatusScreen.d.ts.map +0 -1
- package/src/react/web/ui/ConnectWallet/screens/Buy/fiat/FiatFlow.tsx +0 -152
- package/src/react/web/ui/ConnectWallet/screens/Buy/fiat/FiatStatusScreen.tsx +0 -258
@@ -0,0 +1,541 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
exports.OnRampScreen = OnRampScreen;
|
4
|
+
const jsx_runtime_1 = require("react/jsx-runtime");
|
5
|
+
const react_query_1 = require("@tanstack/react-query");
|
6
|
+
const react_1 = require("react");
|
7
|
+
const pay_js_1 = require("../../../../../../../analytics/track/pay.js");
|
8
|
+
const utils_js_1 = require("../../../../../../../chains/utils.js");
|
9
|
+
const contract_js_1 = require("../../../../../../../contract/contract.js");
|
10
|
+
const allowance_js_1 = require("../../../../../../../extensions/erc20/__generated__/IERC20/read/allowance.js");
|
11
|
+
const approve_js_1 = require("../../../../../../../extensions/erc20/write/approve.js");
|
12
|
+
const getStatus_js_1 = require("../../../../../../../pay/buyWithFiat/getStatus.js");
|
13
|
+
const isSwapRequiredPostOnramp_js_1 = require("../../../../../../../pay/buyWithFiat/isSwapRequiredPostOnramp.js");
|
14
|
+
const send_batch_transaction_js_1 = require("../../../../../../../transaction/actions/send-batch-transaction.js");
|
15
|
+
const send_transaction_js_1 = require("../../../../../../../transaction/actions/send-transaction.js");
|
16
|
+
const wait_for_tx_receipt_js_1 = require("../../../../../../../transaction/actions/wait-for-tx-receipt.js");
|
17
|
+
const formatNumber_js_1 = require("../../../../../../../utils/formatNumber.js");
|
18
|
+
const is_ecosystem_wallet_js_1 = require("../../../../../../../wallets/ecosystem/is-ecosystem-wallet.js");
|
19
|
+
const index_js_1 = require("../../../../../../../wallets/in-app/core/wallet/index.js");
|
20
|
+
const is_smart_wallet_js_1 = require("../../../../../../../wallets/smart/is-smart-wallet.js");
|
21
|
+
const index_js_2 = require("../../../../../../core/design-system/index.js");
|
22
|
+
const useChainQuery_js_1 = require("../../../../../../core/hooks/others/useChainQuery.js");
|
23
|
+
const useBuyWithCryptoQuote_js_1 = require("../../../../../../core/hooks/pay/useBuyWithCryptoQuote.js");
|
24
|
+
const useBuyWithCryptoStatus_js_1 = require("../../../../../../core/hooks/pay/useBuyWithCryptoStatus.js");
|
25
|
+
const useBuyWithFiatStatus_js_1 = require("../../../../../../core/hooks/pay/useBuyWithFiatStatus.js");
|
26
|
+
const useConnectedWallets_js_1 = require("../../../../../../core/hooks/wallets/useConnectedWallets.js");
|
27
|
+
const invalidateWalletBalance_js_1 = require("../../../../../../core/providers/invalidateWalletBalance.js");
|
28
|
+
const Spacer_js_1 = require("../../../../components/Spacer.js");
|
29
|
+
const Spinner_js_1 = require("../../../../components/Spinner.js");
|
30
|
+
const SwitchNetwork_js_1 = require("../../../../components/SwitchNetwork.js");
|
31
|
+
const basic_js_1 = require("../../../../components/basic.js");
|
32
|
+
const buttons_js_1 = require("../../../../components/buttons.js");
|
33
|
+
const text_js_1 = require("../../../../components/text.js");
|
34
|
+
const TokenSymbol_js_1 = require("../../../../components/token/TokenSymbol.js");
|
35
|
+
const PayTokenIcon_js_1 = require("../PayTokenIcon.js");
|
36
|
+
const openOnRamppopup_js_1 = require("../openOnRamppopup.js");
|
37
|
+
const StepConnector_js_1 = require("../swap/StepConnector.js");
|
38
|
+
const WalletRow_js_1 = require("../swap/WalletRow.js");
|
39
|
+
const pendingSwapTx_js_1 = require("../swap/pendingSwapTx.js");
|
40
|
+
const FiatSteps_js_1 = require("./FiatSteps.js");
|
41
|
+
function OnRampScreen(props) {
|
42
|
+
const connectedWallets = (0, useConnectedWallets_js_1.useConnectedWallets)();
|
43
|
+
const isAutoMode = isInAppSigner({
|
44
|
+
wallet: props.payer.wallet,
|
45
|
+
connectedWallets,
|
46
|
+
});
|
47
|
+
const state = useOnRampScreenState({
|
48
|
+
quote: props.quote,
|
49
|
+
client: props.client,
|
50
|
+
onSuccess: props.onSuccess,
|
51
|
+
onDone: props.onDone,
|
52
|
+
payer: props.payer,
|
53
|
+
theme: props.theme,
|
54
|
+
isAutoMode,
|
55
|
+
});
|
56
|
+
const firstStepChainId = state.steps[0]?.step.token.chainId;
|
57
|
+
const currentStepIndex = state.steps.findIndex((step) => step.status === "pending" || step.status === "actionRequired");
|
58
|
+
return ((0, jsx_runtime_1.jsxs)(basic_js_1.Container, { p: "lg", children: [(0, jsx_runtime_1.jsx)(basic_js_1.ModalHeader, { title: props.title, onBack: props.onBack }), (0, jsx_runtime_1.jsx)(Spacer_js_1.Spacer, { y: "xl" }), (0, jsx_runtime_1.jsx)(basic_js_1.Container, { flex: "column", gap: "xs", center: "y", style: {
|
59
|
+
paddingLeft: index_js_2.spacing.md,
|
60
|
+
}, children: (0, jsx_runtime_1.jsx)(WalletRow_js_1.WalletRow, { client: props.client, address: props.receiverAddress, iconSize: "md", textSize: "sm", label: "Recipient wallet" }) }), (0, jsx_runtime_1.jsx)(Spacer_js_1.Spacer, { y: "md" }), (0, jsx_runtime_1.jsx)(basic_js_1.Container, { flex: "column", children: state.steps.map(({ step, status }, index) => ((0, jsx_runtime_1.jsxs)(basic_js_1.Container, { flex: "column", children: [(0, jsx_runtime_1.jsx)(FiatSteps_js_1.StepContainer, { state: status, index: index, style: {
|
61
|
+
flex: "1",
|
62
|
+
}, children: (0, jsx_runtime_1.jsx)(StepUI, { step: step, client: props.client, payer: props.payer, index: index }) }), index < state.steps.length - 1 && ((0, jsx_runtime_1.jsx)(StepConnector_js_1.StepConnectorArrow, { active: index === currentStepIndex }))] }, step.action))) }), (0, jsx_runtime_1.jsx)(Spacer_js_1.Spacer, { y: "md" }), (0, jsx_runtime_1.jsx)(text_js_1.Text, { size: "xs", color: "secondaryText", center: true, style: { padding: `0 ${index_js_2.spacing.xl}` }, children: "Keep this window open until all transactions are complete." }), (0, jsx_runtime_1.jsx)(Spacer_js_1.Spacer, { y: "lg" }), (0, jsx_runtime_1.jsx)(basic_js_1.Container, { flex: "column", gap: "md", children: !state.isDone &&
|
63
|
+
firstStepChainId &&
|
64
|
+
firstStepChainId !== props.payer.chain.id ? ((0, jsx_runtime_1.jsx)(SwitchNetwork_js_1.SwitchNetworkButton, { fullWidth: true, variant: "accent", switchChain: async () => {
|
65
|
+
await props.payer.wallet.switchChain((0, utils_js_1.getCachedChain)(firstStepChainId));
|
66
|
+
} })) : ((0, jsx_runtime_1.jsxs)(buttons_js_1.Button, { variant: "accent", gap: "sm", fullWidth: true, onClick: state.handleContinue, disabled: state.isLoading, children: [state.isLoading
|
67
|
+
? "Processing"
|
68
|
+
: state.isDone
|
69
|
+
? props.transactionMode
|
70
|
+
? "Continue Transaction"
|
71
|
+
: "Done"
|
72
|
+
: state.isFailed
|
73
|
+
? "Retry"
|
74
|
+
: "Continue", state.isLoading && (0, jsx_runtime_1.jsx)(Spinner_js_1.Spinner, { size: "sm", color: "primaryText" })] })) })] }));
|
75
|
+
}
|
76
|
+
function StepUI(props) {
|
77
|
+
const { step, client } = props;
|
78
|
+
const chain = (0, useChainQuery_js_1.useChainName)((0, utils_js_1.getCachedChain)(step.token.chainId));
|
79
|
+
return ((0, jsx_runtime_1.jsx)(basic_js_1.Container, { flex: "column", gap: "xs", py: "3xs", children: (0, jsx_runtime_1.jsxs)(basic_js_1.Container, { flex: "row", center: "y", gap: "sm", style: {
|
80
|
+
display: "flex",
|
81
|
+
justifyContent: "space-between",
|
82
|
+
flexWrap: "nowrap",
|
83
|
+
}, children: [(0, jsx_runtime_1.jsx)(PayTokenIcon_js_1.PayTokenIcon, { chain: (0, utils_js_1.getCachedChain)(step.token.chainId), client: client, size: "md", token: {
|
84
|
+
address: step.token.tokenAddress,
|
85
|
+
} }), (0, jsx_runtime_1.jsxs)(basic_js_1.Container, { flex: "column", gap: "3xs", center: "y", style: { flex: "1" }, children: [(0, jsx_runtime_1.jsx)(text_js_1.Text, { size: "sm", color: "primaryText", children: step.action.charAt(0).toUpperCase() + step.action.slice(1) }), (0, jsx_runtime_1.jsxs)(basic_js_1.Container, { flex: "row", gap: "xs", center: "y", style: {
|
86
|
+
display: "flex",
|
87
|
+
justifyContent: "space-between",
|
88
|
+
flexWrap: "nowrap",
|
89
|
+
}, children: [(0, jsx_runtime_1.jsxs)(basic_js_1.Container, { flex: "row", gap: "xxs", center: "y", style: {
|
90
|
+
flex: "1 1 60%",
|
91
|
+
minWidth: 0,
|
92
|
+
maxWidth: "60%",
|
93
|
+
overflow: "hidden",
|
94
|
+
flexWrap: "nowrap",
|
95
|
+
}, children: [(0, jsx_runtime_1.jsx)(text_js_1.Text, { size: "sm", color: "primaryText", children: (0, formatNumber_js_1.formatNumber)(Number(step.amount), 5) }), (0, jsx_runtime_1.jsx)(TokenSymbol_js_1.TokenSymbol, { token: {
|
96
|
+
address: step.token.tokenAddress,
|
97
|
+
name: step.token.name || "",
|
98
|
+
symbol: step.token.symbol || "",
|
99
|
+
}, chain: (0, utils_js_1.getCachedChain)(step.token.chainId), size: "sm", color: "secondaryText" })] }), (0, jsx_runtime_1.jsx)(basic_js_1.Container, { flex: "row", gap: "xs", center: "y", style: {
|
100
|
+
flex: "1 1 40%",
|
101
|
+
maxWidth: "40%",
|
102
|
+
minWidth: 0,
|
103
|
+
justifyContent: "flex-end",
|
104
|
+
flexWrap: "nowrap",
|
105
|
+
}, children: (0, jsx_runtime_1.jsx)(text_js_1.Text, { size: "xs", style: {
|
106
|
+
overflow: "hidden",
|
107
|
+
textOverflow: "ellipsis",
|
108
|
+
whiteSpace: "nowrap",
|
109
|
+
}, children: chain.name }) })] })] })] }) }));
|
110
|
+
}
|
111
|
+
function useOnRampScreenState(props) {
|
112
|
+
const onRampSteps = (0, isSwapRequiredPostOnramp_js_1.getOnRampSteps)(props.quote);
|
113
|
+
const [currentStepIndex, setCurrentStepIndex] = (0, react_1.useState)(0);
|
114
|
+
const [swapTxHash, setSwapTxHash] = (0, react_1.useState)();
|
115
|
+
const [popupWindow, setPopupWindow] = (0, react_1.useState)(null);
|
116
|
+
// Track onramp status
|
117
|
+
const { uiStatus: fiatOnrampStatus } = useOnRampStatus({
|
118
|
+
intentId: props.quote.intentId,
|
119
|
+
client: props.client,
|
120
|
+
onSuccess: (status) => {
|
121
|
+
if (onRampSteps.length === 1) {
|
122
|
+
// If only one step, this is the final success
|
123
|
+
props.onSuccess(status);
|
124
|
+
}
|
125
|
+
else {
|
126
|
+
// Move to next step (swap)
|
127
|
+
setCurrentStepIndex((prev) => prev + 1);
|
128
|
+
}
|
129
|
+
},
|
130
|
+
openedWindow: popupWindow,
|
131
|
+
});
|
132
|
+
// Get quote for current swap/bridge step if needed
|
133
|
+
const previousStep = onRampSteps[currentStepIndex - 1];
|
134
|
+
const currentStep = onRampSteps[currentStepIndex];
|
135
|
+
const swapQuoteQuery = (0, useBuyWithCryptoQuote_js_1.useBuyWithCryptoQuote)(previousStep && currentStep
|
136
|
+
? {
|
137
|
+
fromChainId: previousStep.token.chainId,
|
138
|
+
fromTokenAddress: previousStep.token.tokenAddress,
|
139
|
+
toAmount: currentStep.amount,
|
140
|
+
toChainId: currentStep.token.chainId,
|
141
|
+
toTokenAddress: currentStep.token.tokenAddress,
|
142
|
+
fromAddress: props.payer.account.address,
|
143
|
+
toAddress: props.payer.account.address,
|
144
|
+
client: props.client,
|
145
|
+
}
|
146
|
+
: undefined);
|
147
|
+
// Handle swap execution
|
148
|
+
const swapMutation = useSwapMutation({
|
149
|
+
client: props.client,
|
150
|
+
payer: props.payer,
|
151
|
+
isFiatFlow: true,
|
152
|
+
});
|
153
|
+
// Track swap status
|
154
|
+
const { uiStatus: swapStatus } = useSwapStatus({
|
155
|
+
client: props.client,
|
156
|
+
transactionHash: swapTxHash?.hash,
|
157
|
+
chainId: swapTxHash?.chainId,
|
158
|
+
onSuccess: () => {
|
159
|
+
if (currentStepIndex === onRampSteps.length - 1) {
|
160
|
+
// Last step completed - call final success
|
161
|
+
(0, getStatus_js_1.getBuyWithFiatStatus)({
|
162
|
+
intentId: props.quote.intentId,
|
163
|
+
client: props.client,
|
164
|
+
}).then(props.onSuccess);
|
165
|
+
}
|
166
|
+
else {
|
167
|
+
// Reset swap state before moving to next step
|
168
|
+
setSwapTxHash(undefined);
|
169
|
+
swapMutation.reset();
|
170
|
+
// Move to next step
|
171
|
+
setCurrentStepIndex((prev) => prev + 1);
|
172
|
+
}
|
173
|
+
},
|
174
|
+
});
|
175
|
+
// Map steps to their current status
|
176
|
+
const steps = onRampSteps.map((step, index) => {
|
177
|
+
let status = "unknown";
|
178
|
+
if (index === 0) {
|
179
|
+
// First step (onramp) status
|
180
|
+
status = fiatOnrampStatus;
|
181
|
+
}
|
182
|
+
else if (index < currentStepIndex) {
|
183
|
+
// Previous steps are completed
|
184
|
+
status = "completed";
|
185
|
+
}
|
186
|
+
else if (index === currentStepIndex) {
|
187
|
+
// Current step - could be swap or bridge
|
188
|
+
if (swapQuoteQuery.isLoading || swapMutation.isPending) {
|
189
|
+
status = "pending";
|
190
|
+
}
|
191
|
+
else if (swapQuoteQuery.error || swapMutation.error) {
|
192
|
+
status = "failed";
|
193
|
+
}
|
194
|
+
else if (swapTxHash) {
|
195
|
+
status = swapStatus;
|
196
|
+
}
|
197
|
+
else {
|
198
|
+
status = "actionRequired";
|
199
|
+
}
|
200
|
+
}
|
201
|
+
return {
|
202
|
+
index,
|
203
|
+
step,
|
204
|
+
status,
|
205
|
+
};
|
206
|
+
});
|
207
|
+
const isLoading = steps.some((step) => step.status === "pending");
|
208
|
+
const isDone = steps.every((step) => step.status === "completed");
|
209
|
+
const isFailed = steps.some((step) => step.status === "failed");
|
210
|
+
// Update handleContinue to handle done state
|
211
|
+
const handleContinue = (0, react_1.useCallback)(async () => {
|
212
|
+
if (isDone) {
|
213
|
+
props.onDone();
|
214
|
+
return;
|
215
|
+
}
|
216
|
+
if (currentStepIndex === 0) {
|
217
|
+
// First step - open onramp popup
|
218
|
+
const popup = (0, openOnRamppopup_js_1.openOnrampPopup)(props.quote.onRampLink, props.theme);
|
219
|
+
(0, pay_js_1.trackPayEvent)({
|
220
|
+
event: "open_onramp_popup",
|
221
|
+
client: props.client,
|
222
|
+
walletAddress: props.payer.account.address,
|
223
|
+
walletType: props.payer.wallet.id,
|
224
|
+
});
|
225
|
+
setPopupWindow(popup);
|
226
|
+
(0, pendingSwapTx_js_1.addPendingTx)({
|
227
|
+
type: "fiat",
|
228
|
+
intentId: props.quote.intentId,
|
229
|
+
});
|
230
|
+
}
|
231
|
+
else if (swapQuoteQuery.data && !swapTxHash) {
|
232
|
+
// Execute swap/bridge
|
233
|
+
try {
|
234
|
+
const result = await swapMutation.mutateAsync({
|
235
|
+
quote: swapQuoteQuery.data,
|
236
|
+
});
|
237
|
+
setSwapTxHash({
|
238
|
+
hash: result.transactionHash,
|
239
|
+
chainId: result.chainId,
|
240
|
+
});
|
241
|
+
}
|
242
|
+
catch (e) {
|
243
|
+
console.error("Failed to execute swap:", e);
|
244
|
+
}
|
245
|
+
}
|
246
|
+
else if (isFailed) {
|
247
|
+
// retry the quote step
|
248
|
+
setSwapTxHash(undefined);
|
249
|
+
swapMutation.reset();
|
250
|
+
swapQuoteQuery.refetch();
|
251
|
+
}
|
252
|
+
}, [
|
253
|
+
isDone,
|
254
|
+
currentStepIndex,
|
255
|
+
swapQuoteQuery.data,
|
256
|
+
swapTxHash,
|
257
|
+
props.quote,
|
258
|
+
props.onDone,
|
259
|
+
swapMutation,
|
260
|
+
props.theme,
|
261
|
+
isFailed,
|
262
|
+
swapQuoteQuery.refetch,
|
263
|
+
swapMutation.reset,
|
264
|
+
props.client,
|
265
|
+
props.payer.account.address,
|
266
|
+
props.payer.wallet.id,
|
267
|
+
]);
|
268
|
+
// Auto-progress effect
|
269
|
+
(0, react_1.useEffect)(() => {
|
270
|
+
if (!props.isAutoMode) {
|
271
|
+
return;
|
272
|
+
}
|
273
|
+
// Auto-start next swap step when previous step completes
|
274
|
+
if (!isLoading &&
|
275
|
+
!isDone &&
|
276
|
+
!isFailed &&
|
277
|
+
currentStepIndex > 0 &&
|
278
|
+
currentStepIndex < onRampSteps.length &&
|
279
|
+
swapQuoteQuery.data &&
|
280
|
+
!swapTxHash) {
|
281
|
+
handleContinue();
|
282
|
+
}
|
283
|
+
}, [
|
284
|
+
props.isAutoMode,
|
285
|
+
currentStepIndex,
|
286
|
+
swapQuoteQuery.data,
|
287
|
+
swapTxHash,
|
288
|
+
onRampSteps.length,
|
289
|
+
handleContinue,
|
290
|
+
isDone,
|
291
|
+
isFailed,
|
292
|
+
isLoading,
|
293
|
+
]);
|
294
|
+
return {
|
295
|
+
steps,
|
296
|
+
handleContinue,
|
297
|
+
isLoading,
|
298
|
+
isDone,
|
299
|
+
isFailed,
|
300
|
+
};
|
301
|
+
}
|
302
|
+
function useOnRampStatus(props) {
|
303
|
+
const queryClient = (0, react_query_1.useQueryClient)();
|
304
|
+
const statusQuery = (0, useBuyWithFiatStatus_js_1.useBuyWithFiatStatus)({
|
305
|
+
intentId: props.intentId,
|
306
|
+
client: props.client,
|
307
|
+
queryOptions: {
|
308
|
+
enabled: !!props.openedWindow,
|
309
|
+
},
|
310
|
+
});
|
311
|
+
let uiStatus = "actionRequired";
|
312
|
+
switch (statusQuery.data?.status) {
|
313
|
+
case "ON_RAMP_TRANSFER_COMPLETED":
|
314
|
+
case "CRYPTO_SWAP_COMPLETED":
|
315
|
+
case "CRYPTO_SWAP_REQUIRED":
|
316
|
+
uiStatus = "completed";
|
317
|
+
break;
|
318
|
+
case "CRYPTO_SWAP_FALLBACK":
|
319
|
+
uiStatus = "partialSuccess";
|
320
|
+
break;
|
321
|
+
case "ON_RAMP_TRANSFER_FAILED":
|
322
|
+
case "PAYMENT_FAILED":
|
323
|
+
uiStatus = "failed";
|
324
|
+
break;
|
325
|
+
case "PENDING_PAYMENT":
|
326
|
+
case "ON_RAMP_TRANSFER_IN_PROGRESS":
|
327
|
+
uiStatus = "pending";
|
328
|
+
break;
|
329
|
+
default:
|
330
|
+
uiStatus = "actionRequired";
|
331
|
+
break;
|
332
|
+
}
|
333
|
+
const purchaseCbCalled = (0, react_1.useRef)(false);
|
334
|
+
(0, react_1.useEffect)(() => {
|
335
|
+
if (purchaseCbCalled.current || !props.onSuccess) {
|
336
|
+
return;
|
337
|
+
}
|
338
|
+
if (statusQuery.data &&
|
339
|
+
(uiStatus === "completed" || uiStatus === "partialSuccess")) {
|
340
|
+
purchaseCbCalled.current = true;
|
341
|
+
props.onSuccess(statusQuery.data);
|
342
|
+
}
|
343
|
+
}, [props.onSuccess, statusQuery.data, uiStatus]);
|
344
|
+
// close the onramp popup if onramp is completed
|
345
|
+
(0, react_1.useEffect)(() => {
|
346
|
+
if (!props.openedWindow) {
|
347
|
+
return;
|
348
|
+
}
|
349
|
+
if (uiStatus === "completed" || uiStatus === "partialSuccess") {
|
350
|
+
try {
|
351
|
+
if (props.openedWindow && !props.openedWindow.closed) {
|
352
|
+
props.openedWindow.close();
|
353
|
+
}
|
354
|
+
}
|
355
|
+
catch (e) {
|
356
|
+
console.warn("Failed to close payment window:", e);
|
357
|
+
}
|
358
|
+
}
|
359
|
+
}, [props.openedWindow, uiStatus]);
|
360
|
+
// invalidate wallet balance when onramp is completed
|
361
|
+
const invalidatedBalance = (0, react_1.useRef)(false);
|
362
|
+
(0, react_1.useEffect)(() => {
|
363
|
+
if (!invalidatedBalance.current && uiStatus === "completed") {
|
364
|
+
invalidatedBalance.current = true;
|
365
|
+
(0, invalidateWalletBalance_js_1.invalidateWalletBalance)(queryClient);
|
366
|
+
}
|
367
|
+
}, [uiStatus, queryClient]);
|
368
|
+
return { uiStatus };
|
369
|
+
}
|
370
|
+
function useSwapStatus(props) {
|
371
|
+
const swapStatus = (0, useBuyWithCryptoStatus_js_1.useBuyWithCryptoStatus)(props.transactionHash && props.chainId
|
372
|
+
? {
|
373
|
+
client: props.client,
|
374
|
+
transactionHash: props.transactionHash,
|
375
|
+
chainId: props.chainId,
|
376
|
+
}
|
377
|
+
: undefined);
|
378
|
+
let uiStatus = "unknown";
|
379
|
+
switch (swapStatus.data?.status) {
|
380
|
+
case "COMPLETED":
|
381
|
+
uiStatus = "completed";
|
382
|
+
break;
|
383
|
+
case "FAILED":
|
384
|
+
case "NOT_FOUND":
|
385
|
+
uiStatus = "failed";
|
386
|
+
break;
|
387
|
+
case "PENDING":
|
388
|
+
uiStatus = "pending";
|
389
|
+
break;
|
390
|
+
case "NONE":
|
391
|
+
uiStatus = "unknown";
|
392
|
+
break;
|
393
|
+
default:
|
394
|
+
uiStatus = "unknown";
|
395
|
+
break;
|
396
|
+
}
|
397
|
+
const purchaseCbCalled = (0, react_1.useRef)(false);
|
398
|
+
(0, react_1.useEffect)(() => {
|
399
|
+
if (purchaseCbCalled.current || !props.onSuccess) {
|
400
|
+
return;
|
401
|
+
}
|
402
|
+
if (swapStatus.data?.status === "COMPLETED") {
|
403
|
+
purchaseCbCalled.current = true;
|
404
|
+
props.onSuccess(swapStatus.data);
|
405
|
+
}
|
406
|
+
}, [props.onSuccess, swapStatus]);
|
407
|
+
const queryClient = (0, react_query_1.useQueryClient)();
|
408
|
+
const balanceInvalidated = (0, react_1.useRef)(false);
|
409
|
+
(0, react_1.useEffect)(() => {
|
410
|
+
if (uiStatus === "completed" && !balanceInvalidated.current) {
|
411
|
+
balanceInvalidated.current = true;
|
412
|
+
(0, invalidateWalletBalance_js_1.invalidateWalletBalance)(queryClient);
|
413
|
+
}
|
414
|
+
}, [queryClient, uiStatus]);
|
415
|
+
return { uiStatus };
|
416
|
+
}
|
417
|
+
function useSwapMutation(props) {
|
418
|
+
const queryClient = (0, react_query_1.useQueryClient)();
|
419
|
+
return (0, react_query_1.useMutation)({
|
420
|
+
mutationFn: async (input) => {
|
421
|
+
const { quote } = input;
|
422
|
+
const canBatch = props.payer.account.sendBatchTransaction;
|
423
|
+
const tokenContract = (0, contract_js_1.getContract)({
|
424
|
+
client: props.client,
|
425
|
+
address: quote.swapDetails.fromToken.tokenAddress,
|
426
|
+
chain: (0, utils_js_1.getCachedChain)(quote.swapDetails.fromToken.chainId),
|
427
|
+
});
|
428
|
+
const approveTxRequired = quote.approvalData &&
|
429
|
+
(await (0, allowance_js_1.allowance)({
|
430
|
+
contract: tokenContract,
|
431
|
+
owner: props.payer.account.address,
|
432
|
+
spender: quote.approvalData.spenderAddress,
|
433
|
+
})) < BigInt(quote.approvalData.amountWei);
|
434
|
+
if (approveTxRequired && quote.approvalData && !canBatch) {
|
435
|
+
(0, pay_js_1.trackPayEvent)({
|
436
|
+
event: "prompt_swap_approval",
|
437
|
+
client: props.client,
|
438
|
+
walletAddress: props.payer.account.address,
|
439
|
+
walletType: props.payer.wallet.id,
|
440
|
+
fromToken: quote.swapDetails.fromToken.tokenAddress,
|
441
|
+
fromAmount: quote.swapDetails.fromAmountWei,
|
442
|
+
toToken: quote.swapDetails.toToken.tokenAddress,
|
443
|
+
toAmount: quote.swapDetails.toAmountWei,
|
444
|
+
chainId: quote.swapDetails.fromToken.chainId,
|
445
|
+
dstChainId: quote.swapDetails.toToken.chainId,
|
446
|
+
});
|
447
|
+
const transaction = (0, approve_js_1.approve)({
|
448
|
+
contract: tokenContract,
|
449
|
+
spender: quote.approvalData.spenderAddress,
|
450
|
+
amountWei: BigInt(quote.approvalData.amountWei),
|
451
|
+
});
|
452
|
+
const tx = await (0, send_transaction_js_1.sendTransaction)({
|
453
|
+
account: props.payer.account,
|
454
|
+
transaction,
|
455
|
+
});
|
456
|
+
await (0, wait_for_tx_receipt_js_1.waitForReceipt)({ ...tx, maxBlocksWaitTime: 50 });
|
457
|
+
(0, pay_js_1.trackPayEvent)({
|
458
|
+
event: "swap_approval_success",
|
459
|
+
client: props.client,
|
460
|
+
walletAddress: props.payer.account.address,
|
461
|
+
walletType: props.payer.wallet.id,
|
462
|
+
fromToken: quote.swapDetails.fromToken.tokenAddress,
|
463
|
+
fromAmount: quote.swapDetails.fromAmountWei,
|
464
|
+
toToken: quote.swapDetails.toToken.tokenAddress,
|
465
|
+
toAmount: quote.swapDetails.toAmountWei,
|
466
|
+
chainId: quote.swapDetails.fromToken.chainId,
|
467
|
+
dstChainId: quote.swapDetails.toToken.chainId,
|
468
|
+
});
|
469
|
+
}
|
470
|
+
(0, pay_js_1.trackPayEvent)({
|
471
|
+
event: "prompt_swap_execution",
|
472
|
+
client: props.client,
|
473
|
+
walletAddress: props.payer.account.address,
|
474
|
+
walletType: props.payer.wallet.id,
|
475
|
+
fromToken: quote.swapDetails.fromToken.tokenAddress,
|
476
|
+
fromAmount: quote.swapDetails.fromAmountWei,
|
477
|
+
toToken: quote.swapDetails.toToken.tokenAddress,
|
478
|
+
toAmount: quote.swapDetails.toAmountWei,
|
479
|
+
chainId: quote.swapDetails.fromToken.chainId,
|
480
|
+
dstChainId: quote.swapDetails.toToken.chainId,
|
481
|
+
});
|
482
|
+
const tx = quote.transactionRequest;
|
483
|
+
let _swapTx;
|
484
|
+
// check if we can batch approval and swap
|
485
|
+
if (canBatch && quote.approvalData && approveTxRequired) {
|
486
|
+
const approveTx = (0, approve_js_1.approve)({
|
487
|
+
contract: tokenContract,
|
488
|
+
spender: quote.approvalData.spenderAddress,
|
489
|
+
amountWei: BigInt(quote.approvalData.amountWei),
|
490
|
+
});
|
491
|
+
_swapTx = await (0, send_batch_transaction_js_1.sendBatchTransaction)({
|
492
|
+
account: props.payer.account,
|
493
|
+
transactions: [approveTx, tx],
|
494
|
+
});
|
495
|
+
}
|
496
|
+
else {
|
497
|
+
_swapTx = await (0, send_transaction_js_1.sendTransaction)({
|
498
|
+
account: props.payer.account,
|
499
|
+
transaction: tx,
|
500
|
+
});
|
501
|
+
}
|
502
|
+
await (0, wait_for_tx_receipt_js_1.waitForReceipt)({ ..._swapTx, maxBlocksWaitTime: 50 });
|
503
|
+
(0, pay_js_1.trackPayEvent)({
|
504
|
+
event: "swap_execution_success",
|
505
|
+
client: props.client,
|
506
|
+
walletAddress: props.payer.account.address,
|
507
|
+
walletType: props.payer.wallet.id,
|
508
|
+
fromToken: quote.swapDetails.fromToken.tokenAddress,
|
509
|
+
fromAmount: quote.swapDetails.fromAmountWei,
|
510
|
+
toToken: quote.swapDetails.toToken.tokenAddress,
|
511
|
+
toAmount: quote.swapDetails.toAmountWei,
|
512
|
+
chainId: quote.swapDetails.fromToken.chainId,
|
513
|
+
dstChainId: quote.swapDetails.toToken.chainId,
|
514
|
+
});
|
515
|
+
// do not add pending tx if the swap is part of fiat flow
|
516
|
+
if (!props.isFiatFlow) {
|
517
|
+
(0, pendingSwapTx_js_1.addPendingTx)({
|
518
|
+
type: "swap",
|
519
|
+
txHash: _swapTx.transactionHash,
|
520
|
+
chainId: _swapTx.chain.id,
|
521
|
+
});
|
522
|
+
}
|
523
|
+
return {
|
524
|
+
transactionHash: _swapTx.transactionHash,
|
525
|
+
chainId: _swapTx.chain.id,
|
526
|
+
};
|
527
|
+
},
|
528
|
+
onSuccess: () => {
|
529
|
+
(0, invalidateWalletBalance_js_1.invalidateWalletBalance)(queryClient);
|
530
|
+
},
|
531
|
+
});
|
532
|
+
}
|
533
|
+
function isInAppSigner(options) {
|
534
|
+
const isInAppOrEcosystem = (w) => (0, index_js_1.isInAppWallet)(w) || (0, is_ecosystem_wallet_js_1.isEcosystemWallet)(w);
|
535
|
+
const isSmartWalletWithAdmin = (0, is_smart_wallet_js_1.isSmartWallet)(options.wallet) &&
|
536
|
+
options.connectedWallets.some((w) => isInAppOrEcosystem(w) &&
|
537
|
+
w.getAccount()?.address?.toLowerCase() ===
|
538
|
+
options.wallet.getAdminAccount?.()?.address?.toLowerCase());
|
539
|
+
return isInAppOrEcosystem(options.wallet) || isSmartWalletWithAdmin;
|
540
|
+
}
|
541
|
+
//# sourceMappingURL=OnRampScreen.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"OnRampScreen.js","sourceRoot":"","sources":["../../../../../../../../../src/react/web/ui/ConnectWallet/screens/Buy/fiat/OnRampScreen.tsx"],"names":[],"mappings":";;AA+DA,oCA8HC;;AA7LD,uDAAoE;AACpE,iCAAiE;AACjE,wEAA4E;AAC5E,mEAAsE;AAEtE,2EAAwE;AACxE,+GAAyG;AACzG,uFAAiF;AAIjF,oFAG2D;AAC3D,kHAG0E;AAC1E,kHAA0G;AAC1G,sGAA+F;AAE/F,4GAAiG;AACjG,gFAA0E;AAC1E,0GAAkG;AAClG,uFAAyF;AAEzF,8FAAsF;AACtF,4EAAwE;AACxE,2FAAoF;AACpF,wGAAkG;AAClG,0GAAoG;AACpG,sGAAgG;AAChG,wGAAkG;AAClG,4GAAsG;AACtG,gEAA0D;AAC1D,kEAA4D;AAC5D,8EAA8E;AAC9E,8DAAyE;AACzE,kEAA2D;AAC3D,4DAAsD;AACtD,gFAA0E;AAC1E,wDAAkD;AAClD,8DAAwD;AAExD,+DAA8D;AAC9D,uDAAiD;AACjD,+DAAwD;AAExD,iDAA+C;AAc/C,SAAgB,YAAY,CAAC,KAa5B;IACC,MAAM,gBAAgB,GAAG,IAAA,4CAAmB,GAAE,CAAC;IAC/C,MAAM,UAAU,GAAG,aAAa,CAAC;QAC/B,MAAM,EAAE,KAAK,CAAC,KAAK,CAAC,MAAM;QAC1B,gBAAgB;KACjB,CAAC,CAAC;IACH,MAAM,KAAK,GAAG,oBAAoB,CAAC;QACjC,KAAK,EAAE,KAAK,CAAC,KAAK;QAClB,MAAM,EAAE,KAAK,CAAC,MAAM;QACpB,SAAS,EAAE,KAAK,CAAC,SAAS;QAC1B,MAAM,EAAE,KAAK,CAAC,MAAM;QACpB,KAAK,EAAE,KAAK,CAAC,KAAK;QAClB,KAAK,EAAE,KAAK,CAAC,KAAK;QAClB,UAAU;KACX,CAAC,CAAC;IACH,MAAM,gBAAgB,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC;IAC5D,MAAM,gBAAgB,GAAG,KAAK,CAAC,KAAK,CAAC,SAAS,CAC5C,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,KAAK,SAAS,IAAI,IAAI,CAAC,MAAM,KAAK,gBAAgB,CACxE,CAAC;IACF,OAAO,CACL,wBAAC,oBAAS,IAAC,CAAC,EAAC,IAAI,aACf,uBAAC,sBAAW,IAAC,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,GAAI,EACzD,uBAAC,kBAAM,IAAC,CAAC,EAAC,IAAI,GAAG,EACjB,uBAAC,oBAAS,IACR,IAAI,EAAC,QAAQ,EACb,GAAG,EAAC,IAAI,EACR,MAAM,EAAC,GAAG,EACV,KAAK,EAAE;oBACL,WAAW,EAAE,kBAAO,CAAC,EAAE;iBACxB,YAED,uBAAC,wBAAS,IACR,MAAM,EAAE,KAAK,CAAC,MAAM,EACpB,OAAO,EAAE,KAAK,CAAC,eAAe,EAC9B,QAAQ,EAAC,IAAI,EACb,QAAQ,EAAC,IAAI,EACb,KAAK,EAAC,kBAAkB,GACxB,GACQ,EACZ,uBAAC,kBAAM,IAAC,CAAC,EAAC,IAAI,GAAG,EACjB,uBAAC,oBAAS,IAAC,IAAI,EAAC,QAAQ,YACrB,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,EAAE,CAAC,CAC5C,wBAAC,oBAAS,IAAC,IAAI,EAAC,QAAQ,aACtB,uBAAC,4BAAa,IACZ,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,KAAK,EACZ,KAAK,EAAE;gCACL,IAAI,EAAE,GAAG;6BACV,YAED,uBAAC,MAAM,IACL,IAAI,EAAE,IAAI,EACV,MAAM,EAAE,KAAK,CAAC,MAAM,EACpB,KAAK,EAAE,KAAK,CAAC,KAAK,EAClB,KAAK,EAAE,KAAK,GACZ,GACY,EACf,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,IAAI,CACjC,uBAAC,qCAAkB,IAAC,MAAM,EAAE,KAAK,KAAK,gBAAgB,GAAI,CAC3D,KAjB2B,IAAI,CAAC,MAAM,CAkB7B,CACb,CAAC,GACQ,EAEZ,uBAAC,kBAAM,IAAC,CAAC,EAAC,IAAI,GAAG,EAEjB,uBAAC,cAAI,IACH,IAAI,EAAC,IAAI,EACT,KAAK,EAAC,eAAe,EACrB,MAAM,QACN,KAAK,EAAE,EAAE,OAAO,EAAE,KAAK,kBAAO,CAAC,EAAE,EAAE,EAAE,2EAGhC,EAEP,uBAAC,kBAAM,IAAC,CAAC,EAAC,IAAI,GAAG,EAEjB,uBAAC,oBAAS,IAAC,IAAI,EAAC,QAAQ,EAAC,GAAG,EAAC,IAAI,YAC9B,CAAC,KAAK,CAAC,MAAM;oBACd,gBAAgB;oBAChB,gBAAgB,KAAK,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,CAC1C,uBAAC,sCAAmB,IAClB,SAAS,QACT,OAAO,EAAC,QAAQ,EAChB,WAAW,EAAE,KAAK,IAAI,EAAE;wBACtB,MAAM,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,WAAW,CAClC,IAAA,yBAAc,EAAC,gBAAgB,CAAC,CACjC,CAAC;oBACJ,CAAC,GACD,CACH,CAAC,CAAC,CAAC,CACF,wBAAC,mBAAM,IACL,OAAO,EAAC,QAAQ,EAChB,GAAG,EAAC,IAAI,EACR,SAAS,QACT,OAAO,EAAE,KAAK,CAAC,cAAc,EAC7B,QAAQ,EAAE,KAAK,CAAC,SAAS,aAExB,KAAK,CAAC,SAAS;4BACd,CAAC,CAAC,YAAY;4BACd,CAAC,CAAC,KAAK,CAAC,MAAM;gCACZ,CAAC,CAAC,KAAK,CAAC,eAAe;oCACrB,CAAC,CAAC,sBAAsB;oCACxB,CAAC,CAAC,MAAM;gCACV,CAAC,CAAC,KAAK,CAAC,QAAQ;oCACd,CAAC,CAAC,OAAO;oCACT,CAAC,CAAC,UAAU,EACjB,KAAK,CAAC,SAAS,IAAI,uBAAC,oBAAO,IAAC,IAAI,EAAC,IAAI,EAAC,KAAK,EAAC,aAAa,GAAG,IACtD,CACV,GACS,IACF,CACb,CAAC;AACJ,CAAC;AAED,SAAS,MAAM,CAAC,KAKf;IACC,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,KAAK,CAAC;IAC/B,MAAM,KAAK,GAAG,IAAA,+BAAY,EAAC,IAAA,yBAAc,EAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;IAC/D,OAAO,CACL,uBAAC,oBAAS,IAAC,IAAI,EAAC,QAAQ,EAAC,GAAG,EAAC,IAAI,EAAC,EAAE,EAAC,KAAK,YACxC,wBAAC,oBAAS,IACR,IAAI,EAAC,KAAK,EACV,MAAM,EAAC,GAAG,EACV,GAAG,EAAC,IAAI,EACR,KAAK,EAAE;gBACL,OAAO,EAAE,MAAM;gBACf,cAAc,EAAE,eAAe;gBAC/B,QAAQ,EAAE,QAAQ;aACnB,aAED,uBAAC,8BAAY,IACX,KAAK,EAAE,IAAA,yBAAc,EAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,EACzC,MAAM,EAAE,MAAM,EACd,IAAI,EAAC,IAAI,EACT,KAAK,EAAE;wBACL,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,YAAY;qBACjC,GACD,EACF,wBAAC,oBAAS,IAAC,IAAI,EAAC,QAAQ,EAAC,GAAG,EAAC,KAAK,EAAC,MAAM,EAAC,GAAG,EAAC,KAAK,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,aAChE,uBAAC,cAAI,IAAC,IAAI,EAAC,IAAI,EAAC,KAAK,EAAC,aAAa,YAChC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,GACtD,EAEP,wBAAC,oBAAS,IACR,IAAI,EAAC,KAAK,EACV,GAAG,EAAC,IAAI,EACR,MAAM,EAAC,GAAG,EACV,KAAK,EAAE;gCACL,OAAO,EAAE,MAAM;gCACf,cAAc,EAAE,eAAe;gCAC/B,QAAQ,EAAE,QAAQ;6BACnB,aAED,wBAAC,oBAAS,IACR,IAAI,EAAC,KAAK,EACV,GAAG,EAAC,KAAK,EACT,MAAM,EAAC,GAAG,EACV,KAAK,EAAE;wCACL,IAAI,EAAE,SAAS;wCACf,QAAQ,EAAE,CAAC;wCACX,QAAQ,EAAE,KAAK;wCACf,QAAQ,EAAE,QAAQ;wCAClB,QAAQ,EAAE,QAAQ;qCACnB,aAED,uBAAC,cAAI,IAAC,IAAI,EAAC,IAAI,EAAC,KAAK,EAAC,aAAa,YAChC,IAAA,8BAAY,EAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,GAChC,EACP,uBAAC,4BAAW,IACV,KAAK,EAAE;gDACL,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,YAAY;gDAChC,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,IAAI,EAAE;gDAC3B,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,IAAI,EAAE;6CAChC,EACD,KAAK,EAAE,IAAA,yBAAc,EAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,EACzC,IAAI,EAAC,IAAI,EACT,KAAK,EAAC,eAAe,GACrB,IACQ,EACZ,uBAAC,oBAAS,IACR,IAAI,EAAC,KAAK,EACV,GAAG,EAAC,IAAI,EACR,MAAM,EAAC,GAAG,EACV,KAAK,EAAE;wCACL,IAAI,EAAE,SAAS;wCACf,QAAQ,EAAE,KAAK;wCACf,QAAQ,EAAE,CAAC;wCACX,cAAc,EAAE,UAAU;wCAC1B,QAAQ,EAAE,QAAQ;qCACnB,YAED,uBAAC,cAAI,IACH,IAAI,EAAC,IAAI,EACT,KAAK,EAAE;4CACL,QAAQ,EAAE,QAAQ;4CAClB,YAAY,EAAE,UAAU;4CACxB,UAAU,EAAE,QAAQ;yCACrB,YAEA,KAAK,CAAC,IAAI,GACN,GACG,IACF,IACF,IACF,GACF,CACb,CAAC;AACJ,CAAC;AAED,SAAS,oBAAoB,CAAC,KAQ7B;IACC,MAAM,WAAW,GAAG,IAAA,4CAAc,EAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IAChD,MAAM,CAAC,gBAAgB,EAAE,mBAAmB,CAAC,GAAG,IAAA,gBAAQ,EAAC,CAAC,CAAC,CAAC;IAC5D,MAAM,CAAC,UAAU,EAAE,aAAa,CAAC,GAAG,IAAA,gBAAQ,GAGxC,CAAC;IACL,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,IAAA,gBAAQ,EAAgB,IAAI,CAAC,CAAC;IAEpE,sBAAsB;IACtB,MAAM,EAAE,QAAQ,EAAE,gBAAgB,EAAE,GAAG,eAAe,CAAC;QACrD,QAAQ,EAAE,KAAK,CAAC,KAAK,CAAC,QAAQ;QAC9B,MAAM,EAAE,KAAK,CAAC,MAAM;QACpB,SAAS,EAAE,CAAC,MAAM,EAAE,EAAE;YACpB,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAC7B,8CAA8C;gBAC9C,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;YAC1B,CAAC;iBAAM,CAAC;gBACN,2BAA2B;gBAC3B,mBAAmB,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC;YAC1C,CAAC;QACH,CAAC;QACD,YAAY,EAAE,WAAW;KAC1B,CAAC,CAAC;IAEH,mDAAmD;IACnD,MAAM,YAAY,GAAG,WAAW,CAAC,gBAAgB,GAAG,CAAC,CAAC,CAAC;IACvD,MAAM,WAAW,GAAG,WAAW,CAAC,gBAAgB,CAAC,CAAC;IAClD,MAAM,cAAc,GAAG,IAAA,gDAAqB,EAC1C,YAAY,IAAI,WAAW;QACzB,CAAC,CAAC;YACE,WAAW,EAAE,YAAY,CAAC,KAAK,CAAC,OAAO;YACvC,gBAAgB,EAAE,YAAY,CAAC,KAAK,CAAC,YAAY;YACjD,QAAQ,EAAE,WAAW,CAAC,MAAM;YAC5B,SAAS,EAAE,WAAW,CAAC,KAAK,CAAC,OAAO;YACpC,cAAc,EAAE,WAAW,CAAC,KAAK,CAAC,YAAY;YAC9C,WAAW,EAAE,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO;YACxC,SAAS,EAAE,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO;YACtC,MAAM,EAAE,KAAK,CAAC,MAAM;SACrB;QACH,CAAC,CAAC,SAAS,CACd,CAAC;IAEF,wBAAwB;IACxB,MAAM,YAAY,GAAG,eAAe,CAAC;QACnC,MAAM,EAAE,KAAK,CAAC,MAAM;QACpB,KAAK,EAAE,KAAK,CAAC,KAAK;QAClB,UAAU,EAAE,IAAI;KACjB,CAAC,CAAC;IAEH,oBAAoB;IACpB,MAAM,EAAE,QAAQ,EAAE,UAAU,EAAE,GAAG,aAAa,CAAC;QAC7C,MAAM,EAAE,KAAK,CAAC,MAAM;QACpB,eAAe,EAAE,UAAU,EAAE,IAAI;QACjC,OAAO,EAAE,UAAU,EAAE,OAAO;QAC5B,SAAS,EAAE,GAAG,EAAE;YACd,IAAI,gBAAgB,KAAK,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAChD,2CAA2C;gBAC3C,IAAA,mCAAoB,EAAC;oBACnB,QAAQ,EAAE,KAAK,CAAC,KAAK,CAAC,QAAQ;oBAC9B,MAAM,EAAE,KAAK,CAAC,MAAM;iBACrB,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;YAC3B,CAAC;iBAAM,CAAC;gBACN,8CAA8C;gBAC9C,aAAa,CAAC,SAAS,CAAC,CAAC;gBACzB,YAAY,CAAC,KAAK,EAAE,CAAC;gBACrB,oBAAoB;gBACpB,mBAAmB,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC;YAC1C,CAAC;QACH,CAAC;KACF,CAAC,CAAC;IAEH,oCAAoC;IACpC,MAAM,KAAK,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;QAC5C,IAAI,MAAM,GAAqC,SAAS,CAAC;QAEzD,IAAI,KAAK,KAAK,CAAC,EAAE,CAAC;YAChB,6BAA6B;YAC7B,MAAM,GAAG,gBAAgB,CAAC;QAC5B,CAAC;aAAM,IAAI,KAAK,GAAG,gBAAgB,EAAE,CAAC;YACpC,+BAA+B;YAC/B,MAAM,GAAG,WAAW,CAAC;QACvB,CAAC;aAAM,IAAI,KAAK,KAAK,gBAAgB,EAAE,CAAC;YACtC,yCAAyC;YACzC,IAAI,cAAc,CAAC,SAAS,IAAI,YAAY,CAAC,SAAS,EAAE,CAAC;gBACvD,MAAM,GAAG,SAAS,CAAC;YACrB,CAAC;iBAAM,IAAI,cAAc,CAAC,KAAK,IAAI,YAAY,CAAC,KAAK,EAAE,CAAC;gBACtD,MAAM,GAAG,QAAQ,CAAC;YACpB,CAAC;iBAAM,IAAI,UAAU,EAAE,CAAC;gBACtB,MAAM,GAAG,UAAU,CAAC;YACtB,CAAC;iBAAM,CAAC;gBACN,MAAM,GAAG,gBAAgB,CAAC;YAC5B,CAAC;QACH,CAAC;QAED,OAAO;YACL,KAAK;YACL,IAAI;YACJ,MAAM;SACP,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,MAAM,SAAS,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC;IAClE,MAAM,MAAM,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,KAAK,WAAW,CAAC,CAAC;IAClE,MAAM,QAAQ,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC;IAEhE,6CAA6C;IAC7C,MAAM,cAAc,GAAG,IAAA,mBAAW,EAAC,KAAK,IAAI,EAAE;QAC5C,IAAI,MAAM,EAAE,CAAC;YACX,KAAK,CAAC,MAAM,EAAE,CAAC;YACf,OAAO;QACT,CAAC;QAED,IAAI,gBAAgB,KAAK,CAAC,EAAE,CAAC;YAC3B,iCAAiC;YACjC,MAAM,KAAK,GAAG,IAAA,oCAAe,EAAC,KAAK,CAAC,KAAK,CAAC,UAAU,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;YACnE,IAAA,sBAAa,EAAC;gBACZ,KAAK,EAAE,mBAAmB;gBAC1B,MAAM,EAAE,KAAK,CAAC,MAAM;gBACpB,aAAa,EAAE,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO;gBAC1C,UAAU,EAAE,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE;aAClC,CAAC,CAAC;YACH,cAAc,CAAC,KAAK,CAAC,CAAC;YACtB,IAAA,+BAAY,EAAC;gBACX,IAAI,EAAE,MAAM;gBACZ,QAAQ,EAAE,KAAK,CAAC,KAAK,CAAC,QAAQ;aAC/B,CAAC,CAAC;QACL,CAAC;aAAM,IAAI,cAAc,CAAC,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YAC9C,sBAAsB;YACtB,IAAI,CAAC;gBACH,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,WAAW,CAAC;oBAC5C,KAAK,EAAE,cAAc,CAAC,IAAI;iBAC3B,CAAC,CAAC;gBACH,aAAa,CAAC;oBACZ,IAAI,EAAE,MAAM,CAAC,eAAe;oBAC5B,OAAO,EAAE,MAAM,CAAC,OAAO;iBACxB,CAAC,CAAC;YACL,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACX,OAAO,CAAC,KAAK,CAAC,yBAAyB,EAAE,CAAC,CAAC,CAAC;YAC9C,CAAC;QACH,CAAC;aAAM,IAAI,QAAQ,EAAE,CAAC;YACpB,uBAAuB;YACvB,aAAa,CAAC,SAAS,CAAC,CAAC;YACzB,YAAY,CAAC,KAAK,EAAE,CAAC;YACrB,cAAc,CAAC,OAAO,EAAE,CAAC;QAC3B,CAAC;IACH,CAAC,EAAE;QACD,MAAM;QACN,gBAAgB;QAChB,cAAc,CAAC,IAAI;QACnB,UAAU;QACV,KAAK,CAAC,KAAK;QACX,KAAK,CAAC,MAAM;QACZ,YAAY;QACZ,KAAK,CAAC,KAAK;QACX,QAAQ;QACR,cAAc,CAAC,OAAO;QACtB,YAAY,CAAC,KAAK;QAClB,KAAK,CAAC,MAAM;QACZ,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO;QAC3B,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE;KACtB,CAAC,CAAC;IAEH,uBAAuB;IACvB,IAAA,iBAAS,EAAC,GAAG,EAAE;QACb,IAAI,CAAC,KAAK,CAAC,UAAU,EAAE,CAAC;YACtB,OAAO;QACT,CAAC;QAED,yDAAyD;QACzD,IACE,CAAC,SAAS;YACV,CAAC,MAAM;YACP,CAAC,QAAQ;YACT,gBAAgB,GAAG,CAAC;YACpB,gBAAgB,GAAG,WAAW,CAAC,MAAM;YACrC,cAAc,CAAC,IAAI;YACnB,CAAC,UAAU,EACX,CAAC;YACD,cAAc,EAAE,CAAC;QACnB,CAAC;IACH,CAAC,EAAE;QACD,KAAK,CAAC,UAAU;QAChB,gBAAgB;QAChB,cAAc,CAAC,IAAI;QACnB,UAAU;QACV,WAAW,CAAC,MAAM;QAClB,cAAc;QACd,MAAM;QACN,QAAQ;QACR,SAAS;KACV,CAAC,CAAC;IAEH,OAAO;QACL,KAAK;QACL,cAAc;QACd,SAAS;QACT,MAAM;QACN,QAAQ;KACT,CAAC;AACJ,CAAC;AAED,SAAS,eAAe,CAAC,KAKxB;IACC,MAAM,WAAW,GAAG,IAAA,4BAAc,GAAE,CAAC;IACrC,MAAM,WAAW,GAAG,IAAA,8CAAoB,EAAC;QACvC,QAAQ,EAAE,KAAK,CAAC,QAAQ;QACxB,MAAM,EAAE,KAAK,CAAC,MAAM;QACpB,YAAY,EAAE;YACZ,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,YAAY;SAC9B;KACF,CAAC,CAAC;IACH,IAAI,QAAQ,GAAqC,gBAAgB,CAAC;IAElE,QAAQ,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,CAAC;QACjC,KAAK,4BAA4B,CAAC;QAClC,KAAK,uBAAuB,CAAC;QAC7B,KAAK,sBAAsB;YACzB,QAAQ,GAAG,WAAW,CAAC;YACvB,MAAM;QACR,KAAK,sBAAsB;YACzB,QAAQ,GAAG,gBAAgB,CAAC;YAC5B,MAAM;QACR,KAAK,yBAAyB,CAAC;QAC/B,KAAK,gBAAgB;YACnB,QAAQ,GAAG,QAAQ,CAAC;YACpB,MAAM;QACR,KAAK,iBAAiB,CAAC;QACvB,KAAK,8BAA8B;YACjC,QAAQ,GAAG,SAAS,CAAC;YACrB,MAAM;QACR;YACE,QAAQ,GAAG,gBAAgB,CAAC;YAC5B,MAAM;IACV,CAAC;IAED,MAAM,gBAAgB,GAAG,IAAA,cAAM,EAAC,KAAK,CAAC,CAAC;IACvC,IAAA,iBAAS,EAAC,GAAG,EAAE;QACb,IAAI,gBAAgB,CAAC,OAAO,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC;YACjD,OAAO;QACT,CAAC;QAED,IACE,WAAW,CAAC,IAAI;YAChB,CAAC,QAAQ,KAAK,WAAW,IAAI,QAAQ,KAAK,gBAAgB,CAAC,EAC3D,CAAC;YACD,gBAAgB,CAAC,OAAO,GAAG,IAAI,CAAC;YAChC,KAAK,CAAC,SAAS,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;QACpC,CAAC;IACH,CAAC,EAAE,CAAC,KAAK,CAAC,SAAS,EAAE,WAAW,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC;IAElD,gDAAgD;IAChD,IAAA,iBAAS,EAAC,GAAG,EAAE;QACb,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC;YACxB,OAAO;QACT,CAAC;QAED,IAAI,QAAQ,KAAK,WAAW,IAAI,QAAQ,KAAK,gBAAgB,EAAE,CAAC;YAC9D,IAAI,CAAC;gBACH,IAAI,KAAK,CAAC,YAAY,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,MAAM,EAAE,CAAC;oBACrD,KAAK,CAAC,YAAY,CAAC,KAAK,EAAE,CAAC;gBAC7B,CAAC;YACH,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACX,OAAO,CAAC,IAAI,CAAC,iCAAiC,EAAE,CAAC,CAAC,CAAC;YACrD,CAAC;QACH,CAAC;IACH,CAAC,EAAE,CAAC,KAAK,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC,CAAC;IAEnC,qDAAqD;IACrD,MAAM,kBAAkB,GAAG,IAAA,cAAM,EAAC,KAAK,CAAC,CAAC;IACzC,IAAA,iBAAS,EAAC,GAAG,EAAE;QACb,IAAI,CAAC,kBAAkB,CAAC,OAAO,IAAI,QAAQ,KAAK,WAAW,EAAE,CAAC;YAC5D,kBAAkB,CAAC,OAAO,GAAG,IAAI,CAAC;YAClC,IAAA,oDAAuB,EAAC,WAAW,CAAC,CAAC;QACvC,CAAC;IACH,CAAC,EAAE,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC,CAAC;IAE5B,OAAO,EAAE,QAAQ,EAAE,CAAC;AACtB,CAAC;AAED,SAAS,aAAa,CAAC,KAKtB;IACC,MAAM,UAAU,GAAG,IAAA,kDAAsB,EACvC,KAAK,CAAC,eAAe,IAAI,KAAK,CAAC,OAAO;QACpC,CAAC,CAAC;YACE,MAAM,EAAE,KAAK,CAAC,MAAM;YACpB,eAAe,EAAE,KAAK,CAAC,eAAe;YACtC,OAAO,EAAE,KAAK,CAAC,OAAO;SACvB;QACH,CAAC,CAAC,SAAS,CACd,CAAC;IAEF,IAAI,QAAQ,GAAqC,SAAS,CAAC;IAE3D,QAAQ,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,CAAC;QAChC,KAAK,WAAW;YACd,QAAQ,GAAG,WAAW,CAAC;YACvB,MAAM;QACR,KAAK,QAAQ,CAAC;QACd,KAAK,WAAW;YACd,QAAQ,GAAG,QAAQ,CAAC;YACpB,MAAM;QACR,KAAK,SAAS;YACZ,QAAQ,GAAG,SAAS,CAAC;YACrB,MAAM;QACR,KAAK,MAAM;YACT,QAAQ,GAAG,SAAS,CAAC;YACrB,MAAM;QACR;YACE,QAAQ,GAAG,SAAS,CAAC;YACrB,MAAM;IACV,CAAC;IAED,MAAM,gBAAgB,GAAG,IAAA,cAAM,EAAC,KAAK,CAAC,CAAC;IACvC,IAAA,iBAAS,EAAC,GAAG,EAAE;QACb,IAAI,gBAAgB,CAAC,OAAO,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC;YACjD,OAAO;QACT,CAAC;QAED,IAAI,UAAU,CAAC,IAAI,EAAE,MAAM,KAAK,WAAW,EAAE,CAAC;YAC5C,gBAAgB,CAAC,OAAO,GAAG,IAAI,CAAC;YAChC,KAAK,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QACnC,CAAC;IACH,CAAC,EAAE,CAAC,KAAK,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC,CAAC;IAElC,MAAM,WAAW,GAAG,IAAA,4BAAc,GAAE,CAAC;IACrC,MAAM,kBAAkB,GAAG,IAAA,cAAM,EAAC,KAAK,CAAC,CAAC;IACzC,IAAA,iBAAS,EAAC,GAAG,EAAE;QACb,IAAI,QAAQ,KAAK,WAAW,IAAI,CAAC,kBAAkB,CAAC,OAAO,EAAE,CAAC;YAC5D,kBAAkB,CAAC,OAAO,GAAG,IAAI,CAAC;YAClC,IAAA,oDAAuB,EAAC,WAAW,CAAC,CAAC;QACvC,CAAC;IACH,CAAC,EAAE,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC,CAAC;IAE5B,OAAO,EAAE,QAAQ,EAAE,CAAC;AACtB,CAAC;AAED,SAAS,eAAe,CAAC,KAIxB;IACC,MAAM,WAAW,GAAG,IAAA,4BAAc,GAAE,CAAC;IACrC,OAAO,IAAA,yBAAW,EAAC;QACjB,UAAU,EAAE,KAAK,EAAE,KAAoC,EAAE,EAAE;YACzD,MAAM,EAAE,KAAK,EAAE,GAAG,KAAK,CAAC;YACxB,MAAM,QAAQ,GAAG,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,oBAAoB,CAAC;YAC1D,MAAM,aAAa,GAAG,IAAA,yBAAW,EAAC;gBAChC,MAAM,EAAE,KAAK,CAAC,MAAM;gBACpB,OAAO,EAAE,KAAK,CAAC,WAAW,CAAC,SAAS,CAAC,YAAY;gBACjD,KAAK,EAAE,IAAA,yBAAc,EAAC,KAAK,CAAC,WAAW,CAAC,SAAS,CAAC,OAAO,CAAC;aAC3D,CAAC,CAAC;YACH,MAAM,iBAAiB,GACrB,KAAK,CAAC,YAAY;gBAClB,CAAC,MAAM,IAAA,wBAAS,EAAC;oBACf,QAAQ,EAAE,aAAa;oBACvB,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO;oBAClC,OAAO,EAAE,KAAK,CAAC,YAAY,CAAC,cAAc;iBAC3C,CAAC,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;YAC7C,IAAI,iBAAiB,IAAI,KAAK,CAAC,YAAY,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACzD,IAAA,sBAAa,EAAC;oBACZ,KAAK,EAAE,sBAAsB;oBAC7B,MAAM,EAAE,KAAK,CAAC,MAAM;oBACpB,aAAa,EAAE,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO;oBAC1C,UAAU,EAAE,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE;oBACjC,SAAS,EAAE,KAAK,CAAC,WAAW,CAAC,SAAS,CAAC,YAAY;oBACnD,UAAU,EAAE,KAAK,CAAC,WAAW,CAAC,aAAa;oBAC3C,OAAO,EAAE,KAAK,CAAC,WAAW,CAAC,OAAO,CAAC,YAAY;oBAC/C,QAAQ,EAAE,KAAK,CAAC,WAAW,CAAC,WAAW;oBACvC,OAAO,EAAE,KAAK,CAAC,WAAW,CAAC,SAAS,CAAC,OAAO;oBAC5C,UAAU,EAAE,KAAK,CAAC,WAAW,CAAC,OAAO,CAAC,OAAO;iBAC9C,CAAC,CAAC;gBAEH,MAAM,WAAW,GAAG,IAAA,oBAAO,EAAC;oBAC1B,QAAQ,EAAE,aAAa;oBACvB,OAAO,EAAE,KAAK,CAAC,YAAY,CAAC,cAAc;oBAC1C,SAAS,EAAE,MAAM,CAAC,KAAK,CAAC,YAAY,CAAC,SAAS,CAAC;iBAChD,CAAC,CAAC;gBAEH,MAAM,EAAE,GAAG,MAAM,IAAA,qCAAe,EAAC;oBAC/B,OAAO,EAAE,KAAK,CAAC,KAAK,CAAC,OAAO;oBAC5B,WAAW;iBACZ,CAAC,CAAC;gBAEH,MAAM,IAAA,uCAAc,EAAC,EAAE,GAAG,EAAE,EAAE,iBAAiB,EAAE,EAAE,EAAE,CAAC,CAAC;gBAEvD,IAAA,sBAAa,EAAC;oBACZ,KAAK,EAAE,uBAAuB;oBAC9B,MAAM,EAAE,KAAK,CAAC,MAAM;oBACpB,aAAa,EAAE,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO;oBAC1C,UAAU,EAAE,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE;oBACjC,SAAS,EAAE,KAAK,CAAC,WAAW,CAAC,SAAS,CAAC,YAAY;oBACnD,UAAU,EAAE,KAAK,CAAC,WAAW,CAAC,aAAa;oBAC3C,OAAO,EAAE,KAAK,CAAC,WAAW,CAAC,OAAO,CAAC,YAAY;oBAC/C,QAAQ,EAAE,KAAK,CAAC,WAAW,CAAC,WAAW;oBACvC,OAAO,EAAE,KAAK,CAAC,WAAW,CAAC,SAAS,CAAC,OAAO;oBAC5C,UAAU,EAAE,KAAK,CAAC,WAAW,CAAC,OAAO,CAAC,OAAO;iBAC9C,CAAC,CAAC;YACL,CAAC;YAED,IAAA,sBAAa,EAAC;gBACZ,KAAK,EAAE,uBAAuB;gBAC9B,MAAM,EAAE,KAAK,CAAC,MAAM;gBACpB,aAAa,EAAE,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO;gBAC1C,UAAU,EAAE,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE;gBACjC,SAAS,EAAE,KAAK,CAAC,WAAW,CAAC,SAAS,CAAC,YAAY;gBACnD,UAAU,EAAE,KAAK,CAAC,WAAW,CAAC,aAAa;gBAC3C,OAAO,EAAE,KAAK,CAAC,WAAW,CAAC,OAAO,CAAC,YAAY;gBAC/C,QAAQ,EAAE,KAAK,CAAC,WAAW,CAAC,WAAW;gBACvC,OAAO,EAAE,KAAK,CAAC,WAAW,CAAC,SAAS,CAAC,OAAO;gBAC5C,UAAU,EAAE,KAAK,CAAC,WAAW,CAAC,OAAO,CAAC,OAAO;aAC9C,CAAC,CAAC;YACH,MAAM,EAAE,GAAG,KAAK,CAAC,kBAAkB,CAAC;YACpC,IAAI,OAA8B,CAAC;YACnC,0CAA0C;YAC1C,IAAI,QAAQ,IAAI,KAAK,CAAC,YAAY,IAAI,iBAAiB,EAAE,CAAC;gBACxD,MAAM,SAAS,GAAG,IAAA,oBAAO,EAAC;oBACxB,QAAQ,EAAE,aAAa;oBACvB,OAAO,EAAE,KAAK,CAAC,YAAY,CAAC,cAAc;oBAC1C,SAAS,EAAE,MAAM,CAAC,KAAK,CAAC,YAAY,CAAC,SAAS,CAAC;iBAChD,CAAC,CAAC;gBAEH,OAAO,GAAG,MAAM,IAAA,gDAAoB,EAAC;oBACnC,OAAO,EAAE,KAAK,CAAC,KAAK,CAAC,OAAO;oBAC5B,YAAY,EAAE,CAAC,SAAS,EAAE,EAAE,CAAC;iBAC9B,CAAC,CAAC;YACL,CAAC;iBAAM,CAAC;gBACN,OAAO,GAAG,MAAM,IAAA,qCAAe,EAAC;oBAC9B,OAAO,EAAE,KAAK,CAAC,KAAK,CAAC,OAAO;oBAC5B,WAAW,EAAE,EAAE;iBAChB,CAAC,CAAC;YACL,CAAC;YAED,MAAM,IAAA,uCAAc,EAAC,EAAE,GAAG,OAAO,EAAE,iBAAiB,EAAE,EAAE,EAAE,CAAC,CAAC;YAE5D,IAAA,sBAAa,EAAC;gBACZ,KAAK,EAAE,wBAAwB;gBAC/B,MAAM,EAAE,KAAK,CAAC,MAAM;gBACpB,aAAa,EAAE,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO;gBAC1C,UAAU,EAAE,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE;gBACjC,SAAS,EAAE,KAAK,CAAC,WAAW,CAAC,SAAS,CAAC,YAAY;gBACnD,UAAU,EAAE,KAAK,CAAC,WAAW,CAAC,aAAa;gBAC3C,OAAO,EAAE,KAAK,CAAC,WAAW,CAAC,OAAO,CAAC,YAAY;gBAC/C,QAAQ,EAAE,KAAK,CAAC,WAAW,CAAC,WAAW;gBACvC,OAAO,EAAE,KAAK,CAAC,WAAW,CAAC,SAAS,CAAC,OAAO;gBAC5C,UAAU,EAAE,KAAK,CAAC,WAAW,CAAC,OAAO,CAAC,OAAO;aAC9C,CAAC,CAAC;YAEH,yDAAyD;YACzD,IAAI,CAAC,KAAK,CAAC,UAAU,EAAE,CAAC;gBACtB,IAAA,+BAAY,EAAC;oBACX,IAAI,EAAE,MAAM;oBACZ,MAAM,EAAE,OAAO,CAAC,eAAe;oBAC/B,OAAO,EAAE,OAAO,CAAC,KAAK,CAAC,EAAE;iBAC1B,CAAC,CAAC;YACL,CAAC;YAED,OAAO;gBACL,eAAe,EAAE,OAAO,CAAC,eAAe;gBACxC,OAAO,EAAE,OAAO,CAAC,KAAK,CAAC,EAAE;aAC1B,CAAC;QACJ,CAAC;QACD,SAAS,EAAE,GAAG,EAAE;YACd,IAAA,oDAAuB,EAAC,WAAW,CAAC,CAAC;QACvC,CAAC;KACF,CAAC,CAAC;AACL,CAAC;AAED,SAAS,aAAa,CAAC,OAGtB;IACC,MAAM,kBAAkB,GAAG,CAAC,CAAS,EAAE,EAAE,CACvC,IAAA,wBAAa,EAAC,CAAC,CAAC,IAAI,IAAA,0CAAiB,EAAC,CAAC,CAAC,CAAC;IAC3C,MAAM,sBAAsB,GAC1B,IAAA,kCAAa,EAAC,OAAO,CAAC,MAAM,CAAC;QAC7B,OAAO,CAAC,gBAAgB,CAAC,IAAI,CAC3B,CAAC,CAAC,EAAE,EAAE,CACJ,kBAAkB,CAAC,CAAC,CAAC;YACrB,CAAC,CAAC,UAAU,EAAE,EAAE,OAAO,EAAE,WAAW,EAAE;gBACpC,OAAO,CAAC,MAAM,CAAC,eAAe,EAAE,EAAE,EAAE,OAAO,EAAE,WAAW,EAAE,CAC/D,CAAC;IACJ,OAAO,kBAAkB,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,sBAAsB,CAAC;AACtE,CAAC"}
|
@@ -2,8 +2,10 @@
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
3
3
|
exports.currencies = exports.usdCurrency = void 0;
|
4
4
|
exports.getCurrencyMeta = getCurrencyMeta;
|
5
|
+
exports.getFiatIcon = getFiatIcon;
|
5
6
|
const jsx_runtime_1 = require("react/jsx-runtime");
|
6
7
|
const react_icons_1 = require("@radix-ui/react-icons");
|
8
|
+
const index_js_1 = require("../../../../../../core/design-system/index.js");
|
7
9
|
const CADIcon_js_1 = require("../../../icons/currencies/CADIcon.js");
|
8
10
|
const EURIcon_js_1 = require("../../../icons/currencies/EURIcon.js");
|
9
11
|
const GBPIcon_js_1 = require("../../../icons/currencies/GBPIcon.js");
|
@@ -11,6 +13,7 @@ const JPYIcon_js_1 = require("../../../icons/currencies/JPYIcon.js");
|
|
11
13
|
const USDIcon_js_1 = require("../../../icons/currencies/USDIcon.js");
|
12
14
|
exports.usdCurrency = {
|
13
15
|
shorthand: "USD",
|
16
|
+
countryCode: "US",
|
14
17
|
name: "US Dollar",
|
15
18
|
symbol: "$",
|
16
19
|
icon: USDIcon_js_1.USDIcon,
|
@@ -19,38 +22,58 @@ exports.currencies = [
|
|
19
22
|
exports.usdCurrency,
|
20
23
|
{
|
21
24
|
shorthand: "CAD",
|
25
|
+
countryCode: "CA",
|
22
26
|
name: "Canadian Dollar",
|
23
27
|
symbol: "$",
|
24
28
|
icon: CADIcon_js_1.CADIcon,
|
25
29
|
},
|
26
30
|
{
|
27
31
|
shorthand: "GBP",
|
32
|
+
countryCode: "GB",
|
28
33
|
name: "British Pound",
|
29
34
|
symbol: "£",
|
30
35
|
icon: GBPIcon_js_1.GBPIcon,
|
31
36
|
},
|
32
37
|
{
|
33
38
|
shorthand: "EUR",
|
39
|
+
countryCode: "EU",
|
34
40
|
name: "Euro",
|
35
41
|
symbol: "€",
|
36
42
|
icon: EURIcon_js_1.EURIcon,
|
37
43
|
},
|
38
44
|
{
|
39
45
|
shorthand: "JPY",
|
46
|
+
countryCode: "JP",
|
40
47
|
name: "Japanese Yen",
|
41
48
|
symbol: "¥",
|
42
49
|
icon: JPYIcon_js_1.JPYIcon,
|
43
50
|
},
|
51
|
+
{
|
52
|
+
shorthand: "AUD",
|
53
|
+
countryCode: "AU",
|
54
|
+
name: "Australian Dollar",
|
55
|
+
symbol: "$",
|
56
|
+
},
|
57
|
+
{
|
58
|
+
shorthand: "NZD",
|
59
|
+
countryCode: "NZ",
|
60
|
+
name: "New Zealand Dollar",
|
61
|
+
symbol: "$",
|
62
|
+
},
|
44
63
|
];
|
45
64
|
function getCurrencyMeta(shorthand) {
|
46
65
|
return (exports.currencies.find((currency) => currency.shorthand.toLowerCase() === shorthand.toLowerCase()) ?? {
|
47
66
|
// This should never happen
|
48
67
|
icon: UnknownCurrencyIcon,
|
68
|
+
countryCode: "US",
|
49
69
|
name: shorthand,
|
50
70
|
symbol: "$",
|
51
71
|
shorthand: shorthand,
|
52
72
|
});
|
53
73
|
}
|
74
|
+
function getFiatIcon(currency, size) {
|
75
|
+
return currency.icon ? ((0, jsx_runtime_1.jsx)(currency.icon, { size: index_js_1.iconSize[size] })) : ((0, jsx_runtime_1.jsx)("img", { src: `https://flagsapi.com/${currency.countryCode.toUpperCase()}/flat/64.png`, alt: currency.shorthand, width: index_js_1.iconSize[size], height: index_js_1.iconSize[size] }));
|
76
|
+
}
|
54
77
|
const UnknownCurrencyIcon = (props) => {
|
55
78
|
return (0, jsx_runtime_1.jsx)(react_icons_1.RadiobuttonIcon, { width: props.size, height: props.size });
|
56
79
|
};
|