import { useState, useEffect } from "react"; import { useAuth } from "@/client/components/auth-provider"; export function LoginForm() { const [username, setUsername] = useState(""); const [password, setPassword] = useState(""); const [error, setError] = useState(""); const [isLoading, setIsLoading] = useState(false); const [isInitialized, setIsInitialized] = useState(false); const { login } = useAuth(); // Load saved username from localStorage on mount useEffect(() => { const savedUsername = localStorage.getItem("loginForm_username"); if (savedUsername) setUsername(savedUsername); setIsInitialized(true); }, []); // Save username to localStorage when it changes (after initial load) useEffect(() => { if (!isInitialized) return; if (username) { localStorage.setItem("loginForm_username", username); } else { localStorage.removeItem("loginForm_username"); } }, [username, isInitialized]); const handleSubmit = async (e: React.FormEvent) => { e.preventDefault(); setError(""); setIsLoading(true); try { await login(username, password); } catch (err) { setError(err instanceof Error ? err.message : "Login failed"); } finally { setIsLoading(false); } }; return (
Inhaber Login