@0xsquid/react-hooks 1.0.36 → 1.0.38

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.
@@ -18,97 +18,120 @@ export const useEstimate = (squidRoute) => {
18
18
  const { tokens } = useSquidTokens();
19
19
  const { fromChain, toChain } = useSwap();
20
20
  const { expressActivatedUI } = useEstimateExpress();
21
- const fromToken = useMemo(() => tokens.find((t) => t.address === squidRoute?.params.fromToken), [tokens, squidRoute?.params.fromToken]);
22
- const balanceFormatted = useMultiChainBalance({
23
- chain: fromChain,
24
- token: fromToken,
25
- userAddress: squidRoute?.params.fromAddress ?? "",
26
- enabled: !!squidRoute,
27
- }).balance ?? "0";
28
- const fromAmount = useMemo(() => squidRoute?.estimate?.fromAmount ?? undefined, [squidRoute?.estimate?.fromAmount]);
29
- const fromAmountFormatted = useMemo(() => (fromAmount ? formatUnits(fromAmount, fromToken?.decimals) : ""), [fromAmount, fromToken?.decimals]);
30
- const sourceChainNativeToken = useMemo(() => {
31
- return tokens.find((t) => t.symbol === fromChain?.nativeCurrency.symbol &&
21
+ const estimateResults = useMemo(() => {
22
+ const fromToken = tokens.find((t) => t.address === squidRoute?.params.fromToken);
23
+ const fromAmount = squidRoute?.estimate?.fromAmount;
24
+ const fromAmountFormatted = fromAmount
25
+ ? formatUnits(fromAmount, fromToken?.decimals)
26
+ : "";
27
+ const sourceChainNativeToken = tokens.find((t) => t.symbol === fromChain?.nativeCurrency.symbol &&
32
28
  t.chainId == fromChain?.chainId);
33
- }, [tokens, fromChain]);
34
- const destChainNativeToken = useMemo(() => {
35
- return tokens.find((t) => t.symbol === toChain?.nativeCurrency.symbol &&
29
+ const destChainNativeToken = tokens.find((t) => t.symbol === toChain?.nativeCurrency.symbol &&
36
30
  t.chainId == toChain?.chainId);
37
- }, [tokens, toChain]);
38
- const toAmountUSD = useMemo(() => squidRoute?.estimate?.toAmountUSD ?? undefined, [squidRoute?.estimate?.toAmountUSD]);
39
- const toAmountUSDFloat = useMemo(() => (toAmountUSD ? parseFloat(toAmountUSD.replace(/,/g, "")) : 0), [toAmountUSD]);
40
- const exchangeRate = useMemo(() => squidRoute?.estimate.exchangeRate ?? "0", [squidRoute?.estimate.exchangeRate]);
41
- const toAmountMin = useMemo(() => {
42
- return formatUnits(squidRoute?.estimate.toAmountMin ?? "0", squidRoute?.estimate.toToken.decimals);
43
- }, [squidRoute?.estimate.toAmountMin, squidRoute?.estimate.toToken.decimals]);
44
- const toAmount = useMemo(() => {
45
- const formattedAmount = formatUnitsRounded(squidRoute?.estimate.toAmount ?? "0", squidRoute?.estimate.toToken.decimals, 14);
46
- return formattedAmount === "0.0" ? "0" : formattedAmount;
47
- }, [squidRoute?.estimate.toAmount, squidRoute?.estimate.toToken.decimals]);
48
- /**
49
- * At the moment we're only taking the first item
50
- * of fees array, but keeping the possibility to display multiple fees
51
- */
52
- const crossChainGasFee = useMemo(() => {
31
+ const toAmountUSD = squidRoute?.estimate?.toAmountUSD;
32
+ const toAmountUSDFloat = toAmountUSD
33
+ ? parseFloat(toAmountUSD.replace(/,/g, ""))
34
+ : 0;
35
+ const exchangeRate = squidRoute?.estimate.exchangeRate ?? "0";
36
+ const toAmountMin = formatUnits(squidRoute?.estimate.toAmountMin ?? "0", squidRoute?.estimate.toToken.decimals);
37
+ const toAmount = formatUnitsRounded(squidRoute?.estimate.toAmount ?? "0", squidRoute?.estimate.toToken.decimals, 14);
53
38
  const estimate = squidRoute?.estimate;
54
- return estimate?.feeCosts.length > 0 ? estimate?.feeCosts[0] : undefined;
55
- }, [squidRoute?.estimate]);
56
- const allFeeCosts = useMemo(() => {
57
- const estimate = squidRoute?.estimate;
58
- return estimate?.feeCosts ?? [];
59
- }, [squidRoute?.estimate]);
60
- const allGasCosts = useMemo(() => {
61
- const estimate = squidRoute?.estimate;
62
- return estimate?.gasCosts ?? [];
63
- }, [squidRoute?.estimate]);
64
- const firstGasCost = useMemo(() => allGasCosts.length > 0 ? allGasCosts[0] : undefined, [allGasCosts]);
65
- const firstFeeCost = useMemo(() => allFeeCosts.length > 0 ? allFeeCosts[0] : undefined, [allFeeCosts]);
66
- const integratorFeeCost = useMemo(() => allFeeCosts.length > 0 && config.collectFees
67
- ? // TODO: This is a hack to get the integrator fee, not mapped in squid types yet
68
- allFeeCosts.find((f) => f.name === "Integrator Fee")
69
- : undefined, [allFeeCosts, config]);
70
- const { getUSDValue } = useSingleTokenPrice(firstFeeCost?.token);
71
- const expressFeeCost = useMemo(() => allFeeCosts.length > 0
72
- ? allFeeCosts.find((f) => f.name === "Boost fee")
73
- : undefined, [allFeeCosts]);
74
- const expectedGasRefundCost = useMemo(() => BigNumber.from(firstFeeCost?.amount ?? "0")
75
- .mul(
76
- // When source is Cosmos we don't refund any gas
77
- fromChain?.chainType === ChainType.COSMOS ? 0 : gasRefundMultiplier)
78
- .div(100), [firstFeeCost?.amount, fromChain?.chainType]);
79
- const sameTokenBetweenFees = useMemo(() => firstFeeCost?.token.address === firstGasCost?.token.address &&
80
- firstFeeCost?.token.chainId === firstGasCost?.token.chainId, [
81
- firstFeeCost?.token.address,
82
- firstFeeCost?.token.chainId,
83
- firstGasCost?.token.address,
84
- firstGasCost?.token.chainId,
85
- ]);
86
- // From token is the same as the native chain token
87
- // TODO: This only works for EVM chains
88
- const isFromTokenNative = useMemo(() => {
89
- if (fromToken === undefined || fromChain?.chainId === undefined) {
90
- return false;
91
- }
92
- return fromToken.symbol === fromChain.nativeCurrency.symbol;
93
- }, [fromToken, fromChain]);
94
- const totalNativeFees = useMemo(() => {
95
- const expressBn = BigNumber.from(expressFeeCost?.amount ?? constants.Zero);
96
- if (sameTokenBetweenFees) {
97
- return BigNumber.from(firstFeeCost?.amount ?? constants.Zero)
98
- .add(BigNumber.from(firstGasCost?.amount ?? constants.Zero))
99
- .add(expressBn);
100
- }
101
- return BigNumber.from(firstGasCost?.amount ?? constants.Zero).add(expressBn);
39
+ const allFeeCosts = estimate?.feeCosts ?? [];
40
+ const allGasCosts = estimate?.gasCosts ?? [];
41
+ const firstFeeCost = allFeeCosts.length > 0 ? allFeeCosts[0] : undefined;
42
+ const firstGasCost = allGasCosts.length > 0 ? allGasCosts[0] : undefined;
43
+ const expressFeeCost = allFeeCosts.find((f) => f.name === "Boost fee");
44
+ const integratorFeeCost = allFeeCosts.length > 0 && config.collectFees
45
+ ? allFeeCosts.find((f) => f.name === "Integrator Fee")
46
+ : undefined;
47
+ const expectedGasRefundCost = BigNumber.from(firstFeeCost?.amount ?? "0")
48
+ .mul(fromChain?.chainType === ChainType.COSMOS ? 0 : gasRefundMultiplier)
49
+ .div(100);
50
+ const sameTokenBetweenFees = firstFeeCost?.token.address === firstGasCost?.token.address &&
51
+ firstFeeCost?.token.chainId === firstGasCost?.token.chainId;
52
+ const isFromTokenNative = fromToken?.symbol === fromChain?.nativeCurrency.symbol;
53
+ const totalNativeFees = BigNumber.from(expressFeeCost?.amount ?? constants.Zero).add(sameTokenBetweenFees
54
+ ? BigNumber.from(firstFeeCost?.amount ?? constants.Zero).add(BigNumber.from(firstGasCost?.amount ?? constants.Zero))
55
+ : BigNumber.from(firstGasCost?.amount ?? constants.Zero));
56
+ const totalFeesInNativeTokenPlusRatio = totalNativeFees.mul(105).div(100);
57
+ const fromBalanceEnoughToSwap = isFromTokenNative
58
+ ? BigNumber.from(fromAmount ?? constants.Zero)
59
+ .add(totalFeesInNativeTokenPlusRatio)
60
+ .lte(nativeTokenBalanceFromChain.data ?? constants.Zero)
61
+ : totalFeesInNativeTokenPlusRatio.lte(nativeTokenBalanceFromChain.data ?? constants.Zero);
62
+ const minAmountValueWarnMsg = isFromTokenNative
63
+ ? (() => {
64
+ const fromBalance = nativeTokenBalanceFromChain.data ?? constants.Zero;
65
+ const minAmount = fromBalance.sub(totalFeesInNativeTokenPlusRatio);
66
+ return minAmount.gt(constants.Zero)
67
+ ? formatUnits(minAmount, sourceChainNativeToken?.decimals ?? 18)
68
+ : "0";
69
+ })()
70
+ : undefined;
71
+ const isSingleChainRoute = fromChain?.chainId === toChain?.chainId;
72
+ const estimatedRouteDuration = (() => {
73
+ const fallbackDuration = 20;
74
+ let durationInSeconds = fallbackDuration;
75
+ if (squidRoute?.estimate?.estimatedRouteDuration) {
76
+ durationInSeconds = squidRoute.estimate.estimatedRouteDuration;
77
+ }
78
+ else if (isSingleChainRoute) {
79
+ durationInSeconds = 1;
80
+ }
81
+ else {
82
+ durationInSeconds = expressActivatedUI
83
+ ? fromChain?.estimatedBoostRouteDuration ?? fallbackDuration
84
+ : fromChain?.estimatedRouteDuration ?? fallbackDuration;
85
+ }
86
+ return {
87
+ seconds: durationInSeconds,
88
+ format: (sTemplate = "s", mTemplate = "m") => formatSeconds(durationInSeconds, sTemplate, mTemplate),
89
+ };
90
+ })();
91
+ return {
92
+ fromToken,
93
+ fromAmount,
94
+ fromAmountFormatted,
95
+ sourceChainNativeToken,
96
+ destChainNativeToken,
97
+ toAmountUSD,
98
+ toAmountUSDFloat,
99
+ exchangeRate,
100
+ toAmountMin,
101
+ toAmount,
102
+ allFeeCosts,
103
+ allGasCosts,
104
+ firstFeeCost,
105
+ firstGasCost,
106
+ expressFeeCost,
107
+ integratorFeeCost,
108
+ expectedGasRefundCost,
109
+ sameTokenBetweenFees,
110
+ isFromTokenNative,
111
+ totalNativeFees,
112
+ totalFeesInNativeTokenPlusRatio,
113
+ fromBalanceEnoughToSwap,
114
+ minAmountValueWarnMsg,
115
+ estimatedRouteDuration,
116
+ };
102
117
  }, [
103
- firstFeeCost?.amount,
104
- firstGasCost?.amount,
105
- sameTokenBetweenFees,
106
- expressFeeCost?.amount,
118
+ squidRoute,
119
+ tokens,
120
+ fromChain,
121
+ toChain,
122
+ config,
123
+ nativeTokenBalanceFromChain,
124
+ expressActivatedUI,
107
125
  ]);
108
- const totalFeesInNativeTokenPlusRatio = useMemo(() => {
109
- return totalNativeFees.mul(105).div(100);
110
- }, [totalNativeFees]);
126
+ const balanceFormatted = useMultiChainBalance({
127
+ chain: fromChain,
128
+ token: estimateResults.fromToken,
129
+ userAddress: squidRoute?.params.fromAddress ?? "",
130
+ enabled: !!squidRoute,
131
+ }).balance ?? "0";
132
+ const { getUSDValue } = useSingleTokenPrice(estimateResults.firstFeeCost?.token);
111
133
  const totalWithRefundEstimate = useMemo(() => {
134
+ const { firstFeeCost, expressFeeCost, expectedGasRefundCost } = estimateResults;
112
135
  const firstFee = {
113
136
  BN: BigNumber.from(firstFeeCost?.amount ?? "0"),
114
137
  token: firstFeeCost?.token,
@@ -117,171 +140,41 @@ export const useEstimate = (squidRoute) => {
117
140
  BN: BigNumber.from(expressFeeCost?.amount ?? "0"),
118
141
  token: expressFeeCost?.token,
119
142
  };
120
- // Big number amount
121
143
  const totalBnbAmount = firstFee.BN.add(expressFee.BN).sub(expectedGasRefundCost);
122
144
  const totalAmount = formatUnits(totalBnbAmount, firstFee.token?.decimals ?? 18);
123
- // USD values
124
145
  const formattedRefundCost = formatUnits(expectedGasRefundCost, firstFeeCost?.token.decimals);
125
146
  const formattedRefundCostUSD = getUSDValue(formattedRefundCost);
126
147
  const totalAmountUSD = +(firstFeeCost?.amountUsd ?? 0) +
127
148
  +(expressFeeCost?.amountUsd ?? 0) -
128
149
  +(formattedRefundCostUSD ?? 0);
129
- return {
130
- totalAmount,
131
- totalAmountUSD,
132
- feeToken: firstFeeCost?.token,
133
- };
134
- }, [firstFeeCost, expressFeeCost, expectedGasRefundCost, getUSDValue]);
135
- /**
136
- * Two cases:
137
- * 1. If the source token is the same as the native token, check if the balance of native token is less than the (source amount) + (native gas)
138
- * 2. If the source token is different from the native token, check if the balance of native token is less than (native gas)
139
- */
140
- const fromBalanceEnoughToSwap = useMemo(() => {
141
- // if (squidRoute.isLoading) return true;
142
- const fromAmountWei = BigNumber.from(fromAmount ?? constants.Zero);
143
- const fromBalance = nativeTokenBalanceFromChain.data ?? constants.Zero;
144
- if (isFromTokenNative) {
145
- const fromPlusGas = fromAmountWei.add(totalFeesInNativeTokenPlusRatio);
146
- if (fromPlusGas.lte(fromBalance)) {
147
- return true;
148
- }
149
- }
150
- else if (totalFeesInNativeTokenPlusRatio.lte(fromBalance)) {
151
- return true;
152
- }
153
- return false;
154
- }, [
155
- nativeTokenBalanceFromChain.data,
156
- fromAmount,
157
- isFromTokenNative,
158
- totalFeesInNativeTokenPlusRatio,
159
- ]);
160
- /**
161
- * In the case where the source token is the same as the native token,
162
- * we need to advise the user to change the source amount to be less than the balance of native token minus the gas cost
163
- */
164
- const minAmountValueWarnMsg = useMemo(() => {
165
- if (!isFromTokenNative) {
166
- return undefined;
167
- }
168
- const fromBalance = nativeTokenBalanceFromChain.data ?? constants.Zero;
169
- const minAmount = fromBalance.sub(totalFeesInNativeTokenPlusRatio);
170
- if (minAmount.gt(constants.Zero)) {
171
- const parsedMinAmount = formatUnits(minAmount, sourceChainNativeToken?.decimals ?? 18);
172
- return parsedMinAmount;
173
- }
174
- return "0";
175
- }, [
176
- nativeTokenBalanceFromChain.data,
177
- isFromTokenNative,
178
- sourceChainNativeToken?.decimals,
179
- totalFeesInNativeTokenPlusRatio,
180
- ]);
150
+ return { totalAmount, totalAmountUSD, feeToken: firstFeeCost?.token };
151
+ }, [estimateResults, getUSDValue]);
181
152
  const proposedGasDestinationAmount = useMemo(() => {
182
- // Get native token of chain
183
- const nativeToken = toChain?.nativeCurrency.symbol;
184
- let gasDestinationAmount = 0;
185
- switch (nativeToken) {
186
- case "GLMR":
187
- gasDestinationAmount = 5.289;
188
- break;
189
- case "ETH":
190
- gasDestinationAmount = 0.0009;
191
- break;
192
- case "AVAX":
193
- gasDestinationAmount = 0.115;
194
- break;
195
- case "BNB":
196
- gasDestinationAmount = 0.00425;
197
- break;
198
- case "FTM":
199
- gasDestinationAmount = 4.45;
200
- break;
201
- case "CELO":
202
- gasDestinationAmount = 3.052;
203
- break;
204
- case "KAVA":
205
- gasDestinationAmount = 2.339;
206
- break;
207
- case "MATIC":
208
- gasDestinationAmount = 1.795;
209
- break;
210
- default:
211
- gasDestinationAmount = 0;
212
- break;
213
- }
214
- return { value: gasDestinationAmount, currency: nativeToken };
215
- }, [toChain?.nativeCurrency.symbol]);
153
+ const nativeToken = estimateResults.destChainNativeToken?.symbol;
154
+ const gasAmounts = {
155
+ GLMR: 5.289,
156
+ ETH: 0.0009,
157
+ AVAX: 0.115,
158
+ BNB: 0.00425,
159
+ FTM: 4.45,
160
+ CELO: 3.052,
161
+ KAVA: 2.339,
162
+ MATIC: 1.795,
163
+ };
164
+ return { value: gasAmounts[nativeToken ?? ""] ?? 0, currency: nativeToken };
165
+ }, [estimateResults.destChainNativeToken]);
216
166
  const swapAmountExceedsLimit = config.advanced?.disableTradeLimit
217
167
  ? false
218
- : toAmountUSDFloat > limitTradeSizeUsd;
219
- const enoughBalanceToSwap = useMemo(() => +balanceFormatted >= 0 && +balanceFormatted > +fromAmountFormatted, [balanceFormatted, fromAmountFormatted]);
220
- const isSingleChainRoute = useMemo(() => fromChain?.chainId === toChain?.chainId, [fromChain?.chainId, toChain?.chainId]);
221
- const estimatedRouteDuration = useMemo(() => {
222
- const fallbackDuration = 20;
223
- let durationInSeconds = fallbackDuration;
224
- // If the variable from backend exist, pick that one in priority
225
- if (squidRoute?.estimate?.estimatedRouteDuration) {
226
- durationInSeconds = squidRoute.estimate.estimatedRouteDuration;
227
- }
228
- else {
229
- if (isSingleChainRoute) {
230
- durationInSeconds = 1; // If it's a single chain route, fallback to 1 second
231
- }
232
- else {
233
- if (expressActivatedUI) {
234
- durationInSeconds =
235
- fromChain?.estimatedBoostRouteDuration ?? fallbackDuration;
236
- }
237
- else {
238
- durationInSeconds =
239
- fromChain?.estimatedRouteDuration ?? fallbackDuration;
240
- }
241
- }
242
- }
243
- return {
244
- seconds: durationInSeconds,
245
- // Default template but can be overridden
246
- format: (sTemplate = "s", mTemplate = "m") => formatSeconds(durationInSeconds, sTemplate, mTemplate),
247
- };
248
- }, [
249
- squidRoute?.estimate?.estimatedRouteDuration,
250
- isSingleChainRoute,
251
- fromChain?.estimatedBoostRouteDuration,
252
- fromChain?.estimatedRouteDuration,
253
- expressActivatedUI,
254
- ]);
168
+ : estimateResults.toAmountUSDFloat > limitTradeSizeUsd;
169
+ const enoughBalanceToSwap = +balanceFormatted >= 0 &&
170
+ +balanceFormatted > +estimateResults.fromAmountFormatted;
255
171
  return {
256
- allFeeCosts,
257
- allGasCosts,
258
- crossChainGasFee,
259
- exchangeRate,
260
- toAmountMin,
261
- toAmount,
262
- fromToken,
263
- toAmountUSD,
264
- toAmountUSDFloat,
265
- fromAmount,
266
- fromAmountFormatted,
267
- estimatedRouteDuration,
268
- minAmountValueWarnMsg,
269
- fromBalanceEnoughToSwap,
270
- isFromTokenNative,
271
- firstFeeCost,
272
- firstGasCost,
273
- sameTokenBetweenFees,
274
- totalFeesInNativeTokenPlusRatio,
275
- totalNativeFees,
276
- sourceChainNativeToken,
277
- expressFeeCost,
278
- proposedGasDestinationAmount,
279
- expectedGasRefundCost,
172
+ ...estimateResults,
173
+ balanceFormatted,
280
174
  totalWithRefundEstimate,
281
- destChainNativeToken,
282
- integratorFeeCost,
283
- enoughBalanceToSwap,
175
+ proposedGasDestinationAmount,
284
176
  swapAmountExceedsLimit,
177
+ enoughBalanceToSwap,
285
178
  };
286
179
  };
287
180
  //# sourceMappingURL=useEstimate.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useEstimate.js","sourceRoot":"","sources":["../../../src/hooks/transaction/useEstimate.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"useEstimate.js","sourceRoot":"","sources":["../../../src/hooks/transaction/useEstimate.ts"],"names":[],"mappings":"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"}
@@ -19,7 +19,7 @@ export declare const useGetRouteWrapper: ({ enabled, cacheTime, staleTime, refet
19
19
  staleTime?: number | undefined;
20
20
  refetchOnWindowFocus?: any;
21
21
  refetchIntervalInBackground?: boolean | undefined;
22
- refetchInterval?: number | undefined;
22
+ refetchInterval?: number | false | undefined;
23
23
  }) => {
24
24
  squidRoute: import("@tanstack/react-query").UseQueryResult<{
25
25
  estimate: import("@0xsquid/squid-types").Estimate;
@@ -9,10 +9,21 @@ export declare const getTokensForChain: (tokens: Token[], chainId: number | stri
9
9
  * @returns The first available chain ID.
10
10
  */
11
11
  export declare const getFirstAvailableChainId: (config: AppConfig, direction: "from" | "to", chains?: ChainData[] | undefined) => string | undefined;
12
- export declare const getDefaultTokenAddressForChain: (tokens: Token[], config: AppConfig, chainId: number | string | undefined, unavailableTokenAddress?: string) => string | undefined;
12
+ /**
13
+ * Returns the default token address for a specific chain and direction based on config.
14
+ * If no default tokens are set in config, returns the first token in the tokens array for the specified chain
15
+ *
16
+ * @param tokens The list of tokens.
17
+ * @param config App config
18
+ * @param chainId The chain ID of the token
19
+ * @param direction The direction of the swap
20
+ * @param unavailableTokenAddress The token that is unavailable. Can be useful when we don't want to show the same token in the opposite direction
21
+ * @returns
22
+ */
23
+ export declare const getInitialOrDefaultTokenAddressForChain: (tokens: Token[], config: AppConfig, chainId: string | undefined, direction: "from" | "to", unavailableTokenAddress?: string) => string | undefined;
13
24
  /**
14
25
  * Retrieves the initial token address for a specific chain and direction.
15
- * If no initial assets are set in config, returns the default token address for the chain.
26
+ * If no initial assets are set in config, returns undefined.
16
27
  *
17
28
  * @param tokens - The list of tokens.
18
29
  * @param config - The application configuration.
@@ -20,7 +31,7 @@ export declare const getDefaultTokenAddressForChain: (tokens: Token[], config: A
20
31
  * @param direction - The direction ("from" or "to").
21
32
  * @returns The initial token address if found; otherwise, the default token address.
22
33
  */
23
- export declare const getInitialOrDefaultTokenAddressForChain: ({ chainId, config, direction, tokens, unavailableTokenAddress, }: {
34
+ export declare const getInitialTokenAddressForChain: ({ chainId, config, direction, tokens, unavailableTokenAddress, }: {
24
35
  tokens: Token[];
25
36
  config: AppConfig;
26
37
  chainId: string | undefined;
@@ -53,12 +64,11 @@ export declare const getInitialChainIdFromConfig: ({ config, direction, chains,
53
64
  chains: ChainData[] | undefined;
54
65
  }) => string | undefined;
55
66
  /**
56
- * Returns the available chains for a specific direction based on the provided config,
67
+ * Returns the unavailable chains for a specific direction based on the provided config,
57
68
  * filtering config.disabledChains and config.comingSoonChains
58
- * @returns The available chains for the specified direction.
69
+ * @returns The unavailable chains for the specified direction.
59
70
  */
60
- export declare const getAvailableChainsForDirection: ({ config, chains, direction, }: {
71
+ export declare const getUnavailableChainIdsForDirection: ({ config, direction, }: {
61
72
  config: AppConfig;
62
- chains: ChainData[];
63
73
  direction: "from" | "to";
64
- }) => ChainData[];
74
+ }) => Set<string>;
@@ -41,11 +41,11 @@ export const getTokensForChain = (tokens, chainId) => {
41
41
  */
42
42
  export const getFirstAvailableChainId = (config, direction, chains = []) => {
43
43
  // filter chains based on config
44
- const availableChains = getAvailableChainsForDirection({
44
+ const unavailableChainIds = getUnavailableChainIdsForDirection({
45
45
  config,
46
- chains,
47
46
  direction,
48
47
  });
48
+ const availableChains = chains.filter((c) => !unavailableChainIds.has(c.chainId));
49
49
  // get initial chain ID from config
50
50
  const initialChainId = getInitialChainIdFromConfig({
51
51
  chains: availableChains,
@@ -57,12 +57,42 @@ export const getFirstAvailableChainId = (config, direction, chains = []) => {
57
57
  // if no initial chain ID is found in config, return the first available chain ID
58
58
  return availableChains.length > 0 ? availableChains[0].chainId : undefined;
59
59
  };
60
- export const getDefaultTokenAddressForChain = (tokens, config, chainId, unavailableTokenAddress) => {
60
+ /**
61
+ * Returns the default token address for a specific chain and direction based on config.
62
+ * If no default tokens are set in config, returns the first token in the tokens array for the specified chain
63
+ *
64
+ * @param tokens The list of tokens.
65
+ * @param config App config
66
+ * @param chainId The chain ID of the token
67
+ * @param direction The direction of the swap
68
+ * @param unavailableTokenAddress The token that is unavailable. Can be useful when we don't want to show the same token in the opposite direction
69
+ * @returns
70
+ */
71
+ export const getInitialOrDefaultTokenAddressForChain = (tokens, config, chainId, direction, unavailableTokenAddress) => {
72
+ if (!chainId)
73
+ return;
74
+ const unavailableChainIds = getUnavailableChainIdsForDirection({
75
+ config,
76
+ direction,
77
+ });
78
+ // filter disabled chains
79
+ if (unavailableChainIds.has(chainId))
80
+ return;
61
81
  const chainIdDefaultToken = config.defaultTokensPerChain?.find((token) => token.chainId == chainId);
82
+ // get default token from config
62
83
  if (chainIdDefaultToken &&
63
84
  chainIdDefaultToken.address !== unavailableTokenAddress) {
64
85
  return chainIdDefaultToken.address;
65
86
  }
87
+ // if no default token is found in config, try to get initial token
88
+ const initialToken = getInitialTokenAddressForChain({
89
+ chainId,
90
+ config,
91
+ direction,
92
+ tokens,
93
+ });
94
+ if (initialToken)
95
+ return initialToken;
66
96
  const filteredTokens = chainId
67
97
  ? tokens.filter((t) => t.chainId === chainId && t.address !== unavailableTokenAddress)
68
98
  : tokens;
@@ -70,7 +100,7 @@ export const getDefaultTokenAddressForChain = (tokens, config, chainId, unavaila
70
100
  };
71
101
  /**
72
102
  * Retrieves the initial token address for a specific chain and direction.
73
- * If no initial assets are set in config, returns the default token address for the chain.
103
+ * If no initial assets are set in config, returns undefined.
74
104
  *
75
105
  * @param tokens - The list of tokens.
76
106
  * @param config - The application configuration.
@@ -78,18 +108,26 @@ export const getDefaultTokenAddressForChain = (tokens, config, chainId, unavaila
78
108
  * @param direction - The direction ("from" or "to").
79
109
  * @returns The initial token address if found; otherwise, the default token address.
80
110
  */
81
- export const getInitialOrDefaultTokenAddressForChain = ({ chainId, config, direction, tokens, unavailableTokenAddress, }) => {
111
+ export const getInitialTokenAddressForChain = ({ chainId, config, direction, tokens, unavailableTokenAddress, }) => {
82
112
  if (direction === "from" &&
113
+ config.initialAssets &&
83
114
  config.initialAssets?.from &&
84
- config.initialAssets.from.chainId === chainId) {
115
+ config.initialAssets.from.chainId === chainId &&
116
+ config.initialAssets.from.address !== unavailableTokenAddress &&
117
+ // check if initial asset exists in tokens
118
+ tokens.some((t) => t.chainId === config.initialAssets?.from?.chainId &&
119
+ t.address === config.initialAssets?.from.address)) {
85
120
  return config.initialAssets.from.address;
86
121
  }
87
122
  if (direction === "to" &&
88
123
  config.initialAssets?.to &&
89
- config.initialAssets.to.chainId === chainId) {
124
+ config.initialAssets.to.chainId === chainId &&
125
+ config.initialAssets.to.address !== unavailableTokenAddress &&
126
+ // check if initial asset exists in tokens
127
+ tokens.some((t) => t.chainId === config.initialAssets?.to?.chainId &&
128
+ t.address === config.initialAssets?.to.address)) {
90
129
  return config.initialAssets.to.address;
91
130
  }
92
- return getDefaultTokenAddressForChain(tokens, config, chainId, unavailableTokenAddress);
93
131
  };
94
132
  /**
95
133
  * Filter tokens for destination chain
@@ -133,11 +171,11 @@ export const filterTokensForDestination = (tokens, selectedDestinationChain, sel
133
171
  export const getInitialChainIdFromConfig = ({ config, direction, chains = [], }) => {
134
172
  if (chains.length === 0)
135
173
  return undefined;
136
- const availableChains = getAvailableChainsForDirection({
174
+ const unavailableChains = getUnavailableChainIdsForDirection({
137
175
  config,
138
- chains,
139
176
  direction,
140
177
  });
178
+ const availableChains = chains.filter((c) => !unavailableChains.has(c.chainId));
141
179
  if (direction === "from" &&
142
180
  config.initialAssets?.from &&
143
181
  availableChains.some((c) => c.chainId === String(config.initialAssets?.from?.chainId))) {
@@ -151,13 +189,15 @@ export const getInitialChainIdFromConfig = ({ config, direction, chains = [], })
151
189
  return undefined;
152
190
  };
153
191
  /**
154
- * Returns the available chains for a specific direction based on the provided config,
192
+ * Returns the unavailable chains for a specific direction based on the provided config,
155
193
  * filtering config.disabledChains and config.comingSoonChains
156
- * @returns The available chains for the specified direction.
194
+ * @returns The unavailable chains for the specified direction.
157
195
  */
158
- export const getAvailableChainsForDirection = ({ config, chains, direction, }) => {
196
+ export const getUnavailableChainIdsForDirection = ({ config, direction, }) => {
159
197
  const disabledChainsForDirection = config.disabledChains?.[direction === "from" ? "source" : "destination"];
160
- return chains.filter((c) => !config.comingSoonChainIds?.find((id) => id === c.chainId) &&
161
- !disabledChainsForDirection?.some((id) => id === c.chainId));
198
+ return new Set([
199
+ ...(disabledChainsForDirection ?? []),
200
+ ...(config.comingSoonChainIds ?? []),
201
+ ]);
162
202
  };
163
203
  //# sourceMappingURL=configService.js.map