"use client" import React from "react" import { useForm } from "react-hook-form" import { yupResolver } from "@hookform/resolvers/yup" import { signInValidationSchema } from "@/utils/form" import { login } from "@/app/actions" import { toast } from "react-toastify" import { useRouter } from "next/navigation" import { Dismiss20Filled } from "@fluentui/react-icons" function ModalSignIn() { const router = useRouter() const { register, handleSubmit, reset, formState: { errors, isSubmitting } } = useForm({ resolver: yupResolver(signInValidationSchema) }) const onSubmit = async data => { try { //login user const auth = await login({ email: data.email, password: data.password }) if (auth.success) { reset() document.getElementById("sign-in-modal")?.click() router.push("/account") } else { throw new Error(auth.response.message) } } catch (error) { if (error instanceof Error) { toast.error(error.message, { position: "bottom-left", autoClose: 5000, hideProgressBar: false, closeOnClick: true, pauseOnHover: true, draggable: true, progress: undefined, theme: "colored" }) } } } return ( <> { reset() }} /> Welcome back! Lets kick some more ass? {errors.email?.message} {errors.password?.message} Sign In {isSubmitting && } Dont have an account?{" "} { document.getElementById("sign-in-modal")?.click() document.getElementById("sign-up-modal")?.click() }} className="text-primary hover:text-primary/60 cursor-pointer " > Sign up document.getElementById("password-reset-modal")?.click() } className="btn btn-ghost text-primary capitalize border-none" > Reset Password > ) } export default ModalSignIn
Lets kick some more ass?