コンポーネント

基礎

彩(デザイン言語)

Lily UI の色や形の決め方をまとめたページ。やわらかさ、あたたかさ、親しみやすさを大切にしていて、色の名前はすべて日本の伝統色(和色)でそろえています。

カラー

色に役割ごとの名前を付けて使い回すための仕組み(こうした名前付きの値をトークンと呼びます)。カラーコードを直接書く代わりに、primary・状態色・地・文字といった意味で色を指定します。ライトとダークのモードでは、同じ名前のまま色が切り替わります。

パレット

カラートークンの素になっている、色相ごとの明るさ違い(50〜900)の一覧。

モーション

要素の登場や退場、注目を引くためのアニメーションと、カーソルを重ねたときの反応や背景の装飾効果をまとめたもの。指定するだけで使えて、利用者が「画面の動きを減らす」設定にしているときは自動で止まります。

スケール

余白・角丸・影・文字サイズに、あらかじめ用意した段階的な値。たとえば余白は 4px 刻みで統一していて、数値を直接書く代わりに名前で指定します。これで画面全体の間隔や大きさが自然にそろいます。

Motion Provider

画面の動きの量(フル・控えめ・なし・自動)を管理する部品。決まった段階を <html> の data-motion 属性に反映し、OS の「視差効果を減らす」設定にも自動で従います。

Theme Override

囲んだ範囲だけ、テーマの色を好みの色に置き換える部品。一部のトークンだけ、ダークモードだけ、という変え方もでき、文字と背景のコントラストが 7:1 を下回る組み合わせは開発中に警告されます。アプリ全体を変えるときは ThemeProvider に同じ指定をします。

Theme Provider

ライト・ダーク・OS 連動の表示モードを管理する部品。選んだモードを <html> の data-theme 属性に反映し、localStorage に保存して次回の表示にも引き継ぎます。アプリ全体のテーマ色の上書きもここで指定します。React と Vue 向けで、Web Components では属性と CSS 変数を直接使います。

レイアウト

タイポグラフィ

アクション

データ表示

Avatar

利用者やモノを表す小さな丸い画像。写真がないときは頭文字で代用でき、オンライン中などを示す小さな点も付けられます。

Badge

件数や短いラベルを表す小さな印。「3」のような数や状態を、控えめに添えるのに使います。押して選べる小さなタグが欲しいときは Chip を使ってください。

Card

中身をひとまとめに囲む、汎用の枠。ヘッダー・本文・フッターなどの部品を組み合わせて作ります。

Chip

キーワードや絞り込み条件などを表す小さなタグ。clickable で押して選べるようにしたり、onRemove で削除ボタンを付けたりできます。

Countdown

指定した日時までの残り時間を日・時・分・秒で示すタイマー。毎秒更新してゼロで止まり、onComplete で到達を知らせます。各セグメントにラベルを付け、色だけに頼りません。

Descriptions

キーと値を並べる定義リスト。dl をもとに横・縦のレイアウトと罫線付きの表示を選べます。Descriptions の中に DescriptionsItem を並べて使います。

List Group

項目を縦に並べる一覧。ListGroup.Item を組み合わせて作ります。

Relative Time

経過した時間や先の時刻を「3分前」「2時間後」のように表す time 要素。Intl.RelativeTimeFormat と Temporal で組み立て、live を指定するとタイマーで自動更新します。

Stat

ラベル・値・増減をまとめた指標のタイル。増減は矢印と状態色で示します。

Table

データを行と列で並べる表。見出し行や表のタイトルを正しく持たせ、読み上げソフトでもたどりやすく作っています。

Timeline

履歴や活動を縦に並べる一覧。各項目は状態ドット・タイトル・時刻・説明を持てます。

メディア

フォーム

Calendar

ポップアップを出さず、月のカレンダーをそのまま置いて日付を選ぶ入力欄。日付はボタンになっていて、選んだ日を色で示します。

Cascader

都道府県→市区町村のような階層を、列を横に並べて選ぶ部品。選ぶと次の列に下の階層が現れ、いちばん下まで進むと値が決まります。

Checkbox

オンとオフを切り替える、ラベル付きのチェックボックス。

Color Picker

色見本を並べて色を選ぶ部品。見本を押して選べて、必要ならブラウザ標準の色選びの画面も添えられます。

Combobox

入力しながら候補を絞り込めるテキスト欄。上下キーで候補を選び、Enter で決定します。

Date Picker

カレンダーから日付を選ぶ入力欄。日付を直接打ち込めるテキスト欄と、キーボードで動かせるカレンダーを組み合わせています。

Date Range Picker

開始日と終了日を、連動する 2 つの DatePicker で選ぶ部品。互いの選べる範囲を制限し合います。

Date Time Picker

月カレンダーと時・分の選択を組み合わせて Temporal.PlainDateTime を選ぶ日時ピッカー。キーボードだけで操作でき、矢印キーで日を移動し、Enter で確定、Escape で閉じます。

Duration Input

Temporal.Duration を値に持つ時間入力。時・分(必要なら秒)の数値フィールドとステッパーで構成し、フォームにそのまま組み込めます。

Fieldset

