Components / Layout

Resizable nativelite

Panels split by draggable handles; each child is one panel.

Children
many
Loading the renderer…
Resizable rendered by the React renderer on Web
Web React
Resizable rendered by the SwiftUI renderer on iOS
iOS SwiftUI
Resizable rendered by the Compose renderer on Android
Android Compose
Resizable rendered by the gpui renderer on Desktop
Desktop gpui

View exponential-ui-resizable, painted by each native renderer.

direction · horizontal
direction · vertical
PropTypeDefaultDescription
directionresphorizontal | vertical"horizontal"Side by side or stacked.
sizesbind[number]–Percent per panel; bind it.
panels[panel]–Per-panel limits, by index.
handlebooleanfalseDraws a grip on each handle.
stylestyle–Extra Box styles for the group box (give it a height).
NameKind
on.changeevent: runs an action
Role
group
Semantics
group; each handle a focusable separator (aria-orientation = the line's, valuenow = the size of the panel before it, valuemin/max = its limits, controls = that panel), named $string.resize
KeysAction
Arrow keys on a handlemove it on screen by 10 points (Left/Right horizontal, Up/Down vertical; rtl: ArrowRight shrinks the first panel)
HomeEndthe panel before the handle to its min / max
Entercollapse or reopen a collapsible panel
Recipe parts
Resizable/rootResizable/panelResizable/handleResizable/grip
Keyed by
directionhandle:hover:pressed:focus:disabled:checked:open:selected:invalid:dragover

Themes · Write a theme