import { useState, useEffect } from 'react' import { GoogleLogin, type CredentialResponse } from '@react-oauth/google' import { useAuthStore } from '../../store/authStore' /* Demo accounts (개발 모드 전용) */ const DEMO_ACCOUNTS = [ { id: 'admin', password: 'admin1234', label: '관리자 (경정)' }, ] export function LoginPage() { const [userId, setUserId] = useState('') const [password, setPassword] = useState('') const [remember, setRemember] = useState(false) const { login, googleLogin, isLoading, error, clearError } = useAuthStore() const GOOGLE_ENABLED = !!import.meta.env.VITE_GOOGLE_CLIENT_ID useEffect(() => { const saved = localStorage.getItem('wing_remember') if (saved) { // eslint-disable-next-line react-hooks/set-state-in-effect setUserId(saved) setRemember(true) } }, []) const handleGoogleSuccess = async (response: CredentialResponse) => { if (response.credential) { clearError() try { await googleLogin(response.credential) } catch { // 에러는 authStore에서 관리 } } } const handleSubmit = async (e: React.FormEvent) => { e.preventDefault() clearError() if (!userId.trim() || !password.trim()) { return } try { await login(userId.trim(), password) if (remember) { localStorage.setItem('wing_remember', userId.trim()) } else { localStorage.removeItem('wing_remember') } } catch { // 에러는 authStore에서 관리 } } return (