import React, {useContext, useState} from "react"; import {Link} from "@/lib/navigation"; import {AlertContext} from "@/context/AlertContext"; import {KeyRound} from 'lucide-react'; import {useTranslations} from "@/lib/i18n"; import {LangContext, LangContextProps} from "@/context/LangContext"; import {apiPostPublic} from "@/lib/api/client"; import Button from "@/components/ui/Button"; import InputField from "@/components/form/InputField"; import TextInput from "@/components/form/TextInput"; export default function StepTree( { email, prevStep }: { email: string; prevStep: Function; }) { const {errorMessage, successMessage} = useContext(AlertContext); const [isConfirmed, setIsConfirmed] = useState(false); const [verifyCode, setVerifyCode] = useState(''); const t = useTranslations(); const {lang} = useContext(LangContext) async function handleVerifyCode(): Promise { if (verifyCode === '') { errorMessage(t('registerStepTwo.error.codeIncorrect')); return; } try { const response: boolean = await apiPostPublic('register/verify-code', { verifyCode, email, }, lang); if (!response) { errorMessage(t('registerStepTwo.error.codeIncorrect')); return; } setIsConfirmed(true); successMessage(t('registerStepTwo.success.verified')); } catch (e: unknown) { if (e instanceof Error) { errorMessage(e.message); } else { errorMessage(t('registerStepTwo.error.unknown')); } } } return ( !isConfirmed ? (

{t('registerStepTwo.instructions.sent')}

{t('registerStepTwo.instructions.checkInbox')}

setVerifyCode(e.target.value)} placeholder={t('registerStepTwo.fields.code.placeholder')}/> }/>
) : (

{t('registerStepTwo.confirmed')}

) ) }