From ebe0ccca4c5d414c6adce10c2eccbcf6eb3b5ac0 Mon Sep 17 00:00:00 2001 From: Celes Renata Date: Fri, 17 Apr 2026 01:01:02 +0000 Subject: [PATCH] fix: trend chart tooltip shows no data on hover Replaced Recharts default Tooltip with formatter prop (broken in Recharts v3 with explicit type annotations) with a custom TrendTooltip component matching the SQL Explorer pattern. Shows each series name, value, and color on hover. --- frontend/src/pages/CompanyDetail.tsx | 23 ++++++++++++++++++----- 1 file changed, 18 insertions(+), 5 deletions(-) diff --git a/frontend/src/pages/CompanyDetail.tsx b/frontend/src/pages/CompanyDetail.tsx index 456a075..1d341cd 100644 --- a/frontend/src/pages/CompanyDetail.tsx +++ b/frontend/src/pages/CompanyDetail.tsx @@ -565,6 +565,23 @@ interface ChartPoint { window: string; } +function TrendTooltip({ active, payload, label }: Record) { + if (!active) return null; + const items = payload as Array<{ name: string; value: number; color: string }> | undefined; + if (!items?.length) return null; + return ( +
+
{String(label ?? '')}
+ {items.map((item, i) => ( +
+ {item.name}: + {item.value}% +
+ ))} +
+ ); +} + function TrendHistoryChart({ trends, latestTrends, ticker }: { trends: TrendSummary[]; latestTrends: TrendSummary[]; ticker: string }) { const [selectedWindow, setSelectedWindow] = useState('7d'); @@ -640,11 +657,7 @@ function TrendHistoryChart({ trends, latestTrends, ticker }: { trends: TrendSumm tickLine={{ stroke: '#475569' }} tickFormatter={(v) => `${v}%`} /> - [`${value}%`, name]} - /> +