"use client" import { LineChart as RechartsLineChart, Line, XAxis, YAxis, CartesianGrid, Tooltip, Legend, ResponsiveContainer, BarChart as RechartsBarChart, Bar, PieChart as RechartsPieChart, Pie, Cell, } from "recharts" interface ChartProps { data: any height?: number } export function LineChart({ data, height = 300 }: ChartProps) { return ( { const dataPoint = { name: label } data.datasets.forEach((dataset, j) => { dataPoint[dataset.label] = dataset.data[i] }) return dataPoint })} > {data.datasets.map((dataset, i) => ( ))} ) } export function BarChart({ data, height = 300 }: ChartProps) { return ( { const dataPoint = { name: label } data.datasets.forEach((dataset, j) => { dataPoint[dataset.label] = dataset.data[i] }) return dataPoint })} > {data.datasets.map((dataset, i) => ( ))} ) } export function PieChart({ data, height = 300 }: ChartProps) { return ( ({ name: label, value: data.datasets[0].data[i], }))} cx="50%" cy="50%" labelLine={false} outerRadius={80} fill="#8884d8" dataKey="value" label={({ name, percent }) => `${name}: ${(percent * 100).toFixed(0)}%`} > {data.labels.map((entry, index) => ( ))} ) }