Body.childrenRequired | React.ReactNode | Not set | — |
childrenRequired | React.ReactNode | Not set | Drawer parts (Drawer.Trigger, Drawer.Content) |
Content.childrenRequired | React.ReactNode | Not set | — |
Content.finalFocus | boolean | React.RefObject<HTMLElement | null> | ((closeType: InteractionType) => boolean | HTMLElement | null | void) | undefined | Not set | Where focus goes when the drawer closes. |
Content.initialFocus | boolean | React.RefObject<HTMLElement | null> | ((openType: InteractionType) => boolean | HTMLElement | null | void) | undefined | Not set | Where focus goes when the drawer opens. |
Content.side | DrawerSide | undefinedstartendbottom | Not set | The edge the drawer sits on. `start` and `end` follow the writing direction. |
Content.size | DrawerSize | undefinedsmmdlg | Not set | Width on the start and end edges, height on the bottom edge. |
defaultOpen | boolean | undefined | false | Default open state (uncontrolled) |
Description.childrenRequired | React.ReactNode | Not set | — |
disablePointerDismissal | boolean | undefined | false | Keep the drawer open on an outside press |
Footer.childrenRequired | React.ReactNode | Not set | — |
Header.childrenRequired | React.ReactNode | Not set | — |
modal | boolean | "trap-focus" | undefined | true | true draws the scrim and blocks the page; trap-focus keeps focus inside without a scrim; false leaves the page usable |
onOpenChange | ((open: boolean) => void) | undefined | Not set | Called when the open state changes |
onOpenChangeComplete | ((open: boolean) => void) | undefined | Not set | Called after the open or close transition finishes |
open | boolean | undefined | Not set | Controlled open state |
snapPoints | (string | number)[] | undefined | Not set | Snap points for a bottom sheet: viewport fractions, pixels, or px/rem strings |
SwipeArea.disabled | boolean | undefined | Not set | Disable swipe-to-open |
Title.childrenRequired | React.ReactNode | Not set | — |