import { ModalExitCode, ModalService, ModalType } from "renderer/services/modale.service"; import { AnimatePresence, motion } from "framer-motion"; import { LoginModal } from "./modal-types/login-modal.component"; import { GuardModal } from "./modal-types/guard-modal.component"; import { UninstallModal } from "./modal-types/uninstall-modal.component"; import { InstallationFolderModal } from "./modal-types/installation-folder-modal.component"; import { EditVersionModal } from "./modal-types/edit-version-modal.component"; import { useObservable } from "renderer/hooks/use-observable.hook"; import { useThemeColor } from "renderer/hooks/use-theme-color.hook"; export function Modal() { const modalSevice = ModalService.getInsance(); const modalType = useObservable(modalSevice.modalType$); const {firstColor, secondColor} = useThemeColor(); return ( {modalType && (
modalSevice.resolve({exitCode: ModalExitCode.NO_CHOICE})} className="absolute top-0 bottom-0 right-0 left-0 bg-black" initial={{opacity: 0}} animate={{opacity: modalType && .60}} exit={{opacity: 0}} transition={{duration: .2}}/>
{modalType === ModalType.STEAM_LOGIN && } {modalType === ModalType.GUARD_CODE && } {modalType === ModalType.UNINSTALL && } {modalType === ModalType.INSTALLATION_FOLDER && } {modalType === ModalType.EDIT_VERSION && } {modalType === ModalType.CLONE_VERSION && }
)}
) }