Skip to Content
WebComponentAuthLoginEmail

📧 Email Login

The EmailLoginPage component provides a clean, functional email/password login screen using:

  • ZezoEmailLogin from @zezosoft/zezo-ott-react-ui-kit
  • 🔐 API login via zezoClient().auth.login(...)
  • 🔄 React Query for managing mutation state

✅ Example Usage

"use client"; import { useRouter } from "next/navigation"; import { useMutation } from "@tanstack/react-query"; import { EmailLogin as ZezoEmailLogin } from "@zezosoft/zezo-ott-react-ui-kit"; import { zezoClient } from "@/lib/zezoClient"; export default function EmailLoginPage() { const router = useRouter(); const loginMutation = useMutation({ mutationFn: (payload: { email: string; password: string }) => zezoClient().auth.login(payload), onSuccess: (data) => { if (data?.data?.id) { router.push("/"); } }, }); const handleSubmit = ({ email = "", password = "" }) => { if (!email.trim() || !password.trim()) return; loginMutation.mutate({ email: email.trim(), password: password.trim() }); }; return ( <ZezoEmailLogin onSubmit={handleSubmit} isLoading={loginMutation.isPending} goBack={() => router.back()} /> ); }
PropTypeRequiredDescription
onSubmit(form: { email: string; password: string }) => void✅ YesCalled when the user submits the login form
isLoadingboolean❌ NoDisplays a loading spinner on the submit button
goBack() => void❌ NoOptional function to navigate back (e.g., router.back())
errorstring❌ NoOptional error message to show inside the form

🖼️ UI Preview

Email Login Preview

Last updated on