diff --git a/src/components/layout/CommunityMeetingsCardGrid/index.tsx b/src/components/layout/CommunityMeetingsCardGrid/index.tsx index 31615cf0c2..96eab3a16b 100644 --- a/src/components/layout/CommunityMeetingsCardGrid/index.tsx +++ b/src/components/layout/CommunityMeetingsCardGrid/index.tsx @@ -72,18 +72,34 @@ function CommunityMeetingsCardGrid({ cards }) { const [modalHeader, setModalHeader] = useState(undefined); const [meetinNotesMD, setMeetinNotesMD] = useState(undefined); const meetingMinutesRef = [useRef(), useRef()]; - const modalRef = useRef(); + const modalRef = useRef(null); toggleModalOpen(modalRef, () => setIsModalOpen(false)); + useEffect(() => { + const dialogEl = modalRef.current; + if (!dialogEl) { + return; + } + if (isModalOpen && !dialogEl.open) { + dialogEl.showModal(); + } else if (!isModalOpen && dialogEl.open) { + dialogEl.close(); + } + }, [isModalOpen]); + const prepareModalHeader = (text: string, date: string) => { const modalHeader: ReactNode = (

{text}

{date}

-
setIsModalOpen(false)}> +
+
); setModalHeader(modalHeader); @@ -222,8 +238,8 @@ function CommunityMeetingsCardGrid({ cards }) { /> + ref={modalRef} + onClose={() => setIsModalOpen(false)}>
{modalHeader}