o2o-negosium-original/frontend/src/pages/LoginPage.tsx

41 lines
1.3 KiB
TypeScript

import { Navigate } from 'react-router'
import { tokenStorage } from '@/apis'
import { Logo } from '@/components'
import { LoginForm } from '@/features/auth'
export function LoginPage() {
// 이미 로그인된 상태면 목록으로
if (tokenStorage.hasToken()) {
return <Navigate to="/list" replace />
}
return (
<main className="flex min-h-svh w-full items-center justify-center bg-surface px-6">
<div className="flex w-full max-w-sm flex-col items-center gap-6">
{/* 브랜드 락업 */}
<div className="flex flex-col items-center gap-2">
<Logo size="lg" />
<p className="text-[13px] font-medium tracking-[-0.26px] text-neutral-60">
아이마켓코리아 B2B 구매협상 솔루션 · 공급사 포털
</p>
</div>
{/* 로그인 카드 */}
<div className="w-full rounded-3xl border border-border/60 bg-white p-8 shadow-[0_4px_24px_rgba(0,0,0,0.04)]">
<h1 className="mb-6 text-center text-xl font-bold tracking-[-0.4px] text-neutral-90">
로그인
</h1>
<LoginForm />
</div>
{/* 푸터 */}
<p className="text-xs font-medium text-neutral-60">
문의: 헬프데스크 010-0000-0000 · o2odev@o2o.kr
</p>
</div>
</main>
)
}
export default LoginPage