@funkit/connect 6.15.5 → 6.15.7
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/CHANGELOG.md +24 -0
- package/dist/components/FunCheckoutHistory/FunDirectExecutionHistoryDetail.d.ts +2 -1
- package/dist/consts/bluvo.d.ts +1 -0
- package/dist/consts/meld.d.ts +1 -0
- package/dist/hooks/useCheckoutTransferInit.d.ts +14 -0
- package/dist/hooks/useMinDeposit.d.ts +5 -0
- package/dist/index.css +8 -0
- package/dist/index.js +415 -132
- package/dist/locales/index.d.ts +1 -1
- package/dist/modals/CheckoutModal/SourceChange/sourceChange.css.d.ts +2 -0
- package/dist/providers/FunkitBrokerageProvider.d.ts +1 -1
- package/dist/utils/address.d.ts +2 -1
- package/dist/utils/bluvo.d.ts +1 -1
- package/dist/utils/flags/config.d.ts +1 -1
- package/dist/wallets/walletConnectors/index.js +17 -17
- package/package.json +4 -4
package/dist/index.js
CHANGED
|
@@ -1266,7 +1266,7 @@ function abortCheckoutQuote() {
|
|
|
1266
1266
|
// src/utils/checkout.ts
|
|
1267
1267
|
import {
|
|
1268
1268
|
CheckoutState as CheckoutState2,
|
|
1269
|
-
ETHEREAL_API_KEY as
|
|
1269
|
+
ETHEREAL_API_KEY as ETHEREAL_API_KEY4,
|
|
1270
1270
|
HYENA_API_KEY as HYENA_API_KEY3,
|
|
1271
1271
|
getAssetPriceInfo
|
|
1272
1272
|
} from "@funkit/api-base";
|
|
@@ -1514,7 +1514,7 @@ function setFunkitConnectVersion({ version }) {
|
|
|
1514
1514
|
localStorage.setItem(storageKey, version);
|
|
1515
1515
|
}
|
|
1516
1516
|
function getCurrentSdkVersion() {
|
|
1517
|
-
return "6.15.
|
|
1517
|
+
return "6.15.7";
|
|
1518
1518
|
}
|
|
1519
1519
|
function useFingerprint() {
|
|
1520
1520
|
const fingerprint = useCallback2(() => {
|
|
@@ -1886,6 +1886,7 @@ var useFunkitSwitchChains = ({
|
|
|
1886
1886
|
import { exhaustiveCheck, formatAddress as formatAddress2 } from "@funkit/utils";
|
|
1887
1887
|
|
|
1888
1888
|
// src/consts/bluvo.tsx
|
|
1889
|
+
import { ETHEREAL_API_KEY } from "@funkit/api-base";
|
|
1889
1890
|
import React15 from "react";
|
|
1890
1891
|
|
|
1891
1892
|
// src/components/Icons/BinanceIcon.tsx
|
|
@@ -2027,6 +2028,9 @@ var KrakenIcon = ({ size = 24 }) => {
|
|
|
2027
2028
|
};
|
|
2028
2029
|
|
|
2029
2030
|
// src/consts/bluvo.tsx
|
|
2031
|
+
var BLUVO_MIN_DEPOSIT_BY_CUSTOMER = {
|
|
2032
|
+
[ETHEREAL_API_KEY]: 15
|
|
2033
|
+
};
|
|
2030
2034
|
var SUPPORTED_EXCHANGES = [
|
|
2031
2035
|
{ exchange: "coinbase" /* Coinbase */, status: "live" /* Live */ },
|
|
2032
2036
|
{
|
|
@@ -2405,7 +2409,7 @@ import {
|
|
|
2405
2409
|
BANKR_API_KEY,
|
|
2406
2410
|
BASED_API_KEY,
|
|
2407
2411
|
BSX_API_KEY,
|
|
2408
|
-
ETHEREAL_API_KEY,
|
|
2412
|
+
ETHEREAL_API_KEY as ETHEREAL_API_KEY2,
|
|
2409
2413
|
HYENA_API_KEY,
|
|
2410
2414
|
HYPERBEAT_API_KEY,
|
|
2411
2415
|
HYPERDASH_API_KEY,
|
|
@@ -2426,7 +2430,7 @@ function isBankrCustomer(apiKey) {
|
|
|
2426
2430
|
return apiKey === BANKR_API_KEY;
|
|
2427
2431
|
}
|
|
2428
2432
|
function isEtherealCustomer(apiKey) {
|
|
2429
|
-
return apiKey ===
|
|
2433
|
+
return apiKey === ETHEREAL_API_KEY2;
|
|
2430
2434
|
}
|
|
2431
2435
|
function isKatanaCustomer(apiKey) {
|
|
2432
2436
|
return apiKey === KATANA_API_KEY;
|
|
@@ -2455,7 +2459,7 @@ import {
|
|
|
2455
2459
|
BASED_API_KEY as BASED_API_KEY2,
|
|
2456
2460
|
BULLPEN_API_KEY,
|
|
2457
2461
|
CAMBRIA_API_KEY,
|
|
2458
|
-
ETHEREAL_API_KEY as
|
|
2462
|
+
ETHEREAL_API_KEY as ETHEREAL_API_KEY3,
|
|
2459
2463
|
FELIX_API_KEY,
|
|
2460
2464
|
HYENA_API_KEY as HYENA_API_KEY2,
|
|
2461
2465
|
HYPERBEAT_API_KEY as HYPERBEAT_API_KEY2,
|
|
@@ -2549,7 +2553,7 @@ var COMMON_SUPPORT_CHAINS_AND_ASSETS = {
|
|
|
2549
2553
|
// mainnet
|
|
2550
2554
|
1: ["USDC", "DAI", "USDT", "ETH", "WETH", "POL", "MATIC", "CBBTC", "USDe"],
|
|
2551
2555
|
// base
|
|
2552
|
-
8453: ["USDC", "USDT", "DAI", "ETH", "WETH", "CBBTC"],
|
|
2556
|
+
8453: ["USDC", "USDT", "DAI", "ETH", "WETH", "CBBTC", "USDe"],
|
|
2553
2557
|
// arbitrum
|
|
2554
2558
|
42161: ["USDC", "USDT", "DAI", "ETH", "WETH", "ARB", "USDe"],
|
|
2555
2559
|
// polygon
|
|
@@ -2557,7 +2561,7 @@ var COMMON_SUPPORT_CHAINS_AND_ASSETS = {
|
|
|
2557
2561
|
// optimism
|
|
2558
2562
|
10: ["USDC", "USDT", "DAI", "ETH", "WETH", "USDe"],
|
|
2559
2563
|
// bsc
|
|
2560
|
-
56: ["USDC", "USDT", "BNB", "WBNB", "ETH", "DAI", "BUSD", "BTCB"]
|
|
2564
|
+
56: ["USDC", "USDT", "BNB", "WBNB", "ETH", "DAI", "BUSD", "BTCB", "USDe"]
|
|
2561
2565
|
};
|
|
2562
2566
|
var QR_CODE_EVM = {
|
|
2563
2567
|
...COMMON_SUPPORT_CHAINS_AND_ASSETS,
|
|
@@ -2685,7 +2689,7 @@ var flagConfig = {
|
|
|
2685
2689
|
HYPERDASH_API_KEY2,
|
|
2686
2690
|
MONKEY_TILT_API_KEY2,
|
|
2687
2691
|
VENTUALS_API_KEY,
|
|
2688
|
-
|
|
2692
|
+
ETHEREAL_API_KEY3,
|
|
2689
2693
|
AVANTIS_API_KEY2,
|
|
2690
2694
|
MONAD_API_KEY,
|
|
2691
2695
|
BULLPEN_API_KEY,
|
|
@@ -2737,7 +2741,7 @@ var flagConfig = {
|
|
|
2737
2741
|
{
|
|
2738
2742
|
key: "apiKey",
|
|
2739
2743
|
type: "isAnyOf",
|
|
2740
|
-
values: [
|
|
2744
|
+
values: [ETHEREAL_API_KEY3]
|
|
2741
2745
|
}
|
|
2742
2746
|
],
|
|
2743
2747
|
// For Ethereal, sort USDe to the front of the list on Arbitrum so it becomes the default
|
|
@@ -2799,7 +2803,7 @@ var flagConfig = {
|
|
|
2799
2803
|
{
|
|
2800
2804
|
key: "apiKey",
|
|
2801
2805
|
type: "isAnyOf",
|
|
2802
|
-
values: [OSTIUM_API_KEY2,
|
|
2806
|
+
values: [OSTIUM_API_KEY2, ETHEREAL_API_KEY3]
|
|
2803
2807
|
}
|
|
2804
2808
|
],
|
|
2805
2809
|
value: arbitrum2.id.toString()
|
|
@@ -3015,7 +3019,8 @@ var flagConfig = {
|
|
|
3015
3019
|
POLYMARKET_API_KEY2,
|
|
3016
3020
|
HYPERDASH_API_KEY2,
|
|
3017
3021
|
HYENA_API_KEY2,
|
|
3018
|
-
|
|
3022
|
+
ETHEREAL_API_KEY3,
|
|
3023
|
+
MONAD_API_KEY
|
|
3019
3024
|
]
|
|
3020
3025
|
}
|
|
3021
3026
|
],
|
|
@@ -3093,7 +3098,7 @@ var flagConfig = {
|
|
|
3093
3098
|
VENTUALS_API_KEY,
|
|
3094
3099
|
AVANTIS_API_KEY2,
|
|
3095
3100
|
HYENA_API_KEY2,
|
|
3096
|
-
|
|
3101
|
+
ETHEREAL_API_KEY3,
|
|
3097
3102
|
MONAD_API_KEY
|
|
3098
3103
|
]
|
|
3099
3104
|
}
|
|
@@ -3190,7 +3195,7 @@ var flagConfig = {
|
|
|
3190
3195
|
{
|
|
3191
3196
|
key: "apiKey",
|
|
3192
3197
|
type: "isAnyOf",
|
|
3193
|
-
values: [
|
|
3198
|
+
values: [ETHEREAL_API_KEY3]
|
|
3194
3199
|
}
|
|
3195
3200
|
],
|
|
3196
3201
|
value: false
|
|
@@ -3863,6 +3868,60 @@ async function checkoutTransferFetch(params) {
|
|
|
3863
3868
|
clientMetadata: COMMON_CLIENT_METADATA
|
|
3864
3869
|
});
|
|
3865
3870
|
}
|
|
3871
|
+
function getCheckoutTokenTransferParams({
|
|
3872
|
+
checkoutConfig,
|
|
3873
|
+
userId,
|
|
3874
|
+
recipientAddr,
|
|
3875
|
+
apiKey
|
|
3876
|
+
}) {
|
|
3877
|
+
if (!checkoutConfig) {
|
|
3878
|
+
return;
|
|
3879
|
+
}
|
|
3880
|
+
if (!checkoutConfig.targetChain) {
|
|
3881
|
+
return;
|
|
3882
|
+
}
|
|
3883
|
+
const commonParams = {
|
|
3884
|
+
userId,
|
|
3885
|
+
apiKey,
|
|
3886
|
+
recipientAddr,
|
|
3887
|
+
actionType: checkoutConfig.qrcodeActionType
|
|
3888
|
+
};
|
|
3889
|
+
const dynamicTargetAssetCandidates = checkoutConfig.dynamicTargetAssetCandidates;
|
|
3890
|
+
if (dynamicTargetAssetCandidates?.[0]) {
|
|
3891
|
+
const defaultCandidate = dynamicTargetAssetCandidates.find(
|
|
3892
|
+
(candidate) => candidate.isDefault
|
|
3893
|
+
);
|
|
3894
|
+
if (!defaultCandidate) {
|
|
3895
|
+
logger.error(
|
|
3896
|
+
"No default candidate found for dynamic target asset candidates",
|
|
3897
|
+
void 0,
|
|
3898
|
+
{
|
|
3899
|
+
checkoutConfig
|
|
3900
|
+
}
|
|
3901
|
+
);
|
|
3902
|
+
return;
|
|
3903
|
+
}
|
|
3904
|
+
return {
|
|
3905
|
+
...commonParams,
|
|
3906
|
+
toChainId: defaultCandidate.tokenChainId,
|
|
3907
|
+
toTokenAddress: defaultCandidate.tokenAddress
|
|
3908
|
+
};
|
|
3909
|
+
}
|
|
3910
|
+
if (!checkoutConfig.targetAsset) {
|
|
3911
|
+
return;
|
|
3912
|
+
}
|
|
3913
|
+
if (checkoutConfig.targetAsset === "0x") {
|
|
3914
|
+
return;
|
|
3915
|
+
}
|
|
3916
|
+
if (!checkoutConfig.targetChain) {
|
|
3917
|
+
return;
|
|
3918
|
+
}
|
|
3919
|
+
return {
|
|
3920
|
+
...commonParams,
|
|
3921
|
+
toChainId: checkoutConfig.targetChain,
|
|
3922
|
+
toTokenAddress: checkoutConfig.targetAsset
|
|
3923
|
+
};
|
|
3924
|
+
}
|
|
3866
3925
|
var useCheckoutTransferInit = () => {
|
|
3867
3926
|
const { checkoutItem } = useCheckoutContext();
|
|
3868
3927
|
const checkoutConfig = checkoutItem?.initSettings.config;
|
|
@@ -3870,21 +3929,20 @@ var useCheckoutTransferInit = () => {
|
|
|
3870
3929
|
const { apiKey } = useFunkitConfig();
|
|
3871
3930
|
const isQrCodeEnabled = useFlag(FlagKey4.EnableTokenTransfer, false);
|
|
3872
3931
|
const recipientAddr = checkoutConfig?.customRecipient || walletAddress || "0x";
|
|
3873
|
-
const
|
|
3874
|
-
|
|
3875
|
-
|
|
3876
|
-
|
|
3877
|
-
recipientAddr,
|
|
3932
|
+
const userId = userInfo.id || "";
|
|
3933
|
+
const queryKey = getCheckoutTokenTransferParams({
|
|
3934
|
+
checkoutConfig,
|
|
3935
|
+
userId,
|
|
3878
3936
|
apiKey,
|
|
3879
|
-
|
|
3880
|
-
};
|
|
3937
|
+
recipientAddr
|
|
3938
|
+
});
|
|
3881
3939
|
const postActionOverride = isHyenaCustomer(apiKey);
|
|
3882
3940
|
const isQRCodeEnabledWithPostAction = !!checkoutConfig && // either no post action required
|
|
3883
3941
|
(!isCheckoutPostActionRequired(checkoutConfig) || // or action type is set
|
|
3884
3942
|
!!checkoutConfig?.qrcodeActionType || postActionOverride);
|
|
3885
3943
|
const { data, isFetching } = useQuery3({
|
|
3886
3944
|
queryKey: ["initializeCheckoutTokenTransferAddress", queryKey],
|
|
3887
|
-
queryFn: () =>
|
|
3945
|
+
queryFn: ({ queryKey: [_, queryKey2] }) => queryKey2 ? checkoutTransferFetch(queryKey2) : void 0,
|
|
3888
3946
|
refetchOnWindowFocus: false,
|
|
3889
3947
|
refetchOnMount: false,
|
|
3890
3948
|
enabled: !!queryKey && // Is flag enabled
|
|
@@ -4256,16 +4314,27 @@ function FunkitCheckoutProvider({ children }) {
|
|
|
4256
4314
|
});
|
|
4257
4315
|
depositAddressOrHash = txHash;
|
|
4258
4316
|
} else {
|
|
4259
|
-
const
|
|
4317
|
+
const queryParams = getCheckoutTokenTransferParams({
|
|
4318
|
+
checkoutConfig: checkoutItem.initSettings.config,
|
|
4260
4319
|
userId: userInfo.id || "",
|
|
4261
|
-
toChainId: checkoutItem.initSettings.config.targetChain,
|
|
4262
|
-
toTokenAddress: checkoutItem.initSettings.config.targetAsset,
|
|
4263
4320
|
recipientAddr: getCheckoutRecipient({
|
|
4264
4321
|
config: checkoutItem.initSettings.config,
|
|
4265
4322
|
walletAddress
|
|
4266
4323
|
}),
|
|
4267
4324
|
apiKey: funkitConfig.apiKey
|
|
4268
4325
|
});
|
|
4326
|
+
if (!queryParams) {
|
|
4327
|
+
const missingQueryParamsError = new Error(
|
|
4328
|
+
"Unable to get query params"
|
|
4329
|
+
);
|
|
4330
|
+
logger.error(
|
|
4331
|
+
"directExecutionCheckout:missingQueryParams",
|
|
4332
|
+
missingQueryParamsError,
|
|
4333
|
+
{ ...directExecutionLogContext, directExecutionType }
|
|
4334
|
+
);
|
|
4335
|
+
throw missingQueryParamsError;
|
|
4336
|
+
}
|
|
4337
|
+
const newTransferInit = await checkoutTransferFetch(queryParams);
|
|
4269
4338
|
if (!newTransferInit?.depositAddr) {
|
|
4270
4339
|
const missingDepositAddressError = new Error(
|
|
4271
4340
|
"Unable to get transfer deposit address"
|
|
@@ -4646,12 +4715,17 @@ import { solanaChain as solanaChain2 } from "@funkit/chains";
|
|
|
4646
4715
|
import { formatAddressLastFour } from "@funkit/utils";
|
|
4647
4716
|
import { isAddress as isSolanaAddress } from "@solana/addresses";
|
|
4648
4717
|
import { isAddress } from "viem";
|
|
4649
|
-
var getWalletLabel = (textCustomizations, walletAddress) => {
|
|
4718
|
+
var getWalletLabel = (t, textCustomizations, walletAddress) => {
|
|
4650
4719
|
if (walletAddress) {
|
|
4651
4720
|
const formattedAddress = formatAddressLastFour(walletAddress);
|
|
4652
|
-
return
|
|
4721
|
+
return t("checkout.walletLabelTemplate", {
|
|
4722
|
+
walletLabel: textCustomizations.accountBalance,
|
|
4723
|
+
formattedAddress
|
|
4724
|
+
});
|
|
4653
4725
|
}
|
|
4654
|
-
return
|
|
4726
|
+
return t("checkout.connectWalletLabelTemplate", {
|
|
4727
|
+
walletLabel: textCustomizations.accountBalance
|
|
4728
|
+
});
|
|
4655
4729
|
};
|
|
4656
4730
|
function isAddressSupported(address) {
|
|
4657
4731
|
return isAddress(address) || isSolanaAddress(address);
|
|
@@ -4974,7 +5048,7 @@ function computeDisplayDestinationToken(checkoutConfig, displayAssetAmount) {
|
|
|
4974
5048
|
stakingTokenIcon
|
|
4975
5049
|
};
|
|
4976
5050
|
}
|
|
4977
|
-
var LZOFT_CUSTOMERS = [
|
|
5051
|
+
var LZOFT_CUSTOMERS = [ETHEREAL_API_KEY4, HYENA_API_KEY3];
|
|
4978
5052
|
function isLayerZeroOftCheckout(apiKey, checkoutItem) {
|
|
4979
5053
|
if (!LZOFT_CUSTOMERS.includes(apiKey)) {
|
|
4980
5054
|
return false;
|
|
@@ -6965,7 +7039,8 @@ var ASSET_LOGO_SRCS = {
|
|
|
6965
7039
|
WVLP: "https://sdk-cdn.fun.xyz/images/wvlp.svg",
|
|
6966
7040
|
LIQUIDHYPE: "https://sdk-cdn.fun.xyz/images/liquidhype.svg",
|
|
6967
7041
|
VHYPE: "https://sdk-cdn.fun.xyz/images/vhype.png",
|
|
6968
|
-
HBHYPE: "https://sdk-cdn.fun.xyz/images/hbhype.svg"
|
|
7042
|
+
HBHYPE: "https://sdk-cdn.fun.xyz/images/hbhype.svg",
|
|
7043
|
+
MON: "https://sdk-cdn.fun.xyz/images/monad.svg"
|
|
6969
7044
|
};
|
|
6970
7045
|
var FALLBACK_ASSET = "https://sdk-cdn.fun.xyz/images/dollar_circle.png";
|
|
6971
7046
|
function getAssetLogoSrc(symbol) {
|
|
@@ -12064,7 +12139,7 @@ var useMaxSlippage = ({
|
|
|
12064
12139
|
// src/utils/bluvo.ts
|
|
12065
12140
|
var ASSETS_LOW_VALUE_THRESHOLD2 = 0.1;
|
|
12066
12141
|
var isBrokerageAsset = (asset) => "minAmount" in asset && "maxAmount" in asset && asset.usdAmount !== null;
|
|
12067
|
-
function getBrokerageMinMax(asset, minTransferLimits) {
|
|
12142
|
+
function getBrokerageMinMax(asset, minTransferLimits, minDeposit = 1) {
|
|
12068
12143
|
const chainId = Number(asset.pickedChainId);
|
|
12069
12144
|
const unitPrice = asset.usdAmount / asset.amount;
|
|
12070
12145
|
const brokerageMin = Number.parseFloat(asset.minAmount);
|
|
@@ -12076,7 +12151,7 @@ function getBrokerageMinMax(asset, minTransferLimits) {
|
|
|
12076
12151
|
minTransferLimits
|
|
12077
12152
|
);
|
|
12078
12153
|
return {
|
|
12079
|
-
minUsd: Math.ceil(Math.max(tokenTransferMin, brokerageMinUsd)),
|
|
12154
|
+
minUsd: Math.ceil(Math.max(tokenTransferMin, brokerageMinUsd, minDeposit)),
|
|
12080
12155
|
maxUsd: brokerageMaxUsd
|
|
12081
12156
|
};
|
|
12082
12157
|
}
|
|
@@ -12288,6 +12363,7 @@ var FunkitBrokerageContext = createContext12(void 0);
|
|
|
12288
12363
|
var FunkitBrokerageProvider = ({
|
|
12289
12364
|
children
|
|
12290
12365
|
}) => {
|
|
12366
|
+
const { apiKey } = useFunkitConfig();
|
|
12291
12367
|
const isSandboxMode = useIsFunkitSandboxMode();
|
|
12292
12368
|
const minTransferRef = useRef13(useMinTransferLimits());
|
|
12293
12369
|
const ORG_ID = isSandboxMode ? STAGE_ORG_ID : PROD_ORG_ID;
|
|
@@ -12330,8 +12406,12 @@ var FunkitBrokerageProvider = ({
|
|
|
12330
12406
|
if (!selectedBrokerageAsset || !isBrokerageAsset(selectedBrokerageAsset)) {
|
|
12331
12407
|
return null;
|
|
12332
12408
|
}
|
|
12333
|
-
return getBrokerageMinMax(
|
|
12334
|
-
|
|
12409
|
+
return getBrokerageMinMax(
|
|
12410
|
+
selectedBrokerageAsset,
|
|
12411
|
+
minTransferRef.current,
|
|
12412
|
+
BLUVO_MIN_DEPOSIT_BY_CUSTOMER[apiKey]
|
|
12413
|
+
);
|
|
12414
|
+
}, [selectedBrokerageAsset, apiKey]);
|
|
12335
12415
|
function getAuthConnectedExchanges() {
|
|
12336
12416
|
if (typeof localStorage !== "undefined") {
|
|
12337
12417
|
const connections = localStorage.getItem(LOCAL_STORAGE_KEY) || void 0;
|
|
@@ -14238,11 +14318,13 @@ var useWalletLabel = () => {
|
|
|
14238
14318
|
const { walletAddress } = useGeneralWallet();
|
|
14239
14319
|
const { textCustomizations, apiKey } = useFunkitConfig();
|
|
14240
14320
|
const { checkoutItem } = useCheckoutContext();
|
|
14321
|
+
const { t } = useFunkitTranslation();
|
|
14241
14322
|
if (isOstiumCustomer(apiKey) && walletAddress && checkoutItem) {
|
|
14242
14323
|
const { config } = checkoutItem.initSettings;
|
|
14243
14324
|
return `Swap to ${config.targetAssetTicker}`;
|
|
14244
14325
|
}
|
|
14245
|
-
|
|
14326
|
+
const label = getWalletLabel(t, textCustomizations, walletAddress);
|
|
14327
|
+
return t("sourceChange.walletDisplayLabel", { walletLabel: label });
|
|
14246
14328
|
};
|
|
14247
14329
|
|
|
14248
14330
|
// src/modals/CheckoutModal/useWalletAssetHoldings.ts
|
|
@@ -15634,6 +15716,9 @@ var ConnectedMeshPaymentMethodItem = ({
|
|
|
15634
15716
|
} = useBluvoExchangeBalance({ exchange: paymentMethodInfo.exchange });
|
|
15635
15717
|
const sourceBalance = assetHoldings ? getTotalAssetBalance(assetHoldings) : 0;
|
|
15636
15718
|
const label = usePaymentMethodInfoLabel(paymentMethodInfo);
|
|
15719
|
+
const keyText = t("sourceChange.brokerageDisplayLabel", {
|
|
15720
|
+
brokerageLabel: label.text
|
|
15721
|
+
});
|
|
15637
15722
|
const { estimatedTimeText } = useCheckoutTimeEstimate(
|
|
15638
15723
|
apiKey,
|
|
15639
15724
|
null,
|
|
@@ -15664,7 +15749,7 @@ var ConnectedMeshPaymentMethodItem = ({
|
|
|
15664
15749
|
isError: !!isBalanceError,
|
|
15665
15750
|
isActive: isSelected,
|
|
15666
15751
|
keyIcon: icon,
|
|
15667
|
-
keyText
|
|
15752
|
+
keyText,
|
|
15668
15753
|
valueIcon: isSelected && showSelectedCheckmark && /* @__PURE__ */ React79.createElement(CheckIcon, null),
|
|
15669
15754
|
onClick: onSelect,
|
|
15670
15755
|
disclaimerText
|
|
@@ -15831,13 +15916,16 @@ var ActiveFiatAccountPaymentMethodItem = ({
|
|
|
15831
15916
|
const { t } = useFunkitTranslation();
|
|
15832
15917
|
const label = usePaymentMethodInfoLabel(paymentMethodInfo);
|
|
15833
15918
|
const customerStatus = paymentMethodInfo.bridgeCustomer?.status;
|
|
15919
|
+
const keyText = t("sourceChange.virtualFiatDisplayLabel", {
|
|
15920
|
+
virtualFiatLabel: label.text
|
|
15921
|
+
});
|
|
15834
15922
|
return /* @__PURE__ */ React79.createElement(
|
|
15835
15923
|
FunPaymentMethodItem,
|
|
15836
15924
|
{
|
|
15837
15925
|
isActive,
|
|
15838
15926
|
keyIcon: label.icon,
|
|
15839
15927
|
valueIcon: customValueIcon ?? (customerStatus === BridgeCustomerStatus3.OFFBOARDED && /* @__PURE__ */ React79.createElement(BridgeCustomerStatusBadge, { status: customerStatus })),
|
|
15840
|
-
keyText
|
|
15928
|
+
keyText,
|
|
15841
15929
|
onClick,
|
|
15842
15930
|
disclaimerText: t("payment.disclaimerText", {
|
|
15843
15931
|
limit: t("payment.noLimit"),
|
|
@@ -18038,17 +18126,21 @@ var FunRedirectButton = ({
|
|
|
18038
18126
|
}
|
|
18039
18127
|
);
|
|
18040
18128
|
};
|
|
18129
|
+
var normalizePath = (path) => {
|
|
18130
|
+
return path.startsWith("/") ? path.slice(1) : path;
|
|
18131
|
+
};
|
|
18041
18132
|
var AddressRedirectButton = ({
|
|
18042
18133
|
chainId,
|
|
18043
18134
|
address,
|
|
18044
18135
|
customRedirectUrl
|
|
18045
18136
|
}) => {
|
|
18046
18137
|
const explorerInfo = FUNKIT_CONNECT_SUPPORTED_CHAINS_INFO12[chainId]?.explorerInfo;
|
|
18138
|
+
const addressPath = normalizePath(explorerInfo?.path?.address || "address");
|
|
18047
18139
|
return /* @__PURE__ */ React109.createElement(
|
|
18048
18140
|
FunRedirectButton,
|
|
18049
18141
|
{
|
|
18050
18142
|
color: "tertiaryText",
|
|
18051
|
-
to: customRedirectUrl ?? `${explorerInfo?.url}
|
|
18143
|
+
to: customRedirectUrl ?? `${explorerInfo?.url}/${addressPath}/${address}`
|
|
18052
18144
|
}
|
|
18053
18145
|
);
|
|
18054
18146
|
};
|
|
@@ -18058,11 +18150,12 @@ var TransactionRedirectButton = ({
|
|
|
18058
18150
|
customRedirectUrl
|
|
18059
18151
|
}) => {
|
|
18060
18152
|
const explorerInfo = FUNKIT_CONNECT_SUPPORTED_CHAINS_INFO12[chainId]?.explorerInfo;
|
|
18153
|
+
const txPath = normalizePath(explorerInfo?.path?.tx || "tx");
|
|
18061
18154
|
return /* @__PURE__ */ React109.createElement(
|
|
18062
18155
|
FunRedirectButton,
|
|
18063
18156
|
{
|
|
18064
18157
|
color: "tertiaryText",
|
|
18065
|
-
to: customRedirectUrl ?? `${explorerInfo?.url}
|
|
18158
|
+
to: customRedirectUrl ?? `${explorerInfo?.url}/${txPath}/${txHash}`
|
|
18066
18159
|
}
|
|
18067
18160
|
);
|
|
18068
18161
|
};
|
|
@@ -18319,7 +18412,8 @@ function FunDirectExecutionHistoryDetail({
|
|
|
18319
18412
|
customTextConfigStatus,
|
|
18320
18413
|
customTextConfigSteps,
|
|
18321
18414
|
dangerousCustomDelayedAutoTriggerCutoff,
|
|
18322
|
-
disableAutoUpdate = false
|
|
18415
|
+
disableAutoUpdate = false,
|
|
18416
|
+
hideYouReceive = false
|
|
18323
18417
|
}) {
|
|
18324
18418
|
const { t } = useFunkitTranslation();
|
|
18325
18419
|
const isLoaded = !!directExecution;
|
|
@@ -18384,7 +18478,8 @@ function FunDirectExecutionHistoryDetail({
|
|
|
18384
18478
|
{
|
|
18385
18479
|
directExecution,
|
|
18386
18480
|
isLoaded,
|
|
18387
|
-
disableAutoUpdate
|
|
18481
|
+
disableAutoUpdate,
|
|
18482
|
+
hideYouReceive
|
|
18388
18483
|
}
|
|
18389
18484
|
), /* @__PURE__ */ React113.createElement(
|
|
18390
18485
|
DirectExecutionOrderDetail,
|
|
@@ -18412,7 +18507,8 @@ function FunDirectExecutionHistoryDetail({
|
|
|
18412
18507
|
function DirectExecutionSummaryHistory({
|
|
18413
18508
|
directExecution,
|
|
18414
18509
|
isLoaded,
|
|
18415
|
-
disableAutoUpdate = false
|
|
18510
|
+
disableAutoUpdate = false,
|
|
18511
|
+
hideYouReceive = false
|
|
18416
18512
|
}) {
|
|
18417
18513
|
const { t } = useFunkitTranslation();
|
|
18418
18514
|
const { uiCustomizations } = useFunkitConfig();
|
|
@@ -18471,7 +18567,7 @@ function DirectExecutionSummaryHistory({
|
|
|
18471
18567
|
}
|
|
18472
18568
|
)
|
|
18473
18569
|
}
|
|
18474
|
-
) : /* @__PURE__ */ React113.createElement(PaymentRouteSummarySkeletonLoader, null)), /* @__PURE__ */ React113.createElement(FunTxSummaryBox, null, /* @__PURE__ */ React113.createElement(FunTxSummaryLineItem, null, /* @__PURE__ */ React113.createElement(FunTxSummaryLineItemKeyText, { text: receiveAmountLabel }), isLoaded && clientMetadata ? /* @__PURE__ */ React113.createElement(Box, { display: "flex", gap: "5", alignItems: "center" }, /* @__PURE__ */ React113.createElement(
|
|
18570
|
+
) : /* @__PURE__ */ React113.createElement(PaymentRouteSummarySkeletonLoader, null)), hideYouReceive ? null : /* @__PURE__ */ React113.createElement(FunTxSummaryBox, null, /* @__PURE__ */ React113.createElement(FunTxSummaryLineItem, null, /* @__PURE__ */ React113.createElement(FunTxSummaryLineItemKeyText, { text: receiveAmountLabel }), isLoaded && clientMetadata ? /* @__PURE__ */ React113.createElement(Box, { display: "flex", gap: "5", alignItems: "center" }, /* @__PURE__ */ React113.createElement(
|
|
18475
18571
|
AsyncImage,
|
|
18476
18572
|
{
|
|
18477
18573
|
src: clientMetadata.initSettings.config.iconSrc || "",
|
|
@@ -18727,14 +18823,14 @@ var overrideStatus = (de, status) => {
|
|
|
18727
18823
|
} : void 0
|
|
18728
18824
|
};
|
|
18729
18825
|
};
|
|
18730
|
-
var getFakeDirectExecution = (checkoutItem) => {
|
|
18826
|
+
var getFakeDirectExecution = (checkoutItem, walletAddress) => {
|
|
18731
18827
|
return {
|
|
18732
18828
|
// It must be empty as empty string disables auto refresh of data
|
|
18733
18829
|
txHash: "",
|
|
18734
18830
|
// version: 1,
|
|
18735
18831
|
customerId: "",
|
|
18736
18832
|
userId: "",
|
|
18737
|
-
recipientAddr: checkoutItem.initSettings.config.customRecipient,
|
|
18833
|
+
recipientAddr: checkoutItem.initSettings.config.customRecipient ?? walletAddress,
|
|
18738
18834
|
type: DirectExecutionType2.RELAY,
|
|
18739
18835
|
fromChainId: checkoutItem.selectedSourceAssetInfo.chainId,
|
|
18740
18836
|
fromTokenAddress: checkoutItem.selectedSourceAssetInfo.address,
|
|
@@ -18781,6 +18877,7 @@ var BrokerageSuccess = ({
|
|
|
18781
18877
|
});
|
|
18782
18878
|
const { checkoutItem, setCheckoutProgress } = useCheckoutContext();
|
|
18783
18879
|
const { exchangeType } = useBluvo();
|
|
18880
|
+
const { walletAddress } = useGeneralWallet();
|
|
18784
18881
|
const [directExecution, setDirectExecution] = useState33(null);
|
|
18785
18882
|
useIsomorphicLayoutEffect(() => {
|
|
18786
18883
|
if (!checkoutItem) {
|
|
@@ -18788,7 +18885,7 @@ var BrokerageSuccess = ({
|
|
|
18788
18885
|
}
|
|
18789
18886
|
if (!directExecution) {
|
|
18790
18887
|
setCheckoutProgress(checkoutItem.id, { step: 1 });
|
|
18791
|
-
setDirectExecution(getFakeDirectExecution(checkoutItem));
|
|
18888
|
+
setDirectExecution(getFakeDirectExecution(checkoutItem, walletAddress));
|
|
18792
18889
|
}
|
|
18793
18890
|
}, [directExecution, checkoutItem, setCheckoutProgress]);
|
|
18794
18891
|
const latestDirectExecution = useMemo24(() => {
|
|
@@ -18883,7 +18980,8 @@ var BrokerageSuccess = ({
|
|
|
18883
18980
|
isActiveCheckout: true,
|
|
18884
18981
|
showCheckoutStatus: true,
|
|
18885
18982
|
onClose: handleClose,
|
|
18886
|
-
onAnimationComplete: handleNewDeposit
|
|
18983
|
+
onAnimationComplete: handleNewDeposit,
|
|
18984
|
+
hideYouReceive: true
|
|
18887
18985
|
}
|
|
18888
18986
|
);
|
|
18889
18987
|
};
|
|
@@ -22443,13 +22541,86 @@ var useMeldDefaultCurrency = (paymentMethod) => {
|
|
|
22443
22541
|
// src/hooks/queries/useMeldLimits.ts
|
|
22444
22542
|
import { getMeldFiatLimits } from "@funkit/api-base";
|
|
22445
22543
|
import { formatCurrencyAndStringify as formatCurrencyAndStringify6 } from "@funkit/utils";
|
|
22544
|
+
import { useQuery as useQuery18 } from "@tanstack/react-query";
|
|
22545
|
+
|
|
22546
|
+
// src/consts/meld.ts
|
|
22547
|
+
var MELD_MIN_LIMIT_BUFFER = 5;
|
|
22548
|
+
var getMeldProviderIconUrl = (provider) => `https://sdk-cdn.fun.xyz/images/meld/${provider.toLowerCase()}.svg`;
|
|
22549
|
+
var getCurrencySymbol = (currencyCode) => {
|
|
22550
|
+
const formatter = new Intl.NumberFormat("en-US", {
|
|
22551
|
+
style: "currency",
|
|
22552
|
+
currency: currencyCode,
|
|
22553
|
+
currencyDisplay: "narrowSymbol"
|
|
22554
|
+
});
|
|
22555
|
+
return formatter.formatToParts(1).find(({ type }) => type === "currency")?.value ?? currencyCode;
|
|
22556
|
+
};
|
|
22557
|
+
|
|
22558
|
+
// src/utils/getExchangeRate.ts
|
|
22559
|
+
var DEFAULT_BIPS_MARKUP = 500;
|
|
22560
|
+
var getExchangeRate = (currency, currencyExchangeRates, bipsMarkup = DEFAULT_BIPS_MARKUP) => {
|
|
22561
|
+
if (!currency || !currencyExchangeRates) {
|
|
22562
|
+
return void 0;
|
|
22563
|
+
}
|
|
22564
|
+
if (currency === "USD") {
|
|
22565
|
+
return 1;
|
|
22566
|
+
}
|
|
22567
|
+
const exchangeRate = currency in currencyExchangeRates ? currencyExchangeRates[currency] : void 0;
|
|
22568
|
+
if (!exchangeRate) {
|
|
22569
|
+
return void 0;
|
|
22570
|
+
}
|
|
22571
|
+
return exchangeRate * (1 + bipsMarkup / 1e4);
|
|
22572
|
+
};
|
|
22573
|
+
|
|
22574
|
+
// src/hooks/useFiatExchangeRates.ts
|
|
22575
|
+
import { getFiatExchangeRates } from "@funkit/api-base";
|
|
22446
22576
|
import { useQuery as useQuery17 } from "@tanstack/react-query";
|
|
22577
|
+
function useFiatExchangeRates(enabled = true) {
|
|
22578
|
+
const { data, isLoading, error } = useQuery17({
|
|
22579
|
+
queryKey: ["fiatExchangeRates"],
|
|
22580
|
+
queryFn: () => getFiatExchangeRates(),
|
|
22581
|
+
refetchOnMount: false,
|
|
22582
|
+
refetchOnReconnect: false,
|
|
22583
|
+
refetchOnWindowFocus: false,
|
|
22584
|
+
gcTime: 1e3 * 60 * 60,
|
|
22585
|
+
// 1 hour
|
|
22586
|
+
enabled
|
|
22587
|
+
});
|
|
22588
|
+
return { data, isLoading, error };
|
|
22589
|
+
}
|
|
22590
|
+
|
|
22591
|
+
// src/hooks/useMinDeposit.ts
|
|
22592
|
+
function useMinCheckoutDeposit({
|
|
22593
|
+
currency = "USD",
|
|
22594
|
+
paymentMethod
|
|
22595
|
+
}) {
|
|
22596
|
+
const { checkoutItem } = useCheckoutContext();
|
|
22597
|
+
const { data: exchangeRates } = useFiatExchangeRates(
|
|
22598
|
+
!!checkoutItem && currency !== "USD"
|
|
22599
|
+
);
|
|
22600
|
+
if (!checkoutItem) {
|
|
22601
|
+
logger.warn("useMinCheckoutDeposit: No checkout item found");
|
|
22602
|
+
return 0;
|
|
22603
|
+
}
|
|
22604
|
+
const { getMinDepositUSD, ...config } = checkoutItem.initSettings.config;
|
|
22605
|
+
const exchangeRate = getExchangeRate(currency, exchangeRates, 0) || 1;
|
|
22606
|
+
const tokenChainId = config.targetChain;
|
|
22607
|
+
const tokenAddress = config.targetAsset;
|
|
22608
|
+
const minDepositUsd = getMinDepositUSD?.({ tokenChainId, tokenAddress }) || 0;
|
|
22609
|
+
const minDeposit = minDepositUsd * exchangeRate;
|
|
22610
|
+
if (paymentMethod === "card" /* CARD */ && minDeposit) {
|
|
22611
|
+
const meldBuffer = MELD_MIN_LIMIT_BUFFER * exchangeRate;
|
|
22612
|
+
return minDeposit + meldBuffer;
|
|
22613
|
+
}
|
|
22614
|
+
return minDeposit;
|
|
22615
|
+
}
|
|
22616
|
+
|
|
22617
|
+
// src/hooks/queries/useMeldLimits.ts
|
|
22447
22618
|
var useMeldLimits = (isEnabled = true) => {
|
|
22448
22619
|
const { apiKey } = useFunkitConfig();
|
|
22449
22620
|
const { userIpInfo } = useFunkitUserIp();
|
|
22450
22621
|
const cryptoCurrency = useMeldCryptoCurrencyCode();
|
|
22451
22622
|
const countryCode = userIpInfo?.alpha2;
|
|
22452
|
-
const query =
|
|
22623
|
+
const query = useQuery18({
|
|
22453
22624
|
queryKey: ["meld", "limits", countryCode, cryptoCurrency],
|
|
22454
22625
|
queryFn: async () => {
|
|
22455
22626
|
if (!apiKey || !countryCode) {
|
|
@@ -22477,9 +22648,18 @@ var useMeldLimits = (isEnabled = true) => {
|
|
|
22477
22648
|
};
|
|
22478
22649
|
var useMeldLimit = (fiatCurrency) => {
|
|
22479
22650
|
const query = useMeldLimits();
|
|
22651
|
+
const minCheckoutDeposit = useMinCheckoutDeposit({
|
|
22652
|
+
currency: fiatCurrency,
|
|
22653
|
+
paymentMethod: "card" /* CARD */
|
|
22654
|
+
});
|
|
22655
|
+
let limit = query.data?.find((limit2) => limit2.currencyCode === fiatCurrency);
|
|
22656
|
+
if (limit) {
|
|
22657
|
+
const minAmt = Math.ceil(Math.max(minCheckoutDeposit, limit.minimumAmount));
|
|
22658
|
+
limit = { ...limit, minimumAmount: minAmt };
|
|
22659
|
+
}
|
|
22480
22660
|
return {
|
|
22481
22661
|
...query,
|
|
22482
|
-
data:
|
|
22662
|
+
data: limit
|
|
22483
22663
|
};
|
|
22484
22664
|
};
|
|
22485
22665
|
var useMeldLimitError = (amount, fiatCurrency) => {
|
|
@@ -22521,23 +22701,6 @@ var useMeldLimitError = (amount, fiatCurrency) => {
|
|
|
22521
22701
|
return void 0;
|
|
22522
22702
|
};
|
|
22523
22703
|
|
|
22524
|
-
// src/hooks/useFiatExchangeRates.ts
|
|
22525
|
-
import { getFiatExchangeRates } from "@funkit/api-base";
|
|
22526
|
-
import { useQuery as useQuery18 } from "@tanstack/react-query";
|
|
22527
|
-
function useFiatExchangeRates(enabled = true) {
|
|
22528
|
-
const { data, isLoading, error } = useQuery18({
|
|
22529
|
-
queryKey: ["fiatExchangeRates"],
|
|
22530
|
-
queryFn: () => getFiatExchangeRates(),
|
|
22531
|
-
refetchOnMount: false,
|
|
22532
|
-
refetchOnReconnect: false,
|
|
22533
|
-
refetchOnWindowFocus: false,
|
|
22534
|
-
gcTime: 1e3 * 60 * 60,
|
|
22535
|
-
// 1 hour
|
|
22536
|
-
enabled
|
|
22537
|
-
});
|
|
22538
|
-
return { data, isLoading, error };
|
|
22539
|
-
}
|
|
22540
|
-
|
|
22541
22704
|
// src/modals/CheckoutModal/InputAmount/InputAmountLoaded.tsx
|
|
22542
22705
|
import {
|
|
22543
22706
|
FlagKey as FlagKey20,
|
|
@@ -23491,22 +23654,6 @@ var YouPayYouReceiveBottomBarLayoutWrapper = ({
|
|
|
23491
23654
|
);
|
|
23492
23655
|
};
|
|
23493
23656
|
|
|
23494
|
-
// src/utils/getExchangeRate.ts
|
|
23495
|
-
var DEFAULT_BIPS_MARKUP = 500;
|
|
23496
|
-
var getExchangeRate = (currency, currencyExchangeRates, bipsMarkup = DEFAULT_BIPS_MARKUP) => {
|
|
23497
|
-
if (!currency || !currencyExchangeRates) {
|
|
23498
|
-
return void 0;
|
|
23499
|
-
}
|
|
23500
|
-
if (currency === "USD") {
|
|
23501
|
-
return 1;
|
|
23502
|
-
}
|
|
23503
|
-
const exchangeRate = currency in currencyExchangeRates ? currencyExchangeRates[currency] : void 0;
|
|
23504
|
-
if (!exchangeRate) {
|
|
23505
|
-
return void 0;
|
|
23506
|
-
}
|
|
23507
|
-
return exchangeRate * (1 + bipsMarkup / 1e4);
|
|
23508
|
-
};
|
|
23509
|
-
|
|
23510
23657
|
// src/components/Icons/SwitchIcon.tsx
|
|
23511
23658
|
import React156 from "react";
|
|
23512
23659
|
var SwitchIcon = () => {
|
|
@@ -24328,19 +24475,6 @@ import {
|
|
|
24328
24475
|
formatCurrencyAndStringify as formatCurrencyAndStringify8
|
|
24329
24476
|
} from "@funkit/utils";
|
|
24330
24477
|
import React159 from "react";
|
|
24331
|
-
|
|
24332
|
-
// src/consts/meld.ts
|
|
24333
|
-
var getMeldProviderIconUrl = (provider) => `https://sdk-cdn.fun.xyz/images/meld/${provider.toLowerCase()}.svg`;
|
|
24334
|
-
var getCurrencySymbol = (currencyCode) => {
|
|
24335
|
-
const formatter = new Intl.NumberFormat("en-US", {
|
|
24336
|
-
style: "currency",
|
|
24337
|
-
currency: currencyCode,
|
|
24338
|
-
currencyDisplay: "narrowSymbol"
|
|
24339
|
-
});
|
|
24340
|
-
return formatter.formatToParts(1).find(({ type }) => type === "currency")?.value ?? currencyCode;
|
|
24341
|
-
};
|
|
24342
|
-
|
|
24343
|
-
// src/components/MeldQuoteItem/MeldQuoteItem.tsx
|
|
24344
24478
|
var providerLabelMap = {
|
|
24345
24479
|
COINBASEPAY: "Coinbase Pay",
|
|
24346
24480
|
MOONPAY: "MoonPay",
|
|
@@ -27148,6 +27282,10 @@ var DefiPurchaseSection = ({ config }) => {
|
|
|
27148
27282
|
);
|
|
27149
27283
|
};
|
|
27150
27284
|
|
|
27285
|
+
// src/modals/CheckoutModal/SourceChange/sourceChange.css.ts
|
|
27286
|
+
var WITH_EMPTY_STATE_DATA_ATTRIBUTE = "data-with-empty-state";
|
|
27287
|
+
var emptyStateStyles = "_14kf6rb0";
|
|
27288
|
+
|
|
27151
27289
|
// src/modals/CheckoutModal/SourceChange/SourceChange.tsx
|
|
27152
27290
|
var SourceChangeInfo = {
|
|
27153
27291
|
Component: SourceChange,
|
|
@@ -27478,15 +27616,36 @@ function SourceChange({
|
|
|
27478
27616
|
);
|
|
27479
27617
|
}
|
|
27480
27618
|
const bottomSectionRef = useBottomSectionRef();
|
|
27481
|
-
return /* @__PURE__ */ React175.createElement(React175.Fragment, null, isDefiMode ? /* @__PURE__ */ React175.createElement(Box, { display: "flex", flexDirection: "column", gap: "28" }, /* @__PURE__ */ React175.createElement(DefiPurchaseSection, { config: checkoutItem.initSettings.config }), /* @__PURE__ */ React175.createElement(Box, { display: "flex", flexDirection: "column", gap: "16" }, /* @__PURE__ */ React175.createElement(Box, { display: "flex", flexDirection: "column", gap: "4" }, /* @__PURE__ */ React175.createElement(Text, { size: "13", color: "secondaryText" }, t("sourceChange.selectPaymentMethod")), preferred.map(renderSource)), /* @__PURE__ */ React175.createElement(Box, { display: "flex", flexDirection: "column", gap: "4" }, /* @__PURE__ */ React175.createElement(Text, { size: "13", color: "secondaryText" }, t("sourceChange.moreOptions")), moreSources.map(renderSource)))) : /* @__PURE__ */ React175.createElement(
|
|
27482
|
-
|
|
27619
|
+
return /* @__PURE__ */ React175.createElement(React175.Fragment, null, isDefiMode ? /* @__PURE__ */ React175.createElement(Box, { display: "flex", flexDirection: "column", gap: "28" }, /* @__PURE__ */ React175.createElement(DefiPurchaseSection, { config: checkoutItem.initSettings.config }), /* @__PURE__ */ React175.createElement(Box, { display: "flex", flexDirection: "column", gap: "16" }, /* @__PURE__ */ React175.createElement(Box, { display: "flex", flexDirection: "column", gap: "4" }, /* @__PURE__ */ React175.createElement(Text, { size: "13", color: "secondaryText" }, t("sourceChange.selectPaymentMethod")), preferred.map(renderSource)), /* @__PURE__ */ React175.createElement(Box, { display: "flex", flexDirection: "column", gap: "4" }, /* @__PURE__ */ React175.createElement(Text, { size: "13", color: "secondaryText" }, t("sourceChange.moreOptions")), moreSources.map(renderSource)))) : /* @__PURE__ */ React175.createElement(React175.Fragment, null, /* @__PURE__ */ React175.createElement(
|
|
27620
|
+
Box,
|
|
27483
27621
|
{
|
|
27484
|
-
|
|
27485
|
-
|
|
27486
|
-
|
|
27487
|
-
|
|
27622
|
+
display: "flex",
|
|
27623
|
+
flexDirection: "column",
|
|
27624
|
+
gap: "4",
|
|
27625
|
+
...{
|
|
27626
|
+
[WITH_EMPTY_STATE_DATA_ATTRIBUTE]: true
|
|
27627
|
+
}
|
|
27628
|
+
},
|
|
27629
|
+
preferred.map(renderSource),
|
|
27630
|
+
preferred.length > 0 && moreSources.length > 0 && /* @__PURE__ */ React175.createElement(
|
|
27631
|
+
FunDivider,
|
|
27632
|
+
{
|
|
27633
|
+
label: t("sourceChange.more"),
|
|
27634
|
+
marginTop: "8",
|
|
27635
|
+
marginBottom: "8",
|
|
27636
|
+
borderColor: "selectedOptionBorder"
|
|
27637
|
+
}
|
|
27638
|
+
),
|
|
27639
|
+
moreSources.map(renderSource),
|
|
27640
|
+
/* @__PURE__ */ React175.createElement(PayPal, null)
|
|
27641
|
+
), /* @__PURE__ */ React175.createElement(Box, { className: emptyStateStyles }, /* @__PURE__ */ React175.createElement(
|
|
27642
|
+
FunNoResults,
|
|
27643
|
+
{
|
|
27644
|
+
text: t("checkout.noAvailableTokensMessage"),
|
|
27645
|
+
title: t("checkout.noAvailableTokens"),
|
|
27646
|
+
variant: "actionable"
|
|
27488
27647
|
}
|
|
27489
|
-
)
|
|
27648
|
+
))), bottomSectionRef && createPortal18(
|
|
27490
27649
|
/* @__PURE__ */ React175.createElement(
|
|
27491
27650
|
Dialog.BottomBar,
|
|
27492
27651
|
{
|
|
@@ -27621,7 +27780,7 @@ function CopyInputDisplayedAddressI18n({
|
|
|
27621
27780
|
}
|
|
27622
27781
|
function CopyInputDisplayedAddress(props) {
|
|
27623
27782
|
const { i18n: i18n2 } = useFunkitTranslation();
|
|
27624
|
-
const isEnglish = i18n2.language === "en";
|
|
27783
|
+
const isEnglish = i18n2.language === "en" || i18n2.language === "buy_en";
|
|
27625
27784
|
return isEnglish ? /* @__PURE__ */ React176.createElement(CopyInputDisplayedAddressEN, { ...props }) : /* @__PURE__ */ React176.createElement(CopyInputDisplayedAddressI18n, { ...props });
|
|
27626
27785
|
}
|
|
27627
27786
|
|
|
@@ -30483,32 +30642,38 @@ function usePaymentMethodIcon(paymentMethod, iconSize = DEFAULT_PAYMENT_METHOD_I
|
|
|
30483
30642
|
}
|
|
30484
30643
|
var usePaymentMethodInfoLabel = (methodInfo, iconSize = DEFAULT_PAYMENT_METHOD_ICON_SIZE) => {
|
|
30485
30644
|
const { textCustomizations } = useFunkitConfig();
|
|
30645
|
+
const { t } = useFunkitTranslation();
|
|
30486
30646
|
const paymentIcon = usePaymentMethodIcon(methodInfo.paymentMethod, iconSize);
|
|
30487
30647
|
if (methodInfo.paymentMethod === "card" /* CARD */) {
|
|
30488
30648
|
return { text: "", icon: /* @__PURE__ */ React209.createElement(CombinedCreditCardOptionsIcon, null) };
|
|
30489
30649
|
}
|
|
30490
30650
|
if (methodInfo.paymentMethod === "brokerage" /* BROKERAGE */) {
|
|
30491
30651
|
const icon2 = getExchangeIcon(methodInfo.exchange, iconSize);
|
|
30492
|
-
|
|
30652
|
+
const brokerageLabel = methodInfo.title;
|
|
30653
|
+
const text = brokerageLabel;
|
|
30654
|
+
return { text, icon: icon2 };
|
|
30493
30655
|
}
|
|
30494
30656
|
if (methodInfo.paymentMethod === "virtual_bank" /* VIRTUAL_BANK */) {
|
|
30657
|
+
const virtualFiatLabel = getFiatAccountLabel(
|
|
30658
|
+
methodInfo.title,
|
|
30659
|
+
methodInfo.matchingFiatAccount
|
|
30660
|
+
);
|
|
30661
|
+
const text = virtualFiatLabel;
|
|
30662
|
+
const icon2 = /* @__PURE__ */ React209.createElement(
|
|
30663
|
+
PaymentMethodIcon,
|
|
30664
|
+
{
|
|
30665
|
+
keyIconSize: iconSize,
|
|
30666
|
+
paymentIcon: /* @__PURE__ */ React209.createElement(BankIconActive, { size: iconSize })
|
|
30667
|
+
}
|
|
30668
|
+
);
|
|
30495
30669
|
return {
|
|
30496
|
-
text
|
|
30497
|
-
|
|
30498
|
-
methodInfo.matchingFiatAccount
|
|
30499
|
-
),
|
|
30500
|
-
icon: /* @__PURE__ */ React209.createElement(
|
|
30501
|
-
PaymentMethodIcon,
|
|
30502
|
-
{
|
|
30503
|
-
keyIconSize: iconSize,
|
|
30504
|
-
paymentIcon: /* @__PURE__ */ React209.createElement(BankIconActive, { size: iconSize })
|
|
30505
|
-
}
|
|
30506
|
-
)
|
|
30670
|
+
text,
|
|
30671
|
+
icon: icon2
|
|
30507
30672
|
};
|
|
30508
30673
|
}
|
|
30509
30674
|
const icon = /* @__PURE__ */ React209.createElement(Box, { display: "flex", alignItems: "center", justifyContent: "center" }, paymentIcon);
|
|
30510
30675
|
if (methodInfo.paymentMethod === "balance" /* ACCOUNT_BALANCE */) {
|
|
30511
|
-
const label = getWalletLabel(textCustomizations, methodInfo.description);
|
|
30676
|
+
const label = getWalletLabel(t, textCustomizations, methodInfo.description);
|
|
30512
30677
|
return { text: label, icon };
|
|
30513
30678
|
}
|
|
30514
30679
|
return { text: methodInfo.title, icon };
|
|
@@ -30564,7 +30729,7 @@ var PaymentRouteSummary = ({
|
|
|
30564
30729
|
{
|
|
30565
30730
|
isSameDestination,
|
|
30566
30731
|
paymentMethodInfo,
|
|
30567
|
-
redirect: sourceRedirect,
|
|
30732
|
+
redirect: isSameDestination ? destinationRedirect : sourceRedirect,
|
|
30568
30733
|
isWithdrawal
|
|
30569
30734
|
}
|
|
30570
30735
|
);
|
|
@@ -35495,6 +35660,87 @@ var useUpdateActiveFunkitCheckout = () => {
|
|
|
35495
35660
|
import i18n from "i18next";
|
|
35496
35661
|
import { initReactI18next } from "react-i18next";
|
|
35497
35662
|
|
|
35663
|
+
// src/locales/translations/buy_en.json
|
|
35664
|
+
var buy_en_default = {
|
|
35665
|
+
inputAmount: {
|
|
35666
|
+
depositMaxBalance: "Buy with max balance",
|
|
35667
|
+
maximumDeposit: "{{amount}} maximum purchase",
|
|
35668
|
+
minimumDeposit: "{{amount}} minimum purchase"
|
|
35669
|
+
},
|
|
35670
|
+
checkoutConfirmation: {
|
|
35671
|
+
depositMaxBalance: "Buy with max balance"
|
|
35672
|
+
},
|
|
35673
|
+
payment: {
|
|
35674
|
+
depositWithPayPal: "Buy with PayPal",
|
|
35675
|
+
depositWithCard: "Buy with Card"
|
|
35676
|
+
},
|
|
35677
|
+
common: {
|
|
35678
|
+
depositsLive: "{{tokenName}} purchases are live!",
|
|
35679
|
+
depositsLiveTryNow: "{{tokenName}} purchases are live! <TryNowLink>Try now</TryNowLink>"
|
|
35680
|
+
},
|
|
35681
|
+
disclaimer: {
|
|
35682
|
+
cardDisclaimer: "This transaction occurs in two steps. MoonPay powers only your purchase of {{depositToken}} ({{sourceChainName}}) which {{orgName}} then {{tokenActionDescription}}."
|
|
35683
|
+
},
|
|
35684
|
+
transferToken: {
|
|
35685
|
+
minDepositAmountTooltip: "Minimum purchase amount required for the selected chain.",
|
|
35686
|
+
yourDepositAddress: "Your purchase address",
|
|
35687
|
+
depositAddressOriginalRecipient: "Send any accepted token to this address",
|
|
35688
|
+
depositAddressUniversal: "Send any accepted token to this address and it will auto swap to {{targetToken}} in your account"
|
|
35689
|
+
},
|
|
35690
|
+
transaction: {
|
|
35691
|
+
depositSuccessful: "Purchase successful",
|
|
35692
|
+
depositSuccessfulDescription: "Your funds were successfully received.",
|
|
35693
|
+
depositReceivedPending: "Purchase received and pending...",
|
|
35694
|
+
depositCompleted: "Purchase completed",
|
|
35695
|
+
depositReceivedProcessing: "Purchase is processing...",
|
|
35696
|
+
depositWillBeCredited: "Your purchase will be credited to your account shortly.",
|
|
35697
|
+
depositHasBeenCredited: "Your purchase has been credited to your account.",
|
|
35698
|
+
depositRefundedOrReprocessed: "Your purchase has been refunded or reprocessed. Feel free to reach out for an update.",
|
|
35699
|
+
issueOccurredWithDeposit: "An issue occurred with your purchase. Please try again.",
|
|
35700
|
+
depositDidntCompleteFull: `Your purchase didn't complete. <ContactSupportLink text="Contact us" /> for more info.`,
|
|
35701
|
+
depositDelayedFundsSafeFull: 'Your purchase is delayed but funds are safe. <ContactSupportLink text="Contact us" /> for more info.',
|
|
35702
|
+
depositExpired: "Purchase expired",
|
|
35703
|
+
depositDidntCompleteError: "Your purchase didn't complete due to an error.",
|
|
35704
|
+
depositDidntCompleteFundsSafe: "Your purchase didn't complete. Your funds are safe your order will process shortly. Feel free to reach out for an update.",
|
|
35705
|
+
depositBeingProcessedFull: 'Your purchase is being processed. <ContactSupportLink text="Contact us" /> for more info.',
|
|
35706
|
+
depositingIntoAccount: "Purchasing into your account...",
|
|
35707
|
+
waitingForExchangeToSendFunds: "Waiting for {{exchangeName}} to send funds..."
|
|
35708
|
+
},
|
|
35709
|
+
checkoutHistory: {
|
|
35710
|
+
depositAddress: "Purchase address",
|
|
35711
|
+
newDeposit: "Buy More"
|
|
35712
|
+
},
|
|
35713
|
+
directExecution: {
|
|
35714
|
+
depositTx: "Purchase tx"
|
|
35715
|
+
},
|
|
35716
|
+
directExecutionNotif: {
|
|
35717
|
+
depositTransactionInitiated: "Purchase transaction initiated",
|
|
35718
|
+
depositCompletedNotification: "You will receive a notification here once the purchase is completed."
|
|
35719
|
+
},
|
|
35720
|
+
fees: {
|
|
35721
|
+
yourGasCostsTooltip: "Amount paid to send assets to your purchase address."
|
|
35722
|
+
},
|
|
35723
|
+
virtualFiatAccount: {
|
|
35724
|
+
transferDetails: "You will be provided with the transfer details for SEPA payments. Once processed, the funds you will send to the account will be automatically purchased to your {{appName}} account."
|
|
35725
|
+
},
|
|
35726
|
+
textCustomizations: {
|
|
35727
|
+
virtualFiat: "Buy with SEPA",
|
|
35728
|
+
transferTokens: "Buy with QR Code",
|
|
35729
|
+
debitOrCredit: "Buy with Card",
|
|
35730
|
+
brokerageOrExchange: "Buy with Exchange"
|
|
35731
|
+
},
|
|
35732
|
+
sourceChange: {
|
|
35733
|
+
brokerageDisplayLabel: "Buy with {{brokerageLabel}}",
|
|
35734
|
+
walletDisplayLabel: "Buy with Wallet",
|
|
35735
|
+
virtualFiatDisplayLabel: "Buy with SEPA"
|
|
35736
|
+
},
|
|
35737
|
+
relay: {
|
|
35738
|
+
confirmTransaction: "Confirm transaction",
|
|
35739
|
+
waitingForConfirmation: "Waiting for confirmation",
|
|
35740
|
+
transactionConfirmed: "Transaction confirmed"
|
|
35741
|
+
}
|
|
35742
|
+
};
|
|
35743
|
+
|
|
35498
35744
|
// src/locales/translations/en.json
|
|
35499
35745
|
var en_default = {
|
|
35500
35746
|
checkout: {
|
|
@@ -35502,7 +35748,9 @@ var en_default = {
|
|
|
35502
35748
|
noAvailableTokensMessage: "You don't have any crypto tokens in your wallet. Top up or transfer crypto to your wallet to continue.",
|
|
35503
35749
|
topUpWallet: "Top up wallet",
|
|
35504
35750
|
refundProcessing: "Funds were withdrawn, but the transaction didn't complete. A refund is being processed.",
|
|
35505
|
-
orderRefunded: "Your order was refunded."
|
|
35751
|
+
orderRefunded: "Your order was refunded.",
|
|
35752
|
+
walletLabelTemplate: "{{walletLabel}} ({{formattedAddress}})",
|
|
35753
|
+
connectWalletLabelTemplate: "Connect {{walletLabel}}"
|
|
35506
35754
|
},
|
|
35507
35755
|
inputAmount: {
|
|
35508
35756
|
availableBalanceTooltip: "Your available balance after fees",
|
|
@@ -35916,7 +36164,10 @@ var en_default = {
|
|
|
35916
36164
|
sourceChange: {
|
|
35917
36165
|
selectPaymentMethod: "Select payment method",
|
|
35918
36166
|
moreOptions: "More options",
|
|
35919
|
-
more: "more"
|
|
36167
|
+
more: "more",
|
|
36168
|
+
walletDisplayLabel: "{{walletLabel}}",
|
|
36169
|
+
brokerageDisplayLabel: "{{brokerageLabel}}",
|
|
36170
|
+
virtualFiatDisplayLabel: "{{virtualFiatLabel}}"
|
|
35920
36171
|
},
|
|
35921
36172
|
quote: {
|
|
35922
36173
|
preparingYourQuote: "Preparing your quote...",
|
|
@@ -36006,7 +36257,9 @@ var es_default = {
|
|
|
36006
36257
|
noAvailableTokensMessage: "No tienes ning\xFAn token cripto en tu billetera. Recarga o transfiere cripto a tu billetera para continuar.",
|
|
36007
36258
|
topUpWallet: "Recargar billetera",
|
|
36008
36259
|
refundProcessing: "Los fondos fueron retirados, pero la transacci\xF3n no se complet\xF3. Se est\xE1 procesando un reembolso.",
|
|
36009
|
-
orderRefunded: "Tu pedido fue reembolsado."
|
|
36260
|
+
orderRefunded: "Tu pedido fue reembolsado.",
|
|
36261
|
+
walletLabelTemplate: "{{walletLabel}} ({{formattedAddress}})",
|
|
36262
|
+
connectWalletLabelTemplate: "Conectar {{walletLabel}}"
|
|
36010
36263
|
},
|
|
36011
36264
|
inputAmount: {
|
|
36012
36265
|
availableBalanceTooltip: "Tu saldo disponible despu\xE9s de las comisiones",
|
|
@@ -36420,7 +36673,10 @@ var es_default = {
|
|
|
36420
36673
|
sourceChange: {
|
|
36421
36674
|
selectPaymentMethod: "Seleccionar m\xE9todo de pago",
|
|
36422
36675
|
moreOptions: "M\xE1s opciones",
|
|
36423
|
-
more: "m\xE1s"
|
|
36676
|
+
more: "m\xE1s",
|
|
36677
|
+
walletDisplayLabel: "{{walletLabel}}",
|
|
36678
|
+
brokerageDisplayLabel: "{{brokerageLabel}}",
|
|
36679
|
+
virtualFiatDisplayLabel: "{{virtualFiatLabel}}"
|
|
36424
36680
|
},
|
|
36425
36681
|
quote: {
|
|
36426
36682
|
preparingYourQuote: "Preparando tu cotizaci\xF3n...",
|
|
@@ -36510,7 +36766,9 @@ var ja_default = {
|
|
|
36510
36766
|
noAvailableTokensMessage: "\u30A6\u30A9\u30EC\u30C3\u30C8\u306B\u6697\u53F7\u8CC7\u7523\u30C8\u30FC\u30AF\u30F3\u304C\u3042\u308A\u307E\u305B\u3093\u3002\u7D9A\u884C\u3059\u308B\u306B\u306F\u3001\u30A6\u30A9\u30EC\u30C3\u30C8\u306B\u6697\u53F7\u8CC7\u7523\u3092\u30C1\u30E3\u30FC\u30B8\u307E\u305F\u306F\u9001\u91D1\u3057\u3066\u304F\u3060\u3055\u3044\u3002",
|
|
36511
36767
|
topUpWallet: "\u30A6\u30A9\u30EC\u30C3\u30C8\u306B\u30C1\u30E3\u30FC\u30B8",
|
|
36512
36768
|
refundProcessing: "\u8CC7\u91D1\u306F\u5F15\u304D\u51FA\u3055\u308C\u307E\u3057\u305F\u304C\u3001\u53D6\u5F15\u306F\u5B8C\u4E86\u3057\u307E\u305B\u3093\u3067\u3057\u305F\u3002\u8FD4\u91D1\u51E6\u7406\u4E2D\u3067\u3059\u3002",
|
|
36513
|
-
orderRefunded: "\u3054\u6CE8\u6587\u306F\u8FD4\u91D1\u3055\u308C\u307E\u3057\u305F\u3002"
|
|
36769
|
+
orderRefunded: "\u3054\u6CE8\u6587\u306F\u8FD4\u91D1\u3055\u308C\u307E\u3057\u305F\u3002",
|
|
36770
|
+
walletLabelTemplate: "{{walletLabel}} ({{formattedAddress}})",
|
|
36771
|
+
connectWalletLabelTemplate: "{{walletLabel}}\u3092\u63A5\u7D9A"
|
|
36514
36772
|
},
|
|
36515
36773
|
inputAmount: {
|
|
36516
36774
|
availableBalanceTooltip: "\u624B\u6570\u6599\u3092\u5DEE\u3057\u5F15\u3044\u305F\u5F8C\u306E\u5229\u7528\u53EF\u80FD\u6B8B\u9AD8",
|
|
@@ -36924,7 +37182,10 @@ var ja_default = {
|
|
|
36924
37182
|
sourceChange: {
|
|
36925
37183
|
selectPaymentMethod: "\u652F\u6255\u3044\u65B9\u6CD5\u3092\u9078\u629E",
|
|
36926
37184
|
moreOptions: "\u305D\u306E\u4ED6\u306E\u30AA\u30D7\u30B7\u30E7\u30F3",
|
|
36927
|
-
more: "\u3082\u3063\u3068\u898B\u308B"
|
|
37185
|
+
more: "\u3082\u3063\u3068\u898B\u308B",
|
|
37186
|
+
walletDisplayLabel: "{{walletLabel}}",
|
|
37187
|
+
brokerageDisplayLabel: "{{brokerageLabel}}",
|
|
37188
|
+
virtualFiatDisplayLabel: "{{virtualFiatLabel}}"
|
|
36928
37189
|
},
|
|
36929
37190
|
quote: {
|
|
36930
37191
|
preparingYourQuote: "\u898B\u7A4D\u3082\u308A\u3092\u6E96\u5099\u4E2D...",
|
|
@@ -37014,7 +37275,9 @@ var ko_default = {
|
|
|
37014
37275
|
noAvailableTokensMessage: "\uC9C0\uAC11\uC5D0 \uC554\uD638\uD654\uD3D0 \uD1A0\uD070\uC774 \uC5C6\uC2B5\uB2C8\uB2E4. \uACC4\uC18D\uD558\uB824\uBA74 \uC9C0\uAC11\uC5D0 \uC554\uD638\uD654\uD3D0\uB97C \uCDA9\uC804\uD558\uAC70\uB098 \uC804\uC1A1\uD558\uC138\uC694.",
|
|
37015
37276
|
topUpWallet: "\uC9C0\uAC11 \uCDA9\uC804",
|
|
37016
37277
|
refundProcessing: "\uC790\uAE08\uC774 \uCD9C\uAE08\uB418\uC5C8\uC9C0\uB9CC \uAC70\uB798\uAC00 \uC644\uB8CC\uB418\uC9C0 \uC54A\uC558\uC2B5\uB2C8\uB2E4. \uD658\uBD88\uC774 \uCC98\uB9AC\uB418\uACE0 \uC788\uC2B5\uB2C8\uB2E4.",
|
|
37017
|
-
orderRefunded: "\uC8FC\uBB38\uC774 \uD658\uBD88\uB418\uC5C8\uC2B5\uB2C8\uB2E4."
|
|
37278
|
+
orderRefunded: "\uC8FC\uBB38\uC774 \uD658\uBD88\uB418\uC5C8\uC2B5\uB2C8\uB2E4.",
|
|
37279
|
+
walletLabelTemplate: "{{walletLabel}} ({{formattedAddress}})",
|
|
37280
|
+
connectWalletLabelTemplate: "{{walletLabel}} \uC5F0\uACB0"
|
|
37018
37281
|
},
|
|
37019
37282
|
inputAmount: {
|
|
37020
37283
|
availableBalanceTooltip: "\uC218\uC218\uB8CC\uB97C \uC81C\uC678\uD55C \uC0AC\uC6A9 \uAC00\uB2A5\uD55C \uC794\uC561",
|
|
@@ -37428,7 +37691,10 @@ var ko_default = {
|
|
|
37428
37691
|
sourceChange: {
|
|
37429
37692
|
selectPaymentMethod: "\uACB0\uC81C \uBC29\uBC95 \uC120\uD0DD",
|
|
37430
37693
|
moreOptions: "\uB354 \uB9CE\uC740 \uC635\uC158",
|
|
37431
|
-
more: "\uB354 \uBCF4\uAE30"
|
|
37694
|
+
more: "\uB354 \uBCF4\uAE30",
|
|
37695
|
+
walletDisplayLabel: "{{walletLabel}}",
|
|
37696
|
+
brokerageDisplayLabel: "{{brokerageLabel}}",
|
|
37697
|
+
virtualFiatDisplayLabel: "{{virtualFiatLabel}}"
|
|
37432
37698
|
},
|
|
37433
37699
|
quote: {
|
|
37434
37700
|
preparingYourQuote: "\uACAC\uC801 \uC900\uBE44 \uC911...",
|
|
@@ -37518,7 +37784,9 @@ var ru_default = {
|
|
|
37518
37784
|
noAvailableTokensMessage: "\u0423 \u0432\u0430\u0441 \u043D\u0435\u0442 \u043A\u0440\u0438\u043F\u0442\u043E\u0432\u0430\u043B\u044E\u0442\u043D\u044B\u0445 \u0442\u043E\u043A\u0435\u043D\u043E\u0432 \u0432 \u043A\u043E\u0448\u0435\u043B\u044C\u043A\u0435. \u041F\u043E\u043F\u043E\u043B\u043D\u0438\u0442\u0435 \u0438\u043B\u0438 \u043F\u0435\u0440\u0435\u0432\u0435\u0434\u0438\u0442\u0435 \u043A\u0440\u0438\u043F\u0442\u043E\u0432\u0430\u043B\u044E\u0442\u0443 \u0432 \u043A\u043E\u0448\u0435\u043B\u0451\u043A \u0434\u043B\u044F \u043F\u0440\u043E\u0434\u043E\u043B\u0436\u0435\u043D\u0438\u044F.",
|
|
37519
37785
|
topUpWallet: "\u041F\u043E\u043F\u043E\u043B\u043D\u0438\u0442\u044C \u043A\u043E\u0448\u0435\u043B\u0451\u043A",
|
|
37520
37786
|
refundProcessing: "\u0421\u0440\u0435\u0434\u0441\u0442\u0432\u0430 \u0431\u044B\u043B\u0438 \u0432\u044B\u0432\u0435\u0434\u0435\u043D\u044B, \u043D\u043E \u0442\u0440\u0430\u043D\u0437\u0430\u043A\u0446\u0438\u044F \u043D\u0435 \u0437\u0430\u0432\u0435\u0440\u0448\u0435\u043D\u0430. \u041E\u0431\u0440\u0430\u0431\u0430\u0442\u044B\u0432\u0430\u0435\u0442\u0441\u044F \u0432\u043E\u0437\u0432\u0440\u0430\u0442.",
|
|
37521
|
-
orderRefunded: "\u0412\u0430\u0448 \u0437\u0430\u043A\u0430\u0437 \u0431\u044B\u043B \u0432\u043E\u0437\u0432\u0440\u0430\u0449\u0451\u043D."
|
|
37787
|
+
orderRefunded: "\u0412\u0430\u0448 \u0437\u0430\u043A\u0430\u0437 \u0431\u044B\u043B \u0432\u043E\u0437\u0432\u0440\u0430\u0449\u0451\u043D.",
|
|
37788
|
+
walletLabelTemplate: "{{walletLabel}} ({{formattedAddress}})",
|
|
37789
|
+
connectWalletLabelTemplate: "\u041F\u043E\u0434\u043A\u043B\u044E\u0447\u0438\u0442\u044C {{walletLabel}}"
|
|
37522
37790
|
},
|
|
37523
37791
|
inputAmount: {
|
|
37524
37792
|
availableBalanceTooltip: "\u0412\u0430\u0448 \u0434\u043E\u0441\u0442\u0443\u043F\u043D\u044B\u0439 \u0431\u0430\u043B\u0430\u043D\u0441 \u043F\u043E\u0441\u043B\u0435 \u043A\u043E\u043C\u0438\u0441\u0441\u0438\u0439",
|
|
@@ -37932,7 +38200,10 @@ var ru_default = {
|
|
|
37932
38200
|
sourceChange: {
|
|
37933
38201
|
selectPaymentMethod: "\u0412\u044B\u0431\u0435\u0440\u0438\u0442\u0435 \u0441\u043F\u043E\u0441\u043E\u0431 \u043E\u043F\u043B\u0430\u0442\u044B",
|
|
37934
38202
|
moreOptions: "\u0411\u043E\u043B\u044C\u0448\u0435 \u043E\u043F\u0446\u0438\u0439",
|
|
37935
|
-
more: "\u0431\u043E\u043B\u044C\u0448\u0435"
|
|
38203
|
+
more: "\u0431\u043E\u043B\u044C\u0448\u0435",
|
|
38204
|
+
walletDisplayLabel: "{{walletLabel}}",
|
|
38205
|
+
brokerageDisplayLabel: "{{brokerageLabel}}",
|
|
38206
|
+
virtualFiatDisplayLabel: "{{virtualFiatLabel}}"
|
|
37936
38207
|
},
|
|
37937
38208
|
quote: {
|
|
37938
38209
|
preparingYourQuote: "\u041F\u043E\u0434\u0433\u043E\u0442\u043E\u0432\u043A\u0430 \u0432\u0430\u0448\u0435\u0439 \u043A\u043E\u0442\u0438\u0440\u043E\u0432\u043A\u0438...",
|
|
@@ -38022,7 +38293,9 @@ var tr_default = {
|
|
|
38022
38293
|
noAvailableTokensMessage: "C\xFCzdan\u0131n\u0131zda kripto token bulunmamaktad\u0131r. Devam etmek i\xE7in c\xFCzdan\u0131n\u0131za para yat\u0131r\u0131n veya kripto transfer edin.",
|
|
38023
38294
|
topUpWallet: "C\xFCzdana para y\xFCkle",
|
|
38024
38295
|
refundProcessing: "Fonlar \xE7ekildi, ancak i\u015Flem tamamlanmad\u0131. \u0130ade i\u015Flemi yap\u0131l\u0131yor.",
|
|
38025
|
-
orderRefunded: "Sipari\u015Finiz iade edildi."
|
|
38296
|
+
orderRefunded: "Sipari\u015Finiz iade edildi.",
|
|
38297
|
+
walletLabelTemplate: "{{walletLabel}} ({{formattedAddress}})",
|
|
38298
|
+
connectWalletLabelTemplate: "{{walletLabel}} Ba\u011Fla"
|
|
38026
38299
|
},
|
|
38027
38300
|
inputAmount: {
|
|
38028
38301
|
availableBalanceTooltip: "\xDCcretler sonras\u0131 kullan\u0131labilir bakiyeniz",
|
|
@@ -38436,7 +38709,10 @@ var tr_default = {
|
|
|
38436
38709
|
sourceChange: {
|
|
38437
38710
|
selectPaymentMethod: "\xD6deme y\xF6ntemi se\xE7in",
|
|
38438
38711
|
moreOptions: "Daha fazla se\xE7enek",
|
|
38439
|
-
more: "daha fazla"
|
|
38712
|
+
more: "daha fazla",
|
|
38713
|
+
walletDisplayLabel: "{{walletLabel}}",
|
|
38714
|
+
brokerageDisplayLabel: "{{brokerageLabel}}",
|
|
38715
|
+
virtualFiatDisplayLabel: "{{virtualFiatLabel}}"
|
|
38440
38716
|
},
|
|
38441
38717
|
quote: {
|
|
38442
38718
|
preparingYourQuote: "Teklifiniz haz\u0131rlan\u0131yor...",
|
|
@@ -38526,7 +38802,9 @@ var zh_default = {
|
|
|
38526
38802
|
noAvailableTokensMessage: "\u60A8\u7684\u94B1\u5305\u4E2D\u6CA1\u6709\u4EFB\u4F55\u52A0\u5BC6\u4EE3\u5E01\u3002\u5145\u503C\u6216\u8F6C\u8D26\u52A0\u5BC6\u8D27\u5E01\u5230\u60A8\u7684\u94B1\u5305\u4EE5\u7EE7\u7EED\u3002",
|
|
38527
38803
|
topUpWallet: "\u5145\u503C\u94B1\u5305",
|
|
38528
38804
|
refundProcessing: "\u8D44\u91D1\u5DF2\u63D0\u53D6\uFF0C\u4F46\u4EA4\u6613\u672A\u5B8C\u6210\u3002\u6B63\u5728\u5904\u7406\u9000\u6B3E\u3002",
|
|
38529
|
-
orderRefunded: "\u60A8\u7684\u8BA2\u5355\u5DF2\u9000\u6B3E\u3002"
|
|
38805
|
+
orderRefunded: "\u60A8\u7684\u8BA2\u5355\u5DF2\u9000\u6B3E\u3002",
|
|
38806
|
+
walletLabelTemplate: "{{walletLabel}} ({{formattedAddress}})",
|
|
38807
|
+
connectWalletLabelTemplate: "\u8FDE\u63A5 {{walletLabel}}"
|
|
38530
38808
|
},
|
|
38531
38809
|
inputAmount: {
|
|
38532
38810
|
availableBalanceTooltip: "\u6263\u9664\u624B\u7EED\u8D39\u540E\u7684\u53EF\u7528\u4F59\u989D",
|
|
@@ -38940,7 +39218,10 @@ var zh_default = {
|
|
|
38940
39218
|
sourceChange: {
|
|
38941
39219
|
selectPaymentMethod: "\u9009\u62E9\u652F\u4ED8\u65B9\u5F0F",
|
|
38942
39220
|
moreOptions: "\u66F4\u591A\u9009\u9879",
|
|
38943
|
-
more: "\u66F4\u591A"
|
|
39221
|
+
more: "\u66F4\u591A",
|
|
39222
|
+
walletDisplayLabel: "{{walletLabel}}",
|
|
39223
|
+
brokerageDisplayLabel: "{{brokerageLabel}}",
|
|
39224
|
+
virtualFiatDisplayLabel: "{{virtualFiatLabel}}"
|
|
38944
39225
|
},
|
|
38945
39226
|
quote: {
|
|
38946
39227
|
preparingYourQuote: "\u6B63\u5728\u51C6\u5907\u60A8\u7684\u62A5\u4EF7...",
|
|
@@ -39032,7 +39313,8 @@ var localeMapping = {
|
|
|
39032
39313
|
ja: "ja",
|
|
39033
39314
|
tr: "tr",
|
|
39034
39315
|
es: "es",
|
|
39035
|
-
ru: "ru"
|
|
39316
|
+
ru: "ru",
|
|
39317
|
+
buy_en: "buy_en"
|
|
39036
39318
|
};
|
|
39037
39319
|
var resources = {
|
|
39038
39320
|
en: {
|
|
@@ -39043,7 +39325,8 @@ var resources = {
|
|
|
39043
39325
|
ja: { translation: ja_default },
|
|
39044
39326
|
tr: { translation: tr_default },
|
|
39045
39327
|
es: { translation: es_default },
|
|
39046
|
-
ru: { translation: ru_default }
|
|
39328
|
+
ru: { translation: ru_default },
|
|
39329
|
+
buy_en: { translation: buy_en_default }
|
|
39047
39330
|
};
|
|
39048
39331
|
i18n.use(initReactI18next).init({
|
|
39049
39332
|
resources,
|