From 371aa609a612f0375d6f7e26ecbaaf93c1b9b5d3 Mon Sep 17 00:00:00 2001 From: Jung Sun A Date: Thu, 13 Aug 2026 10:29:35 +0900 Subject: [PATCH] =?UTF-8?q?feat:=20=EC=9C=84=EC=8B=9C=20=EC=A0=91=EA=B7=BC?= =?UTF-8?q?=20=EB=A1=9C=EA=B7=B8=EC=9D=B8=20=ED=99=94=EB=A9=B4=EC=97=90?= =?UTF-8?q?=EC=84=9C=20=EB=B9=84=ED=9A=8C=EC=9B=90=20=EB=A1=9C=EA=B7=B8?= =?UTF-8?q?=EC=9D=B8=20=EB=B2=84=ED=8A=BC=20=EC=88=A8=EA=B9=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- apps/web/src/app/login/_components/LoginButtons.tsx | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/apps/web/src/app/login/_components/LoginButtons.tsx b/apps/web/src/app/login/_components/LoginButtons.tsx index b4fca198..3a84c266 100644 --- a/apps/web/src/app/login/_components/LoginButtons.tsx +++ b/apps/web/src/app/login/_components/LoginButtons.tsx @@ -18,7 +18,9 @@ import KakaoIcon from '@/assets/icons/social/kakao.svg'; import Spinner from '@/components/spinner'; import { QUERY_ACTION } from '@/consts/queryAction'; import { useNativeLoginResult } from '@/hooks/useNativeLoginResult'; +import { cn } from '@/utils/cn'; import { getApiErrorMessage } from '@/utils/getApiErrorMessage'; +import { getRouteType } from '@/utils/getRouteType'; import { getLoginPath, getPostLoginRedirectPath, @@ -45,6 +47,10 @@ function LoginButtons({ redirect, action, errorCode, showAppleLogin }: LoginButt const router = useRouter(); const validRedirect = isValidLoginRedirectPath(redirect) ? redirect : null; + /** 회원 전용 경로(위시 등)로 진입 시 게스트 로그인은 의미가 없어 미노출 */ + const isMemberOnlyRedirect = + !!validRedirect && getRouteType(validRedirect.split('?')[0] ?? validRedirect) === 'MEMBER_ONLY'; + const [isGuestRefreshing, setIsGuestRefreshing] = useState(false); const [nativePendingProvider, setNativePendingProvider] = useState(null); const [webPendingProvider, setWebPendingProvider] = useState(null); @@ -172,7 +178,10 @@ function LoginButtons({ redirect, action, errorCode, showAppleLogin }: LoginButt type="button" disabled={isAnyPending} onClick={handleGuestLogin} - className="mt-7 flex cursor-pointer items-center gap-1.5 body-2-medium text-text-neutral-secondary underline underline-offset-2 disabled:opacity-50" + className={cn( + 'mt-7 flex cursor-pointer items-center gap-1.5 body-2-medium text-text-neutral-secondary underline underline-offset-2 disabled:opacity-50', + isMemberOnlyRedirect && 'invisible' + )} > {isGuestPending ? : null} 비회원으로 시작하기