diff --git a/api/swap/tokens/_service.ts b/api/swap/tokens/_service.ts index 68ccab455..87eccba3d 100644 --- a/api/swap/tokens/_service.ts +++ b/api/swap/tokens/_service.ts @@ -47,26 +47,26 @@ function getUniswapTokens( }, []); } -function getNativeTokensFromLifiTokens( +function getLifiTokens( lifiTokensResponse: any, - chainIds: number[], - pricesForLifiTokens: Record> + chainIds: number[] ): SwapToken[] { return chainIds.reduce((acc: SwapToken[], chainId) => { - const nativeToken = lifiTokensResponse?.tokens?.[chainId]?.find( - (token: any) => token.address === constants.AddressZero - ); - if (nativeToken) { + const tokens = lifiTokensResponse?.tokens?.[chainId]; + if (!tokens) { + return acc; + } + tokens.forEach((token: any) => { acc.push({ chainId, - address: nativeToken.address, - name: nativeToken.name, - symbol: nativeToken.symbol, - decimals: nativeToken.decimals, - logoUrl: nativeToken.logoURI, - priceUsd: pricesForLifiTokens[chainId]?.[nativeToken.address] || null, + address: token.address, + name: token.name, + symbol: token.symbol, + decimals: token.decimals, + logoUrl: token.logoURI, + priceUsd: token.priceUSD || null, }); - } + }); return acc; }, []); } @@ -315,13 +315,9 @@ export async function fetchSwapTokensData( ); responseJson.push(...uniswapTokens); - // Add native tokens from LiFi - const nativeTokens = getNativeTokensFromLifiTokens( - lifiTokensResponse.data, - targetChainIds, - pricesForLifiTokens - ); - responseJson.push(...nativeTokens); + // Add LiFi token + const lifiTokens = getLifiTokens(lifiTokensResponse.data, targetChainIds); + responseJson.push(...lifiTokens); // Add Jupiter tokens const jupiterTokens = getJupiterTokens(