import { useEffect, useState } from 'react'; import TextInput from '../components/Common/TextInput'; import Form from '../components/Common/Form'; import { useAuth } from '../context/AuthContext'; import { useLocation, useNavigate } from 'react-router-dom'; import SubmitButton from '../components/Common/SubmitButton'; import BackendError from '../components/BackendError'; import InfoMessage from '../components/InfoMessage'; import TextURL from '../components/Common/TextURL'; function LoginPage() { const [username, setUsername] = useState(''); const [password, setPassword] = useState(''); const { user, login, loading, error, setError } = useAuth() const navigate = useNavigate(); const search = useLocation().search; useEffect(() => { const name = new URLSearchParams(search).get('username'); setUsername(name || ''); }, [search]); useEffect(() => { setError(undefined); }, [username, password, setError]); const handleSubmit = (event: React.FormEvent) => { event.preventDefault(); if (!loading) { login(username, password, () => { navigate('/rsforms?filter=owned'); }); } }; return (
{ user ? :
setUsername(event.target.value)} /> setPassword(event.target.value)} />
{ error && } }
); } export default LoginPage;