'use client' import { useState } from 'react' import { LineChart, Line, XAxis, YAxis, Tooltip, Legend, ResponsiveContainer, CartesianGrid, } from 'recharts' import { getTimeSeries, type TimeSeriesData } from '../../services/temporal.services' const TAX_TYPES = ['tfpnb', 'tfpb', 'th', 'cfe'] as const const YEARS = [2019, 2020, 2021, 2022] as const const COLORS = [ '#8884d8', '#82ca9d', '#ffc658', '#ff7300', '#00C49F', '#0088FE', '#FF8042', '#A4DE6C', '#D0ED57', '#FFBB28', '#FF4444', '#44AAFF', '#AA44FF', '#E91E63', '#4CAF50', '#9C27B0', '#00BCD4', '#FF5722', '#607D8B', '#795548', ] export default function Temporal() { const [taxType, setTaxType] = useState('tfpb') const [startYear, setStartYear] = useState(2019) const [endYear, setEndYear] = useState(2022) const [data, setData] = useState(null) const [loading, setLoading] = useState(false) const handleSubmit = async () => { setLoading(true) const result = await getTimeSeries([], taxType, startYear, endYear) setData(result) setLoading(false) } const chartData = data ? YEARS.filter((y) => y >= startYear && y <= endYear).map((year) => { const point: Record = { year } for (const region of Object.keys(data)) { const entry = data[region]?.find((e) => e.year === year) if (entry) point[region] = parseFloat(entry.avg_rate) } return point }) : [] return (

Taux d'imposition moyen par region

{chartData.length > 0 && ( `${v}%`} /> [`${value}%`, '']} /> {Object.keys(data!).map((region, i) => ( ))} )}
) }