"use client"; import { Button } from "@/components/ui/button"; import { Users, TrendingUp, BarChart3, ExternalLink, Target, Award, Star, } from "lucide-react"; import { TechIcon } from "@/components/icons/tech-icon"; interface TeamStatsCardProps { teamId: string; teamName: string; direction: string; totalMembers: number; averageSkillLevel: number; topSkills: Array<{ skillName: string; averageLevel: number; color?: string; icon?: string; }>; skillCoverage: number; onViewDetails?: () => void; onViewReport?: () => void; } export function getSkillLevelLabel(level: number): string { if (level < 0.5) return "Débutant"; if (level < 1.5) return "Intermé."; if (level < 2.5) return "Avancé"; return "Expert"; } export function getSkillLevelColor(level: number): string { if (level < 0.5) return "bg-red-500"; if (level < 1.5) return "bg-orange-500"; if (level < 2.5) return "bg-blue-500"; return "bg-green-500"; } export function getSkillLevelBadgeClasses(level: number): string { if (level < 0.5) return "bg-red-500/20 border-red-500/30 text-red-300"; if (level < 1.5) return "bg-orange-500/20 border-orange-500/30 text-orange-300"; if (level < 2.5) return "bg-blue-500/20 border-blue-500/30 text-blue-300"; return "bg-green-500/20 border-green-500/30 text-green-300"; } export function getProgressColor(percentage: number): string { if (percentage < 30) return "bg-red-500"; if (percentage < 60) return "bg-orange-500"; if (percentage < 80) return "bg-blue-500"; return "bg-green-500"; } export function TeamStatsCard({ teamId, teamName, direction, totalMembers, averageSkillLevel, topSkills, skillCoverage, onViewDetails, onViewReport, }: TeamStatsCardProps) { return (

{teamName}

{direction}
{totalMembers}
{/* Stats Overview */}
Niveau moyen
{((averageSkillLevel / 3) * 100).toFixed(0)}%
{getSkillLevelLabel(averageSkillLevel)}
Couverture
{skillCoverage.toFixed(0)}% des compétences
{/* Top Skills */}
Top Compétences
{topSkills.slice(0, 3).map((skill, idx) => (
{/* Icône de la technologie */}
{skill.icon ? (
) : (
)}
{/* Nom et niveau */}
{skill.skillName}
{skill.averageLevel.toFixed(1)}
{/* Mini barre de progression */}
))}
{/* Action Buttons */}
); }