import { useDeleteProject, useProjects, useUpdateProject, } from "@/hooks/queries/useProjects"; import { useState } from "react"; import { T_projects } from "@/types/projects.type"; import { EditProjectModal } from "./EditProjectModal"; import { ProjectCard } from "./ProjectCard"; export default function ManageProject() { const { data: projectsData, isLoading } = useProjects(); const updateMutation = useUpdateProject(); const deleteMutation = useDeleteProject(); const [selectedProject, setSelectedProject] = useState( null, ); const projects: T_projects[] = projectsData?.data?.data?.result || []; const handleUpdate = (data: Partial) => { if (selectedProject) { updateMutation.mutate( { id: selectedProject._id, data }, { onSuccess: () => setSelectedProject(null), }, ); } }; const handleDelete = (id: string) => { if (window.confirm("Are you sure you want to delete this project?")) { deleteMutation.mutate(id); } }; if (isLoading) return (
Loading Projects...
); return (

Manage Projects

Edit, update or remove your portfolio items.

{projects.map((item) => ( ))}
{selectedProject && ( setSelectedProject(null)} onSave={handleUpdate} /> )}
); }