HOME-3Chat ASophieData laneP1done
OPEN/CLOSED + today's pickup hours (Dutchie)
Element: HeaderV2 store status (useOpenStatus exists in SophieHome.jsx)
Source: Sophie Nagano · Jun 11, 4:08 PMTarget build: v242 (shipped)Depends on: Chat B: confirm hours source in Dutchie payload
● Current state — verified on live v230
LIVE: useOpenStatus(hoursObj) already exists in SophieHome.jsx but the header does not surface OPEN/CLOSED or today's hours from Dutchie.
◎ Target outcome
Header shows OPEN (green) / CLOSED (red) from live Dutchie hours + current-day pickup hours.
✓ Output — closed & verified
CLOSED & VERIFIED — redesigned to Sophie’s mockup. The live OPEN (green) / CLOSED (red) badge + Pickup: [today’s hours] now sit inside the integrated header brand block (not a separate banner). DOM-verified ‘CLOSED · Pickup: 10am - 10pm’ for London North on /v242/.
Assets, colours & references
Sophie's feedback (click to open full)
Reference: Sophie's feedback doc — page 2.
Technical steps to achieve it
- Expose store hours from the menu/store payload (Worker /api/menu store block or Dutchie retailer hours).
- Lift useOpenStatus into a shared hook; feed header.
- Render OPEN green / CLOSED red + 'Today: 9am–9pm' for the current weekday.
Files to change
src/components/HeaderV2.jsxsrc/hooks/useOpenStatus.js (NEW, lifted)src/api/menu.js
Testing
- Canary: status flips with store hours; closed store shows red CLOSED.
- Probe Dutchie hours field availability per store.
Milestones
✓Spec'd from feedback
✓Source located
✓Code change
✓Local test (vitest + vite preview)
✓Canary verify + ship v242 (shipped)
Verify live
Progress URL updates here when this task ships to its target /vN/. Current column always points at the live baseline.