Toggle Group
単一、複数選択をまとめるキーボード操作可能なグループ。 グループと各項目にラベルを付け、矢印キーのフォーカス移動と選択を区別します。
@neumorphism-ui/toggle-groupプレビュー
インストール
インストール: toggle-group
npx shadcn@latest add @neumorphism-ui/toggle-groupCLI が npm 依存関係、base token、utils、コンポーネントソースを順番に処理します。
この Registry を初めて使う場合は、先に namespace の設定 を完了してください。
使い方
Import
Toggle Group の import コード
"use client";
import * as React from "react";
import { ToggleGroup, ToggleGroupItem } from "@/components/ui/toggle-group";Example
Toggle Group の使用コード
export default function Example() {
const text = {"open":"通知設定","title":"通知を調整","body":"重要な更新だけを受け取り、集中を保ちます。","close":"閉じる","discard":"下書きを削除","confirm":"下書きを削除しますか?","warning":"この操作は取り消せません。確認してから続行してください。","cancel":"戻る","done":"下書きを削除しました。","profile":"プロフィールを確認","person":"プロダクトデザイナー · ソウル","details":"詳細設定","detailBody":"初期設定を変更せずに追加の設定を表示します。","pin":"固定","locked":"無効","align":"配置","left":"左","center":"中央","right":"右","tools":"文書ツール","undo":"元に戻す","redo":"やり直す","save":"変更を保存","saved":"ローカル例を保存しました。","name":"表示名","hint":"プロフィールに表示する名前を入力してください。","required":"名前を入力してください。","settings":"プロフィール設定","quantity":"座席数","increase":"座席を増やす","decrease":"座席を減らす","storage":"ストレージ使用量","city":"都市を検索","empty":"一致する都市はありません。","reset":"リセット","editing":"未保存の変更","quiet":"保存済み"};
const [alignment, setAlignment] = React.useState<string[]>(["left"]);
return (<div className="grid gap-3"><ToggleGroup aria-label={"配置"} value={alignment} onValueChange={setAlignment}><ToggleGroupItem value="left">{"左"}</ToggleGroupItem><ToggleGroupItem value="center">{"中央"}</ToggleGroupItem><ToggleGroupItem value="right">{"右"}</ToggleGroupItem></ToggleGroup><output className="text-sm text-[var(--muted-foreground)]">{alignment.map(value => text[value as "left" | "center" | "right"]).join(", ")}</output></div>);
}API リファレンス
| コンポーネント | プロパティ | 型 | デフォルト | 説明 |
|---|---|---|---|---|
ToggleGroup | value / defaultValue | readonly string[] | — | 制御状態または初期状態を指定します。 |
ToggleGroup | multiple | boolean | — | 複数項目の選択を許可します。 |
ToggleGroup | orientation | "horizontal" | "vertical" | — | 配置とキーボード移動の方向を設定します。 |
アクセシビリティ
- 01
グループと各項目にラベルを付け、矢印キーのフォーカス移動と選択を区別します。
- 02
render や className を変更する際もラベルと可視フォーカスを保ちます。