// Copyright 2024, Command Line Inc. // SPDX-License-Identifier: Apache-2.0 import { atoms, globalStore } from "@/store/global"; import { modalsModel } from "@/store/modalmodel"; import * as jotai from "jotai"; import { useEffect } from "react"; import { getModalComponent } from "./modalregistry"; import { TosModal } from "./tos"; const ModalsRenderer = () => { const clientData = jotai.useAtomValue(atoms.client); const [modals] = jotai.useAtom(modalsModel.modalsAtom); const rtn: JSX.Element[] = []; for (const modal of modals) { const ModalComponent = getModalComponent(modal.displayName); if (ModalComponent) { rtn.push(); } } if (!clientData.tosagreed) { rtn.push(); } useEffect(() => { globalStore.set(atoms.modalOpen, rtn.length > 0); }); return <>{rtn}; }; export { ModalsRenderer };