import React, { useState } from "react"; import Modal from "./Modal"; import "../../Style/LoginModal.css"; import Logo from '../../assets/images/logo.svg?react'; import TextField from '@mui/material/TextField'; import axios from 'axios'; const LoginModal = ({ onLogin, onClose }) => { const [username, setUsername] = useState(""); const [password, setPassword] = useState(""); const [error, setError] = useState(""); const [showPassword, setShowPassword] = React.useState(false); const handleClickShowPassword = () => setShowPassword((show) => !show); const handleSubmit = async (e) => { e.preventDefault(); try { const { data } = await axios.post( `${import.meta.env.VITE_BACK_URL}/api/auth/login`, { login: username, password }, { withCredentials: true, headers: { 'Content-Type': 'application/json', }, } ); if (data.success) { localStorage.setItem('access_token', data.access_token); onLogin(data.user); onClose(); } else { setError(data.message || "Неверный логин или пароль"); } } catch (err) { console.error('Ошибка при отправке запроса:', err); setError(err.response?.data?.message || "Ошибка при подключении к серверу"); } }; return (

Авторизация

setUsername(e.target.value)} size="normal" /> setPassword(e.target.value)} size="normal" /> {error &&

{error}

}
); }; export default LoginModal;