import { useModalStore } from "@/stores/useModalStore"; import { useEffect } from "react"; import { createPortal } from "react-dom"; export function ModalContainer() { const { modal, setModal } = useModalStore(); useEffect(() => { const listener = (e: KeyboardEvent) => { if (e.key === "Escape") setModal(null); }; document.addEventListener("keydown", listener); return () => { document.removeEventListener("keydown", listener); }; }, [setModal]); const jsx = modal ? (
{modal}
) : null; return createPortal(jsx, document.body); }