From 8b2fd1ca507816199f5c9cae540418865de8f60e Mon Sep 17 00:00:00 2001 From: Antoine M Date: Tue, 14 May 2024 17:00:27 +0200 Subject: [PATCH] handling inclosable param --- src/components/ui/Modal.jsx | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/src/components/ui/Modal.jsx b/src/components/ui/Modal.jsx index 74ab156..f16c2e2 100644 --- a/src/components/ui/Modal.jsx +++ b/src/components/ui/Modal.jsx @@ -1,7 +1,7 @@ import React from "react"; import { useEffect, useRef } from "react"; -export default function Modal({ open, onClose, children, className, id, closeModal }) { +export default function Modal({ open, onClose, children, className, id, closeModal, unclosable }) { const modalRef = useRef(null); useEffect(() => { @@ -15,6 +15,14 @@ export default function Modal({ open, onClose, children, className, id, closeMod else el.close(); }, [open]); + useEffect(() => { + if (!unclosable) return; + const { current: currentElement } = modalRef; + currentElement.addEventListener("cancel", (event) => { + event.preventDefault(); + }); + }, [unclosable]); + return ( {children}