import { NutritionalValues } from "@/components/Nutrition/helpers/nutritionalValues"; import React from "react"; import { useTranslation } from "react-i18next"; import { Cell, Legend, Pie, PieChart } from 'recharts'; import { generateChartColors } from "@/core/lib/colors"; import { numberGramLocale } from "@/core/lib/numbers"; export const MacrosPieChart = (props: { data: NutritionalValues }) => { const [t, i18n] = useTranslation(); const colorGenerator = generateChartColors(3); const data = [ { name: t('nutrition.carbohydrates'), value: props.data.carbohydrates }, { name: t('nutrition.protein'), value: props.data.protein }, { name: t('nutrition.fat'), value: props.data.fat }, ]; const RADIAN = Math.PI / 180; const renderCustomizedLabel = ( { cx, cy, midAngle, innerRadius, outerRadius, payload, }: // eslint-disable-next-line @typescript-eslint/no-explicit-any any) => { const radius = innerRadius + (outerRadius - innerRadius) * 0.4; const x = cx + radius * Math.cos(-midAngle * RADIAN); const y = cy + radius * Math.sin(-midAngle * RADIAN); return {numberGramLocale(payload.value, i18n.language)} ; }; return {data.map((entry, index) => ( ))} {/**/} ; };