Progress - Linear
An element that shows either determinate or indeterminate progress.
Anatomy
To set up the progress correctly, you'll need to understand its anatomy and how we name its parts.
Each part includes a
data-part
attribute to help identify them in the DOM.
Examples
Learn how to use the Progress
component in your project. Let's take a look at
the most basic example:
Example not found
Example not found
Example not found
Setting the initial value
To set the progress's initial value, set the defaultValue
prop to a number.
Example not found
Example not found
Example not found
Specifying the minimum and maximum
By default, the maximum is 100
. If that's not what you want, you can easily
specify a different bound by changing the value of the max
prop. You can do
the same with the minimum value by setting the min
prop.
For example, to show the user a progress from 10
to 30
, you can use:
Example not found
Example not found
Example not found
Using the indeterminate state
The progress component is determinate by default, with the value and max set to 50 and 100 respectively.
Set the state
to indeterminate
in Progress.Indicator
:
Example not found
Example not found
Example not found
Showing a value text
Progress bars can only be interpreted by sighted users. To include a text
description to support assistive technologies like screen readers, use the
value
part in translations
.
Example not found
Example not found
Example not found
Changing the orientation
By default, the progress is assumed to be horizontal. To change the orientation to vertical, set the orientation property in the machine's context to vertical.
Don't forget to change the styles of the vertical progress by specifying its height
Example not found
Example not found
Example not found
API Reference
Root
Prop | Default | Type |
---|---|---|
asChild | boolean Render as a different element type. | |
id | string The unique identifier of the machine. | |
ids | Partial<{ root: string; track: string; label: string; circle: string }> The ids of the elements in the progress bar. Useful for composition. | |
max | number The maximum allowed value of the progress bar. | |
min | number The minimum allowed value of the progress bar. | |
orientation | 'horizontal' | Orientation The orientation of the element. |
translations | IntlTranslations The localized messages to use. | |
value | number The current value of the progress bar. |
Circle
Prop | Default | Type |
---|---|---|
asChild | boolean Render as a different element type. |
CircleRange
Prop | Default | Type |
---|---|---|
asChild | boolean Render as a different element type. |
CircleTrack
Prop | Default | Type |
---|---|---|
asChild | boolean Render as a different element type. |
Label
Prop | Default | Type |
---|---|---|
asChild | boolean Render as a different element type. |
Range
Prop | Default | Type |
---|---|---|
asChild | boolean Render as a different element type. |
Track
Prop | Default | Type |
---|---|---|
asChild | boolean Render as a different element type. |
ValueText
Prop | Default | Type |
---|---|---|
asChild | boolean Render as a different element type. |
View
Prop | Default | Type |
---|---|---|
state | ProgressState | |
asChild | boolean Render as a different element type. |