@0xsequence/checkout 5.2.1 → 5.2.3
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/contexts/SelectPaymentModal.d.ts +2 -0
- package/dist/cjs/contexts/SelectPaymentModal.d.ts.map +1 -1
- package/dist/cjs/contexts/SelectPaymentModal.js.map +1 -1
- package/dist/cjs/contexts/SwapModal.d.ts +3 -2
- package/dist/cjs/contexts/SwapModal.d.ts.map +1 -1
- package/dist/cjs/contexts/SwapModal.js.map +1 -1
- package/dist/cjs/hooks/useCheckoutUI/index.d.ts +2 -1
- package/dist/cjs/hooks/useCheckoutUI/index.d.ts.map +1 -1
- package/dist/cjs/hooks/useCheckoutUI/index.js +3 -2
- package/dist/cjs/hooks/useCheckoutUI/index.js.map +1 -1
- package/dist/cjs/hooks/useCheckoutUI/useCryptoPayment.d.ts +7 -6
- package/dist/cjs/hooks/useCheckoutUI/useCryptoPayment.d.ts.map +1 -1
- package/dist/cjs/hooks/useCheckoutUI/useCryptoPayment.js +49 -51
- package/dist/cjs/hooks/useCheckoutUI/useCryptoPayment.js.map +1 -1
- package/dist/cjs/views/PaymentSelection/PayWithCrypto/index.d.ts.map +1 -1
- package/dist/cjs/views/PaymentSelection/PayWithCrypto/index.js +148 -81
- package/dist/cjs/views/PaymentSelection/PayWithCrypto/index.js.map +1 -1
- package/dist/cjs/views/PaymentSelection/index.d.ts.map +1 -1
- package/dist/cjs/views/PaymentSelection/index.js +27 -20
- package/dist/cjs/views/PaymentSelection/index.js.map +1 -1
- package/dist/cjs/views/Swap/index.d.ts.map +1 -1
- package/dist/cjs/views/Swap/index.js +94 -48
- package/dist/cjs/views/Swap/index.js.map +1 -1
- package/dist/esm/contexts/SelectPaymentModal.d.ts +2 -0
- package/dist/esm/contexts/SelectPaymentModal.d.ts.map +1 -1
- package/dist/esm/contexts/SelectPaymentModal.js.map +1 -1
- package/dist/esm/contexts/SwapModal.d.ts +3 -2
- package/dist/esm/contexts/SwapModal.d.ts.map +1 -1
- package/dist/esm/contexts/SwapModal.js.map +1 -1
- package/dist/esm/hooks/useCheckoutUI/index.d.ts +2 -1
- package/dist/esm/hooks/useCheckoutUI/index.d.ts.map +1 -1
- package/dist/esm/hooks/useCheckoutUI/index.js +3 -2
- package/dist/esm/hooks/useCheckoutUI/index.js.map +1 -1
- package/dist/esm/hooks/useCheckoutUI/useCryptoPayment.d.ts +7 -6
- package/dist/esm/hooks/useCheckoutUI/useCryptoPayment.d.ts.map +1 -1
- package/dist/esm/hooks/useCheckoutUI/useCryptoPayment.js +50 -52
- package/dist/esm/hooks/useCheckoutUI/useCryptoPayment.js.map +1 -1
- package/dist/esm/views/PaymentSelection/PayWithCrypto/index.d.ts.map +1 -1
- package/dist/esm/views/PaymentSelection/PayWithCrypto/index.js +150 -83
- package/dist/esm/views/PaymentSelection/PayWithCrypto/index.js.map +1 -1
- package/dist/esm/views/PaymentSelection/index.d.ts.map +1 -1
- package/dist/esm/views/PaymentSelection/index.js +28 -21
- package/dist/esm/views/PaymentSelection/index.js.map +1 -1
- package/dist/esm/views/Swap/index.d.ts.map +1 -1
- package/dist/esm/views/Swap/index.js +96 -50
- package/dist/esm/views/Swap/index.js.map +1 -1
- package/package.json +16 -16
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
2
|
import { CryptoOption, compareAddress, formatDisplay, sendTransactions } from '@0xsequence/connect';
|
|
3
3
|
import { Button, Spinner, Text } from '@0xsequence/design-system';
|
|
4
|
-
import { useGetContractInfo,
|
|
4
|
+
import { useGetContractInfo, useGetSwapRoutes, useGetSwapQuote, useGetTokenBalancesSummary, useIndexerClient } from '@0xsequence/hooks';
|
|
5
5
|
import { findSupportedNetwork } from '@0xsequence/network';
|
|
6
|
-
import { useState, useEffect } from 'react';
|
|
6
|
+
import { useState, useEffect, useMemo } from 'react';
|
|
7
7
|
import { zeroAddress, formatUnits } from 'viem';
|
|
8
8
|
import { useAccount, usePublicClient, useWalletClient } from 'wagmi';
|
|
9
9
|
import { HEADER_HEIGHT } from '../../constants';
|
|
@@ -11,53 +11,101 @@ import { useSwapModal, useTransactionStatusModal } from '../../hooks';
|
|
|
11
11
|
export const Swap = () => {
|
|
12
12
|
const { openTransactionStatusModal } = useTransactionStatusModal();
|
|
13
13
|
const { swapModalSettings, closeSwapModal } = useSwapModal();
|
|
14
|
-
const {
|
|
14
|
+
const { toTokenAddress, toTokenAmount, chainId, disableMainCurrency = true, description, slippageBps, postSwapTransactions, blockConfirmations, customSwapErrorMessage, onSuccess = () => { } } = swapModalSettings;
|
|
15
15
|
const { address: userAddress, connector } = useAccount();
|
|
16
16
|
const [isTxsPending, setIsTxsPending] = useState(false);
|
|
17
17
|
const [isError, setIsError] = useState(false);
|
|
18
18
|
const [selectedCurrency, setSelectedCurrency] = useState();
|
|
19
19
|
const publicClient = usePublicClient({ chainId });
|
|
20
20
|
const { data: walletClient } = useWalletClient({ chainId });
|
|
21
|
-
const
|
|
22
|
-
const
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
chainId: chainId,
|
|
28
|
-
buyAmount: currencyAmount,
|
|
29
|
-
withContractInfo: true
|
|
21
|
+
const { data: currencyInfoData, isLoading: isLoadingCurrencyInfo, isError: isErrorCurrencyInfo } = useGetContractInfo({ chainID: String(chainId), contractAddress: toTokenAddress });
|
|
22
|
+
const { data: swapRoutes = [], isLoading: swapRoutesIsLoading, isError: isErrorSwapRoutes } = useGetSwapRoutes({
|
|
23
|
+
chainId,
|
|
24
|
+
toTokenAddress,
|
|
25
|
+
toTokenAmount,
|
|
26
|
+
walletAddress: userAddress ?? ''
|
|
30
27
|
});
|
|
28
|
+
const { data: tokenBalances, isLoading: isLoadingTokenBalances } = useGetTokenBalancesSummary({
|
|
29
|
+
chainIds: [chainId],
|
|
30
|
+
filter: {
|
|
31
|
+
accountAddresses: [userAddress ?? ''],
|
|
32
|
+
omitNativeBalances: false,
|
|
33
|
+
contractWhitelist: swapRoutes.flatMap(route => route.fromTokens).map(fromToken => fromToken.address)
|
|
34
|
+
}
|
|
35
|
+
});
|
|
36
|
+
const tokensBalancesMap = useMemo(() => {
|
|
37
|
+
const map = new Map();
|
|
38
|
+
tokenBalances?.pages?.forEach(page => {
|
|
39
|
+
page.balances?.forEach(balanceData => {
|
|
40
|
+
if (balanceData.contractAddress && balanceData.balance) {
|
|
41
|
+
map.set(balanceData.contractAddress.toLowerCase(), BigInt(balanceData.balance));
|
|
42
|
+
}
|
|
43
|
+
});
|
|
44
|
+
});
|
|
45
|
+
return map;
|
|
46
|
+
}, [tokenBalances]);
|
|
31
47
|
useEffect(() => {
|
|
48
|
+
// Only attempt to select a currency if none is currently selected
|
|
49
|
+
const selectedCurrencyBalance = tokensBalancesMap.get(selectedCurrency?.toLowerCase() || '');
|
|
50
|
+
if ((selectedCurrency && BigInt(selectedCurrencyBalance || '0') > 0) || isLoadingTokenBalances || swapRoutesIsLoading) {
|
|
51
|
+
return;
|
|
52
|
+
}
|
|
32
53
|
if (!disableMainCurrency) {
|
|
33
|
-
|
|
54
|
+
const balance = tokensBalancesMap.get(toTokenAddress.toLowerCase());
|
|
55
|
+
const mainCurrencyOptionPrice = toTokenAmount;
|
|
56
|
+
if (mainCurrencyOptionPrice && balance && BigInt(balance) >= BigInt(mainCurrencyOptionPrice)) {
|
|
57
|
+
setSelectedCurrency(toTokenAddress);
|
|
58
|
+
return;
|
|
59
|
+
}
|
|
34
60
|
}
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
61
|
+
const validSwapOptions = swapRoutes.flatMap(route => route.fromTokens);
|
|
62
|
+
if (!validSwapOptions.length) {
|
|
63
|
+
return;
|
|
38
64
|
}
|
|
39
|
-
|
|
40
|
-
|
|
65
|
+
// Try to find the first token with sufficient balance
|
|
66
|
+
const optionWithSufficientBalance = validSwapOptions.find(option => {
|
|
67
|
+
if (!option.price) {
|
|
68
|
+
return false;
|
|
69
|
+
}
|
|
70
|
+
const balance = tokensBalancesMap.get(option.address.toLowerCase());
|
|
71
|
+
return balance ? BigInt(balance) >= BigInt(option.price) : false;
|
|
72
|
+
});
|
|
73
|
+
if (optionWithSufficientBalance) {
|
|
74
|
+
setSelectedCurrency(optionWithSufficientBalance.address);
|
|
75
|
+
}
|
|
76
|
+
}, [
|
|
77
|
+
swapRoutesIsLoading,
|
|
78
|
+
isLoadingTokenBalances,
|
|
79
|
+
swapRoutes,
|
|
80
|
+
tokensBalancesMap,
|
|
81
|
+
disableMainCurrency,
|
|
82
|
+
toTokenAddress,
|
|
83
|
+
selectedCurrency
|
|
84
|
+
]);
|
|
85
|
+
const isNativeCurrency = compareAddress(toTokenAddress, zeroAddress);
|
|
41
86
|
const network = findSupportedNetwork(chainId);
|
|
42
87
|
const mainCurrencyName = isNativeCurrency ? network?.nativeToken.name : currencyInfoData?.name;
|
|
43
88
|
const mainCurrencyLogo = isNativeCurrency ? network?.logoURI : currencyInfoData?.logoURI;
|
|
44
89
|
const mainCurrencySymbol = isNativeCurrency ? network?.nativeToken.symbol : currencyInfoData?.symbol;
|
|
45
90
|
const mainCurrencyDecimals = isNativeCurrency ? network?.nativeToken.decimals : currencyInfoData?.decimals;
|
|
46
|
-
const disableSwapQuote = !selectedCurrency || compareAddress(selectedCurrency,
|
|
91
|
+
const disableSwapQuote = !selectedCurrency || compareAddress(selectedCurrency, toTokenAddress);
|
|
47
92
|
const { data: swapQuote, isLoading: isLoadingSwapQuote, isError: isErrorSwapQuote } = useGetSwapQuote({
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
93
|
+
params: {
|
|
94
|
+
walletAddress: userAddress ?? '',
|
|
95
|
+
toTokenAddress,
|
|
96
|
+
toTokenAmount,
|
|
97
|
+
fromTokenAddress: selectedCurrency || '',
|
|
98
|
+
chainId: chainId,
|
|
99
|
+
includeApprove: true,
|
|
100
|
+
slippageBps: slippageBps || 100
|
|
101
|
+
}
|
|
54
102
|
}, {
|
|
55
103
|
disabled: disableSwapQuote
|
|
56
104
|
});
|
|
57
105
|
const indexerClient = useIndexerClient(chainId);
|
|
58
|
-
const isMainCurrencySelected = compareAddress(selectedCurrency || '',
|
|
106
|
+
const isMainCurrencySelected = compareAddress(selectedCurrency || '', toTokenAddress);
|
|
59
107
|
const quoteFetchInProgress = isLoadingSwapQuote && !isMainCurrencySelected;
|
|
60
|
-
const isLoading = isLoadingCurrencyInfo ||
|
|
108
|
+
const isLoading = isLoadingCurrencyInfo || swapRoutesIsLoading;
|
|
61
109
|
const onClickProceed = async () => {
|
|
62
110
|
if (!userAddress || !publicClient || !walletClient || !connector) {
|
|
63
111
|
return;
|
|
@@ -65,10 +113,10 @@ export const Swap = () => {
|
|
|
65
113
|
setIsError(false);
|
|
66
114
|
setIsTxsPending(true);
|
|
67
115
|
try {
|
|
68
|
-
const
|
|
69
|
-
const isSwapNativeToken = compareAddress(zeroAddress,
|
|
116
|
+
const swapOption = swapRoutes.flatMap(route => route.fromTokens).find(option => option.address === selectedCurrency);
|
|
117
|
+
const isSwapNativeToken = compareAddress(zeroAddress, swapOption?.address || '');
|
|
70
118
|
const getSwapTransactions = () => {
|
|
71
|
-
if (isMainCurrencySelected || !swapQuote || !
|
|
119
|
+
if (isMainCurrencySelected || !swapQuote || !swapOption) {
|
|
72
120
|
return [];
|
|
73
121
|
}
|
|
74
122
|
const swapTransactions = [
|
|
@@ -76,7 +124,7 @@ export const Swap = () => {
|
|
|
76
124
|
...(swapQuote?.approveData && !isSwapNativeToken
|
|
77
125
|
? [
|
|
78
126
|
{
|
|
79
|
-
to:
|
|
127
|
+
to: swapOption.address,
|
|
80
128
|
data: swapQuote.approveData,
|
|
81
129
|
chain: chainId
|
|
82
130
|
}
|
|
@@ -125,13 +173,13 @@ export const Swap = () => {
|
|
|
125
173
|
console.error('Failed to send transactions', e);
|
|
126
174
|
}
|
|
127
175
|
};
|
|
128
|
-
const
|
|
129
|
-
const noOptionsFound = disableMainCurrency &&
|
|
176
|
+
const isErrorFetchingOptions = isErrorSwapRoutes || isErrorCurrencyInfo;
|
|
177
|
+
const noOptionsFound = disableMainCurrency && swapRoutes.flatMap(route => route.fromTokens).length === 0;
|
|
130
178
|
const SwapContent = () => {
|
|
131
|
-
if (isLoading) {
|
|
179
|
+
if (isLoading || isLoadingTokenBalances) {
|
|
132
180
|
return (_jsx("div", { className: "flex w-full justify-center items-center", children: _jsx(Spinner, {}) }));
|
|
133
181
|
}
|
|
134
|
-
else if (
|
|
182
|
+
else if (isErrorFetchingOptions) {
|
|
135
183
|
return (_jsx("div", { className: "flex w-full justify-center items-center", children: _jsx(Text, { variant: "normal", color: "negative", children: "An error occurred while fetching the swap options." }) }));
|
|
136
184
|
}
|
|
137
185
|
else if (noOptionsFound) {
|
|
@@ -139,28 +187,26 @@ export const Swap = () => {
|
|
|
139
187
|
'No swap options found on your wallet, please ensure you hold an eligible token for the swap.' }) }));
|
|
140
188
|
}
|
|
141
189
|
else {
|
|
142
|
-
const formattedPrice = formatUnits(BigInt(
|
|
190
|
+
const formattedPrice = formatUnits(BigInt(toTokenAmount), mainCurrencyDecimals || 0);
|
|
143
191
|
const displayPrice = formatDisplay(formattedPrice, {
|
|
144
192
|
disableScientificNotation: true,
|
|
145
193
|
disableCompactNotation: true,
|
|
146
194
|
significantDigits: 6
|
|
147
195
|
});
|
|
148
|
-
return (_jsxs("div", { className: "flex w-full gap-3 flex-col", children: [_jsx(Text, { variant: "normal", color: "primary", children: description }), _jsxs("div", { className: "flex w-full flex-col gap-2", children: [!disableMainCurrency && (_jsx(CryptoOption, { chainId: chainId, currencyName: mainCurrencyName || mainCurrencySymbol || '', price: displayPrice, iconUrl: mainCurrencyLogo, symbol: mainCurrencySymbol || '', isSelected: compareAddress(selectedCurrency || '',
|
|
196
|
+
return (_jsxs("div", { className: "flex w-full gap-3 flex-col", children: [_jsx(Text, { variant: "normal", color: "primary", children: description }), _jsxs("div", { className: "flex w-full flex-col gap-2", children: [!disableMainCurrency && (_jsx(CryptoOption, { chainId: chainId, currencyName: mainCurrencyName || mainCurrencySymbol || '', price: displayPrice, iconUrl: mainCurrencyLogo, symbol: mainCurrencySymbol || '', isSelected: compareAddress(selectedCurrency || '', toTokenAddress), onClick: () => {
|
|
149
197
|
setIsError(false);
|
|
150
|
-
setSelectedCurrency(
|
|
151
|
-
}, disabled: isTxsPending },
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
const displayPrice =
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
});
|
|
159
|
-
return (_jsx(CryptoOption, { chainId: chainId, currencyName: swapPrice.info?.name || swapPrice.info?.symbol || '', symbol: swapPrice.info?.symbol || '', isSelected: compareAddress(selectedCurrency || '', sellCurrencyAddress), iconUrl: swapPrice.info?.logoURI, price: displayPrice, onClick: () => {
|
|
198
|
+
setSelectedCurrency(toTokenAddress);
|
|
199
|
+
}, disabled: isTxsPending }, toTokenAddress)), swapRoutes
|
|
200
|
+
.flatMap(route => route.fromTokens)
|
|
201
|
+
.map(tokenOption => {
|
|
202
|
+
const displayPrice = formatUnits(BigInt(tokenOption.price || '0'), tokenOption.decimals || 0);
|
|
203
|
+
const balance = tokensBalancesMap.get(tokenOption.address.toLowerCase());
|
|
204
|
+
const insufficientFunds = balance ? BigInt(balance) < BigInt(tokenOption.price || '0') : false;
|
|
205
|
+
return (_jsx(CryptoOption, { chainId: chainId, currencyName: tokenOption.name || tokenOption.symbol || '', symbol: tokenOption.symbol || '', isSelected: compareAddress(selectedCurrency || '', tokenOption.address), iconUrl: tokenOption.logoUri, price: displayPrice, showInsufficientFundsWarning: insufficientFunds, onClick: () => {
|
|
160
206
|
setIsError(false);
|
|
161
|
-
setSelectedCurrency(
|
|
162
|
-
}, disabled: isTxsPending },
|
|
163
|
-
})] }), isError && (_jsx("div", { className: "w-full", children: _jsx(Text, { color: "negative", variant: "small", children: "A problem occurred while executing the transaction." }) })), isErrorSwapQuote && (_jsx("div", { className: "w-full", children: _jsx(Text, { color: "negative", variant: "small", children: "A problem occurred while fetching the swap quote." }) })), _jsx(Button, { disabled: noOptionsFound || !selectedCurrency || quoteFetchInProgress || isTxsPending || isErrorSwapQuote, variant: "primary", label: quoteFetchInProgress ? 'Preparing swap...' : 'Proceed', onClick: onClickProceed })] }));
|
|
207
|
+
setSelectedCurrency(tokenOption.address);
|
|
208
|
+
}, disabled: isTxsPending }, tokenOption.address));
|
|
209
|
+
})] }), isError && (_jsx("div", { className: "w-full", children: _jsx(Text, { color: "negative", variant: "small", children: "A problem occurred while executing the transaction." }) })), isErrorSwapQuote && (_jsx("div", { className: "w-full", children: _jsx(Text, { color: "negative", variant: "small", children: "A problem occurred while fetching the swap quote." }) })), _jsx(Button, { disabled: noOptionsFound || !selectedCurrency || quoteFetchInProgress || isTxsPending || isErrorSwapQuote, variant: "primary", label: quoteFetchInProgress ? 'Preparing swap...' : isTxsPending ? 'Preparing transaction...' : 'Proceed', onClick: onClickProceed })] }));
|
|
164
210
|
}
|
|
165
211
|
};
|
|
166
212
|
return (_jsx("div", { className: "flex flex-col gap-2 items-start pb-6 px-6", style: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/views/Swap/index.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAA;AACnG,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,2BAA2B,CAAA;AACjE,OAAO,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/views/Swap/index.tsx"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@0xsequence/checkout",
|
|
3
|
-
"version": "5.2.
|
|
3
|
+
"version": "5.2.3",
|
|
4
4
|
"description": "Checkout UI for Sequence Web SDK",
|
|
5
5
|
"repository": "https://github.com/0xsequence/web-sdk/tree/master/packages/checkout",
|
|
6
6
|
"author": "Horizon Blockchain Games",
|
|
@@ -21,17 +21,17 @@
|
|
|
21
21
|
],
|
|
22
22
|
"dependencies": {
|
|
23
23
|
"@0xsequence/design-system": "2.1.6",
|
|
24
|
-
"@0xsequence/marketplace": "^2.
|
|
24
|
+
"@0xsequence/marketplace": "^2.3.10",
|
|
25
|
+
"motion": "^12.9.2",
|
|
25
26
|
"pako": "^2.1.0",
|
|
26
|
-
"qrcode.react": "^4.0
|
|
27
|
+
"qrcode.react": "^4.2.0",
|
|
27
28
|
"react-copy-to-clipboard": "^5.1.0",
|
|
28
|
-
"timeago-react": "^3.0.
|
|
29
|
-
"
|
|
30
|
-
"@0xsequence/hooks": "5.2.1"
|
|
29
|
+
"timeago-react": "^3.0.7",
|
|
30
|
+
"@0xsequence/hooks": "5.2.3"
|
|
31
31
|
},
|
|
32
32
|
"peerDependencies": {
|
|
33
33
|
"0xsequence": ">= 2.3.7",
|
|
34
|
-
"@0xsequence/api": "
|
|
34
|
+
"@0xsequence/api": "2.3.11",
|
|
35
35
|
"@0xsequence/indexer": ">= 2.3.7",
|
|
36
36
|
"@0xsequence/metadata": ">= 2.3.7",
|
|
37
37
|
"@0xsequence/network": ">= 2.3.7",
|
|
@@ -42,19 +42,19 @@
|
|
|
42
42
|
"react-dom": ">= 17",
|
|
43
43
|
"viem": ">= 2.28.0",
|
|
44
44
|
"wagmi": ">= 2.15.0",
|
|
45
|
-
"@0xsequence/connect": "5.2.
|
|
45
|
+
"@0xsequence/connect": "5.2.3"
|
|
46
46
|
},
|
|
47
47
|
"devDependencies": {
|
|
48
|
-
"@tanstack/react-query": "^5.
|
|
48
|
+
"@tanstack/react-query": "^5.74.11",
|
|
49
49
|
"@types/pako": "^2.0.3",
|
|
50
50
|
"@types/react-copy-to-clipboard": "^5.0.7",
|
|
51
|
-
"ethers": "^6.13.
|
|
52
|
-
"react": "^19.
|
|
53
|
-
"react-dom": "^19.
|
|
54
|
-
"viem": "^2.28.
|
|
55
|
-
"vite": "^5.
|
|
56
|
-
"wagmi": "^2.15.
|
|
57
|
-
"@0xsequence/connect": "5.2.
|
|
51
|
+
"ethers": "^6.13.7",
|
|
52
|
+
"react": "^19.1.0",
|
|
53
|
+
"react-dom": "^19.1.0",
|
|
54
|
+
"viem": "^2.28.1",
|
|
55
|
+
"vite": "^5.4.19",
|
|
56
|
+
"wagmi": "^2.15.1",
|
|
57
|
+
"@0xsequence/connect": "5.2.3"
|
|
58
58
|
},
|
|
59
59
|
"scripts": {
|
|
60
60
|
"build": "pnpm build:clean && pnpm build:esm && pnpm build:cjs",
|