Skip to content
fandhe-frontendcore v0.4.3
GitHub

Input

fandhe-frontend-wireframe-ui のテキストフィールド風プレースホルダーです。先頭アイコン + プレースホルダー風テキストで「テキストフィールドらしさ」だけを表現する非インタラクティブな部品です。API は input(text, leading, size, active, disabled) の 5 引数(詳細は下の引数表を参照)で、props 構造体は導入していません。

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

本部品は表示専用のため実際に入力操作できるフィールドは出力しません。実際に入力可能なフィールドが必要な場合は Input(Themes) を検討してください。

Demo

既定(Md、アイコンなし)

メールアドレス

先頭アイコン付き

検索

Active

フォーカス中

Disabled

入力不可

Sm

小サイズ

Lg

大サイズ

引数表

引数型既定値説明
text&str-表示文言(プレースホルダー風の 1 種類のみ。空文字も可)。
leadingOption<Node>None省略可能な先頭アイコンスロット。例: Some(icon::search(size))。
sizeSizeSize::Mdサイズ段階(xs〜xl)。最小高さ・フォントサイズに反映される。
activeActiveActive(false)true のとき data-active を付与し、フォーカス風の強調枠にする。
disabledDisabledDisabled(false)true のとき data-disabled を付与し、破線・淡色にする。

原案差分メモ

  • API は独自設計: docs/design/wireframe-ui-architecture.md §6 の汎用変換規約から独立設計しました。同文書 §2 の保留(イシュー #2602)に従い、blocks.pm の Figma プロパティ構成を参照・書き写さず、テキストフィールドで広く使われる一般的な UI パターンおよび本クレート内の既存共通規約(leading: Option<Node> アイコンスロット・Active/ Disabled 共通型)から独立に設計しました。
  • アイコンスロットで表現: 先頭アイコンは leading: Option<Node> で受け取ります(同文書 §11.4 の Option<Node> アイコンスロット規約の実例)。専用の Icon bool 型や第 2 の引数は追加していません。
  • 状態は共通型で表現: Active/Disabled の data-*(同文書 §5「表示状態まで」)で表現します。専用の InputState 列挙は追加していません。Active と Disabled を併用する部品は、本モジュールより先に main へマージされた select(イシュー #2624)が最初の実消費者、switch(イシュー #2627)が 2 例目、checkbox(イシュー #2625)が 3 例目、radio(イシュー #2626)が 4 例目、textarea(イシュー #2623)が 5 例目、slider(イシュー #2628)が 6 例目であり、本部品は Select・Switch・Checkbox・Radio・Textarea・Slider に続く 7 例目の実消費者です。
  • テキストはプレースホルダー風の 1 種類のみ: 実際の入力値とプレースホルダー文言の区別はモデル化していません。Bold/Primary は使いません(テキストフィールドに強調軸を持たせる根拠がないため)。
  • <input> は出力しない: ルートは div とし、placeholder/value/ role/aria-*/tabindex は一切出力しません(同文書 §7 の非対話制約)。
  • スクリーンショット非掲載: docs/design/reference-screenshots/ への blocks.pm 画像取り込みは #2602 で fail-closed に非掲載と確定しています。本ページも画像は置かず、上記の外部リンクのみで代替します。
  • 配色はグレースケール: --fw-wire-ink-muted(既定テキスト色)を基調とし、Active 時は --fw-wire-ink の枠線 + box-shadow、Disabled 時は破線 + --fw-wire-fill-subtle の背景で表現します。