Navegación
Menu
Una lista de acciones u opciones desde un botón: secciones, atajos, submenús y elementos marcables.
import { DropdownMenu, MenuItem, MenuSection, MenuSeparator, Submenu } from '@alea/ui';
Ejemplos
Acciones
Secciones, atajos, un elemento de peligro al final.
Seleccionable
selectionMode convierte los elementos en una opción simple o múltiple.
Submenús
Flecha derecha o hover los abre.
Encabezado, pie, contadores y tamaño pequeño
header y footer enmarcan los elementos con contenido que no recibe foco (quién inició sesión, una versión); end pone un contador o un badge en un elemento; size="sm" crea elementos de 32 px para apps densas.
Tokens
Los tokens de diseño que usa este componente, con su valor en el tema actual. Cambia cualquiera para darle otro estilo.
Color
--alea-border…--alea-text-muted…
Space
--alea-space-1…--alea-space-2…--alea-space-3…
Type
--alea-font-size-xs…
Props
Especificaciones
Generado desde el código: las variantes de los tipos, los estados y tokens del CSS, y los patrones de motion que aplican. Las grillas muestran el componente real en ambos temas; los números se miden en la página.
DropdownMenu
- Variantes
placementstartendbottom endbottom startbottomtopbottom leftbottom righttop lefttop righttop starttop endl…sizesmmd- Motion
- Acepta una prop motion para su entrada y salida.
- Oscuro y claro
- Cada color viene de tokens del tema, así que sigue a data-theme (y a presets como Graphite) en la página o en cualquier contenedor. El contraste se revisa en ambos temas.
- Clases para estilos
.alea-menu-popover.alea-menu-header.alea-menu-footer
MenuItem
- Variantes
tonedangerdefault- Estados
- FocusOpen
- Motion
- staggertint
- Oscuro y claro
- Cada color viene de tokens del tema, así que sigue a data-theme (y a presets como Graphite) en la página o en cualquier contenedor. El contraste se revisa en ambos temas.
- Clases para estilos
.alea-menu-item.alea-menu-check.alea-option-icon.alea-option-text.alea-option-desc.alea-menu-end.alea-menu-shortcut.alea-menu-chevron- Atributos data
data-tone=dangerdata-ondata-size=sm
MenuSection
- Oscuro y claro
- Cada color viene de tokens del tema, así que sigue a data-theme (y a presets como Graphite) en la página o en cualquier contenedor. El contraste se revisa en ambos temas.
- Clases para estilos
.alea-option-section.alea-option-header
Submenu
- Oscuro y claro
- Cada color viene de tokens del tema, así que sigue a data-theme (y a presets como Graphite) en la página o en cualquier contenedor. El contraste se revisa en ambos temas.
- Clases para estilos
.alea-menu-popover
Menu
- Variantes
sizesmmd- Oscuro y claro
- Cada color viene de tokens del tema, así que sigue a data-theme (y a presets como Graphite) en la página o en cualquier contenedor. El contraste se revisa en ambos temas.
- Clases para estilos
.alea-menu- Atributos data
data-size=sm
Accesibilidad
- Un menú nombrado por su disparador; los elementos son menuitem, menuitemradio o menuitemcheckbox.
- Al escribir salta a los elementos; el foco vuelve al disparador al cerrar.
Teclado
| Tecla | Acción |
|---|---|
| Enter, Espacio, Flecha abajo | Abre el menú |
| Flechas | Se mueven entre elementos |
| Flecha derecha / Izquierda | Abre o cierra un submenú |
| Escape | Cierra |
| Letras | Salta a un elemento |
Qué hacer y qué evitar
Hacer
- Pon los elementos destructivos al final, con tone="danger".
Evitar
- No escondas la acción principal en un menú.
- No uses un menú para elegir el valor de un formulario: usa Select.