From be24ae32fba9cd3dc9d304c2c6fd0beaa9eabf46 Mon Sep 17 00:00:00 2001 From: Jennie Robinson Faber Date: Mon, 27 Apr 2026 19:50:38 +0100 Subject: [PATCH] =?UTF-8?q?fix(toast):=20rename=20Nuxt=20UI=204=20toast.ad?= =?UTF-8?q?d=20timeout=20=E2=86=92=20duration?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Nuxt UI 4's Toast component reads `duration` (default 5000ms), not `timeout` — the property was silently ignored. Behavior unchanged since 5000ms matched the default. Fix the call site to be honest. Strike the now-resolved gotcha from LAUNCH_READINESS.md. --- app/components/SeriesPassPurchase.vue | 4 ++-- docs/LAUNCH_READINESS.md | 1 - 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/app/components/SeriesPassPurchase.vue b/app/components/SeriesPassPurchase.vue index ef293af..455921e 100644 --- a/app/components/SeriesPassPurchase.vue +++ b/app/components/SeriesPassPurchase.vue @@ -308,7 +308,7 @@ const handleSubmit = async () => { title: "Series Pass Purchased!", description: `You're now registered for all ${purchaseResponse.registration.eventsRegistered} events in this series.`, color: "green", - timeout: 5000, + duration: 5000, }); // Emit success event @@ -328,7 +328,7 @@ const handleSubmit = async () => { title: "Purchase Failed", description: errorMessage, color: "red", - timeout: 5000, + duration: 5000, }); emit("purchase-error", errorMessage); diff --git a/docs/LAUNCH_READINESS.md b/docs/LAUNCH_READINESS.md index d75256c..ac82be6 100644 --- a/docs/LAUNCH_READINESS.md +++ b/docs/LAUNCH_READINESS.md @@ -154,7 +154,6 @@ Context: Phase 4 audit against `docs/specs/events-visual-audit-findings.md` fixe - **Success-state color convention (4 instances).** "You're Registered!" blocks use `--candle` (gold) instead of `--green`. Touches `EventSeriesTicketCard.vue:186-196` (still uses phantom `candlelight-*` classes — preserved byte-for-byte pending decision) and registered-state wrappers in `SeriesPassPurchase.vue`. Needs a UX call on whether success should render gold (zine-consistent) or green (semantic). Once decided, finish the phantom-palette removal on those 4 lines. - **Sidebar breakpoint unverified.** `app/layouts/default.vue:89` hides the sidebar at ≤1024px per spec. Browser `resize_window` tool refused viewport changes during the audit, so the actual crossover and any layout shift at 1023–1025px was never visually confirmed. Do a manual responsive check before declaring the sidebar pattern shipped. - **`EventTicketPurchase.vue:469` magic padding.** `.consent-hint { padding-left: 24px; }` is a hardcoded offset to align the hint under the checkbox text. Cosmetic; swap for a gap/grid approach when touching the consent block next. -- **Toast API rename unverified.** Nuxt UI v4 may have renamed `toast.add({ timeout })` → `{ duration }`. Current `SeriesPassPurchase.vue` toasts still pass `timeout`. No visible breakage, but worth confirming against current Nuxt UI docs. - **`.section-label` extraction candidate.** Several audited files repeat the same uppercase/letter-spaced small label pattern inline. Low-priority refactor into a utility class in `main.css`. - **Past-events toggle component.** Existing, untouched this pass; noted in findings doc as a future consistency check.