{#- chirp-ui: Split Panel Resizable split panel layout with draggable handle. Requires Alpine.js. Usage: from "chirpui/split_panel.html" import split_panel call split_panel() {% slot left %} {% end %} {% slot right %}
Content
{% end %} end call split_panel(direction="vertical", default_split=30, min_split=20, max_split=80) {% slot left %}Top pane{% end %} {% slot right %}Bottom pane{% end %} end -#} {% def split_panel(direction="horizontal", default_split=50, min_split=10, max_split=90, cls="") %} {% set dir_class = " chirpui-split-panel--vertical" if direction == "vertical" else "" %}
{ this.dragging = false; document.removeEventListener('mousemove', move); document.removeEventListener('mouseup', stop); }; document.addEventListener('mousemove', move); document.addEventListener('mouseup', stop); } }" :class="{ 'chirpui-split-panel--dragging': dragging }">
{% slot left %}
{% slot right %}
{% end %}