/** * Login Page Component * @description Main authentication page with 2-column responsive layout. * Left column displays branding/marketing content, right column contains auth form. * Supports both Sign In and Register modes with animated transitions. * Includes Forgot Password modal with OTP verification. * Follows AgenticIQ Enterprise Coding Guidelines v1.0 */ import { useState } from 'react'; import agenticiqLogo from '@/assets/images/logo/AgenticIQLogo.svg'; import topRightGlow from '@/assets/images/backgrounds/top-right-glow.svg'; import bottomLeftWave1 from '@/assets/images/backgrounds/bottom-left-wave1.svg'; import bottomLeftWave2 from '@/assets/images/backgrounds/bottom-left-wave2.svg'; import logoGlowBg from '@/assets/images/backgrounds/logo-glow-bg.svg'; import { AuthFormCard, ForgotPasswordModal } from '@/components/auth'; /** * Register form data interface */ interface RegisterFormData { firstName: string; lastName: string; email: string; password: string; } /** * LoginPage component * @description Full-page login layout with responsive 2-column grid structure. * Mobile-first design that stacks columns on smaller screens. * @returns {JSX.Element} LoginPage element */ export function LoginPage(): JSX.Element { const [showForgotPwd, setShowForgotPwd] = useState(false); /** * Handle sign in form submission * @param {string} email - User email address * @param {string} password - User password */ const handleSignIn = (email: string, password: string): void => { // TODO(AUTH-001): Implement actual sign in API call void Promise.resolve({ email, password }); }; /** * Handle register form submission * @param {RegisterFormData} data - Registration form data */ const handleRegister = (data: RegisterFormData): void => { // TODO(AUTH-002): Implement actual registration API call void Promise.resolve(data); }; /** * Handle Google OAuth authentication */ const handleGoogleAuth = (): void => { // TODO(AUTH-003): Implement Google OAuth flow }; /** * Handle Azure OAuth authentication */ const handleAzureAuth = (): void => { // TODO(AUTH-004): Implement Azure OAuth flow }; /** * Open forgot password modal */ const handleForgotPasswordClick = (): void => { setShowForgotPwd(true); }; /** * Close forgot password modal */ const handleForgotPasswordClose = (): void => { setShowForgotPwd(false); }; /** * Handle forgot password email submission * @param {string} email - Email for password recovery */ const handleForgotPasswordSubmit = (email: string): void => { // TODO(AUTH-005): Implement password recovery API call void Promise.resolve(email); }; /** * Handle OTP verification submission * @param {string} otp - 6-digit OTP code */ const handleOtpVerify = (otp: string): void => { // TODO(AUTH-006): Implement OTP verification API call void Promise.resolve(otp); }; return (
Deploy intelligent agents that automate complex workflows, enhance decision-making, and scale your operations. Built for enterprise reliability with seamless integration capabilities.
> ); } /** * LeftColumn component * @description Empty container for left side content in the grid layout. * Text content is positioned absolutely on the page level for precise control. * @returns {JSX.Element} Left column container */ function LeftColumn(): JSX.Element { return (