"use client"; import pb from "@/lib/pocketbase"; import { newsletterValidationSchema } from "@/utils/form"; import { yupResolver } from "@hookform/resolvers/yup"; import React from "react"; import { useForm } from "react-hook-form"; import { toast } from "react-toastify"; function Newsletter() { const { register, handleSubmit, formState: { errors }, } = useForm({ resolver: yupResolver(newsletterValidationSchema), }); const onSubmit = async (data: { email: string }) => { try { await pb.collection("contact").create({ source: "newsletter", ...data }); localStorage.setItem("newsletter", JSON.stringify(data)); } 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 (
{/* CTA box */}
{typeof window !== "undefined" && !localStorage.getItem("newsletter") ? (

Stay Ahead of the Curve

Join our newsletter to get top news before anyone else.

{errors.email?.message} 
) : (

Thanks for subscribing. You won't regret it!

)}
); } export default Newsletter;