"use client"; import { useEffect } from "react"; interface Props { title: string; open: boolean; onClose: () => void; children: React.ReactNode; } export function AdminDialog({ title, open, onClose, children }: Props) { useEffect(() => { function onKey(e: KeyboardEvent) { if (e.key === "Escape") onClose(); } if (open) document.addEventListener("keydown", onKey); return () => document.removeEventListener("keydown", onKey); }, [open, onClose]); if (!open) return null; return (