"use client"; import React from "react"; import { AgCharts } from "ag-charts-react"; import { AgBarSeriesOptions, AgChartOptions, AgLineSeriesOptions, AgPieSeriesOptions, } from "ag-charts-community"; export function BarChart({ data, xKey, yKey, color = "#3c82e6", height = 300, }: { data: any[]; xKey: string; yKey: string; color?: string; height?: number; }) { const options: AgChartOptions = { data, series: [ { type: "bar", xKey, yKey, fill: color, } as AgBarSeriesOptions, ], height, }; return ; } export function LineChart({ data, xKey, yKey, color = "#3b82f6", height = 300, }: { data: any[]; xKey: string; yKey: string; color?: string; height?: number; }) { const options: AgChartOptions = { data, series: [ { type: "line", xKey, yKey, stroke: color, strokeWidth: 3, marker: { size: 6, fill: color, stroke: "#ffffff", strokeWidth: 2, }, } as AgLineSeriesOptions, ], height, }; return ; } export function PieChart({ data, labelKey, valueKey, height = 300, }: { data: any[]; labelKey: string; valueKey: string; height?: number; }) { const options: AgChartOptions = { data, series: [ { type: "pie", labelKey, angleKey: valueKey, } as AgPieSeriesOptions, ], height, }; return ; } export function AreaChart({ data, xKey, yKey, color = "#3b82f6", height = 300, }: { data: any[]; xKey: string; yKey: string; color?: string; height?: number; }) { const options: AgChartOptions = { data, series: [ { type: "area", xKey, yKey, fill: color, stroke: color, strokeWidth: 2, }, ], height, }; return ; }