'use client'; import { useState } from 'react'; import { signIn } from '@/lib/auth-client'; import { useRouter } from 'next/navigation'; import Link from 'next/link'; import { Button } from '@/components/ui/Button'; import { Input } from '@/components/ui/Input'; export default function SignInPage() { const router = useRouter(); const [formData, setFormData] = useState({ email: '', password: '', }); const [errors, setErrors] = useState>({}); const [isLoading, setIsLoading] = useState(false); const handleSubmit = async (e: React.FormEvent) => { e.preventDefault(); setIsLoading(true); setErrors({}); // Basic validation if (!formData.email || !formData.password) { setErrors({ general: 'Všetky polia sú povinné' }); setIsLoading(false); return; } try { await signIn.email({ email: formData.email, password: formData.password, }, { onSuccess: () => { router.push('/dashboard'); router.refresh(); }, onError: (ctx) => { setErrors({ general: ctx.error.message || 'Nesprávny email alebo heslo' }); }, }); } catch (error) { setErrors({ general: 'Nastala chyba. Skúste to znova.' }); } finally { setIsLoading(false); } }; return (
{/* Back Button */} Späť na hlavnú stránku {/* Header */}

Vitajte späť!

Prihláste sa do svojho účtu

{/* Form */}
{errors.general && (
{errors.general}
)}
setFormData({ ...formData, email: e.target.value })} placeholder="jan.novak@email.com" disabled={isLoading} autoComplete="email" />
setFormData({ ...formData, password: e.target.value })} placeholder="••••••••" disabled={isLoading} autoComplete="current-password" />
Zabudli ste heslo?

Nemáte účet?{' '} Zaregistrujte sa

); }