From 9df8f16954b58567dc6d5f07977c687f0b88ef87 Mon Sep 17 00:00:00 2001 From: Nick Date: Sat, 17 Aug 2024 03:11:17 +0330 Subject: [PATCH] handle fronzenBalance from storage --- .../src/fullscreen/accountDetails/index.tsx | 5 +++-- packages/extension-polkagate/src/hooks/useBalances.ts | 3 ++- packages/extension-polkagate/src/popup/account/util.ts | 10 +++++++--- .../src/util/workers/getAssetOnRelayChain.js | 2 +- 4 files changed, 13 insertions(+), 7 deletions(-) diff --git a/packages/extension-polkagate/src/fullscreen/accountDetails/index.tsx b/packages/extension-polkagate/src/fullscreen/accountDetails/index.tsx index 57d5774ad..e26b89e36 100644 --- a/packages/extension-polkagate/src/fullscreen/accountDetails/index.tsx +++ b/packages/extension-polkagate/src/fullscreen/accountDetails/index.tsx @@ -99,6 +99,7 @@ export default function AccountDetails (): React.ReactElement { : { ...(balances || {}), ...(selectedAsset || {}) }; }, [assetId, balances, chainName, selectedAsset]); + const transferableBalance = useMemo(() => getValue('transferable', balancesToShow as BalancesInfo), [balancesToShow]); const isDualStaking = useMemo(() => balancesToShow?.soloTotal && balancesToShow?.pooledBalance && !balancesToShow.soloTotal.isZero() && !balancesToShow.pooledBalance.isZero() , [balancesToShow?.pooledBalance, balancesToShow?.soloTotal]); @@ -224,9 +225,9 @@ export default function AccountDetails (): React.ReactElement { /> } { - if (!balances) { + if (!balances || isEmptyObject(balances)) { return; } @@ -32,9 +36,9 @@ export const getValue = (type: string, balances: BalancesInfo | null | undefined case ('available balance'): return balances.availableBalance; case ('transferable'): - return balances.reservedBalance && balances.reservedBalance.gte(balances.frozenBalance || BN_ZERO) + return balances.reservedBalance.gte(balances.frozenBalance || BN_ZERO) ? balances.freeBalance - : balances.freeBalance?.sub(balances.frozenBalance.sub(balances.reservedBalance)); + : balances.freeBalance.sub(balances.frozenBalance.sub(balances.reservedBalance)); case ('reserved'): return balances.reservedBalance; case ('others'): diff --git a/packages/extension-polkagate/src/util/workers/getAssetOnRelayChain.js b/packages/extension-polkagate/src/util/workers/getAssetOnRelayChain.js index 6cc0b1526..c8a1ce317 100644 --- a/packages/extension-polkagate/src/util/workers/getAssetOnRelayChain.js +++ b/packages/extension-polkagate/src/util/workers/getAssetOnRelayChain.js @@ -82,7 +82,7 @@ async function getBalances (chainName, addresses) { } } -async function getAssetOnRelayChain(addresses, chainName) { +async function getAssetOnRelayChain (addresses, chainName) { const results = {}; await getBalances(chainName, addresses)