From 8d7fa95ed6df65c3f911f30525521301ed8ff1fe Mon Sep 17 00:00:00 2001 From: TheoryOfNekomata Date: Tue, 27 Apr 2021 20:19:21 +0800 Subject: [PATCH] Modify groupings Group "more" and the sidebar into one subpage key. --- .../templates/LeftSidebarLayout/index.tsx | 14 ++++++----- .../LeftSidebarWithMenuLayout/index.tsx | 24 +++++++++---------- src/pages/layouts/left-sidebar/index.tsx | 16 +++++++------ .../layouts/left-sidebar/with-menu/index.tsx | 22 ++++++++--------- src/utilities/queryKeys.ts | 4 +--- src/utilities/subpages.ts | 3 +++ 6 files changed, 43 insertions(+), 40 deletions(-) create mode 100644 src/utilities/subpages.ts diff --git a/src/components/templates/LeftSidebarLayout/index.tsx b/src/components/templates/LeftSidebarLayout/index.tsx index ffef600..c5df405 100644 --- a/src/components/templates/LeftSidebarLayout/index.tsx +++ b/src/components/templates/LeftSidebarLayout/index.tsx @@ -7,7 +7,6 @@ import Brand from '../../molecules/Brand' type Props = { query: string, - sidebarMainOpen: boolean, menuLinkLabel: string, userLinkLabel: string, searchQueryKey: string, @@ -15,12 +14,13 @@ type Props = { searchHint: string, popupQueryKey: string, userPopupQueryValue: string, - sidebarQueryKey: string, + sidebarSubpageQueryValue: string, + subpageQueryKey: string, + subpage: string, } const LeftSidebarLayoutTemplate: React.FC = ({ query, - sidebarMainOpen, menuLinkLabel, userLinkLabel, searchQueryKey, @@ -28,14 +28,16 @@ const LeftSidebarLayoutTemplate: React.FC = ({ searchHint, popupQueryKey, userPopupQueryValue, - sidebarQueryKey, + sidebarSubpageQueryValue, + subpageQueryKey, + subpage, }) => { return ( } - sidebarMainOpen={sidebarMainOpen} + sidebarMainOpen={subpage === sidebarSubpageQueryValue} topBarCenter={
= ({ diff --git a/src/components/templates/LeftSidebarWithMenuLayout/index.tsx b/src/components/templates/LeftSidebarWithMenuLayout/index.tsx index 9f0b45a..ffa8ab3 100644 --- a/src/components/templates/LeftSidebarWithMenuLayout/index.tsx +++ b/src/components/templates/LeftSidebarWithMenuLayout/index.tsx @@ -7,36 +7,36 @@ import Brand from '../../molecules/Brand' type Props = { query: string, - sidebarMainOpen: boolean, menuLinkLabel: string, userLinkLabel: string, - moreItemsOpen: boolean, searchQueryKey: string, searchLabel: string, searchHint: string, popupQueryKey: string, - moreQueryKey: string, - sidebarQueryKey: string, + moreSubpageQueryValue: string, + sidebarSubpageQueryValue: string, moreLinkLabel: string, sidebarMenuItems: LeftSidebarWithMenu.MenuItem[], userPopupQueryValue: string, + subpageQueryKey: string, + subpage: string, } const LeftSidebarLayoutTemplate: React.FC = ({ query, - sidebarMainOpen, menuLinkLabel, userLinkLabel, - moreItemsOpen, searchQueryKey, searchLabel, searchHint, popupQueryKey, - moreQueryKey, - sidebarQueryKey, + moreSubpageQueryValue, + sidebarSubpageQueryValue, moreLinkLabel, sidebarMenuItems, userPopupQueryValue, + subpageQueryKey, + subpage, }) => { return ( = ({ @@ -87,7 +87,7 @@ const LeftSidebarLayoutTemplate: React.FC = ({ label: moreLinkLabel, url: { query: { - [moreQueryKey]: '', + [subpageQueryKey]: moreSubpageQueryValue, }, }, icon: ( @@ -97,7 +97,7 @@ const LeftSidebarLayoutTemplate: React.FC = ({ /> ), }} - moreItemsOpen={moreItemsOpen} + moreItemsOpen={subpage === moreSubpageQueryValue} moreLinkComponent={({ url, icon, label, }) => ( = ({ )} - sidebarMainOpen={sidebarMainOpen} + sidebarMainOpen={subpage === sidebarSubpageQueryValue} sidebarMain={ diff --git a/src/pages/layouts/left-sidebar/index.tsx b/src/pages/layouts/left-sidebar/index.tsx index e939616..b4df0a2 100644 --- a/src/pages/layouts/left-sidebar/index.tsx +++ b/src/pages/layouts/left-sidebar/index.tsx @@ -1,21 +1,22 @@ import {GetServerSideProps, NextPage} from 'next' import Template from '../../../components/templates/LeftSidebarLayout' -import {POPUP, QUERY, SIDEBAR} from '../../../utilities/queryKeys' +import {POPUP, QUERY, SUBPAGE} from '../../../utilities/queryKeys' import {USER} from '../../../utilities/popups' +import {SIDEBAR} from '../../../utilities/subpages' type Props = { query: string, - sidebarMainOpen: boolean, + subpage: string, } const Page: NextPage = ({ query, - sidebarMainOpen, + subpage, }) => { return (