Sheet

A flyout that opens from the side of the screen, based on the dialog component.

Installation

Install the component package, shared coss-svelte theme, and Bits UI peer.

npm install coss-svelte @coss-svelte/theme bits-ui

Usage

Import the Svelte component exports directly from the package.

import { Sheet, SheetClose, SheetContent, SheetDescription, SheetFooter, SheetHeader, SheetPanel, SheetPopup, SheetTitle, SheetTrigger } from "coss-svelte";

Anatomy

  • Sheet
  • SheetClose
  • SheetContent
  • SheetDescription
  • SheetFooter
  • SheetHeader
  • SheetPanel
  • SheetPopup
  • SheetTitle
  • SheetTrigger

API Reference

Sheet

A flyout that opens from the side of the screen, based on the dialog component.

PropTypeDefaultDescription
bind:openbooleanfalseOpen state for the popup or disclosure. Bind with `bind:open`.
side"top" | "right" | "bottom" | "left""right"Side from which the surface appears.
triggerstring"Open"Fallback trigger text rendered when custom children are not provided.
titlestring""Title text rendered by the component's built-in fallback layout.
descriptionstring""Supporting text rendered by the component's built-in fallback layout.
children : Snippet<[]>

Inherits from Bits UI Dialog.Root.

SheetClose

Renders a control that closes the parent surface.

children : Snippet<[]>child : Snippet<[{ props: Record<string, unknown> }]>bind:ref : HTMLElement | null

Inherits from Bits UI Dialog.Close.

SheetContent

Wraps the primary content for the parent component.

children : Snippet<[]>

Inherits from Svelte component attributes.

SheetDescription

Provides supporting copy for the parent component.

children : Snippet<[]>bind:ref : HTMLElement | null

Inherits from Bits UI Dialog.Description.

SheetFooter

Groups footer content and actions for the parent component.

children : Snippet<[]>

Inherits from Svelte component attributes.

SheetHeader

Groups heading content for the parent component.

children : Snippet<[]>

Inherits from Svelte component attributes.

SheetPanel

Renders the main panel surface for the parent component.

children : Snippet<[]>

Inherits from Svelte component attributes.

SheetPopup

Renders the floating or modal surface for the parent component.

PropTypeDefaultDescription
side"top" | "right" | "bottom" | "left""right"Side from which the surface appears.
portalProps{ disabled?: boolean; to?: PortalTarget }{}Configures the exact Bits Portal target (`to`) or renders inline when `disabled`.
children : Snippet<[]>bind:ref : HTMLElement | null

Inherits from Bits UI Dialog.Content.

SheetTitle

Names the parent surface or section.

children : Snippet<[]>bind:ref : HTMLElement | null

Inherits from Bits UI Dialog.Title.

SheetTrigger

Renders the control that opens, closes, or selects related content.

children : Snippet<[]>child : Snippet<[{ props: Record<string, unknown> }]>bind:ref : HTMLElement | null

Inherits from Bits UI Dialog.Trigger.

Implementation Details

Status
Stable
Foundation
compound
Category
Overlays & Popups
Particles
3