doksam-ui
홈ProfilesTokensIconsComponentsPatternsTemplatesRules

Sheet

화면 가장자리에서 슬라이드로 열리는 패널입니다.

데모

코드

<Sheet>
  <SheetTrigger asChild>
    <Button variant="outline">필터</Button>
  </SheetTrigger>
  <SheetContent>
    <SheetHeader>
      <SheetTitle>상품 필터</SheetTitle>
      <SheetDescription>조건을 선택하면 목록에 바로 반영됩니다.</SheetDescription>
    </SheetHeader>
    <FieldGroup className="px-4">
      <Field orientation="horizontal">
        <Checkbox id="instock" defaultChecked />
        <FieldLabel htmlFor="instock" className="font-normal">
          재고 있음만 보기
        </FieldLabel>
      </Field>
    </FieldGroup>
    <SheetFooter>
      <SheetClose asChild>
        <Button>적용</Button>
      </SheetClose>
    </SheetFooter>
  </SheetContent>
</Sheet>

사용 규칙

Do
  • 필터·설정처럼 본문 컨텍스트를 유지한 채 참고할 보조 작업에 사용한다.
  • side='right'가 기본값이므로 좌측 내비게이션과 겹치지 않는지 확인한다.
  • SheetTitle을 생략하지 않는다 — 없으면 접근성 트리에서 패널의 목적이 사라진다.
Don't
  • Sheet 안에 또 다른 Sheet·Dialog를 중첩해 포커스 트랩을 겹치게 하지 않는다.
  • 모바일 하단 시트가 필요한 경우엔 Sheet 대신 Drawer를 사용한다.