import { type HeatmapCell } from "@/src/features/score-analytics/lib/heatmap-utils"; import { getContrastColor } from "@/src/features/score-analytics/lib/color-scales"; import { Tooltip, TooltipContent, TooltipTrigger, } from "@/src/components/ui/tooltip"; import { cn } from "@/src/utils/tailwind"; import { useState } from "react"; interface HeatmapCellProps { cell?: HeatmapCell; color?: string; // Color for the cell (computed by parent) onHover?: (cell: HeatmapCell | null) => void; onClick?: (cell: HeatmapCell) => void; renderTooltip?: (cell: HeatmapCell) => React.ReactNode; cellClassName?: string; showValues?: boolean; } interface CellWithDataProps { cell: HeatmapCell; color?: string; onHover?: (cell: HeatmapCell | null) => void; onClick?: (cell: HeatmapCell) => void; renderTooltip?: (cell: HeatmapCell) => React.ReactNode; cellClassName?: string; showValues: boolean; } /** * Empty cell component (no data) */ function EmptyCell({ cellClassName }: { cellClassName?: string }) { return (