Draggable side panel with min/max constraints and drag-to-swap position
Panel content
| Prop | Type | Default | Description |
|---|---|---|---|
width | number | 320 | Initial width in px (bindable) |
minWidth | number | 280 | Minimum drag width in px |
maxWidth | number | 800 | Maximum drag width in px |
position | "left" | "right" | "right" | Which side the panel sits on |
enableResize | boolean | true | Enable drag-to-resize handle |
enableDragToSwap | boolean | true | Allow dragging to swap sides |
animateWidth | boolean | false | Animate width transitions |
onResize | (width: number) => void | - | Width change callback |
onSwap | (pos: "left" | "right") => void | - | Side-swap callback |