From c28a49fe13615d489b67ac6845971ce163ef282c Mon Sep 17 00:00:00 2001 From: Nitish Kumar <123248648+nitishkumar333@users.noreply.github.com> Date: Tue, 26 Mar 2024 03:58:57 +0530 Subject: [PATCH] Redesign LeftDrawer (#1802) * sidebar redesign * failing test fix * leftDrawer test coverage --- src/assets/css/app.css | 3 + .../CollapsibleDropdown.tsx | 2 +- .../LeftDrawer/LeftDrawer.module.css | 15 ++- src/components/LeftDrawer/LeftDrawer.test.tsx | 30 +++-- src/components/LeftDrawer/LeftDrawer.tsx | 12 +- .../LeftDrawerOrg/LeftDrawerOrg.module.css | 114 +++++++++++++++--- .../LeftDrawerOrg/LeftDrawerOrg.tsx | 16 +-- .../OrganizationScreen.module.css | 31 +++++ .../OrganizationScreen/OrganizationScreen.tsx | 13 +- .../MemberDetail/MemberDetail.test.tsx | 1 - src/screens/MemberDetail/MemberDetail.tsx | 7 +- 11 files changed, 182 insertions(+), 62 deletions(-) diff --git a/src/assets/css/app.css b/src/assets/css/app.css index ffabe972e8..a96b3afabe 100644 --- a/src/assets/css/app.css +++ b/src/assets/css/app.css @@ -1,4 +1,5 @@ @charset "UTF-8"; +@import url('https://fonts.googleapis.com/css2?family=Lato:ital,wght@0,100;0,300;0,400;0,700;0,900;1,100;1,300;1,400;1,700;1,900&display=swap'); /*! * Bootstrap v5.3.0 (https://getbootstrap.com/) * Copyright 2011-2023 The Bootstrap Authors @@ -76,12 +77,14 @@ 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji'; --bs-font-monospace: SFMono-Regular, Menlo, Monaco, Consolas, 'Liberation Mono', 'Courier New', monospace; + --bs-font-lato: 'Lato'; --bs-gradient: linear-gradient( 180deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0) ); --bs-body-font-family: var(--bs-font-sans-serif); + --bs-leftDrawer-font-family: var(--bs-font-sans-serif); --bs-body-font-size: 1rem; --bs-body-font-weight: 400; --bs-body-line-height: 1.5; diff --git a/src/components/CollapsibleDropdown/CollapsibleDropdown.tsx b/src/components/CollapsibleDropdown/CollapsibleDropdown.tsx index 854f9dc598..03f08b044f 100644 --- a/src/components/CollapsibleDropdown/CollapsibleDropdown.tsx +++ b/src/components/CollapsibleDropdown/CollapsibleDropdown.tsx @@ -30,7 +30,7 @@ const collapsibleDropdown = ({ return ( <> )} {/* Options List */}
-
{t('menu')}
+
+ {t('menu')} +
{targets.map(({ name, url }, index) => { return url ? ( {({ isActive }) => ( +
{ export default OrganizationScreen; -const map: any = { +interface InterfaceMapType { + [key: string]: string; +} + +const map: InterfaceMapType = { orgdash: 'dashboard', orgpeople: 'organizationPeople', orgads: 'advertisement', diff --git a/src/screens/MemberDetail/MemberDetail.test.tsx b/src/screens/MemberDetail/MemberDetail.test.tsx index 85b8df1baa..1d4fe3a9b8 100644 --- a/src/screens/MemberDetail/MemberDetail.test.tsx +++ b/src/screens/MemberDetail/MemberDetail.test.tsx @@ -189,7 +189,6 @@ describe('MemberDetail', () => { test('should render the elements', async () => { const props = { id: 'rishav-jha-mech', - from: 'orglist', }; render( diff --git a/src/screens/MemberDetail/MemberDetail.tsx b/src/screens/MemberDetail/MemberDetail.tsx index 8a34b30292..63580cedfe 100644 --- a/src/screens/MemberDetail/MemberDetail.tsx +++ b/src/screens/MemberDetail/MemberDetail.tsx @@ -4,7 +4,7 @@ import Col from 'react-bootstrap/Col'; import Row from 'react-bootstrap/Row'; import Button from 'react-bootstrap/Button'; import { useTranslation } from 'react-i18next'; -import { useParams, useLocation, useNavigate } from 'react-router-dom'; +import { useParams, useLocation, Navigate } from 'react-router-dom'; import UserUpdate from 'components/UserUpdate/UserUpdate'; import { USER_DETAILS } from 'GraphQl/Queries/Queries'; import styles from './MemberDetail.module.css'; @@ -23,7 +23,6 @@ const MemberDetail: React.FC = ({ id }): JSX.Element => { const { t } = useTranslation('translation', { keyPrefix: 'memberDetail', }); - const navigate = useNavigate(); const location = useLocation(); const [state, setState] = useState(1); @@ -67,7 +66,7 @@ const MemberDetail: React.FC = ({ id }): JSX.Element => { /* istanbul ignore next */ if (error) { - navigate(`/orgpeople/${currentUrl}`); + return ; } const addAdmin = async (): Promise => { @@ -86,7 +85,7 @@ const MemberDetail: React.FC = ({ id }): JSX.Element => { }, 2000); } /* istanbul ignore next */ - } catch (error: any) { + } catch (error: unknown) { /* istanbul ignore next */ errorHandler(t, error); }