Context Menu
StableO mesmo menu do Dropdown, invocado pelo objeto em vez de por um botão: clique secundário, pressão longa ou a tecla de menu da plataforma. Composto sobre Base UI ContextMenu. O risco do primitive é justamente não ter gatilho visível, então nenhuma ação pode existir só aqui — o menu é o atalho, não a rota.
Instalação
npx up-web-ds add context-menuGera check, chevron-right para a biblioteca de ícones do projeto (components.json → iconLibrary).
Preview
Default
primitives/button
Clique com o botão direito, ou use a tecla de menu
With Groups And State
Área do catálogo
Filtros e ordenação vivem no menu de contexto
With Visible Equivalent
primitives/select
As mesmas ações estão abaixo, à vista
All states
Default
primitives/button
Clique com o botão direito, ou use a tecla de menu
With Groups And State
Área do catálogo
Filtros e ordenação vivem no menu de contexto
With Visible Equivalent
primitives/select
As mesmas ações estão abaixo, à vista
Metadata
Classificação
- Layer
- Primitive
- Domínio
- Domain-free (compartilhado)
- Categoria
- overlay
- Status
- Stable
Origem e distribuição
- Fonte
- shadcn registry / context-menu
- Licença
- MIT
- Distribuição
- Interna
Acessibilidade
- Teclado: revisado
- Leitor de tela: revisado
- Touch: revisado
- Reduced motion: revisado
Teclado verificado por teste: aberto o menu, as setas percorrem os itens pulando os rótulos, digitar as primeiras letras encontra um item, ArrowRight abre o submenu e ArrowLeft volta ao item que o abriu, e Escape fecha. Leitor de tela verificado por teste: o popup tem papel menu, itens de checkbox reportam aria-checked, um gatilho de submenu declara aria-haspopup="menu" e um item desabilitado continua anunciado por aria-disabled recusando a execução sem fechar o menu. Touch verificado em navegador com emulação de toque em viewport de 375px: a pressão longa abre o menu, os itens medem acima do mínimo de 24x24 da WCAG 2.2 SC 2.5.8 e o menu cabe na viewport. Reduced motion verificado com prefers-reduced-motion: reduce — os tokens de motion colapsam para 1ms e a animação de entrada mede 0.001s.
Dependências
- Pacotes
- @base-ui/react
- Ícones
- check, chevron-right
- Construído sobre
- Nenhum
- Usado por
- Nenhum ainda