GlassButton

GlassButton es un vidrio con su texto. Un button real e invisible, en la capa del bridge, lo hace alcanzable con Tab, activable con Enter y Espacio, y visible para un lector de pantalla.

Uso

<GlassButton label="Guardar" onclick={save} />
<GlassButton label="+" aria-label="Nuevo look" variant="secondary" width={40} height={40} radius={20} onclick={add} />

Hay tres variantes (primary, secondary y ghost) y tres tamaños (sm, md y lg). onclick llega una vez por activación, por puntero o por teclado.

Costo

Ninguno en reposo: el bridge proyecta el botón invisible solo en los frames que se renderizan. Necesita EssentiaRoot.

Referencia de props

PropTipoDefaultDescripción
labelstringrequeridoTexto del botón. También es su nombre accesible, salvo que haya aria-label.
'aria-label'string—Nombre accesible cuando el texto no se lee bien en voz alta (un botón con + o ···). Pisa a label para el lector de pantalla; lo que se dibuja sigue siendo label.
widthnumber160Ancho del botón en píxeles.
heightnumberel del size (44 en md)Alto del botón en píxeles. Pisa al del size.
radiusnumberel del size (22 en md)Radio de esquinas en píxeles. Pisa al del size.
fontSizenumberel del size en typography.size del tema (16 en md)Tamaño de fuente del label en píxeles. Pisa al del size.
variantGlassButtonVariant'primary'Variante visual del botón: qué material y color de texto del tema usa.
sizeGlassButtonSize'md'Tamaño: alto / radio / fuente. sm 36 / 18 / 14, md 44 / 22 / 16, lg 52 / 26 / 18 (la fuente sale de typography.size del tema).
disabledbooleanfalseSin clicks ni foco (el ghost disabled sale del orden de Tab) y atenuado.
tabindexnumber—Posición en el orden de Tab (tabindex del ghost). Por defecto, el orden de montaje.
xnumber—Posición X (centro del botón).
ynumber—Posición Y (centro del botón).
znumber—Z-index para ordenamiento de capas.
onclick(event: MouseEvent) => void—Activación del botón, una vez por activación: el click del puntero (raycast sobre el vidrio, con su MouseEvent nativo) o el click nativo del ghost <button> (Enter, Espacio o un lector de pantalla, con detail === 0).

Anterior: Text

Siguiente: Card