diff --git a/src/pages/LoginPage/LoginPage.stories.tsx b/src/pages/LoginPage/LoginPage.stories.tsx new file mode 100644 index 0000000..84f6202 --- /dev/null +++ b/src/pages/LoginPage/LoginPage.stories.tsx @@ -0,0 +1,15 @@ +import type { Meta, StoryObj } from '@storybook/react-vite'; + +import { LoginPage } from './LoginPage'; + +const meta = { + component: LoginPage, +} satisfies Meta; + +export default meta; + +type Story = StoryObj; + +export const Default: Story = { + args: {} +}; \ No newline at end of file diff --git a/src/pages/LoginPage/LoginPage.tsx b/src/pages/LoginPage/LoginPage.tsx new file mode 100644 index 0000000..17aab3e --- /dev/null +++ b/src/pages/LoginPage/LoginPage.tsx @@ -0,0 +1,43 @@ +import {useEffect} from "react"; +import {LoginForm} from "../../components/features/auth/LoginForm/LoginForm.tsx"; + +/** + * LoginPage + * + * This page component renders the login screen of the application. + * It provides a centered layout and hosts the LoginForm component. + * + * Responsibilities: + * - Display the login form in a centered layout + * - Act as a container for authentication-related UI + * + * Notes: + * - This component does not accept any props. + * - Authentication logic and routing are intentionally excluded. + */ + +export function LoginPage() { + + // Step 1: Dummy login handler + const handleLogin = () => { + // later: API call, auth context, redirect + console.log("Login Clicked"); + } + // Step 2: Dummy error handler + const handleError = () => { + console.error("Login Failed"); + } + useEffect(() => { + console.log("LoginPage Mounted"); + }, []); + return (
+ +
); +} \ No newline at end of file