Saltar al contenido
Logic2BUI

Buscar en la documentación

Busca componentes y documentación

Nuevo
Menú

Grupo de alternancia

Conjunto de botones de dos estados que pueden activarse o desactivarse.

Instalación

npx logic2b@next add toggle-group

Uso

import { ToggleGroup, ToggleGroupItem } from "@/components/ui/toggle-group"

<ToggleGroup type="multiple">
  <ToggleGroupItem value="bold" aria-label="Alternar negrita">
    <BoldIcon />
  </ToggleGroupItem>
</ToggleGroup>

Notas de uso

Construido sobre ToggleGroup de Radix. Las propiedades variant y size del grupo se comparten con cada ToggleGroupItem mediante el contexto.

Ejemplos

Selección única

Tamaños

Accesibilidad

  • Con type="single", los elementos se comportan como un grupo de opciones y las teclas de flecha desplazan la selección.
  • Con type="multiple", cada elemento se alterna de forma independiente y expone aria-pressed.
  • Tab lleva el foco al grupo y las teclas de flecha lo desplazan entre sus elementos. Los que solo tienen icono necesitan un aria-label.

Playground interactivo

Edita las propiedades del componente y revisa el JSX exacto antes de copiarlo. La vista previa se carga solo cuando esta sección entra en pantalla.

JSX generado
<ToggleGroup
  type="single"
  defaultValue="center"
  variant="outline"
  size="default"
  aria-label="Text alignment"
>
  <ToggleGroupItem
    value="left"
    aria-label="Align left"
  >Left</ToggleGroupItem>
  <ToggleGroupItem
    value="center"
    aria-label="Align center"
  >Center</ToggleGroupItem>
  <ToggleGroupItem
    value="right"
    aria-label="Align right"
  >Right</ToggleGroupItem>
</ToggleGroup>

Referencia de API

Generada a partir de las exportaciones públicas de TypeScript en src/ui/toggle-group.tsx. Las descripciones técnicas conservan el texto canónico del código fuente.

Ver JSON

ToggleGroup

Componente
Props: React.ComponentProps<typeof ToggleGroupPrimitive.Root> & VariantProps<typeof toggleVariants>
PropiedadTipoObligatoriaValor predeterminadoDescripción
variantnull | "default" | "outline"No——
sizenull | "default" | "sm" | "lg"No——

ToggleGroupItem

Componente
Props: React.ComponentProps<typeof ToggleGroupPrimitive.Item> & VariantProps<typeof toggleVariants>
PropiedadTipoObligatoriaValor predeterminadoDescripción
variantnull | "default" | "outline"No——
sizenull | "default" | "sm" | "lg"No——

Contrato de accesibilidad

Comportamiento legible por máquinas y responsabilidades de quien integra toggle-group. Los detalles normativos conservan el texto canónico del registro.

Ver JSON
Soporte
Gestionado por la primitiva
Patrón
toggle group
Radix Toggle Group
Interacciones de teclado para toggle-group
TeclasComportamiento
ArrowUp ArrowDown ArrowLeft ArrowRightMove within the composite control.
Enter SpaceActivate the focused control.

Semántica incorporada

  • Uses roving focus and pressed/selected state for single or multiple selection.

Responsabilidades de integración

  • Label the group and every icon-only item.