Drawer
A bottom sheet that can be dismissed by dragging it down.
- Overlays
- 1 file
- 1 npm package
- Accessibility notes
pnpm dlx @dowel-ui/cli add drawernpm packages installed: radix-ui.
import { Drawer } from "@/components/ui/drawer";Default
Scrolling Content
Without Handle
Spring
<Drawer>
| Prop | Type | Default |
|---|---|---|
onOpenChangeRedeclared as a property rather than inherited as a method signature. The inherited shorthand reads as a method, which makes destructuring it look like an unbound | (open: boolean) => void | — |
Every prop of Radix UI’s Dialog.Root, plus className.
<DrawerOverlay>
Every prop of Radix UI’s Dialog.Overlay, plus className.
<DrawerContent>
| Prop | Type | Default |
|---|---|---|
animationHow the content arrives. | "default" | "spring" | "default" |
showHandleShows the grab handle. Turn off only if the drawer cannot be dragged. | boolean | true |
Every prop of Radix UI’s Dialog.Content, plus className.
<DrawerHeader>
Plus every attribute of <div>.
<DrawerBody>
Plus every attribute of <div>.
<DrawerFooter>
Plus every attribute of <div>.
<DrawerTitle>
Every prop of Radix UI’s Dialog.Title, plus className.
<DrawerDescription>
Every prop of Radix UI’s Dialog.Description, plus className.
<DrawerCancel>
Every prop of Radix UI’s Dialog.Close, plus className.
8/8
checks passed
- Tested — passes
- axe assertion — passes
- Keyboard tested — does not apply
- Storybook examples — passes
- Accessibility documented — passes
- Semantic tokens only — passes
- Motion from tokens — passes
- className merged — passes
- Visible focus — does not apply
- No fixed widths — passes