'use client'; import { BarChart, Bar, XAxis, YAxis, CartesianGrid, Tooltip, ResponsiveContainer, Cell } from 'recharts'; import { SprintVelocity } from '@/lib/types'; interface VelocityChartProps { sprintHistory: SprintVelocity[]; className?: string; } export function VelocityChart({ sprintHistory, className }: VelocityChartProps) { // Préparer les données pour le graphique const chartData = sprintHistory.map(sprint => ({ name: sprint.sprintName, completed: sprint.completedPoints, planned: sprint.plannedPoints, completionRate: sprint.completionRate })); const CustomTooltip = ({ active, payload, label }: { active?: boolean; payload?: Array<{ payload: { completed: number; planned: number; completionRate: number } }>; label?: string }) => { if (active && payload && payload.length) { const data = payload[0].payload; return (

{label}

Complétés: {data.completed} pts
Planifiés: {data.planned} pts
Taux de réussite: {data.completionRate}%
); } return null; }; return (
} /> {chartData.map((entry, index) => ( = 80 ? 'hsl(142, 76%, 36%)' : entry.completionRate >= 60 ? 'hsl(45, 93%, 47%)' : 'hsl(0, 84%, 60%)'} /> ))}
); }