@funkit/connect 5.2.0 → 5.3.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.
Files changed (129) hide show
  1. package/CHANGELOG.md +55 -0
  2. package/dist/{chunk-QBCQK5KX.js → chunk-C63T33UV.js} +6 -1
  3. package/dist/{chunk-2C7D5NQG.js → chunk-CRPOYQ6X.js} +24 -4
  4. package/dist/{chunk-PKXUTXYG.js → chunk-LEJS74SX.js} +6 -1
  5. package/dist/components/Box/Box.d.ts +29 -29
  6. package/dist/components/Dialog/Dialog.css.d.ts +4 -2
  7. package/dist/components/Dialog/Dialog.d.ts +11 -3
  8. package/dist/components/Dialog/DialogContent.css.d.ts +2 -0
  9. package/dist/components/Dropdown/BaseDropdown.css.d.ts +1 -1
  10. package/dist/components/Dropdown/BaseDropdown.d.ts +4 -3
  11. package/dist/components/FunAsset/FunAssetLoading.d.ts +6 -3
  12. package/dist/components/FunBadge/BridgeCustomerStatusBadge.d.ts +9 -0
  13. package/dist/components/FunBadge/FunBadge.d.ts +4 -2
  14. package/dist/components/FunButton/FunIconButton.d.ts +1 -0
  15. package/dist/components/FunButton/FunLinkButton.d.ts +4 -0
  16. package/dist/components/FunCheckbox/FunCheckbox.d.ts +9 -0
  17. package/dist/components/FunCheckoutHistory/FunCheckoutStatus.d.ts +11 -2
  18. package/dist/components/FunCheckoutHistory/FunDirectExecutionStatus.d.ts +7 -0
  19. package/dist/components/FunFeatureList/FunFeatureList.d.ts +13 -0
  20. package/dist/components/FunFeatureList/FunFeatureListItem.d.ts +10 -0
  21. package/dist/components/FunGuarantees/FunGuarantees.d.ts +7 -3
  22. package/dist/components/FunInput/FunInput.d.ts +3 -1
  23. package/dist/components/FunInput/FunTextAreaInput.d.ts +1 -1
  24. package/dist/components/FunInputButton/FunInputButton.d.ts +14 -0
  25. package/dist/components/FunOptionBox/FunOptionBox.css.d.ts +1 -1
  26. package/dist/components/FunPayments/FunPaymentMethods.d.ts +8 -1
  27. package/dist/components/FunSelect/FunSelect.d.ts +3 -0
  28. package/dist/components/FunTooltip/FunTooltip.css.d.ts +1 -0
  29. package/dist/components/FunTooltip/FunTooltip.d.ts +15 -1
  30. package/dist/components/FunTransactionSummary/PaymentAmountSummary.d.ts +3 -4
  31. package/dist/components/Icons/CheckIcon.d.ts +1 -1
  32. package/dist/components/Icons/HomeIcon.d.ts +4 -0
  33. package/dist/components/Icons/Icons.css.d.ts +0 -1
  34. package/dist/components/Icons/New/BankIcon.d.ts +7 -0
  35. package/dist/components/Icons/New/BanknoteIcon.d.ts +4 -0
  36. package/dist/components/Icons/New/CoinsHandIcon.d.ts +4 -0
  37. package/dist/components/Icons/New/FiatAccountIcon.d.ts +4 -0
  38. package/dist/components/Icons/New/HelpIcon.d.ts +2 -0
  39. package/dist/components/Icons/New/LightningBoltOutlineIcon.d.ts +4 -0
  40. package/dist/components/Icons/New/ShieldCheckIcon.d.ts +4 -0
  41. package/dist/components/Icons/New/TimeIcon.d.ts +4 -0
  42. package/dist/components/Icons/New/UserIcon.d.ts +4 -0
  43. package/dist/components/Icons/SpinnerIconWithBackground.d.ts +6 -4
  44. package/dist/components/Icons/SuccessIcon.d.ts +3 -1
  45. package/dist/components/Icons/UserSquareIcon.d.ts +4 -0
  46. package/dist/components/Icons/VerificationFailedIcon.d.ts +4 -0
  47. package/dist/components/Icons/VerificationPendingIcon.d.ts +4 -0
  48. package/dist/components/Icons/VerificationSuccessIcon.d.ts +4 -0
  49. package/dist/components/Icons/VerifyIdentityIcon.d.ts +4 -0
  50. package/dist/components/SourcePaymentMethodItem/SourcePaymentMethodItem.d.ts +1 -2
  51. package/dist/components/Tabs/Tabs.d.ts +11 -0
  52. package/dist/components/Text/Text.d.ts +1 -1
  53. package/dist/components/TransferTokenDetails/TransferTokenDetails.d.ts +2 -2
  54. package/dist/components/VirtualFiatAccount/CreateAccountScreen/CreateAccountScreen.d.ts +15 -0
  55. package/dist/components/VirtualFiatAccount/IntroScreen/IntroScreen.d.ts +6 -0
  56. package/dist/components/VirtualFiatAccount/VerifyAccountScreen/VerifyAccountScreen.d.ts +15 -0
  57. package/dist/config/getDefaultConfig.d.ts +291 -150
  58. package/dist/consts/customers.d.ts +1 -0
  59. package/dist/consts/funkit.d.ts +0 -1
  60. package/dist/consts/quote.d.ts +3 -10
  61. package/dist/css/sprinkles.css.d.ts +45 -29
  62. package/dist/domains/bridge.d.ts +25 -0
  63. package/dist/domains/fees.d.ts +14 -1
  64. package/dist/domains/paymentMethods.d.ts +25 -4
  65. package/dist/domains/quote.d.ts +17 -14
  66. package/dist/domains/relay.d.ts +52 -0
  67. package/dist/hooks/useCheckoutAccountBalanceTransfer.d.ts +1 -1
  68. package/dist/hooks/useCheckoutDirectExecution.d.ts +30 -0
  69. package/dist/hooks/useCheckoutDirectExecutionHistory.d.ts +11 -0
  70. package/dist/hooks/useCheckoutTimeEstimate.d.ts +2 -1
  71. package/dist/hooks/useCopyToClipboard.d.ts +7 -3
  72. package/dist/hooks/useFrogAccount.d.ts +335 -0
  73. package/dist/hooks/useIsUsBankrUser.d.ts +1 -0
  74. package/dist/hooks/usePaymentMethodIcon.d.ts +1 -0
  75. package/dist/hooks/usePaymentSources.d.ts +1 -1
  76. package/dist/hooks/useReceiveAmountLabel.d.ts +4 -0
  77. package/dist/hooks/useRelayBypass.d.ts +11 -7
  78. package/dist/hooks/useRelayExecutionInfo.d.ts +7 -0
  79. package/dist/hooks/useTokenTransfer.d.ts +3 -2
  80. package/dist/index.css +2723 -2456
  81. package/dist/index.d.ts +1 -1
  82. package/dist/index.js +17595 -14237
  83. package/dist/modals/CheckoutModal/ConfirmationStep/useQuoteRefresh.d.ts +5 -1
  84. package/dist/modals/CheckoutModal/InputAmount/utils.d.ts +1 -1
  85. package/dist/modals/CheckoutModal/LoadingAccount.d.ts +4 -1
  86. package/dist/modals/CheckoutModal/SourceChange/SourceChange.d.ts +8 -3
  87. package/dist/modals/CheckoutModal/VirtualFiatAccount/BridgeCustomer.d.ts +13 -0
  88. package/dist/modals/CheckoutModal/VirtualFiatAccount/BridgeKyc.d.ts +22 -0
  89. package/dist/modals/CheckoutModal/VirtualFiatAccount/ErrorScreen.d.ts +7 -0
  90. package/dist/modals/CheckoutModal/VirtualFiatAccount/FiatAccountDetail.d.ts +9 -0
  91. package/dist/modals/CheckoutModal/VirtualFiatAccount/KycIframe.d.ts +5 -0
  92. package/dist/modals/CheckoutModal/VirtualFiatAccount/VirtualFiatAccount.d.ts +9 -0
  93. package/dist/modals/CheckoutModal/stepTransition.d.ts +26 -1
  94. package/dist/modals/CheckoutModal/useNewCheckoutQuote.d.ts +1 -1
  95. package/dist/providers/FunkitCheckoutContext.d.ts +10 -3
  96. package/dist/providers/FunkitConfigContext.d.ts +1 -0
  97. package/dist/providers/FunkitQuoteContext.d.ts +4 -1
  98. package/dist/providers/FunkitThemeProvider.d.ts +24 -0
  99. package/dist/providers/GeneralWalletProvider.d.ts +10 -74
  100. package/dist/providers/ModalContext.d.ts +1 -1
  101. package/dist/themes/baseTheme.js +1 -1
  102. package/dist/themes/darkTheme.js +2 -2
  103. package/dist/themes/lightTheme.js +2 -2
  104. package/dist/utils/checkout.d.ts +20 -10
  105. package/dist/utils/flags/config.d.ts +49 -2
  106. package/dist/utils/flags/types.d.ts +2 -0
  107. package/dist/utils/mesh.d.ts +1 -0
  108. package/dist/utils/tokenIconUrl.d.ts +2 -0
  109. package/dist/wallets/walletConnectors/bifrostWallet/bifrostWallet.js +2 -2
  110. package/dist/wallets/walletConnectors/bitgetWallet/bitgetWallet.js +2 -2
  111. package/dist/wallets/walletConnectors/bybitWallet/bybitWallet.js +2 -2
  112. package/dist/wallets/walletConnectors/clvWallet/clvWallet.js +2 -2
  113. package/dist/wallets/walletConnectors/coin98Wallet/coin98Wallet.js +2 -2
  114. package/dist/wallets/walletConnectors/coreWallet/coreWallet.js +2 -2
  115. package/dist/wallets/walletConnectors/foxWallet/foxWallet.js +2 -2
  116. package/dist/wallets/walletConnectors/frontierWallet/frontierWallet.js +2 -2
  117. package/dist/wallets/walletConnectors/gateWallet/gateWallet.js +2 -2
  118. package/dist/wallets/walletConnectors/index.js +65 -65
  119. package/dist/wallets/walletConnectors/metaMaskWallet/metaMaskWallet.js +2 -2
  120. package/dist/wallets/walletConnectors/okxWallet/okxWallet.js +2 -2
  121. package/dist/wallets/walletConnectors/rainbowWallet/rainbowWallet.js +2 -2
  122. package/dist/wallets/walletConnectors/roninWallet/roninWallet.js +2 -2
  123. package/dist/wallets/walletConnectors/safepalWallet/safepalWallet.js +2 -2
  124. package/dist/wallets/walletConnectors/subWallet/subWallet.js +2 -2
  125. package/dist/wallets/walletConnectors/tokenPocketWallet/tokenPocketWallet.js +2 -2
  126. package/dist/wallets/walletConnectors/trustWallet/trustWallet.js +2 -2
  127. package/dist/wallets/walletConnectors/zerionWallet/zerionWallet.js +2 -2
  128. package/package.json +8 -7
  129. /package/dist/components/{TransferTokenDetails/TransferTokenDetails.css.d.ts → FunFeatureList/FunFeatureList.css.d.ts} +0 -0
