elementsprogress
Progress
Determinate or indeterminate progress indicator with optional step labels.
Import#
Slot Structure#
Track with a fill indicator, optional status text, and step labels.
Examples#
Sizes#
Size scale from xs to xl.
Orientations#
Horizontal and vertical layouts with consistent value rendering.
Determinate#
Standard progress bar with status text and custom status renderer.
Animations#
Indeterminate animation variants: carousel, reverse, swing, and elastic.
Step Mode#
String-array max renders named steps.
API Reference#
Attributes#
Slot
root6 attributesProgress container that owns track, indicator, labels, and step markers.
Data Attributes
| Data Attribute | Description |
|---|---|
| data-orientation | Stores the rendered orientation. |
ARIA Attributes
| ARIA Attribute | Description |
|---|---|
| aria-valuemax | Defines the maximum value for range-like controls. |
| aria-valuemin | Defines the minimum value for range-like controls. |
| aria-valuenow | Defines the current numeric value for range-like controls. |
| aria-valuetext | Provides human-readable text for the current value. |
| role | Defines the semantic role exposed to assistive technology. |
Props#
| Prop | Type | Default | Description |
|---|---|---|---|
| animation | "carousel" | "reverse" | "swing" | "elastic" | undefined | — | — |
| class | ClassValue | — | Class applied to the component root or trigger element. |
| classes | ProgressT.Classes | undefined | — | — |
| getValueLabel | ((params: { value: number; min: number; max: number; }) => string) | undefined | — | Callback to get a localized label for the current value. |
| max | number | string[] | undefined | 100 | The maximum value of the progress bar, or an array of step labels. |
| orientation | "horizontal" | "vertical" | undefined | — | — |
| ref | JSX.HTMLElementTags["div"] extends { ref?: infer Ref; } ? Ref : never | undefined | — | — |
| size | "xs" | "sm" | "md" | "lg" | "xl" | undefined | — | — |
| status | boolean | undefined | false | Whether to show the status label. |
| statusRender | ComponentOrElement<ProgressT.StatusRenderProps> | undefined | — | Custom render function for the status label. |
| stepRender | ComponentOrElement<ProgressT.StepRenderProps> | undefined | — | Custom render function for each step when `max` is an array. |
| style | JSX.CSSProperties | undefined | — | — |
| styles | ProgressT.Styles | undefined | — | — |
| value | number | null | undefined | null | The current value of the progress bar. If null/undefined, it is indeterminate. |