import { useState } from 'react' import { useAuth } from '../auth' export default function AuthModal({ onClose }) { const { login, register } = useAuth() const [mode, setMode] = useState('login') // 'login' | 'register' const [nickname, setNickname] = useState('') const [password, setPassword] = useState('') const [avatar, setAvatar] = useState(null) const [avatarPreview, setAvatarPreview] = useState(null) const [error, setError] = useState(null) const [submitting, setSubmitting] = useState(false) const handleAvatarChange = (e) => { const file = e.target.files?.[0] || null setAvatar(file) setAvatarPreview(file ? URL.createObjectURL(file) : null) } const handleSubmit = async (e) => { e.preventDefault() setError(null) setSubmitting(true) try { if (mode === 'login') { await login(nickname.trim(), password) } else { await register(nickname.trim(), password, avatar) } onClose() } catch (err) { setError(err.message) } finally { setSubmitting(false) } } return (