import { Button } from "@/components/ui/button"; import { Input } from "@/components/ui/input"; import { useAuth } from "@/store/auth"; import { useVerify } from "@/store/verify"; import maskEmail from "@/util/maskEmail"; import { useCallback, useEffect, useMemo, useState, type FC } from "react"; import { useNavigate } from "react-router"; const VerifyEmailPage: FC = () => { const profile = useAuth((s) => s.profile); const requestOtp = useVerify((s) => s.requestOTP); const requesting = useVerify((s) => s.requesting); const requested = useVerify((s) => s.requested); const navigate = useNavigate(); const [email, setEmail] = useState(""); const matches = useMemo( () => email === profile?.email, [email, profile?.email], ); const handleNext = useCallback(() => { if (matches) { requestOtp(); } }, [matches, requestOtp]); useEffect(() => { if (requested) { navigate("/verify/email/otp"); } }, [navigate, requested]); return (
Please fill in your email address used in this account.
{ e.preventDefault(); setEmail(e.target.value); }} />