Movement Timeline

The waste-movement status lifecycle as a stepper — proposed to reconciled, with timestamps, notes and clickable steps.

$bunx shadcn@latest add @nx-ui/movement-timeline
Registry item
Installs withstepperutils

Horizontal

A movement part-way through its lifecycle; the current step is derived from the last timestamp.

  1. Proposed

    10 Jul 2026

  2. Consented

    12 Jul 2026

  3. In transit

    14 Jul 2026, 08:40

  4. Received

  5. Reconciled

Vertical with notes

The same lifecycle vertical, with a supporting note per step.

  1. Proposed

    10 Jul 2026, 09:12 · 24t concrete (EWC 17 01 01) offered to Regen Aggregates

  2. Consented

    12 Jul 2026, 14:03 · Consignment NX-2041 raised; carrier Northgate Haulage Ltd

  3. In transit

    14 Jul 2026, 08:40 · First of three loads collected from the Doncaster site

  4. Received

    Weighbridge ticket required on arrival

  5. Reconciled

    Quantities matched against the transfer note

Cancelled

A cancelled movement terminates the lifecycle early — set currentIndex explicitly to pin it.

  1. Proposed

    3 Jul 2026

  2. Consented

    4 Jul 2026

  3. Cancelled

    5 Jul 2026 · Receiving site withdrew acceptance

Interactive steps

Steps with an onClick render as buttons — open the consignment or weighbridge record behind each stage.

  1. Received

  2. Reconciled

API reference

Exported parts and their props, extracted from the component source.

PropTypeDefaultDescription
steps*MovementTimelineStep[]
currentIndexnumberZero-based index of the current step; derived from timestamps when omitted.
orientation"horizontal" | "vertical""horizontal"
classNamestring