From 90b5d894c8fc23a2926808f57a3c0be0f65141c2 Mon Sep 17 00:00:00 2001 From: MuhammadKhalilzadeh Date: Wed, 22 May 2024 17:41:24 +0330 Subject: [PATCH] Login page ui implemented --- Client/src/App.jsx | 21 +++-- .../BackgroundPattern/BackgroundPattern.jsx | 9 ++ .../BackgroundPattern/backgroundPattern.css | 7 ++ Client/src/Components/Checkbox/Checkbox.css | 21 +++++ Client/src/Components/Checkbox/Checkbox.jsx | 13 +++ .../TextFields/Email/emailTextField.css | 4 +- .../TextFields/Password/PasswordTextField.jsx | 89 ++++++++++++++++++ .../TextFields/Password/passwordTextField.css | 39 ++++++++ Client/src/Pages/Login/index.css | 87 ++++++++++++++++- Client/src/Pages/Login/index.jsx | 69 ++++++++++++-- Client/src/assets/Images/Google.png | Bin 0 -> 853 bytes Client/src/assets/Images/Logomark.png | Bin 0 -> 5495 bytes .../Images/background_pattern_decorative.png | Bin 0 -> 30372 bytes 13 files changed, 339 insertions(+), 20 deletions(-) create mode 100644 Client/src/Components/BackgroundPattern/BackgroundPattern.jsx create mode 100644 Client/src/Components/BackgroundPattern/backgroundPattern.css create mode 100644 Client/src/Components/Checkbox/Checkbox.css create mode 100644 Client/src/Components/Checkbox/Checkbox.jsx create mode 100644 Client/src/Components/TextFields/Password/PasswordTextField.jsx create mode 100644 Client/src/Components/TextFields/Password/passwordTextField.css create mode 100644 Client/src/assets/Images/Google.png create mode 100644 Client/src/assets/Images/Logomark.png create mode 100644 Client/src/assets/Images/background_pattern_decorative.png diff --git a/Client/src/App.jsx b/Client/src/App.jsx index 94ef75111..3c2c494b0 100644 --- a/Client/src/App.jsx +++ b/Client/src/App.jsx @@ -1,23 +1,26 @@ -import { Routes, Route } from "react-router-dom"; -import "./App.css"; -import NotFound from "./Pages/NotFound"; +// import { Routes, Route } from "react-router-dom"; +// import "./App.css"; +// import NotFound from "./Pages/NotFound"; +// import Login from "./Pages/Login"; +// import Register from "./Pages/Register"; +// import HomeLayout from "./Layouts/HomeLayout"; +// import Demo from "./Pages/Demo/Demo"; +// import PlayGround from "./Pages/PlayGround/PlayGround"; + import Login from "./Pages/Login"; -import Register from "./Pages/Register"; -import HomeLayout from "./Layouts/HomeLayout"; -import Demo from "./Pages/Demo/Demo"; -import PlayGround from "./Pages/PlayGround/PlayGround"; function App() { return ( <> - + {/* } /> } /> } /> } /> } /> } /> - + */} + ); } diff --git a/Client/src/Components/BackgroundPattern/BackgroundPattern.jsx b/Client/src/Components/BackgroundPattern/BackgroundPattern.jsx new file mode 100644 index 000000000..8b7a69a26 --- /dev/null +++ b/Client/src/Components/BackgroundPattern/BackgroundPattern.jsx @@ -0,0 +1,9 @@ +import "./backgroundPattern.css"; +import React from "react"; +import Pattern from "../../assets/Images/background_pattern_decorative.png"; + +const BackgroundPattern = () => { + return Pattern; +}; + +export default BackgroundPattern; diff --git a/Client/src/Components/BackgroundPattern/backgroundPattern.css b/Client/src/Components/BackgroundPattern/backgroundPattern.css new file mode 100644 index 000000000..eb68098e4 --- /dev/null +++ b/Client/src/Components/BackgroundPattern/backgroundPattern.css @@ -0,0 +1,7 @@ +.background-pattern { + position: absolute; + top: 10%; + left: 50%; + transform: translate(-50%, -50%); + z-index: -1; +} diff --git a/Client/src/Components/Checkbox/Checkbox.css b/Client/src/Components/Checkbox/Checkbox.css new file mode 100644 index 000000000..b8b092276 --- /dev/null +++ b/Client/src/Components/Checkbox/Checkbox.css @@ -0,0 +1,21 @@ +.checkbox-holder { + height: 20px; + display: flex; + align-items: center; +} + +.checkbox { + width: 13px; + height: 13px; + margin: 0; + padding: 0; + cursor: pointer; +} + +.checkbox-label { + margin-left: 5px; + font-size: 14px; + color: #344054; + font-weight: 600; + cursor: pointer; +} diff --git a/Client/src/Components/Checkbox/Checkbox.jsx b/Client/src/Components/Checkbox/Checkbox.jsx new file mode 100644 index 000000000..228091401 --- /dev/null +++ b/Client/src/Components/Checkbox/Checkbox.jsx @@ -0,0 +1,13 @@ +import React from "react"; +import "./Checkbox.css"; + +const CheckBox = () => { + return ( +
+ + +
+ ); +}; + +export default CheckBox; diff --git a/Client/src/Components/TextFields/Email/emailTextField.css b/Client/src/Components/TextFields/Email/emailTextField.css index ff38a29df..35c8a9216 100644 --- a/Client/src/Components/TextFields/Email/emailTextField.css +++ b/Client/src/Components/TextFields/Email/emailTextField.css @@ -4,7 +4,7 @@ .email-text-field { position: relative; - margin: 10px 20px; + margin-top: 10px; } #outlined-basic { @@ -15,8 +15,6 @@ } .email-text-field-title { - margin: 0 20px; - margin-top: 30px; font-size: 13px; color: var(--textfield-color-0); font-weight: bold; diff --git a/Client/src/Components/TextFields/Password/PasswordTextField.jsx b/Client/src/Components/TextFields/Password/PasswordTextField.jsx new file mode 100644 index 000000000..61c612d13 --- /dev/null +++ b/Client/src/Components/TextFields/Password/PasswordTextField.jsx @@ -0,0 +1,89 @@ +import "./passwordTextField.css"; +import React, { useState } from "react"; +import { InputAdornment, TextField } from "@mui/material"; +import ErrorOutlineIcon from "@mui/icons-material/ErrorOutline"; +import HelpOutlineIcon from "@mui/icons-material/HelpOutline"; +import { useTheme } from "@mui/material"; + +/** + * @component + * @param {Object} props + * @param {string} props.id - Unique ID for the text field (optional) + * @param {string} props.label - The label text displayed above the text field (optional) + * @param {"standard" | "outlined" | "filled"} props.variant - The variant of the text field (e.g., "outlined") (optional) + * @param {string} props.placeholder - The placeholder text displayed within the text field (optional) + * @param {"error" | "help"} [props.icon] - The type of icon to display (error or help) (optional) + * @param {string} props.helperText - The helper text displayed below the text field (optional) + * @param {boolean} props.error - A flag indicating if the text field has an error (required) + * @returns {JSX.Element} - Renders the password text field component with dynamic icon display + */ +const PasswordTextField = ({ + id, + label, + variant, + placeholder, + icon, + helperText, + error, +}) => { + const theme = useTheme(); + + const fontLookup = { + default: theme.font.default.font, + }; + + const fontFamily = fontLookup["default"]; + + const [showIcon, setShowIcon] = useState(false); + + const handleMouseEnter = () => setShowIcon(true); + const handleMouseLeave = () => setShowIcon(false); + + return ( +
+
Password
+
+ +
+ {error && showIcon && ( + + )} + {error && !showIcon && ( + + )} + {!error && showIcon && ( + + )} +
+ + ), + }} + helperText={helperText} + onMouseEnter={handleMouseEnter} + onMouseLeave={handleMouseLeave} + /> +
+
+ ); +}; + +export default PasswordTextField; diff --git a/Client/src/Components/TextFields/Password/passwordTextField.css b/Client/src/Components/TextFields/Password/passwordTextField.css new file mode 100644 index 000000000..01ea94445 --- /dev/null +++ b/Client/src/Components/TextFields/Password/passwordTextField.css @@ -0,0 +1,39 @@ +:root { + --textfield-color-0: #344054; +} + +.password-text-field { + position: relative; + margin-top: 10px; +} + +#outlined-basic { + width: 320px; + height: 14px; + font-size: 13px; + padding: 8px 12px; +} + +.password-text-field-title { + font-size: 13px; + color: var(--textfield-color-0); + font-weight: bold; +} + +#outlined-basic-helper-text { + margin-left: 0; + margin-top: 10px; + font-size: 11px; +} + +.text-field-icon { + width: 16px; + height: 16px; +} + +.icon-holder { + width: 16px; + height: 16px; + padding: 0; + margin: 0; +} diff --git a/Client/src/Pages/Login/index.css b/Client/src/Pages/Login/index.css index 7c7776653..20b90831d 100644 --- a/Client/src/Pages/Login/index.css +++ b/Client/src/Pages/Login/index.css @@ -1 +1,86 @@ -/*Login styles*/ \ No newline at end of file +:root { + --spacing-1: 15px; + --spacing-2: 20px; + --spacing-3: 25px; +} + +.login-page { + width: 100vw; + display: flex; + justify-content: center; + align-items: center; + height: 100vh; +} + +.login-form { + width: 360px; + height: 526px; + margin: 90px auto; +} + +.login-form-header { + justify-content: center; + align-items: center; + text-align: center; +} + +.login-form-header-logo { + margin: 0 auto; +} + +.login-form-v-spacing { + height: var(--spacing-1); +} + +.login-form-v2-spacing { + height: var(--spacing-2); +} + +.login-form-v3-spacing { + height: var(--spacing-3); +} + +.login-form-heading { + font-size: 30px; + font-weight: 700; + color: #101828; +} + +#login-email-input { + width: 308px; + height: 11px; +} + +.login-form-password-options { + display: flex; + align-items: center; + justify-content: space-between; +} + +.login-form-forgot-password { + color: #1570ef; + font-weight: 600; + cursor: pointer; +} + +.google-enter { + width: 20px; + height: 20px; + margin-right: 10px; +} + +.new-account-option { + display: flex; + justify-content: center; + align-items: center; + color: #475467; + font-size: 13px; + font-weight: 600; +} + +.new-account-option-span { + margin-left: 5px; + color: #1570ef; + font-size: 14px; + cursor: pointer; +} diff --git a/Client/src/Pages/Login/index.jsx b/Client/src/Pages/Login/index.jsx index fbe686625..4a621e889 100644 --- a/Client/src/Pages/Login/index.jsx +++ b/Client/src/Pages/Login/index.jsx @@ -1,10 +1,65 @@ -import React from 'react' -import './index.css' +import React from "react"; +import "./index.css"; +import BackgroundPattern from "../../Components/BackgroundPattern/BackgroundPattern"; +import Logomark from "../../assets/Images/Logomark.png"; +import EmailTextField from "../../Components/TextFields/Email/EmailTextField"; +import CheckBox from "../../Components/Checkbox/Checkbox"; +import Button from "../../Components/Button"; +import Google from "../../assets/Images/Google.png"; +import PasswordTextField from "../../Components/TextFields/Password/PasswordTextField"; const Login = () => { - return ( -
Login
- ) -} + return ( +
+ +
+
+ Logomark +
+
Log in to your account
+
+
+
+ +
+ +
+
+
+ +
Forgot password
+
+
+
+
+
+
+ Don’t have an account? + Sign up +
+
+
+ ); +}; -export default Login \ No newline at end of file +export default Login; diff --git a/Client/src/assets/Images/Google.png b/Client/src/assets/Images/Google.png new file mode 100644 index 0000000000000000000000000000000000000000..490f4a20138afe2c3aecfbacaf00da91f4086cbb GIT binary patch literal 853 zcmV-b1FHOqP)P000;W1^@s654Bdt00009a7bBm000XU z000XU0RWnu7ytkO0drDELIAGL9O(c600d`2O+f$vv5yPk==P+9lWnZ|dss+$i|$vJS6K&KLTfWdichvkQxGfK`A$x?S@7+-^M zXb{!#(@uL-)ULMJ9ZCNife9{BEk9tF`br0d2nH&6!90L!xdR@?l?TfxI8UCMnoHS@ z_O@%OD-y@ih?8g2H~@ikXzJ7VQhB!Pe4K)iunNM3pp0ZWc5cB~sS?Yb~~j~(Hi05 zVp~YLBOhpX(z9)m8qB#XP>5q$ilri^>7gQtnMld}9^O0)n1Q~12eE0=@^!|EBZeBl8 zt|b@~UWmG$ZX|J4al4!oAzdKbMca5^FX1rZPjK*&~NBRfg3XW}tU@_p?B1FV}-Yb?s?lM#_-!AIqn3iwNq(bTe z5-XyyzBIP(N_UDYC~kM{k4M;Xk4H0)8}_=gU{}n({vtQU&Y1iX91_g8l`{h0`acd{ zD{K3%KN69bu`pw70u@B?0K6&F2Ift%<*g#gK3Vh<{u1?~YM2uUlR_TMGl1KwFajC2 fX^c7@+#>z}qn;xd!^AiT00000NkvXXu0mjf;7fKm literal 0 HcmV?d00001 diff --git a/Client/src/assets/Images/Logomark.png b/Client/src/assets/Images/Logomark.png new file mode 100644 index 0000000000000000000000000000000000000000..9fe13ec9301da7604257a103e41664bec17d2a94 GIT binary patch literal 5495 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 literal 0 HcmV?d00001 diff --git a/Client/src/assets/Images/background_pattern_decorative.png b/Client/src/assets/Images/background_pattern_decorative.png new file mode 100644 index 0000000000000000000000000000000000000000..34f6ebce6864c7e4ade2e4befacf404f0e4a9cba GIT binary patch literal 30372 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 literal 0 HcmV?d00001