import React from "react" import { useForm } from "react-hook-form" import { yupResolver } from "@hookform/resolvers/yup" import { emailValidationSchema } from "@/utils/form" import { toast } from "react-toastify" import pb from "@/lib/pocketbase" import { Dismiss20Filled } from "@fluentui/react-icons" import { redirect } from "next/navigation" function ModalEmailChange({ authString }) { const { register, handleSubmit, reset, formState: { errors, isSubmitting } } = useForm({ resolver: yupResolver(emailValidationSchema) }) const onSubmit = async data => { console.log(data) pb.authStore.loadFromCookie(authString) !pb.authStore.isValid && redirect("/") try { if (await pb.collection("user").requestEmailChange(data.email)) { reset() document.getElementById("email-change-modal")?.click() document.getElementById("sign-in-modal")?.click() } } 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() }} /> ) } export default ModalEmailChange