import React, { useState } from 'react'; import { Container, Typography, TextField, Button, Box, Alert, Paper } from '@mui/material'; import { useNavigate } from 'react-router-dom'; import { useAuth } from '../context/AuthContext'; const Register = () => { const [username, setUsername] = useState(''); const [email, setEmail] = useState(''); const [password, setPassword] = useState(''); const [confirmPassword, setConfirmPassword] = useState(''); const [error, setError] = useState(''); const { register } = useAuth(); const navigate = useNavigate(); const handleSubmit = async (e) => { e.preventDefault(); setError(''); if (password.length < 9) { setError('Password must be at least 9 characters long.'); return; } if (password !== confirmPassword) { setError('Passwords do not match.'); return; } const success = await register(username, email, password); if (success) { navigate('/login'); } else { setError('Registration failed. Username or email might be taken.'); } }; return ( Register {error && {error}} setUsername(e.target.value)} /> setEmail(e.target.value)} /> setPassword(e.target.value)} /> setConfirmPassword(e.target.value)} /> ); }; export default Register;