- {/* 💡 1. 라벨 영역: label 프롭이 있을 때만 28px 공간을 차지함 */}
{label && (
-
-
- {label}
-
-
+
+ {label}
+
)}
- {/* 💡 2. 입력창 영역: 고정 48px */}
-
- {/* 💡 3. 메시지 및 하단 여백 영역 */}
-
- {/* 에러나 성공 메시지가 있을 때만 공간 차지 (mt-1.5 + h-18) */}
- {error || success ? (
-
-
- {error || success}
-
+ {(timer || rightElement) && (
+
+ {timer && (
+
+ {timer}
+
+ )}
+ {rightElement}
- ) : null}
-
- {/* 💡 핵심: 메시지가 없을 때 isDouble 여부에 따라 다음 인풋과의 간격(Margin) 결정 */}
- {!error && !success &&
}
-
- {/* 메시지가 있더라도 이중 확인 칸이라면 좁은 간격 유지 */}
- {(error || success) &&
}
+ )}
+
+ {error || success ? (
+
+
+ {error || success}
+
+
+ ) : (
+
+ )}
);
};
diff --git a/src/components/login/BaseLoginContainer.tsx b/src/components/login/BaseLoginContainer.tsx
index 9e8d88d..784b23c 100644
--- a/src/components/login/BaseLoginContainer.tsx
+++ b/src/components/login/BaseLoginContainer.tsx
@@ -1,10 +1,10 @@
import React from 'react';
import { cn } from '@/utils/cn';
-import { Typography } from '@/components/Typography';
+import { Typography } from '@/components/typography';
import AuthInput from '@/components/login/AuthInput';
import LoginButton from '@/components/buttons/LoginButton';
-import { useAuthForm } from '@/hooks/useAuthForm';
-
+import { useAuthForm } from '@/hooks/SignUp/useAuthForm';
+import { useNavigate } from 'react-router-dom';
interface BaseLoginContainerProps {
className?: string;
onLogin?: (id: string, pw: string) => void;
@@ -12,7 +12,7 @@ interface BaseLoginContainerProps {
const BaseLoginContainer: React.FC
= ({ className, onLogin }) => {
const auth = useAuthForm();
-
+ const navigate = useNavigate();
const isFormValid = auth.id.length > 0 && auth.pw.length > 0 && !auth.idError && !auth.pwError;
return (
@@ -79,7 +79,7 @@ const BaseLoginContainer: React.FC = ({ className, onLo
비밀번호 찾기
-