Pular para o conteúdo
UI

Alert Dialog

Um dialog modal que interrompe o usuário com um conteúdo importante e espera uma resposta. Aceita variantes de feedback (regular, emphasis, warning, error, success) com slots opcionais de ícone e tag.

Exemplos

Regular (padrão)

A variante regular serve para dialogs de informação ou confirmação comuns. Todos os exemplos incluem um ícone e uma tag para deixar o cabeçalho mais completo.

Emphasis

A variante emphasis usa um esquema de cores secundário para destacar conteúdo importante ou em evidência.

Error

Use a variante error para ações destrutivas ou avisos de falha crítica.

Warning

A variante warning é ideal para ações que pedem cuidado, mas que não são necessariamente destrutivas.

Success

A variante success confirma ações positivas ou operações concluídas com sucesso.

Com botão de fechar

Use showCloseButton no AlertDialogContent para renderizar o Dismiss no canto superior direito. Assim o usuário consegue fechar o dialog sem escolher uma ação.

API

AlertDialog

PropriedadeTipoValores possíveisPadrãoDescrição
variantstring'regular', 'emphasis', 'warning', 'error', 'success'regularDefine o esquema de cores do feedback. É repassado via contexto para AlertDialogIcon, AlertDialogTag e AlertDialogAction.
openbooleantrue, false-Controla o estado de abertura (modo controlado).
onOpenChange(open: boolean) => void--Função chamada quando o estado de abertura muda.
...propsTodas as props de AlertDialog.Root do Radix--Todas as propriedades nativas do componente AlertDialog Root do Radix UI.

AlertDialogTrigger

PropriedadeTipoValores possíveisPadrãoDescrição
asChildbooleantrue, falsefalseQuando true, usa o filho como trigger.
...propsTodas as props de AlertDialog.Trigger do Radix--Todas as propriedades nativas do componente AlertDialog Trigger do Radix UI.

AlertDialogContent

PropriedadeTipoValores possíveisPadrãoDescrição
showCloseButtonbooleantrue, falsefalseRenderiza um botão × no canto superior direito que fecha o dialog. Sem AlertDialogIcon, o AlertDialogHeader passa a ter 56px de cada lado, para o título centralizado não passar por baixo do botão.
closeLabelstring-"Fechar"Label acessível do botão de fechar.
overlayClassNamestring--Classes CSS adicionais aplicadas ao overlay.
classNamestring--Classes CSS adicionais aplicadas ao conteúdo.
...propsTodas as props de AlertDialog.Content do Radix--Todas as propriedades nativas do componente AlertDialog Content do Radix UI.

AlertDialogIcon

Slot opcional para um ícone de feedback acima do título. Lê a variant do contexto do AlertDialog para aplicar a cor de fundo e de texto correspondentes. Quando presente, o cabeçalho perde o espaçamento superior (o ícone já ocupa o topo).

PropriedadeTipoValores possíveisPadrãoDescrição
iconReactNode--Elemento de ícone a renderizar. Obrigatória: o componente não aceita children, o ícone vem sempre por icon. SVGs ficam com 32px automaticamente.
classNamestring--Classes CSS adicionais para o container da seção do ícone.

AlertDialogTag

Slot opcional para uma tag estilizada acima do título. Lê a variant do contexto do AlertDialog automaticamente. Passe variant explicitamente para sobrescrever o valor herdado.

PropriedadeTipoValores possíveisPadrãoDescrição
variantstring'regular', 'emphasis', 'warning', 'error', 'success'Herdado do AlertDialogSobrescreve o esquema de cores herdado do contexto do AlertDialog pai.
childrenReactNode--Texto ou conteúdo da tag.
classNamestring--Classes CSS adicionais para o elemento da tag.

AlertDialogAction

PropriedadeTipoValores possíveisPadrãoDescrição
variantstringVariantes do Button ('regular', 'emphasis', 'error', 'success' etc.)Herdado da variant do AlertDialogVariante visual do botão. Quando omitida, herda a variant do AlertDialog pai. Um valor explícito sempre sobrescreve o contexto.
sizestring'sm', 'md', 'lg', 'xl'lgTamanho do botão.
fullbooleantrue, falsefalseQuando true, o botão ocupa toda a largura disponível. Em telas de até 500px o botão já ocupa a largura toda, independentemente desta prop.
...propsTodas as props de AlertDialog.Action do Radix--Todas as propriedades nativas do componente AlertDialog Action do Radix UI.

AlertDialogCancel

PropriedadeTipoValores possíveisPadrãoDescrição
variantstringVariantes do Button ('regular', 'emphasis', 'error', 'success' etc.)regular-softVariante visual do botão.
sizestring'sm', 'md', 'lg', 'xl'lgTamanho do botão.
fullbooleantrue, falsefalseQuando true, o botão ocupa toda a largura disponível. Em telas de até 500px o botão já ocupa a largura toda, independentemente desta prop.
...propsTodas as props de AlertDialog.Cancel do Radix--Todas as propriedades nativas do componente AlertDialog Cancel do Radix UI.

AlertDialogHeader

Container (div) do topo do diálogo, que agrupa ícone, tag, título e descrição em coluna e centralizados. Quando o diálogo tem um AlertDialogIcon, o espaçamento superior do cabeçalho é removido. Aceita as props nativas de div.

PropriedadeTipoValores possíveisPadrãoDescrição
classNamestring--Classes CSS adicionais para o cabeçalho.

AlertDialogTitle

Título do diálogo, anunciado por leitores de tela como o nome acessível do diálogo. Aceita as props de AlertDialog.Title do Radix.

PropriedadeTipoValores possíveisPadrãoDescrição
childrenReactNode--Texto do título.
classNamestring--Classes CSS adicionais para o título.

AlertDialogDescription

Texto de apoio do diálogo, anunciado por leitores de tela como a descrição do diálogo. Aceita as props de AlertDialog.Description do Radix.

PropriedadeTipoValores possíveisPadrãoDescrição
childrenReactNode--Texto da descrição.
classNamestring--Classes CSS adicionais para a descrição.

AlertDialogFooter

Container (div) dos botões de ação, lado a lado e centralizados. Em telas de até 500px os botões ficam empilhados e ocupam a largura toda. Aceita as props nativas de div.

PropriedadeTipoValores possíveisPadrãoDescrição
classNamestring--Classes CSS adicionais para o rodapé.

AlertDialogPortal e AlertDialogOverlay

O AlertDialogContent já renderiza o portal e o overlay, então não é preciso usá-los diretamente. Para mudar o estilo do overlay, prefira a prop overlayClassName do AlertDialogContent. O AlertDialogPortal aceita as props de AlertDialog.Portal do Radix e o AlertDialogOverlay aceita as de AlertDialog.Overlay, incluindo className.