sheengemologic ui
All components

ResizablePanel

Defines a bounded, optionally collapsible pane inside Resizable.@gemologic/sheen · navigation

Playground

This example has no scalar controls. Its validated source remains interactive below.
Files
Preview
<Resizable><ResizablePanel index={0} minSize={0.2}>Files</ResizablePanel><ResizableHandle index={0} label="Resize files and preview" /><ResizablePanel index={1}>Preview</ResizablePanel></Resizable>

Variant matrix

Bounded pane
Files
Preview

Anatomy

Package
@gemologic/sheen
Source
packages/ui/src/primitives/Resizable.tsx
Tokens
  • --sheen-color-bg
  • --sheen-space-block-md
  • --sheen-space-inline-md

Accessibility

Role: region controlled by adjacent separatorKeyboard: No component-owned keys

Do

  • Keep important controls reachable at the minimum size.

Do not

  • Do not use unstable panel IDs across refreshes.

Generated props

NameTypeDefaultDescription
children *JSX.ElementRetained panel content.
index *numberStable zero-based index into the root initial-size snapshot.
panelIdstringStable ID used by the separator relationship.
initialSizenumberPanel-specific initial fraction, overriding the root entry.
minSizenumberMinimum fraction allowed during resize.
maxSizenumberMaximum fraction allowed during resize.
collapsiblebooleanfalseAllows the panel to collapse past its threshold.
collapsedSizenumber0Fraction retained while collapsed.
collapseThresholdnumber0.05Required overdrag fraction before collapse.
onResize(size: number) => voidReports current panel fraction.
onCollapse(size: number) => voidReports the final collapsed fraction.
onExpand(size: number) => voidReports the restored expanded fraction.
Native Solid/HTML attributes remain available and are omitted from this authored-prop view.