StatusPill
DeprecatedStatus 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).
patterns/molecules/statuspill.htmlIndicateur de statut — 11px/600, rayon 20px. Variantes : confirmed (vert), pending (ambre), cancelled (rouge). Préfixe point 6px dans la couleur courante.
StatusPill
Display molecule (Family 4 — Tier 1)
Static status indicator for orders, bookings, tickets, and event lifecycle states. Always carries text content for screen readers.
This component supports light and dark mode.
Usage
import { StatusPill } from '@epasslive/design-system'
<StatusPill status="confirmed">Confirmé</StatusPill>
<StatusPill status="pending">En attente</StatusPill>
<StatusPill status="cancelled">Annulé</StatusPill>Deprecation
Deprecated — superseded by StatusBadge (semantic state with required label + icon slot). Do not use in new code.
Accessibility
StatusPill is a static element. Always include meaningful text content so screen readers can announce the status. The color alone is not a reliable indicator \u2014 the text label carries the meaning.
Props
status*'confirmed' | 'pending' | 'cancelled'Semantic status. Drives tone + dot color.
children*React.ReactNodeVisible status label.
size'sm' | 'md'mdHeight/padding scale.
Props
StatusPill
status'confirmed' | 'pending' | 'cancelled'—Semantic status. Drives tone + dot color.
childrenReact.ReactNode—Visible status label.
size'sm' | 'md''md'Height/padding scale.
<StatusPill />Accessibility
Type
1 ruleARIA
1 ruleUsage
Import
import { StatusPill } from "@epasslive/design-system"Example 1
<StatusPill />Example 2
<StatusPill variant="default" />Anti-patterns
— Do not hardcode data in molecules
— Avoid complex business logic in molecules