"use client"; import { useState } from "react"; import axios from "axios"; import ErrorToast from "@/components/Error"; import SuccessToast from "@/components/Success"; interface AddSiteProps { onSiteAdded?: () => void; } export default function AddSite({ onSiteAdded }: AddSiteProps) { const [name, setName] = useState(""); const [description, setDescription] = useState(""); const [error, setError] = useState(""); const [success, setSuccess] = useState(""); const addSite = async () => { try { const response = await axios.post("/api/sites/add", { name, description }); if (response.status === 201) { const site = response.data.site; if (site) { setName(""); setDescription(""); setSuccess("Site added successfully"); document.getElementById('add_site')?.querySelector('form')?.dispatchEvent( new Event('submit', { cancelable: true }) ); if (onSiteAdded) { onSiteAdded(); } } else { setError("No site received"); } } } catch (error: any) { setError(error.response.data.error); } }; return (