import React, { useState } from 'react'; import { useNavigate } from 'react-router-dom'; export default function Auth() { const [isLogin, setIsLogin] = useState(true); const [email, setEmail] = useState(''); const [password, setPassword] = useState(''); const [firstName, setFirstName] = useState(''); const [error, setError] = useState(''); const navigate = useNavigate(); const handleSubmit = async (e) => { e.preventDefault(); setError(''); const url = isLogin ? '/api/auth/login' : '/api/auth/register'; const payload = isLogin ? { email, password } : { email, password, first_name: firstName }; try { const res = await fetch(url, { method: 'POST', headers: { 'Content-Type': 'application/json' }, body: JSON.stringify(payload) }); const data = await res.json(); if (!res.ok) { throw new Error(data.error || 'Ошибка авторизации'); } localStorage.setItem('token', data.token); localStorage.setItem('user', JSON.stringify(data.user)); navigate('/'); } catch (err) { setError(err.message); } }; return (

{isLogin ? 'Вход в систему' : 'Регистрация'}

{error &&
{error}
}
{!isLogin && (
setFirstName(e.target.value)} required />
)}
setEmail(e.target.value)} required />
setPassword(e.target.value)} required />
{ e.preventDefault(); setIsLogin(!isLogin); }}> {isLogin ? 'Нет аккаунта? Зарегистрироваться' : 'Уже есть аккаунт? Войти'}
); }