Dialog
Ready
Modal dialogs for focused user interactions and confirmations
Basic Dialog
Simple dialog with title and description
Confirmation Dialog
Destructive action with warning
Form Dialog
Dialog with form inputs
Controlled Dialog
Programmatically control dialog state
Installation
Install the required dependencies
npm install @radix-ui/react-dialogUsage
Basic implementation example
import {
Dialog,
DialogContent,
DialogDescription,
DialogFooter,
DialogHeader,
DialogTitle,
DialogTrigger,
} from '@/components/ui/dialog'
import { Button } from '@/components/ui/button'
export default function Example() {
return (
<Dialog>
<DialogTrigger asChild>
<Button>Open Dialog</Button>
</DialogTrigger>
<DialogContent>
<DialogHeader>
<DialogTitle>Dialog Title</DialogTitle>
<DialogDescription>
Dialog description goes here
</DialogDescription>
</DialogHeader>
<DialogFooter>
<Button variant="outline">Cancel</Button>
<Button>Confirm</Button>
</DialogFooter>
</DialogContent>
</Dialog>
)
}Features
Built-in functionality
- Focus trap - Keyboard focus stays within dialog
- ESC to close - Press ESC key to dismiss
- Backdrop click - Click outside to close
- Accessible - ARIA roles and keyboard navigation
- Smooth animations - Fade and zoom transitions
- 16px border radius - Consistent with Eidetic design system