Capítulo 45 de 108
Modal que interrompe o usuário com conteúdo importante e exige uma resposta explícita (não fecha ao clicar fora). Use para confirmações críticas/destrutivas, não como Dialog genérico. Built on Base UI Alert Dialog.
AlertDialogCancel também fecha o dialog.<Trash2Icon />).AlertDialogContent, "default" | "sm" (padrão "default").AlertDialogAction/AlertDialogCancel aceitam variant="destructive"/"outline" (reaproveita variantes de Button).<AlertDialog>
<AlertDialogTrigger render={<Button variant="destructive">Delete Chat</Button>} />
<AlertDialogContent size="sm">
<AlertDialogHeader>
<AlertDialogMedia className="bg-destructive/10 text-destructive dark:bg-destructive/20 dark:text-destructive">
<Trash2Icon />
</AlertDialogMedia>
<AlertDialogTitle>Delete chat?</AlertDialogTitle>
<AlertDialogDescription>
This will permanently delete this chat conversation.
</AlertDialogDescription>
</AlertDialogHeader>
<AlertDialogFooter>
<AlertDialogCancel variant="outline">Cancel</AlertDialogCancel>
<AlertDialogAction variant="destructive">Delete</AlertDialogAction>
</AlertDialogFooter>
</AlertDialogContent>
</AlertDialog>
size="sm", AlertDialogMedia colorido com tokens destructive e variant="destructive" na ação final.Composição:
AlertDialog
├── AlertDialogTrigger
└── AlertDialogContent
├── AlertDialogHeader
│ ├── AlertDialogMedia
│ ├── AlertDialogTitle
│ └── AlertDialogDescription
└── AlertDialogFooter
├── AlertDialogCancel
└── AlertDialogAction
| Prop | Type | Default |
|---|---|---|
size (em AlertDialogContent) | "default" | "sm" | "default" |
Dialog, que permite fechar clicando fora.Dialog, AlertDialog não fecha ao clicar fora, forçando uma escolha explícita (Cancel/Action).AlertDialogMedia é o slot dedicado para ícone no header, distinto do padrão do Dialog comum.size="sm" produz um dialog compacto, útil para confirmações curtas (ex. permissão de dispositivo USB/Bluetooth).variant="destructive" tanto no trigger quanto no AlertDialogAction.npm install @base-ui/react.destructive, outline) são reaproveitadas em AlertDialogAction/AlertDialogCancel/AlertDialogTrigger.