From df8bda22ad6a521a9fccc056136ea53f447fdd3b Mon Sep 17 00:00:00 2001 From: Rishav Jha <76212518+rishav-jha-mech@users.noreply.github.com> Date: Fri, 21 Jul 2023 00:43:49 +0530 Subject: [PATCH] Merge AdminUI-Redesign into Develop (#947) * Updated CODE_STYLE.md * Updated CODE_STYLE.md (#917) * Updated CODE_STYLE.md * Import section update * Upgrade and Migrate from Bootstrap 4 to Bootstrap 5 (#925) * Updated CODE_STYLE.md * Latest Boostrap v5.3.0 & react-bootstrap v2.7.4 installed * Buttons replaced from normal ones to Bootstrap ones * Import section update * Error fixed for Buttons * Language dropdowns and Change language * InputBoxes & Checkboxes fixed and imported from BS * Removed unused package popper.js * Replaced react-modal with Bootstrap one in Login Page * Modals converted to React Bootstrap one * Completely replaced react-modal with react-bootstrap/Modal from the project * Removed react-modal from the project * Removed classbased modal and unused images * Notification navbar migrated * Modal migration * Modal migration * Modal migration done for OrgPostCard * Empty commit to make workflow run * Empty commit to make workflow run * Empty commit to run the workflow * Sass filed added with documentation * Linting fixed * Fixed the folder structure and naming convention * Customised Bootstrap (#929) * Sass filed added with documentation * Linting fixed * Fixed the folder structure and naming convention * Assets typo fixed * Typo fix * Initial login page work * Merge conflict error fixed * Theming modified and Added Loader over every screen * Fixed UI issue for navbar and login * Fixed production bug * Removed unused variable * Tests fixed * Added Change Language Btn dropdown * Merge conflict fixed, merge latest develop into adminUI-redesign (#938) * Merge latest adminUI-Redesign into Develop (#927) * Updated CODE_STYLE.md * Updated CODE_STYLE.md (#917) * Updated CODE_STYLE.md * Import section update * Upgrade and Migrate from Bootstrap 4 to Bootstrap 5 (#925) * Updated CODE_STYLE.md * Latest Boostrap v5.3.0 & react-bootstrap v2.7.4 installed * Buttons replaced from normal ones to Bootstrap ones * Import section update * Error fixed for Buttons * Language dropdowns and Change language * InputBoxes & Checkboxes fixed and imported from BS * Removed unused package popper.js * Replaced react-modal with Bootstrap one in Login Page * Modals converted to React Bootstrap one * Completely replaced react-modal with react-bootstrap/Modal from the project * Removed react-modal from the project * Removed classbased modal and unused images * Notification navbar migrated * Modal migration * Modal migration * Modal migration done for OrgPostCard * Empty commit to make workflow run * Empty commit to make workflow run * Empty commit to run the workflow --------- Co-authored-by: Anwer Sayeed * Introduces API versioning check in CI/CD (#924) * a random change * husky precommit * one more try * one more try * one more try * one more try * one more try * one more try * second try * removed unwanted deps * removed unwanted deps * resolved the error * updated variable name * rerun test * rerun test * added test to pull.yml * removed push check * resolved conflict * Sass filed added with documentation * Linting fixed * Fixed the folder structure and naming convention * Update stale.yml * Typo fix * Update CONTRIBUTING.md * Merge talawa-user-portal into develop (#935) * Create login and register page for user portal * Lint public locales * Create tests for login page components * Add react import in tests * Create organizations screen for user portal * Fix failing tests and lint code * fix failing tests * Add tests for organization screen and componenets * Fix non-null assertions * Fix non-null assertions in organizations test * Fix bootstrap migration changes * Merge conflict error fixed --------- Co-authored-by: Anwer Sayeed Co-authored-by: Kanishka Bansode <96020697+kb-0311@users.noreply.github.com> Co-authored-by: Peter Harrison <16875803+palisadoes@users.noreply.github.com> Co-authored-by: Noble Mittal <62551163+beingnoble03@users.noreply.github.com> * Random checkout * Design ready for homescreen * Login page 100% code c=coverage * Login page icon adjustment * Added translations * Fixed the failing tests * Revert to older version of loader * Animation added fixed warnings * Fixed accessability * Mutations and Tests foxed * Fixed coloring in UserPortal * Tests fixed and ChangeLanguageDropdown used in UserLoginPage * Linting Fixed --------- Co-authored-by: Anwer Sayeed Co-authored-by: Kanishka Bansode <96020697+kb-0311@users.noreply.github.com> Co-authored-by: Peter Harrison <16875803+palisadoes@users.noreply.github.com> Co-authored-by: Noble Mittal <62551163+beingnoble03@users.noreply.github.com> --- .github/workflows/pull-requests.yml | 10 +- public/locales/en.json | 4 +- public/locales/fr.json | 4 +- public/locales/hi.json | 4 +- public/locales/sp.json | 4 +- public/locales/zh.json | 4 +- src/App.module.css | 47 -- src/App.tsx | 5 +- src/assets/css/app.css | 189 +++--- src/assets/images/palisadoes_logo.png | Bin 68136 -> 169634 bytes src/assets/scss/_colors.scss | 0 src/assets/scss/_general.scss | 22 + src/assets/scss/_talawa.scss | 16 + src/assets/scss/_variables.scss | 28 +- .../AddOn/core/AddOnStore/AddOnStore.tsx | 1 + .../AdminNavbar/AdminNavbar.module.css | 37 +- .../ChangeLanguageDropDown.tsx | 68 ++ .../ChangeLanguageDropdown.module.css | 7 + .../ChangeLanguageDropdown.test.tsx | 108 ++++ .../EventListCard/EventListCard.module.css | 27 - .../ListNavbar/ListNavbar.module.css | 5 +- src/components/Loader/Loader.module.css | 13 + src/components/Loader/Loader.test.tsx | 19 + src/components/Loader/Loader.tsx | 20 + src/components/OrgUpdate/OrgUpdate.module.css | 22 - .../UserPasswordUpdate.module.css | 22 - .../OrganizationSidebar.module.css | 1 + .../UserSidebar/UserSidebar.module.css | 1 + .../UserUpdate/UserUpdate.module.css | 22 - src/components/UserUpdate/UserUpdate.tsx | 7 +- src/screens/LoginPage/LoginPage.module.css | 451 +++---------- src/screens/LoginPage/LoginPage.test.tsx | 83 +-- src/screens/LoginPage/LoginPage.tsx | 603 +++++++++--------- .../MemberDetail/MemberDetail.module.css | 23 - src/screens/MemberDetail/MemberDetail.tsx | 7 +- .../OrgContribution.module.css | 22 - src/screens/OrgList/OrgList.module.css | 22 - src/screens/OrgList/OrgList.tsx | 7 +- src/screens/OrgPost/OrgPost.module.css | 23 +- src/screens/OrgPost/OrgPost.tsx | 7 +- src/screens/OrgSettings/OrgSettings.tsx | 7 +- .../OrganizationDashboard.tsx | 7 +- .../OrganizationEvents.module.css | 21 - .../OrganizationEvents/OrganizationEvents.tsx | 7 +- .../OrganizationPeople.module.css | 22 - .../UserLoginPage/UserLoginPage.module.css | 2 +- .../UserLoginPage/UserLoginPage.test.tsx | 127 +--- .../UserLoginPage/UserLoginPage.tsx | 34 +- 48 files changed, 904 insertions(+), 1288 deletions(-) delete mode 100644 src/App.module.css create mode 100644 src/assets/scss/_colors.scss create mode 100644 src/assets/scss/_general.scss create mode 100644 src/components/ChangeLanguageDropdown/ChangeLanguageDropDown.tsx create mode 100644 src/components/ChangeLanguageDropdown/ChangeLanguageDropdown.module.css create mode 100644 src/components/ChangeLanguageDropdown/ChangeLanguageDropdown.test.tsx create mode 100644 src/components/Loader/Loader.module.css create mode 100644 src/components/Loader/Loader.test.tsx create mode 100644 src/components/Loader/Loader.tsx diff --git a/.github/workflows/pull-requests.yml b/.github/workflows/pull-requests.yml index 8ed0367e26..10164461aa 100644 --- a/.github/workflows/pull-requests.yml +++ b/.github/workflows/pull-requests.yml @@ -66,25 +66,17 @@ jobs: steps: - name: Checkout the Repository uses: actions/checkout@v3 - - name: Set up Node.js uses: actions/setup-node@v3 with: node-version: '16.14.1' - - name: resolve dependency run: npm install -g @graphql-inspector/cli - name: Clone API repository run: git clone https://github.com/PalisadoesFoundation/talawa-api && ls -a - - name: Validate Documents - run: graphql-inspector validate './src/GraphQl/**/*.ts' './talawa-api/schema.graphql' - - - - - + run: graphql-inspector validate './src/GraphQl/**/*.ts' './talawa-api/schema.graphql' \ No newline at end of file diff --git a/public/locales/en.json b/public/locales/en.json index 2548cdc585..7ea43f53a7 100644 --- a/public/locales/en.json +++ b/public/locales/en.json @@ -24,7 +24,9 @@ "fillCorrectly": "Fill all the Details Correctly.", "notAuthorised": "Sorry! you are not Authorised!", "notFound": "User not found!", - "successfullyRegistered": "Successfully Registered. Please wait until you will be approved." + "successfullyRegistered": "Successfully Registered. Please wait until you will be approved.", + "login_to_admin_portal": "Admin Portal Login", + "OR": "OR" }, "listNavbar": { "talawa_portal": "Talawa Admin Portal", diff --git a/public/locales/fr.json b/public/locales/fr.json index d013e3d25b..b9b5a712ae 100644 --- a/public/locales/fr.json +++ b/public/locales/fr.json @@ -24,7 +24,9 @@ "fillCorrectly": "Remplissez tous les détails correctement.", "notAuthorised": "Désolé ! vous n'êtes pas autorisé !", "notFound": "Utilisateur introuvable !", - "successfullyRegistered": "Enregistré avec succès. Veuillez patienter jusqu'à ce que vous soyez approuvé." + "successfullyRegistered": "Enregistré avec succès. Veuillez patienter jusqu'à ce que vous soyez approuvé.", + "login_to_admin_portal": "Connexion à l'administration du portail", + "OR": "OU" }, "listNavbar": { "talawa_portal": "Portail D'Administrateur Talawa", diff --git a/public/locales/hi.json b/public/locales/hi.json index 3a26fe4529..65a6d3653f 100644 --- a/public/locales/hi.json +++ b/public/locales/hi.json @@ -24,7 +24,9 @@ "fillCorrectly": "सभी विवरण सही ढंग से भरें।", "notAuthorised": "क्षमा करें! आप अधिकृत नहीं हैं!", "notFound": "उपयोगकर्ता नहीं मिला!", - "successfullyRegistered": "सफलतापूर्वक पंजीकृत। कृपया स्वीकृत होने तक प्रतीक्षा करें।" + "successfullyRegistered": "सफलतापूर्वक पंजीकृत। कृपया स्वीकृत होने तक प्रतीक्षा करें।", + "login_to_admin_portal": "एडमिन पोर्टल लॉगिन", + "OR": "या" }, "listNavbar": { "talawa_portal": "तलावा प्रशासन पोर्टल", diff --git a/public/locales/sp.json b/public/locales/sp.json index a2d6cb6935..f00d91f38c 100644 --- a/public/locales/sp.json +++ b/public/locales/sp.json @@ -24,7 +24,9 @@ "fillCorrectly": "Complete todos los detalles correctamente.", "notAuthorised": "¡Lo siento! ¡No estás autorizado!", "notFound": "¡Usuario no encontrado!", - "successfullyRegistered": "Registrado con éxito. Espere hasta que sea aprobado" + "successfullyRegistered": "Registrado con éxito. Espere hasta que sea aprobado", + "login_to_admin_portal": "Inicio de sesión en el portal de administración", + "OR": "O" }, "listNavbar": { "talawa_portal": "Portal De Administración Talawa", diff --git a/public/locales/zh.json b/public/locales/zh.json index 9af9452cdc..785b1de9f0 100644 --- a/public/locales/zh.json +++ b/public/locales/zh.json @@ -24,7 +24,9 @@ "fillCorrectly": "正確填寫所有細節。", "notAuthorised": "抱歉!你沒有被授權!", "notFound": "找不到用戶!", - "successfullyRegistered": "註冊成功,請等待審核通過。" + "successfullyRegistered": "註冊成功,請等待審核通過。", + "login_to_admin_portal": " 管理员门户登录 ", + "OR": "或者" }, "listNavbar": { "talawa_portal": "塔拉瓦管理門戶", diff --git a/src/App.module.css b/src/App.module.css deleted file mode 100644 index 8bbcc2f0d8..0000000000 --- a/src/App.module.css +++ /dev/null @@ -1,47 +0,0 @@ -.loader, -.loader:after { - border-radius: 50%; - width: 10em; - height: 10em; -} - -.loader { - margin: 60px auto; - margin-top: 35vh !important; - font-size: 10px; - position: relative; - text-indent: -9999em; - border-top: 1.1em solid rgba(255, 255, 255, 0.2); - border-right: 1.1em solid rgba(255, 255, 255, 0.2); - border-bottom: 1.1em solid rgba(255, 255, 255, 0.2); - border-left: 1.1em solid #febc59; - -webkit-transform: translateZ(0); - -ms-transform: translateZ(0); - transform: translateZ(0); - -webkit-animation: load8 1.1s infinite linear; - animation: load8 1.1s infinite linear; -} - -@-webkit-keyframes load8 { - 0% { - -webkit-transform: rotate(0deg); - transform: rotate(0deg); - } - - 100% { - -webkit-transform: rotate(360deg); - transform: rotate(360deg); - } -} - -@keyframes load8 { - 0% { - -webkit-transform: rotate(0deg); - transform: rotate(0deg); - } - - 100% { - -webkit-transform: rotate(360deg); - transform: rotate(360deg); - } -} diff --git a/src/App.tsx b/src/App.tsx index d3eed64de7..b43a4adba3 100644 --- a/src/App.tsx +++ b/src/App.tsx @@ -2,8 +2,6 @@ import React from 'react'; import { Route, Switch } from 'react-router-dom'; import { useQuery } from '@apollo/client'; import * as installedPlugins from 'components/plugins/index'; -// import './App.css'; -import styles from './App.module.css'; import { CHECK_AUTH } from 'GraphQl/Queries/Queries'; import SecuredRoute from 'components/SecuredRoute/SecuredRoute'; import SecuredRouteForUser from 'components/UserPortal/SecuredRouteForUser/SecuredRouteForUser'; @@ -22,6 +20,7 @@ import Roles from 'screens/Roles/Roles'; import Requests from 'screens/Requests/Requests'; import BlockUser from 'screens/BlockUser/BlockUser'; import MemberDetail from 'screens/MemberDetail/MemberDetail'; +import Loader from 'components/Loader/Loader'; // User Portal Components import UserLoginPage from 'screens/UserPortal/UserLoginPage/UserLoginPage'; @@ -71,7 +70,7 @@ function app(): JSX.Element { ); if (loading) { - return
; + return ; } if (data) { diff --git a/src/assets/css/app.css b/src/assets/css/app.css index 2e26c8fbd7..288b220848 100644 --- a/src/assets/css/app.css +++ b/src/assets/css/app.css @@ -99,11 +99,11 @@ --bs-tertiary-bg: #f8f9fa; --bs-tertiary-bg-rgb: 248, 249, 250; --bs-heading-color: inherit; - --bs-link-color: #31bb6b; - --bs-link-color-rgb: 49, 187, 107; - --bs-link-decoration: underline; - --bs-link-hover-color: #279656; - --bs-link-hover-color-rgb: 39, 150, 86; + --bs-link-color: #0d6efd; + --bs-link-color-rgb: 13, 110, 253; + --bs-link-decoration: none; + --bs-link-hover-color: #0a58ca; + --bs-link-hover-color-rgb: 10, 88, 202; --bs-code-color: #d63384; --bs-highlight-bg: #fff3cd; --bs-border-width: 1px; @@ -373,7 +373,7 @@ sup { a { color: rgba(var(--bs-link-color-rgb), var(--bs-link-opacity, 1)); - text-decoration: underline; + text-decoration: none; } a:hover { --bs-link-color-rgb: var(--bs-link-hover-color-rgb); @@ -2143,22 +2143,22 @@ progress { } .col-form-label { - padding-top: calc(0.375rem + var(--bs-border-width)); - padding-bottom: calc(0.375rem + var(--bs-border-width)); + padding-top: 0.7rem; + padding-bottom: 0.7rem; margin-bottom: 0; font-size: inherit; line-height: 1.5; } .col-form-label-lg { - padding-top: calc(0.5rem + var(--bs-border-width)); - padding-bottom: calc(0.5rem + var(--bs-border-width)); + padding-top: 0.5rem; + padding-bottom: 0.5rem; font-size: 1.25rem; } .col-form-label-sm { - padding-top: calc(0.25rem + var(--bs-border-width)); - padding-bottom: calc(0.25rem + var(--bs-border-width)); + padding-top: 0.25rem; + padding-bottom: 0.25rem; font-size: 0.875rem; } @@ -2171,14 +2171,14 @@ progress { .form-control { display: block; width: 100%; - padding: 0.375rem 0.75rem; + padding: 0.7rem 1rem; font-size: 1rem; font-weight: 400; line-height: 1.5; color: var(--bs-body-color); - background-color: var(--bs-body-bg); + background-color: #f2f2f2; background-clip: padding-box; - border: var(--bs-border-width) solid var(--bs-border-color); + border: 0 solid var(--bs-border-color); appearance: none; border-radius: var(--bs-border-radius); transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; @@ -2196,7 +2196,7 @@ progress { } .form-control:focus { color: var(--bs-body-color); - background-color: var(--bs-body-bg); + background-color: #f2f2f2; border-color: #98ddb5; outline: 0; box-shadow: 0 0 0 0.25rem rgba(49, 187, 107, 0.25); @@ -2219,16 +2219,16 @@ progress { opacity: 1; } .form-control::file-selector-button { - padding: 0.375rem 0.75rem; - margin: -0.375rem -0.75rem; - margin-inline-end: 0.75rem; + padding: 0.7rem 1rem; + margin: -0.7rem -1rem; + margin-inline-end: 1rem; color: var(--bs-body-color); background-color: var(--bs-tertiary-bg); pointer-events: none; border-color: inherit; border-style: solid; border-width: 0; - border-inline-end-width: var(--bs-border-width); + border-inline-end-width: 0; border-radius: 0; transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; @@ -2245,13 +2245,13 @@ progress { .form-control-plaintext { display: block; width: 100%; - padding: 0.375rem 0; + padding: 0.7rem 0; margin-bottom: 0; line-height: 1.5; color: var(--bs-body-color); background-color: transparent; border: solid transparent; - border-width: var(--bs-border-width) 0; + border-width: 0 0; } .form-control-plaintext:focus { outline: 0; @@ -2263,7 +2263,7 @@ progress { } .form-control-sm { - min-height: calc(1.5em + 0.5rem + calc(var(--bs-border-width) * 2)); + min-height: calc(1.5em + 0.5rem + calc(0 * 2)); padding: 0.25rem 0.5rem; font-size: 0.875rem; border-radius: var(--bs-border-radius-sm); @@ -2275,7 +2275,7 @@ progress { } .form-control-lg { - min-height: calc(1.5em + 1rem + calc(var(--bs-border-width) * 2)); + min-height: calc(1.5em + 1rem + calc(0 * 2)); padding: 0.5rem 1rem; font-size: 1.25rem; border-radius: var(--bs-border-radius-lg); @@ -2287,21 +2287,21 @@ progress { } textarea.form-control { - min-height: calc(1.5em + 0.75rem + calc(var(--bs-border-width) * 2)); + min-height: calc(1.5em + 1.4rem + calc(0 * 2)); } textarea.form-control-sm { - min-height: calc(1.5em + 0.5rem + calc(var(--bs-border-width) * 2)); + min-height: calc(1.5em + 0.5rem + calc(0 * 2)); } textarea.form-control-lg { - min-height: calc(1.5em + 1rem + calc(var(--bs-border-width) * 2)); + min-height: calc(1.5em + 1rem + calc(0 * 2)); } .form-control-color { width: 3rem; - height: calc(1.5em + 0.75rem + calc(var(--bs-border-width) * 2)); - padding: 0.375rem; + height: calc(1.5em + 1.4rem + calc(0 * 2)); + padding: 0.7rem; } .form-control-color:not(:disabled):not([readonly]) { cursor: pointer; @@ -2315,28 +2315,28 @@ textarea.form-control-lg { border-radius: var(--bs-border-radius); } .form-control-color.form-control-sm { - height: calc(1.5em + 0.5rem + calc(var(--bs-border-width) * 2)); + height: calc(1.5em + 0.5rem + calc(0 * 2)); } .form-control-color.form-control-lg { - height: calc(1.5em + 1rem + calc(var(--bs-border-width) * 2)); + height: calc(1.5em + 1rem + calc(0 * 2)); } .form-select { --bs-form-select-bg-img: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e"); display: block; width: 100%; - padding: 0.375rem 2.25rem 0.375rem 0.75rem; + padding: 0.7rem 3rem 0.7rem 1rem; font-size: 1rem; font-weight: 400; line-height: 1.5; color: var(--bs-body-color); - background-color: var(--bs-body-bg); + background-color: #f2f2f2; background-image: var(--bs-form-select-bg-img), var(--bs-form-select-bg-icon, none); background-repeat: no-repeat; - background-position: right 0.75rem center; + background-position: right 1rem center; background-size: 16px 12px; - border: var(--bs-border-width) solid var(--bs-border-color); + border: 0 solid var(--bs-border-color); border-radius: var(--bs-border-radius); transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; appearance: none; @@ -2353,7 +2353,7 @@ textarea.form-control-lg { } .form-select[multiple], .form-select[size]:not([size='1']) { - padding-right: 0.75rem; + padding-right: 1rem; background-image: none; } .form-select:disabled { @@ -2407,7 +2407,7 @@ textarea.form-control-lg { } .form-check-input { - --bs-form-check-bg: var(--bs-body-bg); + --bs-form-check-bg: #f2f2f2; width: 1em; height: 1em; margin-top: 0.25em; @@ -2607,8 +2607,8 @@ textarea.form-control-lg { .form-floating > .form-control, .form-floating > .form-control-plaintext, .form-floating > .form-select { - height: calc(3.5rem + calc(var(--bs-border-width) * 2)); - min-height: calc(3.5rem + calc(var(--bs-border-width) * 2)); + height: calc(3.5rem + calc(0 * 2)); + min-height: calc(3.5rem + calc(0 * 2)); line-height: 1.25; } .form-floating > label { @@ -2617,13 +2617,13 @@ textarea.form-control-lg { left: 0; z-index: 2; height: 100%; - padding: 1rem 0.75rem; + padding: 1rem 1rem; overflow: hidden; text-align: start; text-overflow: ellipsis; white-space: nowrap; pointer-events: none; - border: var(--bs-border-width) solid transparent; + border: 0 solid transparent; transform-origin: 0 0; transition: opacity 0.1s ease-in-out, transform 0.1s ease-in-out; } @@ -2634,7 +2634,7 @@ textarea.form-control-lg { } .form-floating > .form-control, .form-floating > .form-control-plaintext { - padding: 1rem 0.75rem; + padding: 1rem 1rem; } .form-floating > .form-control::placeholder, .form-floating > .form-control-plaintext::placeholder { @@ -2668,11 +2668,11 @@ textarea.form-control-lg { .form-floating > .form-control-plaintext ~ label::after, .form-floating > .form-select ~ label::after { position: absolute; - inset: 1rem 0.375rem; + inset: 1rem 0.5rem; z-index: -1; height: 1.5em; content: ''; - background-color: var(--bs-body-bg); + background-color: #f2f2f2; border-radius: var(--bs-border-radius); } .form-floating > .form-control:-webkit-autofill ~ label { @@ -2680,7 +2680,7 @@ textarea.form-control-lg { transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem); } .form-floating > .form-control-plaintext ~ label { - border-width: var(--bs-border-width) 0; + border-width: 0 0; } .form-floating > :disabled ~ label { color: #6c757d; @@ -2720,7 +2720,7 @@ textarea.form-control-lg { .input-group-text { display: flex; align-items: center; - padding: 0.375rem 0.75rem; + padding: 0.7rem 1rem; font-size: 1rem; font-weight: 400; line-height: 1.5; @@ -2728,7 +2728,7 @@ textarea.form-control-lg { text-align: center; white-space: nowrap; background-color: var(--bs-tertiary-bg); - border: var(--bs-border-width) solid var(--bs-border-color); + border: 0 solid var(--bs-border-color); border-radius: var(--bs-border-radius); } @@ -2752,7 +2752,7 @@ textarea.form-control-lg { .input-group-lg > .form-select, .input-group-sm > .form-select { - padding-right: 3rem; + padding-right: 4rem; } .input-group:not(.has-validation) @@ -2789,7 +2789,7 @@ textarea.form-control-lg { > :not(:first-child):not(.dropdown-menu):not(.valid-tooltip):not( .valid-feedback ):not(.invalid-tooltip):not(.invalid-feedback) { - margin-left: calc(var(--bs-border-width) * -1); + margin-left: calc(0 * -1); border-top-left-radius: 0; border-bottom-left-radius: 0; } @@ -2832,11 +2832,11 @@ textarea.form-control-lg { .was-validated .form-control:valid, .form-control.is-valid { border-color: var(--bs-form-valid-border-color); - padding-right: calc(1.5em + 0.75rem); + padding-right: calc(1.5em + 1.4rem); background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%2331bb6b' d='M2.3 6.73.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e"); background-repeat: no-repeat; - background-position: right calc(0.375em + 0.1875rem) center; - background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem); + background-position: right calc(0.375em + 0.35rem) center; + background-size: calc(0.75em + 0.7rem) calc(0.75em + 0.7rem); } .was-validated .form-control:valid:focus, .form-control.is-valid:focus { @@ -2846,9 +2846,8 @@ textarea.form-control-lg { .was-validated textarea.form-control:valid, textarea.form-control.is-valid { - padding-right: calc(1.5em + 0.75rem); - background-position: top calc(0.375em + 0.1875rem) right - calc(0.375em + 0.1875rem); + padding-right: calc(1.5em + 1.4rem); + background-position: top calc(0.375em + 0.35rem) right calc(0.375em + 0.35rem); } .was-validated .form-select:valid, @@ -2860,9 +2859,9 @@ textarea.form-control.is-valid { .form-select.is-valid:not([multiple]):not([size]), .form-select.is-valid:not([multiple])[size='1'] { --bs-form-select-bg-icon: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%2331bb6b' d='M2.3 6.73.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e"); - padding-right: 4.125rem; - background-position: right 0.75rem center, center right 2.25rem; - background-size: 16px 12px, calc(0.75em + 0.375rem) calc(0.75em + 0.375rem); + padding-right: 5.5rem; + background-position: right 1rem center, center right 3rem; + background-size: 16px 12px, calc(0.75em + 0.7rem) calc(0.75em + 0.7rem); } .was-validated .form-select:valid:focus, .form-select.is-valid:focus { @@ -2872,7 +2871,7 @@ textarea.form-control.is-valid { .was-validated .form-control-color:valid, .form-control-color.is-valid { - width: calc(3rem + calc(1.5em + 0.75rem)); + width: calc(3rem + calc(1.5em + 1.4rem)); } .was-validated .form-check-input:valid, @@ -2937,11 +2936,11 @@ textarea.form-control.is-valid { .was-validated .form-control:invalid, .form-control.is-invalid { border-color: var(--bs-form-invalid-border-color); - padding-right: calc(1.5em + 0.75rem); + padding-right: calc(1.5em + 1.4rem); background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%23dc3545'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e"); background-repeat: no-repeat; - background-position: right calc(0.375em + 0.1875rem) center; - background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem); + background-position: right calc(0.375em + 0.35rem) center; + background-size: calc(0.75em + 0.7rem) calc(0.75em + 0.7rem); } .was-validated .form-control:invalid:focus, .form-control.is-invalid:focus { @@ -2951,9 +2950,8 @@ textarea.form-control.is-valid { .was-validated textarea.form-control:invalid, textarea.form-control.is-invalid { - padding-right: calc(1.5em + 0.75rem); - background-position: top calc(0.375em + 0.1875rem) right - calc(0.375em + 0.1875rem); + padding-right: calc(1.5em + 1.4rem); + background-position: top calc(0.375em + 0.35rem) right calc(0.375em + 0.35rem); } .was-validated .form-select:invalid, @@ -2965,9 +2963,9 @@ textarea.form-control.is-invalid { .form-select.is-invalid:not([multiple]):not([size]), .form-select.is-invalid:not([multiple])[size='1'] { --bs-form-select-bg-icon: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%23dc3545'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e"); - padding-right: 4.125rem; - background-position: right 0.75rem center, center right 2.25rem; - background-size: 16px 12px, calc(0.75em + 0.375rem) calc(0.75em + 0.375rem); + padding-right: 5.5rem; + background-position: right 1rem center, center right 3rem; + background-size: 16px 12px, calc(0.75em + 0.7rem) calc(0.75em + 0.7rem); } .was-validated .form-select:invalid:focus, .form-select.is-invalid:focus { @@ -2977,7 +2975,7 @@ textarea.form-control.is-invalid { .was-validated .form-control-color:invalid, .form-control-color.is-invalid { - width: calc(3rem + calc(1.5em + 0.75rem)); + width: calc(3rem + calc(1.5em + 1.4rem)); } .was-validated .form-check-input:invalid, @@ -3011,8 +3009,8 @@ textarea.form-control.is-invalid { } .btn { - --bs-btn-padding-x: 0.75rem; - --bs-btn-padding-y: 0.375rem; + --bs-btn-padding-x: 1rem; + --bs-btn-padding-y: 0.7rem; --bs-btn-font-family: ; --bs-btn-font-size: 1rem; --bs-btn-font-weight: 400; @@ -3036,7 +3034,6 @@ textarea.form-control.is-invalid { line-height: var(--bs-btn-line-height); color: var(--bs-btn-color); text-align: center; - text-decoration: none; vertical-align: middle; cursor: pointer; user-select: none; @@ -3383,8 +3380,8 @@ fieldset:disabled .btn { --bs-btn-disabled-color: #6c757d; --bs-btn-disabled-border-color: transparent; --bs-btn-box-shadow: 0 0 0 #000; - --bs-btn-focus-shadow-rgb: 42, 159, 91; - text-decoration: underline; + --bs-btn-focus-shadow-rgb: 49, 132, 253; + text-decoration: none; } .btn-link:focus-visible { color: var(--bs-btn-color); @@ -3725,7 +3722,6 @@ fieldset:disabled .btn { font-weight: 400; color: var(--bs-dropdown-link-color); text-align: inherit; - text-decoration: none; white-space: nowrap; background-color: transparent; border: 0; @@ -3840,8 +3836,8 @@ fieldset:disabled .btn { } .dropdown-toggle-split { - padding-right: 0.5625rem; - padding-left: 0.5625rem; + padding-right: 0.75rem; + padding-left: 0.75rem; } .dropdown-toggle-split::after, .dropup .dropdown-toggle-split::after, @@ -3908,7 +3904,6 @@ fieldset:disabled .btn { font-size: var(--bs-nav-link-font-size); font-weight: var(--bs-nav-link-font-weight); color: var(--bs-nav-link-color); - text-decoration: none; background: none; border: 0; transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, @@ -4089,7 +4084,6 @@ fieldset:disabled .btn { margin-right: var(--bs-navbar-brand-margin-end); font-size: var(--bs-navbar-brand-font-size); color: var(--bs-navbar-brand-color); - text-decoration: none; white-space: nowrap; } .navbar-brand:hover, @@ -4883,7 +4877,6 @@ fieldset:disabled .btn { padding: var(--bs-pagination-padding-y) var(--bs-pagination-padding-x); font-size: var(--bs-pagination-font-size); color: var(--bs-pagination-color); - text-decoration: none; background-color: var(--bs-pagination-bg); border: var(--bs-pagination-border-width) solid var(--bs-pagination-border-color); @@ -5202,7 +5195,6 @@ fieldset:disabled .btn { padding: var(--bs-list-group-item-padding-y) var(--bs-list-group-item-padding-x); color: var(--bs-list-group-color); - text-decoration: none; background-color: var(--bs-list-group-bg); border: var(--bs-list-group-border-width) solid var(--bs-list-group-border-color); @@ -12436,6 +12428,8 @@ fieldset:disabled .btn { 2. Content 3. Forms 4. Utilities +5. General +6. Colors */ /* @@ -12519,3 +12513,36 @@ fieldset:disabled .btn { 4. UTILITIES */ +/* + + 5. General + +*/ +:root { + --bs-body-font-family: Arial, Helvetica, sans-serif; +} + +* { + margin: 0; + padding: 0; + box-sizing: border-box; +} + +html { + overflow-x: hidden; +} + +body { + background-color: var(--bs-body-bg); +} + +#root { + min-height: 100vh; + background-color: #f2f7ff; +} + +/* + + 6. COLORS + +*/ diff --git a/src/assets/images/palisadoes_logo.png b/src/assets/images/palisadoes_logo.png index a2e0605c7de676e0e875594344f80cdd5b32b6e3..2e91c02233047309e5dd7bdf90a8958801472916 100644 GIT binary patch literal 169634 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%0DFO#wdQReW5(~53l$t!Z? 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

n1U|h&m_e>N1QDF^KPK}`CAK?a}j=z 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 diff --git a/src/assets/scss/_colors.scss b/src/assets/scss/_colors.scss new file mode 100644 index 0000000000..e69de29bb2 diff --git a/src/assets/scss/_general.scss b/src/assets/scss/_general.scss new file mode 100644 index 0000000000..2bca736d92 --- /dev/null +++ b/src/assets/scss/_general.scss @@ -0,0 +1,22 @@ +:root { + --bs-body-font-family: Arial, Helvetica, sans-serif; +} + +* { + margin: 0; + padding: 0; + box-sizing: border-box; +} + +html { + overflow-x: hidden; +} + +body { + background-color: var(--bs-body-bg); +} + +#root { + min-height: 100vh; + background-color: #f2f7ff; +} diff --git a/src/assets/scss/_talawa.scss b/src/assets/scss/_talawa.scss index 7c50f4f6e8..2537c2c682 100644 --- a/src/assets/scss/_talawa.scss +++ b/src/assets/scss/_talawa.scss @@ -9,6 +9,8 @@ 2. Content 3. Forms 4. Utilities +5. General +6. Colors */ @@ -118,3 +120,17 @@ */ @import './utilities'; + +/* + + 5. General + +*/ +@import './general'; + +/* + + 6. COLORS + +*/ +@import './colors'; diff --git a/src/assets/scss/_variables.scss b/src/assets/scss/_variables.scss index 67b26786d3..2871cb9df2 100644 --- a/src/assets/scss/_variables.scss +++ b/src/assets/scss/_variables.scss @@ -1,4 +1,30 @@ +// Colors + $primary: #31bb6b; -$success: #31bb6b; $secondary: #707070; +$success: #31bb6b; $warning: #febc59; + +$blue: #0d6efd; +$indigo: #6610f2; +$purple: #6f42c1; +$pink: #d63384; +$red: #dc3545; +$orange: #fd7e14; +$yellow: #ffc107; +$green: #198754; +$teal: #20c997; +$cyan: #0dcaf0; +$placeholder-bg: #f2f2f2; +// Colors + +// Links +$link-color: $blue !default; +$link-decoration: none !default; + +// Inputs and buttons +$input-bg: $placeholder-bg; +$input-border-width: 0; + +$input-btn-padding-y: 0.7rem; +$input-btn-padding-x: 1rem; diff --git a/src/components/AddOn/core/AddOnStore/AddOnStore.tsx b/src/components/AddOn/core/AddOnStore/AddOnStore.tsx index b3283497da..148eea7cb4 100644 --- a/src/components/AddOn/core/AddOnStore/AddOnStore.tsx +++ b/src/components/AddOn/core/AddOnStore/AddOnStore.tsx @@ -21,6 +21,7 @@ import AddOnRegister from '../AddOnRegister/AddOnRegister'; import PluginHelper from 'components/AddOn/support/services/Plugin.helper'; import { store } from './../../../../state/store'; import { useTranslation } from 'react-i18next'; +import Loader from 'components/Loader/Loader'; function addOnStore(): JSX.Element { const { t } = useTranslation('translation', { keyPrefix: 'addOnStore' }); diff --git a/src/components/AdminNavbar/AdminNavbar.module.css b/src/components/AdminNavbar/AdminNavbar.module.css index 261368bf06..8210a80337 100644 --- a/src/components/AdminNavbar/AdminNavbar.module.css +++ b/src/components/AdminNavbar/AdminNavbar.module.css @@ -1,36 +1,6 @@ -* { - margin: 0; - padding: 0; - box-sizing: border-box; -} - -body::before { - display: block; - content: ''; - height: 85px; -} - -body { - font-family: Arial, Helvetica, sans-serif; -} - -a { - text-decoration: none !important; -} - -.modal { - margin-right: 2rem; -} - -.main { - float: left; - display: block; -} - .navbarbg { - /* height: 60px; */ - height: auto; - background-color: white; + position: relative !important; + margin-bottom: 1.5rem; z-index: 1; box-shadow: 0px 0px 8px 2px #c8c8c8; padding-top: 0px; @@ -198,9 +168,6 @@ a { } @media screen and (max-width: 1199px) { - body::before { - height: 118px; - } /* .navbarbg { height: auto; } */ diff --git a/src/components/ChangeLanguageDropdown/ChangeLanguageDropDown.tsx b/src/components/ChangeLanguageDropdown/ChangeLanguageDropDown.tsx new file mode 100644 index 0000000000..d80b8cb225 --- /dev/null +++ b/src/components/ChangeLanguageDropdown/ChangeLanguageDropDown.tsx @@ -0,0 +1,68 @@ +import React from 'react'; +import { Dropdown } from 'react-bootstrap'; +import i18next from 'i18next'; +import styles from './ChangeLanguageDropdown.module.css'; +import { languages } from 'utils/languages'; +import cookies from 'js-cookie'; + +interface InterfaceChangeLanguageDropDownProps { + parentContainerStyle?: string; + btnStyle?: string; + btnTextStyle?: string; +} + +export const changeLanguage = async (languageCode: string): Promise => { + await i18next.changeLanguage(languageCode); +}; + +const ChangeLanguageDropDown = ( + props: InterfaceChangeLanguageDropDownProps +): JSX.Element => { + const currentLanguageCode = cookies.get('i18next') || 'en'; + + return ( + + + {languages.map((language, index: number) => ( + + {currentLanguageCode === language.code ? ( + + + {language.name} + + ) : null} + + ))} + + + {languages.map((language, index: number) => ( + => changeLanguage(language.code)} + disabled={currentLanguageCode === language.code} + data-testid={`change-language-btn-${language.code}`} + > + + {language.name} + + ))} + + + ); +}; + +export default ChangeLanguageDropDown; diff --git a/src/components/ChangeLanguageDropdown/ChangeLanguageDropdown.module.css b/src/components/ChangeLanguageDropdown/ChangeLanguageDropdown.module.css new file mode 100644 index 0000000000..e72c604905 --- /dev/null +++ b/src/components/ChangeLanguageDropdown/ChangeLanguageDropdown.module.css @@ -0,0 +1,7 @@ +.parentContainer { + margin: 0 1rem; +} + +.dropdownItem { + font-size: 0.9rem; +} diff --git a/src/components/ChangeLanguageDropdown/ChangeLanguageDropdown.test.tsx b/src/components/ChangeLanguageDropdown/ChangeLanguageDropdown.test.tsx new file mode 100644 index 0000000000..fb2921bf31 --- /dev/null +++ b/src/components/ChangeLanguageDropdown/ChangeLanguageDropdown.test.tsx @@ -0,0 +1,108 @@ +import React from 'react'; +import { act, render } from '@testing-library/react'; +import userEvent from '@testing-library/user-event'; +import 'jest-localstorage-mock'; +import 'jest-location-mock'; +import { I18nextProvider } from 'react-i18next'; +import { BrowserRouter } from 'react-router-dom'; +import i18nForTest from 'utils/i18nForTest'; +import { languages } from 'utils/languages'; +import ChangeLanguageDropDown from './ChangeLanguageDropDown'; +import cookies from 'js-cookie'; + +async function wait(ms = 100): Promise { + await act(() => { + return new Promise((resolve) => { + setTimeout(resolve, ms); + }); + }); +} + +describe('Testing Change Language Dropdown', () => { + test('Component Should be rendered properly', async () => { + const { getByTestId } = render( + + + + + + ); + + expect(getByTestId('language-dropdown-container')).toBeInTheDocument(); + expect(getByTestId('language-dropdown-btn')).toBeInTheDocument(); + expect(getByTestId('dropdown-btn-0')).toBeInTheDocument(); + + getByTestId('language-dropdown-container').className.includes(''); + getByTestId('language-dropdown-btn').className.includes(''); + getByTestId('dropdown-btn-0').className.includes(''); + + userEvent.click(getByTestId('dropdown-btn-0')); + await wait(); + + languages.map((language) => { + expect( + getByTestId(`change-language-btn-${language.code}`) + ).toBeInTheDocument(); + }); + }); + + test('Component Should accept props properly', async () => { + const props = { + parentContainerStyle: 'parentContainerStyle', + btnStyle: 'btnStyle', + btnTextStyle: 'btnTextStyle', + }; + const { getByTestId } = render( + + + + + + ); + getByTestId('language-dropdown-container').className.includes( + props.parentContainerStyle + ); + getByTestId('language-dropdown-btn').className.includes(props.btnStyle); + getByTestId('dropdown-btn-0').className.includes(props.btnTextStyle); + }); + + test('Testing when language cookie is not set', async () => { + Object.defineProperty(window.document, 'cookie', { + writable: true, + value: 'i18next=', + }); + + render( + + + + ); + + await wait(); + expect(cookies.get('i18next')).toBe(''); + }); + + test('Testing change language functionality', async () => { + Object.defineProperty(window.document, 'cookie', { + writable: true, + value: 'i18next=en', + }); + + const { getByTestId } = render( + + + + ); + + userEvent.click(getByTestId('language-dropdown-btn')); + await wait(); + languages.map((language) => { + const changeLanguageBtn = getByTestId( + `change-language-btn-${language.code}` + ); + expect(changeLanguageBtn).toBeInTheDocument(); + userEvent.click(changeLanguageBtn); + expect(cookies.get('i18next')).toBe(language.code); + }); + }); +}); diff --git a/src/components/EventListCard/EventListCard.module.css b/src/components/EventListCard/EventListCard.module.css index 7a1f74f3b3..c5804d67ec 100644 --- a/src/components/EventListCard/EventListCard.module.css +++ b/src/components/EventListCard/EventListCard.module.css @@ -50,27 +50,6 @@ grid-column: auto / span 1; } -form > label { - font-weight: bold; - padding-bottom: 1px; - font-size: 14px; - color: #707070; -} -form > input { - display: block; - margin-bottom: 20px; - border: 1px solid #e8e5e5; - box-shadow: 2px 1px #e8e5e5; - padding: 10px 20px; - border-radius: 5px; - background: none; - width: 100%; - transition: all 0.3s ease-in-out; - -webkit-transition: all 0.3s ease-in-out; - -moz-transition: all 0.3s ease-in-out; - -ms-transition: all 0.3s ease-in-out; - -o-transition: all 0.3s ease-in-out; -} .sidebarsticky > input { text-decoration: none; margin-bottom: 50px; @@ -163,12 +142,6 @@ form > input { justify-content: left; flex-direction: column; } -form > label { - font-weight: bold; - padding-bottom: 1px; - font-size: 14px; - color: #707070; -} .titlemodal { color: #707070; font-weight: 600; diff --git a/src/components/ListNavbar/ListNavbar.module.css b/src/components/ListNavbar/ListNavbar.module.css index 74f97d7832..091f6164a1 100644 --- a/src/components/ListNavbar/ListNavbar.module.css +++ b/src/components/ListNavbar/ListNavbar.module.css @@ -1,5 +1,5 @@ .navbarbgOrglist { - /* height:60px; */ + position: relative !important; padding: 0 1rem; background-color: white; display: flex; @@ -101,9 +101,6 @@ } @media only screen and (max-width: 600px) { - body::before { - height: 118px; - } .navbarbgOrglist { height: auto; } diff --git a/src/components/Loader/Loader.module.css b/src/components/Loader/Loader.module.css new file mode 100644 index 0000000000..df8c1deea6 --- /dev/null +++ b/src/components/Loader/Loader.module.css @@ -0,0 +1,13 @@ +.spinner_wrapper { + height: 100vh; + width: 100%; + display: flex; + justify-content: center; + align-items: center; +} + +.spinner { + width: 6rem; + height: 6rem; + border-width: 0.5rem; +} diff --git a/src/components/Loader/Loader.test.tsx b/src/components/Loader/Loader.test.tsx new file mode 100644 index 0000000000..77c15667a5 --- /dev/null +++ b/src/components/Loader/Loader.test.tsx @@ -0,0 +1,19 @@ +import React from 'react'; +import { render, screen } from '@testing-library/react'; +import 'jest-localstorage-mock'; +import { BrowserRouter } from 'react-router-dom'; + +import Loader from './Loader'; + +describe('Testing Loader component', () => { + test('Component should be rendered properly', () => { + render( + + + + ); + + expect(screen.getByTestId('spinner-wrapper')).toBeInTheDocument(); + expect(screen.getByTestId('spinner')).toBeInTheDocument(); + }); +}); diff --git a/src/components/Loader/Loader.tsx b/src/components/Loader/Loader.tsx new file mode 100644 index 0000000000..6dc247b4c9 --- /dev/null +++ b/src/components/Loader/Loader.tsx @@ -0,0 +1,20 @@ +import React from 'react'; +import styles from './Loader.module.css'; +import { Spinner } from 'react-bootstrap'; + +const Loader = (): JSX.Element => { + return ( + <> +

+ +
+ + ); +}; + +export default Loader; diff --git a/src/components/OrgUpdate/OrgUpdate.module.css b/src/components/OrgUpdate/OrgUpdate.module.css index 069b080135..d181d358b1 100644 --- a/src/components/OrgUpdate/OrgUpdate.module.css +++ b/src/components/OrgUpdate/OrgUpdate.module.css @@ -27,28 +27,6 @@ width: 50%; margin-right: 50px; } -form label { - font-weight: bold; - padding-bottom: 1px; - font-size: 14px; - color: #707070; -} - -form input { - display: block; - margin-bottom: 20px; - border: 1px solid #e8e5e5; - box-shadow: 2px 1px #e8e5e5; - padding: 10px 20px; - border-radius: 5px; - background: none; - width: 100%; - transition: all 0.3s ease-in-out; - -webkit-transition: all 0.3s ease-in-out; - -moz-transition: all 0.3s ease-in-out; - -ms-transition: all 0.3s ease-in-out; - -o-transition: all 0.3s ease-in-out; -} .radio_buttons > input { margin-bottom: 20px; diff --git a/src/components/UserPasswordUpdate/UserPasswordUpdate.module.css b/src/components/UserPasswordUpdate/UserPasswordUpdate.module.css index d914002964..54cf1c020c 100644 --- a/src/components/UserPasswordUpdate/UserPasswordUpdate.module.css +++ b/src/components/UserPasswordUpdate/UserPasswordUpdate.module.css @@ -27,28 +27,6 @@ width: 50%; margin-right: 50px; } -form label { - font-weight: bold; - padding-bottom: 1px; - font-size: 14px; - color: #707070; -} - -form input { - display: block; - margin-bottom: 20px; - border: 1px solid #e8e5e5; - box-shadow: 2px 1px #e8e5e5; - padding: 10px 20px; - border-radius: 5px; - background: none; - width: 100%; - transition: all 0.3s ease-in-out; - -webkit-transition: all 0.3s ease-in-out; - -moz-transition: all 0.3s ease-in-out; - -ms-transition: all 0.3s ease-in-out; - -o-transition: all 0.3s ease-in-out; -} .radio_buttons > input { margin-bottom: 20px; diff --git a/src/components/UserPortal/OrganizationSidebar/OrganizationSidebar.module.css b/src/components/UserPortal/OrganizationSidebar/OrganizationSidebar.module.css index af07aa9f90..9e067c4b38 100644 --- a/src/components/UserPortal/OrganizationSidebar/OrganizationSidebar.module.css +++ b/src/components/UserPortal/OrganizationSidebar/OrganizationSidebar.module.css @@ -7,6 +7,7 @@ /* padding-top: 20px; */ width: 250px; flex-grow: 1; + background-color: var(--bs-white); } @media screen and (max-width: 900px) { diff --git a/src/components/UserPortal/UserSidebar/UserSidebar.module.css b/src/components/UserPortal/UserSidebar/UserSidebar.module.css index ef306708ed..930ed7c9db 100644 --- a/src/components/UserPortal/UserSidebar/UserSidebar.module.css +++ b/src/components/UserPortal/UserSidebar/UserSidebar.module.css @@ -7,6 +7,7 @@ padding-top: 50px; flex-grow: 1; width: 250px; + background-color: var(--bs-white); } @media screen and (max-width: 700px) { diff --git a/src/components/UserUpdate/UserUpdate.module.css b/src/components/UserUpdate/UserUpdate.module.css index d914002964..54cf1c020c 100644 --- a/src/components/UserUpdate/UserUpdate.module.css +++ b/src/components/UserUpdate/UserUpdate.module.css @@ -27,28 +27,6 @@ width: 50%; margin-right: 50px; } -form label { - font-weight: bold; - padding-bottom: 1px; - font-size: 14px; - color: #707070; -} - -form input { - display: block; - margin-bottom: 20px; - border: 1px solid #e8e5e5; - box-shadow: 2px 1px #e8e5e5; - padding: 10px 20px; - border-radius: 5px; - background: none; - width: 100%; - transition: all 0.3s ease-in-out; - -webkit-transition: all 0.3s ease-in-out; - -moz-transition: all 0.3s ease-in-out; - -ms-transition: all 0.3s ease-in-out; - -o-transition: all 0.3s ease-in-out; -} .radio_buttons > input { margin-bottom: 20px; diff --git a/src/components/UserUpdate/UserUpdate.tsx b/src/components/UserUpdate/UserUpdate.tsx index 6807565c3c..95e43874c9 100644 --- a/src/components/UserUpdate/UserUpdate.tsx +++ b/src/components/UserUpdate/UserUpdate.tsx @@ -11,6 +11,7 @@ import { languages } from 'utils/languages'; import { toast } from 'react-toastify'; import { errorHandler } from 'utils/errorHandler'; import { Form } from 'react-bootstrap'; +import Loader from 'components/Loader/Loader'; interface InterfaceUserUpdateProps { id: string; @@ -54,11 +55,7 @@ const UserUpdate: React.FC = ({ }, [data]); if (loading) { - return ( - <> -
- - ); + return ; } /* istanbul ignore next */ diff --git a/src/screens/LoginPage/LoginPage.module.css b/src/screens/LoginPage/LoginPage.module.css index 1f78a04835..0047934b7e 100644 --- a/src/screens/LoginPage/LoginPage.module.css +++ b/src/screens/LoginPage/LoginPage.module.css @@ -1,388 +1,141 @@ -html { - overflow-x: hidden !important; -} - -/* ===== Login Modal CSS Start ===== */ - -.show { - position: absolute; - right: 10%; - font-weight: normal; - top: 40%; - cursor: pointer; -} -.showregister { - position: absolute; - right: 16%; - font-weight: normal; - cursor: pointer; - margin-top: -34px; -} -#grid_wrapper { - align-items: left; -} .login_background { - overflow-x: hidden; - overflow-y: visible; - background-color: #fcfcfc; - height: 100%; - width: 100vw; - margin: 0; - background-repeat: no-repeat !important; - background-position: center !important; - background-size: cover !important; - position: fixed; - top: 0; - right: 0; - left: 0; -} -.flexdir { - display: flex; - flex-direction: row; - justify-content: space-between; - border: none; + min-height: 100vh; } -.form_wrapper { - margin-top: 27px; - top: 50%; - left: 50%; - transform: translate(-50%, -50%); - position: absolute; +.row .left_portion { display: flex; + justify-content: center; + align-items: center; flex-direction: column; - padding: 40px 30px; - background: #ffffff; - border-color: #e8e5e5; - border-width: 5px; - border-radius: 10px; + height: 100vh; } -.form_wrapper form { - display: flex; - align-items: left; - justify-content: left; - flex-direction: column; +.row .left_portion .inner .palisadoes_logo { + width: 600px; } -.logintitle { - color: #707070; - font-weight: 600; - font-size: 20px; - margin-bottom: 20px; - padding-bottom: 5px; - border-bottom: 3px solid #31bb6b; - width: 50%; + +.row .right_portion { + height: 100vh; + position: relative; + overflow-y: scroll; + padding: 1rem 2.5rem; + background: var(--bs-white); } -form > label { - font-weight: bold; - padding-bottom: 1px; - font-size: 14px; - color: #707070; + +.row .right_portion .langChangeBtn { + margin: 0; + position: absolute; + top: 1rem; + left: 2rem; } -form > input { +.row .right_portion .talawa_logo { + height: 150px; display: block; - margin-bottom: 20px; - border: 1px solid #e8e5e5; - box-shadow: 2px 1px #e8e5e5; - padding: 10px 20px; - border-radius: 5px; - background: none; - width: 100%; - transition: all 0.3s ease-in-out; - -webkit-transition: all 0.3s ease-in-out; - -moz-transition: all 0.3s ease-in-out; - -ms-transition: all 0.3s ease-in-out; - -o-transition: all 0.3s ease-in-out; + margin: 1rem auto; } -/* Animation */ -.animated_content { - display: flex; - align-items: center; - justify-content: center; - animation: up-down 2s ease-in-out infinite alternate-reverse both; -} +.row .orText { + display: block; + position: absolute; + top: calc(-0.7rem - 0.5rem); + left: calc(50% - 2.6rem); + margin: 0 auto; + padding: 0.5rem 2rem; + z-index: 100; + background: var(--bs-white); + color: var(--bs-secondary); +} + +@media (max-width: 992px) { + .row .left_portion { + padding: 0 2rem; + } -.animated_content img { - height: 70vh; - width: 70vh; + .row .left_portion .inner .palisadoes_logo { + width: 100%; + } } -.whiteloginbtn { - margin: 1rem 0 0; - margin-top: 10px; - border: 1px solid #e8e5e5; - box-shadow: 0 2px 2px #e8e5e5; - padding: 10px 20px; - border-radius: 5px; - background: none; - width: 100%; - font-size: 16px; - color: #31bb6b; - outline: none; - font-weight: 600; - cursor: pointer; - transition: transform 0.2s, box-shadow 0.2s; - width: 100%; -} -.whiteloginbtn:hover { - background-color: #737373; - color: white; -} -.greenregbtn { - margin: 1rem 0 0; - margin-top: 10px; - border: 1px solid #e8e5e5; - box-shadow: 0 2px 2px #e8e5e5; - padding: 10px 10px; - border-radius: 5px; - background-color: #31bb6b; - width: 100%; - font-size: 16px; - color: white; - outline: none; - font-weight: 600; - cursor: pointer; - transition: transform 0.2s, box-shadow 0.2s; - width: 100%; -} -.greenregbtn:hover { - color: #fff; - background-color: #1e7e34; - border-color: #1c7430; -} +@media (max-width: 769px) { + .row { + flex-direction: column-reverse; + } -.navloginbtn { - background-color: #31bb6b; - padding: 0.5em 1em; - margin-right: 3rem; - font-size: 16px; - color: white; - outline: none; - font-weight: normal; - border: none; - border-radius: 5px; - cursor: pointer; - transition: transform 0.2s, box-shadow 0.2s; - width: 130px; -} -.navloginbtn:hover { - color: #fff; - background-color: #1e7e34; - border-color: #1c7430; -} -.languageBtn { - font-size: 20px; - margin-right: 16px; - color: #31bb6b; -} -.languageBtn:hover { - color: #31bb6b; -} -.languageBtn:focus { - color: #31bb6b; -} -.forgotpwd { - text-align: right; - justify-content: right; - color: #707070; - font-size: 11px; - margin-top: 10px; - text-decoration: none !important; -} -form > hr { - margin-top: 20px; - margin-bottom: 0px; - border-bottom: 0rem solid #e8e5e5; -} -form > br { - margin-top: 10px; - margin-bottom: 10px; - border-bottom: 0.2rem solid #e8e5e5; -} + .row .right_portion, + .row .left_portion { + height: unset; + } -.navbarbg { - /* height: 60px; */ - padding: 0 1rem; - background-color: white; - display: flex; - margin-bottom: 30px; - z-index: 1; - position: relative; - flex-direction: row; - justify-content: space-between !important; - box-shadow: 0px 0px 8px 2px #c8c8c8; -} + .row .right_portion { + min-height: 100vh; + overflow-y: unset; + } -.navbarBrand { - padding-top: 0; - padding-bottom: 0; -} + .row .left_portion .inner { + display: flex; + justify-content: center; + } -.logo { - color: #707070; - margin-left: 0; - display: flex; - align-items: center; - text-decoration: none !important; -} + .row .left_portion .inner .palisadoes_logo { + height: 70px; + width: unset; + position: absolute; + top: 0.25rem; + right: 0; + z-index: 100; + } -.logo img { - margin-top: 0px; - margin-left: 10px; - height: 64px; - width: 70px; + .row .left_portion .inner p { + margin-bottom: 0; + padding: 1rem; + } } -.logo > strong { - line-height: 1.5rem; - margin-left: -5px; - font-family: sans-serif; - font-size: 19px; - color: #707070; -} +@media (max-width: 577px) { + .row .right_portion { + padding: 1rem 1rem 0 1rem; + } -.cancel > i { - margin-top: 5px; - transform: scale(1.2); - cursor: pointer; - color: #707070; -} -.modalbody { - width: 50px; -} + .row .right_portion .langChangeBtn { + position: relative; + margin: 0; + left: 0; + top: 0; + } -.loader, -.loader:after { - border-radius: 50%; - width: 10em; - height: 10em; + .row .right_portion .talawa_logo { + height: 120px; + margin: 0.75rem auto; + } } -.loader { - margin: 60px auto; - margin-top: 35vh !important; - font-size: 10px; - position: relative; - text-indent: -9999em; - border-top: 1.1em solid rgba(255, 255, 255, 0.2); - border-right: 1.1em solid rgba(255, 255, 255, 0.2); - border-bottom: 1.1em solid rgba(255, 255, 255, 0.2); - border-left: 1.1em solid #febc59; - -webkit-transform: translateZ(0); - -ms-transform: translateZ(0); - transform: translateZ(0); - -webkit-animation: load8 1.1s infinite linear; - animation: load8 1.1s infinite linear; +.active_tab { + -webkit-animation: fadeIn 0.3s ease-in-out; + animation: fadeIn 0.3s ease-in-out; } -@-webkit-keyframes load8 { +@-webkit-keyframes fadeIn { 0% { - -webkit-transform: rotate(0deg); - transform: rotate(0deg); + opacity: 0; + -webkit-transform: translateY(2rem); + transform: translateY(2rem); } 100% { - -webkit-transform: rotate(360deg); - transform: rotate(360deg); + opacity: 1; + -webkit-transform: translateY(0); + transform: translateY(0); } } -@keyframes load8 { + +@keyframes fadeIn { 0% { - -webkit-transform: rotate(0deg); - transform: rotate(0deg); + opacity: 0; + -webkit-transform: translateY(2rem); + transform: translateY(2rem); } 100% { - -webkit-transform: rotate(360deg); - transform: rotate(360deg); - } -} - -@media only screen and (max-width: 600px) { - .form_wrapper { - width: 90%; - top: 45%; - } -} - -/* ===== Login Modal CSS End ===== */ -/* ================================================= */ -/* ===== Home Page CSS Start ===== */ -/* .homeleft { - width: 55%; -} */ -.rightmainbg { - border-top-left-radius: 10%; - height: 100%; - background-color: white; -} -/* .leftmainbg{ - background-color: #fafafa; - border-bottom-right-radius: 10%; - z-index:-1; -} */ - -.homeright { - width: 80%; - margin-left: 40px; - margin-bottom: 30px; -} - -.homeright > h1 { - font-size: 20px; - padding-top: 35px; - width: 17%; - padding-bottom: 6px; - border-bottom: 3px solid #31bb6b; - margin-bottom: 20px; -} - -/* .homeright>h2{ - width:75%; - font-size: 16px; - color: #707070; - padding-bottom: 5px; - border-bottom: 3px solid #31bb6b; - margin-bottom:20px; -} */ -.dispflex { - display: flex; - flex-direction: row; -} -.dispflex > div { - width: 95%; - margin-right: 10px; -} -.passwordalert > input { - margin-bottom: 2px; -} -.passwordalert > span { - color: rgb(240, 48, 48); - font-size: 9px; - padding-bottom: 20px; -} -.homeright > form input { - background-color: white; - box-shadow: 1px 3px #e8e5e5; -} -.passwordalert { - margin-bottom: 15px; -} -.noaccount { - text-align: center; - color: #707070; - font-size: 11px; - margin-top: 10px; -} - -@media only screen and (max-width: 600px) { - body::before { - height: 118px; - } - .navbarbg { - height: auto; - } - .languageBtn { - margin-bottom: 10px; + opacity: 1; + -webkit-transform: translateY(0); + transform: translateY(0); } } -/* ===== Home Page CSS End ===== */ diff --git a/src/screens/LoginPage/LoginPage.test.tsx b/src/screens/LoginPage/LoginPage.test.tsx index ac70d023ce..c92ba07e43 100644 --- a/src/screens/LoginPage/LoginPage.test.tsx +++ b/src/screens/LoginPage/LoginPage.test.tsx @@ -166,7 +166,7 @@ describe('Testing Login Page Screen', () => { await wait(); - expect(screen.getByText(/Talawa Admin Portal/i)).toBeInTheDocument(); + expect(screen.getByText(/Admin Portal/i)).toBeInTheDocument(); expect(window.location).toBeAt('/orglist'); }); @@ -193,6 +193,10 @@ describe('Testing Login Page Screen', () => { await wait(); + userEvent.click(screen.getByTestId(/goToRegisterPortion/i)); + + await wait(); + userEvent.type( screen.getByPlaceholderText(/First Name/i), formData.firstName @@ -201,7 +205,7 @@ describe('Testing Login Page Screen', () => { screen.getByPlaceholderText(/Last name/i), formData.lastName ); - userEvent.type(screen.getByPlaceholderText(/Email/i), formData.email); + userEvent.type(screen.getByTestId(/signInEmail/i), formData.email); userEvent.type(screen.getByPlaceholderText('Password'), formData.password); userEvent.type( screen.getByPlaceholderText('Confirm Password'), @@ -234,6 +238,8 @@ describe('Testing Login Page Screen', () => { await wait(); + userEvent.click(screen.getByTestId(/goToRegisterPortion/i)); + userEvent.type( screen.getByPlaceholderText(/First Name/i), formData.firstName @@ -242,7 +248,7 @@ describe('Testing Login Page Screen', () => { screen.getByPlaceholderText(/Last Name/i), formData.lastName ); - userEvent.type(screen.getByPlaceholderText(/Email/i), formData.email); + userEvent.type(screen.getByTestId(/signInEmail/i), formData.email); userEvent.type(screen.getByPlaceholderText('Password'), formData.password); userEvent.type( screen.getByPlaceholderText('Confirm Password'), @@ -275,6 +281,8 @@ describe('Testing Login Page Screen', () => { await wait(); + userEvent.click(screen.getByTestId(/goToRegisterPortion/i)); + userEvent.type( screen.getByPlaceholderText(/First Name/i), formData.firstName @@ -283,7 +291,7 @@ describe('Testing Login Page Screen', () => { screen.getByPlaceholderText(/Last Name/i), formData.lastName ); - userEvent.type(screen.getByPlaceholderText(/Email/i), formData.email); + userEvent.type(screen.getByTestId(/signInEmail/i), formData.email); userEvent.type(screen.getByPlaceholderText('Password'), formData.password); userEvent.type( screen.getByPlaceholderText('Confirm Password'), @@ -293,7 +301,7 @@ describe('Testing Login Page Screen', () => { userEvent.click(screen.getByTestId('registrationBtn')); }); - test('Testing login modal', async () => { + test('Testing toggle login register portion', async () => { render( @@ -308,9 +316,9 @@ describe('Testing Login Page Screen', () => { await wait(); - userEvent.click(screen.getByTestId('loginModalBtn')); + userEvent.click(screen.getByTestId('goToRegisterPortion')); - userEvent.click(screen.getByTestId('hideModalBtn')); + userEvent.click(screen.getByTestId('goToLoginPortion')); await wait(); }); @@ -335,9 +343,7 @@ describe('Testing Login Page Screen', () => { await wait(); - userEvent.click(screen.getByTestId('loginModalBtn')); - - userEvent.type(screen.getByPlaceholderText(/Enter Email/i), formData.email); + userEvent.type(screen.getByTestId(/loginEmail/i), formData.email); userEvent.type( screen.getByPlaceholderText(/Enter Password/i), formData.password @@ -348,7 +354,7 @@ describe('Testing Login Page Screen', () => { await wait(); }); - test('Testing change language functionality', async () => { + test('Testing password preview feature for login', async () => { render( @@ -363,35 +369,21 @@ describe('Testing Login Page Screen', () => { await wait(); - userEvent.click(screen.getByTestId('languageDropdownBtn')); - userEvent.click(screen.getByTestId('changeLanguageBtn1')); - userEvent.click(screen.getByTestId('changeLanguageBtn2')); - userEvent.click(screen.getByTestId('changeLanguageBtn3')); - userEvent.click(screen.getByTestId('changeLanguageBtn4')); - }); - - test('Testing when language cookie is not set', async () => { - Object.defineProperty(window.document, 'cookie', { - writable: true, - value: 'i18next=', - }); - - render( - - - - - - - - - - ); + const input = screen.getByTestId('password') as HTMLInputElement; + const toggleText = screen.getByTestId('showLoginPassword'); + // password should be hidden + expect(input.type).toBe('password'); + // click the toggle button to show password + userEvent.click(toggleText); + expect(input.type).toBe('text'); + // click the toggle button to hide password + userEvent.click(toggleText); + expect(input.type).toBe('password'); await wait(); }); - test('Testing password preview feature', async () => { + test('Testing password preview feature for register', async () => { render( @@ -405,9 +397,10 @@ describe('Testing Login Page Screen', () => { ); await wait(); - userEvent.click(screen.getByTestId('loginModalBtn')); - const input = screen.getByTestId('password') as HTMLInputElement; + userEvent.click(screen.getByTestId('goToRegisterPortion')); + + const input = screen.getByTestId('passwordField') as HTMLInputElement; const toggleText = screen.getByTestId('showPassword'); // password should be hidden expect(input.type).toBe('password'); @@ -436,8 +429,10 @@ describe('Testing Login Page Screen', () => { await wait(); + userEvent.click(screen.getByTestId('goToRegisterPortion')); + const input = screen.getByTestId('cpassword') as HTMLInputElement; - const toggleText = screen.getByTestId('showPasswordrCon'); + const toggleText = screen.getByTestId('showPasswordCon'); // password should be hidden expect(input.type).toBe('password'); // click the toggle button to show password @@ -485,6 +480,8 @@ describe('Testing Login Page Screen', () => { ); await wait(); + userEvent.click(screen.getByTestId('goToRegisterPortion')); + userEvent.type(screen.getByPlaceholderText('Password'), password.password); expect(screen.getByTestId('passwordField')).toHaveFocus(); @@ -512,6 +509,8 @@ describe('Testing Login Page Screen', () => { ); await wait(); + userEvent.click(screen.getByTestId('goToRegisterPortion')); + userEvent.type(screen.getByPlaceholderText('Password'), password.password); expect(screen.getByTestId('passwordField')).toHaveFocus(); @@ -539,6 +538,8 @@ describe('Testing Login Page Screen', () => { ); await wait(); + userEvent.click(screen.getByTestId('goToRegisterPortion')); + expect(screen.getByPlaceholderText('Password')).not.toHaveFocus(); userEvent.type(screen.getByPlaceholderText('Password'), password.password); @@ -566,6 +567,10 @@ describe('Testing Login Page Screen', () => { ); await wait(); + userEvent.click(screen.getByTestId('goToRegisterPortion')); + + await wait(); + expect(screen.getByPlaceholderText('Password')).not.toHaveFocus(); userEvent.type(screen.getByPlaceholderText('Password'), password.password); diff --git a/src/screens/LoginPage/LoginPage.tsx b/src/screens/LoginPage/LoginPage.tsx index 79e33028d1..83b9e30b71 100644 --- a/src/screens/LoginPage/LoginPage.tsx +++ b/src/screens/LoginPage/LoginPage.tsx @@ -1,36 +1,35 @@ +import { useMutation } from '@apollo/client'; import type { ChangeEvent } from 'react'; import React, { useEffect, useRef, useState } from 'react'; -import Row from 'react-bootstrap/Row'; -import Col from 'react-bootstrap/Col'; -import Modal from 'react-bootstrap/Modal'; -import { useMutation } from '@apollo/client'; -import { useTranslation } from 'react-i18next'; -import { Link, useHistory } from 'react-router-dom'; +import { Form } from 'react-bootstrap'; import Button from 'react-bootstrap/Button'; -import { Dropdown, Form, Nav, Navbar } from 'react-bootstrap'; +import Col from 'react-bootstrap/Col'; +import Row from 'react-bootstrap/Row'; import ReCAPTCHA from 'react-google-recaptcha'; +import { useTranslation } from 'react-i18next'; +import { Link } from 'react-router-dom'; import { toast } from 'react-toastify'; -import cookies from 'js-cookie'; -import i18next from 'i18next'; -import styles from './LoginPage.module.css'; -import Logo from 'assets/images/talawa-logo-200x200.png'; -import LandingPage from 'components/LandingPage/LandingPage'; +import { REACT_APP_USE_RECAPTCHA, RECAPTCHA_SITE_KEY } from 'Constant/constant'; import { LOGIN_MUTATION, RECAPTCHA_MUTATION, + SIGNUP_MUTATION, } from 'GraphQl/Mutations/mutations'; -import { SIGNUP_MUTATION } from 'GraphQl/Mutations/mutations'; -import { languages } from 'utils/languages'; -import { RECAPTCHA_SITE_KEY, REACT_APP_USE_RECAPTCHA } from 'Constant/constant'; +import Palisadoes from 'assets/images/palisadoes_logo.png'; +import Talawa from 'assets/images/talawa-logo-200x200.png'; +import ChangeLanguageDropDown from 'components/ChangeLanguageDropdown/ChangeLanguageDropDown'; +import Loader from 'components/Loader/Loader'; import { errorHandler } from 'utils/errorHandler'; +import styles from './LoginPage.module.css'; +import EmailOutlinedIcon from '@mui/icons-material/EmailOutlined'; function loginPage(): JSX.Element { const { t } = useTranslation('translation', { keyPrefix: 'loginPage' }); document.title = t('title'); - const [showModal, setShowModal] = React.useState(false); + const [showTab, setShowTab] = useState<'LOGIN' | 'REGISTER'>('LOGIN'); const [componentLoader, setComponentLoader] = useState(true); const [isInputFocused, setIsInputFocused] = useState(false); const [signformState, setSignFormState] = useState({ @@ -48,9 +47,6 @@ function loginPage(): JSX.Element { const [showConfirmPassword, setShowConfirmPassword] = useState(false); const recaptchaRef = useRef(null); - const history = useHistory(); - - const currentLanguageCode = cookies.get('i18next') || 'en'; useEffect(() => { const isLoggedIn = localStorage.getItem('IsLoggedIn'); @@ -60,7 +56,6 @@ function loginPage(): JSX.Element { setComponentLoader(false); }, []); - const toggleLoginModal = (): void => setShowModal(!showModal); const togglePassword = (): void => setShowPassword(!showPassword); const toggleConfirmPassword = (): void => setShowConfirmPassword(!showConfirmPassword); @@ -75,10 +70,9 @@ function loginPage(): JSX.Element { useEffect(() => { async function loadResource(): Promise { - const resourceUrl = 'http://localhost:4000/graphql/'; try { // eslint-disable-next-line @typescript-eslint/no-unused-vars - const response = await fetch(resourceUrl); + const response = await fetch('http://localhost:4000/graphql/'); } catch (error: any) { /* istanbul ignore next */ errorHandler(t, error); @@ -201,9 +195,7 @@ function loginPage(): JSX.Element { localStorage.setItem('IsLoggedIn', 'TRUE'); localStorage.setItem('UserType', loginData.login.user.userType); if (localStorage.getItem('IsLoggedIn') == 'TRUE') { - // Removing the next 2 lines will cause Authorization header to be copied to clipboard - navigator.clipboard.writeText(''); - history.replace('/orglist'); + window.location.replace('/orglist'); } } else { toast.warn(t('notAuthorised')); @@ -218,211 +210,314 @@ function loginPage(): JSX.Element { }; if (componentLoader || loginLoading || signinLoading || recaptchaLoading) { - return
; + return ; } return ( <>
); diff --git a/src/screens/MemberDetail/MemberDetail.module.css b/src/screens/MemberDetail/MemberDetail.module.css index f0347e2a04..57df721d70 100644 --- a/src/screens/MemberDetail/MemberDetail.module.css +++ b/src/screens/MemberDetail/MemberDetail.module.css @@ -187,29 +187,6 @@ width: 65%; } -form label { - font-weight: bold; - padding-bottom: 1px; - font-size: 14px; - color: #707070; -} - -form > input { - display: block; - margin-bottom: 20px; - border: 1px solid #e8e5e5; - box-shadow: 2px 1px #e8e5e5; - padding: 10px 20px; - border-radius: 5px; - background: none; - width: 100%; - transition: all 0.3s ease-in-out; - -webkit-transition: all 0.3s ease-in-out; - -moz-transition: all 0.3s ease-in-out; - -ms-transition: all 0.3s ease-in-out; - -o-transition: all 0.3s ease-in-out; -} - .checkboxdiv > label { margin-right: 50px; } diff --git a/src/screens/MemberDetail/MemberDetail.tsx b/src/screens/MemberDetail/MemberDetail.tsx index d564b4dd68..c898ae9b32 100644 --- a/src/screens/MemberDetail/MemberDetail.tsx +++ b/src/screens/MemberDetail/MemberDetail.tsx @@ -16,6 +16,7 @@ import { languages } from 'utils/languages'; import { ADD_ADMIN_MUTATION } from 'GraphQl/Mutations/mutations'; import { toast } from 'react-toastify'; import { errorHandler } from 'utils/errorHandler'; +import Loader from 'components/Loader/Loader'; type MemberDetailProps = { id: string; // This is the userId @@ -45,11 +46,7 @@ const MemberDetail: React.FC = ({ id }): JSX.Element => { }); if (loading) { - return ( - <> -
- - ); + return ; } /* istanbul ignore next */ diff --git a/src/screens/OrgContribution/OrgContribution.module.css b/src/screens/OrgContribution/OrgContribution.module.css index 08c273dbbd..1a3930690c 100644 --- a/src/screens/OrgContribution/OrgContribution.module.css +++ b/src/screens/OrgContribution/OrgContribution.module.css @@ -175,28 +175,6 @@ border-bottom: 3px solid #31bb6b; width: 40%; } -form > label { - font-weight: bold; - padding-bottom: 1px; - font-size: 14px; - color: #707070; -} - -form > input { - display: block; - margin-bottom: 20px; - border: 1px solid #e8e5e5; - box-shadow: 2px 1px #e8e5e5; - padding: 10px 20px; - border-radius: 5px; - background: none; - width: 100%; - transition: all 0.3s ease-in-out; - -webkit-transition: all 0.3s ease-in-out; - -moz-transition: all 0.3s ease-in-out; - -ms-transition: all 0.3s ease-in-out; - -o-transition: all 0.3s ease-in-out; -} .cancel > i { margin-top: 5px; transform: scale(1.2); diff --git a/src/screens/OrgList/OrgList.module.css b/src/screens/OrgList/OrgList.module.css index c0ce4541c8..eddb1b6b36 100644 --- a/src/screens/OrgList/OrgList.module.css +++ b/src/screens/OrgList/OrgList.module.css @@ -219,28 +219,6 @@ border-bottom: 3px solid #31bb6b; width: 65%; } -form label { - font-weight: bold; - padding-bottom: 1px; - font-size: 14px; - color: #707070; -} - -form > input { - display: block; - margin-bottom: 20px; - border: 1px solid #e8e5e5; - box-shadow: 2px 1px #e8e5e5; - padding: 10px 20px; - border-radius: 5px; - background: none; - width: 100%; - transition: all 0.3s ease-in-out; - -webkit-transition: all 0.3s ease-in-out; - -moz-transition: all 0.3s ease-in-out; - -ms-transition: all 0.3s ease-in-out; - -o-transition: all 0.3s ease-in-out; -} .checkboxdiv > label { margin-right: 50px; diff --git a/src/screens/OrgList/OrgList.tsx b/src/screens/OrgList/OrgList.tsx index a603adad35..7d9c872f44 100644 --- a/src/screens/OrgList/OrgList.tsx +++ b/src/screens/OrgList/OrgList.tsx @@ -24,6 +24,7 @@ import convertToBase64 from 'utils/convertToBase64'; import AdminDashListCard from 'components/AdminDashListCard/AdminDashListCard'; import { Alert, AlertTitle } from '@mui/material'; import { errorHandler } from 'utils/errorHandler'; +import Loader from 'components/Loader/Loader'; function orgList(): JSX.Element { const { t } = useTranslation('translation', { keyPrefix: 'orgList' }); @@ -136,11 +137,7 @@ function orgList(): JSX.Element { }; if (loading || loading2 || loading3) { - return ( - <> -
- - ); + return ; } /* istanbul ignore next */ diff --git a/src/screens/OrgPost/OrgPost.module.css b/src/screens/OrgPost/OrgPost.module.css index 7623e04083..037e5f40c8 100644 --- a/src/screens/OrgPost/OrgPost.module.css +++ b/src/screens/OrgPost/OrgPost.module.css @@ -190,31 +190,10 @@ border-bottom: 3px solid #31bb6b; width: 40%; } -form > label { - font-weight: bold; - padding-bottom: 1px; - font-size: 14px; - color: #707070; -} .postinfo { height: 80px; } -form > input, -textarea { - display: block; - margin-bottom: 20px; - border: 1px solid #e8e5e5; - box-shadow: 2px 1px #e8e5e5; - padding: 10px 20px; - border-radius: 5px; - background: none; - width: 100%; - transition: all 0.3s ease-in-out; - -webkit-transition: all 0.3s ease-in-out; - -moz-transition: all 0.3s ease-in-out; - -ms-transition: all 0.3s ease-in-out; - -o-transition: all 0.3s ease-in-out; -} + .postinfo { height: 80px; margin-bottom: 20px; diff --git a/src/screens/OrgPost/OrgPost.tsx b/src/screens/OrgPost/OrgPost.tsx index 30564f218c..48b6a17020 100644 --- a/src/screens/OrgPost/OrgPost.tsx +++ b/src/screens/OrgPost/OrgPost.tsx @@ -22,6 +22,7 @@ import convertToBase64 from 'utils/convertToBase64'; import NotFound from 'components/NotFound/NotFound'; import { Form as StyleBox } from 'react-bootstrap'; import { errorHandler } from 'utils/errorHandler'; +import Loader from 'components/Loader/Loader'; function orgPost(): JSX.Element { const { t } = useTranslation('translation', { @@ -108,11 +109,7 @@ function orgPost(): JSX.Element { }; if (createPostLoading || orgPostListLoading) { - return ( - <> -
- - ); + return ; } /* istanbul ignore next */ diff --git a/src/screens/OrgSettings/OrgSettings.tsx b/src/screens/OrgSettings/OrgSettings.tsx index d102040a7d..c6f5714052 100644 --- a/src/screens/OrgSettings/OrgSettings.tsx +++ b/src/screens/OrgSettings/OrgSettings.tsx @@ -15,6 +15,7 @@ import type { RootState } from 'state/reducers'; import { useTranslation } from 'react-i18next'; import defaultImg from 'assets/images/blank.png'; import Button from 'react-bootstrap/Button'; +import Loader from 'components/Loader/Loader'; function orgSettings(): JSX.Element { const { t } = useTranslation('translation', { @@ -54,11 +55,7 @@ function orgSettings(): JSX.Element { }); if (loading) { - return ( - <> -
- - ); + return ; } /* istanbul ignore next */ diff --git a/src/screens/OrganizationDashboard/OrganizationDashboard.tsx b/src/screens/OrganizationDashboard/OrganizationDashboard.tsx index 229162a33c..cdfebb31ca 100644 --- a/src/screens/OrganizationDashboard/OrganizationDashboard.tsx +++ b/src/screens/OrganizationDashboard/OrganizationDashboard.tsx @@ -20,6 +20,7 @@ import { } from 'GraphQl/Queries/Queries'; import { DELETE_ORGANIZATION_MUTATION } from 'GraphQl/Mutations/mutations'; import { errorHandler } from 'utils/errorHandler'; +import Loader from 'components/Loader/Loader'; function organizationDashboard(): JSX.Element { const { t } = useTranslation('translation', { keyPrefix: 'dashboard' }); @@ -77,11 +78,7 @@ function organizationDashboard(): JSX.Element { }; if (loading || loadingPost || loadingEvent) { - return ( - <> -
- - ); + return ; } /* istanbul ignore next */ diff --git a/src/screens/OrganizationEvents/OrganizationEvents.module.css b/src/screens/OrganizationEvents/OrganizationEvents.module.css index 005cd0afd8..05a70c3fa3 100644 --- a/src/screens/OrganizationEvents/OrganizationEvents.module.css +++ b/src/screens/OrganizationEvents/OrganizationEvents.module.css @@ -177,12 +177,6 @@ border-bottom: 3px solid #31bb6b; width: 40%; } -form > label { - font-weight: bold; - padding-bottom: 1px; - font-size: 14px; - color: #707070; -} .titlemodal { color: #707070; font-weight: 600; @@ -192,21 +186,6 @@ form > label { border-bottom: 3px solid #31bb6b; width: 65%; } -form > input { - display: block; - margin-bottom: 20px; - border: 1px solid #e8e5e5; - box-shadow: 2px 1px #e8e5e5; - padding: 10px 20px; - border-radius: 5px; - background: none; - width: 100%; - transition: all 0.3s ease-in-out; - -webkit-transition: all 0.3s ease-in-out; - -moz-transition: all 0.3s ease-in-out; - -ms-transition: all 0.3s ease-in-out; - -o-transition: all 0.3s ease-in-out; -} .cancel > i { margin-top: 5px; transform: scale(1.2); diff --git a/src/screens/OrganizationEvents/OrganizationEvents.tsx b/src/screens/OrganizationEvents/OrganizationEvents.tsx index 1fa5b4f698..d36a3f6ac4 100644 --- a/src/screens/OrganizationEvents/OrganizationEvents.tsx +++ b/src/screens/OrganizationEvents/OrganizationEvents.tsx @@ -24,6 +24,7 @@ import { CREATE_EVENT_MUTATION } from 'GraphQl/Mutations/mutations'; import type { RootState } from 'state/reducers'; import dayjs from 'dayjs'; import { errorHandler } from 'utils/errorHandler'; +import Loader from 'components/Loader/Loader'; function organizationEvents(): JSX.Element { const { t } = useTranslation('translation', { @@ -125,11 +126,7 @@ function organizationEvents(): JSX.Element { }; if (loading || loading2) { - return ( - <> -
- - ); + return ; } /* istanbul ignore next */ diff --git a/src/screens/OrganizationPeople/OrganizationPeople.module.css b/src/screens/OrganizationPeople/OrganizationPeople.module.css index 3934b8e7a1..13972524d7 100644 --- a/src/screens/OrganizationPeople/OrganizationPeople.module.css +++ b/src/screens/OrganizationPeople/OrganizationPeople.module.css @@ -179,28 +179,6 @@ border-bottom: 3px solid #31bb6b; width: 40%; } -form > label { - font-weight: bold; - padding-bottom: 1px; - font-size: 14px; - color: #707070; -} - -form > input { - display: block; - margin-bottom: 20px; - border: 1px solid #e8e5e5; - box-shadow: 2px 1px #e8e5e5; - padding: 10px 20px; - border-radius: 5px; - background: none; - width: 100%; - transition: all 0.3s ease-in-out; - -webkit-transition: all 0.3s ease-in-out; - -moz-transition: all 0.3s ease-in-out; - -ms-transition: all 0.3s ease-in-out; - -o-transition: all 0.3s ease-in-out; -} .cancel > i { margin-top: 5px; transform: scale(1.2); diff --git a/src/screens/UserPortal/UserLoginPage/UserLoginPage.module.css b/src/screens/UserPortal/UserLoginPage/UserLoginPage.module.css index fcb12ce679..840ceb8a0b 100644 --- a/src/screens/UserPortal/UserLoginPage/UserLoginPage.module.css +++ b/src/screens/UserPortal/UserLoginPage/UserLoginPage.module.css @@ -38,7 +38,7 @@ body::before { flex-direction: column; justify-content: center; padding: 20px 50px; - background-color: #f5f5f5; + background-color: var(--bs-white); } @media only screen and (max-width: 800px) { diff --git a/src/screens/UserPortal/UserLoginPage/UserLoginPage.test.tsx b/src/screens/UserPortal/UserLoginPage/UserLoginPage.test.tsx index ff2175ccc1..d60e37c682 100644 --- a/src/screens/UserPortal/UserLoginPage/UserLoginPage.test.tsx +++ b/src/screens/UserPortal/UserLoginPage/UserLoginPage.test.tsx @@ -1,16 +1,14 @@ import React from 'react'; import { MockedProvider } from '@apollo/react-testing'; -import { act, render, screen } from '@testing-library/react'; +import { act, render } from '@testing-library/react'; import { I18nextProvider } from 'react-i18next'; import { Provider } from 'react-redux'; import { BrowserRouter } from 'react-router-dom'; import { store } from 'state/store'; -import i18nForTest from 'utils/i18nForTest'; -import cookies from 'js-cookie'; import { StaticMockLink } from 'utils/StaticMockLink'; +import i18nForTest from 'utils/i18nForTest'; import UserLoginPage from './UserLoginPage'; -import userEvent from '@testing-library/user-event'; async function wait(ms = 100): Promise { await act(() => { @@ -23,12 +21,6 @@ async function wait(ms = 100): Promise { const link = new StaticMockLink([], true); describe('Testing User Login Page Screen [User Portal]', () => { - afterEach(async () => { - await act(async () => { - await i18nForTest.changeLanguage('en'); - }); - }); - test('Screen should be rendered properly', async () => { render( @@ -44,119 +36,4 @@ describe('Testing User Login Page Screen [User Portal]', () => { await wait(); }); - - test('Expect the defualt language to be en', async () => { - cookies.remove('i18next'); - render( - - - - - - - - - - ); - - await wait(); - - expect(screen.getByText(/English/i)).toBeInTheDocument(); - }); - - test('Expect the language to be changed to fr', async () => { - render( - - - - - - - - - - ); - - await wait(); - - userEvent.click(screen.getByText('English')); - - userEvent.click(screen.getByTestId('changeLanguageBtn1')); - - await wait(); - - expect(cookies.get('i18next')).toBe('fr'); - }); - - test('Expect the language to be changed to hi', async () => { - render( - - - - - - - - - - ); - - await wait(); - - userEvent.click(screen.getByText('English')); - - userEvent.click(screen.getByTestId('changeLanguageBtn2')); - - await wait(); - - expect(cookies.get('i18next')).toBe('hi'); - }); - - test('Expect the language to be changed to sp', async () => { - render( - - - - - - - - - - ); - - await wait(); - - userEvent.click(screen.getByText('English')); - - userEvent.click(screen.getByTestId('changeLanguageBtn3')); - - await wait(); - - expect(cookies.get('i18next')).toBe('sp'); - }); - - test('Expect the language to be changed to zh', async () => { - render( - - - - - - - - - - ); - - await wait(); - - userEvent.click(screen.getByText('English')); - - userEvent.click(screen.getByTestId('changeLanguageBtn4')); - - await wait(); - - expect(cookies.get('i18next')).toBe('zh'); - }); }); diff --git a/src/screens/UserPortal/UserLoginPage/UserLoginPage.tsx b/src/screens/UserPortal/UserLoginPage/UserLoginPage.tsx index dae86340bb..ca4915d691 100644 --- a/src/screens/UserPortal/UserLoginPage/UserLoginPage.tsx +++ b/src/screens/UserPortal/UserLoginPage/UserLoginPage.tsx @@ -1,27 +1,17 @@ import React from 'react'; -import { Dropdown, DropdownButton } from 'react-bootstrap'; import { useTranslation } from 'react-i18next'; -import cookies from 'js-cookie'; -import { languages } from 'utils/languages'; -import i18next from 'i18next'; -import styles from './UserLoginPage.module.css'; import PalisadoesImage from 'assets/images/palisadoes_logo.png'; import TalawaImage from 'assets/images/talawa-logo-200x200.png'; +import ChangeLanguageDropDown from 'components/ChangeLanguageDropdown/ChangeLanguageDropDown'; import Login from 'components/UserPortal/Login/Login'; import Register from 'components/UserPortal/Register/Register'; +import styles from './UserLoginPage.module.css'; export default function userLoginPage(): JSX.Element { const { t } = useTranslation('translation', { keyPrefix: 'loginPage' }); - const currentLanguageCode = cookies.get('i18next') || 'en'; - - const currentLanguage = languages.find( - (language) => language.code === currentLanguageCode - )?.name; - const [currentMode, setCurrentMode] = React.useState('login'); - const loginRegisterProps = { setCurrentMode: setCurrentMode, }; @@ -39,25 +29,7 @@ export default function userLoginPage(): JSX.Element {
- - {languages.map((language, index: number) => ( - => { - await i18next.changeLanguage(language.code); - }} - disabled={currentLanguageCode === language.code} - data-testid={`changeLanguageBtn${index}`} - > - {' '} - {language.name} - - ))} - +
- - - - - {t('talawa_portal')} - - - - - - - -
- - -
- -
- - -
-

{t('register')}

- {/*

to seamlessly manage your Organization.

*/} - -
-
- - { - setSignFormState({ - ...signformState, - signfirstName: e.target.value, - }); - }} - /> -
-
- - { - setSignFormState({ - ...signformState, - signlastName: e.target.value, - }); - }} - /> -
+ +
- - { - setSignFormState({ - ...signformState, - signEmail: e.target.value.toLowerCase(), - }); - }} - /> -
- + {t('password')} +
setIsInputFocused(true)} - onBlur={(): void => setIsInputFocused(false)} + className="input_box_second" + placeholder={t('enterPassword')} required - value={signformState.signPassword} + value={formState.password} + data-testid="password" onChange={(e): void => { - setSignFormState({ - ...signformState, - signPassword: e.target.value, + setFormState({ + ...formState, + password: e.target.value, }); }} + autoComplete="current-password" /> - - {isInputFocused && - signformState.signPassword.length < 8 && ( - - {t('atleast_8_char_long')} - - )} - {!isInputFocused && - signformState.signPassword.length > 0 && - signformState.signPassword.length < 8 && ( - - {t('atleast_8_char_long')} - - )} + +
+
+ + {t('forgotPassword')} + +
+ {REACT_APP_USE_RECAPTCHA === 'yes' ? ( +
+ +
+ ) : ( + /* istanbul ignore next */ + <> + )} + +
+
+ {t('OR')}
-
- + + +
+ {/* REGISTER FORM */} +
+
+

+ {t('register')} +

+ + +
+ {t('firstName')} + { + setSignFormState({ + ...signformState, + signfirstName: e.target.value, + }); + }} + /> +
+ + +
+ {t('lastName')} + { + setSignFormState({ + ...signformState, + signlastName: e.target.value, + }); + }} + /> +
+ +
+ {t('email')} +
{ setSignFormState({ ...signformState, - cPassword: e.target.value, + signEmail: e.target.value.toLowerCase(), }); }} - data-testid="cpassword" /> -
+ +
+ {t('password')} +
+ setIsInputFocused(true)} + onBlur={(): void => setIsInputFocused(false)} + required + value={signformState.signPassword} + onChange={(e): void => { + setSignFormState({ + ...signformState, + signPassword: e.target.value, + }); + }} + /> + +
+ {isInputFocused && + signformState.signPassword.length < 8 && ( +
+ {t('atleast_8_char_long')} +
+ )} + {!isInputFocused && + signformState.signPassword.length > 0 && + signformState.signPassword.length < 8 && ( +
+ {t('atleast_8_char_long')} +
)} - +
+
+ {t('confirmPassword')} +
+ { + setSignFormState({ + ...signformState, + cPassword: e.target.value, + }); + }} + data-testid="cpassword" + autoComplete="new-password" + /> + +
{signformState.cPassword.length > 0 && signformState.signPassword !== signformState.cPassword && ( - +
{t('Password_and_Confirm_password_mismatches.')} - +
)}
{REACT_APP_USE_RECAPTCHA === 'yes' ? ( -
+
{t('register')} - -
- - -
- - - -

{t('login')}

- - - -
- -
- - { - setFormState({ - ...formState, - email: e.target.value, - }); - }} - /> - - -
- { - setFormState({ - ...formState, - password: e.target.value, - }); - }} - /> - +
+
+ {t('OR')} +
+ +
- {REACT_APP_USE_RECAPTCHA === 'yes' ? ( -
- -
- ) : ( - /* istanbul ignore next */ - <> - )} - - - {t('forgotPassword')} - -
- {t('doNotOwnAnAccount')} - - -
-
+
+ +