Drawer · side panel

Slides in from an edge; backdrop / ESC close it.

Usage

import { signal } from "./index.js";
import { Drawer } from "./components/drawer.js";

const open = signal(false);

// side: "right" (default) | "left". Closes on backdrop click + ESC.
Drawer({
  open,
  side: "right",
  title: "Filters",
  children: html`<p>Any content — forms, details, nav.</p>`,
  footer: html`${Button({ label: "Apply", onClick: () => open.set(false) })}`,
})