'use client'; import { useState, Suspense } from 'react'; import { resetPassword } from '@/app/actions/auth-reset'; import { toast } from 'sonner'; import { useSearchParams, useRouter } from 'next/navigation'; import Link from 'next/link'; import { Lock, ArrowRight, Sparkles, AlertCircle, ArrowLeft } from 'lucide-react'; import { useLanguage } from '@/lib/i18n'; function ResetPasswordForm() { const searchParams = useSearchParams(); const router = useRouter(); const { t } = useLanguage(); const [isSubmitting, setIsSubmitting] = useState(false); const token = searchParams.get('token'); const handleSubmit = async (e: React.FormEvent) => { e.preventDefault(); if (!token) return; const formData = new FormData(e.currentTarget); const password = formData.get('password') as string; const confirm = formData.get('confirmPassword') as string; if (password !== confirm) { toast.error(t('resetPassword.passwordMismatch')); return; } setIsSubmitting(true); const result = await resetPassword(token, password); setIsSubmitting(false); if (result.error) { toast.error(result.error); } else { toast.success(t('resetPassword.success')); router.push('/login'); } }; if (!token) { return (

{t('resetPassword.invalidLinkTitle')}

{t('resetPassword.invalidLinkDescription')}

); } return (

{t('resetPassword.title')}

{t('resetPassword.description')}

{t('auth.backToLogin')}
); } export default function ResetPasswordPage() { const { t } = useLanguage(); return ( {t('resetPassword.loading')}}> ); }