# Overlays
Patterns for modals, slideovers, drawers, and command palettes.
## Confirmation dialog
```vue
```
## Programmatic confirmation (useOverlay)
Reusable pattern — no template state needed at the call site.
```vue [components/ConfirmModal.vue]
```
```ts
// Usage anywhere
const overlay = useOverlay()
const confirm = overlay.create(ConfirmModal)
async function deleteItem(item) {
const instance = confirm.open({
title: 'Delete item',
description: `Are you sure you want to delete "${item.name}"?`
})
if (await instance.result) {
// user confirmed
}
}
```
## Form in a slideover
```vue
```
## Command palette
```vue
```
## Drawer (bottom sheet)
```vue
```