"use client"; import { getWidgetsData } from "@/app/utils/api/productDashboardApi"; import { Card } from "ikoncomponents"; import { FolderKanban, DollarSign, Clock } from "lucide-react"; import { useEffect, useState } from "react"; export const DashBoardWidgetsPage = () => { const [widgetsData, setWidgetsData] = useState({ totalProjects: 0, totalIssues: 0, totalRisksCount: 0, }); useEffect(() => { const fetchWidgetsData = async () => { try { const response = await getWidgetsData(); setWidgetsData(response); } catch (error) { console.error("Error fetching widgets data:", error); } }; fetchWidgetsData(); }, []); // Each widget carries an explicit accent set (icon color, soft icon halo, the // accent-colored value and a left rail). Classes are full static strings so // Tailwind keeps them in the build, with light + dark variants for contrast. const widgets = [ { title: "Total Projects", value: widgetsData.totalProjects, icon: FolderKanban, color: "text-blue-600 dark:text-blue-400", iconBg: "bg-blue-100 dark:bg-blue-500/15", rail: "bg-blue-500", }, { title: "Total Issues", value: widgetsData.totalIssues, icon: DollarSign, color: "text-emerald-600 dark:text-emerald-400", iconBg: "bg-emerald-100 dark:bg-emerald-500/15", rail: "bg-emerald-500", }, { title: "Total Risks Count", value: widgetsData.totalRisksCount, icon: Clock, color: "text-orange-600 dark:text-orange-400", iconBg: "bg-orange-100 dark:bg-orange-500/15", rail: "bg-orange-500", }, ]; return (