Skip to content
fandhe-frontend
GitHub

Progress

進捗表示(Linear)の unstyled 部品です。value = None は不定進捗(indeterminate)を表し、min/max/value は fail-closed に正規化されます。

Themes 版(fandhe-frontend-pre-styled-ui)はこの構造へ既定 CSS を追加するだけの薄いラッパーであり、CSS は持ちません。スタイル済みの表示例は Progress を参照してください。

関連 API: fandhe-frontend-headless-ui API

Demo

枠線・余白は docs サイト側のデモ枠であり、fandhe-frontend-headless-ui 自体はスタイルを持ちません。

Uploading
40%

Features

  • Root/Label/ValueText/Track/Range の 5 anatomy パーツ(linear)を提供する値状態機械 `Progress`。`value = None` は indeterminate(不定進捗)を表す。
  • `data-state`(`"indeterminate"`/`"loading"`/`"complete"`)は `value`/`min`/`max` から導出され、パーツ関数間で分裂しない。
  • `min`/`max`/`value` は `Progress::new` が fail-closed に正規化する(非有限値・`min >= max` は既定 `(0.0, 100.0)` へフォールバック、`value` は `[min, max]` へ clamp)。
  • Circle(circular 表示)変種の 3 パーツ(`circle`/`circle_track`/`circle_range`)も提供するが、本ページの Demo・Anatomy 表は linear 変種のみを描画対象とする。

Anatomy

root
  label
  track
    range
  value-text

API Reference

Arguments

NameTypeDefaultDescription
min / maxf640.0 / 100.0値の下限・上限。非有限または `min >= max` の場合は既定 `(0.0, 100.0)` へフォールバックする。
valueOption<f64>Some(0.0)現在の値。`None` は indeterminate(不定進捗)を表す。
orientationOrientationOrientation::Horizontal`data-orientation` へ反映する向き。

Data Attributes

PartAttributeObserved Values
labeldata-stateloading
rangedata-orientationhorizontal
rangedata-stateloading
rootdata-max100
rootdata-orientationhorizontal
rootdata-stateloading
rootdata-value40
trackdata-orientationhorizontal
trackdata-stateloading
value-textdata-stateloading

Examples

Indeterminate(不定進捗)

`value` に `None` を渡すと `data-state="indeterminate"` となり、`aria-valuenow`/`data-value` は出力されません。

Loading

Accessibility

WAI-ARIA

AttributeDescription
role`root` へ `"progressbar"` を固定付与する。
aria-valuemin / aria-valuemax`root` へ常に出力する下限・上限。
aria-valuenowdeterminate(`value = Some(_)`)のときのみ `root` へ出力する。indeterminate では省略する(WAI-ARIA `progressbar` ロールの規定どおり)。
aria-valuetext呼び出し側が `Some` を渡したときのみ `root` へ出力する。