1. framework components
  2. progress linear

Progress - Linear

An indicator showing the progress or completion of a task.

50%

Color

Height

Orientation

Indeterminate

Custom Animation

Direction

Label

Native Alternative

API Reference

Root

txt
flex flex-col gap-2 data-[orientation=horizontal]:w-full data-[orientation=vertical]:items-center
PropDefaultType
idsPartial<{ root: string; track: string; label: string; circle: string; }> | undefined

The ids of the elements in the progress bar. Useful for composition.

valuenumber | null | undefined

The controlled value of the progress bar.

defaultValue50number | null | undefined

The initial value of the progress bar when rendered. Use when you don't need to control the value of the progress bar.

min0number | undefined

The minimum allowed value of the progress bar.

max100number | undefined

The maximum allowed value of the progress bar.

translationsIntlTranslations | undefined

The localized messages to use.

onValueChange((details: ValueChangeDetails) => void) | undefined

Callback fired when the value changes.

formatOptions{ style: "percent" }NumberFormatOptions | undefined

The options to use for formatting the value.

locale"en-US"string | undefined

The locale to use for formatting the value.

dir"ltr""ltr" | "rtl" | undefined

The document's text/writing direction.

getRootNode(() => ShadowRoot | Node | Document) | undefined

A root node to correctly resolve document in custom environments. E.x.: Iframes, Electron.

orientation"horizontal""horizontal" | "vertical" | undefined

The orientation of the element.

element((attributes: HTMLAttributes<"div">) => Element) | undefined

Render the element yourself

Provider

PropDefaultType
valueProgressApi<PropTypes>

element((attributes: HTMLAttributes<"div">) => Element) | undefined

Render the element yourself

Context

PropDefaultType
children(progress: ProgressApi<PropTypes>) => ReactNode

Label

txt
whitespace-nowrap
PropDefaultType
element((attributes: HTMLAttributes<"div">) => Element) | undefined

Render the element yourself

ValueText

PropDefaultType
element((attributes: HTMLAttributes<"span">) => Element) | undefined

Render the element yourself

Track

txt
bg-surface-200-800 rounded-base overflow-hidden data-[orientation=horizontal]:w-full data-[orientation=horizontal]:h-2 data-[orientation=vertical]:w-2 data-[orientation=vertical]:h-[100px]
PropDefaultType
element((attributes: HTMLAttributes<"div">) => Element) | undefined

Render the element yourself

Range

txt
h-full bg-surface-950-50 rounded-base data-[orientation=horizontal]:transition-[width] data-[orientation=horizontal]:data-[state=indeterminate]:animate-progress-linear-indeterminate-horizontal data-[orientation=vertical]:transition-[height] data-[orientation=vertical]:data-[state=indeterminate]:animate-progress-linear-indeterminate-vertical
PropDefaultType
element((attributes: HTMLAttributes<"div">) => Element) | undefined

Render the element yourself

Circle

PropDefaultType
element((attributes: HTMLAttributes<"svg">) => Element) | undefined

Render the element yourself

CircleTrack

txt
stroke-surface-200-800
PropDefaultType
element((attributes: HTMLAttributes<"circle">) => Element) | undefined

Render the element yourself

CircleRange

txt
stroke-primary-500 transition-[stroke-dashoffset] ease-in-out data-[state=indeterminate]:animate-progress-circular-indeterminate
PropDefaultType
element((attributes: HTMLAttributes<"circle">) => Element) | undefined

Render the element yourself

View page on GitHub