Skip to content

rSheet

A flexible sheet (sliding panel) component built on top of reka-ui's dialog system.

Props

NameTypeRequiredDescription
openbooleanControls the open state (controlled mode).
defaultOpenbooleanInitial open state (uncontrolled mode).
modalbooleanWhether to trap focus and disable background interaction.
overlaybooleanControls whether a background overlay is shown.
portalDialogPortalPropsProps forwarded to the DialogPortal.
contentOmit<DialogContentProps, "as" | "asChild" | "forceMount">Props forwarded to the DialogContent.
position'top' | 'bottom' | 'left' | 'right'Position of the sheet on screen. Defaults to 'right'.
uiPartial<ComponentSlots<typeof rSheetStyles.slots>>Optional class overrides for styling individual sheet sections.

Slots

NameDescriptionSlot Props
defaultTrigger element for opening the sheet.{ open: boolean }
titleTitle displayed at the top of the sheet.
descriptionOptional text under the title for additional context.
contentRendered outside DialogContent, if needed.
mainMain body content of the sheet.
footerSection for footer actions (e.g. buttons).
closeCustom close button. Defaults to an RButton with an X icon.

Emits

This component supports all native dialog emits via reka-ui:

  • update:open — Emits when the sheet is opened or closed.
  • open — Fires when the sheet opens.
  • close — Fires when the sheet closes.

Made with ♥️ by Riešenia