diff --git a/apps/web/app/[locale]/dashboard/team-dashboard/[teamId]/components/team-stats-grid.tsx b/apps/web/app/[locale]/dashboard/team-dashboard/[teamId]/components/team-stats-grid.tsx index d24a93b64..dd5c6ffd9 100644 --- a/apps/web/app/[locale]/dashboard/team-dashboard/[teamId]/components/team-stats-grid.tsx +++ b/apps/web/app/[locale]/dashboard/team-dashboard/[teamId]/components/team-stats-grid.tsx @@ -1,70 +1,117 @@ -"use client"; +'use client'; -import { Card } from "@/components/ui/card"; +import { secondsToTime } from '@/app/helpers'; +import { ITimesheetStatisticsData } from '@/app/interfaces'; +import { Card } from '@/components/ui/card'; +import { Loader2 } from 'lucide-react'; +import { useMemo } from 'react'; -const stats = [ - { - title: "Members worked", - value: "17", - type: "number" - }, - { - title: "Tracked", - value: "47:23", - type: "time", - color: "text-blue-500", - progress: 70, - progressColor: "bg-blue-500" - }, - { - title: "Manual", - value: "18:33", - type: "time", - color: "text-red-500", - progress: 30, - progressColor: "bg-red-500" - }, - { - title: "Idle", - value: "05:10", - type: "time", - color: "text-yellow-500", - progress: 10, - progressColor: "bg-yellow-500" - }, - { - title: "Total Hours", - value: "70:66", - type: "time" - } -]; +function formatPercentage(value: number | undefined): number { + if (!value) return 0; + return Math.round(value); +} -export function TeamStatsGrid() { - return ( - <> +function formatTime(hours: number, minutes: number, seconds: number): string { + return `${String(hours).padStart(2, '0')}:${String(minutes).padStart(2, '0')}:${String(seconds).padStart(2, '0')}`; +} -