import React, { useState, useEffect, ReactNode } from "react"; import TopModalContext from "./top-modal.context"; export const TopModalProvider = ({ children }: { children: ReactNode }) => { const [topModal, setTopModal] = useState(null); useEffect(() => { if (!window.__CARBON_INTERNALS_MODAL_SETTER_LIST) { window.__CARBON_INTERNALS_MODAL_SETTER_LIST = []; } window.__CARBON_INTERNALS_MODAL_SETTER_LIST.push(setTopModal); return () => { window.__CARBON_INTERNALS_MODAL_SETTER_LIST = window.__CARBON_INTERNALS_MODAL_SETTER_LIST?.filter( (setter) => setter !== setTopModal, ); }; }, []); return ( {children} ); }; export default TopModalProvider;