@0xsquid/react-hooks 2.0.0 → 2.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (62) hide show
  1. package/dist/core/constants.js +0 -1
  2. package/dist/core/constants.js.map +1 -1
  3. package/dist/core/externalLinks.d.ts +0 -1
  4. package/dist/core/externalLinks.js +0 -1
  5. package/dist/core/externalLinks.js.map +1 -1
  6. package/dist/core/queries/queries-keys.d.ts +42 -30
  7. package/dist/core/queries/queries-keys.js +103 -74
  8. package/dist/core/queries/queries-keys.js.map +1 -1
  9. package/dist/core/types/config.d.ts +0 -1
  10. package/dist/hooks/index.d.ts +3 -2
  11. package/dist/hooks/index.js +3 -2
  12. package/dist/hooks/index.js.map +1 -1
  13. package/dist/hooks/squid/useSquid.d.ts +1 -1
  14. package/dist/hooks/squid/useSquid.js +3 -9
  15. package/dist/hooks/squid/useSquid.js.map +1 -1
  16. package/dist/hooks/swap/useSwap.js +32 -31
  17. package/dist/hooks/swap/useSwap.js.map +1 -1
  18. package/dist/hooks/tokens/useAllTokensWithBalanceForChainType.js +1 -8
  19. package/dist/hooks/tokens/useAllTokensWithBalanceForChainType.js.map +1 -1
  20. package/dist/hooks/tokens/useBalance.js +4 -12
  21. package/dist/hooks/tokens/useBalance.js.map +1 -1
  22. package/dist/hooks/tokens/useSingleTokenPrice.d.ts +2 -20
  23. package/dist/hooks/tokens/useSingleTokenPrice.js +28 -7
  24. package/dist/hooks/tokens/useSingleTokenPrice.js.map +1 -1
  25. package/dist/hooks/tokens/useSquidTokens.d.ts +4 -76
  26. package/dist/hooks/tokens/useSquidTokens.js +18 -37
  27. package/dist/hooks/tokens/useSquidTokens.js.map +1 -1
  28. package/dist/hooks/tokens/useTokensWithBalance.js +4 -12
  29. package/dist/hooks/tokens/useTokensWithBalance.js.map +1 -1
  30. package/dist/hooks/transaction/useAllTransactionsStatus.js +1 -1
  31. package/dist/hooks/transaction/useAllTransactionsStatus.js.map +1 -1
  32. package/dist/hooks/transaction/useApproval.d.ts +7 -0
  33. package/dist/hooks/transaction/{useTransaction.js → useApproval.js} +14 -39
  34. package/dist/hooks/transaction/useApproval.js.map +1 -0
  35. package/dist/hooks/transaction/useEstimate.d.ts +5 -58
  36. package/dist/hooks/transaction/useEstimate.js +5 -1
  37. package/dist/hooks/transaction/useEstimate.js.map +1 -1
  38. package/dist/hooks/transaction/useExecuteTransaction.js +3 -10
  39. package/dist/hooks/transaction/useExecuteTransaction.js.map +1 -1
  40. package/dist/hooks/transaction/useGetRoute.js +1 -7
  41. package/dist/hooks/transaction/useGetRoute.js.map +1 -1
  42. package/dist/hooks/transaction/useSingleTransaction.d.ts +2 -3
  43. package/dist/hooks/transaction/useSingleTransaction.js +4 -4
  44. package/dist/hooks/transaction/useSingleTransaction.js.map +1 -1
  45. package/dist/services/internal/apiService.d.ts +2 -0
  46. package/dist/services/internal/apiService.js +14 -0
  47. package/dist/services/internal/apiService.js.map +1 -1
  48. package/dist/services/internal/assetsService.d.ts +1 -0
  49. package/dist/services/internal/assetsService.js +6 -0
  50. package/dist/services/internal/assetsService.js.map +1 -1
  51. package/dist/services/internal/configService.js +0 -1
  52. package/dist/services/internal/configService.js.map +1 -1
  53. package/dist/services/internal/transactionService.js +3 -3
  54. package/dist/services/internal/transactionService.js.map +1 -1
  55. package/dist/tests/apiService.test.d.ts +1 -0
  56. package/dist/tests/apiService.test.js +40 -0
  57. package/dist/tests/apiService.test.js.map +1 -0
  58. package/dist/tests/numberService.test.js +9 -11
  59. package/dist/tests/numberService.test.js.map +1 -1
  60. package/package.json +2 -3
  61. package/dist/hooks/transaction/useTransaction.d.ts +0 -16
  62. package/dist/hooks/transaction/useTransaction.js.map +0 -1
@@ -1,42 +1,34 @@
1
1
  import { ChainType } from "@0xsquid/squid-types";
