Skip to main content

Progress

Provides visual feedback to the user that some action is taking place.

Examples​

Progress Bar​

The base progress bar is available in three sizes and will display a completed amount equal to the value divided by the max (default 1).

import { Progress } from '@curology/ui-components-web/react/Progress';

<Progress
size="{sm|md(default)|lg}"
min="0"
max="100"
value={value}
/>

Progress Percentage​

When a progressType of percentage is passed, a small bar will be rendered with a numerical percentage displayed next to it. It can be left (default) or right aligned.

import { Progress } from '@curology/ui-components-web/react/Progress';

<Progress
...
progressType="percentage"
align="{left(default)|right}"
/>

Progress Circle​

When a progressType of circle is passed, a small spinning circle will be rendered. It can be passed a state which will determine the color of the circle, or a size.

import { Progress } from '@curology/ui-components-web/react/Progress';

<Progress
...
progressType="circle"
state="{''(default)|highlight|critical|success|dark}"
/>

Indeterminate Progress Bar​

If no value is provided, the progress bar will animate indefinitely.

import { Progress } from '@curology/ui-components-web/react/Progress';

<Progress ... />

Unknown Progress​

To simulate movement without knowing exactly how much progress has been made, the UnknownProgress component is provided. It will internally generate a value that never reaches 100% until the done prop becomes true.

import { UnknownProgress } from '@curology/ui-components-web/react/Progress/UnknownProgress';

<UnknownProgress ... />

Props​

ProgressProps

NameTypeDefault ValueRequiredDescription
All attributes of a <div />
align"left" | "right"'left';NoWhich side should the percentage be aligned to?
children(percentage: number | null) => ElementNoAllow for children to be rendered dynamically with knowledge of how far along the progress is.
maxstring | number1NoDescribes how much work the task indicated by the `progress` element requires. If present, must have a value greater than `0` and be a valid floating point number.
progressType"circle" | "bar" | "percentage"'bar'NoWhich type of progress tracker should be displayed?
size"md" | "lg" | "sm"NoThe size of the progress indicator. Ignored for any type besides `'bar'` or `'circle'`.
state"dark" | "highlight" | "critical" | "success"NoThe state of the progress indicator. Ignored for any type besides `'circle'`.
trackfalse | trueNoShould the track beneath the progress bar be shown?
valuestring | number0NoSpecifies how much of the task that has been completed. It must be a valid floating point number between `0` and `max`, or between `0` and `1` if `max` is omitted. If `undefined`, the progress bar is indeterminate; this indicates that an activity is ongoing with no indication of how long it is expected to take.