Components
Bottom Sheet
A panel that slides up from the bottom of the screen, commonly used for selections, menus, or additional content.
Demo
Code
Open Sheet
Installation
Usage
Basic Usage
Controlled State
Snap Points
Define multiple snap points for the sheet:
Variants
With List
Display a selectable list:
Multiple Selection List
Scrollable Content
API Reference
BottomSheet
Root component.
| Prop | Type | Default | Description |
|---|---|---|---|
open | boolean | — | Controlled open state |
onOpenChange | (open: boolean) => void | — | Callback when state changes |
snapPoints | string[] | ['50%'] | Height snap points |
defaultSnapPoint | number | 0 | Initial snap point index |
variant | 'default' | 'filled' | 'default' | Visual variant |
BottomSheetTrigger
Button that opens the sheet.
| Prop | Type | Default | Description |
|---|---|---|---|
children | ReactNode | Required | Trigger element |
BottomSheetContent
Content container.
| Prop | Type | Default | Description |
|---|---|---|---|
children | ReactNode | Required | Sheet content |
className | string | — | Additional classes |
BottomSheetHeader
Header section.
| Prop | Type | Default | Description |
|---|---|---|---|
children | ReactNode | Required | Header content |
className | string | — | Additional classes |
BottomSheetTitle
Title text.
| Prop | Type | Default | Description |
|---|---|---|---|
children | ReactNode | Required | Title text |
className | string | — | Additional classes |
BottomSheetBody
Main content area.
| Prop | Type | Default | Description |
|---|---|---|---|
children | ReactNode | Required | Body content |
scrollable | boolean | false | Enable scrolling |
className | string | — | Additional classes |
BottomSheetFooter
Footer section.
| Prop | Type | Default | Description |
|---|---|---|---|
children | ReactNode | Required | Footer content |
className | string | — | Additional classes |
BottomSheetClose
Closes the sheet when pressed.
| Prop | Type | Default | Description |
|---|---|---|---|
children | ReactNode | Required | Close trigger |
BottomSheetList
Selectable list component.
| Prop | Type | Default | Description |
|---|---|---|---|
data | T[] | Required | List data |
variant | 'list' | 'select' | 'multiple' | 'list' | List type |
selectedValue | any | — | Selected value (select) |
selectedValues | any[] | — | Selected values (multiple) |
onSelect | (selected) => void | — | Selection callback |
getItemValue | (item) => any | — | Value extractor |
renderItem | ListRenderItem | — | Custom render function |
keyExtractor | (item, index) => string | — | Key extractor |
BottomSheetDragArea
An area that can be dragged to move or close the bottom sheet.
| Prop | Type | Default | Description |
|---|---|---|---|
children | ReactNode | — | Optional custom handle content |
className | string | — | Additional classes |