'use client'; import AppLink from '@/ui/AppLink'; import Button from '@/ui/Button'; import Input from '@/ui/Input'; import cookies from 'js-cookie'; import { useRouter } from 'next/navigation'; import { useForm } from 'react-hook-form'; type LoginData = { pseudo: string; passwd: string; }; export default function Page() { const { register, handleSubmit, formState: { errors }, setError } = useForm({ defaultValues: { pseudo: '', passwd: '' } }); const router = useRouter(); async function onSubmit(data: LoginData) { const res = await fetch(`${process.env.NEXT_PUBLIC_API_URL}/login`, { method: 'POST', body: JSON.stringify(data) }); if (res.ok) { const token = res.headers.get('Authorization')?.split(' ')[1]; if (token) cookies.set('token', token); if (cookies.get('token')) router.push('/dashboard'); } else { setError('passwd', { type: 'manual', message: "Nom d'utilisateur ou mot de passe incorrect" }); } } return ( <>

Connexion

Vous n'avez pas de compte? S'inscrire maintenant

); }