@@ -3,23 +3,25 @@ import type { Address } from 'viem';
3
3
  import type { Config } from 'wagmi';
4
4
  import type { FunkitActiveCheckoutItem } from '~/providers/FunkitCheckoutContext';
5
5
  import type { LoginType } from '~/providers/GeneralWalletProvider';
6
- import { type CheckoutFees } from './fees';
6
+ import type { FunkitDirectExecutionInfo } from '~/hooks/useCheckoutDirectExecution';
7
+ import { type BrokerageDetails, type CheckoutFees } from './fees';
7
8
  import { type PaymentMethodInfo } from './paymentMethods';
8
9
  export interface FunkitCheckoutQuoteResult extends Omit<ApiFunkitCheckoutQuoteResult, 'finalFeesBreakdown'> {
9
10
  finalSpreadUsd: string;
10
11
  finalFeesBreakdown: CheckoutFees;
11
12
  }
12
- export declare function getCheckoutBaseQuote(checkoutItem: FunkitActiveCheckoutItem, userId: string, walletAddress: Address, apiKey: string, sponsorInitialTransferGasLimit: number, wagmiConfig: Config): Promise<CheckoutQuoteResponse>;
13
- export declare function getDirectExecutionBaseQuote({ toChainId, toTokenAddress, toTokenAmount, toTokenDecimals, fromTokenAddress, apiKey, }: {
14
- toChainId: string;
15
- toTokenAddress: Address;
16
- toTokenAmount: number;
17
- toTokenDecimals: number;
18
- fromTokenAddress: Address;
19
- apiKey: string;
20
- }): Promise<CheckoutQuoteResponse>;
21
- export declare function getQuoteFinalEstimation(baseQuote: CheckoutQuoteResponse, checkoutItem: FunkitActiveCheckoutItem, newPaymentMethodInfo: PaymentMethodInfo, wagmiConfig: Config, apiKey: string, loginType: LoginType, enableFrogProxyServer?: boolean): Promise<FunkitCheckoutQuoteResult>;
22
- export declare function getAvailableAssetAmount(checkoutItem: FunkitActiveCheckoutItem, newPaymentMethodInfo: PaymentMethodInfo, finalEstimation: FunkitCheckoutQuoteResult, wagmiConfig: Config, walletAddress: Address): Promise<number | undefined>;
13
+ export declare function getCheckoutBaseQuote(checkoutItem: FunkitActiveCheckoutItem, userId: string, walletAddress: Address, apiKey: string, sponsorInitialTransferGasLimit: number, wagmiConfig: Config, directExecutionInfo: FunkitDirectExecutionInfo): Promise<CheckoutQuoteResponse>;
14
+ export declare function getQuoteFinalEstimation(baseQuote: CheckoutQuoteResponse, checkoutItem: FunkitActiveCheckoutItem, newPaymentMethodInfo: PaymentMethodInfo, wagmiConfig: Config, apiKey: string, loginType: LoginType, enableFrogProxyServer?: boolean): Promise<{
15
+ finalEstimation: FunkitCheckoutQuoteResult;
16
+ brokerage?: BrokerageDetails;
17
+ }>;
18
+ export interface CheckedAssetAmount {
19
+ isAboveMaximum: boolean;
20
+ isBelowMinimum: boolean;
21
+ maxTargetAssetAmount?: number;
22
+ minTargetAssetAmount?: number;
23
+ }
24
+ export declare function checkAssetAmount(checkoutItem: FunkitActiveCheckoutItem, newPaymentMethodInfo: PaymentMethodInfo, finalEstimation: FunkitCheckoutQuoteResult, wagmiConfig: Config, walletAddress: Address, brokerage?: BrokerageDetails): Promise<CheckedAssetAmount>;
23
25
  export interface CheckoutQuoteParams {
24
26
  checkoutItem: FunkitActiveCheckoutItem;
25
27
  userId: string;
@@ -30,9 +32,10 @@ export interface CheckoutQuoteParams {
30
32
  wagmiConfig: Config;
31
33
  loginType: LoginType;
32
34
  enableFrogProxyServer?: boolean;
35
+ directExecutionInfo: FunkitDirectExecutionInfo;
33
36
  }
34
- export declare function getQuoteAndEstimation({ checkoutItem, userId, walletAddress, apiKey, sponsorInitialTransferGasLimit, newPaymentMethodInfo, wagmiConfig, loginType, enableFrogProxyServer, }: CheckoutQuoteParams): Promise<{
37
+ export declare function getQuoteAndEstimation({ checkoutItem, userId, walletAddress, apiKey, sponsorInitialTransferGasLimit, newPaymentMethodInfo, wagmiConfig, loginType, enableFrogProxyServer, directExecutionInfo, }: CheckoutQuoteParams): Promise<{
35
38
  baseQuote: CheckoutQuoteResponse;
39
+ checkedAssetAmount: CheckedAssetAmount;
36
40
  finalEstimation: FunkitCheckoutQuoteResult;
37
- availableAssetAmount: number | undefined;
38
41
  }>;
@@ -0,0 +1,52 @@
1
+ import type { CheckoutQuoteResponse } from '@funkit/api-base';
2
+ import { type Execute } from '@reservoir0x/relay-sdk';
3
+ import type { Address, WalletClient } from 'viem';
4
+ export type RelayExecutionStatus = 'refund' | 'delayed' | 'waiting' | 'failure' | 'pending' | 'success';
5
+ export interface RelayExecutionInfo {
6
+ status: RelayExecutionStatus;
7
+ details: string;
8
+ /** Incoming transaction hashes */
9
+ inTxHashes: string[];
10
+ /** Outgoing transaction hashes */
11
+ txHashes: string[];
12
+ /** The last timestamp the data was updated in milliseconds */
13
+ time: number;
14
+ originChainId: number;
15
+ destinationChainId: number;
16
+ }
17
+ export declare const TERMINAL_RELAY_STATUSES: RelayExecutionStatus[];
18
+ export declare const RELAY_TRANSACTION_PAGE_URL = "https://relay.link/transaction/";
19
+ export declare const FUN_RELAY_REVENUE_WALLET = "0xb61562d83aEC43a050A06BED12Ac2bD8f9BFfd5E";
20
+ export declare const FUN_RELAY_REFERRER = "funxyz";
21
+ export declare const RELAY_NATIVE_TOKEN = "0x0000000000000000000000000000000000000000";
22
+ /**
23
+ * Convert a token address within Funkit the corresponding Relay token address.
24
+ */
25
+ export declare function convertFunToRelayTokenAddress(address: string): string;
26
+ export declare function parseRelayFees({ relayFeeItem, }: {
27
+ relayFeeItem: Execute['fees'];
28
+ }): {
29
+ relayGasFeesUsd: number;
30
+ totalLpFeesUsd: number;
31
+ totalFeesUsd: number;
32
+ totalFeesFromAmount: number;
33
+ totalFeesFromAmountBaseUnit: bigint;
34
+ };
35
+ export declare function computeFunRelayFeeBps(): string;
36
+ export declare function getRelayQuote({ toChainId, toTokenAddress, toTokenAmount, toTokenDecimals, fromChainId, fromTokenAddress, recipientAddress, userAddress, }: {
37
+ toChainId: string;
38
+ toTokenAddress: Address;
39
+ toTokenAmount: number;
40
+ toTokenDecimals: number;
41
+ fromChainId: string;
42
+ fromTokenAddress: Address;
43
+ recipientAddress: Address | undefined;
44
+ userAddress: Address | undefined;
45
+ }): Promise<CheckoutQuoteResponse>;
46
+ export declare function executeRelayQuote({ relayQuote, walletClient, stepMessageSetter, onConfirmed, onError, }: {
47
+ relayQuote: Execute;
48
+ walletClient: WalletClient | undefined;
49
+ stepMessageSetter: (m: string) => void;
50
+ onConfirmed: (txHash: string) => Promise<void>;
51
+ onError: (error: Error) => Promise<void>;
52
+ }): Promise<void>;
@@ -14,7 +14,6 @@ export declare function useCheckoutAccountBalanceTransfer(): {
14
14
  bypassInit: boolean;
15
15
  apiKey?: string;
16
16
  nonce?: bigint | undefined;
17
- logger?: import("@funkit/api-base").Logger | undefined;
18
17
  fee?: {
19
18
  token?: string;
20
19
  amount?: number;
@@ -22,6 +21,7 @@ export declare function useCheckoutAccountBalanceTransfer(): {
22
21
  recipient: import("viem").Address;
23
22
  } | undefined;
24
23
  skipDBAction?: boolean | undefined;
24
+ logger?: import("@funkit/api-base").Logger | undefined;
25
25
  };
26
26
  } | {
27
27
  rFunWallet: null;
@@ -0,0 +1,30 @@
1
+ import { type CheckoutQuoteResponse, DirectExecutionType } from '@funkit/api-base';
2
+ import type { Address, Hex } from 'viem';
3
+ import type { FunkitCheckoutQuoteResult } from '~/domains/quote';
4
+ import type { FunkitActiveCheckoutItem, FunkitCheckoutActionParams } from '~/providers/FunkitCheckoutContext';
5
+ interface DirectExecutionQuoteRequestParams {
6
+ toChainId: string;
7
+ toTokenAddress: Address;
8
+ toTokenAmount: number;
9
+ toTokenDecimals: number;
10
+ fromChainId: string;
11
+ fromTokenAddress: Address;
12
+ recipientAddress: Address;
13
+ }
14
+ interface DirectExecutionStartParams {
15
+ checkoutItem: FunkitActiveCheckoutItem;
16
+ stepMessageSetter: (m: string) => void;
17
+ actionsParams: FunkitCheckoutActionParams[];
18
+ latestQuote: FunkitCheckoutQuoteResult;
19
+ }
20
+ export interface FunkitDirectExecutionInfo {
21
+ isDirectExecution: boolean;
22
+ directExecutionType: DirectExecutionType | null;
23
+ getDirectExecutionQuote: (params: DirectExecutionQuoteRequestParams) => Promise<CheckoutQuoteResponse | null>;
24
+ executeDirectExecution: (params: DirectExecutionStartParams) => Promise<Hex | null>;
25
+ }
26
+ interface UseCheckoutDirectExecutionReturn {
27
+ getDirectExecutionInfo: (checkoutItem: FunkitActiveCheckoutItem | null) => FunkitDirectExecutionInfo;
28
+ }
29
+ export declare function useCheckoutDirectExecution(): UseCheckoutDirectExecutionReturn;
30
+ export {};
@@ -0,0 +1,11 @@
1
+ import { CheckoutRefundState, CheckoutState, type DirectExecution } from '@funkit/api-base';
2
+ export declare function useCheckoutDirectExecutionHistory({ directExecution, }: {
3
+ directExecution: DirectExecution | undefined;
4
+ }): {
5
+ state: CheckoutState;
6
+ refundState: CheckoutRefundState | undefined;
7
+ isRefunded: boolean;
8
+ isCompleted: boolean;
9
+ isFailed: boolean;
10
+ isDelayed: boolean;
11
+ };
@@ -4,4 +4,5 @@ import { PaymentMethod } from '~/domains/paymentMethods';
4
4
  * https://linear.app/funxyz/issue/PE-775/sdkconnectwith-next-pm-requests
5
5
  * @returns time estimation in seconds
6
6
  */
7
- export declare function useCheckoutTimeEstimate(originalTimeEstimationMs: number | undefined, paymentMethod?: PaymentMethod): number;
7
+ export declare function useCheckoutTimeEstimate(originalTimeEstimationMs: number | undefined, paymentMethod?: PaymentMethod, //TODO: questionable
8
+ bypassFlag?: boolean): number;
@@ -1,4 +1,8 @@
1
- export declare const useCopyToClipboard: (text: string) => {
2
- copied: boolean;
3
- copy: () => void;
1
+ /**
2
+ * Handles copy action on provided text
3
+ * isCopied state is reverted to default value after provided delay
4
+ */
5
+ export declare const useCopyToClipboard: (text: string, delay?: number) => {
6
+ isCopied: boolean;
7
+ handleCopy: () => void;
4
8
  };
@@ -0,0 +1,335 @@
1
+ import { type BridgeVirtualBankAccount, type Guid } from '@funkit/api-base';
2
+ import { type AllFiatAccounts } from '~/domains/bridge';
3
+ export declare function useFrogAccounts(): import("@tanstack/react-query").UseQueryResult<import("@funkit/api-base").SubAccount[] | null, Error>;
4
+ export declare function useClearFrogAccountsCache(): {
5
+ clearFrogAccounts: () => void;
6
+ clearVirtualFiatAccounts: () => void;
7
+ };
8
+ export declare function useVirtualFiatAccounts(): {
9
+ isLoading: boolean;
10
+ data: AllFiatAccounts;
11
+ error: Error;
12
+ isError: true;
13
+ isPending: false;
14
+ isLoadingError: false;
15
+ isRefetchError: true;
16
+ isSuccess: false;
17
+ isPlaceholderData: false;
18
+ status: "error";
19
+ dataUpdatedAt: number;
20
+ errorUpdatedAt: number;
21
+ failureCount: number;
22
+ failureReason: Error | null;
23
+ errorUpdateCount: number;
24
+ isFetched: boolean;
25
+ isFetchedAfterMount: boolean;
26
+ isFetching: boolean;
27
+ isInitialLoading: boolean;
28
+ isPaused: boolean;
29
+ isRefetching: boolean;
30
+ isStale: boolean;
31
+ refetch: (options?: import("@tanstack/react-query").RefetchOptions) => Promise<import("@tanstack/react-query").QueryObserverResult<AllFiatAccounts, Error>>;
32
+ fetchStatus: import("@tanstack/react-query").FetchStatus;
33
+ promise: Promise<AllFiatAccounts>;
34
+ } | {
35
+ isLoading: boolean;
36
+ data: AllFiatAccounts;
37
+ error: null;
38
+ isError: false;
39
+ isPending: false;
40
+ isLoadingError: false;
41
+ isRefetchError: false;
42
+ isSuccess: true;
43
+ isPlaceholderData: false;
44
+ status: "success";
45
+ dataUpdatedAt: number;
46
+ errorUpdatedAt: number;
47
+ failureCount: number;
48
+ failureReason: Error | null;
49
+ errorUpdateCount: number;
50
+ isFetched: boolean;
51
+ isFetchedAfterMount: boolean;
52
+ isFetching: boolean;
53
+ isInitialLoading: boolean;
54
+ isPaused: boolean;
55
+ isRefetching: boolean;
56
+ isStale: boolean;
57
+ refetch: (options?: import("@tanstack/react-query").RefetchOptions) => Promise<import("@tanstack/react-query").QueryObserverResult<AllFiatAccounts, Error>>;
58
+ fetchStatus: import("@tanstack/react-query").FetchStatus;
59
+ promise: Promise<AllFiatAccounts>;
60
+ } | {
61
+ isLoading: boolean;
62
+ data: undefined;
63
+ error: Error;
64
+ isError: true;
65
+ isPending: false;
66
+ isLoadingError: true;
67
+ isRefetchError: false;
68
+ isSuccess: false;
69
+ isPlaceholderData: false;
70
+ status: "error";
71
+ dataUpdatedAt: number;
72
+ errorUpdatedAt: number;
73
+ failureCount: number;
74
+ failureReason: Error | null;
75
+ errorUpdateCount: number;
76
+ isFetched: boolean;
77
+ isFetchedAfterMount: boolean;
78
+ isFetching: boolean;
79
+ isInitialLoading: boolean;
80
+ isPaused: boolean;
81
+ isRefetching: boolean;
82
+ isStale: boolean;
83
+ refetch: (options?: import("@tanstack/react-query").RefetchOptions) => Promise<import("@tanstack/react-query").QueryObserverResult<AllFiatAccounts, Error>>;
84
+ fetchStatus: import("@tanstack/react-query").FetchStatus;
85
+ promise: Promise<AllFiatAccounts>;
86
+ } | {
87
+ isLoading: boolean;
88
+ data: undefined;
89
+ error: null;
90
+ isError: false;
91
+ isPending: true;
92
+ isLoadingError: false;
93
+ isRefetchError: false;
94
+ isSuccess: false;
95
+ isPlaceholderData: false;
96
+ status: "pending";
97
+ dataUpdatedAt: number;
98
+ errorUpdatedAt: number;
99
+ failureCount: number;
100
+ failureReason: Error | null;
101
+ errorUpdateCount: number;
102
+ isFetched: boolean;
103
+ isFetchedAfterMount: boolean;
104
+ isFetching: boolean;
105
+ isInitialLoading: boolean;
106
+ isPaused: boolean;
107
+ isRefetching: boolean;
108
+ isStale: boolean;
109
+ refetch: (options?: import("@tanstack/react-query").RefetchOptions) => Promise<import("@tanstack/react-query").QueryObserverResult<AllFiatAccounts, Error>>;
110
+ fetchStatus: import("@tanstack/react-query").FetchStatus;
111
+ promise: Promise<AllFiatAccounts>;
112
+ } | {
113
+ isLoading: boolean;
114
+ data: undefined;
115
+ error: null;
116
+ isError: false;
117
+ isPending: true;
118
+ isLoadingError: false;
119
+ isRefetchError: false;
120
+ isSuccess: false;
121
+ isPlaceholderData: false;
122
+ status: "pending";
123
+ dataUpdatedAt: number;
124
+ errorUpdatedAt: number;
125
+ failureCount: number;
126
+ failureReason: Error | null;
127
+ errorUpdateCount: number;
128
+ isFetched: boolean;
129
+ isFetchedAfterMount: boolean;
130
+ isFetching: boolean;
131
+ isInitialLoading: boolean;
132
+ isPaused: boolean;
133
+ isRefetching: boolean;
134
+ isStale: boolean;
135
+ refetch: (options?: import("@tanstack/react-query").RefetchOptions) => Promise<import("@tanstack/react-query").QueryObserverResult<AllFiatAccounts, Error>>;
136
+ fetchStatus: import("@tanstack/react-query").FetchStatus;
137
+ promise: Promise<AllFiatAccounts>;
138
+ } | {
139
+ isLoading: boolean;
140
+ data: AllFiatAccounts;
141
+ isError: false;
142
+ error: null;
143
+ isPending: false;
144
+ isLoadingError: false;
145
+ isRefetchError: false;
146
+ isSuccess: true;
147
+ isPlaceholderData: true;
148
+ status: "success";
149
+ dataUpdatedAt: number;
150
+ errorUpdatedAt: number;
151
+ failureCount: number;
152
+ failureReason: Error | null;
153
+ errorUpdateCount: number;
154
+ isFetched: boolean;
155
+ isFetchedAfterMount: boolean;
156
+ isFetching: boolean;
157
+ isInitialLoading: boolean;
158
+ isPaused: boolean;
159
+ isRefetching: boolean;
160
+ isStale: boolean;
161
+ refetch: (options?: import("@tanstack/react-query").RefetchOptions) => Promise<import("@tanstack/react-query").QueryObserverResult<AllFiatAccounts, Error>>;
162
+ fetchStatus: import("@tanstack/react-query").FetchStatus;
163
+ promise: Promise<AllFiatAccounts>;
164
+ };
165
+ export declare function useMatchingVirtualFiatAccount(accounts: AllFiatAccounts | undefined): BridgeVirtualBankAccount | undefined;
166
+ export type KycLinkLoad = {
167
+ kycLink?: string;
168
+ guid: Guid;
169
+ };
170
+ export declare function useLoadKycLink(linkLoad: KycLinkLoad): {
171
+ data: string | undefined;
172
+ error: Error;
173
+ isError: true;
174
+ isPending: false;
175
+ isLoading: false;
176
+ isLoadingError: false;
177
+ isRefetchError: true;
178
+ isSuccess: false;
179
+ isPlaceholderData: false;
180
+ status: "error";
181
+ dataUpdatedAt: number;
182
+ errorUpdatedAt: number;
183
+ failureCount: number;
184
+ failureReason: Error | null;
185
+ errorUpdateCount: number;
186
+ isFetched: boolean;
187
+ isFetchedAfterMount: boolean;
188
+ isFetching: boolean;
189
+ isInitialLoading: boolean;
190
+ isPaused: boolean;
191
+ isRefetching: boolean;
192
+ isStale: boolean;
193
+ refetch: (options?: import("@tanstack/react-query").RefetchOptions) => Promise<import("@tanstack/react-query").QueryObserverResult<string, Error>>;
194
+ fetchStatus: import("@tanstack/react-query").FetchStatus;
195
+ promise: Promise<string>;
196
+ } | {
197
+ data: string | undefined;
198
+ error: null;
199
+ isError: false;
200
+ isPending: false;
201
+ isLoading: false;
202
+ isLoadingError: false;
203
+ isRefetchError: false;
204
+ isSuccess: true;
205
+ isPlaceholderData: false;
206
+ status: "success";
207
+ dataUpdatedAt: number;
208
+ errorUpdatedAt: number;
209
+ failureCount: number;
210
+ failureReason: Error | null;
211
+ errorUpdateCount: number;
212
+ isFetched: boolean;
213
+ isFetchedAfterMount: boolean;
214
+ isFetching: boolean;
215
+ isInitialLoading: boolean;
216
+ isPaused: boolean;
217
+ isRefetching: boolean;
218
+ isStale: boolean;
219
+ refetch: (options?: import("@tanstack/react-query").RefetchOptions) => Promise<import("@tanstack/react-query").QueryObserverResult<string, Error>>;
220
+ fetchStatus: import("@tanstack/react-query").FetchStatus;
221
+ promise: Promise<string>;
222
+ } | {
223
+ data: string | undefined;
224
+ error: Error;
225
+ isError: true;
226
+ isPending: false;
227
+ isLoading: false;
228
+ isLoadingError: true;
229
+ isRefetchError: false;
230
+ isSuccess: false;
231
+ isPlaceholderData: false;
232
+ status: "error";
233
+ dataUpdatedAt: number;
234
+ errorUpdatedAt: number;
235
+ failureCount: number;
236
+ failureReason: Error | null;
237
+ errorUpdateCount: number;
238
+ isFetched: boolean;
239
+ isFetchedAfterMount: boolean;
240
+ isFetching: boolean;
241
+ isInitialLoading: boolean;
242
+ isPaused: boolean;
243
+ isRefetching: boolean;
244
+ isStale: boolean;
245
+ refetch: (options?: import("@tanstack/react-query").RefetchOptions) => Promise<import("@tanstack/react-query").QueryObserverResult<string, Error>>;
246
+ fetchStatus: import("@tanstack/react-query").FetchStatus;
247
+ promise: Promise<string>;
248
+ } | {
249
+ data: string | undefined;
250
+ error: null;
251
+ isError: false;
252
+ isPending: true;
253
+ isLoading: true;
254
+ isLoadingError: false;
255
+ isRefetchError: false;
256
+ isSuccess: false;
257
+ isPlaceholderData: false;
258
+ status: "pending";
259
+ dataUpdatedAt: number;
260
+ errorUpdatedAt: number;
261
+ failureCount: number;
262
+ failureReason: Error | null;
263
+ errorUpdateCount: number;
264
+ isFetched: boolean;
265
+ isFetchedAfterMount: boolean;
266
+ isFetching: boolean;
267
+ isInitialLoading: boolean;
268
+ isPaused: boolean;
269
+ isRefetching: boolean;
270
+ isStale: boolean;
271
+ refetch: (options?: import("@tanstack/react-query").RefetchOptions) => Promise<import("@tanstack/react-query").QueryObserverResult<string, Error>>;
272
+ fetchStatus: import("@tanstack/react-query").FetchStatus;
273
+ promise: Promise<string>;
274
+ } | {
275
+ data: string | undefined;
276
+ error: null;
277
+ isError: false;
278
+ isPending: true;
279
+ isLoadingError: false;
280
+ isRefetchError: false;
281
+ isSuccess: false;
282
+ isPlaceholderData: false;
283
+ status: "pending";
284
+ dataUpdatedAt: number;
285
+ errorUpdatedAt: number;
286
+ failureCount: number;
287
+ failureReason: Error | null;
288
+ errorUpdateCount: number;
289
+ isFetched: boolean;
290
+ isFetchedAfterMount: boolean;
291
+ isFetching: boolean;
292
+ isLoading: boolean;
293
+ isInitialLoading: boolean;
294
+ isPaused: boolean;
295
+ isRefetching: boolean;
296
+ isStale: boolean;
297
+ refetch: (options?: import("@tanstack/react-query").RefetchOptions) => Promise<import("@tanstack/react-query").QueryObserverResult<string, Error>>;
298
+ fetchStatus: import("@tanstack/react-query").FetchStatus;
299
+ promise: Promise<string>;
300
+ } | {
301
+ data: string | undefined;
302
+ isError: false;
303
+ error: null;
304
+ isPending: false;
305
+ isLoading: false;
306
+ isLoadingError: false;
307
+ isRefetchError: false;
308
+ isSuccess: true;
309
+ isPlaceholderData: true;
310
+ status: "success";
311
+ dataUpdatedAt: number;
312
+ errorUpdatedAt: number;
313
+ failureCount: number;
314
+ failureReason: Error | null;
315
+ errorUpdateCount: number;
316
+ isFetched: boolean;
317
+ isFetchedAfterMount: boolean;
318
+ isFetching: boolean;
319
+ isInitialLoading: boolean;
320
+ isPaused: boolean;
321
+ isRefetching: boolean;
322
+ isStale: boolean;
323
+ refetch: (options?: import("@tanstack/react-query").RefetchOptions) => Promise<import("@tanstack/react-query").QueryObserverResult<string, Error>>;
324
+ fetchStatus: import("@tanstack/react-query").FetchStatus;
325
+ promise: Promise<string>;
326
+ };
327
+ type Result<T, E> = {
328
+ type: 'success';
329
+ data: T;
330
+ } | {
331
+ type: 'error';
332
+ error: E;
333
+ };
334
+ export declare function useCreateVirtualBankAccount(): () => Promise<Result<BridgeVirtualBankAccount, Error>>;
335
+ export {};
@@ -0,0 +1 @@
1
+ export declare function useIsUsBankrUser(): boolean;
@@ -4,6 +4,7 @@ export declare const PAYMENT_METHOD_ICONS: {
4
4
  brokerage: (size: number) => React.JSX.Element;
5
5
  card: (size: number) => React.JSX.Element;
6
6
  token_transfer: (size: number) => React.JSX.Element;
7
+ virtual_bank: (size: number) => React.JSX.Element;
7
8
  };
8
9
  /**
9
10
  Reference ENG-716
@@ -1,6 +1,6 @@
1
1
  import { type ConnectablePaymentMethodInfo, PaymentMethod } from '~/domains/paymentMethods';
2
2
  export declare const usePaymentSources: (paymentMethodInfo: ConnectablePaymentMethodInfo | null, targetChainId: string) => {
3
- preferred: (import("~/domains/paymentMethods").PaymentMethodBrokerageInfo | import("~/domains/paymentMethods").PaymentMethodAccountInfo)[] | PaymentMethod[];
3
+ preferred: (import("~/domains/paymentMethods").PaymentMethodBrokerageInfo | import("~/domains/paymentMethods").PaymentMethodAccountInfo | import("~/domains/paymentMethods").PaymentMethodVirtualBankInfo)[] | PaymentMethod[];
4
4
  moreSources: PaymentMethod[];
5
5
  };
6
6
  export declare const useRemainingPaymentSourcesCount: (targetChainId: string) => number;
@@ -0,0 +1,4 @@
1
+ import { DirectExecutionType } from '@funkit/api-base';
2
+ export declare function useReceiveAmountLabel({ directExecutionType, }: {
3
+ directExecutionType?: DirectExecutionType | null;
4
+ }): string;
@@ -1,12 +1,16 @@
1
+ import { PaymentMethod } from '~/domains/paymentMethods';
1
2
  export interface RelayBypassChainsAndTokens {
2
3
  [chainId: number]: string[];
3
4
  }
4
- export interface UseRelayBypassReturn {
5
- isEnabled: boolean;
6
- }
7
- export declare function useRelayBypass({ fromChainId, fromTokenAddress, toChainId, toTokenAddress, }: {
8
- fromChainId: number;
5
+ interface GetIsRelayEnabledParams {
6
+ fromChainId: string;
9
7
  fromTokenAddress: string;
10
- toChainId: number;
8
+ toChainId: string;
11
9
  toTokenAddress: string;
12
- }): UseRelayBypassReturn;
10
+ paymentMethod: PaymentMethod | undefined;
11
+ }
12
+ export interface UseRelayBypassReturn {
13
+ getIsRelayEnabled: (params: GetIsRelayEnabledParams) => boolean;
14
+ }
15
+ export declare function useRelayBypass(): UseRelayBypassReturn;
16
+ export {};
@@ -0,0 +1,7 @@
1
+ import { type RelayExecutionInfo } from '~/domains/relay';
2
+ export declare function useRelayExecutionInfo({ relayRequestId, }: {
3
+ relayRequestId: string | undefined;
4
+ }): {
5
+ relayExecutionInfo: RelayExecutionInfo | undefined;
6
+ isLoadingRelayExecutionInfo: boolean;
7
+ };
@@ -6,12 +6,13 @@ export type FeeValue = {
6
6
  interface UseTokenTransferResult {
7
7
  /** where money goes to first */
8
8
  depositAddress: FunAddress | undefined;
9
+ depositAddressTooltip: string;
9
10
  /** the final destination of the money */
10
11
  recipientAddr: string;
11
12
  minTransferUsd: number;
12
13
  showOriginalRecipient: boolean;
13
- estPriceImpact: FeeValue;
14
- maxSlippage: FeeValue;
14
+ estPriceImpact: FeeValue | undefined;
15
+ maxSlippage: FeeValue | undefined;
15
16
  }
16
17
  export declare const useTokenTransfer: (selectedChainId: number, selectedToken: string) => UseTokenTransferResult;
17
18
  export {};