import {useCallback, useEffect, useState} from 'react'; import useUnicornFinance from '../useUnicornFinance'; import {useWallet} from 'use-wallet'; import {BigNumber} from 'ethers'; import {parseUnits} from 'ethers/lib/utils'; const useEstimateWings = (magicbondAmount: string) => { const [estimateAmount, setEstimateAmount] = useState(''); const {account} = useWallet(); const unicornFinance = useUnicornFinance(); const estimateAmountOfWings = useCallback(async () => { const magicbondAmountBn = parseUnits(magicbondAmount); const amount = await unicornFinance.estimateAmountOfWings(magicbondAmountBn.toString()); setEstimateAmount(amount); }, [account]); useEffect(() => { if (account) { estimateAmountOfWings().catch((err) => console.error(`Failed to get estimateAmountOfWings: ${err.stack}`)); } }, [account, estimateAmountOfWings]); return estimateAmount; }; export default useEstimateWings;