Top Sheet

A customizable sheet component for creating elegant slide-out interfaces.

Installation

npx shadcn@latest add https://scrollx-ui.vercel.app/registry/top-sheet.json 

Usage

import TopSheet from '@/components/ui/top-sheet'
<TopSheet>
  <TopSheetTrigger asChild>
    <Button>Open Sheet</Button>
  </TopSheetTrigger>
  <TopSheetContent>
    <TopSheetHeader>
      <TopSheetTitle>Title</TopSheetTitle>
      <TopSheetDescription>Description</TopSheetDescription>
    </TopSheetHeader>
    content..
    <TopSheetFooter>
      <TopSheetClose asChild>
        <Button>Close</Button>
      </TopSheetClose>
    </TopSheetFooter>
  </TopSheetContent>
</TopSheet>

API Reference

Top Sheet

A customizable component for creating elegant, slide-out panels from the top of the screen.

Props

PropertyTypeDefaultDescription
openbooleanfalse
Controlled open state.
onOpenChange(open: boolean) => void-
Called when the open state changes.
defaultOpenbooleanfalse
Initial open state for uncontrolled usage.
asChildbooleanfalse
Render without adding an extra wrapper element.
heightstring'70vh'
Height of the sheet.
closeThresholdnumber0.3
Drag distance ratio required to close the sheet.
containerHTMLElementdocument.body
DOM element where the portal is mounted.
classNamestring''
Custom CSS classes.

Built withby Ahdeetai.