Skip to content

Progress bar

Progress bars provide a visual feedback on the progression of a process, expressed as a percentage value. Processes visualized in progress bars do not have defined step and their duration and completion depend on the system - e.g. downloads, uploads or installations.

UX/UI Guidelines

Check the design documentation of the component in ZeroHeight.

Implementations

The component ProgressBar is available in the following technologies:

CSS Components
cssreactvue
Web Components
webreactvueangular

Parameters

Parameters

Parameters are the attributes that can be used to customize the component when using it in a project. They apply to the WebComponents implementation and wrappers and to the Vue and React CSS implementations. Some parameters names change between the implementations, in order to follow the conventions of each technology and framework.

For example, the param model is named ngModel in Angular, modelValue in Vue, but stays as model in React.

By default, all the parameters are optional or can be set in different, except for the ones marked as required

The parametrization of the component can be done with the following custom params or properties:

NameTypeSlotDescription
progress
[required]
numberThe current value of the progress bar
configstringThe configuration of the progress bar
progress-bar-titlestringThe title of the progress bar
no-percentagebooleanRemoves the percentage indication
invalidbooleanInvalid state
highlightbooleanHighlight state
customobject

A record of key-value pairs to set the CSS custom tokens. It's a complex attribute set as an JS object in stringified JSON format.

Example:

html
<z-progress-bar custom='{"fill":"#06e7a3"}' />

Check the available values in the customization section.

custom-strstring

The stringified version of the custom property. It follows the pattern key:value;key:value;, with the possibility of setting multiple values and spaces between the punctuation characters.

Example:

html
<z-progress-bar custom-str="fill:#06e7a3" />
z-themestring

Sets the theme of the component. The possible values are light and dark.

html
<z-progress-bar z-theme="dark" />

From Figma to code

You can check the Figma implementation here.

Customization

INFO

Check everything about the customization mechanics in the "How it works" documentation.

CSS VariableTypeDescription
--z-progress-bar--colorcolorMain color
--z-progress-bar--title-colorcolorHeader color
--z-progress-bar--percentage-colorcolorPercentage color
--z-progress-bar--bgcolorBackground color
--z-progress-bar--trackcolorTrack color
--z-progress-bar--sizedistance
--z-progress-bar--strokedistance

You can customize the color and track color of the progress bar using the z-progress-bar--color and z-progress-bar--track CSS custom properties, respectively. Also you can customize the stroke width using the z-progress-bar--stroke CSS custom property.

The title color and percentage color can be customized using the z-progress-bar--title and z-progress-bar--percentage-color CSS custom properties, respectively.