Skip to content

Commit a702268

Browse files
committed
feat: ESC for GenericModal.
1 parent 0acf9e2 commit a702268

File tree

1 file changed

+16
-0
lines changed

1 file changed

+16
-0
lines changed

src/components/GenericModal.js

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,22 @@ const GenericModal = ({ isOpen, onClose, title, children }) => {
99
if (!isOpen) {
1010
setIsClosing(false);
1111
}
12+
13+
const handleKeyDown = (event) => {
14+
if (event.key === 'Escape' && isOpen) {
15+
handleClose();
16+
}
17+
};
18+
19+
if (isOpen) {
20+
document.addEventListener('keydown', handleKeyDown);
21+
} else {
22+
document.removeEventListener('keydown', handleKeyDown);
23+
}
24+
25+
return () => {
26+
document.removeEventListener('keydown', handleKeyDown);
27+
};
1228
}, [isOpen]);
1329

1430
const handleClose = () => {

0 commit comments

Comments
 (0)