import FormMessage from "@/components/form-message"; import { Card, CardContent, CardDescription, CardHeader, CardTitle, } from "@/components/ui/card"; import LoginForm from "@/features/auth/components/login-form"; /** * [로그인 페이지 컴포넌트] * * Modern UI with glassmorphism effect (유리 형태 디자인) * - 투명 배경 + 블러 효과로 깊이감 표현 * - 그라디언트 배경으로 생동감 추가 * - shadcn/ui 컴포넌트로 일관된 디자인 시스템 유지 * * @param searchParams - URL 쿼리 파라미터 (에러 메시지 전달용) */ export default async function LoginPage({ searchParams, }: { searchParams: Promise<{ message: string }>; }) { // URL에서 메시지 파라미터 추출 (로그인 실패 시 에러 메시지 표시) const { message } = await searchParams; return (
{/* 에러/성공 메시지 표시 영역 */} {/* URL 파라미터에 message가 있으면 표시됨 */} {/* ========== 로그인 카드 (Glassmorphism) ========== */} {/* bg-white/70: 70% 투명도의 흰색 배경 */} {/* backdrop-blur-xl: 배경 블러 효과 (유리 느낌) */} {/* ========== 카드 헤더 영역 ========== */} {/* 아이콘 배경: 그라디언트 원형 */}
👋
{/* 페이지 제목 */} 환영합니다! {/* 페이지 설명 */} 서비스 이용을 위해 로그인해 주세요.
{/* ========== 카드 콘텐츠 영역 (폼) ========== */}
); }