From 9fcd63d17785291a919db893f7b2456d4833756d Mon Sep 17 00:00:00 2001 From: MathieuG-P <40181755+Zagrios@users.noreply.github.com> Date: Sat, 25 Jun 2022 03:49:08 +0200 Subject: [PATCH] modals rework --- .../modal-types/guard-modal.component.tsx | 3 +- .../modal-types/login-modal.component.tsx | 3 +- .../modal-types/uninstall-modal.component.tsx | 3 +- .../components/modal/modal.component.tsx | 38 ++++++++++++++----- 4 files changed, 31 insertions(+), 16 deletions(-) diff --git a/src/renderer/components/modal/modal-types/guard-modal.component.tsx b/src/renderer/components/modal/modal-types/guard-modal.component.tsx index 9f83c0fb..75d637c5 100644 --- a/src/renderer/components/modal/modal-types/guard-modal.component.tsx +++ b/src/renderer/components/modal/modal-types/guard-modal.component.tsx @@ -14,8 +14,7 @@ export function GuardModal({resolver}: {resolver: (x: ModalResponse) => void}) { } return ( -
{e.preventDefault(); login();}}> - + {e.preventDefault(); login();}}>

Steam Guard

diff --git a/src/renderer/components/modal/modal-types/login-modal.component.tsx b/src/renderer/components/modal/modal-types/login-modal.component.tsx index f6f3db55..190f428c 100644 --- a/src/renderer/components/modal/modal-types/login-modal.component.tsx +++ b/src/renderer/components/modal/modal-types/login-modal.component.tsx @@ -16,8 +16,7 @@ export function LoginModal({resolver}: {resolver: (x: ModalResponse) => void}) { } return ( - {e.preventDefault(); loggin();}}> - + {e.preventDefault(); loggin();}}>

Steam Login

diff --git a/src/renderer/components/modal/modal-types/uninstall-modal.component.tsx b/src/renderer/components/modal/modal-types/uninstall-modal.component.tsx index f440c7e0..640a6a69 100644 --- a/src/renderer/components/modal/modal-types/uninstall-modal.component.tsx +++ b/src/renderer/components/modal/modal-types/uninstall-modal.component.tsx @@ -9,8 +9,7 @@ export function UninstallModal({resolver}: {resolver: (x: ModalResponse) => void const version = ModalService.getInsance().getModalData(); return ( - {e.preventDefault(); resolver({exitCode: ModalExitCode.COMPLETED})}}> - + {e.preventDefault(); resolver({exitCode: ModalExitCode.COMPLETED})}}>

Uninstall

Are you sure you want to uninstall BeatSaber {version.BSVersion} ? You will have to re-download it to play it.

diff --git a/src/renderer/components/modal/modal.component.tsx b/src/renderer/components/modal/modal.component.tsx index c871aa78..df51e74e 100644 --- a/src/renderer/components/modal/modal.component.tsx +++ b/src/renderer/components/modal/modal.component.tsx @@ -1,32 +1,50 @@ import { ModalExitCode, ModalService, ModalType } from "renderer/services/modale.service"; import { useEffect, useState } from "react" +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"; export function Modal() { const [modalType, setModalType] = useState(null as ModalType); + const [modalYOut, setModalYOut] = useState(window.innerHeight); const modalSevice = ModalService.getInsance(); + const handleResize = () => setModalYOut(window.innerHeight); + useEffect(() => { modalSevice.modalType$.subscribe(type => { setModalType(type); - }) + }); + + window.addEventListener("resize", handleResize); + + return () => { + window.removeEventListener("resize", handleResize); + } }, []) - - return ( -
- modalSevice.resolve({exitCode: ModalExitCode.NO_CHOICE})} className={`absolute top-0 bottom-0 right-0 left-0 transition-opacity bg-black ${modalType ? "opacity-60" : "opacity-0"}`}> -
- {modalType === ModalType.STEAM_LOGIN && } - {modalType === ModalType.GUARD_CODE && } - {modalType === ModalType.UNINSTALL && } + 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 && } +
+
-
+ )} + ) }