ProgressBarCircle

Круговой детерминированный индикатор. Занимает минимум места и хорошо читается в плотных интерфейсах — рядом с аватаром при upload, в ячейке таблицы, в карточке файла.

Демо

Preview
Prop
Type
Value
appearance
blue | green | neutral | orange | pink | primary | red | violet | yellow
className
text
data-test-id
text
progress
number
size
s | xs
Code
<ProgressBarCircle appearance="primary" size="s" progress={50} />

Когда использовать

  • Индикатор загрузки рядом с аватаром или миниатюрой.
  • Прогресс в ячейках таблицы или в списке файлов.
  • Там, где линейный индикатор слишком широкий.

Когда не нужен ProgressBarCircle: если есть горизонтальное место и вы хотите показать явный процент рядом — возьмите линейный ProgressBar.

Анатомия

Size

xs — дефолт, для ячеек таблиц и плотных списков; s — для карточек и более заметных мест.

Appearance

Семантика цвета заполненной дуги: primary — бренд/нейтральный; red — ошибка/превышение лимита; orange/yellow — предупреждение; green — успех; blue, violet, pink — декоративные категории.

Установка

pnpm add @cloud-ru/ds-progress-bar
import { ProgressBarCircle } from '@cloud-ru/ds-progress-bar'

Примеры использования

Значение 75%

Значение 75%
tsx
import { ProgressBarCircle } from '@cloud-ru/ds-progress-bar';

export function CircleStatic() {
  return <ProgressBarCircle progress={75} />;
}

Три appearance

Три appearancePrimary, успех и ошибка
tsx
import { APPEARANCE, ProgressBarCircle } from '@cloud-ru/ds-progress-bar';

export function CircleAppearances() {
  return (
    <div style={{ display: 'flex', gap: 12, flexWrap: 'wrap', alignItems: 'center' }}>
      <ProgressBarCircle progress={60} appearance={APPEARANCE.Primary} />
      <ProgressBarCircle progress={60} appearance={APPEARANCE.Green} />
      <ProgressBarCircle progress={60} appearance={APPEARANCE.Red} />
    </div>
  );
}

Props

Types

PropsProgressBarCircleProps
PropTypeDefaultRequiredDescription
appearance"blue" | "green" | "neutral" | "orange" | "pink" | "primary" | "red" | "violet" | "yellow"primarynoВнешний вид
classNamestringnoCSS-класс
data-test-idstringno
progressnumberyesПроцент загрузки от 0 до 100
size"s" | "xs"snoРазмер

Unions

Types

ProgressBarCircleProps

Unions

Storybook

Figma