From 17c2fda0e6e9feba59541997ab96d25e257952c2 Mon Sep 17 00:00:00 2001 From: techyNonso Date: Sat, 27 Jan 2024 22:13:07 +0100 Subject: [PATCH] error with number changes fixed --- src/app/presale/page.tsx | 30 +++++++++++++++++++----------- 1 file changed, 19 insertions(+), 11 deletions(-) diff --git a/src/app/presale/page.tsx b/src/app/presale/page.tsx index d59f504..99501f1 100644 --- a/src/app/presale/page.tsx +++ b/src/app/presale/page.tsx @@ -30,12 +30,14 @@ const PresalePage = () => { const [decenField, setDecenField] = useState('') const [isLoading, setIsLoading] = useState(false) - const { data: maticFeed } = useContractRead({ + const { data: maticFeed, isFetching: fetchingMatic, isLoading: loadingMatic } = useContractRead({ abi: priceFeedAbi, address: `0x${process.env.NEXT_PUBLIC_MATIC_FEED_ADDRESS?.substring(2)}`, functionName: 'latestRoundData', }) - const { data: usdtFeed } = useContractRead({ + + + const { data: usdtFeed, isFetching: fetchingUsdt, isLoading: loadingUsdt } = useContractRead({ abi: priceFeedAbi, address: `0x${process.env.NEXT_PUBLIC_USDT_FEED_ADDRESS?.substring(2)}`, functionName: 'latestRoundData', @@ -120,21 +122,24 @@ const PresalePage = () => { e: React.ChangeEvent | React.ChangeEvent, ) => { setDecenField(e.target.value) - if (usdtRate == 0 && maticRate == 0) return + + //if (usdtRate == 0 && maticRate == 0) return calcToken(Number(e.target.value)) } const calcDecen = (val: number = Number(tokenField)) => { const usdtInUSD = val / usdtRate const maticInUSD = val / maticRate - + // console.log(val, maticRate) let qtyDecen = 0 if (selectedToken == 'USDT') { qtyDecen = usdtInUSD / decenRate + } else if (selectedToken == 'MATIC') { qtyDecen = maticInUSD / decenRate } + qtyDecen > 0 ? setDecenField(String(qtyDecen)) : setDecenField(String(0)) } @@ -142,19 +147,19 @@ const PresalePage = () => { e: React.ChangeEvent | React.ChangeEvent, ) => { setTokenField(e.target.value) - if (usdtRate == 0 && maticRate == 0) return + // if (usdtRate == 0 && maticRate == 0) return calcDecen(Number(e.target.value)) } const handleMaticFeed = () => { //@ts-ignore - const maticUsd = maticFeed[1] / BigInt(Math.pow(10, 8)) + const maticUsd = Number(maticFeed[1]) / Math.pow(10, 8) setMaticRate(Number(maticUsd)) } const handleUsdtFeed = () => { //@ts-ignore - const usdtUsd = usdtFeed[1] / BigInt(Math.pow(10, 8)) - setUsdtRate(Number(usdtUsd)) + const usdtUsd = Number(usdtFeed[1]) / Math.pow(10, 8) + setUsdtRate(usdtUsd) } const depositNative = async () => { @@ -173,6 +178,7 @@ const PresalePage = () => { const submitForm = (e: FormEvent) => { e.preventDefault() + if (!tokenField) return setIsLoading(true) if (selectedToken == 'USDT') { depositErc() @@ -186,7 +192,7 @@ const PresalePage = () => { handleMaticFeed() handleUsdtFeed() - }) + }, [maticFeed, usdtFeed]) useEffect(() => { calcDecen() @@ -244,9 +250,10 @@ const PresalePage = () => { changeToken(e)} value={tokenField} /> @@ -259,9 +266,10 @@ const PresalePage = () => { changeDecen(e)} value={decenField} />