'use client' import { useState } from 'react' import { useRouter } from 'next/navigation' import Link from 'next/link' import { useAuth } from '@/hooks/useAuth' import { Button } from '@/components/ui/button' import { Input } from '@/components/ui/input' import { Card, CardContent, CardHeader, CardTitle } from '@/components/ui/card' import { Alert, AlertDescription } from '@/components/ui/alert' import { AuthenticationError } from '@/lib/auth' export default function LoginAdminPage() { const [credentials, setCredentials] = useState({ email: '', password: '' }) const [error, setError] = useState('') const [loading, setLoading] = useState(false) const router = useRouter() const { login } = useAuth() const handleLogin = async (e: React.FormEvent) => { e.preventDefault() setLoading(true) setError('') try { // Tentar fazer login usando o contexto com tipo administrador const success = await login(credentials.email, credentials.password, 'administrador') if (success) { console.log('[LOGIN-ADMIN] Login bem-sucedido, redirecionando...') // Redirecionamento direto - solução que funcionou window.location.href = '/dashboard' } } catch (err) { console.error('[LOGIN-ADMIN] Erro no login:', err) if (err instanceof AuthenticationError) { setError(err.message) } else { setError('Erro inesperado. Tente novamente.') } } finally { setLoading(false) } } return (

Login Administrador de Clínica

Entre com suas credenciais para acessar o sistema administrativo

Acesso Administrativo
setCredentials({...credentials, email: e.target.value})} required className="mt-1" disabled={loading} />
setCredentials({...credentials, password: e.target.value})} required className="mt-1" disabled={loading} />
{error && ( {error} )}
) }