AlertDialog
Confirmação que exige uma decisão explícita antes de seguir.
O AlertDialog interrompe a tela para confirmar uma ação que cria versão, descarta trabalho ou não tem volta, como publicar a Marca ou revogar um token. Diferente do Modal, ele não fecha ao clicar fora nem com Esc por padrão: a pessoa precisa escolher.
import { AlertDialog } from "@rastreio-x/ui";
Padrão
O ícone usa status="danger" por padrão. O corpo resume o que muda; os botões usam verbos claros.
Estados
AlertDialog.Icon aceita accent, success, warning e danger. Use o estado que corresponde à gravidade, e variant="danger" no botão só quando o estado é perigo.
Controlado
Com isOpen e onOpenChange no AlertDialog.Backdrop, feche o diálogo ao concluir e avise o resultado com toast.
Anatomia
AlertDialog.BackdropeAlertDialog.Container: o fundo e a posição.AlertDialog.Dialog: a superfície, comrole="alertdialog".AlertDialog.Header,AlertDialog.IconeAlertDialog.Heading: ícone de estado e título.AlertDialog.BodyeAlertDialog.Footer: o resumo e as ações.
Propriedades
Fundo (AlertDialog.Backdrop):
Ícone (AlertDialog.Icon):
Animações
Mesma entrada do Modal: fade do fundo e opacity com transform no diálogo, em transição curta. Com prefers-reduced-motion, a folha global da fachada reduz as transições a 0,01 ms.
Acessibilidade
- Padrão WAI-ARIA
alertdialog: o leitor de tela anuncia título e descrição ao abrir. - O foco fica preso no diálogo e volta ao gatilho ao fechar.
- Por padrão exige ação explícita: fundo e Esc não fecham (
isDismissableeisKeyboardDismissDisabledajustam). - O estado do ícone vem acompanhado de texto no título, nunca só de cor.
Boas práticas
Faça
Evite
- Use só para ações que criam versão ou descartam trabalho (publicar, excluir, revogar).
- O botão de cancelar diz o que preserva: "Manter Rascunho".
- Texto curto: o que acontece e o que não muda.
- Para ações reversíveis, prefira desfazer por
toast.