@funkit/connect 5.4.0 → 5.4.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/CHANGELOG.md +18 -0
- package/dist/components/FunCheckoutHistory/FunDirectExecutionHistoryDetail.d.ts +4 -0
- package/dist/hooks/queries/useClientId.d.ts +3 -0
- package/dist/hooks/queries/useRecentCheckouts.d.ts +1 -0
- package/dist/hooks/useCheckoutDirectExecutionHistory.d.ts +4 -4
- package/dist/hooks/useDirectExecutionInfoPolling.d.ts +4 -4
- package/dist/hooks/usePaymentSources.d.ts +2 -2
- package/dist/index.js +445 -154
- package/dist/modals/CheckoutModal/TransferToken/DirectExecutionNotification.d.ts +10 -0
- package/dist/providers/FunkitConfigContext.d.ts +2 -0
- package/dist/utils/customer.d.ts +6 -0
- package/dist/utils/directExecution.d.ts +4 -0
- package/dist/utils/purifyCheckoutHistoryItem.d.ts +3 -1
- package/dist/wallets/walletConnectors/bifrostWallet/bifrostWallet.js +2 -2
- package/dist/wallets/walletConnectors/bitgetWallet/bitgetWallet.js +2 -2
- package/dist/wallets/walletConnectors/bybitWallet/bybitWallet.js +2 -2
- package/dist/wallets/walletConnectors/chunk-25VW5TZP.js +92 -0
- package/dist/wallets/walletConnectors/chunk-3NC26XLM.js +92 -0
- package/dist/wallets/walletConnectors/chunk-3U3BMEH5.js +94 -0
- package/dist/wallets/walletConnectors/chunk-4UM4GTKZ.js +103 -0
- package/dist/wallets/walletConnectors/chunk-545L7Y4M.js +69 -0
- package/dist/wallets/walletConnectors/chunk-6LPM6LUQ.js +110 -0
- package/dist/wallets/walletConnectors/chunk-7GSNBOD3.js +99 -0
- package/dist/wallets/walletConnectors/chunk-ETTNDQQG.js +100 -0
- package/dist/wallets/walletConnectors/chunk-FRGSRLTS.js +93 -0
- package/dist/wallets/walletConnectors/chunk-HKV7EMYZ.js +96 -0
- package/dist/wallets/walletConnectors/chunk-IPOC2VJX.js +106 -0
- package/dist/wallets/walletConnectors/chunk-JXP2QPW7.js +95 -0
- package/dist/wallets/walletConnectors/chunk-KFFJPS5R.js +96 -0
- package/dist/wallets/walletConnectors/chunk-LEXSM5KI.js +87 -0
- package/dist/wallets/walletConnectors/chunk-MOOBCMMB.js +70 -0
- package/dist/wallets/walletConnectors/chunk-N2NIIUW6.js +146 -0
- package/dist/wallets/walletConnectors/chunk-W5O4YSZN.js +98 -0
- package/dist/wallets/walletConnectors/chunk-XYBEMO3C.js +66 -0
- package/dist/wallets/walletConnectors/clvWallet/clvWallet.js +2 -2
- package/dist/wallets/walletConnectors/coin98Wallet/coin98Wallet.js +2 -2
- package/dist/wallets/walletConnectors/coreWallet/coreWallet.js +2 -2
- package/dist/wallets/walletConnectors/foxWallet/foxWallet.js +2 -2
- package/dist/wallets/walletConnectors/frontierWallet/frontierWallet.js +2 -2
- package/dist/wallets/walletConnectors/gateWallet/gateWallet.js +2 -2
- package/dist/wallets/walletConnectors/index.js +62 -62
- package/dist/wallets/walletConnectors/metaMaskWallet/metaMaskWallet.js +2 -2
- package/dist/wallets/walletConnectors/okxWallet/okxWallet.js +2 -2
- package/dist/wallets/walletConnectors/rainbowWallet/rainbowWallet.js +2 -2
- package/dist/wallets/walletConnectors/roninWallet/roninWallet.js +2 -2
- package/dist/wallets/walletConnectors/safepalWallet/safepalWallet.js +2 -2
- package/dist/wallets/walletConnectors/subWallet/subWallet.js +2 -2
- package/dist/wallets/walletConnectors/tokenPocketWallet/tokenPocketWallet.js +2 -2
- package/dist/wallets/walletConnectors/trustWallet/trustWallet.js +2 -2
- package/dist/wallets/walletConnectors/zerionWallet/zerionWallet.js +2 -2
- package/package.json +5 -5
package/dist/index.js
CHANGED
|
@@ -400,7 +400,7 @@ function Avatar({ address, imageUrl, loading, size }) {
|
|
|
400
400
|
}
|
|
401
401
|
|
|
402
402
|
// src/components/ConnectButton/ConnectButton.tsx
|
|
403
|
-
import
|
|
403
|
+
import React252, { useEffect as useEffect49, useState as useState69 } from "react";
|
|
404
404
|
|
|
405
405
|
// src/css/touchableStyles.css.ts
|
|
406
406
|
var active = { shrink: "_7rkubb8", shrinkSm: "_7rkubb9" };
|
|
@@ -504,7 +504,7 @@ import PrivyJS, {
|
|
|
504
504
|
getUserEmbeddedWallet,
|
|
505
505
|
LocalStorage
|
|
506
506
|
} from "@privy-io/js-sdk-core";
|
|
507
|
-
import
|
|
507
|
+
import React249, {
|
|
508
508
|
createContext as createContext18,
|
|
509
509
|
useCallback as useCallback47,
|
|
510
510
|
useContext as useContext18,
|
|
@@ -1023,7 +1023,7 @@ var useFunkitConnectChainsById = () => groupChainsById(useFunkitConnectChains())
|
|
|
1023
1023
|
var useInitialChainId = () => useContext4(FunkitConnectChainContext).initialChainId;
|
|
1024
1024
|
|
|
1025
1025
|
// src/providers/ModalContext.tsx
|
|
1026
|
-
import
|
|
1026
|
+
import React248, {
|
|
1027
1027
|
createContext as createContext17,
|
|
1028
1028
|
useCallback as useCallback46,
|
|
1029
1029
|
useContext as useContext17,
|
|
@@ -3141,10 +3141,10 @@ var flagConfig = {
|
|
|
3141
3141
|
{
|
|
3142
3142
|
key: "apiKey",
|
|
3143
3143
|
type: "isAnyOf",
|
|
3144
|
-
values: [POLYMARKET_API_KEY2]
|
|
3144
|
+
values: [POLYMARKET_API_KEY2, KATANA_API_KEY2]
|
|
3145
3145
|
}
|
|
3146
3146
|
],
|
|
3147
|
-
// Turn off geoblock for PM on our end. PM will handle the conditional display of the Deposit button.
|
|
3147
|
+
// Turn off geoblock for PM & Katana on our end. PM & Katana will handle the conditional display of the Deposit button.
|
|
3148
3148
|
value: ""
|
|
3149
3149
|
}
|
|
3150
3150
|
]
|
|
@@ -3167,7 +3167,7 @@ var flagConfig = {
|
|
|
3167
3167
|
{
|
|
3168
3168
|
key: "apiKey",
|
|
3169
3169
|
type: "isAnyOf",
|
|
3170
|
-
values: [DYDX_API_KEY2]
|
|
3170
|
+
values: [DYDX_API_KEY2, KATANA_API_KEY2]
|
|
3171
3171
|
}
|
|
3172
3172
|
],
|
|
3173
3173
|
value: true
|
|
@@ -3441,7 +3441,8 @@ var flagConfig = {
|
|
|
3441
3441
|
8453: ["*"],
|
|
3442
3442
|
42161: ["*"],
|
|
3443
3443
|
10: ["*"],
|
|
3444
|
-
56: ["*"]
|
|
3444
|
+
56: ["*"],
|
|
3445
|
+
747474: ["*"]
|
|
3445
3446
|
})
|
|
3446
3447
|
},
|
|
3447
3448
|
[FlagKey.RelayBypassTargetChainsAndAssets]: {
|
|
@@ -6430,23 +6431,25 @@ import {
|
|
|
6430
6431
|
import { useMemo as useMemo7 } from "react";
|
|
6431
6432
|
|
|
6432
6433
|
// src/hooks/useDirectExecutionInfoPolling.ts
|
|
6433
|
-
import {
|
|
6434
|
+
import {
|
|
6435
|
+
getDirectExecutionByTxHash
|
|
6436
|
+
} from "@funkit/api-base";
|
|
6434
6437
|
import { RELAY_TERMINAL_STATUSES } from "@funkit/fun-relay";
|
|
6435
6438
|
import { useQuery as useQuery2 } from "@tanstack/react-query";
|
|
6436
6439
|
var RELAY_FETCH_INTERVAL = 1500;
|
|
6437
6440
|
var logPrefix = "useDirectExecutionInfoPolling";
|
|
6438
6441
|
function useDirectExecutionInfoPolling({
|
|
6439
|
-
|
|
6442
|
+
initDirectExecution
|
|
6440
6443
|
}) {
|
|
6441
6444
|
const { apiKey } = useFunkitConfig();
|
|
6442
6445
|
const { data: directExecution, isLoading } = useQuery2({
|
|
6443
|
-
queryKey: [logPrefix, txHash],
|
|
6446
|
+
queryKey: [logPrefix, initDirectExecution?.txHash],
|
|
6444
6447
|
queryFn: async () => {
|
|
6445
6448
|
try {
|
|
6446
6449
|
const data = await getDirectExecutionByTxHash({
|
|
6447
6450
|
apiKey,
|
|
6448
6451
|
logger,
|
|
6449
|
-
txHash
|
|
6452
|
+
txHash: initDirectExecution?.txHash
|
|
6450
6453
|
// query is disabled if txHash not present
|
|
6451
6454
|
});
|
|
6452
6455
|
logger.log(`${logPrefix}:response`, data);
|
|
@@ -6467,7 +6470,8 @@ function useDirectExecutionInfoPolling({
|
|
|
6467
6470
|
}
|
|
6468
6471
|
return RELAY_FETCH_INTERVAL;
|
|
6469
6472
|
},
|
|
6470
|
-
|
|
6473
|
+
initialData: initDirectExecution,
|
|
6474
|
+
enabled: !!initDirectExecution?.txHash
|
|
6471
6475
|
});
|
|
6472
6476
|
return {
|
|
6473
6477
|
directExecution,
|
|
@@ -6488,9 +6492,11 @@ function mapRelayExecutionStatusToCheckoutState(status) {
|
|
|
6488
6492
|
}
|
|
6489
6493
|
}
|
|
6490
6494
|
function useCheckoutDirectExecutionHistory({
|
|
6491
|
-
|
|
6495
|
+
initDirectExecution
|
|
6492
6496
|
}) {
|
|
6493
|
-
const { directExecution } = useDirectExecutionInfoPolling({
|
|
6497
|
+
const { directExecution } = useDirectExecutionInfoPolling({
|
|
6498
|
+
initDirectExecution
|
|
6499
|
+
});
|
|
6494
6500
|
const status = directExecution?.listenerInfo?.status ?? RelayExecutionStatus.PENDING;
|
|
6495
6501
|
const state = useMemo7(() => {
|
|
6496
6502
|
return mapRelayExecutionStatusToCheckoutState(status);
|
|
@@ -6510,17 +6516,27 @@ function useCheckoutDirectExecutionHistory({
|
|
|
6510
6516
|
isRefunded: refundState === CheckoutRefundState.REFUNDED,
|
|
6511
6517
|
isCompleted: state === CheckoutState2.COMPLETED,
|
|
6512
6518
|
isFailed: state === CheckoutState2.CHECKOUT_ERROR,
|
|
6513
|
-
isDelayed: isDelayed2
|
|
6519
|
+
isDelayed: isDelayed2,
|
|
6520
|
+
isProcessing: state === CheckoutState2.PENDING_RECEIVAL
|
|
6514
6521
|
};
|
|
6515
6522
|
}
|
|
6516
6523
|
|
|
6524
|
+
// src/utils/directExecution.ts
|
|
6525
|
+
function getDirectExecutionUpdatedTimeMs({
|
|
6526
|
+
directExecution
|
|
6527
|
+
}) {
|
|
6528
|
+
const updatedAt = directExecution?.listenerInfo?.relayExecutionRequestDetails?.updatedAt || directExecution?.listenerInfo?.time || // Fallback to 0 if updatedAt is not defined. Not ideal but should really not happen unless its a really old test direct execution record
|
|
6529
|
+
directExecution?.updatedTimeMs || 0;
|
|
6530
|
+
return new Date(updatedAt).getTime();
|
|
6531
|
+
}
|
|
6532
|
+
|
|
6517
6533
|
// src/utils/purifyCheckoutHistoryItem.ts
|
|
6518
6534
|
var purifyCheckoutHistoryItem = (item) => {
|
|
6519
6535
|
if ("depositAddr" in item) {
|
|
6520
6536
|
return {
|
|
6521
|
-
depositAddr: item.depositAddr,
|
|
6522
6537
|
directExecution: false,
|
|
6523
6538
|
id: item.depositAddr,
|
|
6539
|
+
depositAddr: item.depositAddr,
|
|
6524
6540
|
fromAmountBaseUnit: item.fromAmountBaseUnit,
|
|
6525
6541
|
fromChainId: item.fromChainId,
|
|
6526
6542
|
fromTokenAddress: item.fromTokenAddress,
|
|
@@ -6528,7 +6544,9 @@ var purifyCheckoutHistoryItem = (item) => {
|
|
|
6528
6544
|
toChainId: item.toChainId,
|
|
6529
6545
|
toTokenAddress: item.toTokenAddress,
|
|
6530
6546
|
toAmountBaseUnit: item.toAmountBaseUnit,
|
|
6531
|
-
createdTimeMs: item.createdTimeMs
|
|
6547
|
+
createdTimeMs: item.createdTimeMs,
|
|
6548
|
+
updatedTimeMs: item.lastUpdatedTimeMs,
|
|
6549
|
+
additionalActions: item?.clientMetadata?.evaluatedActionsParams ?? []
|
|
6532
6550
|
};
|
|
6533
6551
|
}
|
|
6534
6552
|
return {
|
|
@@ -6544,7 +6562,9 @@ var purifyCheckoutHistoryItem = (item) => {
|
|
|
6544
6562
|
toTokenAddress: item.toTokenAddress,
|
|
6545
6563
|
toAmountBaseUnit: item.toAmountBaseUnit,
|
|
6546
6564
|
txHash: item.txHash,
|
|
6547
|
-
createdTimeMs: item.createdTimeMs
|
|
6565
|
+
createdTimeMs: item.createdTimeMs,
|
|
6566
|
+
updatedTimeMs: getDirectExecutionUpdatedTimeMs({ directExecution: item }),
|
|
6567
|
+
additionalActions: item?.clientMetadata?.evaluatedActionsParams ?? []
|
|
6548
6568
|
};
|
|
6549
6569
|
};
|
|
6550
6570
|
|
|
@@ -6809,7 +6829,7 @@ function getCheckoutCompletionTime(checkout) {
|
|
|
6809
6829
|
|
|
6810
6830
|
// src/components/FunCheckoutHistory/FunCheckoutHistoryDetail.tsx
|
|
6811
6831
|
import React214, { useCallback as useCallback40, useMemo as useMemo36, useState as useState57 } from "react";
|
|
6812
|
-
import { createPortal as
|
|
6832
|
+
import { createPortal as createPortal13 } from "react-dom";
|
|
6813
6833
|
|
|
6814
6834
|
// src/components/HelpAlert/HelpAlert.tsx
|
|
6815
6835
|
import React64 from "react";
|
|
@@ -13819,6 +13839,12 @@ function PaymentAmountSummary({
|
|
|
13819
13839
|
quote.baseQuote.estSubtotalUsd + Number.parseFloat(quote.finalPaymentFeeUsd) - Number.parseFloat(quote.finalSpreadUsd)
|
|
13820
13840
|
);
|
|
13821
13841
|
}, [quote]);
|
|
13842
|
+
const receiveTokenUsdAmount = useMemo17(() => {
|
|
13843
|
+
if (!quote) return void 0;
|
|
13844
|
+
return formatCurrencyAndStringify2(
|
|
13845
|
+
Number.parseFloat(quote.finalTotalUsd) - Number.parseFloat(quote.finalPaymentFeeUsd) - Number.parseFloat(quote.finalSpreadUsd)
|
|
13846
|
+
);
|
|
13847
|
+
}, [quote]);
|
|
13822
13848
|
const targetAssetTicker = checkoutConfig?.targetAssetTicker;
|
|
13823
13849
|
const targetTokenAmount = checkoutConfig?.targetAssetAmount ?? 0;
|
|
13824
13850
|
const targetItemName = (targetAssetTicker || checkoutConfig?.checkoutItemTitle) ?? "";
|
|
@@ -13869,6 +13895,7 @@ function PaymentAmountSummary({
|
|
|
13869
13895
|
label: receiveAmountLabel,
|
|
13870
13896
|
paymentTokenAmount: targetTokenAmount,
|
|
13871
13897
|
valueSymbol: targetItemName,
|
|
13898
|
+
paymentUsdAmount: uiCustomizations?.confirmationScreen?.showReceiveAmountUsd ? receiveTokenUsdAmount : void 0,
|
|
13872
13899
|
icon: /* @__PURE__ */ React122.createElement(
|
|
13873
13900
|
FunAssetAvatar,
|
|
13874
13901
|
{
|
|
@@ -13880,7 +13907,7 @@ function PaymentAmountSummary({
|
|
|
13880
13907
|
assetName: "checkout-asset"
|
|
13881
13908
|
}
|
|
13882
13909
|
),
|
|
13883
|
-
isLoading: false
|
|
13910
|
+
isLoading: uiCustomizations?.confirmationScreen?.showReceiveAmountUsd ? isLoading : false
|
|
13884
13911
|
}
|
|
13885
13912
|
));
|
|
13886
13913
|
}
|
|
@@ -20140,6 +20167,7 @@ function FunSelectBrokerage({
|
|
|
20140
20167
|
}
|
|
20141
20168
|
|
|
20142
20169
|
// src/modals/CheckoutModal/SelectBrokerage.tsx
|
|
20170
|
+
import { createPortal as createPortal10 } from "react-dom";
|
|
20143
20171
|
var SelectBrokerageInfo = {
|
|
20144
20172
|
Component: SelectBrokerage,
|
|
20145
20173
|
onNext(state, payload) {
|
|
@@ -20198,7 +20226,8 @@ function SelectBrokerage({
|
|
|
20198
20226
|
});
|
|
20199
20227
|
}
|
|
20200
20228
|
};
|
|
20201
|
-
|
|
20229
|
+
const bottomSectionRef = useBottomSectionRef();
|
|
20230
|
+
return /* @__PURE__ */ React178.createElement(React178.Fragment, null, /* @__PURE__ */ React178.createElement(Box, { display: "flex", flexDirection: "column", gap: VERTICAL_SECTION_GAP }, /* @__PURE__ */ React178.createElement(
|
|
20202
20231
|
FunInput,
|
|
20203
20232
|
{
|
|
20204
20233
|
placeholder: "Search exchanges",
|
|
@@ -20213,16 +20242,26 @@ function SelectBrokerage({
|
|
|
20213
20242
|
options: filteredOptions,
|
|
20214
20243
|
selectedValue: selectedExchange ?? ""
|
|
20215
20244
|
}
|
|
20216
|
-
)));
|
|
20245
|
+
))), bottomSectionRef && createPortal10(/* @__PURE__ */ React178.createElement(Dialog.BottomBar, null), bottomSectionRef));
|
|
20217
20246
|
}
|
|
20218
20247
|
|
|
20219
20248
|
// src/modals/CheckoutModal/SourceChange/SourceChange.tsx
|
|
20220
20249
|
import { BridgeCustomerStatus as BridgeCustomerStatus6 } from "@funkit/api-base";
|
|
20221
20250
|
import React179, { useEffect as useEffect35, useState as useState45 } from "react";
|
|
20222
|
-
import { createPortal as
|
|
20251
|
+
import { createPortal as createPortal11 } from "react-dom";
|
|
20223
20252
|
|
|
20224
20253
|
// src/hooks/usePaymentSources.ts
|
|
20225
20254
|
import { FlagKey as FlagKey22, isNotNullish as isNotNullish9 } from "@funkit/utils";
|
|
20255
|
+
|
|
20256
|
+
// src/utils/customer.ts
|
|
20257
|
+
function isKatanaEarnFlow({
|
|
20258
|
+
apiKey,
|
|
20259
|
+
checkoutConfig
|
|
20260
|
+
}) {
|
|
20261
|
+
return isKatanaCustomer(apiKey) && !!checkoutConfig && isCheckoutPostActionRequired(checkoutConfig);
|
|
20262
|
+
}
|
|
20263
|
+
|
|
20264
|
+
// src/hooks/usePaymentSources.ts
|
|
20226
20265
|
function useRemainingMeshExchangeConnections(selected) {
|
|
20227
20266
|
const { getActiveConnection } = useFunkitMesh();
|
|
20228
20267
|
const supportedExchanges = useSupportedExchanges();
|
|
@@ -20247,17 +20286,39 @@ function useRemainingMeshExchangeConnections(selected) {
|
|
|
20247
20286
|
)
|
|
20248
20287
|
};
|
|
20249
20288
|
}
|
|
20250
|
-
|
|
20289
|
+
function usePaymentMethodEnablement({
|
|
20290
|
+
checkoutConfig
|
|
20291
|
+
}) {
|
|
20292
|
+
const { apiKey, uiCustomizations } = useFunkitConfig();
|
|
20293
|
+
const isTokenTransferFlagEnabled = useFlag(FlagKey22.EnableTokenTransfer);
|
|
20294
|
+
const isFiatFlagEnabled = useFiatEnabled();
|
|
20295
|
+
const isCardFlagEnabled = useFlag(FlagKey22.EnableCard);
|
|
20296
|
+
const isBrokerageFlagEnabled = useFlag(FlagKey22.EnableBrokerage);
|
|
20297
|
+
const isKatanaEarnFlowAction = isKatanaEarnFlow({ apiKey, checkoutConfig });
|
|
20298
|
+
const isFiatEnabled = isFiatFlagEnabled && !isKatanaEarnFlowAction;
|
|
20299
|
+
const isTokenTransferEnabled = isTokenTransferFlagEnabled && !isKatanaEarnFlowAction;
|
|
20300
|
+
const isBrokerageEnabled = isBrokerageFlagEnabled && !isKatanaEarnFlowAction;
|
|
20301
|
+
const isCardEnabled = isCardFlagEnabled && !isKatanaEarnFlowAction && (uiCustomizations?.paymentMethods?.isCardEnabled ?? true);
|
|
20302
|
+
return {
|
|
20303
|
+
isFiatEnabled,
|
|
20304
|
+
isTokenTransferEnabled,
|
|
20305
|
+
isBrokerageEnabled,
|
|
20306
|
+
isCardEnabled
|
|
20307
|
+
};
|
|
20308
|
+
}
|
|
20309
|
+
var usePaymentSources = (paymentMethodInfo, targetChainId, checkoutConfig) => {
|
|
20251
20310
|
const { activeConnections } = useRemainingMeshExchangeConnections(paymentMethodInfo);
|
|
20252
20311
|
const { isUserLoggedIn, walletAddress } = useGeneralWallet();
|
|
20253
20312
|
const { data: allFiatAccounts } = useVirtualFiatAccounts();
|
|
20254
20313
|
const matchingFiatAccount = useMatchingVirtualFiatAccount(allFiatAccounts);
|
|
20255
20314
|
const { hasUsableBalance } = useWalletAssetHoldings(targetChainId);
|
|
20256
|
-
const { apiKey
|
|
20257
|
-
const
|
|
20258
|
-
|
|
20259
|
-
|
|
20260
|
-
|
|
20315
|
+
const { apiKey } = useFunkitConfig();
|
|
20316
|
+
const {
|
|
20317
|
+
isBrokerageEnabled,
|
|
20318
|
+
isFiatEnabled,
|
|
20319
|
+
isTokenTransferEnabled,
|
|
20320
|
+
isCardEnabled
|
|
20321
|
+
} = usePaymentMethodEnablement({ checkoutConfig });
|
|
20261
20322
|
const accountPaymentMethodInfo = createPaymentMethodInfo({
|
|
20262
20323
|
paymentMethod: "balance" /* ACCOUNT_BALANCE */,
|
|
20263
20324
|
walletAddress
|
|
@@ -20274,7 +20335,6 @@ var usePaymentSources = (paymentMethodInfo, targetChainId) => {
|
|
|
20274
20335
|
...isBrokerageEnabled ? activeConnections : [],
|
|
20275
20336
|
virtualBankPaymentMethodInfo
|
|
20276
20337
|
].filter(isNotNullish9);
|
|
20277
|
-
const isCardEnabled = isCardFlagEnabled && (uiCustomizations?.paymentMethods?.isCardEnabled ?? true);
|
|
20278
20338
|
const ignoreFallback = isUserLoggedIn && !hasUsableBalance;
|
|
20279
20339
|
const fallback2 = connected.length === 0 && !ignoreFallback ? isTokenTransferEnabled ? ["token_transfer" /* TOKEN_TRANSFER */] : isCardEnabled ? ["card" /* CARD */] : isDydxCustomer(apiKey) ? [] : ["balance" /* ACCOUNT_BALANCE */] : [];
|
|
20280
20340
|
const isTokenInNewSources = !fallback2.includes("token_transfer" /* TOKEN_TRANSFER */) && isTokenTransferEnabled;
|
|
@@ -20618,7 +20678,8 @@ function SourceChange({
|
|
|
20618
20678
|
};
|
|
20619
20679
|
const { preferred, moreSources } = usePaymentSources(
|
|
20620
20680
|
paymentMethodInfo,
|
|
20621
|
-
targetChainId
|
|
20681
|
+
targetChainId,
|
|
20682
|
+
checkoutItem?.initSettings.config
|
|
20622
20683
|
);
|
|
20623
20684
|
function renderSource(source) {
|
|
20624
20685
|
if (typeof source === "object") {
|
|
@@ -20654,11 +20715,11 @@ function SourceChange({
|
|
|
20654
20715
|
marginBottom: "8",
|
|
20655
20716
|
borderColor: "selectedOptionBorder"
|
|
20656
20717
|
}
|
|
20657
|
-
), moreSources.map(renderSource)), bottomSectionRef &&
|
|
20718
|
+
), moreSources.map(renderSource)), bottomSectionRef && createPortal11(
|
|
20658
20719
|
/* @__PURE__ */ React179.createElement(
|
|
20659
20720
|
Dialog.BottomBar,
|
|
20660
20721
|
{
|
|
20661
|
-
actionButtonProps: {
|
|
20722
|
+
actionButtonProps: hasAutoContinue ? void 0 : {
|
|
20662
20723
|
title: "Continue",
|
|
20663
20724
|
onClick: () => {
|
|
20664
20725
|
if (connectedSource === null && !!newSource) {
|
|
@@ -20679,6 +20740,7 @@ function SourceChange({
|
|
|
20679
20740
|
import { FlagKey as FlagKey25 } from "@funkit/utils";
|
|
20680
20741
|
import { motion as motion8, useAnimationControls as useAnimationControls3 } from "motion/react";
|
|
20681
20742
|
import React193, { useEffect as useEffect36, useRef as useRef15, useState as useState48 } from "react";
|
|
20743
|
+
import { createPortal as createPortal12 } from "react-dom";
|
|
20682
20744
|
import { polygon as polygon6 } from "viem/chains";
|
|
20683
20745
|
|
|
20684
20746
|
// src/components/CopyAddress/CopyInputDisplayedAddress.tsx
|
|
@@ -21555,9 +21617,13 @@ function TransferToken({
|
|
|
21555
21617
|
}
|
|
21556
21618
|
};
|
|
21557
21619
|
const isLoadingDepositAddress = depositAddress === void 0;
|
|
21620
|
+
const defaultCandidate = checkoutConfig?.dynamicTargetAssetCandidates?.find(
|
|
21621
|
+
(candidate) => candidate.isDefault
|
|
21622
|
+
);
|
|
21623
|
+
const bottomSectionRef = useBottomSectionRef();
|
|
21558
21624
|
return (
|
|
21559
21625
|
// This ID is used in the DialogContent css to set the height of the modal
|
|
21560
|
-
/* @__PURE__ */ React193.createElement(Box, { id: "token-transfer-page" }, /* @__PURE__ */ React193.createElement(
|
|
21626
|
+
/* @__PURE__ */ React193.createElement(React193.Fragment, null, /* @__PURE__ */ React193.createElement(Box, { id: "token-transfer-page" }, /* @__PURE__ */ React193.createElement(
|
|
21561
21627
|
Box,
|
|
21562
21628
|
{
|
|
21563
21629
|
display: "flex",
|
|
@@ -21576,6 +21642,32 @@ function TransferToken({
|
|
|
21576
21642
|
onClick: () => onNext({})
|
|
21577
21643
|
}
|
|
21578
21644
|
)),
|
|
21645
|
+
defaultCandidate && /* @__PURE__ */ React193.createElement(
|
|
21646
|
+
Box,
|
|
21647
|
+
{
|
|
21648
|
+
display: "flex",
|
|
21649
|
+
alignItems: "center",
|
|
21650
|
+
justifyContent: "space-between",
|
|
21651
|
+
width: "full",
|
|
21652
|
+
borderColor: "mediumStroke",
|
|
21653
|
+
borderWidth: "1",
|
|
21654
|
+
borderRadius: BORDER_RADIUS,
|
|
21655
|
+
borderStyle: "solid",
|
|
21656
|
+
paddingY: "8",
|
|
21657
|
+
paddingX: HORIZONTAL_OUTER_PADDING_X
|
|
21658
|
+
},
|
|
21659
|
+
/* @__PURE__ */ React193.createElement(Text, { size: "12", color: "secondaryText" }, "Receive token"),
|
|
21660
|
+
/* @__PURE__ */ React193.createElement(Box, { display: "flex", alignItems: "center", gap: "8" }, /* @__PURE__ */ React193.createElement(
|
|
21661
|
+
FunAssetAvatar,
|
|
21662
|
+
{
|
|
21663
|
+
assetIconSize: "16",
|
|
21664
|
+
assetName: "receive-token-asset",
|
|
21665
|
+
assetSrc: getTokenIconUrl(defaultCandidate.tokenSymbol),
|
|
21666
|
+
chainId: defaultCandidate.tokenChainId,
|
|
21667
|
+
largeChainIcon: true
|
|
21668
|
+
}
|
|
21669
|
+
), /* @__PURE__ */ React193.createElement(Text, { size: "12", weight: "medium" }, defaultCandidate.tokenSymbol))
|
|
21670
|
+
),
|
|
21579
21671
|
/* @__PURE__ */ React193.createElement(Box, { width: "full", display: "flex", gap: "12" }, /* @__PURE__ */ React193.createElement(Box, { width: "full", display: "flex", flexDirection: "column", gap: "4" }, /* @__PURE__ */ React193.createElement(Text, { size: "12", weight: "medium" }, "Supported token"), /* @__PURE__ */ React193.createElement(
|
|
21580
21672
|
TokenDropdown,
|
|
21581
21673
|
{
|
|
@@ -21716,7 +21808,7 @@ function TransferToken({
|
|
|
21716
21808
|
maxSlippage
|
|
21717
21809
|
}
|
|
21718
21810
|
))
|
|
21719
|
-
))
|
|
21811
|
+
)), bottomSectionRef && createPortal12(/* @__PURE__ */ React193.createElement(Dialog.BottomBar, null), bottomSectionRef))
|
|
21720
21812
|
);
|
|
21721
21813
|
}
|
|
21722
21814
|
|
|
@@ -23698,7 +23790,7 @@ function FunCheckoutHistoryDetail({
|
|
|
23698
23790
|
refundState: checkoutHistoryInfo.refundState,
|
|
23699
23791
|
onHelp
|
|
23700
23792
|
}
|
|
23701
|
-
)), bottomSectionRef &&
|
|
23793
|
+
)), bottomSectionRef && createPortal13(
|
|
23702
23794
|
/* @__PURE__ */ React214.createElement(
|
|
23703
23795
|
Dialog.BottomBar,
|
|
23704
23796
|
{
|
|
@@ -23739,7 +23831,7 @@ var CheckoutAlert = ({ state, refundState, onHelp }) => {
|
|
|
23739
23831
|
// src/components/FunCheckoutHistory/FunCheckoutHistoryHelp.tsx
|
|
23740
23832
|
import { sendSupportMessage } from "@funkit/api-base";
|
|
23741
23833
|
import React217, { useEffect as useEffect42, useMemo as useMemo37, useRef as useRef19, useState as useState58 } from "react";
|
|
23742
|
-
import { createPortal as
|
|
23834
|
+
import { createPortal as createPortal14 } from "react-dom";
|
|
23743
23835
|
|
|
23744
23836
|
// src/components/FunInput/FunTextAreaInput.tsx
|
|
23745
23837
|
import React215 from "react";
|
|
@@ -24043,7 +24135,7 @@ function FunCheckoutHistoryHelp({
|
|
|
24043
24135
|
},
|
|
24044
24136
|
openDropdownBackgroundColor: "inputBackground"
|
|
24045
24137
|
}
|
|
24046
|
-
))), bottomSectionRef &&
|
|
24138
|
+
))), bottomSectionRef && createPortal14(
|
|
24047
24139
|
/* @__PURE__ */ React217.createElement(
|
|
24048
24140
|
Dialog.BottomBar,
|
|
24049
24141
|
{
|
|
@@ -24071,17 +24163,18 @@ import { DirectExecutionType as DirectExecutionType4 } from "@funkit/api-base";
|
|
|
24071
24163
|
import {
|
|
24072
24164
|
formatAddress as formatAddress7,
|
|
24073
24165
|
formatCryptoAndStringify as formatCryptoAndStringify5,
|
|
24166
|
+
formatTimestamp as formatTimestamp2,
|
|
24074
24167
|
isTokenEquivalent as isTokenEquivalent8
|
|
24075
24168
|
} from "@funkit/utils";
|
|
24076
24169
|
import React219, { useCallback as useCallback41, useMemo as useMemo39 } from "react";
|
|
24077
|
-
import { createPortal as
|
|
24170
|
+
import { createPortal as createPortal15 } from "react-dom";
|
|
24078
24171
|
|
|
24079
24172
|
// src/components/FunCheckoutHistory/FunDirectExecutionStatus.tsx
|
|
24080
24173
|
import React218, { useMemo as useMemo38 } from "react";
|
|
24081
24174
|
function FunDirectExecutionStatus({
|
|
24082
24175
|
directExecution
|
|
24083
24176
|
}) {
|
|
24084
|
-
const { isCompleted, isDelayed: isDelayed2, isFailed, isRefunded } = useCheckoutDirectExecutionHistory({
|
|
24177
|
+
const { isCompleted, isDelayed: isDelayed2, isFailed, isRefunded } = useCheckoutDirectExecutionHistory({ initDirectExecution: directExecution });
|
|
24085
24178
|
if (directExecution === void 0) {
|
|
24086
24179
|
return /* @__PURE__ */ React218.createElement(Box, { className: GradientLoadingBox }, /* @__PURE__ */ React218.createElement(FunSkeletonCircle, { size: "40" }));
|
|
24087
24180
|
}
|
|
@@ -24122,7 +24215,7 @@ function FunDirectExecutionStatusTagLoaded({
|
|
|
24122
24215
|
directExecution
|
|
24123
24216
|
}) {
|
|
24124
24217
|
const { state, refundState, isDelayed: isDelayed2 } = useCheckoutDirectExecutionHistory({
|
|
24125
|
-
|
|
24218
|
+
initDirectExecution: directExecution
|
|
24126
24219
|
});
|
|
24127
24220
|
return /* @__PURE__ */ React219.createElement(StatusTag, { state, refundState, isDelayed: isDelayed2 });
|
|
24128
24221
|
}
|
|
@@ -24220,7 +24313,7 @@ function FunDirectExecutionHistoryDetail({
|
|
|
24220
24313
|
{
|
|
24221
24314
|
onHelp: () => window.open(CONTACT_US_LINK, "_blank", "noopener")
|
|
24222
24315
|
}
|
|
24223
|
-
)), bottomSectionRef &&
|
|
24316
|
+
)), bottomSectionRef && createPortal15(
|
|
24224
24317
|
/* @__PURE__ */ React219.createElement(
|
|
24225
24318
|
Dialog.BottomBar,
|
|
24226
24319
|
{
|
|
@@ -24231,6 +24324,27 @@ function FunDirectExecutionHistoryDetail({
|
|
|
24231
24324
|
bottomSectionRef
|
|
24232
24325
|
));
|
|
24233
24326
|
}
|
|
24327
|
+
var getTimestamp2 = (timestamp) => formatTimestamp2(new Date(timestamp), {
|
|
24328
|
+
hours: "24hr",
|
|
24329
|
+
year: "none",
|
|
24330
|
+
month: "short"
|
|
24331
|
+
});
|
|
24332
|
+
function DirectExecutionOrderDetailSection({
|
|
24333
|
+
directExecution,
|
|
24334
|
+
showRelayLink
|
|
24335
|
+
}) {
|
|
24336
|
+
const { isProcessing, isFailed, isRefunded } = useCheckoutDirectExecutionHistory({ initDirectExecution: directExecution });
|
|
24337
|
+
const { txHash, createdTimeMs, fromChainId } = directExecution;
|
|
24338
|
+
const updateTime = getDirectExecutionUpdatedTimeMs({ directExecution });
|
|
24339
|
+
return /* @__PURE__ */ React219.createElement(Box, { display: "flex", flexDirection: "column", gap: "12" }, /* @__PURE__ */ React219.createElement(FunTxSummaryLineItem, null, /* @__PURE__ */ React219.createElement(Text, { color: "tertiaryText", size: "12" }, "Deposit tx"), /* @__PURE__ */ React219.createElement(Box, { display: "flex", alignItems: "center", gap: "4" }, /* @__PURE__ */ React219.createElement(Text, { color: "tertiaryText", size: "12" }, formatAddress7(txHash)), /* @__PURE__ */ React219.createElement(
|
|
24340
|
+
TransactionRedirectButton,
|
|
24341
|
+
{
|
|
24342
|
+
chainId: fromChainId,
|
|
24343
|
+
txHash,
|
|
24344
|
+
customRedirectUrl: showRelayLink ? `${RELAY_TRANSACTION_PAGE_URL}${txHash}` : void 0
|
|
24345
|
+
}
|
|
24346
|
+
))), /* @__PURE__ */ React219.createElement(FunTxSummaryLineItem, null, /* @__PURE__ */ React219.createElement(Text, { color: "tertiaryText", size: "12" }, "Order submitted"), /* @__PURE__ */ React219.createElement(Text, { color: "tertiaryText", size: "12" }, getTimestamp2(createdTimeMs))), !isProcessing && updateTime && /* @__PURE__ */ React219.createElement(FunTxSummaryLineItem, null, /* @__PURE__ */ React219.createElement(Text, { color: "tertiaryText", size: "12" }, `Order ${isFailed ? "failed" : isRefunded ? "refunded" : "filled"}`), /* @__PURE__ */ React219.createElement(Text, { color: "tertiaryText", size: "12" }, getTimestamp2(updateTime))));
|
|
24347
|
+
}
|
|
24234
24348
|
|
|
24235
24349
|
// src/components/FunCheckoutHistory/FunCheckoutHistoryContent.tsx
|
|
24236
24350
|
function FunCheckoutHistoryContent({
|
|
@@ -24403,7 +24517,7 @@ var animateVirtuosoInClass = "_26hmws5";
|
|
|
24403
24517
|
var tabLabelStyles = "_26hmws6";
|
|
24404
24518
|
|
|
24405
24519
|
// src/modals/ProfileDetails/FunProfileViews/Home/HomeCheckoutDisplayRow.tsx
|
|
24406
|
-
import { formatTimestamp as
|
|
24520
|
+
import { formatTimestamp as formatTimestamp3 } from "@funkit/utils";
|
|
24407
24521
|
import {
|
|
24408
24522
|
formatCurrencyAndStringify as formatCurrencyAndStringify8,
|
|
24409
24523
|
isMobile as isMobile9,
|
|
@@ -24565,7 +24679,7 @@ var HomeCheckoutDisplayRow = ({
|
|
|
24565
24679
|
/* @__PURE__ */ React225.createElement(Text, { size: TEXT_SIZE_MEDIUM2, weight: "medium", color: "primaryText" }, `${formatCurrencyAndStringify8(
|
|
24566
24680
|
checkoutClientMetadata?.finalDollarValue || 0
|
|
24567
24681
|
)} USD`)
|
|
24568
|
-
), /* @__PURE__ */ React225.createElement(Box, { display: "flex", justifyContent: "space-between", gap: "16" }, /* @__PURE__ */ React225.createElement(Text, { size: TEXT_SIZE_SMALL2, color: "secondaryText" },
|
|
24682
|
+
), /* @__PURE__ */ React225.createElement(Box, { display: "flex", justifyContent: "space-between", gap: "16" }, /* @__PURE__ */ React225.createElement(Text, { size: TEXT_SIZE_SMALL2, color: "secondaryText" }, formatTimestamp3(new Date(checkoutHistoryItem.createdTimeMs), {
|
|
24569
24683
|
year: "none",
|
|
24570
24684
|
seconds: "none",
|
|
24571
24685
|
month: "short"
|
|
@@ -25541,7 +25655,7 @@ function ChainModal({ onClose, open }) {
|
|
|
25541
25655
|
import { FUNKIT_CONNECT_SUPPORTED_CHECKOUT_CHAINS_INFO_LIST as FUNKIT_CONNECT_SUPPORTED_CHECKOUT_CHAINS_INFO_LIST3 } from "@funkit/chains";
|
|
25542
25656
|
import { LogLevel, initializeRelayClient } from "@funkit/fun-relay";
|
|
25543
25657
|
import { FlagKey as FlagKey28 } from "@funkit/utils";
|
|
25544
|
-
import
|
|
25658
|
+
import React246 from "react";
|
|
25545
25659
|
|
|
25546
25660
|
// src/components/DydxSwitchModalTab/DydxSwitchModalTab.tsx
|
|
25547
25661
|
import React238, { useCallback as useCallback44 } from "react";
|
|
@@ -25689,7 +25803,7 @@ var FunCheckoutBlocked = ({ reason }) => {
|
|
|
25689
25803
|
|
|
25690
25804
|
// src/modals/CheckoutModal/TransferToken/CheckoutNotifications.tsx
|
|
25691
25805
|
import clsx22 from "clsx";
|
|
25692
|
-
import
|
|
25806
|
+
import React245, { useEffect as useEffect45, useMemo as useMemo41, useState as useState64 } from "react";
|
|
25693
25807
|
|
|
25694
25808
|
// src/components/FunNotificationBanner/FunNotificationShowMoreButton.tsx
|
|
25695
25809
|
import React240 from "react";
|
|
@@ -25741,7 +25855,7 @@ import { FlagKey as FlagKey27 } from "@funkit/utils";
|
|
|
25741
25855
|
import { useQuery as useQuery11 } from "@tanstack/react-query";
|
|
25742
25856
|
var hasCorrectPaymentMethod = (checkout, paymentMethod) => !paymentMethod || checkout.clientMetadata.selectedPaymentMethodInfo?.paymentMethod === paymentMethod;
|
|
25743
25857
|
var isRecent = (checkout, timestampCutoff) => checkout.createdTimeMs > timestampCutoff;
|
|
25744
|
-
var
|
|
25858
|
+
var DEFAULT_NOTIF_CUTOFF = 7 * 24 * 60 * 60 * 1e3;
|
|
25745
25859
|
function useCheckoutRefreshInterval() {
|
|
25746
25860
|
const str = useFlag(FlagKey27.CheckoutNotificationsRefreshInterval);
|
|
25747
25861
|
return safeJSONParse(str) || { listRefresh: 50 * 1e3, itemRefresh: 5 * 1e3 };
|
|
@@ -25760,7 +25874,7 @@ var useRecentCheckouts = ({
|
|
|
25760
25874
|
userId: userInfo.id,
|
|
25761
25875
|
apiKey
|
|
25762
25876
|
});
|
|
25763
|
-
const defaultTimestampCutoff = Date.now() -
|
|
25877
|
+
const defaultTimestampCutoff = Date.now() - DEFAULT_NOTIF_CUTOFF;
|
|
25764
25878
|
return checkouts.filter(
|
|
25765
25879
|
(checkout) => isCheckoutValid(checkout) && isRecent(checkout, defaultTimestampCutoff) && hasCorrectPaymentMethod(checkout, paymentMethod)
|
|
25766
25880
|
).sort((a, b) => b.createdTimeMs - a.createdTimeMs);
|
|
@@ -25771,6 +25885,34 @@ var useRecentCheckouts = ({
|
|
|
25771
25885
|
return query;
|
|
25772
25886
|
};
|
|
25773
25887
|
|
|
25888
|
+
// src/hooks/queries/useRecentDirectExecutions.ts
|
|
25889
|
+
import {
|
|
25890
|
+
getDirectExecutionsByUserId as getDirectExecutionsByUserId2
|
|
25891
|
+
} from "@funkit/api-base";
|
|
25892
|
+
import { useQuery as useQuery12 } from "@tanstack/react-query";
|
|
25893
|
+
var isRecent2 = (de, timestampCutoff) => de.createdTimeMs > timestampCutoff;
|
|
25894
|
+
var useRecentDirectExecutions = ({
|
|
25895
|
+
isVisible
|
|
25896
|
+
}) => {
|
|
25897
|
+
const { isUserLoggedIn, userInfo } = useGeneralWallet();
|
|
25898
|
+
const { apiKey } = useFunkitConfig();
|
|
25899
|
+
const { listRefresh } = useCheckoutRefreshInterval();
|
|
25900
|
+
const query = useQuery12({
|
|
25901
|
+
queryKey: ["directExecutions", userInfo.id],
|
|
25902
|
+
queryFn: async () => {
|
|
25903
|
+
const directExecutions = await getDirectExecutionsByUserId2({
|
|
25904
|
+
userId: userInfo.id,
|
|
25905
|
+
apiKey
|
|
25906
|
+
});
|
|
25907
|
+
const defaultTimestampCutoff = Date.now() - DEFAULT_NOTIF_CUTOFF;
|
|
25908
|
+
return directExecutions.filter((de) => isRecent2(de, defaultTimestampCutoff)).sort((a, b) => b.createdTimeMs - a.createdTimeMs);
|
|
25909
|
+
},
|
|
25910
|
+
refetchInterval: listRefresh,
|
|
25911
|
+
enabled: !!userInfo.id && isUserLoggedIn && isVisible
|
|
25912
|
+
});
|
|
25913
|
+
return query;
|
|
25914
|
+
};
|
|
25915
|
+
|
|
25774
25916
|
// src/modals/CheckoutModal/TransferToken/CheckoutNotification.tsx
|
|
25775
25917
|
import React243 from "react";
|
|
25776
25918
|
|
|
@@ -26467,11 +26609,11 @@ var FunNotificationBanner = ({
|
|
|
26467
26609
|
import {
|
|
26468
26610
|
getCheckoutByDepositAddress as getCheckoutByDepositAddress2
|
|
26469
26611
|
} from "@funkit/api-base";
|
|
26470
|
-
import { useQuery as
|
|
26612
|
+
import { useQuery as useQuery13 } from "@tanstack/react-query";
|
|
26471
26613
|
var useCheckout = (depositAddress, initial) => {
|
|
26472
26614
|
const { apiKey } = useFunkitConfig();
|
|
26473
26615
|
const { itemRefresh } = useCheckoutRefreshInterval();
|
|
26474
|
-
const query =
|
|
26616
|
+
const query = useQuery13({
|
|
26475
26617
|
queryKey: ["checkouts", "checkout", depositAddress],
|
|
26476
26618
|
queryFn: () => (
|
|
26477
26619
|
// biome-ignore lint/style/noNonNullAssertion: already checked for null
|
|
@@ -26490,7 +26632,7 @@ var CheckoutNotification = ({
|
|
|
26490
26632
|
onClose,
|
|
26491
26633
|
onHelp
|
|
26492
26634
|
}) => {
|
|
26493
|
-
const { initSettings
|
|
26635
|
+
const { initSettings } = defaultCheckout.clientMetadata;
|
|
26494
26636
|
const depositAddress = defaultCheckout.depositAddr;
|
|
26495
26637
|
const { data: checkout } = useCheckout(depositAddress, defaultCheckout);
|
|
26496
26638
|
if (!checkout) return null;
|
|
@@ -26505,7 +26647,7 @@ var CheckoutNotification = ({
|
|
|
26505
26647
|
disclaimer: parseDisclaimer(checkout, () => onHelp(depositAddress)),
|
|
26506
26648
|
iconUrl: initSettings.config.iconSrc ?? ASSET_LOGO_SRCS[normalizedTicker],
|
|
26507
26649
|
status: notificationStatus,
|
|
26508
|
-
onClosed: () => onClose(
|
|
26650
|
+
onClosed: () => onClose(depositAddress)
|
|
26509
26651
|
},
|
|
26510
26652
|
/* @__PURE__ */ React243.createElement(
|
|
26511
26653
|
Box,
|
|
@@ -26574,6 +26716,112 @@ var parseDisclaimer = (checkout, onHelp) => {
|
|
|
26574
26716
|
}
|
|
26575
26717
|
};
|
|
26576
26718
|
|
|
26719
|
+
// src/modals/CheckoutModal/TransferToken/DirectExecutionNotification.tsx
|
|
26720
|
+
import React244 from "react";
|
|
26721
|
+
var mapDirectExecutionStateToNotificationStatus = (isDelayed2, isRefunded, isCompleted, isFailed) => {
|
|
26722
|
+
if (isDelayed2) return "delayed";
|
|
26723
|
+
if (isCompleted) return "completed";
|
|
26724
|
+
if (isRefunded) return "expired";
|
|
26725
|
+
if (isFailed) return "failed";
|
|
26726
|
+
return "completed";
|
|
26727
|
+
};
|
|
26728
|
+
var DirectExecutionNotification = ({
|
|
26729
|
+
directExecution,
|
|
26730
|
+
onClose,
|
|
26731
|
+
onHelp
|
|
26732
|
+
}) => {
|
|
26733
|
+
const { initSettings } = directExecution.clientMetadata;
|
|
26734
|
+
const { isDelayed: isDelayed2, isRefunded, isCompleted, isFailed } = useCheckoutDirectExecutionHistory({
|
|
26735
|
+
initDirectExecution: directExecution
|
|
26736
|
+
});
|
|
26737
|
+
const notificationStatus = mapDirectExecutionStateToNotificationStatus(
|
|
26738
|
+
isDelayed2,
|
|
26739
|
+
isRefunded,
|
|
26740
|
+
isCompleted,
|
|
26741
|
+
isFailed
|
|
26742
|
+
);
|
|
26743
|
+
const normalizedTicker = initSettings.config.targetAssetTicker?.toUpperCase();
|
|
26744
|
+
return /* @__PURE__ */ React244.createElement(
|
|
26745
|
+
FunNotificationBanner,
|
|
26746
|
+
{
|
|
26747
|
+
description: parseDescription2(
|
|
26748
|
+
isDelayed2,
|
|
26749
|
+
isRefunded,
|
|
26750
|
+
isCompleted,
|
|
26751
|
+
isFailed
|
|
26752
|
+
),
|
|
26753
|
+
title: parseTitle(isDelayed2, isRefunded, isCompleted, isFailed),
|
|
26754
|
+
disclaimer: parseDisclaimer2(
|
|
26755
|
+
isRefunded,
|
|
26756
|
+
isDelayed2,
|
|
26757
|
+
isFailed,
|
|
26758
|
+
() => onHelp(directExecution.txHash)
|
|
26759
|
+
),
|
|
26760
|
+
iconUrl: ASSET_LOGO_SRCS[normalizedTicker],
|
|
26761
|
+
status: notificationStatus,
|
|
26762
|
+
onClosed: () => onClose(directExecution.txHash)
|
|
26763
|
+
},
|
|
26764
|
+
/* @__PURE__ */ React244.createElement(
|
|
26765
|
+
Box,
|
|
26766
|
+
{
|
|
26767
|
+
paddingY: "8",
|
|
26768
|
+
paddingX: "10",
|
|
26769
|
+
background: "modalBackground",
|
|
26770
|
+
borderRadius: "8",
|
|
26771
|
+
borderColor: "mediumStroke",
|
|
26772
|
+
borderWidth: "1",
|
|
26773
|
+
borderStyle: "solid"
|
|
26774
|
+
},
|
|
26775
|
+
/* @__PURE__ */ React244.createElement(
|
|
26776
|
+
DirectExecutionOrderDetailSection,
|
|
26777
|
+
{
|
|
26778
|
+
directExecution,
|
|
26779
|
+
showRelayLink: true
|
|
26780
|
+
}
|
|
26781
|
+
)
|
|
26782
|
+
)
|
|
26783
|
+
);
|
|
26784
|
+
};
|
|
26785
|
+
var parseTitle = (isDelayed2, isRefunded, isCompleted, isFailed) => {
|
|
26786
|
+
if (isDelayed2) return "Deposit received and pending...";
|
|
26787
|
+
if (isCompleted) return "Deposit completed";
|
|
26788
|
+
if (isFailed || isRefunded) return "Didn't complete";
|
|
26789
|
+
return "Deposit received and processing...";
|
|
26790
|
+
};
|
|
26791
|
+
var parseDescription2 = (isDelayed2, isRefunded, isCompleted, isFailed) => {
|
|
26792
|
+
if (isDelayed2) {
|
|
26793
|
+
return "Your deposit will be credited to your account shortly.";
|
|
26794
|
+
}
|
|
26795
|
+
if (isCompleted) {
|
|
26796
|
+
return "Your deposit has been credited to your account.";
|
|
26797
|
+
}
|
|
26798
|
+
if (isRefunded) {
|
|
26799
|
+
return "Your deposit has been refunded or reprocessed. Feel free to reach out for an update.";
|
|
26800
|
+
}
|
|
26801
|
+
if (isFailed) {
|
|
26802
|
+
return "An issue occurred with your deposit. Please try again.";
|
|
26803
|
+
}
|
|
26804
|
+
return "";
|
|
26805
|
+
};
|
|
26806
|
+
var parseDisclaimer2 = (isRefunded, isDelayed2, isFailed, onHelp) => {
|
|
26807
|
+
const contactLink = /* @__PURE__ */ React244.createElement(
|
|
26808
|
+
FunLinkButton,
|
|
26809
|
+
{
|
|
26810
|
+
text: "Contact us",
|
|
26811
|
+
onClick: onHelp,
|
|
26812
|
+
inline: true,
|
|
26813
|
+
size: "12",
|
|
26814
|
+
weight: "regular"
|
|
26815
|
+
}
|
|
26816
|
+
);
|
|
26817
|
+
if (isFailed || isRefunded) {
|
|
26818
|
+
return /* @__PURE__ */ React244.createElement(React244.Fragment, null, "Your deposit didn't complete. ", contactLink, " for more info.");
|
|
26819
|
+
}
|
|
26820
|
+
if (isDelayed2) {
|
|
26821
|
+
return /* @__PURE__ */ React244.createElement(React244.Fragment, null, "Your deposit is delayed but funds are safe. ", contactLink, " for more info.");
|
|
26822
|
+
}
|
|
26823
|
+
};
|
|
26824
|
+
|
|
26577
26825
|
// src/modals/CheckoutModal/TransferToken/CheckoutNotifications.tsx
|
|
26578
26826
|
var COLLAPSED_COUNT = 2;
|
|
26579
26827
|
var MAX_COUNT = 5;
|
|
@@ -26583,24 +26831,44 @@ var CheckoutNotifications = ({
|
|
|
26583
26831
|
}) => {
|
|
26584
26832
|
const [isExpanded, setIsExpanded] = useState64(false);
|
|
26585
26833
|
const [initialCheckouts, setInitialCheckouts] = useState64();
|
|
26834
|
+
const [initialDirectExecutions, setInitialDirectExecutions] = useState64();
|
|
26586
26835
|
const [closedNotifications, setClosedNotifications] = useState64([]);
|
|
26587
26836
|
const { data: checkouts } = useRecentCheckouts({ isVisible });
|
|
26837
|
+
const { data: directExecutions } = useRecentDirectExecutions({
|
|
26838
|
+
isVisible
|
|
26839
|
+
});
|
|
26588
26840
|
useEffect45(() => {
|
|
26589
26841
|
if (initialCheckouts || !checkouts) return;
|
|
26590
26842
|
setInitialCheckouts(checkouts);
|
|
26591
26843
|
}, [initialCheckouts, checkouts]);
|
|
26844
|
+
useEffect45(() => {
|
|
26845
|
+
if (initialDirectExecutions || !directExecutions) return;
|
|
26846
|
+
setInitialDirectExecutions(directExecutions);
|
|
26847
|
+
}, [initialDirectExecutions, directExecutions]);
|
|
26848
|
+
const displayedDirectExecutions = useMemo41(() => {
|
|
26849
|
+
if (!directExecutions) return [];
|
|
26850
|
+
return getUpdatedDirectExecutions(directExecutions, initialDirectExecutions).filter(({ txHash }) => !closedNotifications.includes(txHash)).slice(0, MAX_COUNT);
|
|
26851
|
+
}, [initialDirectExecutions, directExecutions, closedNotifications]);
|
|
26592
26852
|
const displayedCheckouts = useMemo41(() => {
|
|
26593
26853
|
if (!checkouts) return [];
|
|
26594
|
-
return getUpdatedCheckouts(checkouts, initialCheckouts).filter(
|
|
26595
|
-
({ clientMetadata }) => !closedNotifications.includes(
|
|
26596
|
-
clientMetadata.id
|
|
26597
|
-
)
|
|
26598
|
-
).slice(0, MAX_COUNT);
|
|
26854
|
+
return getUpdatedCheckouts(checkouts, initialCheckouts).filter(({ depositAddr }) => !closedNotifications.includes(depositAddr)).slice(0, MAX_COUNT);
|
|
26599
26855
|
}, [initialCheckouts, checkouts, closedNotifications]);
|
|
26600
|
-
const
|
|
26856
|
+
const combinedNotifications = useMemo41(() => {
|
|
26857
|
+
return [
|
|
26858
|
+
...displayedDirectExecutions.map(
|
|
26859
|
+
(item) => ({ ...item, isDirectExecution: true })
|
|
26860
|
+
),
|
|
26861
|
+
...displayedCheckouts.map(
|
|
26862
|
+
(item) => ({ ...item, isDirectExecution: false })
|
|
26863
|
+
)
|
|
26864
|
+
].sort((a, b) => b.createdTimeMs - a.createdTimeMs);
|
|
26865
|
+
}, [displayedDirectExecutions, displayedCheckouts]);
|
|
26866
|
+
const displayedNotifications = useMemo41(() => {
|
|
26867
|
+
return isExpanded ? combinedNotifications : combinedNotifications.slice(0, COLLAPSED_COUNT);
|
|
26868
|
+
}, [isExpanded, combinedNotifications]);
|
|
26601
26869
|
const handleNotificationClose = (id) => setClosedNotifications((prev) => [...prev, id]);
|
|
26602
26870
|
if (!isVisible) return null;
|
|
26603
|
-
return /* @__PURE__ */
|
|
26871
|
+
return /* @__PURE__ */ React245.createElement(
|
|
26604
26872
|
Box,
|
|
26605
26873
|
{
|
|
26606
26874
|
position: "absolute",
|
|
@@ -26608,19 +26876,32 @@ var CheckoutNotifications = ({
|
|
|
26608
26876
|
maxHeight: "full",
|
|
26609
26877
|
style: { bottom: 0, left: 0, right: 0, zIndex: OVERLAY_Z_INDEX }
|
|
26610
26878
|
},
|
|
26611
|
-
/* @__PURE__ */
|
|
26612
|
-
|
|
26613
|
-
|
|
26614
|
-
|
|
26615
|
-
|
|
26616
|
-
|
|
26617
|
-
|
|
26879
|
+
/* @__PURE__ */ React245.createElement(Box, { display: "flex", flexDirection: "column", gap: "8", padding: "8" }, displayedNotifications.map((item) => {
|
|
26880
|
+
if (item.isDirectExecution) {
|
|
26881
|
+
return /* @__PURE__ */ React245.createElement(
|
|
26882
|
+
DirectExecutionNotification,
|
|
26883
|
+
{
|
|
26884
|
+
key: item.txHash,
|
|
26885
|
+
directExecution: item,
|
|
26886
|
+
onClose: handleNotificationClose,
|
|
26887
|
+
onHelp
|
|
26888
|
+
}
|
|
26889
|
+
);
|
|
26618
26890
|
}
|
|
26619
|
-
|
|
26891
|
+
return /* @__PURE__ */ React245.createElement(
|
|
26892
|
+
CheckoutNotification,
|
|
26893
|
+
{
|
|
26894
|
+
key: item.depositAddr,
|
|
26895
|
+
checkout: item,
|
|
26896
|
+
onClose: handleNotificationClose,
|
|
26897
|
+
onHelp
|
|
26898
|
+
}
|
|
26899
|
+
);
|
|
26900
|
+
}), combinedNotifications.length > COLLAPSED_COUNT && /* @__PURE__ */ React245.createElement(
|
|
26620
26901
|
FunNotificationShowMoreButton,
|
|
26621
26902
|
{
|
|
26622
26903
|
isExpanded,
|
|
26623
|
-
numberOfNotifications:
|
|
26904
|
+
numberOfNotifications: combinedNotifications.length - COLLAPSED_COUNT,
|
|
26624
26905
|
onClick: () => setIsExpanded((value) => !value)
|
|
26625
26906
|
}
|
|
26626
26907
|
))
|
|
@@ -26629,11 +26910,21 @@ var CheckoutNotifications = ({
|
|
|
26629
26910
|
var getUpdatedCheckouts = (checkouts, initialCheckouts) => {
|
|
26630
26911
|
return checkouts.filter((checkout) => {
|
|
26631
26912
|
const initialCheckout = initialCheckouts?.find(
|
|
26632
|
-
(initialCheckout2) => initialCheckout2.
|
|
26913
|
+
(initialCheckout2) => initialCheckout2.depositAddr === checkout.depositAddr
|
|
26633
26914
|
);
|
|
26634
26915
|
return !initialCheckout || initialCheckout.lastUpdatedTimeMs !== checkout.lastUpdatedTimeMs;
|
|
26635
26916
|
});
|
|
26636
26917
|
};
|
|
26918
|
+
var getUpdatedDirectExecutions = (directExecutions, initialDirectExecutions) => {
|
|
26919
|
+
return directExecutions.filter((directExecution) => {
|
|
26920
|
+
const initialDirectExecution = initialDirectExecutions?.find(
|
|
26921
|
+
(initialDirectExecution2) => initialDirectExecution2.txHash === directExecution.txHash
|
|
26922
|
+
);
|
|
26923
|
+
return !initialDirectExecution || getDirectExecutionUpdatedTimeMs({
|
|
26924
|
+
directExecution: initialDirectExecution
|
|
26925
|
+
}) !== getDirectExecutionUpdatedTimeMs({ directExecution });
|
|
26926
|
+
});
|
|
26927
|
+
};
|
|
26637
26928
|
|
|
26638
26929
|
// src/modals/CheckoutModal/FunCheckoutModal.tsx
|
|
26639
26930
|
initializeRelayClient({
|
|
@@ -26645,7 +26936,7 @@ initializeRelayClient({
|
|
|
26645
26936
|
var CHECKOUT_DIALOG_CONTENT_ID = "checkout-dialog-content";
|
|
26646
26937
|
function FunCheckoutModalStepComponent(props) {
|
|
26647
26938
|
const { Component: Component2 } = CheckoutModalSteps[props.modalState.step];
|
|
26648
|
-
return /* @__PURE__ */
|
|
26939
|
+
return /* @__PURE__ */ React246.createElement(Component2, { ...props });
|
|
26649
26940
|
}
|
|
26650
26941
|
function FunCheckoutModalInner({
|
|
26651
26942
|
checkoutItem,
|
|
@@ -26692,7 +26983,7 @@ function FunCheckoutModalInner({
|
|
|
26692
26983
|
depositAddress: checkoutItem.depositAddress ?? void 0,
|
|
26693
26984
|
isCheckoutDetailView: modalState.step === "checkout_complete" /* CHECKOUT_COMPLETE */,
|
|
26694
26985
|
paddingTop: 0,
|
|
26695
|
-
topbar: /* @__PURE__ */
|
|
26986
|
+
topbar: /* @__PURE__ */ React246.createElement(
|
|
26696
26987
|
Dialog.Title,
|
|
26697
26988
|
{
|
|
26698
26989
|
hasBackButton: hasBack && !isBlocked,
|
|
@@ -26708,7 +26999,7 @@ function FunCheckoutModalInner({
|
|
|
26708
26999
|
withTopDivider: checkoutConfig.modalTitleMeta ? "always" : "scroll",
|
|
26709
27000
|
scrollableContent: CHECKOUT_DIALOG_CONTENT_ID
|
|
26710
27001
|
});
|
|
26711
|
-
return /* @__PURE__ */
|
|
27002
|
+
return /* @__PURE__ */ React246.createElement(
|
|
26712
27003
|
Dialog,
|
|
26713
27004
|
{
|
|
26714
27005
|
open,
|
|
@@ -26716,7 +27007,7 @@ function FunCheckoutModalInner({
|
|
|
26716
27007
|
titleId: "fun-checkout-modal",
|
|
26717
27008
|
isHidden: modalState.isSoftHidden
|
|
26718
27009
|
},
|
|
26719
|
-
/* @__PURE__ */
|
|
27010
|
+
/* @__PURE__ */ React246.createElement(FunCheckoutModalHeightAnimationWrapper, { checkoutStep: modalState.step }, topbar, /* @__PURE__ */ React246.createElement(
|
|
26720
27011
|
Dialog.Content,
|
|
26721
27012
|
{
|
|
26722
27013
|
fullHeight: showFullHeight,
|
|
@@ -26726,20 +27017,20 @@ function FunCheckoutModalInner({
|
|
|
26726
27017
|
withBottomDivider: modalState.step === "transfer_token" /* TRANSFER_TOKEN */ || modalState.step === "fiat_account_detail" /* FIAT_ACCOUNT_DETAIL */ ? "never" : "scroll",
|
|
26727
27018
|
id: CHECKOUT_DIALOG_CONTENT_ID
|
|
26728
27019
|
},
|
|
26729
|
-
isBlocked ? /* @__PURE__ */
|
|
27020
|
+
isBlocked ? /* @__PURE__ */ React246.createElement(
|
|
26730
27021
|
FunCheckoutBlocked,
|
|
26731
27022
|
{
|
|
26732
27023
|
reason: isUserGeoblocked ? "geoblock" : "security"
|
|
26733
27024
|
}
|
|
26734
|
-
) : /* @__PURE__ */
|
|
27025
|
+
) : /* @__PURE__ */ React246.createElement(React246.Fragment, null, /* @__PURE__ */ React246.createElement(
|
|
26735
27026
|
DydxSwitchTab,
|
|
26736
27027
|
{
|
|
26737
27028
|
onSwitch: checkoutItem.initSettings.onDydxSwitch,
|
|
26738
27029
|
showSwitch: showDydxSwitch,
|
|
26739
27030
|
onClose: onCloseWrapper
|
|
26740
27031
|
}
|
|
26741
|
-
), /* @__PURE__ */
|
|
26742
|
-
), /* @__PURE__ */
|
|
27032
|
+
), /* @__PURE__ */ React246.createElement(FunCheckoutModalStepComponent, { ...modalProps }))
|
|
27033
|
+
), /* @__PURE__ */ React246.createElement(Dialog.BottomSection, { id: CHECKOUT_MODAL_BOTTOM_BAR_ID }), !isBlocked && /* @__PURE__ */ React246.createElement(
|
|
26743
27034
|
CheckoutNotifications,
|
|
26744
27035
|
{
|
|
26745
27036
|
onHelp: handleCheckoutHelp,
|
|
@@ -26753,7 +27044,7 @@ function FunCheckoutModal({ onClose, open }) {
|
|
|
26753
27044
|
if (!checkoutItem) {
|
|
26754
27045
|
return null;
|
|
26755
27046
|
}
|
|
26756
|
-
return /* @__PURE__ */
|
|
27047
|
+
return /* @__PURE__ */ React246.createElement(
|
|
26757
27048
|
FunCheckoutModalInner,
|
|
26758
27049
|
{
|
|
26759
27050
|
checkoutItem,
|
|
@@ -26764,7 +27055,7 @@ function FunCheckoutModal({ onClose, open }) {
|
|
|
26764
27055
|
}
|
|
26765
27056
|
|
|
26766
27057
|
// src/modals/ConnectModal/ConnectModal.tsx
|
|
26767
|
-
import
|
|
27058
|
+
import React247 from "react";
|
|
26768
27059
|
import { useAccount as useAccount8 } from "wagmi";
|
|
26769
27060
|
var TITLE_ID2 = "rk_connect_title";
|
|
26770
27061
|
function ConnectModal({
|
|
@@ -26775,12 +27066,12 @@ function ConnectModal({
|
|
|
26775
27066
|
const connectionStatus = useConnectionStatus();
|
|
26776
27067
|
const { disconnect } = useFunkitDisconnect();
|
|
26777
27068
|
const { isConnecting } = useAccount8();
|
|
26778
|
-
const onConnectModalCancel =
|
|
27069
|
+
const onConnectModalCancel = React247.useCallback(() => {
|
|
26779
27070
|
if (isConnecting) disconnect();
|
|
26780
27071
|
onClose();
|
|
26781
27072
|
}, [onClose, disconnect, isConnecting]);
|
|
26782
27073
|
if (connectionStatus === "disconnected" || connectionStatus === "loading") {
|
|
26783
|
-
return /* @__PURE__ */
|
|
27074
|
+
return /* @__PURE__ */ React247.createElement(
|
|
26784
27075
|
Dialog,
|
|
26785
27076
|
{
|
|
26786
27077
|
onClose: onConnectModalCancel,
|
|
@@ -26788,7 +27079,7 @@ function ConnectModal({
|
|
|
26788
27079
|
titleId: TITLE_ID2,
|
|
26789
27080
|
isSmartCloseable: true
|
|
26790
27081
|
},
|
|
26791
|
-
/* @__PURE__ */
|
|
27082
|
+
/* @__PURE__ */ React247.createElement(
|
|
26792
27083
|
FunConnectOptions,
|
|
26793
27084
|
{
|
|
26794
27085
|
onClose: onConnectModalCancel,
|
|
@@ -26879,7 +27170,7 @@ function ModalProvider({ children }) {
|
|
|
26879
27170
|
useEffect46(() => {
|
|
26880
27171
|
if (isUnauthenticated) closeModals();
|
|
26881
27172
|
}, [isUnauthenticated]);
|
|
26882
|
-
return /* @__PURE__ */
|
|
27173
|
+
return /* @__PURE__ */ React248.createElement(
|
|
26883
27174
|
ModalContext.Provider,
|
|
26884
27175
|
{
|
|
26885
27176
|
value: useMemo42(
|
|
@@ -26917,7 +27208,7 @@ function ModalProvider({ children }) {
|
|
|
26917
27208
|
)
|
|
26918
27209
|
},
|
|
26919
27210
|
children,
|
|
26920
|
-
/* @__PURE__ */
|
|
27211
|
+
/* @__PURE__ */ React248.createElement(
|
|
26921
27212
|
ConnectModal,
|
|
26922
27213
|
{
|
|
26923
27214
|
onClose: closeConnectModal,
|
|
@@ -26925,7 +27216,7 @@ function ModalProvider({ children }) {
|
|
|
26925
27216
|
walletsOnly: !!walletsOnly
|
|
26926
27217
|
}
|
|
26927
27218
|
),
|
|
26928
|
-
/* @__PURE__ */
|
|
27219
|
+
/* @__PURE__ */ React248.createElement(
|
|
26929
27220
|
AccountModal,
|
|
26930
27221
|
{
|
|
26931
27222
|
onClose: closeAccountModal,
|
|
@@ -26933,8 +27224,8 @@ function ModalProvider({ children }) {
|
|
|
26933
27224
|
defaultTab: accountModalTab
|
|
26934
27225
|
}
|
|
26935
27226
|
),
|
|
26936
|
-
/* @__PURE__ */
|
|
26937
|
-
/* @__PURE__ */
|
|
27227
|
+
/* @__PURE__ */ React248.createElement(ChainModal, { onClose: closeChainModal, open: chainModalOpen }),
|
|
27228
|
+
/* @__PURE__ */ React248.createElement(
|
|
26938
27229
|
FunCheckoutModal,
|
|
26939
27230
|
{
|
|
26940
27231
|
onClose: closeFunCheckoutModal,
|
|
@@ -27675,7 +27966,7 @@ var FunkitWeb2Provider = ({
|
|
|
27675
27966
|
handleFunkitWeb2Logout,
|
|
27676
27967
|
web2UserInfo
|
|
27677
27968
|
};
|
|
27678
|
-
return /* @__PURE__ */
|
|
27969
|
+
return /* @__PURE__ */ React249.createElement(FunkitWeb2Context.Provider, { value: contextValue }, privyIframeUrl ? /* @__PURE__ */ React249.createElement(
|
|
27679
27970
|
"iframe",
|
|
27680
27971
|
{
|
|
27681
27972
|
id: PRIVY_IFRAME_ID,
|
|
@@ -27708,7 +27999,7 @@ function useConnectionStatus() {
|
|
|
27708
27999
|
}
|
|
27709
28000
|
|
|
27710
28001
|
// src/providers/ShowBalanceContext.tsx
|
|
27711
|
-
import
|
|
28002
|
+
import React250, {
|
|
27712
28003
|
createContext as createContext19,
|
|
27713
28004
|
useContext as useContext19,
|
|
27714
28005
|
useState as useState67
|
|
@@ -27719,13 +28010,13 @@ var ShowBalanceContext = createContext19({
|
|
|
27719
28010
|
});
|
|
27720
28011
|
function ShowBalanceProvider({ children }) {
|
|
27721
28012
|
const [showBalance, setShowBalance] = useState67();
|
|
27722
|
-
return /* @__PURE__ */
|
|
28013
|
+
return /* @__PURE__ */ React250.createElement(ShowBalanceContext.Provider, { value: { showBalance, setShowBalance } }, children);
|
|
27723
28014
|
}
|
|
27724
28015
|
var useShowBalance = () => useContext19(ShowBalanceContext);
|
|
27725
28016
|
|
|
27726
28017
|
// src/components/ConnectButton/ConnectButtonRenderer.tsx
|
|
27727
28018
|
import { formatCurrencyAndStringify as formatCurrencyAndStringify11, isMobile as isMobile14, noop as noop8 } from "@funkit/utils";
|
|
27728
|
-
import
|
|
28019
|
+
import React251 from "react";
|
|
27729
28020
|
import { useAccount as useAccount11, useBalance, useConfig as useConfig6 } from "wagmi";
|
|
27730
28021
|
|
|
27731
28022
|
// src/hooks/useIsMounted.ts
|
|
@@ -27816,7 +28107,7 @@ function ConnectButtonRenderer({
|
|
|
27816
28107
|
const { openChainModal } = useChainModal();
|
|
27817
28108
|
const { openAccountModal } = useAccountModal();
|
|
27818
28109
|
const { accountModalOpen, chainModalOpen, connectModalOpen } = useModalState();
|
|
27819
|
-
return /* @__PURE__ */
|
|
28110
|
+
return /* @__PURE__ */ React251.createElement(React251.Fragment, null, children({
|
|
27820
28111
|
account: address ? {
|
|
27821
28112
|
address,
|
|
27822
28113
|
balanceDecimals: balanceData?.decimals,
|
|
@@ -27872,7 +28163,7 @@ function ChainSelectorButton({
|
|
|
27872
28163
|
openChainModal,
|
|
27873
28164
|
chain
|
|
27874
28165
|
}) {
|
|
27875
|
-
return /* @__PURE__ */
|
|
28166
|
+
return /* @__PURE__ */ React252.createElement(
|
|
27876
28167
|
Box,
|
|
27877
28168
|
{
|
|
27878
28169
|
alignItems: "center",
|
|
@@ -27900,7 +28191,7 @@ function ChainSelectorButton({
|
|
|
27900
28191
|
type: "button",
|
|
27901
28192
|
...connectButtonStyles
|
|
27902
28193
|
},
|
|
27903
|
-
unsupportedChain ? /* @__PURE__ */
|
|
28194
|
+
unsupportedChain ? /* @__PURE__ */ React252.createElement(Box, { alignItems: "center", display: "flex", height: "24", paddingX: "4" }, "Wrong network") : /* @__PURE__ */ React252.createElement(Box, { alignItems: "center", display: "flex", gap: "6" }, chain.hasIcon ? /* @__PURE__ */ React252.createElement(
|
|
27904
28195
|
Box,
|
|
27905
28196
|
{
|
|
27906
28197
|
display: mapResponsiveValue(
|
|
@@ -27910,7 +28201,7 @@ function ChainSelectorButton({
|
|
|
27910
28201
|
height: "12",
|
|
27911
28202
|
width: "12"
|
|
27912
28203
|
},
|
|
27913
|
-
/* @__PURE__ */
|
|
28204
|
+
/* @__PURE__ */ React252.createElement(
|
|
27914
28205
|
AsyncImage,
|
|
27915
28206
|
{
|
|
27916
28207
|
alt: chain.name ?? "Chain icon",
|
|
@@ -27921,7 +28212,7 @@ function ChainSelectorButton({
|
|
|
27921
28212
|
src: chain.iconUrl
|
|
27922
28213
|
}
|
|
27923
28214
|
)
|
|
27924
|
-
) : null, /* @__PURE__ */
|
|
28215
|
+
) : null, /* @__PURE__ */ React252.createElement(
|
|
27925
28216
|
Box,
|
|
27926
28217
|
{
|
|
27927
28218
|
display: mapResponsiveValue(chainStatus, (value) => {
|
|
@@ -27941,7 +28232,7 @@ function AccountButton({
|
|
|
27941
28232
|
showBalance,
|
|
27942
28233
|
accountStatus
|
|
27943
28234
|
}) {
|
|
27944
|
-
return /* @__PURE__ */
|
|
28235
|
+
return /* @__PURE__ */ React252.createElement(
|
|
27945
28236
|
Box,
|
|
27946
28237
|
{
|
|
27947
28238
|
alignItems: "center",
|
|
@@ -27961,7 +28252,7 @@ function AccountButton({
|
|
|
27961
28252
|
gap: "16",
|
|
27962
28253
|
...connectButtonStyles
|
|
27963
28254
|
},
|
|
27964
|
-
account.displayBalance && /* @__PURE__ */
|
|
28255
|
+
account.displayBalance && /* @__PURE__ */ React252.createElement(
|
|
27965
28256
|
Box,
|
|
27966
28257
|
{
|
|
27967
28258
|
display: mapResponsiveValue(
|
|
@@ -27971,7 +28262,7 @@ function AccountButton({
|
|
|
27971
28262
|
},
|
|
27972
28263
|
account.displayBalance
|
|
27973
28264
|
),
|
|
27974
|
-
/* @__PURE__ */
|
|
28265
|
+
/* @__PURE__ */ React252.createElement(Box, { alignItems: "center", display: "flex", gap: "6" }, /* @__PURE__ */ React252.createElement(
|
|
27975
28266
|
Box,
|
|
27976
28267
|
{
|
|
27977
28268
|
display: mapResponsiveValue(
|
|
@@ -27979,7 +28270,7 @@ function AccountButton({
|
|
|
27979
28270
|
(value) => value === "full" || value === "avatar" ? "block" : "none"
|
|
27980
28271
|
)
|
|
27981
28272
|
},
|
|
27982
|
-
/* @__PURE__ */
|
|
28273
|
+
/* @__PURE__ */ React252.createElement(
|
|
27983
28274
|
Avatar,
|
|
27984
28275
|
{
|
|
27985
28276
|
address: account.address,
|
|
@@ -27988,7 +28279,7 @@ function AccountButton({
|
|
|
27988
28279
|
size: 12
|
|
27989
28280
|
}
|
|
27990
28281
|
)
|
|
27991
|
-
), /* @__PURE__ */
|
|
28282
|
+
), /* @__PURE__ */ React252.createElement(
|
|
27992
28283
|
Box,
|
|
27993
28284
|
{
|
|
27994
28285
|
display: mapResponsiveValue(
|
|
@@ -28019,7 +28310,7 @@ function ConnectButton({
|
|
|
28019
28310
|
setShowBalance(showBalance);
|
|
28020
28311
|
if (!ready) setReady(true);
|
|
28021
28312
|
}, [showBalance, setShowBalance, ready]);
|
|
28022
|
-
return ready ? /* @__PURE__ */
|
|
28313
|
+
return ready ? /* @__PURE__ */ React252.createElement(ConnectButtonRenderer, null, ({
|
|
28023
28314
|
account,
|
|
28024
28315
|
chain,
|
|
28025
28316
|
mounted,
|
|
@@ -28029,7 +28320,7 @@ function ConnectButton({
|
|
|
28029
28320
|
}) => {
|
|
28030
28321
|
const ready2 = mounted && connectionStatus !== "loading";
|
|
28031
28322
|
const unsupportedChain = chain?.unsupported ?? false;
|
|
28032
|
-
return /* @__PURE__ */
|
|
28323
|
+
return /* @__PURE__ */ React252.createElement(
|
|
28033
28324
|
Box,
|
|
28034
28325
|
{
|
|
28035
28326
|
display: "flex",
|
|
@@ -28045,7 +28336,7 @@ function ConnectButton({
|
|
|
28045
28336
|
},
|
|
28046
28337
|
ready2 && account && connectionStatus === "connected" ? (
|
|
28047
28338
|
// Logged in: Chain Button & Account Button
|
|
28048
|
-
/* @__PURE__ */
|
|
28339
|
+
/* @__PURE__ */ React252.createElement(React252.Fragment, null, showChainSelector && chain && (chains.length > 1 || unsupportedChain) && /* @__PURE__ */ React252.createElement(
|
|
28049
28340
|
ChainSelectorButton,
|
|
28050
28341
|
{
|
|
28051
28342
|
unsupportedChain,
|
|
@@ -28053,7 +28344,7 @@ function ConnectButton({
|
|
|
28053
28344
|
openChainModal,
|
|
28054
28345
|
chain
|
|
28055
28346
|
}
|
|
28056
|
-
), !unsupportedChain && /* @__PURE__ */
|
|
28347
|
+
), !unsupportedChain && /* @__PURE__ */ React252.createElement(
|
|
28057
28348
|
AccountButton,
|
|
28058
28349
|
{
|
|
28059
28350
|
openAccountModal,
|
|
@@ -28064,7 +28355,7 @@ function ConnectButton({
|
|
|
28064
28355
|
))
|
|
28065
28356
|
) : (
|
|
28066
28357
|
// Not logged in: Connect Button
|
|
28067
|
-
/* @__PURE__ */
|
|
28358
|
+
/* @__PURE__ */ React252.createElement(
|
|
28068
28359
|
Box,
|
|
28069
28360
|
{
|
|
28070
28361
|
as: "button",
|
|
@@ -28082,19 +28373,19 @@ function ConnectButton({
|
|
|
28082
28373
|
type: "button",
|
|
28083
28374
|
...connectButtonStyles
|
|
28084
28375
|
},
|
|
28085
|
-
/* @__PURE__ */
|
|
28376
|
+
/* @__PURE__ */ React252.createElement(Box, { display: "flex", gap: "8", alignItems: "center" }, mounted && label, suffixIcon)
|
|
28086
28377
|
)
|
|
28087
28378
|
)
|
|
28088
28379
|
);
|
|
28089
|
-
}) : /* @__PURE__ */
|
|
28380
|
+
}) : /* @__PURE__ */ React252.createElement(React252.Fragment, null);
|
|
28090
28381
|
}
|
|
28091
28382
|
ConnectButton.__defaultProps = defaultProps;
|
|
28092
28383
|
ConnectButton.Custom = ConnectButtonRenderer;
|
|
28093
28384
|
|
|
28094
28385
|
// src/components/Icons/FunkitPaymentsIconLine.tsx
|
|
28095
|
-
import
|
|
28386
|
+
import React253 from "react";
|
|
28096
28387
|
function MetaMaskPaymentIcon({ size = 16 }) {
|
|
28097
|
-
return /* @__PURE__ */
|
|
28388
|
+
return /* @__PURE__ */ React253.createElement(
|
|
28098
28389
|
"svg",
|
|
28099
28390
|
{
|
|
28100
28391
|
width: size,
|
|
@@ -28103,7 +28394,7 @@ function MetaMaskPaymentIcon({ size = 16 }) {
|
|
|
28103
28394
|
fill: "none",
|
|
28104
28395
|
xmlns: "http://www.w3.org/2000/svg"
|
|
28105
28396
|
},
|
|
28106
|
-
/* @__PURE__ */
|
|
28397
|
+
/* @__PURE__ */ React253.createElement(
|
|
28107
28398
|
"path",
|
|
28108
28399
|
{
|
|
28109
28400
|
d: "M24.0891 3.1199L15.3446 9.61456L16.9617 5.7828L24.0891 3.1199Z",
|
|
@@ -28114,7 +28405,7 @@ function MetaMaskPaymentIcon({ size = 16 }) {
|
|
|
28114
28405
|
strokeLinejoin: "round"
|
|
28115
28406
|
}
|
|
28116
28407
|
),
|
|
28117
|
-
/* @__PURE__ */
|
|
28408
|
+
/* @__PURE__ */ React253.createElement(
|
|
28118
28409
|
"path",
|
|
28119
28410
|
{
|
|
28120
28411
|
d: "M3.90207 3.1199L12.5763 9.67608L11.0383 5.7828L3.90207 3.1199Z",
|
|
@@ -28125,7 +28416,7 @@ function MetaMaskPaymentIcon({ size = 16 }) {
|
|
|
28125
28416
|
strokeLinejoin: "round"
|
|
28126
28417
|
}
|
|
28127
28418
|
),
|
|
28128
|
-
/* @__PURE__ */
|
|
28419
|
+
/* @__PURE__ */ React253.createElement(
|
|
28129
28420
|
"path",
|
|
28130
28421
|
{
|
|
28131
28422
|
d: "M20.9429 18.1745L18.6139 21.7426L23.597 23.1136L25.0295 18.2536L20.9429 18.1745Z",
|
|
@@ -28136,7 +28427,7 @@ function MetaMaskPaymentIcon({ size = 16 }) {
|
|
|
28136
28427
|
strokeLinejoin: "round"
|
|
28137
28428
|
}
|
|
28138
28429
|
),
|
|
28139
|
-
/* @__PURE__ */
|
|
28430
|
+
/* @__PURE__ */ React253.createElement(
|
|
28140
28431
|
"path",
|
|
28141
28432
|
{
|
|
28142
28433
|
d: "M2.97929 18.2536L4.40301 23.1136L9.38607 21.7426L7.05713 18.1745L2.97929 18.2536Z",
|
|
@@ -28147,7 +28438,7 @@ function MetaMaskPaymentIcon({ size = 16 }) {
|
|
|
28147
28438
|
strokeLinejoin: "round"
|
|
28148
28439
|
}
|
|
28149
28440
|
),
|
|
28150
|
-
/* @__PURE__ */
|
|
28441
|
+
/* @__PURE__ */ React253.createElement(
|
|
28151
28442
|
"path",
|
|
28152
28443
|
{
|
|
28153
28444
|
d: "M9.10483 12.1456L7.71626 14.2461L12.6642 14.4658L12.4884 9.14877L9.10483 12.1456Z",
|
|
@@ -28158,7 +28449,7 @@ function MetaMaskPaymentIcon({ size = 16 }) {
|
|
|
28158
28449
|
strokeLinejoin: "round"
|
|
28159
28450
|
}
|
|
28160
28451
|
),
|
|
28161
|
-
/* @__PURE__ */
|
|
28452
|
+
/* @__PURE__ */ React253.createElement(
|
|
28162
28453
|
"path",
|
|
28163
28454
|
{
|
|
28164
28455
|
d: "M18.8864 12.1456L15.4589 9.08725L15.3446 14.4658L20.2837 14.2461L18.8864 12.1456Z",
|
|
@@ -28169,7 +28460,7 @@ function MetaMaskPaymentIcon({ size = 16 }) {
|
|
|
28169
28460
|
strokeLinejoin: "round"
|
|
28170
28461
|
}
|
|
28171
28462
|
),
|
|
28172
|
-
/* @__PURE__ */
|
|
28463
|
+
/* @__PURE__ */ React253.createElement(
|
|
28173
28464
|
"path",
|
|
28174
28465
|
{
|
|
28175
28466
|
d: "M9.38606 21.7426L12.3566 20.2925L9.79033 18.2888L9.38606 21.7426Z",
|
|
@@ -28180,7 +28471,7 @@ function MetaMaskPaymentIcon({ size = 16 }) {
|
|
|
28180
28471
|
strokeLinejoin: "round"
|
|
28181
28472
|
}
|
|
28182
28473
|
),
|
|
28183
|
-
/* @__PURE__ */
|
|
28474
|
+
/* @__PURE__ */ React253.createElement(
|
|
28184
28475
|
"path",
|
|
28185
28476
|
{
|
|
28186
28477
|
d: "M15.6347 20.2925L18.6139 21.7426L18.2009 18.2888L15.6347 20.2925Z",
|
|
@@ -28191,7 +28482,7 @@ function MetaMaskPaymentIcon({ size = 16 }) {
|
|
|
28191
28482
|
strokeLinejoin: "round"
|
|
28192
28483
|
}
|
|
28193
28484
|
),
|
|
28194
|
-
/* @__PURE__ */
|
|
28485
|
+
/* @__PURE__ */ React253.createElement(
|
|
28195
28486
|
"path",
|
|
28196
28487
|
{
|
|
28197
28488
|
d: "M18.6139 21.7426L15.6347 20.2925L15.8719 22.2348L15.8456 23.0521L18.6139 21.7426Z",
|
|
@@ -28202,7 +28493,7 @@ function MetaMaskPaymentIcon({ size = 16 }) {
|
|
|
28202
28493
|
strokeLinejoin: "round"
|
|
28203
28494
|
}
|
|
28204
28495
|
),
|
|
28205
|
-
/* @__PURE__ */
|
|
28496
|
+
/* @__PURE__ */ React253.createElement(
|
|
28206
28497
|
"path",
|
|
28207
28498
|
{
|
|
28208
28499
|
d: "M9.38606 21.7426L12.1544 23.0521L12.1368 22.2348L12.3566 20.2925L9.38606 21.7426Z",
|
|
@@ -28213,7 +28504,7 @@ function MetaMaskPaymentIcon({ size = 16 }) {
|
|
|
28213
28504
|
strokeLinejoin: "round"
|
|
28214
28505
|
}
|
|
28215
28506
|
),
|
|
28216
|
-
/* @__PURE__ */
|
|
28507
|
+
/* @__PURE__ */ React253.createElement(
|
|
28217
28508
|
"path",
|
|
28218
28509
|
{
|
|
28219
28510
|
d: "M12.1984 17.0056L9.72002 16.2762L11.4689 15.4765L12.1984 17.0056Z",
|
|
@@ -28224,7 +28515,7 @@ function MetaMaskPaymentIcon({ size = 16 }) {
|
|
|
28224
28515
|
strokeLinejoin: "round"
|
|
28225
28516
|
}
|
|
28226
28517
|
),
|
|
28227
|
-
/* @__PURE__ */
|
|
28518
|
+
/* @__PURE__ */ React253.createElement(
|
|
28228
28519
|
"path",
|
|
28229
28520
|
{
|
|
28230
28521
|
d: "M15.7928 17.0056L16.5223 15.4765L18.28 16.2762L15.7928 17.0056Z",
|
|
@@ -28235,7 +28526,7 @@ function MetaMaskPaymentIcon({ size = 16 }) {
|
|
|
28235
28526
|
strokeLinejoin: "round"
|
|
28236
28527
|
}
|
|
28237
28528
|
),
|
|
28238
|
-
/* @__PURE__ */
|
|
28529
|
+
/* @__PURE__ */ React253.createElement(
|
|
28239
28530
|
"path",
|
|
28240
28531
|
{
|
|
28241
28532
|
d: "M9.38606 21.7426L9.80791 18.1745L7.05712 18.2536L9.38606 21.7426Z",
|
|
@@ -28246,7 +28537,7 @@ function MetaMaskPaymentIcon({ size = 16 }) {
|
|
|
28246
28537
|
strokeLinejoin: "round"
|
|
28247
28538
|
}
|
|
28248
28539
|
),
|
|
28249
|
-
/* @__PURE__ */
|
|
28540
|
+
/* @__PURE__ */ React253.createElement(
|
|
28250
28541
|
"path",
|
|
28251
28542
|
{
|
|
28252
28543
|
d: "M18.1921 18.1745L18.6139 21.7426L20.9429 18.2536L18.1921 18.1745Z",
|
|
@@ -28257,7 +28548,7 @@ function MetaMaskPaymentIcon({ size = 16 }) {
|
|
|
28257
28548
|
strokeLinejoin: "round"
|
|
28258
28549
|
}
|
|
28259
28550
|
),
|
|
28260
|
-
/* @__PURE__ */
|
|
28551
|
+
/* @__PURE__ */ React253.createElement(
|
|
28261
28552
|
"path",
|
|
28262
28553
|
{
|
|
28263
28554
|
d: "M20.2837 14.2461L15.3446 14.4658L15.8016 17.0057L16.5311 15.4765L18.2888 16.2762L20.2837 14.2461Z",
|
|
@@ -28268,7 +28559,7 @@ function MetaMaskPaymentIcon({ size = 16 }) {
|
|
|
28268
28559
|
strokeLinejoin: "round"
|
|
28269
28560
|
}
|
|
28270
28561
|
),
|
|
28271
|
-
/* @__PURE__ */
|
|
28562
|
+
/* @__PURE__ */ React253.createElement(
|
|
28272
28563
|
"path",
|
|
28273
28564
|
{
|
|
28274
28565
|
d: "M9.72002 16.2762L11.4777 15.4765L12.1984 17.0057L12.6642 14.4658L7.71626 14.2461L9.72002 16.2762Z",
|
|
@@ -28279,7 +28570,7 @@ function MetaMaskPaymentIcon({ size = 16 }) {
|
|
|
28279
28570
|
strokeLinejoin: "round"
|
|
28280
28571
|
}
|
|
28281
28572
|
),
|
|
28282
|
-
/* @__PURE__ */
|
|
28573
|
+
/* @__PURE__ */ React253.createElement(
|
|
28283
28574
|
"path",
|
|
28284
28575
|
{
|
|
28285
28576
|
d: "M7.71626 14.2461L9.79033 18.2888L9.72002 16.2762L7.71626 14.2461Z",
|
|
@@ -28290,7 +28581,7 @@ function MetaMaskPaymentIcon({ size = 16 }) {
|
|
|
28290
28581
|
strokeLinejoin: "round"
|
|
28291
28582
|
}
|
|
28292
28583
|
),
|
|
28293
|
-
/* @__PURE__ */
|
|
28584
|
+
/* @__PURE__ */ React253.createElement(
|
|
28294
28585
|
"path",
|
|
28295
28586
|
{
|
|
28296
28587
|
d: "M18.2888 16.2762L18.2009 18.2888L20.2837 14.2461L18.2888 16.2762Z",
|
|
@@ -28301,7 +28592,7 @@ function MetaMaskPaymentIcon({ size = 16 }) {
|
|
|
28301
28592
|
strokeLinejoin: "round"
|
|
28302
28593
|
}
|
|
28303
28594
|
),
|
|
28304
|
-
/* @__PURE__ */
|
|
28595
|
+
/* @__PURE__ */ React253.createElement(
|
|
28305
28596
|
"path",
|
|
28306
28597
|
{
|
|
28307
28598
|
d: "M12.6642 14.4658L12.1984 17.0057L12.7784 20.0025L12.9102 16.0565L12.6642 14.4658Z",
|
|
@@ -28312,7 +28603,7 @@ function MetaMaskPaymentIcon({ size = 16 }) {
|
|
|
28312
28603
|
strokeLinejoin: "round"
|
|
28313
28604
|
}
|
|
28314
28605
|
),
|
|
28315
|
-
/* @__PURE__ */
|
|
28606
|
+
/* @__PURE__ */ React253.createElement(
|
|
28316
28607
|
"path",
|
|
28317
28608
|
{
|
|
28318
28609
|
d: "M15.3446 14.4658L15.1073 16.0477L15.2128 20.0025L15.8016 17.0057L15.3446 14.4658Z",
|
|
@@ -28323,7 +28614,7 @@ function MetaMaskPaymentIcon({ size = 16 }) {
|
|
|
28323
28614
|
strokeLinejoin: "round"
|
|
28324
28615
|
}
|
|
28325
28616
|
),
|
|
28326
|
-
/* @__PURE__ */
|
|
28617
|
+
/* @__PURE__ */ React253.createElement(
|
|
28327
28618
|
"path",
|
|
28328
28619
|
{
|
|
28329
28620
|
d: "M15.8016 17.0056L15.2128 20.0025L15.6347 20.2925L18.2009 18.2888L18.2888 16.2762L15.8016 17.0056Z",
|
|
@@ -28334,7 +28625,7 @@ function MetaMaskPaymentIcon({ size = 16 }) {
|
|
|
28334
28625
|
strokeLinejoin: "round"
|
|
28335
28626
|
}
|
|
28336
28627
|
),
|
|
28337
|
-
/* @__PURE__ */
|
|
28628
|
+
/* @__PURE__ */ React253.createElement(
|
|
28338
28629
|
"path",
|
|
28339
28630
|
{
|
|
28340
28631
|
d: "M9.72002 16.2762L9.79033 18.2888L12.3566 20.2925L12.7784 20.0025L12.1984 17.0056L9.72002 16.2762Z",
|
|
@@ -28345,7 +28636,7 @@ function MetaMaskPaymentIcon({ size = 16 }) {
|
|
|
28345
28636
|
strokeLinejoin: "round"
|
|
28346
28637
|
}
|
|
28347
28638
|
),
|
|
28348
|
-
/* @__PURE__ */
|
|
28639
|
+
/* @__PURE__ */ React253.createElement(
|
|
28349
28640
|
"path",
|
|
28350
28641
|
{
|
|
28351
28642
|
d: "M15.8456 23.0521L15.8719 22.2348L15.6522 22.0414H12.339L12.1368 22.2348L12.1544 23.0521L9.38606 21.7426L10.3528 22.5336L12.3126 23.8958H15.6786L17.6472 22.5336L18.6139 21.7426L15.8456 23.0521Z",
|
|
@@ -28356,7 +28647,7 @@ function MetaMaskPaymentIcon({ size = 16 }) {
|
|
|
28356
28647
|
strokeLinejoin: "round"
|
|
28357
28648
|
}
|
|
28358
28649
|
),
|
|
28359
|
-
/* @__PURE__ */
|
|
28650
|
+
/* @__PURE__ */ React253.createElement(
|
|
28360
28651
|
"path",
|
|
28361
28652
|
{
|
|
28362
28653
|
d: "M15.6347 20.2925L15.2128 20.0025H12.7784L12.3566 20.2925L12.1368 22.2348L12.339 22.0414H15.6522L15.8719 22.2348L15.6347 20.2925Z",
|
|
@@ -28367,7 +28658,7 @@ function MetaMaskPaymentIcon({ size = 16 }) {
|
|
|
28367
28658
|
strokeLinejoin: "round"
|
|
28368
28659
|
}
|
|
28369
28660
|
),
|
|
28370
|
-
/* @__PURE__ */
|
|
28661
|
+
/* @__PURE__ */ React253.createElement(
|
|
28371
28662
|
"path",
|
|
28372
28663
|
{
|
|
28373
28664
|
d: "M24.4583 10.0364L25.2053 6.45072L24.0891 3.1199L15.6347 9.39485L18.8864 12.1456L23.4827 13.4903L24.5022 12.3038L24.0628 11.9874L24.7658 11.3459L24.221 10.924L24.924 10.3879L24.4583 10.0364Z",
|
|
@@ -28378,7 +28669,7 @@ function MetaMaskPaymentIcon({ size = 16 }) {
|
|
|
28378
28669
|
strokeLinejoin: "round"
|
|
28379
28670
|
}
|
|
28380
28671
|
),
|
|
28381
|
-
/* @__PURE__ */
|
|
28672
|
+
/* @__PURE__ */ React253.createElement(
|
|
28382
28673
|
"path",
|
|
28383
28674
|
{
|
|
28384
28675
|
d: "M2.79472 6.45072L3.54174 10.0364L3.06717 10.3879L3.77024 10.924L3.23415 11.3459L3.93722 11.9874L3.4978 12.3038L4.50847 13.4903L9.10483 12.1456L12.3566 9.39485L3.90207 3.1199L2.79472 6.45072Z",
|
|
@@ -28389,7 +28680,7 @@ function MetaMaskPaymentIcon({ size = 16 }) {
|
|
|
28389
28680
|
strokeLinejoin: "round"
|
|
28390
28681
|
}
|
|
28391
28682
|
),
|
|
28392
|
-
/* @__PURE__ */
|
|
28683
|
+
/* @__PURE__ */ React253.createElement(
|
|
28393
28684
|
"path",
|
|
28394
28685
|
{
|
|
28395
28686
|
d: "M23.4827 13.4903L18.8864 12.1456L20.2837 14.2461L18.2009 18.2888L20.9429 18.2536H25.0295L23.4827 13.4903Z",
|
|
@@ -28400,7 +28691,7 @@ function MetaMaskPaymentIcon({ size = 16 }) {
|
|
|
28400
28691
|
strokeLinejoin: "round"
|
|
28401
28692
|
}
|
|
28402
28693
|
),
|
|
28403
|
-
/* @__PURE__ */
|
|
28694
|
+
/* @__PURE__ */ React253.createElement(
|
|
28404
28695
|
"path",
|
|
28405
28696
|
{
|
|
28406
28697
|
d: "M9.10484 12.1456L4.50848 13.4903L2.97929 18.2536H7.05713L9.79033 18.2888L7.71626 14.2461L9.10484 12.1456Z",
|
|
@@ -28411,7 +28702,7 @@ function MetaMaskPaymentIcon({ size = 16 }) {
|
|
|
28411
28702
|
strokeLinejoin: "round"
|
|
28412
28703
|
}
|
|
28413
28704
|
),
|
|
28414
|
-
/* @__PURE__ */
|
|
28705
|
+
/* @__PURE__ */ React253.createElement(
|
|
28415
28706
|
"path",
|
|
28416
28707
|
{
|
|
28417
28708
|
d: "M15.3446 14.4658L15.6347 9.39485L16.9705 5.7828H11.0383L12.3566 9.39485L12.6642 14.4658L12.7696 16.0653L12.7784 20.0025H15.2128L15.2304 16.0653L15.3446 14.4658Z",
|
|
@@ -28425,14 +28716,14 @@ function MetaMaskPaymentIcon({ size = 16 }) {
|
|
|
28425
28716
|
);
|
|
28426
28717
|
}
|
|
28427
28718
|
function MastercardPaymentIcon({ size = 16 }) {
|
|
28428
|
-
return /* @__PURE__ */
|
|
28719
|
+
return /* @__PURE__ */ React253.createElement(
|
|
28429
28720
|
"svg",
|
|
28430
28721
|
{
|
|
28431
28722
|
xmlns: "http://www.w3.org/2000/svg",
|
|
28432
28723
|
height: size,
|
|
28433
28724
|
viewBox: "0 0 152.407 108"
|
|
28434
28725
|
},
|
|
28435
|
-
/* @__PURE__ */
|
|
28726
|
+
/* @__PURE__ */ React253.createElement("g", null, /* @__PURE__ */ React253.createElement("rect", { width: "152.407", height: "108", fill: "transparent" }), /* @__PURE__ */ React253.createElement("g", null, /* @__PURE__ */ React253.createElement(
|
|
28436
28727
|
"rect",
|
|
28437
28728
|
{
|
|
28438
28729
|
x: "60.4117",
|
|
@@ -28441,21 +28732,21 @@ function MastercardPaymentIcon({ size = 16 }) {
|
|
|
28441
28732
|
height: "56.6064",
|
|
28442
28733
|
fill: "#ff5f00"
|
|
28443
28734
|
}
|
|
28444
|
-
), /* @__PURE__ */
|
|
28735
|
+
), /* @__PURE__ */ React253.createElement(
|
|
28445
28736
|
"path",
|
|
28446
28737
|
{
|
|
28447
28738
|
d: "M382.20839,306a35.9375,35.9375,0,0,1,13.7499-28.3032,36,36,0,1,0,0,56.6064A35.938,35.938,0,0,1,382.20839,306Z",
|
|
28448
28739
|
transform: "translate(-319.79649 -252)",
|
|
28449
28740
|
fill: "#eb001b"
|
|
28450
28741
|
}
|
|
28451
|
-
), /* @__PURE__ */
|
|
28742
|
+
), /* @__PURE__ */ React253.createElement(
|
|
28452
28743
|
"path",
|
|
28453
28744
|
{
|
|
28454
28745
|
d: "M454.20349,306a35.99867,35.99867,0,0,1-58.2452,28.3032,36.00518,36.00518,0,0,0,0-56.6064A35.99867,35.99867,0,0,1,454.20349,306Z",
|
|
28455
28746
|
transform: "translate(-319.79649 -252)",
|
|
28456
28747
|
fill: "#f79e1b"
|
|
28457
28748
|
}
|
|
28458
|
-
), /* @__PURE__ */
|
|
28749
|
+
), /* @__PURE__ */ React253.createElement(
|
|
28459
28750
|
"path",
|
|
28460
28751
|
{
|
|
28461
28752
|
d: "M450.76889,328.3077v-1.1589h.4673v-.2361h-1.1901v.2361h.4675v1.1589Zm2.3105,0v-1.3973h-.3648l-.41959.9611-.41971-.9611h-.365v1.3973h.2576v-1.054l.3935.9087h.2671l.39351-.911v1.0563Z",
|
|
@@ -28469,7 +28760,7 @@ function FunkitPaymentsIconLine({
|
|
|
28469
28760
|
size = 16,
|
|
28470
28761
|
gap = "2"
|
|
28471
28762
|
}) {
|
|
28472
|
-
return /* @__PURE__ */
|
|
28763
|
+
return /* @__PURE__ */ React253.createElement(
|
|
28473
28764
|
Box,
|
|
28474
28765
|
{
|
|
28475
28766
|
display: "flex",
|
|
@@ -28478,9 +28769,9 @@ function FunkitPaymentsIconLine({
|
|
|
28478
28769
|
alignItems: "center",
|
|
28479
28770
|
justifyContent: "center"
|
|
28480
28771
|
},
|
|
28481
|
-
/* @__PURE__ */
|
|
28482
|
-
/* @__PURE__ */
|
|
28483
|
-
/* @__PURE__ */
|
|
28772
|
+
/* @__PURE__ */ React253.createElement(MetaMaskPaymentIcon, { size }),
|
|
28773
|
+
/* @__PURE__ */ React253.createElement(MastercardPaymentIcon, { size }),
|
|
28774
|
+
/* @__PURE__ */ React253.createElement(CoinbaseIcon, { size })
|
|
28484
28775
|
);
|
|
28485
28776
|
}
|
|
28486
28777
|
|
|
@@ -28539,7 +28830,7 @@ var useUpdateActiveFunkitCheckout = () => {
|
|
|
28539
28830
|
|
|
28540
28831
|
// src/providers/FunkitProvider.tsx
|
|
28541
28832
|
import { QueryClientProvider } from "@tanstack/react-query";
|
|
28542
|
-
import
|
|
28833
|
+
import React254, { createContext as createContext20, useContext as useContext20 } from "react";
|
|
28543
28834
|
import { WagmiProvider, useAccountEffect as useAccountEffect3 } from "wagmi";
|
|
28544
28835
|
|
|
28545
28836
|
// src/utils/funkitProvider.ts
|
|
@@ -28623,7 +28914,7 @@ function setFunkitConnectVersion({ version }) {
|
|
|
28623
28914
|
localStorage.setItem(storageKey5, version);
|
|
28624
28915
|
}
|
|
28625
28916
|
function getCurrentSdkVersion() {
|
|
28626
|
-
return "5.4.
|
|
28917
|
+
return "5.4.1";
|
|
28627
28918
|
}
|
|
28628
28919
|
function useFingerprint() {
|
|
28629
28920
|
const fingerprint = useCallback49(() => {
|
|
@@ -28674,7 +28965,7 @@ function FunkitProvider(props) {
|
|
|
28674
28965
|
!!props.debug,
|
|
28675
28966
|
getCurrentSdkVersion()
|
|
28676
28967
|
);
|
|
28677
|
-
const MainChild = /* @__PURE__ */
|
|
28968
|
+
const MainChild = /* @__PURE__ */ React254.createElement(FunkitThemeProvider, { theme: props.theme }, /* @__PURE__ */ React254.createElement(
|
|
28678
28969
|
FunkitProviderInner,
|
|
28679
28970
|
{
|
|
28680
28971
|
avatar: props.avatar,
|
|
@@ -28687,7 +28978,7 @@ function FunkitProvider(props) {
|
|
|
28687
28978
|
},
|
|
28688
28979
|
props.children
|
|
28689
28980
|
));
|
|
28690
|
-
return finalWagmiConfig && finalQueryClient ? /* @__PURE__ */
|
|
28981
|
+
return finalWagmiConfig && finalQueryClient ? /* @__PURE__ */ React254.createElement(WagmiProvider, { config: finalWagmiConfig }, /* @__PURE__ */ React254.createElement(QueryClientProvider, { client: finalQueryClient }, MainChild)) : MainChild;
|
|
28691
28982
|
}
|
|
28692
28983
|
function FunkitProviderInner({
|
|
28693
28984
|
avatar,
|
|
@@ -28707,7 +28998,7 @@ function FunkitProviderInner({
|
|
|
28707
28998
|
const avatarContext = avatar ?? defaultAvatar;
|
|
28708
28999
|
const isSandboxMode = !!sandbox;
|
|
28709
29000
|
const modalSizeFinal = modalSize || ModalSizeOptions.COMPACT;
|
|
28710
|
-
return /* @__PURE__ */
|
|
29001
|
+
return /* @__PURE__ */ React254.createElement(FunkitConfigContext.Provider, { value: funkitConfig }, /* @__PURE__ */ React254.createElement(FunkitConnectChainProvider, { initialChain }, /* @__PURE__ */ React254.createElement(ModalSizeProvider, { modalSize: modalSizeFinal }, /* @__PURE__ */ React254.createElement(FunkitWeb2Provider, null, /* @__PURE__ */ React254.createElement(GeneralWalletProvider, null, /* @__PURE__ */ React254.createElement(FunkitFlagsProvider, null, /* @__PURE__ */ React254.createElement(FunkitCheckoutHistoryProvider, null, /* @__PURE__ */ React254.createElement(FunkitCheckoutProvider, null, /* @__PURE__ */ React254.createElement(FunkitQuoteProvider, null, /* @__PURE__ */ React254.createElement(FunkitSandboxContext.Provider, { value: isSandboxMode }, /* @__PURE__ */ React254.createElement(FunkitMeshProvider, null, /* @__PURE__ */ React254.createElement(AvatarContext.Provider, { value: avatarContext }, /* @__PURE__ */ React254.createElement(ThemeIdContext2.Provider, { value: id }, /* @__PURE__ */ React254.createElement(ShowBalanceProvider, null, /* @__PURE__ */ React254.createElement(FunkitMoonpayProvider, { debug: !!debug }, /* @__PURE__ */ React254.createElement(UserPresenceProvider, null, /* @__PURE__ */ React254.createElement(ModalProvider, null, activeTheme ? /* @__PURE__ */ React254.createElement(
|
|
28711
29002
|
"div",
|
|
28712
29003
|
{
|
|
28713
29004
|
...createThemeRootProps2(id),
|
|
@@ -28716,7 +29007,7 @@ function FunkitProviderInner({
|
|
|
28716
29007
|
height: "100%"
|
|
28717
29008
|
}
|
|
28718
29009
|
},
|
|
28719
|
-
/* @__PURE__ */
|
|
29010
|
+
/* @__PURE__ */ React254.createElement(
|
|
28720
29011
|
"style",
|
|
28721
29012
|
{
|
|
28722
29013
|
dangerouslySetInnerHTML: {
|