"use client"; import * as React from "react"; import * as z from "zod"; import { cn } from "@/lib/utils"; import { Button, buttonVariants } from "@/components/ui/button"; import { Icons } from "@/components/icons"; import { useForm } from "react-hook-form"; import { zodResolver } from "@hookform/resolvers/zod"; import { Label } from "@/components/ui/label"; import { Input } from "@/components/ui/input"; import useAuth from "@/features/auth/hooks/use-auth"; import { IRegister } from "@/features/auth/types/auth.types"; const formSchema = z.object({ email: z.string({ required_error: "email is required" }).email({ message: "Invalid email address" }), password: z.string({ required_error: "password is required" }), }); interface UserAuthFormProps extends React.HTMLAttributes { } export function SignUpForm({ className, ...props }: UserAuthFormProps) { const { register, handleSubmit, formState: { errors } } = useForm({ resolver: zodResolver(formSchema) }); const { signUp, isLoading } = useAuth(); async function onSubmit(data: IRegister) { await signUp(data); } return ( <>
{errors?.email && (

{errors.email.message}

)}
{errors?.password && (

{errors.password.message}

)}
); }