import { ChatContext } from '@/app/chat-context'; import { ChartData } from '@/types/chat'; import { Chart } from '@berryv/g2-react'; import { useContext, useMemo } from 'react'; export default function PieChart({ chart }: { key: string; chart: ChartData }) { const { mode } = useContext(ChatContext); // Transform raw data into pie chart format const pieData = useMemo(() => { if (!chart.values || !Array.isArray(chart.values)) { return []; } return chart.values.map(item => ({ name: item.name, value: Number(item.value) || 0, })); }, [chart.values]); if (!pieData.length) { return null; } // Calculate total for percentage const total = pieData.reduce((sum, item) => sum + item.value, 0); return (