import { FontAwesomeIcon } from '@fortawesome/react-fontawesome'; import { faUser } from '@fortawesome/free-solid-svg-icons'; import { Form, Button, Alert, FloatingLabel, Row, Col } from 'react-bootstrap'; import PasswordInput from './PasswordInput.jsx'; import { useContext, useState } from "react"; import { Link, useNavigate } from "react-router-dom"; import { AuthContext } from "../../context/AuthContext.jsx"; import CustomContainer from '../CustomContainer.jsx'; import ContentWrapper from '../ContentWrapper.jsx'; import '../../css/LoginForm.css'; import { CONSTANTS } from '../../util/constants.js'; const LoginForm = () => { const { login, error } = useContext(AuthContext); const navigate = useNavigate(); const [formState, setFormState] = useState({ username: "", password: "" }); const handleChange = (e) => { const { name, value } = e.target; setFormState((prev) => ({ ...prev, [name]: value })); }; const handleSubmit = async (e) => { e.preventDefault(); const loginBody = { username: formState.username, password: formState.password, serviceId: CONSTANTS.SERVICE_ID }; try { await login(loginBody); navigate("/"); } catch (err) { console.error("Error de login:", err.message); } }; return (

Inicio de sesión

Usuario } > {/*
{ formState.keepLoggedIn = e.target.checked; setFormState({ ...formState }) }} /> Olvidé mi contraseña
*/}
{error && ( {error} )}
); }; export default LoginForm;