import React, { useState, useEffect } from 'react'
import Header from '../../components/Header/Header'
import Input from '../../components/Input/Input'
import { Button } from '@mui/material'
import { useNavigate } from 'react-router-dom'
import { useTranslation } from 'react-i18next'
import { userContext } from '../../context/User'
import { useQuery, useMutation } from 'react-query'
import { getUserByAadhaar, sendOTP, getUser } from '../../services/apiservice'
import SubmitButton from '../../components/SubmitButton/SubmitButton'
import { toast, ToastContainer } from 'react-toastify'
import PopUpModal from '../../components/Modal/Modal'
import AudioAutoplay from '../../components/AudioAutoplay/AudioAutoplay'
import styles from './StatusOtp.module.css'
import Spinner from '../../components/Spinner/Spinner'
const StatusOtp = () => {
const navigate = useNavigate()
const { t } = useTranslation()
const [otp, setOtp] = useState()
const [disabled, setDisabled] = useState(false)
const [finalDisable, setFinalDisable] = useState(false)
const [unverified, setUnverified] = useState(true)
const [show, setShow] = useState(false)
const {
aadhaarNumber,
eidNumber,
userData,
setUserData,
oriUserData,
setOriUserData
} = userContext()
const mutateOTP = useMutation(() =>
sendOTP({ mobile: `+91${userData?.mobile}` })
)
const verifyOTP = () => {
if (mutateOTP?.data?.data?.otpCode === Number(otp)) {
setFinalDisable(true)
setDisabled(true)
setShow(false)
setUnverified(false)
toast.success(t('OTP_VERIFIED!'))
} else {
toast.error(t('INCORRECT_OTP'))
}
}
const sendResendOTP = () => {
setTimeout(() => {
if (finalDisable === false) {
console.log('Disabled: ', disabled, 'Final Disable: ', finalDisable)
setDisabled(false)
}
}, 30000)
}
useEffect(() => {
setUserData(oriUserData)
}, [oriUserData])
if (aadhaarNumber) {
const isLongEnough = aadhaarNumber?.toString().length > 11
const { isLoading, isError, data } = useQuery('user', async () => {
if (isLongEnough) {
const response = await getUserByAadhaar(aadhaarNumber)
return response
}
})
if (isLoading) {
return
{t('SENT_TO_YOUR_REGISTERED_MOBILE_NUMBER')}
{show && ( <> setOtp(e.target.value)} maxLength="6" placeholder={t('ENTER_OTP')} /> > )}