@0xsquid/react-hooks 1.0.36 → 1.0.37
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/hooks/swap/useSwap.js +7 -10
- package/dist/hooks/swap/useSwap.js.map +1 -1
- package/dist/services/internal/configService.d.ts +18 -8
- package/dist/services/internal/configService.js +55 -15
- package/dist/services/internal/configService.js.map +1 -1
- package/dist/tests/configService.test.js +168 -47
- package/dist/tests/configService.test.js.map +1 -1
- package/package.json +1 -1
|
@@ -5,7 +5,7 @@ import { useSquidChains } from "../../hooks/chains/useSquidChains";
|
|
|
5
5
|
import { useSquidStore, useSwapRoutePersistStore, } from "../../hooks/store/useSquidStore";
|
|
6
6
|
import { useSquidTokens } from "../../hooks/tokens/useSquidTokens";
|
|
7
7
|
import { useMultiChainWallet } from "../../hooks/wallet/useMultiChainWallet";
|
|
8
|
-
import { filterTokensForDestination,
|
|
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
11
|
const { fromPrice, config } = useSquidStore();
|
|
@@ -68,7 +68,7 @@ export const useSwap = () => {
|
|
|
68
68
|
t.chainId === fromChainId);
|
|
69
69
|
const destChain = chains.find((c) => c.chainId === (toChainId ?? swapRoute?.toChainId));
|
|
70
70
|
const destinationTokensFiltered = filterTokensForDestination(getTokensForChain(tokens, toChainId ?? swapRoute?.toChainId), destChain, srcToken);
|
|
71
|
-
const defaultToAddress =
|
|
71
|
+
const defaultToAddress = getInitialOrDefaultTokenAddressForChain(destinationTokensFiltered, config, toChainId ?? swapRoute?.toChainId, "to");
|
|
72
72
|
let destinationTokenAddress = toChainId && !toTokenAddress
|
|
73
73
|
? defaultToAddress
|
|
74
74
|
: toTokenAddress ?? swapRoute?.toTokenAddress;
|
|
@@ -95,7 +95,7 @@ export const useSwap = () => {
|
|
|
95
95
|
const srcChainId = fromChainId ?? swapRoute?.fromChainId;
|
|
96
96
|
// Get the default Source Address
|
|
97
97
|
// This can be either the first token or the one set by the user from config
|
|
98
|
-
const defaultFromAddress =
|
|
98
|
+
const defaultFromAddress = getInitialOrDefaultTokenAddressForChain(tokens, config, srcChainId, "from");
|
|
99
99
|
// Get the destination ChainId based on parameters of swap received
|
|
100
100
|
const destinationChainId = toChainId === chainIdResetValue
|
|
101
101
|
? undefined
|
|
@@ -184,13 +184,10 @@ export const useSwap = () => {
|
|
|
184
184
|
config,
|
|
185
185
|
direction: "to",
|
|
186
186
|
});
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
tokens,
|
|
192
|
-
});
|
|
193
|
-
const toTokenAddress = getInitialOrDefaultTokenAddressForChain({
|
|
187
|
+
// if no initial or default tokens are found in config, we default to the first available token
|
|
188
|
+
const fromTokenAddress = getInitialOrDefaultTokenAddressForChain(tokens, config, defaultFromChainId, "from");
|
|
189
|
+
// if no initial token is found in config, we default to undefined
|
|
190
|
+
const toTokenAddress = getInitialTokenAddressForChain({
|
|
194
191
|
chainId: defaultToChainId,
|
|
195
192
|
config,
|
|
196
193
|
direction: "to",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useSwap.js","sourceRoot":"","sources":["../../../src/hooks/swap/useSwap.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAc,MAAM,sBAAsB,CAAC;AAC7D,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AACxD,OAAO,EACL,iBAAiB,EACjB,4BAA4B,GAC7B,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAC;AACnE,OAAO,EACL,aAAa,EACb,wBAAwB,GACzB,MAAM,iCAAiC,CAAC;AACzC,OAAO,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAC;AACnE,OAAO,EAAE,mBAAmB,EAAE,MAAM,wCAAwC,CAAC;AAC7E,OAAO,EACL,0BAA0B,EAC1B,
|
|
1
|
+
{"version":3,"file":"useSwap.js","sourceRoot":"","sources":["../../../src/hooks/swap/useSwap.ts"],"names":[],"mappings":"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"}
|
|
@@ -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
|
-
|
|
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
|
|
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
|
|
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
|
|
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
|
|
69
|
+
* @returns The unavailable chains for the specified direction.
|
|
59
70
|
*/
|
|
60
|
-
export declare const
|
|
71
|
+
export declare const getUnavailableChainIdsForDirection: ({ config, direction, }: {
|
|
61
72
|
config: AppConfig;
|
|
62
|
-
chains: ChainData[];
|
|
63
73
|
direction: "from" | "to";
|
|
64
|
-
}) =>
|
|
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
|
|
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
|
-
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
194
|
+
* @returns The unavailable chains for the specified direction.
|
|
157
195
|
*/
|
|
158
|
-
export const
|
|
196
|
+
export const getUnavailableChainIdsForDirection = ({ config, direction, }) => {
|
|
159
197
|
const disabledChainsForDirection = config.disabledChains?.[direction === "from" ? "source" : "destination"];
|
|
160
|
-
return
|
|
161
|
-
|
|
198
|
+
return new Set([
|
|
199
|
+
...(disabledChainsForDirection ?? []),
|
|
200
|
+
...(config.comingSoonChainIds ?? []),
|
|
201
|
+
]);
|
|
162
202
|
};
|
|
163
203
|
//# sourceMappingURL=configService.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"configService.js","sourceRoot":"","sources":["../../../src/services/internal/configService.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"configService.js","sourceRoot":"","sources":["../../../src/services/internal/configService.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { nativeEvmTokenAddress } from "../core/constants";
|
|
2
|
-
import { filterTokensForDestination,
|
|
2
|
+
import { filterTokensForDestination, getFirstAvailableChainId, getInitialChainIdFromConfig, getInitialOrDefaultTokenAddressForChain, getInitialTokenAddressForChain, getUnavailableChainIdsForDirection, } from "../services/internal/configService";
|
|
3
3
|
import { fetchSquidData } from "./fetchSquidData";
|
|
4
4
|
let squid = undefined;
|
|
5
5
|
let CHAINS = {};
|
|
@@ -159,25 +159,23 @@ describe("config service", () => {
|
|
|
159
159
|
}, "to", [CHAINS.LINEA, CHAINS.BASE, CHAINS.MANTLE])).toBe(CHAINS.BASE.chainId);
|
|
160
160
|
});
|
|
161
161
|
});
|
|
162
|
-
describe("
|
|
162
|
+
describe("getUnavailableChainIdsForDirection", () => {
|
|
163
163
|
test("returns all chains when no config is provided", () => {
|
|
164
|
-
expect(
|
|
164
|
+
expect(getUnavailableChainIdsForDirection({
|
|
165
165
|
config: {
|
|
166
166
|
integratorId: "",
|
|
167
167
|
},
|
|
168
|
-
chains: [CHAINS.ETHEREUM, CHAINS.ARBITRUM, CHAINS.POLYGON],
|
|
169
168
|
direction: "from",
|
|
170
|
-
})).toStrictEqual(
|
|
171
|
-
expect(
|
|
169
|
+
})).toStrictEqual(new Set());
|
|
170
|
+
expect(getUnavailableChainIdsForDirection({
|
|
172
171
|
config: {
|
|
173
172
|
integratorId: "",
|
|
174
173
|
},
|
|
175
|
-
chains: [CHAINS.ETHEREUM, CHAINS.ARBITRUM, CHAINS.POLYGON],
|
|
176
174
|
direction: "to",
|
|
177
|
-
})).toStrictEqual(
|
|
175
|
+
})).toStrictEqual(new Set());
|
|
178
176
|
});
|
|
179
177
|
test("filters by disabledChains and comingSoonChainIds", () => {
|
|
180
|
-
expect(
|
|
178
|
+
expect(getUnavailableChainIdsForDirection({
|
|
181
179
|
config: {
|
|
182
180
|
integratorId: "",
|
|
183
181
|
disabledChains: {
|
|
@@ -186,10 +184,9 @@ describe("config service", () => {
|
|
|
186
184
|
},
|
|
187
185
|
comingSoonChainIds: [CHAINS.LINEA.chainId],
|
|
188
186
|
},
|
|
189
|
-
chains: [CHAINS.ETHEREUM, CHAINS.ARBITRUM, CHAINS.POLYGON],
|
|
190
187
|
direction: "from",
|
|
191
|
-
})).toStrictEqual([CHAINS.
|
|
192
|
-
expect(
|
|
188
|
+
})).toStrictEqual(new Set([CHAINS.ETHEREUM.chainId, CHAINS.LINEA.chainId]));
|
|
189
|
+
expect(getUnavailableChainIdsForDirection({
|
|
193
190
|
config: {
|
|
194
191
|
integratorId: "",
|
|
195
192
|
disabledChains: {
|
|
@@ -201,35 +198,32 @@ describe("config service", () => {
|
|
|
201
198
|
CHAINS.ARBITRUM.chainId,
|
|
202
199
|
],
|
|
203
200
|
},
|
|
204
|
-
chains: [
|
|
205
|
-
CHAINS.ETHEREUM,
|
|
206
|
-
CHAINS.ARBITRUM,
|
|
207
|
-
CHAINS.POLYGON,
|
|
208
|
-
CHAINS.AVALANCHE,
|
|
209
|
-
CHAINS.MOONBEAM,
|
|
210
|
-
CHAINS.OPTIMISM,
|
|
211
|
-
],
|
|
212
201
|
direction: "to",
|
|
213
|
-
})).toStrictEqual([
|
|
202
|
+
})).toStrictEqual(new Set([
|
|
203
|
+
CHAINS.AVALANCHE.chainId,
|
|
204
|
+
CHAINS.MOONBEAM.chainId,
|
|
205
|
+
CHAINS.ETHEREUM.chainId,
|
|
206
|
+
CHAINS.ARBITRUM.chainId,
|
|
207
|
+
]));
|
|
214
208
|
});
|
|
215
209
|
});
|
|
216
|
-
describe("
|
|
210
|
+
describe("getInitialOrDefaultTokenAddressForChain", () => {
|
|
217
211
|
test("returns first token address if no special config is specified", () => {
|
|
218
|
-
expect(
|
|
212
|
+
expect(getInitialOrDefaultTokenAddressForChain([TOKENS.ETHEREUM.USDT, TOKENS.ETHEREUM.ETH, TOKENS.ETHEREUM.WETH], {
|
|
219
213
|
integratorId: "",
|
|
220
|
-
}, CHAINS.ETHEREUM.chainId)).toBe(TOKENS.ETHEREUM.USDT.address);
|
|
221
|
-
expect(
|
|
214
|
+
}, CHAINS.ETHEREUM.chainId, "from")).toBe(TOKENS.ETHEREUM.USDT.address);
|
|
215
|
+
expect(getInitialOrDefaultTokenAddressForChain([TOKENS.ETHEREUM.WBTC, TOKENS.ETHEREUM.USDC, TOKENS.ETHEREUM.ETH], {
|
|
222
216
|
defaultTokensPerChain: [],
|
|
223
217
|
integratorId: "",
|
|
224
|
-
}, CHAINS.ETHEREUM.chainId)).toBe(TOKENS.ETHEREUM.WBTC.address);
|
|
218
|
+
}, CHAINS.ETHEREUM.chainId, "from")).toBe(TOKENS.ETHEREUM.WBTC.address);
|
|
225
219
|
});
|
|
226
220
|
test("returns undefined if no tokens are found for specified chain id", () => {
|
|
227
|
-
expect(
|
|
221
|
+
expect(getInitialOrDefaultTokenAddressForChain([TOKENS.BASE.USDbC, TOKENS.BASE.axlUSDC, TOKENS.BASE.WETH], {
|
|
228
222
|
integratorId: "",
|
|
229
|
-
}, CHAINS.ETHEREUM.chainId)).toBe(undefined);
|
|
223
|
+
}, CHAINS.ETHEREUM.chainId, "from")).toBe(undefined);
|
|
230
224
|
});
|
|
231
225
|
test("filters by defaultTokensPerChain config", () => {
|
|
232
|
-
expect(
|
|
226
|
+
expect(getInitialOrDefaultTokenAddressForChain([TOKENS.BASE.USDC, TOKENS.BASE.WETH, TOKENS.ETHEREUM.USDT], {
|
|
233
227
|
defaultTokensPerChain: [
|
|
234
228
|
{
|
|
235
229
|
address: TOKENS.ETHEREUM.USDT.address,
|
|
@@ -237,8 +231,8 @@ describe("config service", () => {
|
|
|
237
231
|
},
|
|
238
232
|
],
|
|
239
233
|
integratorId: "",
|
|
240
|
-
}, CHAINS.ETHEREUM.chainId)).toBe(TOKENS.ETHEREUM.USDT.address);
|
|
241
|
-
expect(
|
|
234
|
+
}, CHAINS.ETHEREUM.chainId, "from")).toBe(TOKENS.ETHEREUM.USDT.address);
|
|
235
|
+
expect(getInitialOrDefaultTokenAddressForChain([TOKENS.ETHEREUM.WBTC, TOKENS.BASE.axlUSDC, TOKENS.BASE.ETH], {
|
|
242
236
|
defaultTokensPerChain: [
|
|
243
237
|
{
|
|
244
238
|
address: TOKENS.BASE.axlUSDC.address,
|
|
@@ -246,16 +240,48 @@ describe("config service", () => {
|
|
|
246
240
|
},
|
|
247
241
|
],
|
|
248
242
|
integratorId: "",
|
|
249
|
-
}, CHAINS.BASE.chainId)).toBe(TOKENS.BASE.axlUSDC.address);
|
|
243
|
+
}, CHAINS.BASE.chainId, "from")).toBe(TOKENS.BASE.axlUSDC.address);
|
|
250
244
|
});
|
|
251
245
|
test("filters by unavailableTokenAddress", () => {
|
|
252
|
-
expect(
|
|
246
|
+
expect(getInitialOrDefaultTokenAddressForChain([TOKENS.ETHEREUM.WBTC, TOKENS.BASE.axlUSDC, TOKENS.BASE.USDbC], {
|
|
253
247
|
integratorId: "",
|
|
254
|
-
}, CHAINS.BASE.chainId, TOKENS.BASE.axlUSDC.address // unavailableTokenAddress
|
|
248
|
+
}, CHAINS.BASE.chainId, "from", TOKENS.BASE.axlUSDC.address // unavailableTokenAddress
|
|
255
249
|
)).toBe(TOKENS.BASE.USDbC.address);
|
|
256
250
|
});
|
|
251
|
+
test("filters by initialAssets", () => {
|
|
252
|
+
expect(getInitialOrDefaultTokenAddressForChain([
|
|
253
|
+
TOKENS.BASE.USDC,
|
|
254
|
+
TOKENS.ETHEREUM.WETH,
|
|
255
|
+
TOKENS.ETHEREUM.USDT,
|
|
256
|
+
TOKENS.ETHEREUM.USDC,
|
|
257
|
+
], {
|
|
258
|
+
integratorId: "",
|
|
259
|
+
initialAssets: {
|
|
260
|
+
from: TOKENS.ETHEREUM.USDT,
|
|
261
|
+
},
|
|
262
|
+
}, CHAINS.ETHEREUM.chainId, "from")).toBe(TOKENS.ETHEREUM.USDT.address);
|
|
263
|
+
});
|
|
264
|
+
test("prioritizes defaultTokens over initialAssets when both are provided", () => {
|
|
265
|
+
expect(getInitialOrDefaultTokenAddressForChain([
|
|
266
|
+
TOKENS.BASE.USDC,
|
|
267
|
+
TOKENS.ETHEREUM.WETH,
|
|
268
|
+
TOKENS.ETHEREUM.USDT,
|
|
269
|
+
TOKENS.ETHEREUM.USDC,
|
|
270
|
+
], {
|
|
271
|
+
integratorId: "",
|
|
272
|
+
initialAssets: {
|
|
273
|
+
from: TOKENS.ETHEREUM.USDT,
|
|
274
|
+
},
|
|
275
|
+
defaultTokensPerChain: [
|
|
276
|
+
{
|
|
277
|
+
address: TOKENS.ETHEREUM.WETH.address,
|
|
278
|
+
chainId: TOKENS.ETHEREUM.WETH.chainId,
|
|
279
|
+
},
|
|
280
|
+
],
|
|
281
|
+
}, CHAINS.ETHEREUM.chainId, "from")).toBe(TOKENS.ETHEREUM.WETH.address);
|
|
282
|
+
});
|
|
257
283
|
test("filters when unavailableTokenAddress and default token are the same", () => {
|
|
258
|
-
expect(
|
|
284
|
+
expect(getInitialOrDefaultTokenAddressForChain([
|
|
259
285
|
TOKENS.BASE.WETH,
|
|
260
286
|
TOKENS.ETHEREUM.ETH,
|
|
261
287
|
TOKENS.BASE.USDC,
|
|
@@ -268,9 +294,31 @@ describe("config service", () => {
|
|
|
268
294
|
chainId: TOKENS.ETHEREUM.ETH.chainId,
|
|
269
295
|
},
|
|
270
296
|
],
|
|
271
|
-
}, CHAINS.ETHEREUM.chainId, TOKENS.ETHEREUM.ETH.address // unavailableTokenAddress
|
|
297
|
+
}, CHAINS.ETHEREUM.chainId, "from", TOKENS.ETHEREUM.ETH.address // unavailableTokenAddress
|
|
272
298
|
)).toBe(TOKENS.ETHEREUM.USDT.address);
|
|
273
299
|
});
|
|
300
|
+
test("returns undefined when chain is disabled", () => {
|
|
301
|
+
expect(getInitialOrDefaultTokenAddressForChain([
|
|
302
|
+
TOKENS.BASE.axlUSDC,
|
|
303
|
+
TOKENS.ETHEREUM.WBTC,
|
|
304
|
+
TOKENS.BASE.USDbC,
|
|
305
|
+
TOKENS.ETHEREUM.USDC,
|
|
306
|
+
], {
|
|
307
|
+
integratorId: "",
|
|
308
|
+
disabledChains: {
|
|
309
|
+
source: [CHAINS.ETHEREUM.chainId],
|
|
310
|
+
},
|
|
311
|
+
}, CHAINS.ETHEREUM.chainId, "from", undefined)).toBe(undefined);
|
|
312
|
+
expect(getInitialOrDefaultTokenAddressForChain([
|
|
313
|
+
TOKENS.ETHEREUM.USDC,
|
|
314
|
+
TOKENS.AVALANCHE.USDC,
|
|
315
|
+
TOKENS.ETHEREUM.WETH,
|
|
316
|
+
TOKENS.AVALANCHE.AVAX,
|
|
317
|
+
], {
|
|
318
|
+
integratorId: "",
|
|
319
|
+
comingSoonChainIds: [CHAINS.AVALANCHE.chainId],
|
|
320
|
+
}, CHAINS.AVALANCHE.chainId, "from")).toBe(undefined);
|
|
321
|
+
});
|
|
274
322
|
});
|
|
275
323
|
describe("filterTokensForDestination", () => {
|
|
276
324
|
test("returns different tokens than source token when from and to chains are the same", () => {
|
|
@@ -310,11 +358,10 @@ describe("config service", () => {
|
|
|
310
358
|
]);
|
|
311
359
|
});
|
|
312
360
|
});
|
|
313
|
-
|
|
314
|
-
describe("getInitialOrDefaultTokenAddressForChain", () => {
|
|
361
|
+
describe("getInitialTokenAddressForChain", () => {
|
|
315
362
|
test("returns initial assets when chain id matches", () => {
|
|
316
363
|
const fromInitialAsset = TOKENS.ETHEREUM.WETH;
|
|
317
|
-
expect(
|
|
364
|
+
expect(getInitialTokenAddressForChain({
|
|
318
365
|
chainId: CHAINS.ETHEREUM.chainId,
|
|
319
366
|
config: {
|
|
320
367
|
integratorId: "",
|
|
@@ -326,7 +373,7 @@ describe("config service", () => {
|
|
|
326
373
|
tokens: [TOKENS.ETHEREUM.USDT, fromInitialAsset],
|
|
327
374
|
})).toBe(fromInitialAsset.address);
|
|
328
375
|
const toInitialAsset = TOKENS.AVALANCHE.MAI;
|
|
329
|
-
expect(
|
|
376
|
+
expect(getInitialTokenAddressForChain({
|
|
330
377
|
chainId: CHAINS.AVALANCHE.chainId,
|
|
331
378
|
config: {
|
|
332
379
|
integratorId: "",
|
|
@@ -338,8 +385,8 @@ describe("config service", () => {
|
|
|
338
385
|
tokens: [TOKENS.AVALANCHE.axlUSDC, toInitialAsset],
|
|
339
386
|
})).toBe(toInitialAsset.address);
|
|
340
387
|
});
|
|
341
|
-
test("returns
|
|
342
|
-
expect(
|
|
388
|
+
test("returns undefined when initial asset does not match chain id", () => {
|
|
389
|
+
expect(getInitialTokenAddressForChain({
|
|
343
390
|
chainId: CHAINS.ETHEREUM.chainId,
|
|
344
391
|
config: {
|
|
345
392
|
integratorId: "",
|
|
@@ -348,9 +395,9 @@ describe("config service", () => {
|
|
|
348
395
|
},
|
|
349
396
|
},
|
|
350
397
|
direction: "from",
|
|
351
|
-
tokens: [TOKENS.ETHEREUM.USDT, TOKENS.ETHEREUM.WETH],
|
|
352
|
-
})).toBe(
|
|
353
|
-
expect(
|
|
398
|
+
tokens: [TOKENS.ETHEREUM.USDT, TOKENS.ETHEREUM.WETH, TOKENS.BASE.ETH],
|
|
399
|
+
})).toBe(undefined);
|
|
400
|
+
expect(getInitialTokenAddressForChain({
|
|
354
401
|
chainId: CHAINS.BASE.chainId,
|
|
355
402
|
config: {
|
|
356
403
|
integratorId: "",
|
|
@@ -359,8 +406,82 @@ describe("config service", () => {
|
|
|
359
406
|
},
|
|
360
407
|
},
|
|
361
408
|
direction: "from",
|
|
362
|
-
tokens: [TOKENS.BASE.ETH, TOKENS.BASE.axlUSDC],
|
|
363
|
-
})).toBe(
|
|
409
|
+
tokens: [TOKENS.BASE.ETH, TOKENS.AVALANCHE.USDC, TOKENS.BASE.axlUSDC],
|
|
410
|
+
})).toBe(undefined);
|
|
411
|
+
});
|
|
412
|
+
test("returns undefined when chain is not available", () => {
|
|
413
|
+
expect(getInitialTokenAddressForChain({
|
|
414
|
+
tokens: [
|
|
415
|
+
TOKENS.AVALANCHE.AVAX,
|
|
416
|
+
TOKENS.ETHEREUM.WETH,
|
|
417
|
+
TOKENS.CELO.axlUSDC,
|
|
418
|
+
TOKENS.BASE.ETH,
|
|
419
|
+
TOKENS.ETHEREUM.USDC,
|
|
420
|
+
TOKENS.BASE.USDbC,
|
|
421
|
+
],
|
|
422
|
+
config: {
|
|
423
|
+
integratorId: "",
|
|
424
|
+
disabledChains: {
|
|
425
|
+
source: [CHAINS.BASE.chainId],
|
|
426
|
+
},
|
|
427
|
+
},
|
|
428
|
+
chainId: CHAINS.BASE.chainId,
|
|
429
|
+
direction: "from",
|
|
430
|
+
})).toBe(undefined);
|
|
431
|
+
});
|
|
432
|
+
test("returns undefined when no initialAssets are provided", () => {
|
|
433
|
+
expect(getInitialTokenAddressForChain({
|
|
434
|
+
tokens: [
|
|
435
|
+
TOKENS.AVALANCHE.AVAX,
|
|
436
|
+
TOKENS.ETHEREUM.WETH,
|
|
437
|
+
TOKENS.CELO.axlUSDC,
|
|
438
|
+
TOKENS.BASE.ETH,
|
|
439
|
+
TOKENS.ETHEREUM.USDC,
|
|
440
|
+
TOKENS.BASE.USDbC,
|
|
441
|
+
],
|
|
442
|
+
config: {
|
|
443
|
+
integratorId: "",
|
|
444
|
+
},
|
|
445
|
+
direction: "from",
|
|
446
|
+
chainId: CHAINS.BASE.chainId,
|
|
447
|
+
})).toBe(undefined);
|
|
448
|
+
});
|
|
449
|
+
test("returns undefined when initial asset doesn't exist in tokens array", () => {
|
|
450
|
+
expect(getInitialTokenAddressForChain({
|
|
451
|
+
tokens: [
|
|
452
|
+
TOKENS.BASE.USDbC,
|
|
453
|
+
TOKENS.ETHEREUM.WETH,
|
|
454
|
+
TOKENS.BASE.axlUSDC,
|
|
455
|
+
TOKENS.ETHEREUM.USDC,
|
|
456
|
+
],
|
|
457
|
+
config: {
|
|
458
|
+
integratorId: "",
|
|
459
|
+
initialAssets: {
|
|
460
|
+
from: TOKENS.ETHEREUM.USDT,
|
|
461
|
+
},
|
|
462
|
+
},
|
|
463
|
+
direction: "from",
|
|
464
|
+
chainId: CHAINS.ETHEREUM.chainId,
|
|
465
|
+
})).toBe(undefined);
|
|
466
|
+
});
|
|
467
|
+
test("returns undefined when initial asset is unavailable token", () => {
|
|
468
|
+
expect(getInitialTokenAddressForChain({
|
|
469
|
+
tokens: [
|
|
470
|
+
TOKENS.AVALANCHE.USDC,
|
|
471
|
+
TOKENS.ETHEREUM.WETH,
|
|
472
|
+
TOKENS.AVALANCHE.AVAX,
|
|
473
|
+
TOKENS.ETHEREUM.USDC,
|
|
474
|
+
],
|
|
475
|
+
chainId: CHAINS.AVALANCHE.chainId,
|
|
476
|
+
config: {
|
|
477
|
+
integratorId: "",
|
|
478
|
+
initialAssets: {
|
|
479
|
+
from: TOKENS.AVALANCHE.AVAX,
|
|
480
|
+
},
|
|
481
|
+
},
|
|
482
|
+
direction: "from",
|
|
483
|
+
unavailableTokenAddress: TOKENS.AVALANCHE.AVAX.address,
|
|
484
|
+
})).toBe(undefined);
|
|
364
485
|
});
|
|
365
486
|
});
|
|
366
487
|
describe("getInitialChainIdFromConfig", () => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"configService.test.js","sourceRoot":"","sources":["../../src/tests/configService.test.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"configService.test.js","sourceRoot":"","sources":["../../src/tests/configService.test.ts"],"names":[],"mappings":"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"}
|