Saltar al contenido
El Muestrario

componente · @solu30/ui-kit/input

ChipToggle

Chip de encendido y apagado con ícono y descripción, que se marca al instante y revierte si falla.

Seguir leyendo — 3 párrafos más

Toggle chip with optimistic UI, async support, and accessibility.

Flips visual state immediately on click. If onChange returns a Promise that rejects, the visual state reverts and onError is called.

Uses CSS variables for theming:

  • --ui-accent for checked state background/border
  • --ui-border for unchecked border
  • --ui-bg-raised for background
  • --ui-content-primary for label text
  • --ui-content-muted for description text

19 sitios de import en 4 de 15 verticales — un archivo que la importa cuenta una vez, monte una instancia o veinte.

  • TheCharterPanel
  • carlosmartinpavon
  • dietaly
  • gestorsalon

El componente, montado

Cargando el componente del paquete instalado…

Cómo se usa

import { ChipToggle } from '@solu30/ui-kit/input'

Props

9 props declaradas en los tipos de la versión instalada.
PropRequeridaTipoQué hace
labelsístringDisplay label
checkedsíbooleanControlled checked state
onChangesí(checked: boolean) => void | Promise<void>Sync or async toggle handler. On promise rejection, visual state reverts.
iconopcionalReact__default.ReactNodeOptional leading icon
disabledopcionalbooleanDisable interaction
loadingopcionalbooleanShow loading spinner (overrides internal async loading)
descriptionopcionalstringOptional description text below the label
classNameopcionalstringAdditional CSS class
onErroropcional(error: unknown) => voidCalled when an async onChange rejects

Ejemplo del paquete

<ChipToggle
  label="Wi-Fi"
  checked={hasWifi}
  onChange={async (v) => { await updateAmenity('wifi', v) }}
  icon={<WifiIcon />}
/>

Del @example del JSDoc de @solu30/ui-kit, sin editar: son 65 de los 541 símbolos. La sangría y los renglones en blanco son los del paquete.