@0xsquid/react-hooks 1.0.44-beta.2 → 1.0.44-beta.4
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/core/constants.d.ts +2 -3
- package/dist/core/constants.js +16 -17
- package/dist/core/constants.js.map +1 -1
- package/dist/core/queries/queries-keys.d.ts +2 -1
- package/dist/core/queries/queries-keys.js +5 -0
- package/dist/core/queries/queries-keys.js.map +1 -1
- package/dist/hooks/chains/useSquidChains.js +3 -2
- package/dist/hooks/chains/useSquidChains.js.map +1 -1
- package/dist/hooks/index.d.ts +1 -0
- package/dist/hooks/index.js +1 -0
- package/dist/hooks/index.js.map +1 -1
- package/dist/hooks/squid/useSquid.js +3 -2
- package/dist/hooks/squid/useSquid.js.map +1 -1
- package/dist/hooks/store/useHistoryStore.d.ts +3 -2
- package/dist/hooks/store/useHistoryStore.js +16 -6
- package/dist/hooks/store/useHistoryStore.js.map +1 -1
- package/dist/hooks/store/useSquidStore.d.ts +11 -14
- package/dist/hooks/store/useSquidStore.js +12 -13
- package/dist/hooks/store/useSquidStore.js.map +1 -1
- package/dist/hooks/swap/useSwap.d.ts +4 -5
- package/dist/hooks/swap/useSwap.js +50 -103
- package/dist/hooks/swap/useSwap.js.map +1 -1
- package/dist/hooks/tokens/useAllTokensWithBalanceForChainType.js +2 -2
- package/dist/hooks/tokens/useAllTokensWithBalanceForChainType.js.map +1 -1
- package/dist/hooks/tokens/useBalance.js +4 -4
- package/dist/hooks/tokens/useBalance.js.map +1 -1
- package/dist/hooks/tokens/useSingleTokenPrice.d.ts +19 -1
- package/dist/hooks/tokens/useSquidTokens.d.ts +76 -5
- package/dist/hooks/tokens/useSquidTokens.js +52 -105
- package/dist/hooks/tokens/useSquidTokens.js.map +1 -1
- package/dist/hooks/tokens/useTokensWithBalance.js +2 -2
- package/dist/hooks/tokens/useTokensWithBalance.js.map +1 -1
- package/dist/hooks/transaction/useAllTransactionsStatus.d.ts +4 -0
- package/dist/hooks/transaction/useAllTransactionsStatus.js +51 -0
- package/dist/hooks/transaction/useAllTransactionsStatus.js.map +1 -0
- package/dist/hooks/transaction/useEstimate.d.ts +58 -3
- package/dist/hooks/transaction/useEstimate.js +2 -2
- package/dist/hooks/transaction/useEstimate.js.map +1 -1
- package/dist/hooks/transaction/useEstimatePriceImpact.js +2 -2
- package/dist/hooks/transaction/useEstimatePriceImpact.js.map +1 -1
- package/dist/hooks/transaction/useExecuteTransaction.js +14 -8
- package/dist/hooks/transaction/useExecuteTransaction.js.map +1 -1
- package/dist/hooks/transaction/useExpress.js +2 -2
- package/dist/hooks/transaction/useExpress.js.map +1 -1
- package/dist/hooks/transaction/useGetRoute.js +6 -4
- package/dist/hooks/transaction/useGetRoute.js.map +1 -1
- package/dist/hooks/transaction/useSingleTransaction.d.ts +1 -2
- package/dist/hooks/transaction/useSingleTransaction.js +10 -24
- package/dist/hooks/transaction/useSingleTransaction.js.map +1 -1
- package/dist/hooks/transaction/useTransaction.js +5 -2
- package/dist/hooks/transaction/useTransaction.js.map +1 -1
- package/dist/hooks/user/useHistory.d.ts +1 -1
- package/dist/hooks/user/useHistory.js +25 -7
- package/dist/hooks/user/useHistory.js.map +1 -1
- package/dist/hooks/user/useUserParams.js +2 -2
- package/dist/hooks/user/useUserParams.js.map +1 -1
- package/dist/provider/index.js +2 -2
- package/dist/provider/index.js.map +1 -1
- package/dist/services/internal/configService.js +23 -23
- package/dist/services/internal/configService.js.map +1 -1
- package/dist/services/internal/transactionService.d.ts +38 -2
- package/dist/services/internal/transactionService.js +57 -0
- package/dist/services/internal/transactionService.js.map +1 -1
- package/package.json +2 -2
|
@@ -1,124 +1,86 @@
|
|
|
1
1
|
import { ChainType } from "@0xsquid/squid-types";
|
|
2
|
-
import { useCallback, useEffect, useMemo } from "react";
|
|
2
|
+
import { useCallback, useEffect, useMemo, useRef } from "react";
|
|
3
3
|
import { chainIdResetValue, destinationAddressResetValue, } from "../../core/constants";
|
|
4
4
|
import { useSquidChains } from "../../hooks/chains/useSquidChains";
|
|
5
|
-
import {
|
|
5
|
+
import { useConfigStore, useSwapRoutePersistStore, useTransactionStore, } from "../../hooks/store/useSquidStore";
|
|
6
6
|
import { useSquidTokens } from "../../hooks/tokens/useSquidTokens";
|
|
7
7
|
import { useMultiChainWallet } from "../../hooks/wallet/useMultiChainWallet";
|
|
8
8
|
import { filterTokensForDestination, getFirstAvailableChainId, getInitialChainIdFromConfig, getInitialOrDefaultTokenAddressForChain, getInitialTokenAddressForChain, getTokensForChain, } from "../../services/internal/configService";
|
|
9
9
|
import { WidgetEvents } from "../../services/internal/eventService";
|
|
10
10
|
export const useSwap = () => {
|
|
11
|
-
const
|
|
11
|
+
const config = useConfigStore((state) => state.config);
|
|
12
|
+
const fromPrice = useTransactionStore((state) => state.fromPrice);
|
|
12
13
|
const { swapRoute } = useSwapRoutePersistStore();
|
|
13
14
|
const { tokens } = useSquidTokens();
|
|
14
15
|
const { chains, supportedDestinationChains, supportedSourceChains } = useSquidChains();
|
|
15
|
-
//
|
|
16
|
-
//
|
|
16
|
+
// Performance Optimization: Use refs for frequently changing values
|
|
17
|
+
// This prevents unnecessary re-renders when these values change
|
|
18
|
+
const configRef = useRef(config);
|
|
19
|
+
const tokensRef = useRef(tokens);
|
|
20
|
+
const chainsRef = useRef(chains);
|
|
21
|
+
useEffect(() => {
|
|
22
|
+
configRef.current = config;
|
|
23
|
+
tokensRef.current = tokens;
|
|
24
|
+
chainsRef.current = chains;
|
|
25
|
+
}, [config, tokens, chains]);
|
|
17
26
|
const sourceChainId = useMemo(() => swapRoute?.fromChainId ||
|
|
18
|
-
(
|
|
19
|
-
|
|
27
|
+
(chainsRef.current.find((c) => c.chainId === configRef.current.initialAssets?.from?.chainId) &&
|
|
28
|
+
configRef.current.initialAssets?.from?.chainId), [swapRoute?.fromChainId]);
|
|
20
29
|
const destChainId = useMemo(() => swapRoute?.toChainId ||
|
|
21
|
-
(
|
|
22
|
-
|
|
23
|
-
const fromChain = useMemo(() =>
|
|
24
|
-
|
|
25
|
-
const fromTokens = useMemo(() => getTokensForChain(
|
|
30
|
+
(chainsRef.current.find((c) => c.chainId === configRef.current.initialAssets?.to?.chainId) &&
|
|
31
|
+
configRef.current.initialAssets?.to?.chainId), [swapRoute?.toChainId]);
|
|
32
|
+
const fromChain = useMemo(() => chainsRef.current.find((c) => c.chainId === swapRoute?.fromChainId), [swapRoute?.fromChainId]);
|
|
33
|
+
const toChain = useMemo(() => chainsRef.current.find((c) => c.chainId === swapRoute?.toChainId), [swapRoute?.toChainId]);
|
|
34
|
+
const fromTokens = useMemo(() => getTokensForChain(tokensRef.current, sourceChainId), [sourceChainId]);
|
|
26
35
|
const fromToken = useMemo(() => fromTokens.find((t) => t.address === swapRoute?.fromTokenAddress), [fromTokens, swapRoute?.fromTokenAddress]);
|
|
27
|
-
const
|
|
28
|
-
// toTokens are squid tokens filtered by the destination chain, and some other filters like subgraph ids
|
|
29
|
-
const toTokens = useMemo(() => {
|
|
30
|
-
return filterTokensForDestination(getTokensForChain(tokens, destChainId), toChain, fromToken);
|
|
31
|
-
}, [tokens, destChainId, toChain, fromToken]);
|
|
36
|
+
const toTokens = useMemo(() => filterTokensForDestination(getTokensForChain(tokensRef.current, destChainId), toChain, fromToken), [destChainId, toChain, fromToken]);
|
|
32
37
|
const toToken = useMemo(() => toTokens.find((t) => t.address === swapRoute?.toTokenAddress), [toTokens, swapRoute?.toTokenAddress]);
|
|
33
|
-
const isSameChain =
|
|
34
|
-
const tokenItems = useMemo(() => ({
|
|
35
|
-
from: fromTokens,
|
|
36
|
-
to: toTokens,
|
|
37
|
-
}), [fromTokens, toTokens]);
|
|
38
|
-
const updatedDestinationAddress = useMemo(() => swapRoute?.destinationAddress, [swapRoute?.destinationAddress]);
|
|
38
|
+
const isSameChain = sourceChainId === destChainId;
|
|
39
|
+
const tokenItems = useMemo(() => ({ from: fromTokens, to: toTokens }), [fromTokens, toTokens]);
|
|
39
40
|
const { connectedAddress: destinationUserAddress } = useMultiChainWallet(toChain);
|
|
40
|
-
|
|
41
|
-
* Important to have a defined address otherwise the "getRoute" cannot be called
|
|
42
|
-
* TODO: Improve this check readability
|
|
43
|
-
*/
|
|
44
|
-
const destinationAddress = useMemo(() => {
|
|
45
|
-
if (updatedDestinationAddress)
|
|
46
|
-
return updatedDestinationAddress;
|
|
47
|
-
if (destinationUserAddress)
|
|
48
|
-
return destinationUserAddress;
|
|
49
|
-
return undefined;
|
|
50
|
-
}, [destinationUserAddress, updatedDestinationAddress]);
|
|
51
|
-
/**
|
|
52
|
-
* When user changes the price of the source token,
|
|
53
|
-
* This will update the destination token price
|
|
54
|
-
* @param price: string
|
|
55
|
-
*/
|
|
41
|
+
const destinationAddress = swapRoute?.destinationAddress || destinationUserAddress;
|
|
56
42
|
const fromPriceChanged = useCallback((price) => {
|
|
57
|
-
|
|
58
|
-
fromPrice: price || undefined,
|
|
59
|
-
});
|
|
43
|
+
useTransactionStore.setState({ fromPrice: price || undefined });
|
|
60
44
|
}, []);
|
|
61
45
|
/**
|
|
62
46
|
* Destination token address has different logic
|
|
63
47
|
* Some tokens are not available based on the source chain/token
|
|
64
|
-
* TODO: This could need a refactor
|
|
65
48
|
*/
|
|
66
49
|
const handleDestinationAddressOnSwapChange = useCallback((fromChainId, fromTokenAddress, toTokenAddress, toChainId) => {
|
|
67
|
-
const srcToken =
|
|
50
|
+
const srcToken = tokensRef.current.find((t) => t.address === (fromTokenAddress ?? swapRoute?.fromTokenAddress) &&
|
|
68
51
|
t.chainId === fromChainId);
|
|
69
|
-
const destChain =
|
|
70
|
-
const destinationTokensFiltered = filterTokensForDestination(getTokensForChain(
|
|
71
|
-
const defaultToAddress = getInitialOrDefaultTokenAddressForChain(destinationTokensFiltered,
|
|
52
|
+
const destChain = chainsRef.current.find((c) => c.chainId === (toChainId ?? swapRoute?.toChainId));
|
|
53
|
+
const destinationTokensFiltered = filterTokensForDestination(getTokensForChain(tokensRef.current, toChainId ?? swapRoute?.toChainId), destChain, srcToken);
|
|
54
|
+
const defaultToAddress = getInitialOrDefaultTokenAddressForChain(destinationTokensFiltered, configRef.current, toChainId ?? swapRoute?.toChainId, "to");
|
|
72
55
|
let destinationTokenAddress = toChainId && !toTokenAddress
|
|
73
56
|
? defaultToAddress
|
|
74
57
|
: toTokenAddress ?? swapRoute?.toTokenAddress;
|
|
75
|
-
// Re assign destination token address if it's not available
|
|
76
58
|
if (destinationTokensFiltered.find((t) => t.address === destinationTokenAddress) === undefined) {
|
|
77
59
|
destinationTokenAddress = defaultToAddress;
|
|
78
60
|
}
|
|
79
61
|
return destinationTokenAddress;
|
|
80
|
-
}, [
|
|
81
|
-
config,
|
|
82
|
-
fromTokens,
|
|
83
|
-
tokens,
|
|
84
|
-
swapRoute?.fromTokenAddress,
|
|
85
|
-
swapRoute?.toChainId,
|
|
86
|
-
swapRoute?.fromChainId,
|
|
87
|
-
swapRoute?.toTokenAddress,
|
|
88
|
-
toChain,
|
|
89
|
-
]);
|
|
62
|
+
}, [swapRoute]);
|
|
90
63
|
/**
|
|
91
|
-
* When user changes
|
|
92
|
-
*
|
|
64
|
+
* When user changes something from the SwapView
|
|
65
|
+
* param changed can be chains, tokens, or destination address
|
|
93
66
|
*/
|
|
94
67
|
const onSwapChange = useCallback(async ({ fromChainId, toChainId, fromTokenAddress, toTokenAddress, destinationAddress, fallbackAddress, }) => {
|
|
95
68
|
const srcChainId = fromChainId ?? swapRoute?.fromChainId;
|
|
96
|
-
|
|
97
|
-
// This can be either the first token or the one set by the user from config
|
|
98
|
-
const defaultFromAddress = getInitialOrDefaultTokenAddressForChain(tokens, config, srcChainId, "from");
|
|
99
|
-
// Get the destination ChainId based on parameters of swap received
|
|
69
|
+
const defaultFromAddress = getInitialOrDefaultTokenAddressForChain(tokensRef.current, configRef.current, srcChainId, "from");
|
|
100
70
|
const destinationChainId = toChainId === chainIdResetValue
|
|
101
71
|
? undefined
|
|
102
72
|
: toChainId ?? swapRoute?.toChainId;
|
|
103
|
-
// Destination Token Address based on parameters of swap received
|
|
104
|
-
// If the user only changed the chain, we need to get the default token address
|
|
105
|
-
// Otherwise, we use the one received
|
|
106
73
|
const sourceTokenAddress = fromChainId && !fromTokenAddress
|
|
107
74
|
? defaultFromAddress
|
|
108
75
|
: fromTokenAddress ?? swapRoute?.fromTokenAddress;
|
|
109
|
-
// Destination Token Address based on parameters of swap received
|
|
110
76
|
const destinationWalletAddress = destinationAddress === destinationAddressResetValue
|
|
111
77
|
? undefined
|
|
112
78
|
: destinationAddress ?? swapRoute?.destinationAddress;
|
|
113
|
-
// If destination wallet address is changed and fallback is not, reset fallback address
|
|
114
79
|
const fbAddress = destinationAddress === destinationAddressResetValue ||
|
|
115
80
|
(!!destinationAddress && !fallbackAddress)
|
|
116
81
|
? undefined
|
|
117
82
|
: fallbackAddress ?? swapRoute?.fallbackAddress;
|
|
118
|
-
// The destination token address is a bit different
|
|
119
|
-
// Some specific filters apply based on source chain & token
|
|
120
83
|
const destinationTokenAddress = handleDestinationAddressOnSwapChange(srcChainId, sourceTokenAddress, toTokenAddress, toChainId);
|
|
121
|
-
// Fire event
|
|
122
84
|
WidgetEvents.getInstance().dispatchSwapParamsChanged({
|
|
123
85
|
fromChainId: String(srcChainId),
|
|
124
86
|
toChainId: String(destinationChainId),
|
|
@@ -135,23 +97,11 @@ export const useSwap = () => {
|
|
|
135
97
|
fallbackAddress: fbAddress,
|
|
136
98
|
},
|
|
137
99
|
});
|
|
138
|
-
}, [
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
swapRoute?.fromTokenAddress,
|
|
144
|
-
swapRoute?.destinationAddress,
|
|
145
|
-
swapRoute?.fallbackAddress,
|
|
146
|
-
handleDestinationAddressOnSwapChange,
|
|
147
|
-
]);
|
|
148
|
-
/**
|
|
149
|
-
* Inverting selected prices, chains & tokens
|
|
150
|
-
*/
|
|
151
|
-
const invertSwaps = () => {
|
|
152
|
-
const isToChainDisabledOnSource = config.disabledChains?.source?.includes(String(destChainId));
|
|
153
|
-
const isFromChainDisabledOnDestination = config.disabledChains?.destination?.includes(String(sourceChainId));
|
|
154
|
-
// if any of the chains are disabled on the opposite direction, do not allow to invert swap
|
|
100
|
+
}, [swapRoute, handleDestinationAddressOnSwapChange]);
|
|
101
|
+
const invertSwaps = useCallback(() => {
|
|
102
|
+
// Check if inversion is allowed based on chain configurations
|
|
103
|
+
const isToChainDisabledOnSource = configRef.current.disabledChains?.source?.includes(String(destChainId));
|
|
104
|
+
const isFromChainDisabledOnDestination = configRef.current.disabledChains?.destination?.includes(String(sourceChainId));
|
|
155
105
|
if (isToChainDisabledOnSource || isFromChainDisabledOnDestination)
|
|
156
106
|
return;
|
|
157
107
|
WidgetEvents.getInstance().dispatchSwapParamsChanged({
|
|
@@ -168,30 +118,27 @@ export const useSwap = () => {
|
|
|
168
118
|
toTokenAddress: swapRoute?.fromTokenAddress,
|
|
169
119
|
},
|
|
170
120
|
});
|
|
171
|
-
};
|
|
172
|
-
|
|
173
|
-
const expressSupportedForThisRoute = useMemo(() => toChain?.chainType !== ChainType.COSMOS, [toChain?.chainType]);
|
|
121
|
+
}, [destChainId, sourceChainId, swapRoute]);
|
|
122
|
+
const expressSupportedForThisRoute = toChain?.chainType !== ChainType.COSMOS;
|
|
174
123
|
/**
|
|
175
124
|
* Init default chain ids and default token addresses
|
|
176
|
-
*
|
|
125
|
+
* Based on config & available tokens
|
|
177
126
|
*/
|
|
178
127
|
useEffect(() => {
|
|
179
|
-
if (
|
|
180
|
-
|
|
181
|
-
|
|
128
|
+
if (tokensRef.current.length > 0 &&
|
|
129
|
+
!useSwapRoutePersistStore.getState().swapRoute) {
|
|
130
|
+
const defaultFromChainId = getFirstAvailableChainId(configRef.current, "from", supportedSourceChains);
|
|
182
131
|
const defaultToChainId = getInitialChainIdFromConfig({
|
|
183
132
|
chains: supportedDestinationChains,
|
|
184
|
-
config,
|
|
133
|
+
config: configRef.current,
|
|
185
134
|
direction: "to",
|
|
186
135
|
});
|
|
187
|
-
|
|
188
|
-
const fromTokenAddress = getInitialOrDefaultTokenAddressForChain(tokens, config, defaultFromChainId, "from");
|
|
189
|
-
// if no initial token is found in config, we default to undefined
|
|
136
|
+
const fromTokenAddress = getInitialOrDefaultTokenAddressForChain(tokensRef.current, configRef.current, defaultFromChainId, "from");
|
|
190
137
|
const toTokenAddress = getInitialTokenAddressForChain({
|
|
191
138
|
chainId: defaultToChainId,
|
|
192
|
-
config,
|
|
139
|
+
config: configRef.current,
|
|
193
140
|
direction: "to",
|
|
194
|
-
tokens,
|
|
141
|
+
tokens: tokensRef.current,
|
|
195
142
|
unavailableTokenAddress: fromTokenAddress,
|
|
196
143
|
});
|
|
197
144
|
useSwapRoutePersistStore.setState({
|
|
@@ -204,7 +151,7 @@ export const useSwap = () => {
|
|
|
204
151
|
},
|
|
205
152
|
});
|
|
206
153
|
}
|
|
207
|
-
}, [
|
|
154
|
+
}, [supportedDestinationChains, supportedSourceChains]);
|
|
208
155
|
return {
|
|
209
156
|
tokenItems,
|
|
210
157
|
onSwapChange,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useSwap.js","sourceRoot":"","sources":["../../../src/hooks/swap/useSwap.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,
|
|
1
|
+
{"version":3,"file":"useSwap.js","sourceRoot":"","sources":["../../../src/hooks/swap/useSwap.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,10 +6,10 @@ import { keys } from "../../core/queries/queries-keys";
|
|
|
6
6
|
import { getAllKeysForSupportedCosmosChains } from "../../services";
|
|
7
7
|
import { getAllCosmosBalancesForAddress, getAllEvmTokensBalance, } from "../../services/external/rpcService";
|
|
8
8
|
import { useSquidChains } from "../chains/useSquidChains";
|
|
9
|
-
import {
|
|
9
|
+
import { useConfigStore } from "../store/useSquidStore";
|
|
10
10
|
import { useSquidTokens } from "./useSquidTokens";
|
|
11
11
|
export const useAllTokensWithBalanceForChainType = ({ chainType, address, queryOptions, }) => {
|
|
12
|
-
const
|
|
12
|
+
const config = useConfigStore((state) => state.config);
|
|
13
13
|
const { cosmosChains } = useSquidChains();
|
|
14
14
|
const { evmTokens, cosmosTokens } = useSquidTokens();
|
|
15
15
|
const { keplrTypeWallet } = useCosmosContext();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useAllTokensWithBalanceForChainType.js","sourceRoot":"","sources":["../../../src/hooks/tokens/useAllTokensWithBalanceForChainType.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACjD,OAAO,EAEL,QAAQ,EACR,cAAc,GACf,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAC3C,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAC9C,OAAO,EAAE,IAAI,EAAE,MAAM,iCAAiC,CAAC;AAEvD,OAAO,EAAE,kCAAkC,EAAE,MAAM,gBAAgB,CAAC;AACpE,OAAO,EACL,8BAA8B,EAC9B,sBAAsB,GACvB,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"useAllTokensWithBalanceForChainType.js","sourceRoot":"","sources":["../../../src/hooks/tokens/useAllTokensWithBalanceForChainType.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACjD,OAAO,EAEL,QAAQ,EACR,cAAc,GACf,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAC3C,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAC9C,OAAO,EAAE,IAAI,EAAE,MAAM,iCAAiC,CAAC;AAEvD,OAAO,EAAE,kCAAkC,EAAE,MAAM,gBAAgB,CAAC;AACpE,OAAO,EACL,8BAA8B,EAC9B,sBAAsB,GACvB,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAElD,MAAM,CAAC,MAAM,mCAAmC,GAAG,CAAC,EAClD,SAAS,EACT,OAAO,EACP,YAAY,GAKb,EAAE,EAAE;IACH,MAAM,MAAM,GAAG,cAAc,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAEvD,MAAM,EAAE,YAAY,EAAE,GAAG,cAAc,EAAE,CAAC;IAC1C,MAAM,EAAE,SAAS,EAAE,YAAY,EAAE,GAAG,cAAc,EAAE,CAAC;IACrD,MAAM,EAAE,eAAe,EAAE,GAAG,gBAAgB,EAAE,CAAC;IAE/C,MAAM,qBAAqB,GAAG,OAAO,CAAC,GAGpC,EAAE;QACF,OAAO;YACL,GAAG,EAAE,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,CAAC;YACnD,MAAM,EAAE,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,CAAC;SAC1D,CAAC;IACJ,CAAC,EAAE,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC,CAAC;IAE9B,MAAM,QAAQ,GAAG,OAAO,CACtB,GAAG,EAAE,CACH,IAAI,CAAC;QACH,MAAM,EAAE,MAAM,CAAC,MAAM;QACrB,OAAO,EAAE,OAAO;KACjB,CAAC,CAAC,gBAAgB,CAAC,SAAS,CAAC,EAChC,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,EAAE,SAAS,CAAC,CACpC,CAAC;IAEF,MAAM,sBAAsB,GAAG,QAAQ,CACrC,QAAQ,EACR,KAAK,IAAI,EAAE;QACT,IAAI,SAAS,KAAK,SAAS,CAAC,GAAG,EAAE;YAC/B,MAAM,iBAAiB,GAAG,MAAM,sBAAsB,CACpD,SAAS,EACT,OAAQ,CAAC,+DAA+D;aACzE,CAAC;YAEF,OAAO,CAAC,GAAG,iBAAiB,EAAE,GAAG,qBAAqB,CAAC,MAAM,CAAC,CAAC;SAChE;QAED,IAAI,SAAS,KAAK,SAAS,CAAC,MAAM,EAAE;YAClC,kDAAkD;YAClD,MAAM,SAAS,GAAG,MAAM,kCAAkC,CACxD,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,EAClC,eAAe,CAChB,CAAC;YAEF,MAAM,cAAc,GAAG,MAAM,8BAA8B,CAAC;gBAC1D,SAAS;gBACT,YAAY;gBACZ,YAAY;aACb,CAAC,CAAC;YAEH,OAAO,CAAC,GAAG,qBAAqB,CAAC,GAAG,EAAE,GAAG,cAAc,CAAC,CAAC;SAC1D;QAED,OAAO,CAAC,GAAG,qBAAqB,CAAC,GAAG,EAAE,GAAG,qBAAqB,CAAC,MAAM,CAAC,CAAC;IACzE,CAAC,EACD;QACE,uDAAuD;QACvD,GAAG,YAAY;QACf,OAAO,EACL,CAAC,CAAC,OAAO;YACT,SAAS,KAAK,SAAS;YACvB,MAAM,CAAC,MAAM,KAAK,SAAS;YAC3B,CAAC,YAAY,EAAE,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC;KACtE,CACF,CAAC;IAEF,MAAM,WAAW,GAAG,cAAc,EAAE,CAAC;IAErC,sCAAsC;IACtC,sDAAsD;IACtD,yGAAyG;IACzG,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,sBAAsB,CAAC,MAAM,KAAK,SAAS,EAAE;YAC/C,WAAW,CAAC,YAAY,CAAC,QAAQ,EAAE,sBAAsB,CAAC,IAAI,CAAC,CAAC;SACjE;IACH,CAAC,EAAE;QACD,sBAAsB,CAAC,MAAM;QAC7B,sBAAsB,CAAC,IAAI;QAC3B,WAAW;QACX,QAAQ;KACT,CAAC,CAAC;IAEH;;;OAGG;IACH,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,EAAE;QAC1B,OAAO,CACL,sBAAsB,CAAC,IAAI,IAAI;YAC7B,GAAG,qBAAqB,CAAC,GAAG;YAC5B,GAAG,qBAAqB,CAAC,MAAM;SAChC,CACF,CAAC;IACJ,CAAC,EAAE;QACD,sBAAsB,CAAC,IAAI;QAC3B,qBAAqB,CAAC,GAAG;QACzB,qBAAqB,CAAC,MAAM;KAC7B,CAAC,CAAC;IAEH,OAAO;QACL,sBAAsB;QACtB,MAAM;QACN,OAAO,EAAE,sBAAsB,CAAC,OAAO;KACxC,CAAC;AACJ,CAAC,CAAC"}
|
|
@@ -9,10 +9,10 @@ import { nativeEvmTokenAddress } from "../../core/constants";
|
|
|
9
9
|
import { useCosmosContext } from "../../core/providers/CosmosProvider";
|
|
10
10
|
import { keys } from "../../core/queries/queries-keys";
|
|
11
11
|
import { useCosmosForChain } from "../../hooks/cosmos/useCosmosForChain";
|
|
12
|
-
import { useSquidStore } from "../../hooks/store/useSquidStore";
|
|
13
12
|
import { useSwap } from "../../hooks/swap/useSwap";
|
|
14
13
|
import { useSquidTokens } from "../../hooks/tokens/useSquidTokens";
|
|
15
14
|
import { useAllTokensWithBalanceForChain } from "../../hooks/tokens/useTokensWithBalance";
|
|
15
|
+
import { useConfigStore } from "../store/useSquidStore";
|
|
16
16
|
const defaultRefreshIntervalMs = 15000;
|
|
17
17
|
/**
|
|
18
18
|
* Fetches the balance of a user on an EVM chain.
|
|
@@ -26,7 +26,7 @@ const defaultRefreshIntervalMs = 15000;
|
|
|
26
26
|
*/
|
|
27
27
|
export const useEvmBalance = ({ chain, token, userAddress, enabled = true, refreshIntervalMs = defaultRefreshIntervalMs, }) => {
|
|
28
28
|
const { isConnected } = useAccount();
|
|
29
|
-
const
|
|
29
|
+
const config = useConfigStore((state) => state.config);
|
|
30
30
|
const balance = useQuery(keys({ address: userAddress, apiUrl: config.apiUrl }).balance(chain?.chainId, token?.address, userAddress), async () => {
|
|
31
31
|
if (!!chain &&
|
|
32
32
|
isConnected &&
|
|
@@ -58,7 +58,7 @@ export const useEvmBalance = ({ chain, token, userAddress, enabled = true, refre
|
|
|
58
58
|
};
|
|
59
59
|
export const useNativeTokenBalanceFromChain = () => {
|
|
60
60
|
const { isConnected, address } = useAccount();
|
|
61
|
-
const
|
|
61
|
+
const config = useConfigStore((state) => state.config);
|
|
62
62
|
const { fromChain } = useSwap();
|
|
63
63
|
const chainId = fromChain?.chainId;
|
|
64
64
|
const balance = useQuery(keys({ address, apiUrl: config.apiUrl }).nativeBalanceBigNumber(chainId), async () => {
|
|
@@ -72,7 +72,7 @@ export const useNativeTokenBalanceFromChain = () => {
|
|
|
72
72
|
};
|
|
73
73
|
export const useNativeTokenBalanceDestinationChain = () => {
|
|
74
74
|
const { isConnected, address } = useAccount();
|
|
75
|
-
const
|
|
75
|
+
const config = useConfigStore((state) => state.config);
|
|
76
76
|
const { toChain } = useSwap();
|
|
77
77
|
const { tokens } = useSquidTokens();
|
|
78
78
|
const chainId = toChain?.chainId;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useBalance.js","sourceRoot":"","sources":["../../../src/hooks/tokens/useBalance.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjD,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,QAAQ,CAAC;AACvC,OAAO,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AAGnC,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACjD,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAChC,OAAO,EAAE,cAAc,EAAE,MAAM,oDAAoD,CAAC;AACpF,OAAO,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAC7D,OAAO,EAAE,gBAAgB,EAAE,MAAM,qCAAqC,CAAC;AACvE,OAAO,EAAE,IAAI,EAAE,MAAM,iCAAiC,CAAC;AACvD,OAAO,EAAE,iBAAiB,EAAE,MAAM,sCAAsC,CAAC;AACzE,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"useBalance.js","sourceRoot":"","sources":["../../../src/hooks/tokens/useBalance.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,6 +5,24 @@ import type { Token } from "@0xsquid/squid-types";
|
|
|
5
5
|
* @returns
|
|
6
6
|
*/
|
|
7
7
|
export declare const useSingleTokenPrice: (tokenData: Pick<Token, "address" | "chainId"> | undefined) => {
|
|
8
|
-
token:
|
|
8
|
+
token: {
|
|
9
|
+
logoURI: string | undefined;
|
|
10
|
+
type: import("@0xsquid/squid-types").ChainType;
|
|
11
|
+
chainId: string;
|
|
12
|
+
address: string;
|
|
13
|
+
name: string;
|
|
14
|
+
symbol: string;
|
|
15
|
+
decimals: number;
|
|
16
|
+
coingeckoId?: string | undefined;
|
|
17
|
+
interchainTokenId?: string | undefined;
|
|
18
|
+
volatility: import("@0xsquid/squid-types").Volatility;
|
|
19
|
+
usdPrice?: number | undefined;
|
|
20
|
+
axelarNetworkSymbol?: string | undefined;
|
|
21
|
+
subGraphOnly?: boolean | undefined;
|
|
22
|
+
subGraphIds?: string[] | undefined;
|
|
23
|
+
feeOnTransfer?: boolean | undefined;
|
|
24
|
+
isLpToken?: boolean | undefined;
|
|
25
|
+
disabled?: boolean | undefined;
|
|
26
|
+
} | undefined;
|
|
9
27
|
getUSDValue: (balance: string) => string;
|
|
10
28
|
};
|
|
@@ -1,8 +1,80 @@
|
|
|
1
|
-
import { Token } from "@0xsquid/squid-types";
|
|
2
1
|
export declare const useSquidTokens: (direction?: "from" | "to") => {
|
|
3
|
-
tokens:
|
|
4
|
-
|
|
5
|
-
|
|
2
|
+
tokens: {
|
|
3
|
+
logoURI: string | undefined;
|
|
4
|
+
type: import("@0xsquid/squid-types").ChainType;
|
|
5
|
+
chainId: string;
|
|
6
|
+
address: string;
|
|
7
|
+
name: string;
|
|
8
|
+
symbol: string;
|
|
9
|
+
decimals: number;
|
|
10
|
+
coingeckoId?: string | undefined;
|
|
11
|
+
interchainTokenId?: string | undefined;
|
|
12
|
+
volatility: import("@0xsquid/squid-types").Volatility;
|
|
13
|
+
usdPrice?: number | undefined;
|
|
14
|
+
axelarNetworkSymbol?: string | undefined;
|
|
15
|
+
subGraphOnly?: boolean | undefined;
|
|
16
|
+
subGraphIds?: string[] | undefined;
|
|
17
|
+
feeOnTransfer?: boolean | undefined;
|
|
18
|
+
isLpToken?: boolean | undefined;
|
|
19
|
+
disabled?: boolean | undefined;
|
|
20
|
+
}[];
|
|
21
|
+
evmTokens: {
|
|
22
|
+
logoURI: string | undefined;
|
|
23
|
+
type: import("@0xsquid/squid-types").ChainType;
|
|
24
|
+
chainId: string;
|
|
25
|
+
address: string;
|
|
26
|
+
name: string;
|
|
27
|
+
symbol: string;
|
|
28
|
+
decimals: number;
|
|
29
|
+
coingeckoId?: string | undefined;
|
|
30
|
+
interchainTokenId?: string | undefined;
|
|
31
|
+
volatility: import("@0xsquid/squid-types").Volatility;
|
|
32
|
+
usdPrice?: number | undefined;
|
|
33
|
+
axelarNetworkSymbol?: string | undefined;
|
|
34
|
+
subGraphOnly?: boolean | undefined;
|
|
35
|
+
subGraphIds?: string[] | undefined;
|
|
36
|
+
feeOnTransfer?: boolean | undefined;
|
|
37
|
+
isLpToken?: boolean | undefined;
|
|
38
|
+
disabled?: boolean | undefined;
|
|
39
|
+
}[];
|
|
40
|
+
cosmosTokens: {
|
|
41
|
+
logoURI: string | undefined;
|
|
42
|
+
type: import("@0xsquid/squid-types").ChainType;
|
|
43
|
+
chainId: string;
|
|
44
|
+
address: string;
|
|
45
|
+
name: string;
|
|
46
|
+
symbol: string;
|
|
47
|
+
decimals: number;
|
|
48
|
+
coingeckoId?: string | undefined;
|
|
49
|
+
interchainTokenId?: string | undefined;
|
|
50
|
+
volatility: import("@0xsquid/squid-types").Volatility;
|
|
51
|
+
usdPrice?: number | undefined;
|
|
52
|
+
axelarNetworkSymbol?: string | undefined;
|
|
53
|
+
subGraphOnly?: boolean | undefined;
|
|
54
|
+
subGraphIds?: string[] | undefined;
|
|
55
|
+
feeOnTransfer?: boolean | undefined;
|
|
56
|
+
isLpToken?: boolean | undefined;
|
|
57
|
+
disabled?: boolean | undefined;
|
|
58
|
+
}[];
|
|
59
|
+
findToken: (address: string, chainId: string) => {
|
|
60
|
+
logoURI: string | undefined;
|
|
61
|
+
type: import("@0xsquid/squid-types").ChainType;
|
|
62
|
+
chainId: string;
|
|
63
|
+
address: string;
|
|
64
|
+
name: string;
|
|
65
|
+
symbol: string;
|
|
66
|
+
decimals: number;
|
|
67
|
+
coingeckoId?: string | undefined;
|
|
68
|
+
interchainTokenId?: string | undefined;
|
|
69
|
+
volatility: import("@0xsquid/squid-types").Volatility;
|
|
70
|
+
usdPrice?: number | undefined;
|
|
71
|
+
axelarNetworkSymbol?: string | undefined;
|
|
72
|
+
subGraphOnly?: boolean | undefined;
|
|
73
|
+
subGraphIds?: string[] | undefined;
|
|
74
|
+
feeOnTransfer?: boolean | undefined;
|
|
75
|
+
isLpToken?: boolean | undefined;
|
|
76
|
+
disabled?: boolean | undefined;
|
|
77
|
+
} | undefined;
|
|
6
78
|
fuseSearchOptions: {
|
|
7
79
|
isCaseSensitive: boolean;
|
|
8
80
|
threshold: number;
|
|
@@ -13,5 +85,4 @@ export declare const useSquidTokens: (direction?: "from" | "to") => {
|
|
|
13
85
|
weight: number;
|
|
14
86
|
}[];
|
|
15
87
|
};
|
|
16
|
-
findToken: (address: string, chainId: string) => Token | undefined;
|
|
17
88
|
};
|