Editable
fandhe-frontend-pre-styled-ui の editable mod が提供するスタイル済み Editable 部品です。
関連 API: fandhe-frontend-pre-styled-ui API / fandhe-frontend-headless-ui API
Demo
preview/edit の 2 モードを切り替えるインプレース編集。input/preview は data-* と hidden 属性で排他表示されます。
Ada Lovelace
Grace Hopper
Locked value
Features
sizevariant クラスをrootへ付与し、headless-ui のeditable::rootへ委譲する。mode(EditMode::Preview/Edit)・activation_mode・submit_modeの各軸をそのまま引数で受け取る。
Anatomy
root
label
area
input
preview
control
edit-trigger
submit-trigger
cancel-triggerAPI Reference
Arguments
| Name | Type | Default | Description |
|---|---|---|---|
size | Size | Size::Md | サイズ variant。 |
mode | EditMode | EditMode::Preview | プレビュー/編集の表示モード。 |
flags | EditableInputFlags | EditableInputFlags::default() | disabled/readonly/required/invalid のフラグ束。root へは disabled/readonly のみ反映する。 |
activation_mode | EditableActivationMode | EditableActivationMode::default() | 編集モードへの遷移トリガー(クリック/ダブルクリック等)。 |
submit_mode | EditableSubmitMode | EditableSubmitMode::default() | 確定操作(Enter/blur 等)の種別。 |
attrs | Vec<(&str, &str)> | — | root パーツへ合成する追加属性。 |
children | Vec<Node> | — | root 配下の子ノード。 |
Data Attributes
| Part | Attribute | Observed Values |
|---|---|---|
area | data-disabled | (値なし) |
area | data-state | edit, preview |
cancel-trigger | data-state | edit |
control | data-state | edit, preview |
edit-trigger | data-disabled | (値なし) |
edit-trigger | data-state | preview |
input | data-disabled | (値なし) |
input | data-state | edit, preview |
label | data-disabled | (値なし) |
label | data-state | edit, preview |
preview | data-disabled | (値なし) |
preview | data-state | edit, preview |
root | data-activation-mode | focus |
root | data-disabled | (値なし) |
root | data-state | edit, preview |
root | data-submit-mode | both |
submit-trigger | data-state | edit |
CSS Variables
| Variable | Default |
|---|---|
--fandhe-editable-font-size | var(--fandhe-font-font-size-sm) |