From 0b2bb42625a1be6aafc8a8186930227a23b8b175 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc-Andr=C3=A9=20Bombeck?= Date: Sun, 5 Jul 2026 14:50:41 +0200 Subject: [PATCH] fix(checkups): keep the measure button constant when a checkup is due MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The card and list variants of the reminder action button washed green (bg-success) once the next-due date arrived. A button that changes colour by schedule state reads as a different control; the rule that keeps the medication-card surface constant applies to actions too. Due / overdue keeps reading through the discreet coloured next-due text and the adherence meta line — the button itself never changes. --- .../vorsorge-section.tsx | 34 ++++++++----------- 1 file changed, 14 insertions(+), 20 deletions(-) diff --git a/src/components/measurement-reminders/vorsorge-section.tsx b/src/components/measurement-reminders/vorsorge-section.tsx index 2beba41f6..461708c63 100644 --- a/src/components/measurement-reminders/vorsorge-section.tsx +++ b/src/components/measurement-reminders/vorsorge-section.tsx @@ -784,9 +784,10 @@ function VorsorgeCard({ : ""; const isCoach = reminder.origin === "COACH"; const isLinked = reminder.measurementType != null; - // Due now / overdue ⇒ the action button takes the green "do it now" tone. - // The CARD stays neutral (no tint) per the project rule — only the action - // button goes green; the surface follows the medication-card grammar. + // v1.27.5 — due-ness never changes the ACTION BUTTON either: the button + // keeps one constant look in every state (same rule as the medication + // card's constant surface). Due / overdue reads only through the discreet + // coloured next-due text + the adherence meta line below. const isDue = due.key === "nextDue.today" || due.key === "overdueByDays"; const progress = intervalProgress(reminder, now); @@ -873,18 +874,15 @@ function VorsorgeCard({ ); - // v1.18.6 (MOD-06) — the green "Jetzt messen" / mark-done action. Green only - // on the action button (never the card surface). When not due it stays the - // calm default tone so the green reads as "now is the time". `bg-success` - // pairs with the theme-aware `text-success-foreground` (dark glyph in dark, - // white in light) so the label clears WCAG AA in both themes. + // The measure / mark-done action. One constant appearance in every state — + // no due-driven tint, no label swap (v1.27.5 retired the former green + // "do it now" wash; a button that changes colour by schedule state reads as + // a different control). Due-ness is communicated by the discreet coloured + // next-due text above. const primaryButton = (