If true, the cap of the progress indicator will be rounded.
Circular Progress
Circular Progress is used to indicates the progress for determinate and indeterminate processes.
Import#
import { CircularProgress, CircularProgressLabel } from '@chakra-ui/react'
Usage#
There are two types of progress indicators: determinate and indeterminate.
- Determinate progress: fills the circular track with color, as the indicator moves from 0 to 360 degrees.
- Indeterminate progress: grows and shrinks the indicator while moving along the circular track.
<CircularProgress value={80} />
Changing the size#
You can add size prop to the progress bar to add a custom size.
// Change the size to 120px<CircularProgress value={30} size='120px' />
Changing the thickness#
You can add the thickness prop to update the thickness of the progress ring.
This defines the stroke width of the svg circle.
<CircularProgress value={59} size='100px' thickness='4px' />
Changing the color#
You can add color prop to any progress bar to apply any color that exists in
the theme.
<CircularProgress value={30} color='orange.400' thickness='12px' />
Adding label#
Chakra exports a CircularProgressLabel to help you add a label. Pass this
component as children prop and you'll be able to render the value.
<CircularProgress value={40} color='green.400'><CircularProgressLabel>40%</CircularProgressLabel></CircularProgress>
Indeterminate Progress#
Setting the progress to indeterminate means you're not able to determine the
value upfront. Pass the isIndeterminate prop to activate this state.
<CircularProgress isIndeterminate color='green.300' />
Accessibility#
- Progress has
roleset toprogressbarto denote that it is a progress bar. - Progress has
aria-valuenowset to the percentage completion value passed to the component, to ensure the progress percent is visible to screen readers.
Props#
capIsRound
capIsRoundbooleanfalsecolor
colorThe color of the progress indicator. Use a color key in the theme object
stringgetValueText
getValueTextA function that returns the desired valueText to use in place of the value
(value: number, percent: number) => stringisIndeterminate
isIndeterminateIf true, the progress will be indeterminate and the value
prop will be ignored
booleanfalsemax
maxMaximum value defining 100% progress made (must be higher than 'min')
number100min
minMinimum value defining 'no progress' (must be lower than 'max')
number0size
sizeThe size of the circular progress in CSS units
string | numberthickness
thicknessThis defines the stroke width of the svg circle.
string | number10pxtrackColor
trackColorThe color name of the progress track. Use a color key in the theme object
stringvalue
valueCurrent progress (must be between min/max)
numbervalueText
valueTextThe desired valueText to use in place of the value
string