Skip to content
fandhe-frontendcore v0.4.3
GitHub

Checkbox

fandhe-frontend-wireframe-ui のチェックボックス風プレースホルダーです。正方形のボックス + 任意のラベルを持つ非インタラクティブな部品です。API は checkbox(label, size, active, disabled) の 4 引数(詳細は下の引数表を参照)で、props 構造体は導入していません。

視覚的な参照元は blocks.pm の Checkbox 部品ですが、ライセンス上の理由によりスクリーンショットは掲載していません(詳細は docs/design/wireframe-ui-architecture.md §2)。参照したい場合は外部リンク先を直接確認してください。

<input type="checkbox"> を出力しない表示専用プレースホルダーです。実際に操作可能なチェックボックスが必要な場合は Checkbox(Themes) や Checkbox(Primitives) を検討してください。

Demo

既定(未チェック・ラベルあり)

利用規約に同意する

チェック済み

利用規約に同意する

ラベルなし

Disabled

選択できません

Disabled + チェック済み

選択できません

Sm

小サイズ

Lg

大サイズ

引数表

引数型既定値説明
labelOption<&str>None省略可能なラベル文言。None のときラベルのパート要素自体を出力しない。
sizeSizeSize::Mdサイズ段階(xs〜xl)。ボックス寸法・フォントサイズに反映される。
activeActiveActive(false)チェック済み状態。true のとき data-active="" を付与し、ボックス内へチェックグリフを描画する。
disabledDisabledDisabled(false)true のとき data-disabled="" を付与する(見た目のみ。操作不能を実装するものではない)。

原案差分メモ

  • div/span ルート・非対話制約: docs/design/wireframe-ui-architecture.md §7 に従い、ルートは div とし role/aria-checked/tabindex/on* は一切出力しません(チェックグリフが持つ aria-hidden="true" は装飾用途の既定属性で対話的 ARIA ではありません)。
  • ラベル有無はラベルスロットの有無に畳み込む: docs/design/ wireframe-ui-architecture.md §6 の汎用変換規約に従い、「ラベル有無 + ラベル文言」の 2 軸を label: Option<&str> 1 引数へ畳み込みます(annotation の description と同型)。None のときはラベルのパート要素自体を出力しません。
  • チェック済み状態は共通型 Active を再利用し、専用 Checked 型は見送り: 選択済み(チェック済み)という表示状態を表す一般的な UI パターンとして、既に用意済みの共通型 Active(data-active)をそのまま使います。docs/design/wireframe-ui-architecture.md §10.1 が現時点の表示状態属性として data-active/data-disabled を規定していること、radio/switch 等の並行実装との型衝突を避けることを理由に、専用の Checked/ data-checked 型の新設は本イシューでは見送りました。true のとき data-active="" を付与し、ボックス内へチェックグリフを描画します(false のときはグリフ自体を出力せず、CSS での非表示にはしません)。
  • Disabled は既存の表示状態軸をそのまま使用: Forms 部品向けに用意済みの共通型 Disabled をそのまま使い、true のとき data-disabled="" を付与します(見た目のみで、操作不能を実装するものではありません)。Primary/Bold/Orientation は付与しません。
  • スクリーンショット非掲載: docs/design/reference-screenshots/ への blocks.pm 画像取り込みは #2602 で fail-closed に非掲載と確定しています。本ページも画像は置かず、上記の外部リンクのみで代替します。
  • 配色はグレースケール反転: チェック済み状態はボックスを --fw-wire-ink 背景・--fw-wire-paper 文字色へ反転し、黒塗り二値ではなく --fw-wire-* トークンを使います。