Files
HealthLog/src/components/charts
Marc-André BombeckandClaude Opus 4.7 80086130de feat(charts): medication chart polish (gradient + animation + rich tooltip)
Closes the v1.4.16 B1a polish across all dashboard charts. The
medication-compliance chart already shipped 7-day-trend + target/
threshold reference lines from A6; this commit brings it into visual
parity with BP/weight/pulse/mood:

- ComposedChart replaces LineChart; a gradient-filled Area paints
  under the compliance line. The medication gradient uses the purple
  Dracula token, matching the existing line stroke.
- Rich tooltip via RichChartTooltip — date label, compliance
  percentage with tabular numerals, delta-vs-target sub-line that
  reads "−15 pp vs. target" so the gap to 100 % is immediately
  visible.
- 600ms ease-out animation on first render, suppressed when
  prefers-reduced-motion is set.
- Sparse-data placeholder via ChartEmptyState for <3 daily points.
  Existing "no scheduled doses" empty state is preserved (the user
  could have a long history of skipped scheduled days that drops
  the chart to fewer than 3 actionable points).

The 80 % minimum-acceptable threshold and 100 % goal ReferenceLines
from A6 stay untouched; gradient plus those lines now make the
"target range" feel like a band rather than a pair of guides.

1 new test pins the gradient SSR contract.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-10 00:33:09 +02:00
..