From e13b993371256ac019584f50a2dfa959ceb8c2ec Mon Sep 17 00:00:00 2001 From: basssy Date: Tue, 8 Oct 2024 14:03:33 +0900 Subject: [PATCH] =?UTF-8?q?=EB=A1=9C=EA=B7=B8=EC=9D=B8=20=ED=9B=84=20?= =?UTF-8?q?=EB=A9=94=EC=9D=B8=20or=20=EB=B9=84=EB=B0=80=EB=B2=88=ED=98=B8?= =?UTF-8?q?=20=EB=B3=80=EA=B2=BD=ED=8C=9D=EC=97=85=20=EC=9E=91=EC=97=85=20?= =?UTF-8?q?=EB=AA=A8=EB=8B=AC=ED=8C=9D=EC=97=85=20props=20=EA=B4=80?= =?UTF-8?q?=EB=A0=A8=20=EC=A0=81=EC=9A=A9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/app/page.js | 2 +- src/components/auth/NewLogin.jsx | 4 ++++ src/components/common/modal/QModal.jsx | 13 +++++++++++-- src/components/header/Header.jsx | 2 +- src/store/modalAtom.js | 9 +++++++++ 5 files changed, 26 insertions(+), 4 deletions(-) diff --git a/src/app/page.js b/src/app/page.js index 25cd8640..767679b0 100644 --- a/src/app/page.js +++ b/src/app/page.js @@ -3,9 +3,9 @@ import { getSession } from '@/lib/authActions' export default async function Home() { const session = await getSession() - const mainPageProps = { isLoggedIn: session?.isLoggedIn, + pwdInitYn: session?.pwdInitYn, } return ( diff --git a/src/components/auth/NewLogin.jsx b/src/components/auth/NewLogin.jsx index cf56378e..5b5bc83a 100644 --- a/src/components/auth/NewLogin.jsx +++ b/src/components/auth/NewLogin.jsx @@ -19,6 +19,10 @@ export default function NewLogin() { const passwordRef = useRef(null) const router = useRouter() + useEffect(() => { + setOpen(false) + }, []) + useEffect(() => { if (passwordVisible) { passwordRef.current.type = 'text' diff --git a/src/components/common/modal/QModal.jsx b/src/components/common/modal/QModal.jsx index 1cf01915..cf98698b 100644 --- a/src/components/common/modal/QModal.jsx +++ b/src/components/common/modal/QModal.jsx @@ -4,16 +4,25 @@ import { useRecoilState, useRecoilValue } from 'recoil' import { Modal } from 'react-responsive-modal' -import { modalContent, modalState } from '@/store/modalAtom' +import { modalContent, modalState, modalProps } from '@/store/modalAtom' import 'react-responsive-modal/styles.css' export default function QModal() { const [open, setOpen] = useRecoilState(modalState) const children = useRecoilValue(modalContent) + const props = useRecoilValue(modalProps) + const { closeOnOverlayClick = true, closeOnEsc = true, showCloseIcon = true } = props return ( - setOpen(false)} center> + setOpen(false)} + center + closeOnOverlayClick={closeOnOverlayClick} + closeOnEsc={closeOnEsc} + showCloseIcon={showCloseIcon} + > {children} ) diff --git a/src/components/header/Header.jsx b/src/components/header/Header.jsx index 04fd56c6..65da6051 100644 --- a/src/components/header/Header.jsx +++ b/src/components/header/Header.jsx @@ -124,7 +124,7 @@ export default function Header(props) { } return ( - !(pathName.includes('login') || pathName.includes('join')) && ( + !(pathName.includes('login') || pathName.includes('join') || sessionState.pwdInitYn === 'N') && (
diff --git a/src/store/modalAtom.js b/src/store/modalAtom.js index a9a708ac..301b5b81 100644 --- a/src/store/modalAtom.js +++ b/src/store/modalAtom.js @@ -13,3 +13,12 @@ export const modalContent = atom({ ), }) + +export const modalProps = atom({ + key: 'modalProps', + default: { + closeOnOverlayClick: true, + closeOnEsc: true, + showCloseIcon: true, + }, +})