@turnkey/react-wallet-kit 2.7.1 → 2.8.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/_virtual/_rollupPluginBabelHelpers.mjs +10 -1
- package/dist/_virtual/_rollupPluginBabelHelpers.mjs.map +1 -1
- package/dist/components/auth/Action.d.ts +1 -0
- package/dist/components/auth/Action.d.ts.map +1 -1
- package/dist/components/auth/Action.js +10 -3
- package/dist/components/auth/Action.js.map +1 -1
- package/dist/components/auth/Action.mjs +10 -3
- package/dist/components/auth/Action.mjs.map +1 -1
- package/dist/components/auth/wallet/DesktopWalletConnectScreen.d.ts +2 -0
- package/dist/components/auth/wallet/DesktopWalletConnectScreen.d.ts.map +1 -1
- package/dist/components/auth/wallet/DesktopWalletConnectScreen.js +7 -4
- package/dist/components/auth/wallet/DesktopWalletConnectScreen.js.map +1 -1
- package/dist/components/auth/wallet/DesktopWalletConnectScreen.mjs +22 -12
- package/dist/components/auth/wallet/DesktopWalletConnectScreen.mjs.map +1 -1
- package/dist/components/auth/wallet/ExternalWalletChainSelector.d.ts.map +1 -1
- package/dist/components/auth/wallet/ExternalWalletChainSelector.js +2 -1
- package/dist/components/auth/wallet/ExternalWalletChainSelector.js.map +1 -1
- package/dist/components/auth/wallet/ExternalWalletChainSelector.mjs +2 -2
- package/dist/components/auth/wallet/ExternalWalletChainSelector.mjs.map +1 -1
- package/dist/components/auth/wallet/MobileWalletConnectScreen.d.ts +1 -0
- package/dist/components/auth/wallet/MobileWalletConnectScreen.d.ts.map +1 -1
- package/dist/components/auth/wallet/MobileWalletConnectScreen.js +3 -1
- package/dist/components/auth/wallet/MobileWalletConnectScreen.js.map +1 -1
- package/dist/components/auth/wallet/MobileWalletConnectScreen.mjs +16 -8
- package/dist/components/auth/wallet/MobileWalletConnectScreen.mjs.map +1 -1
- package/dist/components/auth/wallet/ShowAllWalletsScreen.d.ts +2 -1
- package/dist/components/auth/wallet/ShowAllWalletsScreen.d.ts.map +1 -1
- package/dist/components/auth/wallet/ShowAllWalletsScreen.js +8 -3
- package/dist/components/auth/wallet/ShowAllWalletsScreen.js.map +1 -1
- package/dist/components/auth/wallet/ShowAllWalletsScreen.mjs +8 -3
- package/dist/components/auth/wallet/ShowAllWalletsScreen.mjs.map +1 -1
- package/dist/components/design/Success.d.ts +1 -1
- package/dist/components/design/Success.d.ts.map +1 -1
- package/dist/components/design/Success.js +2 -2
- package/dist/components/design/Success.js.map +1 -1
- package/dist/components/design/Success.mjs +2 -2
- package/dist/components/design/Success.mjs.map +1 -1
- package/dist/components/design/Svg.d.ts +1 -0
- package/dist/components/design/Svg.d.ts.map +1 -1
- package/dist/components/design/Svg.js +32 -12
- package/dist/components/design/Svg.js.map +1 -1
- package/dist/components/design/Svg.mjs +32 -13
- package/dist/components/design/Svg.mjs.map +1 -1
- package/dist/components/design/TabNav.d.ts +13 -0
- package/dist/components/design/TabNav.d.ts.map +1 -0
- package/dist/components/design/TabNav.js +64 -0
- package/dist/components/design/TabNav.js.map +1 -0
- package/dist/components/design/TabNav.mjs +81 -0
- package/dist/components/design/TabNav.mjs.map +1 -0
- package/dist/components/funding/CryptoAmountInput.d.ts +11 -0
- package/dist/components/funding/CryptoAmountInput.d.ts.map +1 -0
- package/dist/components/funding/CryptoAmountInput.js +82 -0
- package/dist/components/funding/CryptoAmountInput.js.map +1 -0
- package/dist/components/funding/CryptoAmountInput.mjs +87 -0
- package/dist/components/funding/CryptoAmountInput.mjs.map +1 -0
- package/dist/components/funding/CurrencyDropdown.d.ts +8 -0
- package/dist/components/funding/CurrencyDropdown.d.ts.map +1 -0
- package/dist/components/funding/CurrencyDropdown.js +132 -0
- package/dist/components/funding/CurrencyDropdown.js.map +1 -0
- package/dist/components/funding/CurrencyDropdown.mjs +132 -0
- package/dist/components/funding/CurrencyDropdown.mjs.map +1 -0
- package/dist/components/funding/FiatAmountInput.d.ts +11 -0
- package/dist/components/funding/FiatAmountInput.d.ts.map +1 -0
- package/dist/components/funding/FiatAmountInput.js +94 -0
- package/dist/components/funding/FiatAmountInput.js.map +1 -0
- package/dist/components/funding/FiatAmountInput.mjs +105 -0
- package/dist/components/funding/FiatAmountInput.mjs.map +1 -0
- package/dist/components/funding/OffRamp.d.ts +3 -0
- package/dist/components/funding/OffRamp.d.ts.map +1 -0
- package/dist/components/funding/OffRamp.js +31 -0
- package/dist/components/funding/OffRamp.js.map +1 -0
- package/dist/components/funding/OffRamp.mjs +30 -0
- package/dist/components/funding/OffRamp.mjs.map +1 -0
- package/dist/components/funding/OffRampAmount.d.ts +22 -0
- package/dist/components/funding/OffRampAmount.d.ts.map +1 -0
- package/dist/components/funding/OffRampAmount.js +304 -0
- package/dist/components/funding/OffRampAmount.js.map +1 -0
- package/dist/components/funding/OffRampAmount.mjs +376 -0
- package/dist/components/funding/OffRampAmount.mjs.map +1 -0
- package/dist/components/funding/OffRampDeposit.d.ts +22 -0
- package/dist/components/funding/OffRampDeposit.d.ts.map +1 -0
- package/dist/components/funding/OffRampDeposit.js +455 -0
- package/dist/components/funding/OffRampDeposit.js.map +1 -0
- package/dist/components/funding/OffRampDeposit.mjs +551 -0
- package/dist/components/funding/OffRampDeposit.mjs.map +1 -0
- package/dist/components/funding/OffRampReturn.d.ts +2 -0
- package/dist/components/funding/OffRampReturn.d.ts.map +1 -0
- package/dist/components/funding/OffRampReturn.js +144 -0
- package/dist/components/funding/OffRampReturn.js.map +1 -0
- package/dist/components/funding/OffRampReturn.mjs +146 -0
- package/dist/components/funding/OffRampReturn.mjs.map +1 -0
- package/dist/components/funding/OnRamp.d.ts +7 -0
- package/dist/components/funding/OnRamp.d.ts.map +1 -0
- package/dist/components/funding/OnRamp.js +64 -0
- package/dist/components/funding/OnRamp.js.map +1 -0
- package/dist/components/funding/OnRamp.mjs +58 -0
- package/dist/components/funding/OnRamp.mjs.map +1 -0
- package/dist/components/funding/OnRampAmount.d.ts +21 -0
- package/dist/components/funding/OnRampAmount.d.ts.map +1 -0
- package/dist/components/funding/OnRampAmount.js +229 -0
- package/dist/components/funding/OnRampAmount.js.map +1 -0
- package/dist/components/funding/OnRampAmount.mjs +312 -0
- package/dist/components/funding/OnRampAmount.mjs.map +1 -0
- package/dist/components/funding/OnRampCash.d.ts +3 -0
- package/dist/components/funding/OnRampCash.d.ts.map +1 -0
- package/dist/components/funding/OnRampCash.js +26 -0
- package/dist/components/funding/OnRampCash.js.map +1 -0
- package/dist/components/funding/OnRampCash.mjs +25 -0
- package/dist/components/funding/OnRampCash.mjs.map +1 -0
- package/dist/components/funding/OnRampCrypto.d.ts +11 -0
- package/dist/components/funding/OnRampCrypto.d.ts.map +1 -0
- package/dist/components/funding/OnRampCrypto.js +126 -0
- package/dist/components/funding/OnRampCrypto.js.map +1 -0
- package/dist/components/funding/OnRampCrypto.mjs +148 -0
- package/dist/components/funding/OnRampCrypto.mjs.map +1 -0
- package/dist/components/funding/OnRampCryptoSend.d.ts +15 -0
- package/dist/components/funding/OnRampCryptoSend.d.ts.map +1 -0
- package/dist/components/funding/OnRampCryptoSend.js +251 -0
- package/dist/components/funding/OnRampCryptoSend.js.map +1 -0
- package/dist/components/funding/OnRampCryptoSend.mjs +323 -0
- package/dist/components/funding/OnRampCryptoSend.mjs.map +1 -0
- package/dist/components/funding/OnRampCryptoStatus.d.ts +14 -0
- package/dist/components/funding/OnRampCryptoStatus.d.ts.map +1 -0
- package/dist/components/funding/OnRampCryptoStatus.js +153 -0
- package/dist/components/funding/OnRampCryptoStatus.js.map +1 -0
- package/dist/components/funding/OnRampCryptoStatus.mjs +272 -0
- package/dist/components/funding/OnRampCryptoStatus.mjs.map +1 -0
- package/dist/components/funding/OnRampExternalAccountSelector.d.ts +11 -0
- package/dist/components/funding/OnRampExternalAccountSelector.d.ts.map +1 -0
- package/dist/components/funding/OnRampExternalAccountSelector.js +95 -0
- package/dist/components/funding/OnRampExternalAccountSelector.js.map +1 -0
- package/dist/components/funding/OnRampExternalAccountSelector.mjs +109 -0
- package/dist/components/funding/OnRampExternalAccountSelector.mjs.map +1 -0
- package/dist/components/funding/OnRampExternalWallet.d.ts +12 -0
- package/dist/components/funding/OnRampExternalWallet.d.ts.map +1 -0
- package/dist/components/funding/OnRampExternalWallet.js +218 -0
- package/dist/components/funding/OnRampExternalWallet.js.map +1 -0
- package/dist/components/funding/OnRampExternalWallet.mjs +303 -0
- package/dist/components/funding/OnRampExternalWallet.mjs.map +1 -0
- package/dist/components/funding/OnRampStatus.d.ts +15 -0
- package/dist/components/funding/OnRampStatus.d.ts.map +1 -0
- package/dist/components/funding/OnRampStatus.js +114 -0
- package/dist/components/funding/OnRampStatus.js.map +1 -0
- package/dist/components/funding/OnRampStatus.mjs +166 -0
- package/dist/components/funding/OnRampStatus.mjs.map +1 -0
- package/dist/components/funding/PaymentMethods.d.ts +35 -0
- package/dist/components/funding/PaymentMethods.d.ts.map +1 -0
- package/dist/components/funding/PaymentMethods.js +173 -0
- package/dist/components/funding/PaymentMethods.js.map +1 -0
- package/dist/components/funding/PaymentMethods.mjs +180 -0
- package/dist/components/funding/PaymentMethods.mjs.map +1 -0
- package/dist/components/funding/QuoteDetails.d.ts +13 -0
- package/dist/components/funding/QuoteDetails.d.ts.map +1 -0
- package/dist/components/funding/QuoteDetails.js +124 -0
- package/dist/components/funding/QuoteDetails.js.map +1 -0
- package/dist/components/funding/QuoteDetails.mjs +121 -0
- package/dist/components/funding/QuoteDetails.mjs.map +1 -0
- package/dist/components/funding/QuoteOption.d.ts +23 -0
- package/dist/components/funding/QuoteOption.d.ts.map +1 -0
- package/dist/components/funding/QuoteOption.js +153 -0
- package/dist/components/funding/QuoteOption.js.map +1 -0
- package/dist/components/funding/QuoteOption.mjs +150 -0
- package/dist/components/funding/QuoteOption.mjs.map +1 -0
- package/dist/components/funding/QuotePicker.d.ts +13 -0
- package/dist/components/funding/QuotePicker.d.ts.map +1 -0
- package/dist/components/funding/QuotePicker.js +49 -0
- package/dist/components/funding/QuotePicker.js.map +1 -0
- package/dist/components/funding/QuotePicker.mjs +48 -0
- package/dist/components/funding/QuotePicker.mjs.map +1 -0
- package/dist/components/funding/TokenSelect.d.ts +18 -0
- package/dist/components/funding/TokenSelect.d.ts.map +1 -0
- package/dist/components/funding/TokenSelect.js +198 -0
- package/dist/components/funding/TokenSelect.js.map +1 -0
- package/dist/components/funding/TokenSelect.mjs +210 -0
- package/dist/components/funding/TokenSelect.mjs.map +1 -0
- package/dist/components/funding/offRampRedirect.d.ts +61 -0
- package/dist/components/funding/offRampRedirect.d.ts.map +1 -0
- package/dist/components/funding/offRampRedirect.js +282 -0
- package/dist/components/funding/offRampRedirect.js.map +1 -0
- package/dist/components/funding/offRampRedirect.mjs +274 -0
- package/dist/components/funding/offRampRedirect.mjs.map +1 -0
- package/dist/components/send-transaction/SendTransaction.d.ts.map +1 -1
- package/dist/components/send-transaction/SendTransaction.js +8 -6
- package/dist/components/send-transaction/SendTransaction.js.map +1 -1
- package/dist/components/send-transaction/SendTransaction.mjs +8 -6
- package/dist/components/send-transaction/SendTransaction.mjs.map +1 -1
- package/dist/components/send-transaction/helpers.d.ts.map +1 -1
- package/dist/components/send-transaction/helpers.js +4 -0
- package/dist/components/send-transaction/helpers.js.map +1 -1
- package/dist/components/send-transaction/helpers.mjs +4 -0
- package/dist/components/send-transaction/helpers.mjs.map +1 -1
- package/dist/components/sign/Message.d.ts.map +1 -1
- package/dist/components/sign/Message.js +2 -1
- package/dist/components/sign/Message.js.map +1 -1
- package/dist/components/sign/Message.mjs +2 -2
- package/dist/components/sign/Message.mjs.map +1 -1
- package/dist/providers/SupportedAssetsProvider.d.ts +18 -0
- package/dist/providers/SupportedAssetsProvider.d.ts.map +1 -0
- package/dist/providers/SupportedAssetsProvider.js +71 -0
- package/dist/providers/SupportedAssetsProvider.js.map +1 -0
- package/dist/providers/SupportedAssetsProvider.mjs +114 -0
- package/dist/providers/SupportedAssetsProvider.mjs.map +1 -0
- package/dist/providers/TurnkeyProvider.d.ts.map +1 -1
- package/dist/providers/TurnkeyProvider.js +2 -1
- package/dist/providers/TurnkeyProvider.js.map +1 -1
- package/dist/providers/TurnkeyProvider.mjs +2 -1
- package/dist/providers/TurnkeyProvider.mjs.map +1 -1
- package/dist/providers/client/Provider.d.ts.map +1 -1
- package/dist/providers/client/Provider.js +98 -153
- package/dist/providers/client/Provider.js.map +1 -1
- package/dist/providers/client/Provider.mjs +214 -328
- package/dist/providers/client/Provider.mjs.map +1 -1
- package/dist/providers/client/Types.d.ts +37 -12
- package/dist/providers/client/Types.d.ts.map +1 -1
- package/dist/providers/client/Types.js.map +1 -1
- package/dist/providers/client/Types.mjs.map +1 -1
- package/dist/providers/modal/Provider.d.ts +1 -0
- package/dist/providers/modal/Provider.d.ts.map +1 -1
- package/dist/providers/modal/Provider.js +12 -0
- package/dist/providers/modal/Provider.js.map +1 -1
- package/dist/providers/modal/Provider.mjs +15 -0
- package/dist/providers/modal/Provider.mjs.map +1 -1
- package/dist/providers/modal/Root.d.ts.map +1 -1
- package/dist/providers/modal/Root.js +16 -14
- package/dist/providers/modal/Root.js.map +1 -1
- package/dist/providers/modal/Root.mjs +16 -14
- package/dist/providers/modal/Root.mjs.map +1 -1
- package/dist/styles.css +1 -1
- package/dist/types/method-types.d.ts +21 -9
- package/dist/types/method-types.d.ts.map +1 -1
- package/dist/utils/funding/buildCryptoTransfer.d.ts +41 -0
- package/dist/utils/funding/buildCryptoTransfer.d.ts.map +1 -0
- package/dist/utils/funding/buildCryptoTransfer.js +134 -0
- package/dist/utils/funding/buildCryptoTransfer.js.map +1 -0
- package/dist/utils/funding/buildCryptoTransfer.mjs +128 -0
- package/dist/utils/funding/buildCryptoTransfer.mjs.map +1 -0
- package/dist/utils/funding/chainLabel.d.ts +2 -0
- package/dist/utils/funding/chainLabel.d.ts.map +1 -0
- package/dist/utils/funding/chainLabel.js +19 -0
- package/dist/utils/funding/chainLabel.js.map +1 -0
- package/dist/utils/funding/chainLabel.mjs +18 -0
- package/dist/utils/funding/chainLabel.mjs.map +1 -0
- package/dist/utils/funding/depositPlan.d.ts +28 -0
- package/dist/utils/funding/depositPlan.d.ts.map +1 -0
- package/dist/utils/funding/depositPlan.js +127 -0
- package/dist/utils/funding/depositPlan.js.map +1 -0
- package/dist/utils/funding/depositPlan.mjs +120 -0
- package/dist/utils/funding/depositPlan.mjs.map +1 -0
- package/dist/utils/funding/index.d.ts +8 -0
- package/dist/utils/funding/index.d.ts.map +1 -0
- package/dist/utils/funding/onRampTokens.d.ts +6 -0
- package/dist/utils/funding/onRampTokens.d.ts.map +1 -0
- package/dist/utils/funding/onRampTokens.js +21 -0
- package/dist/utils/funding/onRampTokens.js.map +1 -0
- package/dist/utils/funding/onRampTokens.mjs +26 -0
- package/dist/utils/funding/onRampTokens.mjs.map +1 -0
- package/dist/utils/funding/rankQuotes.d.ts +7 -0
- package/dist/utils/funding/rankQuotes.d.ts.map +1 -0
- package/dist/utils/funding/rankQuotes.js +37 -0
- package/dist/utils/funding/rankQuotes.js.map +1 -0
- package/dist/utils/funding/rankQuotes.mjs +50 -0
- package/dist/utils/funding/rankQuotes.mjs.map +1 -0
- package/dist/utils/funding/sendCryptoTransfer.d.ts +26 -0
- package/dist/utils/funding/sendCryptoTransfer.d.ts.map +1 -0
- package/dist/utils/funding/sendCryptoTransfer.js +281 -0
- package/dist/utils/funding/sendCryptoTransfer.js.map +1 -0
- package/dist/utils/funding/sendCryptoTransfer.mjs +405 -0
- package/dist/utils/funding/sendCryptoTransfer.mjs.map +1 -0
- package/dist/utils/funding/tokenSymbol.d.ts +7 -0
- package/dist/utils/funding/tokenSymbol.d.ts.map +1 -0
- package/dist/utils/funding/tokenSymbol.js +32 -0
- package/dist/utils/funding/tokenSymbol.js.map +1 -0
- package/dist/utils/funding/tokenSymbol.mjs +31 -0
- package/dist/utils/funding/tokenSymbol.mjs.map +1 -0
- package/dist/utils/utils.d.ts +1 -0
- package/dist/utils/utils.d.ts.map +1 -1
- package/dist/utils/utils.js +5 -0
- package/dist/utils/utils.js.map +1 -1
- package/dist/utils/utils.mjs +7 -1
- package/dist/utils/utils.mjs.map +1 -1
- package/package.json +7 -3
- package/dist/components/onramp/OnRamp.d.ts +0 -14
- package/dist/components/onramp/OnRamp.d.ts.map +0 -1
- package/dist/components/onramp/OnRamp.js +0 -61
- package/dist/components/onramp/OnRamp.js.map +0 -1
- package/dist/components/onramp/OnRamp.mjs +0 -79
- package/dist/components/onramp/OnRamp.mjs.map +0 -1
|
@@ -0,0 +1,114 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var jsxRuntime = require('react/jsx-runtime');
|
|
4
|
+
var react = require('react');
|
|
5
|
+
var core = require('@turnkey/core');
|
|
6
|
+
var Hook = require('../../providers/client/Hook.js');
|
|
7
|
+
var Hook$1 = require('../../providers/modal/Hook.js');
|
|
8
|
+
var Action = require('../auth/Action.js');
|
|
9
|
+
var Svg = require('../design/Svg.js');
|
|
10
|
+
var Success = require('../design/Success.js');
|
|
11
|
+
var QuoteOption = require('./QuoteOption.js');
|
|
12
|
+
|
|
13
|
+
const POLL_INTERVAL_MS = 1000;
|
|
14
|
+
const providerLogos = {
|
|
15
|
+
FIAT_RAMP_PROVIDER_COINBASE: Svg.CoinbaseLogo,
|
|
16
|
+
FIAT_RAMP_PROVIDER_MOONPAY: Svg.MoonPayLogo,
|
|
17
|
+
FIAT_RAMP_PROVIDER_MELD: Svg.MeldLogo
|
|
18
|
+
};
|
|
19
|
+
function OnRampStatusPage(props) {
|
|
20
|
+
const {
|
|
21
|
+
transactionId,
|
|
22
|
+
organizationId,
|
|
23
|
+
stampWith,
|
|
24
|
+
provider,
|
|
25
|
+
openedInNewTab,
|
|
26
|
+
successPageDuration = 2000,
|
|
27
|
+
successText = "Purchase complete",
|
|
28
|
+
statusLabel = "Onramp",
|
|
29
|
+
onSuccess,
|
|
30
|
+
onError
|
|
31
|
+
} = props;
|
|
32
|
+
const {
|
|
33
|
+
httpClient
|
|
34
|
+
} = Hook.useTurnkey();
|
|
35
|
+
const {
|
|
36
|
+
closeModal
|
|
37
|
+
} = Hook$1.useModal();
|
|
38
|
+
const [completed, setCompleted] = react.useState(false);
|
|
39
|
+
const ProviderLogo = providerLogos[provider];
|
|
40
|
+
react.useEffect(() => {
|
|
41
|
+
if (!httpClient || completed) return;
|
|
42
|
+
let active = true;
|
|
43
|
+
let polling = false;
|
|
44
|
+
let interval;
|
|
45
|
+
const finish = callback => {
|
|
46
|
+
if (!active) return;
|
|
47
|
+
active = false;
|
|
48
|
+
clearInterval(interval);
|
|
49
|
+
callback();
|
|
50
|
+
};
|
|
51
|
+
const poll = async () => {
|
|
52
|
+
if (!active || polling) return;
|
|
53
|
+
polling = true;
|
|
54
|
+
try {
|
|
55
|
+
const request = {
|
|
56
|
+
transactionId,
|
|
57
|
+
refresh: true,
|
|
58
|
+
...(organizationId ? {
|
|
59
|
+
organizationId
|
|
60
|
+
} : {})
|
|
61
|
+
};
|
|
62
|
+
const response = stampWith ? await httpClient.getOnRampTransactionStatus(request, stampWith) : await httpClient.getOnRampTransactionStatus(request);
|
|
63
|
+
if (!active) return;
|
|
64
|
+
const status = response.transactionStatus.toUpperCase();
|
|
65
|
+
if (isCompletedStatus(status)) {
|
|
66
|
+
finish(() => setCompleted(true));
|
|
67
|
+
return;
|
|
68
|
+
}
|
|
69
|
+
if (isFailedStatus(status)) {
|
|
70
|
+
finish(() => {
|
|
71
|
+
onError(new core.TurnkeyError(`${statusLabel} transaction ${response.transactionStatus}.`, core.TurnkeyErrorCodes.POLL_TRANSACTION_STATUS_ERROR));
|
|
72
|
+
closeModal();
|
|
73
|
+
});
|
|
74
|
+
}
|
|
75
|
+
} catch {
|
|
76
|
+
// Keep polling. A single failed status request is not a failed purchase.
|
|
77
|
+
} finally {
|
|
78
|
+
polling = false;
|
|
79
|
+
}
|
|
80
|
+
};
|
|
81
|
+
void poll();
|
|
82
|
+
interval = setInterval(() => void poll(), POLL_INTERVAL_MS);
|
|
83
|
+
return () => {
|
|
84
|
+
active = false;
|
|
85
|
+
clearInterval(interval);
|
|
86
|
+
};
|
|
87
|
+
}, [closeModal, completed, httpClient, onError, organizationId, stampWith, statusLabel, transactionId]);
|
|
88
|
+
if (completed) {
|
|
89
|
+
return jsxRuntime.jsx(Success.SuccessPage, {
|
|
90
|
+
text: successText,
|
|
91
|
+
duration: successPageDuration,
|
|
92
|
+
onComplete: () => {
|
|
93
|
+
onSuccess();
|
|
94
|
+
closeModal();
|
|
95
|
+
}
|
|
96
|
+
});
|
|
97
|
+
}
|
|
98
|
+
return jsxRuntime.jsx(Action.ActionPage, {
|
|
99
|
+
title: "Completing Payment",
|
|
100
|
+
subtitle: `Use the ${QuoteOption.providerName(provider)} ${openedInNewTab ? "tab" : "popup"} to complete the payment.`,
|
|
101
|
+
icon: ProviderLogo ? jsxRuntime.jsx(ProviderLogo, {
|
|
102
|
+
className: "size-10"
|
|
103
|
+
}) : undefined
|
|
104
|
+
});
|
|
105
|
+
}
|
|
106
|
+
function isCompletedStatus(status) {
|
|
107
|
+
return status.includes("COMPLETED");
|
|
108
|
+
}
|
|
109
|
+
function isFailedStatus(status) {
|
|
110
|
+
return ["FAILED", "CANCELLED", "CANCELED"].some(value => status.includes(value));
|
|
111
|
+
}
|
|
112
|
+
|
|
113
|
+
exports.OnRampStatusPage = OnRampStatusPage;
|
|
114
|
+
//# sourceMappingURL=OnRampStatus.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"OnRampStatus.js","sources":["../../../src/components/funding/OnRampStatus.tsx"],"sourcesContent":[null],"names":["POLL_INTERVAL_MS","providerLogos","FIAT_RAMP_PROVIDER_COINBASE","CoinbaseLogo","FIAT_RAMP_PROVIDER_MOONPAY","MoonPayLogo","FIAT_RAMP_PROVIDER_MELD","MeldLogo","OnRampStatusPage","props","transactionId","organizationId","stampWith","provider","openedInNewTab","successPageDuration","successText","statusLabel","onSuccess","onError","httpClient","useTurnkey","closeModal","useModal","completed","setCompleted","useState","ProviderLogo","useEffect","active","polling","interval","finish","callback","clearInterval","poll","request","refresh","response","getOnRampTransactionStatus","status","transactionStatus","toUpperCase","isCompletedStatus","isFailedStatus","TurnkeyError","TurnkeyErrorCodes","POLL_TRANSACTION_STATUS_ERROR","setInterval","_jsx","SuccessPage","text","duration","onComplete","ActionPage","title","subtitle","providerName","icon","className","undefined","includes","some","value"],"mappings":"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"}
|
|
@@ -0,0 +1,166 @@
|
|
|
1
|
+
import { slicedToArray as _slicedToArray, asyncToGenerator as _asyncToGenerator, regenerator as _regenerator, objectSpread2 as _objectSpread2 } from '../../_virtual/_rollupPluginBabelHelpers.mjs';
|
|
2
|
+
import { jsx } from 'react/jsx-runtime';
|
|
3
|
+
import { useState, useEffect } from 'react';
|
|
4
|
+
import { TurnkeyError, TurnkeyErrorCodes } from '@turnkey/core';
|
|
5
|
+
import { useTurnkey } from '../../providers/client/Hook.mjs';
|
|
6
|
+
import { useModal } from '../../providers/modal/Hook.mjs';
|
|
7
|
+
import { ActionPage } from '../auth/Action.mjs';
|
|
8
|
+
import { MeldLogo, MoonPayLogo, CoinbaseLogo } from '../design/Svg.mjs';
|
|
9
|
+
import { SuccessPage } from '../design/Success.mjs';
|
|
10
|
+
import { providerName } from './QuoteOption.mjs';
|
|
11
|
+
|
|
12
|
+
var POLL_INTERVAL_MS = 1000;
|
|
13
|
+
var providerLogos = {
|
|
14
|
+
FIAT_RAMP_PROVIDER_COINBASE: CoinbaseLogo,
|
|
15
|
+
FIAT_RAMP_PROVIDER_MOONPAY: MoonPayLogo,
|
|
16
|
+
FIAT_RAMP_PROVIDER_MELD: MeldLogo
|
|
17
|
+
};
|
|
18
|
+
function OnRampStatusPage(props) {
|
|
19
|
+
var transactionId = props.transactionId,
|
|
20
|
+
organizationId = props.organizationId,
|
|
21
|
+
stampWith = props.stampWith,
|
|
22
|
+
provider = props.provider,
|
|
23
|
+
openedInNewTab = props.openedInNewTab,
|
|
24
|
+
_props$successPageDur = props.successPageDuration,
|
|
25
|
+
successPageDuration = _props$successPageDur === void 0 ? 2000 : _props$successPageDur,
|
|
26
|
+
_props$successText = props.successText,
|
|
27
|
+
successText = _props$successText === void 0 ? "Purchase complete" : _props$successText,
|
|
28
|
+
_props$statusLabel = props.statusLabel,
|
|
29
|
+
statusLabel = _props$statusLabel === void 0 ? "Onramp" : _props$statusLabel,
|
|
30
|
+
onSuccess = props.onSuccess,
|
|
31
|
+
onError = props.onError;
|
|
32
|
+
var _useTurnkey = useTurnkey(),
|
|
33
|
+
httpClient = _useTurnkey.httpClient;
|
|
34
|
+
var _useModal = useModal(),
|
|
35
|
+
closeModal = _useModal.closeModal;
|
|
36
|
+
var _useState = useState(false),
|
|
37
|
+
_useState2 = _slicedToArray(_useState, 2),
|
|
38
|
+
completed = _useState2[0],
|
|
39
|
+
setCompleted = _useState2[1];
|
|
40
|
+
var ProviderLogo = providerLogos[provider];
|
|
41
|
+
useEffect(function () {
|
|
42
|
+
if (!httpClient || completed) return;
|
|
43
|
+
var active = true;
|
|
44
|
+
var polling = false;
|
|
45
|
+
var interval;
|
|
46
|
+
var finish = function finish(callback) {
|
|
47
|
+
if (!active) return;
|
|
48
|
+
active = false;
|
|
49
|
+
clearInterval(interval);
|
|
50
|
+
callback();
|
|
51
|
+
};
|
|
52
|
+
var poll = /*#__PURE__*/function () {
|
|
53
|
+
var _ref = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee() {
|
|
54
|
+
var request, response, status, _t;
|
|
55
|
+
return _regenerator().w(function (_context) {
|
|
56
|
+
while (1) switch (_context.p = _context.n) {
|
|
57
|
+
case 0:
|
|
58
|
+
if (!(!active || polling)) {
|
|
59
|
+
_context.n = 1;
|
|
60
|
+
break;
|
|
61
|
+
}
|
|
62
|
+
return _context.a(2);
|
|
63
|
+
case 1:
|
|
64
|
+
polling = true;
|
|
65
|
+
_context.p = 2;
|
|
66
|
+
request = _objectSpread2({
|
|
67
|
+
transactionId: transactionId,
|
|
68
|
+
refresh: true
|
|
69
|
+
}, organizationId ? {
|
|
70
|
+
organizationId: organizationId
|
|
71
|
+
} : {});
|
|
72
|
+
if (!stampWith) {
|
|
73
|
+
_context.n = 4;
|
|
74
|
+
break;
|
|
75
|
+
}
|
|
76
|
+
_context.n = 3;
|
|
77
|
+
return httpClient.getOnRampTransactionStatus(request, stampWith);
|
|
78
|
+
case 3:
|
|
79
|
+
_t = _context.v;
|
|
80
|
+
_context.n = 6;
|
|
81
|
+
break;
|
|
82
|
+
case 4:
|
|
83
|
+
_context.n = 5;
|
|
84
|
+
return httpClient.getOnRampTransactionStatus(request);
|
|
85
|
+
case 5:
|
|
86
|
+
_t = _context.v;
|
|
87
|
+
case 6:
|
|
88
|
+
response = _t;
|
|
89
|
+
if (active) {
|
|
90
|
+
_context.n = 7;
|
|
91
|
+
break;
|
|
92
|
+
}
|
|
93
|
+
return _context.a(2);
|
|
94
|
+
case 7:
|
|
95
|
+
status = response.transactionStatus.toUpperCase();
|
|
96
|
+
if (!isCompletedStatus(status)) {
|
|
97
|
+
_context.n = 8;
|
|
98
|
+
break;
|
|
99
|
+
}
|
|
100
|
+
finish(function () {
|
|
101
|
+
return setCompleted(true);
|
|
102
|
+
});
|
|
103
|
+
return _context.a(2);
|
|
104
|
+
case 8:
|
|
105
|
+
if (isFailedStatus(status)) {
|
|
106
|
+
finish(function () {
|
|
107
|
+
onError(new TurnkeyError("".concat(statusLabel, " transaction ").concat(response.transactionStatus, "."), TurnkeyErrorCodes.POLL_TRANSACTION_STATUS_ERROR));
|
|
108
|
+
closeModal();
|
|
109
|
+
});
|
|
110
|
+
}
|
|
111
|
+
_context.n = 10;
|
|
112
|
+
break;
|
|
113
|
+
case 9:
|
|
114
|
+
_context.p = 9;
|
|
115
|
+
_context.v;
|
|
116
|
+
case 10:
|
|
117
|
+
_context.p = 10;
|
|
118
|
+
polling = false;
|
|
119
|
+
return _context.f(10);
|
|
120
|
+
case 11:
|
|
121
|
+
return _context.a(2);
|
|
122
|
+
}
|
|
123
|
+
}, _callee, null, [[2, 9, 10, 11]]);
|
|
124
|
+
}));
|
|
125
|
+
return function poll() {
|
|
126
|
+
return _ref.apply(this, arguments);
|
|
127
|
+
};
|
|
128
|
+
}();
|
|
129
|
+
void poll();
|
|
130
|
+
interval = setInterval(function () {
|
|
131
|
+
return void poll();
|
|
132
|
+
}, POLL_INTERVAL_MS);
|
|
133
|
+
return function () {
|
|
134
|
+
active = false;
|
|
135
|
+
clearInterval(interval);
|
|
136
|
+
};
|
|
137
|
+
}, [closeModal, completed, httpClient, onError, organizationId, stampWith, statusLabel, transactionId]);
|
|
138
|
+
if (completed) {
|
|
139
|
+
return jsx(SuccessPage, {
|
|
140
|
+
text: successText,
|
|
141
|
+
duration: successPageDuration,
|
|
142
|
+
onComplete: function onComplete() {
|
|
143
|
+
onSuccess();
|
|
144
|
+
closeModal();
|
|
145
|
+
}
|
|
146
|
+
});
|
|
147
|
+
}
|
|
148
|
+
return jsx(ActionPage, {
|
|
149
|
+
title: "Completing Payment",
|
|
150
|
+
subtitle: "Use the ".concat(providerName(provider), " ").concat(openedInNewTab ? "tab" : "popup", " to complete the payment."),
|
|
151
|
+
icon: ProviderLogo ? jsx(ProviderLogo, {
|
|
152
|
+
className: "size-10"
|
|
153
|
+
}) : undefined
|
|
154
|
+
});
|
|
155
|
+
}
|
|
156
|
+
function isCompletedStatus(status) {
|
|
157
|
+
return status.includes("COMPLETED");
|
|
158
|
+
}
|
|
159
|
+
function isFailedStatus(status) {
|
|
160
|
+
return ["FAILED", "CANCELLED", "CANCELED"].some(function (value) {
|
|
161
|
+
return status.includes(value);
|
|
162
|
+
});
|
|
163
|
+
}
|
|
164
|
+
|
|
165
|
+
export { OnRampStatusPage };
|
|
166
|
+
//# sourceMappingURL=OnRampStatus.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"OnRampStatus.mjs","sources":["../../../src/components/funding/OnRampStatus.tsx"],"sourcesContent":[null],"names":["POLL_INTERVAL_MS","providerLogos","FIAT_RAMP_PROVIDER_COINBASE","CoinbaseLogo","FIAT_RAMP_PROVIDER_MOONPAY","MoonPayLogo","FIAT_RAMP_PROVIDER_MELD","MeldLogo","OnRampStatusPage","props","transactionId","organizationId","stampWith","provider","openedInNewTab","_props$successPageDur","successPageDuration","_props$successText","successText","_props$statusLabel","statusLabel","onSuccess","onError","_useTurnkey","useTurnkey","httpClient","_useModal","useModal","closeModal","_useState","useState","_useState2","_slicedToArray","completed","setCompleted","ProviderLogo","useEffect","active","polling","interval","finish","callback","clearInterval","poll","_ref","_asyncToGenerator","_regenerator","m","_callee","request","response","status","_t","w","_context","p","n","a","_objectSpread","refresh","getOnRampTransactionStatus","v","transactionStatus","toUpperCase","isCompletedStatus","isFailedStatus","TurnkeyError","concat","TurnkeyErrorCodes","POLL_TRANSACTION_STATUS_ERROR","f","apply","arguments","setInterval","_jsx","SuccessPage","text","duration","onComplete","ActionPage","title","subtitle","providerName","icon","className","undefined","includes","some","value"],"mappings":"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"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
import type { IconDefinition } from "@fortawesome/fontawesome-svg-core";
|
|
3
|
+
import type { v1FiatRampPaymentMethod } from "@turnkey/core";
|
|
4
|
+
type PayoutOption = {
|
|
5
|
+
id: string;
|
|
6
|
+
label: string;
|
|
7
|
+
description: string;
|
|
8
|
+
icon: IconDefinition;
|
|
9
|
+
};
|
|
10
|
+
export type PaymentMethodListProps = {
|
|
11
|
+
onSelect: (method: v1FiatRampPaymentMethod) => void;
|
|
12
|
+
className?: string;
|
|
13
|
+
};
|
|
14
|
+
export declare const PaymentMethodList: import("react").ForwardRefExoticComponent<PaymentMethodListProps & import("react").RefAttributes<HTMLDivElement>>;
|
|
15
|
+
export declare function PaymentMethodSelect(props: {
|
|
16
|
+
value?: v1FiatRampPaymentMethod | undefined;
|
|
17
|
+
onChange: (method: v1FiatRampPaymentMethod) => void;
|
|
18
|
+
}): import("react/jsx-runtime").JSX.Element | null;
|
|
19
|
+
export type OffRampPayoutId = "card" | "ach" | "fiat-account";
|
|
20
|
+
export declare const offRampPayouts: (PayoutOption & {
|
|
21
|
+
id: OffRampPayoutId;
|
|
22
|
+
methods: v1FiatRampPaymentMethod[];
|
|
23
|
+
})[];
|
|
24
|
+
export declare function offRampPayoutMethods(payout: OffRampPayoutId | undefined): v1FiatRampPaymentMethod[] | undefined;
|
|
25
|
+
export type OffRampPayoutListProps = {
|
|
26
|
+
onSelect: (payout: OffRampPayoutId) => void;
|
|
27
|
+
className?: string;
|
|
28
|
+
};
|
|
29
|
+
export declare const OffRampPayoutList: import("react").ForwardRefExoticComponent<OffRampPayoutListProps & import("react").RefAttributes<HTMLDivElement>>;
|
|
30
|
+
export declare function OffRampPayoutSelect(props: {
|
|
31
|
+
value?: OffRampPayoutId | undefined;
|
|
32
|
+
onChange: (payout: OffRampPayoutId) => void;
|
|
33
|
+
}): import("react/jsx-runtime").JSX.Element | null;
|
|
34
|
+
export {};
|
|
35
|
+
//# sourceMappingURL=PaymentMethods.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PaymentMethods.d.ts","sourceRoot":"","sources":["../../../src/components/funding/PaymentMethods.tsx"],"names":[],"mappings":";AAQA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAC;AACxE,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,eAAe,CAAC;AAM7D,KAAK,YAAY,GAAG;IAClB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,cAAc,CAAC;CACtB,CAAC;AAmEF,MAAM,MAAM,sBAAsB,GAAG;IACnC,QAAQ,EAAE,CAAC,MAAM,EAAE,uBAAuB,KAAK,IAAI,CAAC;IACpD,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,eAAO,MAAM,iBAAiB,mHAiB5B,CAAC;AAEH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE;IACzC,KAAK,CAAC,EAAE,uBAAuB,GAAG,SAAS,CAAC;IAC5C,QAAQ,EAAE,CAAC,MAAM,EAAE,uBAAuB,KAAK,IAAI,CAAC;CACrD,kDAwBA;AAID,MAAM,MAAM,eAAe,GAAG,MAAM,GAAG,KAAK,GAAG,cAAc,CAAC;AAE9D,eAAO,MAAM,cAAc,EAAE,CAAC,YAAY,GAAG;IAC3C,EAAE,EAAE,eAAe,CAAC;IACpB,OAAO,EAAE,uBAAuB,EAAE,CAAC;CACpC,CAAC,EAyBD,CAAC;AAEF,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,eAAe,GAAG,SAAS,yCAEvE;AAED,MAAM,MAAM,sBAAsB,GAAG;IACnC,QAAQ,EAAE,CAAC,MAAM,EAAE,eAAe,KAAK,IAAI,CAAC;IAC5C,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,eAAO,MAAM,iBAAiB,mHAiB5B,CAAC;AAEH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE;IACzC,KAAK,CAAC,EAAE,eAAe,GAAG,SAAS,CAAC;IACpC,QAAQ,EAAE,CAAC,MAAM,EAAE,eAAe,KAAK,IAAI,CAAC;CAC7C,kDAwBA"}
|
|
@@ -0,0 +1,173 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var jsxRuntime = require('react/jsx-runtime');
|
|
4
|
+
var freeSolidSvgIcons = require('@fortawesome/free-solid-svg-icons');
|
|
5
|
+
var freeBrandsSvgIcons = require('@fortawesome/free-brands-svg-icons');
|
|
6
|
+
var reactFontawesome = require('@fortawesome/react-fontawesome');
|
|
7
|
+
var clsx = require('clsx');
|
|
8
|
+
var react = require('react');
|
|
9
|
+
var Hook = require('../../providers/modal/Hook.js');
|
|
10
|
+
var Buttons = require('../design/Buttons.js');
|
|
11
|
+
|
|
12
|
+
const paymentMethods = [{
|
|
13
|
+
id: "FIAT_RAMP_PAYMENT_METHOD_CREDIT_DEBIT_CARD",
|
|
14
|
+
method: "FIAT_RAMP_PAYMENT_METHOD_CREDIT_DEBIT_CARD",
|
|
15
|
+
label: "Card",
|
|
16
|
+
description: "Directly enter your debit or credit card details",
|
|
17
|
+
icon: freeSolidSvgIcons.faCreditCard
|
|
18
|
+
}, {
|
|
19
|
+
id: "FIAT_RAMP_PAYMENT_METHOD_APPLE_PAY",
|
|
20
|
+
method: "FIAT_RAMP_PAYMENT_METHOD_APPLE_PAY",
|
|
21
|
+
label: "Apple Pay",
|
|
22
|
+
description: "Use your Apple Wallet to pay",
|
|
23
|
+
icon: freeBrandsSvgIcons.faApple
|
|
24
|
+
}, {
|
|
25
|
+
id: "FIAT_RAMP_PAYMENT_METHOD_GOOGLE_PAY",
|
|
26
|
+
method: "FIAT_RAMP_PAYMENT_METHOD_GOOGLE_PAY",
|
|
27
|
+
label: "Google Pay",
|
|
28
|
+
description: "Use your Google Wallet to pay",
|
|
29
|
+
icon: freeBrandsSvgIcons.faGoogle
|
|
30
|
+
}];
|
|
31
|
+
function PaymentMethodButton(props) {
|
|
32
|
+
const {
|
|
33
|
+
option,
|
|
34
|
+
onSelect
|
|
35
|
+
} = props;
|
|
36
|
+
const {
|
|
37
|
+
isMobile
|
|
38
|
+
} = Hook.useModal();
|
|
39
|
+
const [isHovering, setIsHovering] = react.useState(false);
|
|
40
|
+
return jsxRuntime.jsxs(Buttons.ActionButton, {
|
|
41
|
+
name: `onramp-${option.id}`,
|
|
42
|
+
onClick: onSelect,
|
|
43
|
+
...(!isMobile && {
|
|
44
|
+
onMouseEnter: () => setIsHovering(true),
|
|
45
|
+
onMouseLeave: () => setIsHovering(false)
|
|
46
|
+
}),
|
|
47
|
+
className: "relative flex w-full items-center gap-2 overflow-hidden bg-button-light text-inherit dark:bg-button-dark",
|
|
48
|
+
children: [jsxRuntime.jsx("span", {
|
|
49
|
+
className: "flex size-6 shrink-0 items-center justify-center",
|
|
50
|
+
children: jsxRuntime.jsx(reactFontawesome.FontAwesomeIcon, {
|
|
51
|
+
icon: option.icon,
|
|
52
|
+
className: "size-4 text-xl"
|
|
53
|
+
})
|
|
54
|
+
}), jsxRuntime.jsxs("span", {
|
|
55
|
+
className: "flex flex-col items-start",
|
|
56
|
+
children: [jsxRuntime.jsx("span", {
|
|
57
|
+
children: option.label
|
|
58
|
+
}), jsxRuntime.jsx("span", {
|
|
59
|
+
className: "text-xs text-icon-text-light dark:text-icon-text-dark",
|
|
60
|
+
children: option.description
|
|
61
|
+
})]
|
|
62
|
+
}), jsxRuntime.jsx(reactFontawesome.FontAwesomeIcon, {
|
|
63
|
+
className: clsx("absolute transition-all duration-200 text-icon-text-light dark:text-icon-text-dark", isHovering ? "right-4" : "-right-4"),
|
|
64
|
+
icon: freeSolidSvgIcons.faChevronRight
|
|
65
|
+
})]
|
|
66
|
+
});
|
|
67
|
+
}
|
|
68
|
+
const PaymentMethodList = /*#__PURE__*/react.forwardRef(function PaymentMethodList(props, ref) {
|
|
69
|
+
const {
|
|
70
|
+
onSelect,
|
|
71
|
+
className
|
|
72
|
+
} = props;
|
|
73
|
+
return jsxRuntime.jsx("div", {
|
|
74
|
+
ref: ref,
|
|
75
|
+
className: clsx("flex w-full flex-col gap-2", className),
|
|
76
|
+
children: paymentMethods.map(option => jsxRuntime.jsx(PaymentMethodButton, {
|
|
77
|
+
option: option,
|
|
78
|
+
onSelect: () => onSelect(option.method)
|
|
79
|
+
}, option.id))
|
|
80
|
+
});
|
|
81
|
+
});
|
|
82
|
+
function PaymentMethodSelect(props) {
|
|
83
|
+
const {
|
|
84
|
+
value,
|
|
85
|
+
onChange
|
|
86
|
+
} = props;
|
|
87
|
+
const {
|
|
88
|
+
openSheet,
|
|
89
|
+
closeSheet
|
|
90
|
+
} = Hook.useModal();
|
|
91
|
+
const option = paymentMethods.find(item => item.id === value);
|
|
92
|
+
if (!option) return null;
|
|
93
|
+
return jsxRuntime.jsx(PaymentMethodButton, {
|
|
94
|
+
option: option,
|
|
95
|
+
onSelect: () => openSheet({
|
|
96
|
+
key: "Payment method",
|
|
97
|
+
content: jsxRuntime.jsx(PaymentMethodList, {
|
|
98
|
+
onSelect: method => {
|
|
99
|
+
onChange(method);
|
|
100
|
+
closeSheet();
|
|
101
|
+
}
|
|
102
|
+
})
|
|
103
|
+
})
|
|
104
|
+
});
|
|
105
|
+
}
|
|
106
|
+
const offRampPayouts = [{
|
|
107
|
+
id: "card",
|
|
108
|
+
label: "Card",
|
|
109
|
+
description: "Receive the sale on a debit card",
|
|
110
|
+
icon: freeSolidSvgIcons.faCreditCard,
|
|
111
|
+
methods: ["FIAT_RAMP_PAYMENT_METHOD_CREDIT_DEBIT_CARD"]
|
|
112
|
+
}, {
|
|
113
|
+
id: "ach",
|
|
114
|
+
label: "ACH transfer",
|
|
115
|
+
description: "Receive the sale in a US bank account",
|
|
116
|
+
icon: freeSolidSvgIcons.faBuildingColumns,
|
|
117
|
+
methods: ["FIAT_RAMP_PAYMENT_METHOD_ACH_BANK_ACCOUNT"]
|
|
118
|
+
}, {
|
|
119
|
+
id: "fiat-account",
|
|
120
|
+
label: "Fiat account",
|
|
121
|
+
description: "Receive the sale in a fiat balance",
|
|
122
|
+
icon: freeSolidSvgIcons.faWallet,
|
|
123
|
+
methods: ["FIAT_RAMP_PAYMENT_METHOD_FIAT_WALLET", "FIAT_RAMP_PAYMENT_METHOD_MOONPAY_BALANCE"]
|
|
124
|
+
}];
|
|
125
|
+
function offRampPayoutMethods(payout) {
|
|
126
|
+
return offRampPayouts.find(item => item.id === payout)?.methods;
|
|
127
|
+
}
|
|
128
|
+
const OffRampPayoutList = /*#__PURE__*/react.forwardRef(function OffRampPayoutList(props, ref) {
|
|
129
|
+
const {
|
|
130
|
+
onSelect,
|
|
131
|
+
className
|
|
132
|
+
} = props;
|
|
133
|
+
return jsxRuntime.jsx("div", {
|
|
134
|
+
ref: ref,
|
|
135
|
+
className: clsx("flex w-full flex-col gap-2", className),
|
|
136
|
+
children: offRampPayouts.map(option => jsxRuntime.jsx(PaymentMethodButton, {
|
|
137
|
+
option: option,
|
|
138
|
+
onSelect: () => onSelect(option.id)
|
|
139
|
+
}, option.id))
|
|
140
|
+
});
|
|
141
|
+
});
|
|
142
|
+
function OffRampPayoutSelect(props) {
|
|
143
|
+
const {
|
|
144
|
+
value,
|
|
145
|
+
onChange
|
|
146
|
+
} = props;
|
|
147
|
+
const {
|
|
148
|
+
openSheet,
|
|
149
|
+
closeSheet
|
|
150
|
+
} = Hook.useModal();
|
|
151
|
+
const option = offRampPayouts.find(item => item.id === value);
|
|
152
|
+
if (!option) return null;
|
|
153
|
+
return jsxRuntime.jsx(PaymentMethodButton, {
|
|
154
|
+
option: option,
|
|
155
|
+
onSelect: () => openSheet({
|
|
156
|
+
key: "Payout method",
|
|
157
|
+
content: jsxRuntime.jsx(OffRampPayoutList, {
|
|
158
|
+
onSelect: payout => {
|
|
159
|
+
onChange(payout);
|
|
160
|
+
closeSheet();
|
|
161
|
+
}
|
|
162
|
+
})
|
|
163
|
+
})
|
|
164
|
+
});
|
|
165
|
+
}
|
|
166
|
+
|
|
167
|
+
exports.OffRampPayoutList = OffRampPayoutList;
|
|
168
|
+
exports.OffRampPayoutSelect = OffRampPayoutSelect;
|
|
169
|
+
exports.PaymentMethodList = PaymentMethodList;
|
|
170
|
+
exports.PaymentMethodSelect = PaymentMethodSelect;
|
|
171
|
+
exports.offRampPayoutMethods = offRampPayoutMethods;
|
|
172
|
+
exports.offRampPayouts = offRampPayouts;
|
|
173
|
+
//# sourceMappingURL=PaymentMethods.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PaymentMethods.js","sources":["../../../src/components/funding/PaymentMethods.tsx"],"sourcesContent":[null],"names":["paymentMethods","id","method","label","description","icon","faCreditCard","faApple","faGoogle","PaymentMethodButton","props","option","onSelect","isMobile","useModal","isHovering","setIsHovering","useState","_jsxs","ActionButton","name","onClick","onMouseEnter","onMouseLeave","className","_jsx","FontAwesomeIcon","children","clsx","faChevronRight","PaymentMethodList","forwardRef","ref","map","PaymentMethodSelect","value","onChange","openSheet","closeSheet","find","item","key","content","offRampPayouts","methods","faBuildingColumns","faWallet","offRampPayoutMethods","payout","OffRampPayoutList","OffRampPayoutSelect"],"mappings":"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"}
|