Skip to content

Progress Indicators

Material Design progress indicators and Cupertino (iOS-style) activity indicator.

Usage

Linear Progress IndicatorIndeterminate
Determinate (50%)
Rounded Corners
Circular Progress Indicator
Indeterminate
Determinate (75%)
Cupertino Activity Indicator
Default
Large Blue
vue
<template>
  <Column :gap="30">
    <!-- Linear Progress -->
    <Column :gap="10">
      <Text data="Linear Progress Indicator" :style="{ fontSize: 18, fontWeight: 'bold' }" />
      <Text data="Indeterminate" :style="{ fontSize: 14, color: '#666' }" />
      <LinearProgressIndicator />

      <Text data="Determinate (50%)" :style="{ fontSize: 14, color: '#666' }" />
      <LinearProgressIndicator
        :value="0.5"
        :color="Colors.green"
        :background-color="Colors.green100"
      />

      <Text data="Rounded Corners" :style="{ fontSize: 14, color: '#666' }" />
      <LinearProgressIndicator
        :value="0.7"
        :borderRadius="10"
        :minHeight="10"
        :color="Colors.orange"
      />
    </Column>

    <!-- Circular Progress -->
    <Column :gap="10">
      <Text data="Circular Progress Indicator" :style="{ fontSize: 18, fontWeight: 'bold' }" />
      <Row :gap="20" alignment="center">
        <Column alignment="center" :gap="5">
          <CircularProgressIndicator />
          <Text data="Indeterminate" :style="{ fontSize: 12 }" />
        </Column>
        <Column alignment="center" :gap="5">
          <CircularProgressIndicator :value="0.75" :color="Colors.purple" />
          <Text data="Determinate (75%)" :style="{ fontSize: 12 }" />
        </Column>
      </Row>
    </Column>

    <!-- Cupertino Activity Indicator -->
    <Column :gap="10">
      <Text data="Cupertino Activity Indicator" :style="{ fontSize: 18, fontWeight: 'bold' }" />
      <Row :gap="20" alignment="center">
        <Column alignment="center" :gap="5">
          <CupertinoActivityIndicator />
          <Text data="Default" :style="{ fontSize: 12 }" />
        </Column>
        <Column alignment="center" :gap="5">
          <CupertinoActivityIndicator :radius="15" :color="CupertinoColors.activeBlue" />
          <Text data="Large Blue" :style="{ fontSize: 12 }" />
        </Column>
      </Row>
    </Column>
  </Column>
</template>

<script setup lang="ts">
import {
  LinearProgressIndicator,
  CircularProgressIndicator,
  CupertinoActivityIndicator,
  Column,
  Row,
  Text,
  Colors,
  CupertinoColors,
} from "fluekit";
</script>

Components

LinearProgressIndicator

A material design linear progress indicator.

Props:

PropTypeDefaultDescription
valuenumber | nullnullThe value of the progress (0.0 to 1.0). If null, it shows an indeterminate animation.
colorColor | stringColors.blueThe progress color.
backgroundColorColor | stringColors.blue[200]The background track color.
minHeightnumber4The height of the bar.
borderRadiusnumber | BorderRadiusundefinedThe border radius of the indicator.

CircularProgressIndicator

A material design circular progress indicator.

Props:

PropTypeDefaultDescription
valuenumber | nullnullThe value of the progress (0.0 to 1.0). If null, it shows an indeterminate animation.
colorColor | stringColors.blueThe progress color.
backgroundColorColor | stringundefinedThe background track color.
strokeWidthnumber4The width of the circle line.
sizenumber36The diameter of the circle.

CupertinoActivityIndicator

An iOS-style activity indicator.

Props:

PropTypeDefaultDescription
animatingbooleantrueWhether to run the animation.
colorColor | stringCupertinoColors.systemGreyThe color of the spinner blades.
radiusnumber10The radius of the spinner.