diff --git a/packages/bridge/src/components/Input/ethereum.tsx b/packages/bridge/src/components/Input/ethereum.tsx index 0826738..3daaf92 100644 --- a/packages/bridge/src/components/Input/ethereum.tsx +++ b/packages/bridge/src/components/Input/ethereum.tsx @@ -29,12 +29,11 @@ export function EthereumInput(props: { const renderReserveAccounts = tokens.filter(t => (t.tags?.indexOf('longList') || -1) < 0).map((token) => { const mint = token.address; - const name = token.symbol; return ( - ); diff --git a/packages/bridge/src/contexts/ethereum.tsx b/packages/bridge/src/contexts/ethereum.tsx index 4a530a2..45f8e82 100644 --- a/packages/bridge/src/contexts/ethereum.tsx +++ b/packages/bridge/src/contexts/ethereum.tsx @@ -50,13 +50,16 @@ export const EthereumProvider: FunctionComponent = ({children}) => { listResponse.forEach((list, i) => list.tokens.reduce((acc, val) => { - const extraTag = i === 2 ? '' : 'longList'; + const address = val.address.toLowerCase(); + const extraTag = i === 2 && !acc.has(address) ? 'longList' : ''; + const item = { ...val, logoURI: val.logoURI ? val.logoURI?.replace('ipfs://', 'https://cloudflare-ipfs.com/ipfs/') : ` https://raw.githubusercontent.com/trustwallet/assets/master/blockchains/ethereum/assets/${val.address}/logo.png `, tags: val.tags ? [...val.tags, extraTag] : [extraTag] }; - acc.set(val.address.toLowerCase(), item); + + acc.set(address, item); return acc; }, map)); diff --git a/packages/bridge/src/hooks/useWormholeAccounts.tsx b/packages/bridge/src/hooks/useWormholeAccounts.tsx index 89ca0c8..f5325ec 100644 --- a/packages/bridge/src/hooks/useWormholeAccounts.tsx +++ b/packages/bridge/src/hooks/useWormholeAccounts.tsx @@ -139,11 +139,13 @@ const queryWrappedMetaAccounts = async ( asset.mint = cache.get(key); asset.amount = asset.mint?.info.supply.toNumber() || 0; - setExternalAssets([...assets.values()]); + setExternalAssets([...assets.values()] + .sort((a, b) => a?.symbol?.localeCompare(b.symbol || '') || 0)); }); } - setExternalAssets([...assets.values()]); + setExternalAssets([...assets.values()] + .sort((a, b) => a?.symbol?.localeCompare(b.symbol || '') || 0)); }); }; @@ -263,6 +265,7 @@ export const useWormholeAccounts = () => { COINGECKO_POOL_INTERVAL ); }, [externalAssets, setAmountInUSD]) + useEffect(() => { if (externalAssets && coinList) { dataSourcePriceQuery();