"use client"; import React, { useState } from "react"; import Link from "next/link"; import { useRouter } from "next/navigation"; import Image from "next/image"; import BackgroundWrapper from "@/components/BackgroundWrapper"; import FormField from "@/components/FormField"; import DestructibleAlert from "@/components/DestructibleAlert"; import { LoginForm } from "@/types/auth"; import { CircleAlert } from "lucide-react"; import { useAuthStore } from "@/stores/authStore"; const LoginPage = () => { const router = useRouter(); const { login } = useAuthStore(); const [form, setForm] = useState({ identifier: "", password: "", }); const [error, setError] = useState(null); const [isLoading, setIsLoading] = useState(false); const loginUser = async () => { try { setIsLoading(true); setError(null); await login(form); router.replace("/home"); } catch (err: unknown) { console.error(err); if ( typeof err === "object" && err !== null && "message" in err && typeof err.message === "string" ) { setError(err.message); } else { setError("An unexpected error occurred."); } } finally { setIsLoading(false); } }; return (
{/* Logo Container */}
Logo
{/* Form Container */}
setForm({ ...form, identifier: value }) } /> setForm({ ...form, password: value }) } />
{error && }

Your login details will be remembered.

{/* Register Link */}

Don't have an account?{" "} Register here.

); }; export default LoginPage;