From 433fa717a0270a46b25e8b3bd367fb62b59b573d Mon Sep 17 00:00:00 2001 From: Bob van der Helm <34470358+bobthebuidlr@users.noreply.github.com> Date: Wed, 13 Sep 2023 20:27:34 +0200 Subject: [PATCH] Hide APR for non-borrowable assets in Lend Table (#468) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * 🐛Hide APR in lend table for non-borrowable assets * 🐛Hide APR in lend table for non-borrowable assets --- .../Earn/Lend/LendingMarketsTable.tsx | 5 ++ src/hooks/useLendingMarketAssetsTableData.ts | 63 ++++++++++--------- src/types/interfaces/asset.d.ts | 3 +- 3 files changed, 40 insertions(+), 31 deletions(-) diff --git a/src/components/Earn/Lend/LendingMarketsTable.tsx b/src/components/Earn/Lend/LendingMarketsTable.tsx index e59032c4..38c0ae47 100644 --- a/src/components/Earn/Lend/LendingMarketsTable.tsx +++ b/src/components/Earn/Lend/LendingMarketsTable.tsx @@ -9,6 +9,7 @@ import { ChevronDown, ChevronUp } from 'components/Icons' import AssetListTable from 'components/MarketAssetTable' import MarketAssetTableRow from 'components/MarketAssetTable/MarketAssetTableRow' import MarketDetails from 'components/MarketAssetTable/MarketDetails' +import Text from 'components/Text' import TitleAndSubCell from 'components/TitleAndSubCell' import { BN_ZERO } from 'constants/math' import { convertLiquidityRateToAPR } from 'utils/formatters' @@ -82,6 +83,10 @@ export default function LendingMarketsTable(props: Props) { accessorKey: 'marketLiquidityRate', header: 'APR', cell: ({ row }) => { + if (!row.original.borrowEnabled) { + return - + } + return ( { - const asset = getAssetByDenom(denom) as Asset - const marketDepositAmount = BN(marketDeposits.find(byDenom(denom))?.amount ?? 0) - const marketLiquidityAmount = BN(marketLiquidities.find(byDenom(denom))?.amount ?? 0) - const accountLentAmount = accountLentAmounts.find(byDenom(denom))?.amount - const accountLentValue = accountLentAmount - ? convertAmount(asset, accountLentAmount) - : undefined + markets.forEach( + ({ denom, cap, liquidityRate, liquidationThreshold, maxLtv, borrowEnabled }) => { + const asset = getAssetByDenom(denom) as Asset + const marketDepositAmount = BN(marketDeposits.find(byDenom(denom))?.amount ?? 0) + const marketLiquidityAmount = BN(marketLiquidities.find(byDenom(denom))?.amount ?? 0) + const accountLentAmount = accountLentAmounts.find(byDenom(denom))?.amount + const accountLentValue = accountLentAmount + ? convertAmount(asset, accountLentAmount) + : undefined - const lendingMarketAsset: LendingMarketTableData = { - asset, - marketDepositAmount, - accountLentValue, - accountLentAmount, - marketLiquidityAmount, - marketDepositCap: cap.max, - marketLiquidityRate: liquidityRate, - marketLiquidationThreshold: liquidationThreshold, - marketMaxLtv: maxLtv, - } + const lendingMarketAsset: LendingMarketTableData = { + asset, + marketDepositAmount, + accountLentValue, + accountLentAmount, + marketLiquidityAmount, + marketDepositCap: cap.max, + marketLiquidityRate: liquidityRate, + marketLiquidationThreshold: liquidationThreshold, + marketMaxLtv: maxLtv, + borrowEnabled, + } - ;(lendingMarketAsset.accountLentValue ? accountLentAssets : availableAssets).push( - lendingMarketAsset, - ) - }) + ;(lendingMarketAsset.accountLentValue ? accountLentAssets : availableAssets).push( + lendingMarketAsset, + ) + }, + ) return { accountLentAssets, availableAssets } }, [markets, marketDeposits, marketLiquidities, accountLentAmounts, convertAmount]) } -export default useLendingMarketAssetsTableData +export default useLendingMarketAssetsTableData \ No newline at end of file diff --git a/src/types/interfaces/asset.d.ts b/src/types/interfaces/asset.d.ts index 267ec743..dad074a1 100644 --- a/src/types/interfaces/asset.d.ts +++ b/src/types/interfaces/asset.d.ts @@ -86,6 +86,7 @@ interface LendingMarketTableData extends MarketTableData { marketDepositCap: BigNumber accountLentAmount?: string accountLentValue?: BigNumber + borrowEnabled: boolean } interface MarketTableData { @@ -95,4 +96,4 @@ interface MarketTableData { marketLiquidityRate: number marketLiquidityAmount: BigNumber marketLiquidationThreshold: number -} +} \ No newline at end of file