import useAccount from '@/utils/hooks/useAccount' import { Alert, Button, FormContainer, FormItem, Input } from '@/components/ui' import { Field, Form, Formik } from 'formik' import * as Yup from 'yup' import { ActionLink } from '@/components/shared' import { ROUTES_ENUM } from '@/constants/route.constant' import { store } from '@/store' import Captcha from '@/components/shared/Captcha' type FormSchema = { email: string captchaResponse: string } const validationSchema = Yup.object().shape({ email: Yup.string().required('Please enter your user email'), captchaResponse: Yup.string().required(), }) const SendConfirmationCode = () => { const { userName } = store.getState().auth.user const { message, error, sendConfirmationCode } = useAccount() const onSubmit = async (values: FormSchema, setSubmitting: (isSubmitting: boolean) => void) => { setSubmitting(true) await sendConfirmationCode(values) setSubmitting(false) } return ( <>

Confirm Email

Please enter your email to receive new confirmation code

{message && ( {message} )} {error && ( {error} )} { onSubmit(values, setSubmitting) }} > {({ touched, errors, isSubmitting, setFieldValue }) => (
setFieldValue('captchaResponse', '')} onExpire={() => setFieldValue('captchaResponse', '')} onSuccess={(token: string) => setFieldValue('captchaResponse', token)} />
Back to Login
)}
) } export default SendConfirmationCode