diff --git a/src/components/Modal/Modal.tsx b/src/components/Modal/Modal.tsx index e40b574..fbd30f3 100644 --- a/src/components/Modal/Modal.tsx +++ b/src/components/Modal/Modal.tsx @@ -89,6 +89,20 @@ export function Modal({ setTimeout(onClose, 250); }; + useEffect(() => { + const onKeyPress = (event: Event) => { + const e = event as KeyboardEvent; + if (e.key === "Escape") { + setInternalOpen(false); + setTimeout(onClose, 250); + } + }; + + document.addEventListener("keydown", onKeyPress); + + return () => document.removeEventListener("keydown", onKeyPress); + }, [setInternalOpen, onClose]); + return (