フォームと選択@neumorphism-ui/toggle-group

Toggle Group

単一、複数選択をまとめるキーボード操作可能なグループ。 グループと各項目にラベルを付け、矢印キーのフォーカス移動と選択を区別します。

@neumorphism-ui/toggle-group
Registry JSON

プレビュー

左

インストール

インストール: toggle-groupnpx shadcn@latest add @neumorphism-ui/toggle-group

CLI が 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 リファレンス

コンポーネントプロパティ型デフォルト説明
ToggleGroupvalue / defaultValuereadonly string[]—制御状態または初期状態を指定します。
ToggleGroupmultipleboolean—複数項目の選択を許可します。
ToggleGrouporientation"horizontal" | "vertical"—配置とキーボード移動の方向を設定します。

アクセシビリティ

  • 01

    グループと各項目にラベルを付け、矢印キーのフォーカス移動と選択を区別します。

  • 02

    render や className を変更する際もラベルと可視フォーカスを保ちます。