2
- import { useCallback, useEffect, useMemo, useRef } from "react";
2
+ import { useCallback, useEffect, useMemo } from "react";
3
3
  import { chainIdResetValue, destinationAddressResetValue, } from "../../core/constants";
4
4
  import { useSquidChains } from "../../hooks/chains/useSquidChains";
5
5
  import { useConfigStore, useSwapRoutePersistStore, useTransactionStore, } from "../../hooks/store/useSquidStore";
6
6
  import { useSquidTokens } from "../../hooks/tokens/useSquidTokens";
7
- import { useMultiChainWallet } from "../../hooks/wallet/useMultiChainWallet";
8
7
  import { filterTokensForDestination, getFirstAvailableChainId, getInitialChainIdFromConfig, getInitialOrDefaultTokenAddressForChain, getInitialTokenAddressForChain, getTokensForChain, } from "../../services/internal/configService";
9
8
  import { WidgetEvents } from "../../services/internal/eventService";
9
+ import { useMultiChainWallet } from "../wallet/useMultiChainWallet";
10
10
  export const useSwap = () => {
11
11
  const { initialAssets, defaultTokensPerChain, comingSoonChainIds, disabledChains, } = useConfigStore((state) => state.config);
12
12
  const fromPrice = useTransactionStore((state) => state.fromPrice);
13
13
  const { swapRoute } = useSwapRoutePersistStore();
14
14
  const { tokens } = useSquidTokens();
15
15
  const { chains, supportedDestinationChains, supportedSourceChains } = useSquidChains();
16
- // Performance Optimization: Use refs for frequently changing values
17
- // This prevents unnecessary re-renders when these values change
18
- const tokensRef = useRef(tokens);
19
- const chainsRef = useRef(chains);
20
- useEffect(() => {
21
- tokensRef.current = tokens;
22
- chainsRef.current = chains;
23
- }, [tokens, chains]);
24
16
  const sourceChainId = useMemo(() => swapRoute?.fromChainId ||
25
- (chainsRef.current.find((c) => c.chainId === initialAssets?.from?.chainId) &&
26
- initialAssets?.from?.chainId), [swapRoute?.fromChainId, initialAssets?.from?.chainId]);
17
+ (chains.find((c) => c.chainId === initialAssets?.from?.chainId) &&
18
+ initialAssets?.from?.chainId), [swapRoute?.fromChainId, chains, initialAssets?.from?.chainId]);
27
19
  const destChainId = useMemo(() => swapRoute?.toChainId ||
28
- (chainsRef.current.find((c) => c.chainId === initialAssets?.to?.chainId) &&
29
- initialAssets?.to?.chainId), [swapRoute?.toChainId, initialAssets?.to?.chainId]);
30
- const fromChain = useMemo(() => chainsRef.current.find((c) => c.chainId === swapRoute?.fromChainId), [swapRoute?.fromChainId]);
31
- const toChain = useMemo(() => chainsRef.current.find((c) => c.chainId === swapRoute?.toChainId), [swapRoute?.toChainId]);
32
- const fromTokens = useMemo(() => getTokensForChain(tokensRef.current, sourceChainId), [sourceChainId]);
20
+ (chains.find((c) => c.chainId === initialAssets?.to?.chainId) &&
21
+ initialAssets?.to?.chainId), [swapRoute?.toChainId, chains, initialAssets?.to?.chainId]);
22
+ const fromChain = useMemo(() => chains.find((c) => c.chainId === swapRoute?.fromChainId), [swapRoute?.fromChainId, chains]);
23
+ const toChain = useMemo(() => chains.find((c) => c.chainId === swapRoute?.toChainId), [swapRoute?.toChainId, chains]);
24
+ const fromTokens = useMemo(() => getTokensForChain(tokens, sourceChainId), [tokens, sourceChainId]);
33
25
  const fromToken = useMemo(() => fromTokens.find((t) => t.address === swapRoute?.fromTokenAddress), [fromTokens, swapRoute?.fromTokenAddress]);
34
- const toTokens = useMemo(() => filterTokensForDestination(getTokensForChain(tokensRef.current, destChainId), toChain, fromToken), [destChainId, toChain, fromToken]);
26
+ const toTokens = useMemo(() => filterTokensForDestination(getTokensForChain(tokens, destChainId), toChain, fromToken), [destChainId, toChain, fromToken, tokens]);
35
27
  const toToken = useMemo(() => toTokens.find((t) => t.address === swapRoute?.toTokenAddress), [toTokens, swapRoute?.toTokenAddress]);
36
28
  const isSameChain = sourceChainId === destChainId;
37
29
  const tokenItems = useMemo(() => ({ from: fromTokens, to: toTokens }), [fromTokens, toTokens]);
38
30
  const { connectedAddress: destinationUserAddress } = useMultiChainWallet(toChain);
