"use client"; import { useState } from "react"; import axios from "axios"; import ErrorToast from "@/components/Error"; import SuccessToast from "@/components/Success"; import { Building2, MapPin, FileText } from "lucide-react"; import useSite from "@/hooks/useSite"; 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 } = useSite(); const addSiteHandler = async () => { const response = addSite({ id: "", name, description, networks: [] }); if (typeof response === "string") { setError(response) return } try { const successMessage = await response if (onSiteAdded && successMessage) { onSiteAdded() setSuccess("Site added successfully") } } catch (apiError: any) { setError(apiError) } finally { setName("") setDescription("") } }; return (

Add New Site

setName(e.target.value)} required />
setError('')} /> setSuccess('')} />
); }