Determinate — 42%
Set --progress-value and aria-valuenow.
Linear progress bar — set a 0–100 value for determinate fill, or omit for indeterminate.
Live
<div class="progress" role="progressbar"
aria-valuemin="0" aria-valuemax="100" aria-valuenow="42"
aria-label="Upload progress" style="--progress-value: 42%">
<span class="progress__bar"></span>
</div>
<div class="progress progress--indeterminate" role="progressbar"
aria-valuemin="0" aria-valuemax="100" aria-label="Loading">
<span class="progress__bar"></span>
</div>
import { Progress } from 'caustica-design/core'
<Progress value={42} aria-label="Upload progress" />
<Progress aria-label="Loading" />
Set --progress-value and aria-valuenow.
Higher fill for near-complete work.
.progress--indeterminate when duration is unknown.
role="progressbar" with aria-valuemin /
aria-valuemax (0 / 100).
aria-valuenow; indeterminate omit it (or leave
unset).
aria-label or
aria-labelledby.
| Class | Description |
|---|---|
.progress |
Track root; set --progress-value (percent) for fill via scaleX. |
.progress__bar |
Filled / animated bar segment. |
.progress--indeterminate |
Shimmer animation when value is unknown. |
From src/core/Progress.tsx — extends
HTMLAttributes<HTMLDivElement>.
| Prop | Type | Default | Description |
|---|---|---|---|
value |
number |
— | 0–100 determinate fill. Omit for indeterminate. |
aria-label |
string |
— | Accessible name for the progressbar. |
className |
string |
— | Merged onto the root. |