Skip to content
Components
@app-studio/components

Resizable

A flexible container that allows users to resize its content areas by dragging adjustable dividers.

View component source

Import

ts
import { Resizable } from '@app-studio/components';

New to the library? Complete installation and provider setup first.

Interactive examples

Try the component, then open Code to copy the complete example.

INTERACTIVE EXAMPLE

Loading preview…

Props

Required props are marked below. A dash indicates an unspecified default. Design system configuration can override implementation defaults.

Scroll horizontally to see every column.

Resizable
PropTypeDefaultDescription
children Required
View typestring | number | bigint | boolean | React.ReactElement<unknown, string | React.JSXElementConstructor<any>> | Iterable<React.ReactNode> | React.ReactPortal | Promise<string | number | bigint | boolean | React.ReactPortal | React.ReactElement<unknown, string | React.JSXElementConstructor<any>> | Iterable<React.ReactNode> | null | undefined> | null
—Content rendered inside the component.Source
orientationOrientation
"horizontal""vertical"
—See the type and source declaration for this property.Source
sizeSize
"sm""md""lg"
—Size preset for the component.Source
variantVariant
"default""subtle""prominent"
—Visual treatment of the component.Source
defaultSizes(string | number)[]—See the type and source declaration for this property.Source
onSizesChange((sizes: number[]) => void)—See the type and source declaration for this property.Source
minSizenumber—See the type and source declaration for this property.Source
maxSizenumber—See the type and source declaration for this property.Source
collapsibleboolean—See the type and source declaration for this property.Source
autoSaveIdstring—See the type and source declaration for this property.Source
storageResizableStorage—See the type and source declaration for this property.Source
keyboardResizeBynumber—See the type and source declaration for this property.Source
viewsResizableStyles—Style overrides for the named internal parts.Source

Resizable.Panel

Scroll horizontally to see every column.

Resizable.Panel
PropTypeDefaultDescription
children Required
View typestring | number | bigint | boolean | React.ReactElement<unknown, string | React.JSXElementConstructor<any>> | Iterable<React.ReactNode> | React.ReactPortal | Promise<string | number | bigint | boolean | React.ReactPortal | React.ReactElement<unknown, string | React.JSXElementConstructor<any>> | Iterable<React.ReactNode> | null | undefined> | null
—Content rendered inside the component.Source
id Requiredstring—See the type and source declaration for this property.Source
defaultSizestring | number—See the type and source declaration for this property.Source
minSizenumber—See the type and source declaration for this property.Source
maxSizenumber—See the type and source declaration for this property.Source
collapsibleboolean—See the type and source declaration for this property.Source
defaultCollapsedboolean—See the type and source declaration for this property.Source
onCollapseChange((collapsed: boolean) => void)—See the type and source declaration for this property.Source
views{ panel?: ViewProps; collapsedPanel?: ViewProps; }—Style overrides for the named internal parts.Source

Resizable.Handle

Scroll horizontally to see every column.

Resizable.Handle
PropTypeDefaultDescription
id Requiredstring—See the type and source declaration for this property.Source
positionHandlePosition—Position of the element or notification.Source
disabledboolean—Disables user interaction.Source
withVisualIndicatorboolean—See the type and source declaration for this property.Source
withCollapseButtonboolean—See the type and source declaration for this property.Source
collapseTargetstring—See the type and source declaration for this property.Source
views{ handle?: ViewProps; handleIcon?: ViewProps; collapseIcon?: ViewProps; }—Style overrides for the named internal parts.Source

For shared layout, color, and responsive properties, read Styling & composition and Responsive layouts. Additional native element attributes depend on the target platform.

Usage guidance

  • Give controls a visible label or an accessible name, and verify keyboard interaction. See Accessibility.
  • For controlled inputs, update the value from the callback shown in the props table. Keep application state in your component or form library.
  • These previews run in the browser. Check React Native setup for platform requirements and differences.
Browse documentation source