/** * ProcessTimeline — a domain-neutral process-status component: an ordered set * of lifecycle steps, each `complete`, `current`, `upcoming`, `blocked`, or * `skipped`. It generalizes the app-local "how it works" / progress-tracker / * run-lifecycle markup found across products into one shared primitive. * * Data in via `items`, selection out via `onItemSelect` — the component fetches * nothing and knows no routes, statuses, or labels beyond the five generic * lifecycle positions. Callers map their own domain state to these. * * Choosing: ProcessTimeline is for a fixed, ordered process whose steps carry a * lifecycle status. For a chronological stream of past events use ActivityFeed * (or Timeline for a styled event rail); for a navigable wizard/pipeline with * per-step content and click-through use Stepper. * * Accessibility: * - semantic `
    ` / `
  1. ` ordering * - the current step carries `aria-current="step"` * - status is never color-only: every marker has a default icon (shape) and * each item a visually-hidden status label (overridable via `statusLabels`) * - interactive items are real `