Component roadmap
33 planned components organized by priority tier
These components have a full specification in patterns.ts (props, a11y rules, anti-patterns) but no implementation yet. Implement them following their spec, then mark the entry as implemented in patterns.ts.
Priority 1 — Cart & Checkout
1 components
Priority 2 — Ticketing & Events
1 components
Priority 3 — Discovery & Navigation
2 components
Priority 4 — User Account & Activity
2 components
Deprecated
Superseded by another component. Specs kept for historical reference.
- CartItemDeprecated
Single cart line — event thumbnail, title, tier, date, quantity stepper, line total, remove button. Hover-only remove on desktop. Superseded by cartdrawer.
- CategoryFilterDeprecated
Horizontal scrollable row of category chips — Music, Sports, Comedy, Theater, Festivals, Family. Multi-select for filtering event grids. Superseded by filterchipgroup.
- DropdownDeprecated
Menu attached to a trigger. Renders items with role='menuitem'. Closes on Escape, click outside, item select. Keyboard arrow navigation. Prefer the Menu molecule for new popover menus; Dropdown's legacy native-select API (options/value/onChange) is DEPRECATED (Wave 3 Tier-1, L6-M3) — use Menu for action menus or the Select atom for form selects. Superseded by menu.
- EventCardPublicDeprecated
Public event card — 320px wide. Top: 200px image with hover scale. Body: date (large) + title + venue + price-from + Buy button. Larger and more visual than admin EventCard. Superseded by eventcard.
- GiftTicketCardDeprecated
Gift ticket preview card — recipient name, message preview, event details, and gift wrap indicator. Used in checkout and order confirmation. Critical UX pattern: gift ticket. Superseded by ticketcard.
- MiniStatDeprecated
Compact label + value row — 12px label on left, 14px/700 value on right, with 1px bottom border. Used in Ticket Sales Breakdown side card. Superseded by StatCard (atom — covers the compact-metric use case with full token coverage).
- NavGroupDeprecated
Grouped nav items with an uppercase 10px label above (e.g. 'Main', 'Sales', 'Operations'). Bounded to ≤4 items per group (NASA Rule 2). Superseded by sidebar.
- NavItemDeprecated
Sidebar navigation item — 20px icon + label + optional badge. Active state shows 4px teal accent on left edge, white background, and teal-700 text. Superseded by sidebar.
- OrderSummaryDeprecated
Compact order summary — line items + total only. Used in cart drawer and confirmation. Superseded by checkoutsummary.
- PaymentMethodDeprecated
Payment method row — radio + icon + label + description + extra info. Used in CheckoutSummary payment selector. Superseded by paymentmethodcard.
- PromoCodeInputDeprecated
DEPRECATED — ghost with no source file; never shipped and not exported. Use PromoCodeValidator (its applied-code-pill UX is hand-rolled in CheckoutForm pending a step-6 API decision).
- SearchPillDeprecated
307×40 search input with leading magnifier icon. 30px border-radius (pill shape). Border darkens to teal + 4px glow on focus. Used in admin header as the global search. Superseded by herosearch + searchoverlay.
- StatusPillDeprecated
Status indicator pill — 11px/600, 20px radius. Variants: confirmed (green), pending (amber), cancelled (red). 6px dot prefix in current color. Superseded by StatusBadge (atom — broader status palette + accessibility annotations).
- TicketTierDeprecated
Single ticket tier — name, description, price, availability indicator, quantity stepper. Disabled when sold out. Superseded by tickettierlist.
- PopoverDeprecated
Controlled floating panel anchored to a trigger child. 4 placements, outside-click and Escape dismissal, role='dialog' with aria-label. Superseded by tooltip (controlled/interactive mode).
- UserProfileDeprecated
Header user profile — 40px avatar + name (13px/600) + role (11px muted) + chevron dropdown indicator. Renders as <button> with aria-haspopup='menu' and aria-expanded. Superseded by header.
- EventDetailDeprecated
Public-facing event detail card — hero image, title, date/venue meta, optional tag chips, plain-text description, sticky CTA panel (Buy / Share). Two-column grid that collapses to a single stack under md.
- EventdetaillayoutDeprecated
Deprecated two-column event detail layout (hero, content slots, sticky ticket aside); superseded by DetailPageLayout - do not use for new work.