From 5f5f58d220a2a408c24679df460813218bdd0fba Mon Sep 17 00:00:00 2001 From: Kacper Szarkiewicz Date: Tue, 23 Jul 2024 21:33:36 +0200 Subject: [PATCH] fix confusing EURC icons --- src/components/nabla/Swap/From.tsx | 2 +- src/components/nabla/Swap/To.tsx | 2 +- .../nabla/common/PoolSelectorModal.tsx | 2 +- src/pages/dashboard/PortfolioColumns.tsx | 38 +++++++++---------- src/shared/AssetIcons.tsx | 29 +++++++------- 5 files changed, 34 insertions(+), 39 deletions(-) diff --git a/src/components/nabla/Swap/From.tsx b/src/components/nabla/Swap/From.tsx index 17c75bfd..d93b2513 100644 --- a/src/components/nabla/Swap/From.tsx +++ b/src/components/nabla/Swap/From.tsx @@ -55,7 +55,7 @@ export function From - Pendulum + {fromToken?.name} {fromToken?.symbol || 'Select'} diff --git a/src/components/nabla/Swap/To.tsx b/src/components/nabla/Swap/To.tsx index 675b1460..eb5ed171 100644 --- a/src/components/nabla/Swap/To.tsx +++ b/src/components/nabla/Swap/To.tsx @@ -75,7 +75,7 @@ export function To({ type="button" > - Pendulum + {toToken?.name} {toToken?.symbol || 'Select'} diff --git a/src/components/nabla/common/PoolSelectorModal.tsx b/src/components/nabla/common/PoolSelectorModal.tsx index 49a76d15..49895f78 100644 --- a/src/components/nabla/common/PoolSelectorModal.tsx +++ b/src/components/nabla/common/PoolSelectorModal.tsx @@ -83,7 +83,7 @@ function PoolList({ swapPools, backstopPool, onSelect, selected }: PoolListProps diff --git a/src/pages/dashboard/PortfolioColumns.tsx b/src/pages/dashboard/PortfolioColumns.tsx index e7302cac..6509de7e 100644 --- a/src/pages/dashboard/PortfolioColumns.tsx +++ b/src/pages/dashboard/PortfolioColumns.tsx @@ -1,6 +1,6 @@ import { ColumnDef } from '@tanstack/table-core'; -import { getIcon } from '../../shared/AssetIcons'; import { Asset } from 'stellar-sdk'; +import { getIcon } from '../../shared/AssetIcons'; export interface PortfolioAsset { // token is the symbol of the asset @@ -16,26 +16,22 @@ export const tokenColumn: ColumnDef = { header: 'Token', accessorKey: 'token', enableMultiSort: true, - cell: ({ row }) => { - return ( -
- -
{row.original.token}
-
- ); - }, + cell: ({ row }) => ( +
+ +
{row.original.token}
+
+ ), }; export const priceColumn: ColumnDef = { diff --git a/src/shared/AssetIcons.tsx b/src/shared/AssetIcons.tsx index 8ca9af35..f7abd2e2 100644 --- a/src/shared/AssetIcons.tsx +++ b/src/shared/AssetIcons.tsx @@ -37,35 +37,34 @@ const polkadotAssets = [ { code: 'GLMR', icon: GLMR }, ]; -const handleSpecialAsset = (assetCode: string, assetIssuer: string) => { +const assets = [...stellarAssets, ...polkadotAssets]; + +const handleSpecialAsset = (assetCode: string, assetIssuer?: string) => { // The EURC tokens are handled separately because they can be issued by multiple issuers if (assetCode.includes('EURC')) { - return assetIssuer === MYKOBO_ISSUER ? mEURC : cEURC; + if (assetIssuer === MYKOBO_ISSUER) { + return mEURC; + } + return cEURC; } }; -const getAssetIcon = (assetCode: string, assetIssuer: string, assets: { code: string; icon: string }[]) => { +const getAssetIcon = (assetCode: string, assetIssuer?: string) => { const specialAsset = handleSpecialAsset(assetCode, assetIssuer); - if (specialAsset) return specialAsset; + + if (specialAsset) { + return specialAsset; + } const asset = assets.find((asset) => assetCode.includes(asset.code)); return asset?.icon || undefined; }; -const getStellarAssetIcon = (assetCode: string, assetIssuer?: string) => { - return getAssetIcon(assetCode, assetIssuer || '', stellarAssets); -}; - -const getPolkadotAssetIcon = (assetCode: string) => { - return getAssetIcon(assetCode, '', polkadotAssets); -}; - export function getIcon(token: string | undefined, issuer?: string, defaultIcon = DefaultIcon) { if (!token) return defaultIcon; - const polkadotIcon = getPolkadotAssetIcon(token); - const stellarIcon = getStellarAssetIcon(token, issuer); + const icon = getAssetIcon(token, issuer); - return polkadotIcon || stellarIcon || defaultIcon; + return icon || defaultIcon; }