thirdweb 5.64.1 → 5.64.3-nightly-ddec3dadcc260e0d4d0ed2b43c502e0915a14203-20241029000326
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/auth/core/generate-login-payload.js +1 -1
- package/dist/cjs/auth/core/generate-login-payload.js.map +1 -1
- package/dist/cjs/extensions/prebuilts/deploy-vote.js +13 -13
- package/dist/cjs/extensions/prebuilts/deploy-vote.js.map +1 -1
- package/dist/cjs/react/core/hooks/transaction/useSendTransaction.js +19 -1
- package/dist/cjs/react/core/hooks/transaction/useSendTransaction.js.map +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/BuyScreen.js +27 -78
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/BuyScreen.js.map +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/TransactionModeScreen.js +27 -13
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/TransactionModeScreen.js.map +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/WalletSelectorButton.js +50 -19
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/WalletSelectorButton.js.map +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/main/useEnabledPaymentMethods.js +0 -2
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/main/useEnabledPaymentMethods.js.map +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/swap/PayWithCrypto.js +21 -32
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/swap/PayWithCrypto.js.map +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/swap/PaymentSelectionScreen.js +138 -0
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/swap/PaymentSelectionScreen.js.map +1 -0
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/swap/useSwapSupportedChains.js +1 -0
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/swap/useSwapSupportedChains.js.map +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/screens/formatTokenBalance.js +2 -2
- package/dist/cjs/react/web/ui/ConnectWallet/screens/formatTokenBalance.js.map +1 -1
- package/dist/cjs/version.js +1 -1
- package/dist/cjs/version.js.map +1 -1
- package/dist/cjs/wallets/smart/lib/bundler.js +3 -1
- package/dist/cjs/wallets/smart/lib/bundler.js.map +1 -1
- package/dist/esm/auth/core/generate-login-payload.js +1 -1
- package/dist/esm/auth/core/generate-login-payload.js.map +1 -1
- package/dist/esm/extensions/prebuilts/deploy-vote.js +13 -13
- package/dist/esm/extensions/prebuilts/deploy-vote.js.map +1 -1
- package/dist/esm/react/core/hooks/transaction/useSendTransaction.js +19 -1
- package/dist/esm/react/core/hooks/transaction/useSendTransaction.js.map +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/BuyScreen.js +29 -80
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/BuyScreen.js.map +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/TransactionModeScreen.js +28 -14
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/TransactionModeScreen.js.map +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/WalletSelectorButton.js +50 -19
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/WalletSelectorButton.js.map +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/main/useEnabledPaymentMethods.js +0 -2
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/main/useEnabledPaymentMethods.js.map +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/swap/PayWithCrypto.js +21 -32
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/swap/PayWithCrypto.js.map +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/swap/PaymentSelectionScreen.js +135 -0
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/swap/PaymentSelectionScreen.js.map +1 -0
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/swap/useSwapSupportedChains.js +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/swap/useSwapSupportedChains.js.map +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/screens/formatTokenBalance.js +2 -2
- package/dist/esm/react/web/ui/ConnectWallet/screens/formatTokenBalance.js.map +1 -1
- package/dist/esm/version.js +1 -1
- package/dist/esm/version.js.map +1 -1
- package/dist/esm/wallets/smart/lib/bundler.js +3 -1
- package/dist/esm/wallets/smart/lib/bundler.js.map +1 -1
- package/dist/types/react/core/hooks/transaction/useSendTransaction.d.ts.map +1 -1
- package/dist/types/react/web/ui/ConnectWallet/screens/Buy/BuyScreen.d.ts.map +1 -1
- package/dist/types/react/web/ui/ConnectWallet/screens/Buy/TransactionModeScreen.d.ts +1 -1
- package/dist/types/react/web/ui/ConnectWallet/screens/Buy/TransactionModeScreen.d.ts.map +1 -1
- package/dist/types/react/web/ui/ConnectWallet/screens/Buy/WalletSelectorButton.d.ts +12 -8
- package/dist/types/react/web/ui/ConnectWallet/screens/Buy/WalletSelectorButton.d.ts.map +1 -1
- package/dist/types/react/web/ui/ConnectWallet/screens/Buy/main/types.d.ts +1 -1
- package/dist/types/react/web/ui/ConnectWallet/screens/Buy/main/types.d.ts.map +1 -1
- package/dist/types/react/web/ui/ConnectWallet/screens/Buy/main/useEnabledPaymentMethods.d.ts +0 -1
- package/dist/types/react/web/ui/ConnectWallet/screens/Buy/main/useEnabledPaymentMethods.d.ts.map +1 -1
- package/dist/types/react/web/ui/ConnectWallet/screens/Buy/swap/PayWithCrypto.d.ts +1 -2
- package/dist/types/react/web/ui/ConnectWallet/screens/Buy/swap/PayWithCrypto.d.ts.map +1 -1
- package/dist/types/react/web/ui/ConnectWallet/screens/Buy/swap/PaymentSelectionScreen.d.ts +30 -0
- package/dist/types/react/web/ui/ConnectWallet/screens/Buy/swap/PaymentSelectionScreen.d.ts.map +1 -0
- package/dist/types/react/web/ui/ConnectWallet/screens/Buy/swap/useSwapSupportedChains.d.ts +1 -0
- package/dist/types/react/web/ui/ConnectWallet/screens/Buy/swap/useSwapSupportedChains.d.ts.map +1 -1
- package/dist/types/react/web/ui/ConnectWallet/screens/formatTokenBalance.d.ts +1 -1
- package/dist/types/react/web/ui/ConnectWallet/screens/formatTokenBalance.d.ts.map +1 -1
- package/dist/types/react/web/ui/components/token/TokenSymbol.d.ts +1 -1
- package/dist/types/react/web/ui/components/token/TokenSymbol.d.ts.map +1 -1
- package/dist/types/version.d.ts +1 -1
- package/dist/types/version.d.ts.map +1 -1
- package/dist/types/wallets/smart/lib/bundler.d.ts.map +1 -1
- package/dist/types/wallets/smart/types.d.ts +1 -1
- package/dist/types/wallets/smart/types.d.ts.map +1 -1
- package/package.json +11 -11
- package/src/auth/core/generate-login-payload.test.ts +1 -1
- package/src/auth/core/generate-login-payload.ts +1 -1
- package/src/extensions/prebuilts/deploy-vote.test.ts +1 -46
- package/src/extensions/prebuilts/deploy-vote.ts +21 -20
- package/src/extensions/split/split.test.ts +76 -0
- package/src/extensions/unstoppable-domains/read/resolveName.test.ts +20 -17
- package/src/extensions/vote/{read/proposalExists.test.ts → vote.test.ts} +21 -52
- package/src/react/core/hooks/transaction/useSendTransaction.ts +34 -4
- package/src/react/web/ui/ConnectWallet/screens/Buy/BuyScreen.tsx +35 -148
- package/src/react/web/ui/ConnectWallet/screens/Buy/TransactionModeScreen.tsx +62 -31
- package/src/react/web/ui/ConnectWallet/screens/Buy/WalletSelectorButton.tsx +136 -48
- package/src/react/web/ui/ConnectWallet/screens/Buy/main/types.ts +1 -1
- package/src/react/web/ui/ConnectWallet/screens/Buy/main/useEnabledPaymentMethods.ts +0 -4
- package/src/react/web/ui/ConnectWallet/screens/Buy/swap/PayWithCrypto.tsx +57 -71
- package/src/react/web/ui/ConnectWallet/screens/Buy/swap/PaymentSelectionScreen.tsx +251 -0
- package/src/react/web/ui/ConnectWallet/screens/Buy/swap/useSwapSupportedChains.ts +1 -1
- package/src/react/web/ui/ConnectWallet/screens/formatTokenBalance.ts +2 -1
- package/src/react/web/ui/components/token/TokenSymbol.tsx +2 -2
- package/src/version.ts +1 -1
- package/src/wallets/smart/lib/bundler.ts +4 -1
- package/src/wallets/smart/smart-wallet-dev.test.ts +23 -4
- package/src/wallets/smart/smart-wallet-integration.test.ts +11 -8
- package/src/wallets/smart/types.ts +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/icons/GenericWalletIcon.js +0 -12
- package/dist/cjs/react/web/ui/ConnectWallet/icons/GenericWalletIcon.js.map +0 -1
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/swap/WalletSwitcherDrawerContent.js +0 -34
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/swap/WalletSwitcherDrawerContent.js.map +0 -1
- package/dist/esm/react/web/ui/ConnectWallet/icons/GenericWalletIcon.js +0 -8
- package/dist/esm/react/web/ui/ConnectWallet/icons/GenericWalletIcon.js.map +0 -1
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/swap/WalletSwitcherDrawerContent.js +0 -31
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/swap/WalletSwitcherDrawerContent.js.map +0 -1
- package/dist/types/react/web/ui/ConnectWallet/icons/GenericWalletIcon.d.ts +0 -6
- package/dist/types/react/web/ui/ConnectWallet/icons/GenericWalletIcon.d.ts.map +0 -1
- package/dist/types/react/web/ui/ConnectWallet/screens/Buy/swap/WalletSwitcherDrawerContent.d.ts +0 -14
- package/dist/types/react/web/ui/ConnectWallet/screens/Buy/swap/WalletSwitcherDrawerContent.d.ts.map +0 -1
- package/src/extensions/prebuilts/deploy-split.test.ts +0 -31
- package/src/extensions/split/read/getAllRecipientsAddresses.test.ts +0 -41
- package/src/extensions/split/read/getAllRecipientsPercentages.test.ts +0 -50
- package/src/extensions/split/read/getRecipientSplitPercentage.test.ts +0 -49
- package/src/react/web/ui/ConnectWallet/icons/GenericWalletIcon.tsx +0 -22
- package/src/react/web/ui/ConnectWallet/screens/Buy/swap/WalletSwitcherDrawerContent.tsx +0 -83
@@ -4,20 +4,26 @@ import { NATIVE_TOKEN_ADDRESS } from "../../../../../../constants/addresses.js";
|
|
4
4
|
import { formatNumber } from "../../../../../../utils/formatNumber.js";
|
5
5
|
import { toTokens } from "../../../../../../utils/units.js";
|
6
6
|
import { useCustomTheme } from "../../../../../core/design-system/CustomThemeProvider.js";
|
7
|
-
import {
|
7
|
+
import { fontSize, spacing } from "../../../../../core/design-system/index.js";
|
8
8
|
import { useChainMetadata } from "../../../../../core/hooks/others/useChainQuery.js";
|
9
|
+
import { useWalletBalance } from "../../../../../core/hooks/others/useWalletBalance.js";
|
10
|
+
import { useActiveAccount } from "../../../../../core/hooks/wallets/useActiveAccount.js";
|
9
11
|
import { useActiveWallet } from "../../../../../core/hooks/wallets/useActiveWallet.js";
|
10
12
|
import { hasSponsoredTransactionsEnabled } from "../../../../../core/utils/wallet.js";
|
11
13
|
import { LoadingScreen } from "../../../../wallets/shared/LoadingScreen.js";
|
12
14
|
import { ChainIcon } from "../../../components/ChainIcon.js";
|
13
15
|
import { Img } from "../../../components/Img.js";
|
16
|
+
import { Skeleton } from "../../../components/Skeleton.js";
|
14
17
|
import { Spacer } from "../../../components/Spacer.js";
|
15
18
|
import { TokenIcon } from "../../../components/TokenIcon.js";
|
16
|
-
import { WalletImage } from "../../../components/WalletImage.js";
|
17
19
|
import { Container, Line, ModalHeader } from "../../../components/basic.js";
|
18
20
|
import { Button } from "../../../components/buttons.js";
|
19
21
|
import { Text } from "../../../components/text.js";
|
22
|
+
import { TokenSymbol } from "../../../components/token/TokenSymbol.js";
|
20
23
|
import { ConnectButton } from "../../ConnectButton.js";
|
24
|
+
import { formatTokenBalance } from "../formatTokenBalance.js";
|
25
|
+
import { NATIVE_TOKEN, isNativeToken, } from "../nativeToken.js";
|
26
|
+
import { WalletRow } from "./WalletSelectorButton.js";
|
21
27
|
import { useTransactionCostAndData } from "./main/useBuyTxStates.js";
|
22
28
|
export function TransactionModeScreen(props) {
|
23
29
|
const { payUiOptions, client, payerAccount, supportedDestinations, onContinue, } = props;
|
@@ -30,26 +36,34 @@ export function TransactionModeScreen(props) {
|
|
30
36
|
});
|
31
37
|
const theme = useCustomTheme();
|
32
38
|
const activeWallet = useActiveWallet();
|
39
|
+
const activeAccount = useActiveAccount();
|
33
40
|
const sponsoredTransactionsEnabled = hasSponsoredTransactionsEnabled(activeWallet);
|
41
|
+
const balanceQuery = useWalletBalance({
|
42
|
+
address: activeAccount?.address,
|
43
|
+
chain: payUiOptions.transaction.chain,
|
44
|
+
tokenAddress: isNativeToken(transactionCostAndData?.token || NATIVE_TOKEN)
|
45
|
+
? undefined
|
46
|
+
: transactionCostAndData?.token.address,
|
47
|
+
client: props.client,
|
48
|
+
}, {
|
49
|
+
enabled: !!transactionCostAndData,
|
50
|
+
});
|
34
51
|
if (!transactionCostAndData || !chainData) {
|
35
52
|
return _jsx(LoadingScreen, {});
|
36
53
|
}
|
37
54
|
return (_jsxs(Container, { p: "lg", children: [_jsx(ModalHeader, { title: metadata?.name || "Transaction" }), _jsx(Spacer, { y: "lg" }), _jsxs(Container, { children: [metadata?.image ? (_jsx(Img, { client: client, src: metadata?.image, style: {
|
38
55
|
width: "100%",
|
39
56
|
borderRadius: spacing.md,
|
57
|
+
border: `1px solid ${theme.colors.borderColor}`,
|
40
58
|
backgroundColor: theme.colors.tertiaryBg,
|
41
|
-
} })) :
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
borderColor: theme.colors.secondaryIconColor,
|
50
|
-
marginLeft: spacing.md,
|
51
|
-
marginRight: spacing.md,
|
52
|
-
} }), _jsx(ChainIcon, { client: client, size: iconSize.xl, chainIconUrl: chainData.icon?.url })] })) : null, _jsx(Spacer, { y: "md" }), _jsxs(Container, { flex: "row", children: [_jsx(Container, { flex: "column", expand: true, children: _jsx(Text, { size: "md", color: "primaryText", weight: 700, children: "Price" }) }), _jsx(Container, { expand: true, children: _jsxs(Container, { flex: "row", gap: "xs", center: "y", style: { justifyContent: "right" }, children: [_jsx(TokenIcon, { chain: payUiOptions.transaction.chain, client: props.client, size: "sm", token: transactionCostAndData.token }), _jsxs(Text, { color: "primaryText", size: "md", weight: 700, children: [String(formatNumber(Number(toTokens(transactionCostAndData.transactionValueWei, transactionCostAndData.decimals)), 6)), " ", transactionCostAndData.token.symbol] })] }) })] }), _jsx(Spacer, { y: "md" }), _jsx(Line, {}), _jsx(Spacer, { y: "md" }), _jsxs(Container, { flex: "row", children: [_jsx(Container, { flex: "column", expand: true, children: _jsx(Text, { size: "xs", color: "secondaryText", children: "Gas Fees" }) }), _jsx(Container, { expand: true, children: _jsx(Container, { flex: "row", gap: "xs", center: "y", style: { justifyContent: "right" }, children: _jsx(Text, { color: sponsoredTransactionsEnabled ? "success" : "primaryText", size: "xs", children: sponsoredTransactionsEnabled
|
59
|
+
} })) : activeAccount ? (_jsxs(Container, { flex: "column", gap: "sm", children: [_jsx(Text, { size: "sm", color: "danger", style: { textAlign: "center" }, children: "Insufficient funds" }), _jsxs(Container, { flex: "row", style: {
|
60
|
+
justifyContent: "space-between",
|
61
|
+
padding: spacing.sm,
|
62
|
+
marginBottom: spacing.sm,
|
63
|
+
borderRadius: spacing.md,
|
64
|
+
backgroundColor: theme.colors.tertiaryBg,
|
65
|
+
border: `1px solid ${theme.colors.borderColor}`,
|
66
|
+
}, children: [_jsx(WalletRow, { address: activeAccount?.address, iconSize: "md", client: client }), balanceQuery.data ? (_jsxs(Container, { flex: "row", gap: "3xs", center: "y", children: [_jsx(Text, { size: "xs", color: "secondaryText", weight: 500, children: formatTokenBalance(balanceQuery.data, false, 3) }), _jsx(TokenSymbol, { token: transactionCostAndData.token, chain: payUiOptions.transaction.chain, size: "xs", color: "secondaryText" })] })) : (_jsx(Skeleton, { width: "70px", height: fontSize.xs }))] })] })) : null, _jsx(Spacer, { y: "md" }), _jsxs(Container, { flex: "row", children: [_jsx(Container, { flex: "column", expand: true, children: _jsx(Text, { size: "md", color: "primaryText", weight: 700, children: "Price" }) }), _jsx(Container, { expand: true, children: _jsxs(Container, { flex: "row", gap: "xs", center: "y", style: { justifyContent: "right" }, children: [_jsx(TokenIcon, { chain: payUiOptions.transaction.chain, client: props.client, size: "sm", token: transactionCostAndData.token }), _jsxs(Text, { color: "primaryText", size: "md", weight: 700, children: [String(formatNumber(Number(toTokens(transactionCostAndData.transactionValueWei, transactionCostAndData.decimals)), 6)), " ", transactionCostAndData.token.symbol] })] }) })] }), _jsx(Spacer, { y: "md" }), _jsx(Line, {}), _jsx(Spacer, { y: "md" }), _jsxs(Container, { flex: "row", children: [_jsx(Container, { flex: "column", expand: true, children: _jsx(Text, { size: "xs", color: "secondaryText", children: "Gas Fees" }) }), _jsx(Container, { expand: true, children: _jsx(Container, { flex: "row", gap: "xs", center: "y", style: { justifyContent: "right" }, children: _jsx(Text, { color: sponsoredTransactionsEnabled ? "success" : "primaryText", size: "xs", children: sponsoredTransactionsEnabled
|
53
67
|
? "Sponsored"
|
54
68
|
: `${String(formatNumber(Number(toTokens(transactionCostAndData.gasCostWei, chainData.nativeCurrency.decimals)), 6))} ${chainData.nativeCurrency.symbol}` }) }) })] }), _jsx(Spacer, { y: "sm" }), _jsxs(Container, { flex: "row", children: [_jsx(Container, { flex: "column", expand: true, children: _jsx(Text, { size: "xs", color: "secondaryText", children: "Network" }) }), _jsx(Container, { expand: true, children: _jsxs(Container, { flex: "row", gap: "xs", center: "y", style: { justifyContent: "right" }, children: [_jsx(ChainIcon, { chainIconUrl: chainData.icon?.url, size: "xs", client: props.client }), _jsx(Text, { size: "xs", color: "secondaryText", style: { textAlign: "right" }, children: chainData.name })] }) })] })] }), _jsx(Spacer, { y: "xl" }), payerAccount ? (_jsx(Button, { variant: "accent", fullWidth: true, onClick: () => {
|
55
69
|
let totalCostWei = transactionCostAndData.transactionValueWei;
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"TransactionModeScreen.js","sourceRoot":"","sources":["../../../../../../../../src/react/web/ui/ConnectWallet/screens/Buy/TransactionModeScreen.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,0CAA0C,CAAC;AAGzE,OAAO,EAAE,oBAAoB,EAAE,MAAM,0CAA0C,CAAC;AAChF,OAAO,EAAE,YAAY,EAAE,MAAM,yCAAyC,CAAC;AACvE,OAAO,EAAE,QAAQ,EAAE,MAAM,kCAAkC,CAAC;AAE5D,OAAO,EAAE,cAAc,EAAE,MAAM,0DAA0D,CAAC;AAC1F,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,4CAA4C,CAAC;AAE/E,OAAO,EAAE,gBAAgB,EAAE,MAAM,mDAAmD,CAAC;AACrF,OAAO,EAAE,eAAe,EAAE,MAAM,sDAAsD,CAAC;AACvF,OAAO,EAAE,+BAA+B,EAAE,MAAM,qCAAqC,CAAC;AACtF,OAAO,EAAE,aAAa,EAAE,MAAM,6CAA6C,CAAC;AAE5E,OAAO,EAAE,SAAS,EAAE,MAAM,kCAAkC,CAAC;AAC7D,OAAO,EAAE,GAAG,EAAE,MAAM,4BAA4B,CAAC;AACjD,OAAO,EAAE,
|
1
|
+
{"version":3,"file":"TransactionModeScreen.js","sourceRoot":"","sources":["../../../../../../../../src/react/web/ui/ConnectWallet/screens/Buy/TransactionModeScreen.tsx"],"names":[],"mappings":"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"}
|
@@ -1,34 +1,42 @@
|
|
1
|
-
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
2
|
-
import
|
1
|
+
import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
|
2
|
+
import styled from "@emotion/styled";
|
3
|
+
import { useState } from "react";
|
3
4
|
import { shortenAddress } from "../../../../../../utils/address.js";
|
4
5
|
import { useCustomTheme } from "../../../../../core/design-system/CustomThemeProvider.js";
|
5
6
|
import { iconSize, radius, spacing, } from "../../../../../core/design-system/index.js";
|
6
|
-
import {
|
7
|
+
import { useChainName } from "../../../../../core/hooks/others/useChainQuery.js";
|
7
8
|
import { useEnsAvatar, useEnsName } from "../../../../../core/utils/wallet.js";
|
8
9
|
import { Img } from "../../../components/Img.js";
|
10
|
+
import { TokenIcon } from "../../../components/TokenIcon.js";
|
9
11
|
import { WalletImage } from "../../../components/WalletImage.js";
|
10
12
|
import { Container } from "../../../components/basic.js";
|
11
13
|
import { Button } from "../../../components/buttons.js";
|
12
14
|
import { Text } from "../../../components/text.js";
|
13
|
-
|
15
|
+
import { Blobbie } from "../../Blobbie.js";
|
16
|
+
import { formatTokenBalance } from "../formatTokenBalance.js";
|
17
|
+
export function WalletRowWithBalances(props) {
|
14
18
|
const theme = useCustomTheme();
|
15
|
-
|
19
|
+
const [showAll, setShowAll] = useState(false);
|
20
|
+
const maxDisplayedBalances = 3;
|
21
|
+
const displayedBalances = showAll
|
22
|
+
? props.balances
|
23
|
+
: props.balances.slice(0, maxDisplayedBalances);
|
24
|
+
return (_jsxs(Container, { bg: "tertiaryBg", style: {
|
16
25
|
borderRadius: radius.lg,
|
17
26
|
border: `1px solid ${theme.colors.borderColor}`,
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
27
|
+
}, children: [_jsx(Container, { style: { padding: spacing.sm }, children: _jsx(WalletRow, { ...props }) }), _jsx("div", { style: { borderTop: `1px solid ${theme.colors.borderColor}` } }), _jsx(Container, { flex: "column", children: props.balances.length > 0 ? (_jsxs(_Fragment, { children: [displayedBalances.map((b) => (_jsx(TokenBalanceRow, { client: props.client, onClick: () => props.onClick(props.wallet, b.token, b.chain), tokenBalance: b, wallet: props.wallet }, `${b.token.address}-${b.chain.id}`))), props.balances.length > maxDisplayedBalances && (_jsx(StyledButton, { variant: "secondary", onClick: () => setShowAll(!showAll), style: {
|
28
|
+
justifyContent: "start",
|
29
|
+
}, children: _jsx(Text, { size: "xs", children: showAll ? "Show less" : "Show more" }) }))] })) : (_jsx(Container, { style: { padding: spacing.sm }, children: _jsx(Text, { size: "sm", color: "secondaryText", children: "Not enough funds" }) })) })] }));
|
30
|
+
}
|
31
|
+
function TokenBalanceRow(props) {
|
32
|
+
const { tokenBalance, wallet, onClick, client } = props;
|
33
|
+
const chainInfo = useChainName(tokenBalance.chain);
|
34
|
+
return (_jsxs(StyledButton, { onClick: () => onClick(tokenBalance.token, wallet), variant: "secondary", children: [_jsx(TokenIcon, { token: tokenBalance.token, chain: tokenBalance.chain, size: "md", client: client }), _jsxs(Container, { flex: "column", gap: "3xs", children: [_jsx(Text, { size: "xs", color: "primaryText", children: tokenBalance.token.symbol }), chainInfo && _jsx(Text, { size: "xs", children: chainInfo.name })] }), _jsx("div", { style: { flex: 1 } }), _jsx(Container, { flex: "row", center: "y", gap: "3xs", children: _jsx(Text, { size: "xs", color: "secondaryText", children: formatTokenBalance(tokenBalance.balance, true, 3) }) })] }));
|
26
35
|
}
|
27
36
|
export function WalletRow(props) {
|
28
37
|
const { client, address } = props;
|
29
|
-
const
|
30
|
-
const
|
31
|
-
const walletId = props.walletId || wallet?.id;
|
38
|
+
const walletId = props.walletId;
|
39
|
+
const theme = useCustomTheme();
|
32
40
|
const ensNameQuery = useEnsName({
|
33
41
|
client,
|
34
42
|
address,
|
@@ -38,8 +46,31 @@ export function WalletRow(props) {
|
|
38
46
|
client,
|
39
47
|
ensName: ensNameQuery.data,
|
40
48
|
});
|
41
|
-
return (_jsxs(Container, { flex: "row", center: "y", gap: "sm", color: "secondaryText", children: [ensAvatarQuery.data ? (_jsx(Img, { src: ensAvatarQuery.data, width: iconSize.md, height: iconSize.md, style: {
|
42
|
-
borderRadius:
|
43
|
-
|
49
|
+
return (_jsxs(Container, { flex: "row", center: "y", gap: "sm", color: "secondaryText", children: [ensAvatarQuery.data ? (_jsx(Img, { src: ensAvatarQuery.data, width: props.iconSize ? iconSize[props.iconSize] : iconSize.md, height: props.iconSize ? iconSize[props.iconSize] : iconSize.md, style: {
|
50
|
+
borderRadius: "100%",
|
51
|
+
overflow: "hidden",
|
52
|
+
border: `1px solid ${theme.colors.borderColor}`,
|
53
|
+
}, client: props.client })) : walletId ? (_jsx(WalletImage, { id: walletId, size: props.iconSize || iconSize.md, client: props.client })) : (_jsx(Container, { style: {
|
54
|
+
width: iconSize.md,
|
55
|
+
height: iconSize.md,
|
56
|
+
borderRadius: "100%",
|
57
|
+
overflow: "hidden",
|
58
|
+
border: `1px solid ${theme.colors.borderColor}`,
|
59
|
+
}, children: _jsx(Blobbie, { address: props.address, size: Number(iconSize.md) }) })), _jsx(Text, { size: props.textSize || "sm", color: "primaryText", children: addressOrENS || shortenAddress(props.address) })] }));
|
44
60
|
}
|
61
|
+
const StyledButton = /* @__PURE__ */ styled(Button)((_) => {
|
62
|
+
const theme = useCustomTheme();
|
63
|
+
return {
|
64
|
+
background: theme.colors.tertiaryBg,
|
65
|
+
justifyContent: "flex-start",
|
66
|
+
flexDirection: "row",
|
67
|
+
padding: spacing.sm,
|
68
|
+
gap: spacing.sm,
|
69
|
+
"&:hover": {
|
70
|
+
background: theme.colors.secondaryButtonBg,
|
71
|
+
transform: "scale(1.01)",
|
72
|
+
},
|
73
|
+
transition: "background 200ms ease, transform 150ms ease",
|
74
|
+
};
|
75
|
+
});
|
45
76
|
//# sourceMappingURL=WalletSelectorButton.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"WalletSelectorButton.js","sourceRoot":"","sources":["../../../../../../../../src/react/web/ui/ConnectWallet/screens/Buy/WalletSelectorButton.tsx"],"names":[],"mappings":";AAAA,OAAO,
|
1
|
+
{"version":3,"file":"WalletSelectorButton.js","sourceRoot":"","sources":["../../../../../../../../src/react/web/ui/ConnectWallet/screens/Buy/WalletSelectorButton.tsx"],"names":[],"mappings":"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"}
|
@@ -28,11 +28,9 @@ export function useEnabledPaymentMethods(options) {
|
|
28
28
|
const { fiat, swap } = getEnabledPayMethodsForSelectedToken();
|
29
29
|
const buyWithFiatEnabled = payOptions.buyWithFiat !== false && fiat;
|
30
30
|
const buyWithCryptoEnabled = payOptions.buyWithCrypto !== false && swap;
|
31
|
-
const showPaymentSelection = buyWithFiatEnabled && buyWithCryptoEnabled;
|
32
31
|
return {
|
33
32
|
buyWithFiatEnabled,
|
34
33
|
buyWithCryptoEnabled,
|
35
|
-
showPaymentSelection,
|
36
34
|
};
|
37
35
|
}
|
38
36
|
//# sourceMappingURL=useEnabledPaymentMethods.js.map
|
package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/main/useEnabledPaymentMethods.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"useEnabledPaymentMethods.js","sourceRoot":"","sources":["../../../../../../../../../src/react/web/ui/ConnectWallet/screens/Buy/main/useEnabledPaymentMethods.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,oBAAoB,EAAE,MAAM,6CAA6C,CAAC;AAEnF,OAAO,EAA2B,aAAa,EAAE,MAAM,sBAAsB,CAAC;
|
1
|
+
{"version":3,"file":"useEnabledPaymentMethods.js","sourceRoot":"","sources":["../../../../../../../../../src/react/web/ui/ConnectWallet/screens/Buy/main/useEnabledPaymentMethods.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,oBAAoB,EAAE,MAAM,6CAA6C,CAAC;AAEnF,OAAO,EAA2B,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAW9E,MAAM,UAAU,wBAAwB,CAAC,OAKxC;IACC,MAAM,EAAE,UAAU,EAAE,qBAAqB,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC;IAExE,SAAS,oCAAoC;QAI3C,MAAM,KAAK,GAAG,qBAAqB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,KAAK,OAAO,CAAC,EAAE,CAAC,CAAC;QAC3E,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,OAAO;gBACL,IAAI,EAAE,KAAK;gBACX,IAAI,EAAE,KAAK;aACZ,CAAC;QACJ,CAAC;QAED,MAAM,cAAc,GAAG,aAAa,CAAC,OAAO,CAAC;YAC3C,CAAC,CAAC,oBAAoB;YACtB,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC;QAEpB,MAAM,SAAS,GAAG,KAAK,CAAC,MAAM,CAAC,IAAI,CACjC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,WAAW,EAAE,KAAK,cAAc,CAAC,WAAW,EAAE,CAChE,CAAC;QAEF,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,OAAO;gBACL,IAAI,EAAE,IAAI;gBACV,IAAI,EAAE,IAAI;aACX,CAAC;QACJ,CAAC;QAED,OAAO;YACL,IAAI,EAAE,SAAS,CAAC,kBAAkB;YAClC,IAAI,EAAE,SAAS,CAAC,oBAAoB;SACrC,CAAC;IACJ,CAAC;IAED,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,oCAAoC,EAAE,CAAC;IAE9D,MAAM,kBAAkB,GAAG,UAAU,CAAC,WAAW,KAAK,KAAK,IAAI,IAAI,CAAC;IACpE,MAAM,oBAAoB,GAAG,UAAU,CAAC,aAAa,KAAK,KAAK,IAAI,IAAI,CAAC;IAExE,OAAO;QACL,kBAAkB;QAClB,oBAAoB;KACrB,CAAC;AACJ,CAAC"}
|
@@ -1,25 +1,25 @@
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
2
|
-
import { ChevronDownIcon } from "@radix-ui/react-icons";
|
3
2
|
import { formatNumber } from "../../../../../../../utils/formatNumber.js";
|
4
|
-
import {
|
3
|
+
import { useCustomTheme } from "../../../../../../core/design-system/CustomThemeProvider.js";
|
4
|
+
import { fontSize, radius, spacing, } from "../../../../../../core/design-system/index.js";
|
5
5
|
import { useChainName } from "../../../../../../core/hooks/others/useChainQuery.js";
|
6
6
|
import { useWalletBalance } from "../../../../../../core/hooks/others/useWalletBalance.js";
|
7
7
|
import { Skeleton } from "../../../../components/Skeleton.js";
|
8
8
|
import { Container } from "../../../../components/basic.js";
|
9
|
-
import { Button } from "../../../../components/buttons.js";
|
10
9
|
import { Text } from "../../../../components/text.js";
|
11
10
|
import { TokenSymbol } from "../../../../components/token/TokenSymbol.js";
|
12
|
-
import { GenericWalletIcon } from "../../../icons/GenericWalletIcon.js";
|
13
11
|
import { formatTokenBalance } from "../../formatTokenBalance.js";
|
14
12
|
import { isNativeToken } from "../../nativeToken.js";
|
15
13
|
import { PayTokenIcon } from "../PayTokenIcon.js";
|
14
|
+
import { WalletRow } from "../WalletSelectorButton.js";
|
16
15
|
/**
|
17
16
|
* Shows an amount "value" and renders the selected token and chain
|
18
17
|
* It also renders the buttons to select the token and chain
|
19
18
|
* It also renders the balance of active wallet for the selected token in selected chain
|
20
19
|
* @internal
|
21
20
|
*/
|
22
|
-
export function
|
21
|
+
export function PayWithCryptoQuoteInfo(props) {
|
22
|
+
const theme = useCustomTheme();
|
23
23
|
const { name } = useChainName(props.chain);
|
24
24
|
const balanceQuery = useWalletBalance({
|
25
25
|
address: props.payerAccount.address,
|
@@ -27,37 +27,26 @@ export function PayWithCrypto(props) {
|
|
27
27
|
tokenAddress: isNativeToken(props.token) ? undefined : props.token.address,
|
28
28
|
client: props.client,
|
29
29
|
});
|
30
|
-
return (_jsxs(Container, { bg: "tertiaryBg",
|
31
|
-
|
32
|
-
|
33
|
-
borderStyle: "solid",
|
34
|
-
flexWrap: "nowrap",
|
35
|
-
justifyContent: "space-between",
|
36
|
-
minHeight: "64px",
|
37
|
-
alignItems: "center",
|
30
|
+
return (_jsxs(Container, { bg: "tertiaryBg", style: {
|
31
|
+
borderRadius: radius.lg,
|
32
|
+
border: `1px solid ${theme.colors.borderColor}`,
|
38
33
|
...(props.swapRequired
|
39
|
-
? {
|
40
|
-
|
41
|
-
borderBottomLeftRadius:
|
42
|
-
borderBottomRightRadius:
|
43
|
-
}
|
44
|
-
|
34
|
+
? {
|
35
|
+
borderBottom: "none",
|
36
|
+
borderBottomLeftRadius: 0,
|
37
|
+
borderBottomRightRadius: 0,
|
38
|
+
}
|
39
|
+
: {}),
|
40
|
+
}, children: [_jsxs(Container, { flex: "row", gap: "sm", style: {
|
41
|
+
justifyContent: "space-between",
|
42
|
+
padding: spacing.sm,
|
43
|
+
borderBottom: `1px solid ${theme.colors.borderColor}`,
|
44
|
+
}, children: [_jsx(WalletRow, { client: props.client, address: props.payerAccount.address }), balanceQuery.data ? (_jsxs(Container, { flex: "row", gap: "3xs", center: "y", children: [_jsx(Text, { size: "xs", color: "secondaryText", weight: 500, children: formatTokenBalance(balanceQuery.data, false, 3) }), _jsx(TokenSymbol, { token: props.token, chain: props.chain, size: "xs", color: "secondaryText" })] })) : (_jsx(Skeleton, { width: "70px", height: fontSize.xs }))] }), _jsxs(Container, { flex: "row", gap: "sm", style: {
|
45
45
|
paddingInline: spacing.sm,
|
46
46
|
paddingBlock: spacing.sm,
|
47
47
|
minWidth: "50%",
|
48
48
|
justifyContent: "flex-start",
|
49
|
-
|
50
|
-
|
51
|
-
flexShrink: 1,
|
52
|
-
display: "flex",
|
53
|
-
flexDirection: "column",
|
54
|
-
alignItems: "flex-end",
|
55
|
-
gap: spacing.xxs,
|
56
|
-
overflow: "hidden",
|
57
|
-
textOverflow: "ellipsis",
|
58
|
-
whiteSpace: "nowrap",
|
59
|
-
justifyContent: "center",
|
60
|
-
paddingRight: spacing.sm,
|
61
|
-
}, children: [props.isLoading ? (_jsx(Skeleton, { width: "120px", height: fontSize.md, color: "borderColor" })) : (_jsx(Text, { size: "md", color: props.value ? "primaryText" : "secondaryText", style: {}, children: formatNumber(Number(props.value), 6) || "" })), _jsxs(Container, { flex: "row", gap: "xxs", center: "y", color: "secondaryText", children: [_jsx(GenericWalletIcon, { size: fontSize.xs }), balanceQuery.data ? (_jsx(Text, { size: "xs", color: "secondaryText", weight: 500, children: formatTokenBalance(balanceQuery.data, false) })) : (_jsx(Skeleton, { width: "70px", height: fontSize.xs }))] })] })] }));
|
49
|
+
minHeight: "64px",
|
50
|
+
}, children: [_jsx(PayTokenIcon, { token: props.token, chain: props.chain, size: "md", client: props.client }), _jsxs(Container, { flex: "column", gap: "3xs", children: [props.isLoading ? (_jsx(Skeleton, { width: "120px", height: fontSize.md, color: "borderColor" })) : (_jsxs(Container, { flex: "row", gap: "xxs", center: "y", color: "primaryText", children: [_jsx(Text, { size: "md", color: props.value ? "primaryText" : "secondaryText", children: formatNumber(Number(props.value), 6) || "" }), _jsx(TokenSymbol, { token: props.token, chain: props.chain, size: "sm" })] })), name ? (_jsx(Text, { size: "xs", children: name })) : (_jsx(Skeleton, { width: "90px", height: fontSize.xs }))] })] })] }));
|
62
51
|
}
|
63
52
|
//# sourceMappingURL=PayWithCrypto.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"PayWithCrypto.js","sourceRoot":"","sources":["../../../../../../../../../src/react/web/ui/ConnectWallet/screens/Buy/swap/PayWithCrypto.tsx"],"names":[],"mappings":";
|
1
|
+
{"version":3,"file":"PayWithCrypto.js","sourceRoot":"","sources":["../../../../../../../../../src/react/web/ui/ConnectWallet/screens/Buy/swap/PayWithCrypto.tsx"],"names":[],"mappings":"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"}
|
@@ -0,0 +1,135 @@
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
2
|
+
import { IdCardIcon } from "@radix-ui/react-icons";
|
3
|
+
import { useQuery } from "@tanstack/react-query";
|
4
|
+
import { getCachedChain } from "../../../../../../../chains/utils.js";
|
5
|
+
import { NATIVE_TOKEN_ADDRESS } from "../../../../../../../constants/addresses.js";
|
6
|
+
import { getWalletBalance, } from "../../../../../../../wallets/utils/getWalletBalance.js";
|
7
|
+
import { useCustomTheme } from "../../../../../../core/design-system/CustomThemeProvider.js";
|
8
|
+
import { iconSize, radius, spacing, } from "../../../../../../core/design-system/index.js";
|
9
|
+
import { useChainMetadata } from "../../../../../../core/hooks/others/useChainQuery.js";
|
10
|
+
import { useActiveAccount } from "../../../../../../core/hooks/wallets/useActiveAccount.js";
|
11
|
+
import { useConnectedWallets } from "../../../../../../core/hooks/wallets/useConnectedWallets.js";
|
12
|
+
import { LoadingScreen } from "../../../../../wallets/shared/LoadingScreen.js";
|
13
|
+
import { Spacer } from "../../../../components/Spacer.js";
|
14
|
+
import { Container } from "../../../../components/basic.js";
|
15
|
+
import { Button } from "../../../../components/buttons.js";
|
16
|
+
import { Text } from "../../../../components/text.js";
|
17
|
+
import { OutlineWalletIcon } from "../../../icons/OutlineWalletIcon.js";
|
18
|
+
import { isNativeToken } from "../../nativeToken.js";
|
19
|
+
import { WalletRowWithBalances } from "../WalletSelectorButton.js";
|
20
|
+
export function PaymentSelectionScreen(props) {
|
21
|
+
const theme = useCustomTheme();
|
22
|
+
const connectedWallets = useConnectedWallets();
|
23
|
+
// if all wallets are connected and showAll wallets is disabled, hide the connect button
|
24
|
+
const hideConnectButton = !props.showAllWallets &&
|
25
|
+
props.wallets?.every((w) => connectedWallets.includes(w));
|
26
|
+
const chainInfo = useChainMetadata(props.toChain);
|
27
|
+
const activeAccount = useActiveAccount();
|
28
|
+
const walletsAndBalances = useQuery({
|
29
|
+
queryKey: [
|
30
|
+
"wallets-and-balances",
|
31
|
+
connectedWallets.map((w) => w.getAccount()?.address),
|
32
|
+
props.sourceSupportedTokens,
|
33
|
+
props.toChain.id,
|
34
|
+
props.toToken,
|
35
|
+
props.tokenAmount,
|
36
|
+
props.mode,
|
37
|
+
activeAccount?.address,
|
38
|
+
],
|
39
|
+
queryFn: async () => {
|
40
|
+
// in parallel, get the balances of all the wallets on each of the sourceSupportedTokens
|
41
|
+
const walletBalanceMap = new Map();
|
42
|
+
const balancePromises = connectedWallets.flatMap((wallet) => {
|
43
|
+
const account = wallet.getAccount();
|
44
|
+
if (!account)
|
45
|
+
return [];
|
46
|
+
walletBalanceMap.set(wallet, []);
|
47
|
+
// inject the destination token too since it can be used as well to pay/transfer
|
48
|
+
const toToken = isNativeToken(props.toToken)
|
49
|
+
? {
|
50
|
+
address: NATIVE_TOKEN_ADDRESS,
|
51
|
+
name: chainInfo.data?.nativeCurrency.name || "",
|
52
|
+
symbol: chainInfo.data?.nativeCurrency.symbol || "",
|
53
|
+
icon: chainInfo.data?.icon?.url,
|
54
|
+
}
|
55
|
+
: props.toToken;
|
56
|
+
const tokens = {
|
57
|
+
...props.sourceSupportedTokens,
|
58
|
+
[props.toChain.id]: [
|
59
|
+
toToken,
|
60
|
+
...(props.sourceSupportedTokens?.[props.toChain.id] || []),
|
61
|
+
],
|
62
|
+
};
|
63
|
+
return Object.entries(tokens).flatMap(([chainId, tokens]) => {
|
64
|
+
return tokens.map(async (token) => {
|
65
|
+
try {
|
66
|
+
const chain = getCachedChain(Number(chainId));
|
67
|
+
const balance = await getWalletBalance({
|
68
|
+
address: account.address,
|
69
|
+
chain,
|
70
|
+
tokenAddress: isNativeToken(token) ? undefined : token.address,
|
71
|
+
client: props.client,
|
72
|
+
});
|
73
|
+
// show the token if:
|
74
|
+
// - its not the destination token and balance is greater than 0
|
75
|
+
// - its the destination token and balance is greater than the token amount AND we the account is not the default account in fund_wallet mode
|
76
|
+
const shouldInclude = token.address === toToken.address &&
|
77
|
+
chain.id === props.toChain.id
|
78
|
+
? props.mode === "fund_wallet" &&
|
79
|
+
account.address === activeAccount?.address
|
80
|
+
? false
|
81
|
+
: Number(balance.displayValue) > Number(props.tokenAmount)
|
82
|
+
: balance.value > 0n;
|
83
|
+
if (shouldInclude) {
|
84
|
+
const existingBalances = walletBalanceMap.get(wallet) || [];
|
85
|
+
existingBalances.push({ balance, chain, token });
|
86
|
+
existingBalances.sort((a, b) => {
|
87
|
+
if (a.chain.id === props.toChain.id &&
|
88
|
+
a.token.address === toToken.address)
|
89
|
+
return -1;
|
90
|
+
if (b.chain.id === props.toChain.id &&
|
91
|
+
b.token.address === toToken.address)
|
92
|
+
return 1;
|
93
|
+
if (a.chain.id === props.toChain.id)
|
94
|
+
return -1;
|
95
|
+
if (b.chain.id === props.toChain.id)
|
96
|
+
return 1;
|
97
|
+
return a.chain.id > b.chain.id ? 1 : -1;
|
98
|
+
});
|
99
|
+
}
|
100
|
+
}
|
101
|
+
catch (error) {
|
102
|
+
console.error(`Failed to fetch balance for wallet ${wallet.id} on chain ${chainId} for token ${token.symbol}:`, error);
|
103
|
+
}
|
104
|
+
});
|
105
|
+
});
|
106
|
+
});
|
107
|
+
await Promise.all(balancePromises);
|
108
|
+
return walletBalanceMap;
|
109
|
+
},
|
110
|
+
enabled: !!props.sourceSupportedTokens && !!chainInfo.data,
|
111
|
+
});
|
112
|
+
if (walletsAndBalances.isLoading || !walletsAndBalances.data) {
|
113
|
+
return _jsx(LoadingScreen, {});
|
114
|
+
}
|
115
|
+
return (_jsxs(Container, { children: [_jsxs(Container, { flex: "column", gap: "xs", children: [Array.from(walletsAndBalances.data?.entries() || [])
|
116
|
+
.filter(([w]) => !props.hiddenWallets?.includes(w.id))
|
117
|
+
.map(([w, balances]) => {
|
118
|
+
const address = w.getAccount()?.address;
|
119
|
+
if (!address)
|
120
|
+
return null;
|
121
|
+
return (_jsx(WalletRowWithBalances, { wallet: w, balances: balances, client: props.client, address: address, onClick: props.onSelect }, w.id));
|
122
|
+
}), !hideConnectButton && (_jsx(Button, { variant: "secondary", fullWidth: true, onClick: props.onConnect, gap: "xs", bg: "tertiaryBg", style: {
|
123
|
+
borderRadius: radius.lg,
|
124
|
+
border: `1px solid ${theme.colors.borderColor}`,
|
125
|
+
padding: spacing.sm,
|
126
|
+
}, children: _jsxs(Container, { flex: "row", gap: "sm", center: "y", expand: true, color: "secondaryIconColor", children: [_jsx(OutlineWalletIcon, { size: iconSize.md }), _jsx(Text, { size: "sm", color: "primaryText", children: "Pay with another wallet" })] }) })), props.payWithFiatEnabled && (_jsx(Button, { variant: "secondary", fullWidth: true, gap: "xs", bg: "tertiaryBg", onClick: props.onSelectFiat, style: {
|
127
|
+
borderRadius: radius.lg,
|
128
|
+
border: `1px solid ${theme.colors.borderColor}`,
|
129
|
+
padding: spacing.sm,
|
130
|
+
}, children: _jsxs(Container, { flex: "row", gap: "sm", center: "y", expand: true, color: "secondaryIconColor", children: [_jsx(IdCardIcon, { style: {
|
131
|
+
width: iconSize.md,
|
132
|
+
height: iconSize.md,
|
133
|
+
} }), _jsx(Text, { size: "sm", color: "primaryText", children: "Pay with credit card" })] }) }))] }), _jsx(Spacer, { y: "sm" })] }));
|
134
|
+
}
|
135
|
+
//# sourceMappingURL=PaymentSelectionScreen.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"PaymentSelectionScreen.js","sourceRoot":"","sources":["../../../../../../../../../src/react/web/ui/ConnectWallet/screens/Buy/swap/PaymentSelectionScreen.tsx"],"names":[],"mappings":"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"}
|
@@ -3,7 +3,7 @@ import { defineChain } from "../../../../../../../chains/utils.js";
|
|
3
3
|
import { getPaySupportedDestinations, getPaySupportedSources, } from "../../../../../../../pay/utils/definitions.js";
|
4
4
|
import { getClientFetch } from "../../../../../../../utils/fetch.js";
|
5
5
|
import { withCache } from "../../../../../../../utils/promise/withCache.js";
|
6
|
-
async function fetchBuySupportedDestinations(client, isTestMode) {
|
6
|
+
export async function fetchBuySupportedDestinations(client, isTestMode) {
|
7
7
|
return withCache(async () => {
|
8
8
|
const fetchWithHeaders = getClientFetch(client);
|
9
9
|
const res = await fetchWithHeaders(`${getPaySupportedDestinations()}${isTestMode ? "?isTestMode=true" : ""}`);
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"useSwapSupportedChains.js","sourceRoot":"","sources":["../../../../../../../../../src/react/web/ui/ConnectWallet/screens/Buy/swap/useSwapSupportedChains.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAEjD,OAAO,EAAE,WAAW,EAAE,MAAM,sCAAsC,CAAC;AAEnE,OAAO,EACL,2BAA2B,EAC3B,sBAAsB,GACvB,MAAM,+CAA+C,CAAC;AACvD,OAAO,EAAE,cAAc,EAAE,MAAM,qCAAqC,CAAC;AACrE,OAAO,EAAE,SAAS,EAAE,MAAM,iDAAiD,CAAC;AA2B5E,KAAK,UAAU,6BAA6B,
|
1
|
+
{"version":3,"file":"useSwapSupportedChains.js","sourceRoot":"","sources":["../../../../../../../../../src/react/web/ui/ConnectWallet/screens/Buy/swap/useSwapSupportedChains.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAEjD,OAAO,EAAE,WAAW,EAAE,MAAM,sCAAsC,CAAC;AAEnE,OAAO,EACL,2BAA2B,EAC3B,sBAAsB,GACvB,MAAM,+CAA+C,CAAC;AACvD,OAAO,EAAE,cAAc,EAAE,MAAM,qCAAqC,CAAC;AACrE,OAAO,EAAE,SAAS,EAAE,MAAM,iDAAiD,CAAC;AA2B5E,MAAM,CAAC,KAAK,UAAU,6BAA6B,CACjD,MAAsB,EACtB,UAAoB;IAEpB,OAAO,SAAS,CACd,KAAK,IAAI,EAAE;QACT,MAAM,gBAAgB,GAAG,cAAc,CAAC,MAAM,CAAC,CAAC;QAChD,MAAM,GAAG,GAAG,MAAM,gBAAgB,CAChC,GAAG,2BAA2B,EAAE,GAAG,UAAU,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,EAAE,EAAE,CAC1E,CAAC;QACF,MAAM,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAAa,CAAC;QAC5C,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;YAChC,KAAK,EAAE,WAAW,CAAC;gBACjB,EAAE,EAAE,IAAI,CAAC,OAAO;aACjB,CAAC;YACF,MAAM,EAAE,IAAI,CAAC,MAAM;SACpB,CAAC,CAAC,CAAC;IACN,CAAC,EACD;QACE,QAAQ,EAAE,oBAAoB;QAC9B,SAAS,EAAE,CAAC,GAAG,EAAE,GAAG,IAAI;KACzB,CACF,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,2BAA2B,CACzC,MAAsB,EACtB,UAAoB;IAEpB,OAAO,QAAQ,CAAC;QACd,QAAQ,EAAE,CAAC,oBAAoB,EAAE,MAAM,CAAC;QACxC,OAAO,EAAE,KAAK,IAAI,EAAE;YAClB,OAAO,6BAA6B,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;QAC3D,CAAC;KACF,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,sBAAsB,CAAC,OAItC;IACC,OAAO,QAAQ,CAAC;QACd,QAAQ,EAAE,CAAC,eAAe,EAAE,OAAO,CAAC;QACpC,OAAO,EAAE,KAAK,IAAI,EAAE;YAClB,MAAM,gBAAgB,GAAG,cAAc,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;YACxD,MAAM,OAAO,GAAG,sBAAsB,EAAE,CAAC;YAEzC,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,CAAC;YAC7B,GAAG,CAAC,YAAY,CAAC,MAAM,CACrB,oBAAoB,EACpB,OAAO,CAAC,kBAAkB,CAAC,QAAQ,EAAE,CACtC,CAAC;YACF,GAAG,CAAC,YAAY,CAAC,MAAM,CACrB,yBAAyB,EACzB,OAAO,CAAC,uBAAuB,CAChC,CAAC;YAEF,MAAM,GAAG,GAAG,MAAM,gBAAgB,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC;YACnD,MAAM,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAAa,CAAC;YAC5C,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;gBAChC,KAAK,EAAE,WAAW,CAAC;oBACjB,EAAE,EAAE,IAAI,CAAC,OAAO;iBACjB,CAAC;gBACF,MAAM,EAAE,IAAI,CAAC,MAAM;aACpB,CAAC,CAAC,CAAC;QACN,CAAC;KACF,CAAC,CAAC;AACL,CAAC"}
|
@@ -4,8 +4,8 @@ import { formatNumber } from "../../../../../utils/formatNumber.js";
|
|
4
4
|
* @param balanceData
|
5
5
|
* @returns
|
6
6
|
*/
|
7
|
-
export function formatTokenBalance(balanceData, showSymbol = true) {
|
8
|
-
return (formatNumber(Number(balanceData.displayValue),
|
7
|
+
export function formatTokenBalance(balanceData, showSymbol = true, decimals = 5) {
|
8
|
+
return (formatNumber(Number(balanceData.displayValue), decimals) +
|
9
9
|
(showSymbol ? ` ${balanceData.symbol}` : ""));
|
10
10
|
}
|
11
11
|
//# sourceMappingURL=formatTokenBalance.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"formatTokenBalance.js","sourceRoot":"","sources":["../../../../../../../src/react/web/ui/ConnectWallet/screens/formatTokenBalance.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,sCAAsC,CAAC;AAEpE;;;;GAIG;AACH,MAAM,UAAU,kBAAkB,CAChC,WAKC,EACD,UAAU,GAAG,IAAI;
|
1
|
+
{"version":3,"file":"formatTokenBalance.js","sourceRoot":"","sources":["../../../../../../../src/react/web/ui/ConnectWallet/screens/formatTokenBalance.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,sCAAsC,CAAC;AAEpE;;;;GAIG;AACH,MAAM,UAAU,kBAAkB,CAChC,WAKC,EACD,UAAU,GAAG,IAAI,EACjB,QAAQ,GAAG,CAAC;IAEZ,OAAO,CACL,YAAY,CAAC,MAAM,CAAC,WAAW,CAAC,YAAY,CAAC,EAAE,QAAQ,CAAC;QACxD,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,WAAW,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAC7C,CAAC;AACJ,CAAC"}
|
package/dist/esm/version.js
CHANGED
@@ -1,2 +1,2 @@
|
|
1
|
-
export const version = "5.64.
|
1
|
+
export const version = "5.64.3-nightly-ddec3dadcc260e0d4d0ed2b43c502e0915a14203-20241029000326";
|
2
2
|
//# sourceMappingURL=version.js.map
|
package/dist/esm/version.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"version.js","sourceRoot":"","sources":["../../src/version.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,OAAO,GAAG,
|
1
|
+
{"version":3,"file":"version.js","sourceRoot":"","sources":["../../src/version.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,OAAO,GAAG,wEAAwE,CAAC"}
|