From d43d8eba86739b1c771b7047e7a642683a3bcec4 Mon Sep 17 00:00:00 2001 From: josh Date: Sat, 30 May 2026 19:36:08 -0400 Subject: [PATCH] fix: keep outage labels in-frame + show Fast Lane line based on data MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Two refinements after the previous label change: 1. Outage labels rendered at position="top" were clipping against the chart's 8px top margin. Bumped to 24px so #N · Hh Mm sits above the band fully visible. 2. Fast Lane line was only rendered when the ride's metadata flag has_fast_lane was true. Some rides report Fast Lane waits without getting flagged, so we now also render the line whenever today's samples carry any non-null fastLaneMinutes — catches rides that are walk-on all day with a flat line at 0. Co-Authored-By: Claude Opus 4.7 --- components/charts/WaitTimeTodayChart.tsx | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/components/charts/WaitTimeTodayChart.tsx b/components/charts/WaitTimeTodayChart.tsx index 720493a..daa932c 100644 --- a/components/charts/WaitTimeTodayChart.tsx +++ b/components/charts/WaitTimeTodayChart.tsx @@ -36,6 +36,12 @@ export default function WaitTimeTodayChart({ samples, hasFastLane }: Props) { const outages = computeOutages(samples); const outageByTime = outageLookup(samples, outages); + // Show the Fast Lane line if either the ride metadata flags it as a Fast + // Lane ride OR we have any actual Fast Lane data in today's samples. The + // metadata flag can lag (or read false even when SF is reporting waits), + // so the data-driven check rescues those rides. + const showFastLane = hasFastLane || samples.some((s) => s.fastLaneMinutes !== null); + // X-axis time is rendered in the viewer's local timezone (Intl with no // tz arg) so an Eastern-time user sees ET regardless of which park. // Each point also carries its outage (if any) so the custom tooltip can @@ -57,7 +63,8 @@ export default function WaitTimeTodayChart({ samples, hasFastLane }: Props) { return (
- + {/* top margin leaves room for outage labels rendered with position="top" */} + ))} - } /> + } /> - {hasFastLane && ( + {showFastLane && (