"use client"; import { useState } from "react"; import Link from "next/link"; import { useAuth } from "@/context/AuthContext"; import { cn } from "@/lib/utils"; import { Button } from "@/components/ui/button"; import { Card, CardContent, CardHeader, CardTitle } from "@/components/ui/card"; import { Input } from "@/components/ui/input"; import { Label } from "@/components/ui/label"; import { Alert, AlertDescription, AlertTitle } from "@/components/ui/alert"; import { Terminal, CheckCircle } from "lucide-react"; import Image from "next/image"; import Logo from "../public/logo.png"; export function LoginForm({ className, ...props }: React.ComponentProps<"div">) { const [email, setEmail] = useState(""); const [password, setPassword] = useState(""); const [successMessage, setSuccessMessage] = useState(null); const { login, isLoading, error } = useAuth(); const handleSubmit = async (event: React.FormEvent) => { event.preventDefault(); setSuccessMessage(null); // Clear success message on new attempt await login(email, password); }; return (
ExamaJam Logo Welcome to ExamJam
{error && ( Login Error {error} )} {successMessage && ( Success {successMessage} )}
setEmail(e.target.value)} disabled={isLoading} />
setPassword(e.target.value)} disabled={isLoading} />
Don't have an account?{" "} Sign up
); }