refactor: restructure authentication components and routes
All checks were successful
Push to Helm Chart Repository / build (push) Successful in 13s

- Removed the old reset password form component and replaced it with a new implementation.
- Updated routing paths for login, registration, and reset password to be under a common auth path.
- Added new login and registration pages with corresponding forms.
- Introduced a common auth header component for consistent branding across auth pages.
- Implemented a current logged-in user display component.
- Enhanced the register form to include email verification and captcha.
- Updated translations for new and modified components.
- Refactored the navigation bar to include user avatar dropdown and improved menu structure.
This commit is contained in:
2025-09-23 02:21:03 +08:00
parent 0f7cbb385a
commit 349cf5a5b7
23 changed files with 380 additions and 112 deletions

View File

@ -0,0 +1,40 @@
import { Suspense } from 'react'
import { AuthHeader } from '@/components/auth/common/auth-header'
import { RegisterForm } from '@/components/auth/register/register-form'
function PageContent() {
return (
<div className="bg-muted flex min-h-svh flex-col items-center justify-center gap-6 p-6 md:p-10">
<div className="flex w-full max-w-sm flex-col gap-6">
<AuthHeader />
<RegisterForm />
</div>
</div>
)
}
export default function Page() {
return (
<Suspense fallback={(
<div className="bg-muted flex min-h-svh flex-col items-center justify-center gap-6 p-6 md:p-10">
<div className="flex w-full max-w-sm flex-col gap-6">
<div className="animate-pulse">
<div className="flex items-center gap-3 self-center mb-6">
<div className="size-10 bg-gray-300 rounded-full"></div>
<div className="h-8 bg-gray-300 rounded w-32"></div>
</div>
<div className="bg-white rounded-lg p-6 space-y-4">
<div className="h-4 bg-gray-300 rounded w-3/4"></div>
<div className="h-4 bg-gray-300 rounded w-1/2"></div>
<div className="h-10 bg-gray-300 rounded"></div>
<div className="h-10 bg-gray-300 rounded"></div>
</div>
</div>
</div>
</div>
)}
>
<PageContent />
</Suspense>
)
}