'use client' import { CardWrapper } from '@/components/auth/card-wrapper' import { newVerification } from '@/actions/new-verification' import { useRouter, useSearchParams } from 'next/navigation' import { useCallback, useEffect, useState } from 'react' import { toast } from 'react-hot-toast' import { Loader2 } from 'lucide-react' export default function NewVerificationForm() { const [error, setError] = useState() const [success, setSuccess] = useState() const searchParams = useSearchParams() const token = searchParams.get('token') const router = useRouter() const onSubmit = useCallback(() => { if (!token) { setError('Missing token!') return } newVerification(token) .then((data) => { if (data?.error) { setError(data.error) } if (data?.success) { setSuccess(data.success) toast.success(data.success) setTimeout(() => { router.push('/login') }, 2000) } }) .catch(() => { setError('Something went wrong!') }) }, [token, router]) useEffect(() => { onSubmit() }, [onSubmit]) return (
{!success && !error && (

Verifying your email...

)} {success && (

{success}

Redirecting to login...

)} {error && (

{error}

Please try again or contact support.

)}
) }