From d57054509c05816ef730b6f0a25beabb4540a709 Mon Sep 17 00:00:00 2001 From: owain Date: Sun, 7 Jun 2026 10:51:14 +0100 Subject: [PATCH] Fix HealthPage crash: move intradayData query below selectedDay declaration The useQuery for intradayData referenced selectedDay (a useMemo) before it was declared in the function body, causing ReferenceError on every render and breaking the health page entirely. Co-Authored-By: Claude Sonnet 4.6 --- frontend/src/pages/HealthPage.jsx | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/frontend/src/pages/HealthPage.jsx b/frontend/src/pages/HealthPage.jsx index 717d220..9932e9c 100644 --- a/frontend/src/pages/HealthPage.jsx +++ b/frontend/src/pages/HealthPage.jsx @@ -436,12 +436,6 @@ export default function HealthPage() { .then(r => r.data.map(d => ({ ...d, date: d10(d.date) }))), }) - const { data: intradayData } = useQuery({ - queryKey: ['health-intraday', selectedDay?.date], - queryFn: () => api.get('/health-metrics/intraday', { params: { date: selectedDay.date } }).then(r => r.data), - enabled: !!selectedDay?.date, - }) - // Trend window (changes with range selector). // Dates normalised to YYYY-MM-DD so XAxis values match ReferenceLine x. const { data: rawMetrics, isLoading } = useQuery({ @@ -469,6 +463,12 @@ export default function HealthPage() { return allDaysSorted.findIndex(d => d.date === selectedDay.date) }, [selectedDay, allDaysSorted]) + const { data: intradayData } = useQuery({ + queryKey: ['health-intraday', selectedDay?.date], + queryFn: () => api.get('/health-metrics/intraday', { params: { date: selectedDay.date } }).then(r => r.data), + enabled: !!selectedDay?.date, + }) + const handleDayClick = (dateStr) => setSelectedDateStr(d10(dateStr)) const goOlder = () => { if (selectedIdx < allDaysSorted.length - 1)