関連するフォーム部品をまとめるグループ。ネイティブの fieldset と legend を使うので、disabled を指定すれば中の部品をまとめて無効化できます。説明文も添えられます。

File Upload

ファイルをドラッグ&ドロップで受け取り、選んだファイルの一覧も見せるアップロード欄。受け取り欄はキーボードからも開けます。

Floating Label

入力欄を選んだり文字を打ち込んだりすると、ラベルがすっと上に移動する仕掛け。Input・Select・Textarea を 1 つ包んで使います。

Form Field

ラベル・補助の説明文・エラー文を、入力欄とひとまとめにする部品。読み上げソフトがどの欄の説明かを正しく読み取れるよう、内部のひも付けも自動で行います。

Input

1 行のテキスト入力欄。FormField の中で使うと、ラベルや説明との結び付けを自動で受け取ります。

Input Group

入力欄の前後に、単位や記号、ボタンなどを添えられる部品。

Month Picker

12 か月のグリッドから Temporal.PlainYearMonth を選ぶ月ピッカー。前年・翌年に移動でき、矢印キーで月を動かし、Enter で確定、Escape で閉じます。

Number Input

数値を入力する欄に、増減ボタンを付けた部品。上下キーでの増減もそのまま使えます。

Pin Input

コードやワンタイムパスワードを 1 文字ずつ入れる欄。入力すると自動で次の欄へ進みます。

Radio

ラジオグループの選択肢の 1 つ。name を共有してグループにまとめます。

Range

つまみを動かして値を選ぶスライダー。FormField の中で使うと、ラベルとの結び付けを自動で受け取ります。

Range (Dual)

価格帯などの範囲を、下限と上限の 2 つのつまみで選ぶスライダー。

Rating

星で評価を付ける部品。標準では操作でき、矢印キーで星の数を増減できます。readOnly にすると評価の表示だけになります。

Segmented Control

横に並んだ選択肢からひとつだけ選ぶ、トグル式の切り替え。矢印キーで選択肢を移動できます。

Select

ブラウザ標準のプルダウン選択。選択肢が決まっているときに向きます。入力で絞り込みたいときは Combobox を使ってください。

Switch

スライドしてオン・オフを切り替えるスイッチ。キーボードでも操作でき、状態は読み上げソフトにも正しく伝わります。

Tag Input

メールアドレスやキーワードを、タグとして複数まとめて入力できる欄。Enter か区切り文字で追加し、空欄で Backspace を押すと直前のタグを消します。

Textarea

複数行のテキスト入力欄。FormField の中で使うと、ラベルや説明との結び付けを自動で受け取ります。

Time Picker

時と分を選んで時刻を入れる入力欄。必要なら午前・午後の切り替えも加えられます。

Time Zone Select

IANA タイムゾーンを選ぶセレクト。候補は Intl.supportedValuesOf から作り、使えない環境では少数の固定リストに切り替えます。値は Temporal が扱う ID 文字列です。

Transfer

2 つのリストの間で項目を移す部品。各行はラベル付きのチェックボックスになっています。

Tree Select

ツリー構造からノードを選ぶセレクト。トリガーを押すとパネルが開き、矢印キーで移動し、Enter で選び、Escape で閉じます。

ナビゲーション

開閉

フィードバック

オーバーレイ

Alert Dialog

取り消せない操作を確認するためのダイアログ。role="alertdialog" を持ち、背景クリックでは閉じません。確認かキャンセルの操作が必要で、Escape で閉じます。

Command Palette

⌘K で開く、検索付きのコマンド一覧。入力で絞り込み、上下キーで移動して、Enter で実行します。

ContextMenu

右クリックやキーボード(Shift+F10、メニューキー)でポインター位置に開くメニュー。矢印キーで項目を移動し、Enter で実行、Escape で閉じます。

Drawer

画面の端から現れるパネル。種類は 3 つ。temporary(既定)は背景を覆って前面に開き、開いている間はキーボードの操作対象をパネルの中だけに収めます(Modal と同じ作りです)。persistent はページの中身と一緒に並び、開閉に合わせて隣の中身を左右に押し広げます。permanent は常に開いたままで、デスクトップのサイドバーなどに向いています。広い画面では permanent、狭い画面では temporary に切り替える使い方がよくあります。

Dropdown

トリガーのボタンに紐づくメニュー。トリガーのいらない単体のメニューには Menu を使ってください。

HoverCard

トリガーにカーソルを重ねるかフォーカスすると開くカード。補足情報を表示し、開くまで少し待ちます。フォーカスが外れるか Escape で閉じ、キーボードでも開けます。

Modal

背景の上に重ねて開く小窓(ダイアログ)。開いている間はキーボードの操作対象が小窓の中だけに収まり、迷わず使えます。

Offcanvas

画面の端からスライドして出てくるパネル。キーボード操作や読み上げへの対応は Modal と同じ作りです。

Popover

クリックで開く吹き出し型のパネル。タイトルと自由な中身を置けて、Escape キーや外側のクリックで閉じます。背景の操作はふさぎません。

Tooltip

カーソルを重ねたりキーボードで選んだりすると出る、小さな補足ラベル。どの要素の説明かは読み上げソフトにも伝わります。