From ba06c5ed4d22406f33620e96275eb29db06f5280 Mon Sep 17 00:00:00 2001 From: Anukul Pandey <62092256+anukulpandey@users.noreply.github.com> Date: Mon, 21 Oct 2024 01:36:37 +0530 Subject: [PATCH] Fix max amt send (#102) * feat: display locked balance and free balance * fix: max amt sent --------- Co-authored-by: matjazonline --- src/App.tsx | 24 +++++++++++++++++++++--- src/common/Nav.tsx | 1 + 2 files changed, 22 insertions(+), 3 deletions(-) diff --git a/src/App.tsx b/src/App.tsx index 5f2c6a9..9e29f8a 100644 --- a/src/App.tsx +++ b/src/App.tsx @@ -8,6 +8,7 @@ import { extension as reefExt } from '@reef-chain/util-lib'; import { Components } from '@reef-chain/react-lib'; import Nav from './common/Nav'; import OptionContext from './context/OptionContext'; +import { BigNumber} from "ethers"; import ReefSignersContext from './context/ReefSigners'; import ContentRouter from './pages/ContentRouter'; import { notify } from './utils/utils'; @@ -62,19 +63,38 @@ const App = (): JSX.Element => { const {loading:wcPreloader,setLoading:setWcPreloader} = useWcPreloader() const [accounts,setAccounts] = useState([]); const [selectedSigner,setSelectedSigner] = useState(undefined); + + const { loading, error, signers, selectedReefSigner, network, provider, reefState, extension } = hooks.useInitReefStateExtension( 'Reef App', selExtensionName, { ipfsHashResolverFn: getIpfsGatewayUrl }, ); + const accountsBalances = hooks.useObservableState(reefState.accounts$); + + useEffect(()=>{ + let updatedAccountsList:any = [] + if(signers && accountsBalances){ + signers.forEach((sgnr,idx)=>{ + let accountUpdatedBal = { + ...sgnr, + freeBalance: accountsBalances[idx].freeBalance?? BigNumber.from("0"), + lockedBalance:accountsBalances[idx].lockedBalance?? BigNumber.from("0") + } + updatedAccountsList.push(accountUpdatedBal); + }) + + setAccounts(updatedAccountsList); + } + },[accountsBalances,signers]) + useEffect(()=>{ setAccounts([]); setSelectedSigner(undefined); },[selExtensionName]) useEffect(()=>{ - setAccounts(signers); setSelectedSigner(selectedReefSigner); // if account connected , hide preloader & set account address @@ -182,8 +202,6 @@ useEffect(()=>{ } } - const {isAccountSelectorOpen} = useAccountSelector() - // @ts-ignore return ( <> diff --git a/src/common/Nav.tsx b/src/common/Nav.tsx index e8b3a5a..fec1656 100644 --- a/src/common/Nav.tsx +++ b/src/common/Nav.tsx @@ -179,6 +179,7 @@ const Nav = ({ selectExtension }: Nav): JSX.Element => { {menuItemsView} } +