import React, { useCallback, useEffect, useState } from "react"; import { useDashboardProjectsCardData } from "../../hooks/useDashboard_Data"; import eventBus from "../../services/eventBus"; import GlobalRepository from "../../repositories/GlobalRepository"; const Projects = () => { const { projectsCardData } = useDashboardProjectsCardData(); const [projectData, setProjectsData] = useState(projectsCardData); useEffect(() => { setProjectsData(projectsCardData); }, [projectsCardData]); const handler = useCallback( async (msg) => { try { const response = await GlobalRepository.getDashboardProjectsCardData(); setProjectsData(response.data); } catch (err) { console.error(err); } }, [GlobalRepository] ); useEffect(() => { eventBus.on("project", handler); return () => eventBus.off("project", handler); }, [handler]); return (
{" "} Projects

{projectData.totalProjects?.toLocaleString()}

Total

{projectData.ongoingProjects?.toLocaleString()}

Ongoing
); }; export default Projects;