39
- const destinationAddress = swapRoute?.destinationAddress || destinationUserAddress;
31
+ const routeOrWalletDestAddress = swapRoute?.destinationAddress || destinationUserAddress;
40
32
  const fromPriceChanged = useCallback((price) => {
41
33
  useTransactionStore.setState({ fromPrice: price || undefined });
42
34
  }, []);
@@ -45,10 +37,10 @@ export const useSwap = () => {
45
37
  * Some tokens are not available based on the source chain/token
46
38
  */
47
39
  const handleDestinationAddressOnSwapChange = useCallback((fromChainId, fromTokenAddress, toTokenAddress, toChainId) => {
48
- const srcToken = tokensRef.current.find((t) => t.address === (fromTokenAddress ?? swapRoute?.fromTokenAddress) &&
40
+ const srcToken = tokens.find((t) => t.address === (fromTokenAddress ?? swapRoute?.fromTokenAddress) &&
49
41
  t.chainId === fromChainId);
50
- const destChain = chainsRef.current.find((c) => c.chainId === (toChainId ?? swapRoute?.toChainId));
51
- const destinationTokensFiltered = filterTokensForDestination(getTokensForChain(tokensRef.current, toChainId ?? swapRoute?.toChainId), destChain, srcToken);
42
+ const destChain = chains.find((c) => c.chainId === (toChainId ?? swapRoute?.toChainId));
43
+ const destinationTokensFiltered = filterTokensForDestination(getTokensForChain(tokens, toChainId ?? swapRoute?.toChainId), destChain, srcToken);
52
44
  const defaultToAddress = getInitialOrDefaultTokenAddressForChain(destinationTokensFiltered, {
53
45
  initialAssets,
54
46
  defaultTokensPerChain,
@@ -63,7 +55,11 @@ export const useSwap = () => {
63
55
  }
64
56
  return destinationTokenAddress;
65
57
  }, [
66
- swapRoute,
58
+ tokens,
59
+ chains,
60
+ swapRoute?.toChainId,
61
+ swapRoute?.toTokenAddress,
62
+ swapRoute?.fromTokenAddress,
67
63
  initialAssets,
68
64
  defaultTokensPerChain,
69
65
  comingSoonChainIds,
@@ -75,7 +71,7 @@ export const useSwap = () => {
75
71
  */
76
72
  const onSwapChange = useCallback(async ({ fromChainId, toChainId, fromTokenAddress, toTokenAddress, destinationAddress, fallbackAddress, }) => {
77
73
  const srcChainId = fromChainId ?? swapRoute?.fromChainId;
78
- const defaultFromAddress = getInitialOrDefaultTokenAddressForChain(tokensRef.current, {
74
+ const defaultFromAddress = getInitialOrDefaultTokenAddressForChain(tokens, {
79
75
  initialAssets,
80
76
  defaultTokensPerChain,
81
77
  comingSoonChainIds,
@@ -112,12 +108,17 @@ export const useSwap = () => {
112
108
  },
113
109
  });
114
110
  }, [
115
- swapRoute,
116
- handleDestinationAddressOnSwapChange,
111
+ swapRoute?.fromChainId,
112
+ swapRoute?.toChainId,
113
+ swapRoute?.fromTokenAddress,
114
+ swapRoute?.destinationAddress,
115
+ swapRoute?.fallbackAddress,
116
+ tokens,
117
117
  initialAssets,
118
118
  defaultTokensPerChain,
119
119
  comingSoonChainIds,
120
120
  disabledChains,
121
+ handleDestinationAddressOnSwapChange,
121
122
  ]);
122
123
  const invertSwaps = useCallback(() => {
123
124
  // Check if inversion is allowed based on chain configurations
@@ -146,8 +147,7 @@ export const useSwap = () => {
146
147
  * Based on config & available tokens
147
148
  */
148
149
  useEffect(() => {
149
- if (tokensRef.current.length > 0 &&
150
- !useSwapRoutePersistStore.getState().swapRoute) {
150
+ if (tokens.length > 0 && !useSwapRoutePersistStore.getState().swapRoute) {
151
151
  const defaultFromChainId = getFirstAvailableChainId({
152
152
  comingSoonChainIds,
153
153
  disabledChains,
@@ -162,7 +162,7 @@ export const useSwap = () => {
162
162
  },
163
163
  direction: "to",
164
164
  });
165
- const fromTokenAddress = getInitialOrDefaultTokenAddressForChain(tokensRef.current, {
165
+ const fromTokenAddress = getInitialOrDefaultTokenAddressForChain(tokens, {
166
166
  initialAssets,
167
167
  defaultTokensPerChain,
168
168
  comingSoonChainIds,
@@ -174,7 +174,7 @@ export const useSwap = () => {
174
174
  initialAssets,
175
175
  },
176
176
  direction: "to",
177
- tokens: tokensRef.current,
177
+ tokens: tokens,
178
178
  unavailableTokenAddress: fromTokenAddress,
179
179
  });
180
180
  useSwapRoutePersistStore.setState({
@@ -194,6 +194,7 @@ export const useSwap = () => {
194
194
  comingSoonChainIds,
195
195
  disabledChains,
196
196
  defaultTokensPerChain,
197
+ tokens,
197
198
  ]);
198
199
  return {
199
200
  tokenItems,
@@ -205,7 +206,7 @@ export const useSwap = () => {
205
206
  fromToken,
206
207
  fromChain,
207
208
  toChain,
208
- destinationAddress,
209
+ destinationAddress: routeOrWalletDestAddress,
209
210
  isSameChain,
210
211
  expressSupportedForThisRoute,
211
212
  };
@@ -1 +1 @@
1
- {"version":3,"file":"useSwap.js","sourceRoot":"","sources":["../../../src/hooks/swap/useSwap.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"useSwap.js","sourceRoot":"","sources":["../../../src/hooks/swap/useSwap.ts"],"names":[],"mappings":"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"}
@@ -6,10 +6,8 @@ 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 { useConfigStore } from "../store/useSquidStore";
10
9
  import { useSquidTokens } from "./useSquidTokens";
11
10
  export const useAllTokensWithBalanceForChainType = ({ chainType, address, queryOptions, }) => {
12
- const config = useConfigStore((state) => state.config);
13
11
  const { cosmosChains } = useSquidChains();
14
12
  const { evmTokens, cosmosTokens } = useSquidTokens();
15
13
  const { keplrTypeWallet } = useCosmosContext();
@@ -19,11 +17,7 @@ export const useAllTokensWithBalanceForChainType = ({ chainType, address, queryO
19
17
  cosmos: cosmosTokens.map((t) => ({ ...t, balance: "0" })),
20
18
  };
21
19
  }, [evmTokens, cosmosTokens]);
22
- const queryKey = useMemo(() => keys({
23
- apiUrl: config.apiUrl,
24
- address: address,
25
- }).allTokensBalance(chainType), [config.apiUrl, address, chainType]);
26
- const tokensWithBalanceQuery = useQuery(queryKey, async () => {
20
+ const tokensWithBalanceQuery = useQuery(keys().allTokensBalance(address, chainType), async () => {
27
21
  if (chainType === ChainType.EVM) {
28
22
  const evmTokensBalances = await getAllEvmTokensBalance(evmTokens, address // Safe because the query is enabled only if address is present
29
23
  );
@@ -45,7 +39,6 @@ export const useAllTokensWithBalanceForChainType = ({ chainType, address, queryO
45
39
  ...queryOptions,
46
40
  enabled: !!address &&
47
41
  chainType !== undefined &&
48
- config.apiUrl !== undefined &&
49
42
  (queryOptions?.enabled !== undefined ? queryOptions.enabled : true),
50
43
  });
51
44
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"useAllTokensWithBalanceForChainType.js","sourceRoot":"","sources":["../../../src/hooks/tokens/useAllTokensWithBalanceForChainType.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"useAllTokensWithBalanceForChainType.js","sourceRoot":"","sources":["../../../src/hooks/tokens/useAllTokensWithBalanceForChainType.ts"],"names":[],"mappings":"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"}
@@ -10,9 +10,7 @@ import { useCosmosContext } from "../../core/providers/CosmosProvider";
10
10
  import { keys } from "../../core/queries/queries-keys";
11
11
  import { useCosmosForChain } from "../../hooks/cosmos/useCosmosForChain";
12
12
  import { useSwap } from "../../hooks/swap/useSwap";
13
- import { useSquidTokens } from "../../hooks/tokens/useSquidTokens";
14
13
  import { useAllTokensWithBalanceForChain } from "../../hooks/tokens/useTokensWithBalance";
15
- import { useConfigStore } from "../store/useSquidStore";
16
14
  const defaultRefreshIntervalMs = 15000;
17
15
  /**
18
16
  * Fetches the balance of a user on an EVM chain.
@@ -26,8 +24,7 @@ const defaultRefreshIntervalMs = 15000;
26
24
  */
27
25
  export const useEvmBalance = ({ chain, token, userAddress, enabled = true, refreshIntervalMs = defaultRefreshIntervalMs, }) => {
28
26
  const { isConnected } = useAccount();
29
- const config = useConfigStore((state) => state.config);
30
- const balance = useQuery(keys({ address: userAddress, apiUrl: config.apiUrl }).balance(chain?.chainId, token?.address, userAddress), async () => {
27
+ const balance = useQuery(keys().balance(chain?.chainId, token?.address, userAddress), async () => {
31
28
  if (!!chain &&
32
29
  isConnected &&
33
30
  !!token?.address &&
@@ -58,10 +55,9 @@ export const useEvmBalance = ({ chain, token, userAddress, enabled = true, refre
58
55
  };
59
56
  export const useNativeTokenBalanceFromChain = () => {
60
57
  const { isConnected, address } = useAccount();
61
- const config = useConfigStore((state) => state.config);
62
58
  const { fromChain } = useSwap();
63
59
  const chainId = fromChain?.chainId;
64
- const balance = useQuery(keys({ address, apiUrl: config.apiUrl }).nativeBalanceBigNumber(chainId), async () => {
60
+ const balance = useQuery(keys().nativeBalanceBigNumber(address, chainId), async () => {
65
61
  const srcProvider = getProvider({ chainId: +(chainId ?? 1) });
66
62
  const nativeCurrencyBalance = await srcProvider.getBalance(address);
67
63
  return nativeCurrencyBalance;
@@ -72,18 +68,14 @@ export const useNativeTokenBalanceFromChain = () => {
72
68
  };
73
69
  export const useNativeTokenBalanceDestinationChain = () => {
74
70
  const { isConnected, address } = useAccount();
75
- const config = useConfigStore((state) => state.config);
76
71
  const { toChain } = useSwap();
77
- const { tokens } = useSquidTokens();
78
72
  const chainId = toChain?.chainId;
79
- const nativeToken = tokens.find((t) => t.symbol.toLowerCase() === toChain?.nativeCurrency.symbol.toLowerCase() &&
80
- t.chainId === chainId);
81
- const balance = useQuery(keys({ address, apiUrl: config.apiUrl }).nativeBalanceBigNumber(chainId, nativeToken?.address), async () => {
73
+ const balance = useQuery(keys().nativeBalanceBigNumber(address, chainId), async () => {
82
74
  const srcProvider = getProvider({ chainId: +(chainId ?? 1) });
83
75
  const nativeCurrencyBalance = await srcProvider.getBalance(address);
84
76
  return nativeCurrencyBalance;
85
77
  }, {
86
- enabled: isConnected && !!nativeToken,
78
+ enabled: isConnected,
87
79
  });
88
80
  return { balance };
89
81
  };
@@ -1 +1 @@
1
- {"version":3,"file":"useBalance.js","sourceRoot":"","sources":["../../../src/hooks/tokens/useBalance.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"useBalance.js","sourceRoot":"","sources":["../../../src/hooks/tokens/useBalance.ts"],"names":[],"mappings":"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"}
@@ -4,25 +4,7 @@ import type { Token } from "@0xsquid/squid-types";
4
4
  * @param tokenData
5
5
  * @returns
6
6
  */
7
- export declare const useSingleTokenPrice: (tokenData: Pick<Token, "address" | "chainId"> | undefined) => {
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;
7
+ export declare const useSingleTokenPrice: (tokenData: Pick<Token, "address" | "chainId" | "usdPrice"> | undefined) => {
8
+ tokenPrice: number | undefined;
27
9
  getUSDValue: (balance: string) => string;
28
10
  };
@@ -1,17 +1,38 @@
1
- import { useCallback, useMemo } from "react";
1
+ import { useQueryClient } from "@tanstack/react-query";
2
+ import { useCallback, useEffect, useState } from "react";
3
+ import { keys } from "../../core/queries/queries-keys";
2
4
  import { convertTokenAmountToUSD } from "../../services";
3
- import { useSquidTokens } from "./useSquidTokens";
4
5
  /**
5
6
  * If a component need to display price of a single token
6
7
  * @param tokenData
7
8
  * @returns
8
9
  */
9
10
  export const useSingleTokenPrice = (tokenData) => {
10
- const { tokens } = useSquidTokens();
11
- const token = useMemo(() => tokens.find((t) => t.address === tokenData?.address && t.chainId === tokenData?.chainId), [tokens, tokenData?.address, tokenData?.chainId]);
11
+ const queryClient = useQueryClient();
12
+ const [tokenPrice, setTokenPrice] = useState(tokenData?.usdPrice);
13
+ useEffect(() => {
14
+ const updatePrice = (data) => {
15
+ const newPrice = data?.tokens.find((t) => t.address === tokenData?.address && t.chainId === tokenData?.chainId)?.usdPrice ?? tokenData?.usdPrice;
16
+ setTokenPrice(newPrice);
17
+ };
18
+ // Initial price set
19
+ setTokenPrice(tokenData?.usdPrice);
20
+ // Subscribe to react-query changes
21
+ const unsubscribe = queryClient.getQueryCache().subscribe((event) => {
22
+ // Compare both key arrays with join
23
+ // Because we can receive other events
24
+ const sameKey = keys().squidInfo().join() === event?.query?.queryKey?.join();
25
+ // Had to local debug to get this updated event type "observerResultsUpdated"
26
+ if (sameKey && event.type === "observerResultsUpdated") {
27
+ updatePrice(event.query.state.data);
28
+ }
29
+ });
30
+ // Unsubscribe on unmount
31
+ return () => unsubscribe();
32
+ }, [queryClient, tokenData]);
12
33
  const getUSDValue = useCallback((balance) => {
13
- return convertTokenAmountToUSD(balance, token?.usdPrice ?? "0") ?? "0";
14
- }, [token?.usdPrice]);
15
- return { token, getUSDValue };
34
+ return convertTokenAmountToUSD(balance, tokenPrice ?? "0") ?? "0";
35
+ }, [tokenPrice]);
36
+ return { tokenPrice, getUSDValue };
16
37
  };
17
38
  //# sourceMappingURL=useSingleTokenPrice.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useSingleTokenPrice.js","sourceRoot":"","sources":["../../../src/hooks/tokens/useSingleTokenPrice.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAC7C,OAAO,EAAE,uBAAuB,EAAE,MAAM,gBAAgB,CAAC;AACzD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAElD;;;;GAIG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,CACjC,SAAyD,EACzD,EAAE;IACF,MAAM,EAAE,MAAM,EAAE,GAAG,cAAc,EAAE,CAAC;IACpC,MAAM,KAAK,GAAG,OAAO,CACnB,GAAG,EAAE,CACH,MAAM,CAAC,IAAI,CACT,CAAC,CAAC,EAAE,EAAE,CACJ,CAAC,CAAC,OAAO,KAAK,SAAS,EAAE,OAAO,IAAI,CAAC,CAAC,OAAO,KAAK,SAAS,EAAE,OAAO,CACvE,EACH,CAAC,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,SAAS,EAAE,OAAO,CAAC,CACjD,CAAC;IAEF,MAAM,WAAW,GAAG,WAAW,CAC7B,CAAC,OAAe,EAAE,EAAE;QAClB,OAAO,uBAAuB,CAAC,OAAO,EAAE,KAAK,EAAE,QAAQ,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC;IACzE,CAAC,EACD,CAAC,KAAK,EAAE,QAAQ,CAAC,CAClB,CAAC;IAEF,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC;AAChC,CAAC,CAAC"}
1
+ {"version":3,"file":"useSingleTokenPrice.js","sourceRoot":"","sources":["../../../src/hooks/tokens/useSingleTokenPrice.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACzD,OAAO,EAAE,IAAI,EAAE,MAAM,iCAAiC,CAAC;AACvD,OAAO,EAAE,uBAAuB,EAAE,MAAM,gBAAgB,CAAC;AAEzD;;;;GAIG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,CACjC,SAAsE,EACtE,EAAE;IACF,MAAM,WAAW,GAAG,cAAc,EAAE,CAAC;IACrC,MAAM,CAAC,UAAU,EAAE,aAAa,CAAC,GAAG,QAAQ,CAC1C,SAAS,EAAE,QAAQ,CACpB,CAAC;IAEF,SAAS,CAAC,GAAG,EAAE;QACb,MAAM,WAAW,GAAG,CAAC,IAAuB,EAAE,EAAE;YAC9C,MAAM,QAAQ,GACZ,IAAI,EAAE,MAAM,CAAC,IAAI,CACf,CAAC,CAAC,EAAE,EAAE,CACJ,CAAC,CAAC,OAAO,KAAK,SAAS,EAAE,OAAO,IAAI,CAAC,CAAC,OAAO,KAAK,SAAS,EAAE,OAAO,CACvE,EAAE,QAAQ,IAAI,SAAS,EAAE,QAAQ,CAAC;YACrC,aAAa,CAAC,QAAQ,CAAC,CAAC;QAC1B,CAAC,CAAC;QAEF,oBAAoB;QACpB,aAAa,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;QAEnC,mCAAmC;QACnC,MAAM,WAAW,GAAG,WAAW,CAAC,aAAa,EAAE,CAAC,SAAS,CAAC,CAAC,KAAK,EAAE,EAAE;YAClE,oCAAoC;YACpC,sCAAsC;YACtC,MAAM,OAAO,GACX,IAAI,EAAE,CAAC,SAAS,EAAE,CAAC,IAAI,EAAE,KAAK,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;YAE/D,6EAA6E;YAC7E,IAAI,OAAO,IAAI,KAAK,CAAC,IAAI,KAAK,wBAAwB,EAAE;gBACtD,WAAW,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;aACrC;QACH,CAAC,CAAC,CAAC;QAEH,yBAAyB;QACzB,OAAO,GAAG,EAAE,CAAC,WAAW,EAAE,CAAC;IAC7B,CAAC,EAAE,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC,CAAC;IAE7B,MAAM,WAAW,GAAG,WAAW,CAC7B,CAAC,OAAe,EAAE,EAAE;QAClB,OAAO,uBAAuB,CAAC,OAAO,EAAE,UAAU,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC;IACpE,CAAC,EACD,CAAC,UAAU,CAAC,CACb,CAAC;IAEF,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,CAAC;AACrC,CAAC,CAAC"}
@@ -1,80 +1,8 @@
1
1
  export declare const useSquidTokens: (direction?: "from" | "to") => {
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;
2
+ tokens: import("@0xsquid/squid-types").Token[];
3
+ evmTokens: import("@0xsquid/squid-types").Token[];
4
+ cosmosTokens: import("@0xsquid/squid-types").Token[];
5
+ findToken: (address: string, chainId: string) => import("@0xsquid/squid-types").Token | undefined;
78
6
  fuseSearchOptions: {
79
7
  isCaseSensitive: boolean;
80
8
  threshold: number;
@@ -1,10 +1,19 @@
1
1
  import { useCallback, useMemo } from "react";
2
- import { useConfigStore, useSquidStore } from "../../hooks/store/useSquidStore";
2
+ import { useConfigStore } from "../../hooks/store/useSquidStore";
3
3
  import { getDisabledChainsIds } from "../../services";
4
4
  import { useSquid } from "../squid/useSquid";
5
5
  export const useSquidTokens = (direction) => {
6
- const { tokens: allSquidTokens, squidInfoQuery } = useSquid();
7
- const squid = useSquidStore((state) => state.squid);
6
+ const { tokens: allSquidTokens = [], squidInfoQuery } = useSquid();
7
+ const updatedTokens = useMemo(() => {
8
+ if (squidInfoQuery.isSuccess &&
9
+ squidInfoQuery?.data &&
10
+ squidInfoQuery?.data?.tokens?.length > 0) {
11
+ return squidInfoQuery?.data?.tokens;
12
+ }
13
+ else {
14
+ return allSquidTokens;
15
+ }
16
+ }, [squidInfoQuery.isSuccess, squidInfoQuery.data, allSquidTokens]);
8
17
  const { disabledChains, comingSoonChainIds } = useConfigStore((state) => state.config);
9
18
  const disabledChainsForDirection = useMemo(() => getDisabledChainsIds({
10
19
  config: {
@@ -13,44 +22,16 @@ export const useSquidTokens = (direction) => {
13
22
  },
14
23
  direction,
15
24
  }), [direction, disabledChains, comingSoonChainIds]);
16
- const filterTokens = useCallback((tokens) => tokens.filter((token) => !disabledChainsForDirection.includes(String(token.chainId))), [disabledChainsForDirection]);
17
- // TODO: Remove this when backend is ready
18
- const convertPaths = useCallback((token) => ({
19
- ...token,
20
- logoURI: token.logoURI?.includes("0xsquid/assets")
21
- ? token.logoURI
22
- .replace("raw.githubusercontent.com/0xsquid/assets/main/images/tokens/", "raw.githubusercontent.com/0xsquid/assets/6c331dd3d2e349cb0eedc6223f16890277984eb3/images/tokens/pngs/")
23
- .replace(".svg", ".png")
24
- : token.logoURI,
25
- }), []);
26
- const tokensWithUsdPriceUpdated = useMemo(() => {
27
- // TODO: We should remove this when backend is ready
28
- // Because it's causing re-renders to re-map icons paths as soon as we fetch sdk-info to get prices
29
- const baseTokens = filterTokens(allSquidTokens?.length ? allSquidTokens : squid?.tokens ?? []).map(convertPaths);
30
- if (squidInfoQuery.status !== "success")
31
- return baseTokens;
32
- const latestData = squidInfoQuery.data;
33
- return baseTokens.map((t) => ({
34
- ...t,
35
- usdPrice: latestData?.tokens.find((lt) => lt.address === t.address && lt.chainId === t.chainId)?.usdPrice ?? t.usdPrice,
36
- }));
37
- }, [
38
- allSquidTokens,
39
- squid?.tokens,
40
- squidInfoQuery.status,
41
- squidInfoQuery.data,
42
- filterTokens,
43
- convertPaths,
44
- ]);
25
+ const filteredTokensForDirection = useMemo(() => updatedTokens?.filter((token) => !disabledChainsForDirection.includes(String(token.chainId))), [updatedTokens, disabledChainsForDirection]);
45
26
  // TODO: We'll need to have a backend attribute on tokens to know if they are EVM or Cosmos
46
27
  // Because this works for now, but as soon as we add new chains, we'll need to have a better way to filter them
47
28
  const { evmTokens, cosmosTokens } = useMemo(() => ({
48
- evmTokens: tokensWithUsdPriceUpdated.filter((t) => !isNaN(Number(t.chainId))),
49
- cosmosTokens: tokensWithUsdPriceUpdated.filter((t) => isNaN(Number(t.chainId))),
50
- }), [tokensWithUsdPriceUpdated]);
51
- const findToken = useCallback((address, chainId) => tokensWithUsdPriceUpdated.find((t) => t.address === address && t.chainId === chainId), [tokensWithUsdPriceUpdated]);
29
+ evmTokens: filteredTokensForDirection?.filter((t) => !isNaN(Number(t.chainId))),
30
+ cosmosTokens: filteredTokensForDirection?.filter((t) => isNaN(Number(t.chainId))),
31
+ }), [filteredTokensForDirection]);
32
+ const findToken = useCallback((address, chainId) => updatedTokens?.find((t) => t.address === address && t.chainId === chainId), [updatedTokens]);
52
33
  return {
53
- tokens: tokensWithUsdPriceUpdated,
34
+ tokens: updatedTokens,
54
35
  evmTokens,
55
36
  cosmosTokens,
56
37
  findToken,
@@ -1 +1 @@
1
- {"version":3,"file":"useSquidTokens.js","sourceRoot":"","sources":["../../../src/hooks/tokens/useSquidTokens.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"useSquidTokens.js","sourceRoot":"","sources":["../../../src/hooks/tokens/useSquidTokens.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAC7C,OAAO,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AACjE,OAAO,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AACtD,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAE7C,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,SAAyB,EAAE,EAAE;IAC1D,MAAM,EAAE,MAAM,EAAE,cAAc,GAAG,EAAE,EAAE,cAAc,EAAE,GAAG,QAAQ,EAAE,CAAC;IAEnE,MAAM,aAAa,GAAG,OAAO,CAAC,GAAG,EAAE;QACjC,IACE,cAAc,CAAC,SAAS;YACxB,cAAc,EAAE,IAAI;YACpB,cAAc,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,GAAG,CAAC,EACxC;YACA,OAAO,cAAc,EAAE,IAAI,EAAE,MAAM,CAAC;SACrC;aAAM;YACL,OAAO,cAAc,CAAC;SACvB;IACH,CAAC,EAAE,CAAC,cAAc,CAAC,SAAS,EAAE,cAAc,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC,CAAC;IAEpE,MAAM,EAAE,cAAc,EAAE,kBAAkB,EAAE,GAAG,cAAc,CAC3D,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,CACxB,CAAC;IAEF,MAAM,0BAA0B,GAAG,OAAO,CACxC,GAAG,EAAE,CACH,oBAAoB,CAAC;QACnB,MAAM,EAAE;YACN,cAAc;YACd,kBAAkB;SACnB;QACD,SAAS;KACV,CAAC,EACJ,CAAC,SAAS,EAAE,cAAc,EAAE,kBAAkB,CAAC,CAChD,CAAC;IAEF,MAAM,0BAA0B,GAAG,OAAO,CACxC,GAAG,EAAE,CACH,aAAa,EAAE,MAAM,CACnB,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,0BAA0B,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CACvE,EACH,CAAC,aAAa,EAAE,0BAA0B,CAAC,CAC5C,CAAC;IAEF,2FAA2F;IAC3F,+GAA+G;IAC/G,MAAM,EAAE,SAAS,EAAE,YAAY,EAAE,GAAG,OAAO,CACzC,GAAG,EAAE,CAAC,CAAC;QACL,SAAS,EAAE,0BAA0B,EAAE,MAAM,CAC3C,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CACjC;QACD,YAAY,EAAE,0BAA0B,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CACrD,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CACzB;KACF,CAAC,EACF,CAAC,0BAA0B,CAAC,CAC7B,CAAC;IAEF,MAAM,SAAS,GAAG,WAAW,CAC3B,CAAC,OAAe,EAAE,OAAe,EAAE,EAAE,CACnC,aAAa,EAAE,IAAI,CACjB,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,KAAK,OAAO,IAAI,CAAC,CAAC,OAAO,KAAK,OAAO,CACtD,EACH,CAAC,aAAa,CAAC,CAChB,CAAC;IAEF,OAAO;QACL,MAAM,EAAE,aAAa;QACrB,SAAS;QACT,YAAY;QACZ,SAAS;QACT,iBAAiB,EAAE;YACjB,eAAe,EAAE,KAAK;YACtB,SAAS,EAAE,GAAG;YACd,cAAc,EAAE,KAAK;YACrB,cAAc,EAAE,IAAI;YACpB,IAAI,EAAE;gBACJ,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,EAAE;gBAC7B,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE;aAC9B;SACF;KACF,CAAC;AACJ,CAAC,CAAC"}