"use client"; import { useForm } from "react-hook-form"; import { useRouter } from "next/navigation"; import { useState } from "react"; import { EMAIL, getLocalStorage, setLocalStorage } from "@/store/local-storage"; import Link from "next/link"; import InputText from "@components/common/form/Input"; import { ProceedToCheckout } from "./ProceedToCheckout"; import { delay } from "@utils/helper"; import { EmailFormProps, EmailFormValues } from "../type"; import { EMAIL_REGEX } from "@utils/constants"; const Email = () => { const email = getLocalStorage(EMAIL); const [isOpen, setIsOpen] = useState(false); const router = useRouter(); const isGuest = true; const { register, handleSubmit, formState: { errors, isSubmitting }, } = useForm({ defaultValues: { email }, }); const onSubmit = async (data: EmailFormValues) => { setLocalStorage(EMAIL, data?.email); await delay(200); router.push("/checkout?step=address"); }; return ( <> {email === "" || typeof email === "object" ? (
) : isOpen ? (
) : ( <>

Email Address

{email}

Email Address

{email}

)} ); }; export default Email; function EmailForm({ register, errors, isSubmitting, isGuest, }: EmailFormProps) { return (
{isGuest && (

Already have an account? No worries, just{" "}
log in.

)}
); }