Summary
Child of chesapeakedev/chesapeake#333. Add P0 retail UX blocks to @chesapeake/stack under components/retail/.
Scope — P0 blocks
| Block |
Purpose |
LocationHero |
Local headline + dual CTA (primary commerce, secondary directions) |
HoursStatusStrip |
Open/closed, pre-order cutoff, today's hours |
StickyShopBar |
Mobile persistent commerce CTA |
StoreSwitcher |
Cookie/geo-backed store selection; fixes wrong-location bugs |
Also in this issue
Out of scope (follow-up issue)
P1: CategoryGrid, LocalGuideSection, FaqAccordion, LocalBusinessJsonLd
P2: QuickContactBar, DealsRow, ReviewsStrip, MapAndAccess
Acceptance criteria
- All four P0 components render in the example page with sample props
- Components use existing stack primitives (Button, Card, etc.) — no stack fork
StoreSwitcher persists selected location (cookie or localStorage)
HoursStatusStrip correctly shows open/closed from WeeklyHours input
StickyShopBar visible on mobile viewport; fires onShopClick callback
- Types exported and documented in README or CHANGELOG
- Lint/format pass; example compiles
Dependencies
- Blocks: none (can start in parallel with #485)
- Unblocks:
retail-starter Vite scaffold, Forest Baltimore demo
Phase
Phase A
Parent epic: chesapeakedev/chesapeake#333
Summary
Child of chesapeakedev/chesapeake#333. Add P0 retail UX blocks to
@chesapeake/stackundercomponents/retail/.Scope — P0 blocks
LocationHeroHoursStatusStripStickyShopBarStoreSwitcherAlso in this issue
types/retail-location.ts— exportRetailLocationand supporting types (coordinate with chesapeakedev/chesapeake#485)examples/retail-location-page.tsx— compose P0 blocks into a working example@chesapeake/stackOut of scope (follow-up issue)
P1:
CategoryGrid,LocalGuideSection,FaqAccordion,LocalBusinessJsonLdP2:
QuickContactBar,DealsRow,ReviewsStrip,MapAndAccessAcceptance criteria
StoreSwitcherpersists selected location (cookie or localStorage)HoursStatusStripcorrectly shows open/closed fromWeeklyHoursinputStickyShopBarvisible on mobile viewport; firesonShopClickcallbackDependencies
retail-starterVite scaffold, Forest Baltimore demoPhase
Phase A
Parent epic: chesapeakedev/chesapeake#333