diff --git a/packages/app/src/components/header/index.tsx b/packages/app/src/components/header/index.tsx index 9ecc82e6c6..3f74014b0c 100644 --- a/packages/app/src/components/header/index.tsx +++ b/packages/app/src/components/header/index.tsx @@ -1,2 +1,3 @@ export * from './header'; export * from './page-header'; +export { StyledTitle as HeaderWrapper } from './styles'; diff --git a/packages/app/src/components/page-list/index.tsx b/packages/app/src/components/page-list/index.tsx index 3259f77e83..623d4dbaaf 100644 --- a/packages/app/src/components/page-list/index.tsx +++ b/packages/app/src/components/page-list/index.tsx @@ -71,7 +71,7 @@ export const PageList = ({ {pageMeta.createDate} {pageMeta.createDate} - + {isTrash ? ( ) : ( diff --git a/packages/app/src/components/workspace-slider-bar/index.tsx b/packages/app/src/components/workspace-slider-bar/index.tsx index 8bd2c4529c..7fffa5b3f7 100644 --- a/packages/app/src/components/workspace-slider-bar/index.tsx +++ b/packages/app/src/components/workspace-slider-bar/index.tsx @@ -2,6 +2,7 @@ import React, { useState } from 'react'; import { useRouter } from 'next/router'; import { StyledArrowButton, + StyledLink, StyledListItem, StyledNewPageButton, StyledSliderBar, @@ -9,7 +10,15 @@ import { } from './style'; import { Arrow } from './icons'; import Collapse from '@mui/material/Collapse'; -import { ArrowDownIcon } from '@blocksuite/icons'; +import { + ArrowDownIcon, + SearchIcon, + AllPagesIcon, + FavouritesIcon, + ImportIcon, + TrashIcon, + AddIcon, +} from '@blocksuite/icons'; import Link from 'next/link'; import { useEditor } from '@/providers/editor-provider'; import { useModal } from '@/providers/global-modal-provider'; @@ -61,20 +70,18 @@ export const WorkSpaceSliderBar = () => { triggerQuickSearchModal(); }} > - Quick search + Quick search - All pages + All pages - + + Favourites - + { @@ -95,12 +102,12 @@ export const WorkSpaceSliderBar = () => { triggerImportModal(); }} > - Import + Import - Trash + Trash { pageMeta && openPage(pageMeta.id); }} > - New Page + New Page ( ({ theme, show }) => { @@ -54,6 +55,10 @@ export const StyledListItem = styled.button<{ active?: boolean }>( paddingLeft: '12px', borderRadius: '5px', ...displayFlex('flex-start', 'center'), + '>svg': { + fontSize: '20px', + marginRight: '12px', + }, ':hover': { color: theme.colors.primaryColor, backgroundColor: theme.colors.hoverBackground, @@ -62,6 +67,21 @@ export const StyledListItem = styled.button<{ active?: boolean }>( } ); +export const StyledLink = styled(Link)(({ theme }) => { + return { + flexGrow: 1, + textAlign: 'left', + color: 'inherit', + ...displayFlex('flex-start', 'center'), + ':visited': { + color: 'inherit', + }, + '>svg': { + fontSize: '20px', + marginRight: '12px', + }, + }; +}); export const StyledNewPageButton = styled(StyledListItem)(({ theme }) => { return { position: 'absolute', diff --git a/packages/app/src/pages/page-list/all.tsx b/packages/app/src/pages/page-list/all.tsx index fa80c8b56b..f08afb0a7d 100644 --- a/packages/app/src/pages/page-list/all.tsx +++ b/packages/app/src/pages/page-list/all.tsx @@ -1,12 +1,19 @@ import { Header } from '@/components/header'; import { useEditor } from '@/providers/editor-provider'; import { PageList } from '@/components/page-list'; +import { StyledWrapper } from '@/pages/page-list/styles'; +import { AllPagesIcon } from '@blocksuite/icons'; export const All = () => { const { pageList: allPageList } = useEditor(); return ( <> -
+
+ + + All Pages + +
!p.trash)} showFavoriteTag={true} diff --git a/packages/app/src/pages/page-list/favorite.tsx b/packages/app/src/pages/page-list/favorite.tsx index 5d5c0c542d..0024baf005 100644 --- a/packages/app/src/pages/page-list/favorite.tsx +++ b/packages/app/src/pages/page-list/favorite.tsx @@ -1,12 +1,19 @@ import { Header } from '@/components/header'; import { useEditor } from '@/providers/editor-provider'; import { PageList } from '@/components/page-list'; +import { StyledWrapper } from '@/pages/page-list/styles'; +import { FavouritesIcon } from '@blocksuite/icons'; export const Favorite = () => { const { pageList: allPageList } = useEditor(); return ( <> -
+
+ + + Favorites + +
p.favorite && !p.trash)} /> ); diff --git a/packages/app/src/pages/page-list/styles.ts b/packages/app/src/pages/page-list/styles.ts new file mode 100644 index 0000000000..b5f9bf79b6 --- /dev/null +++ b/packages/app/src/pages/page-list/styles.ts @@ -0,0 +1,13 @@ +import { HeaderWrapper } from '@/components/header'; +import { styled } from '@/styles'; + +export const StyledWrapper = styled(HeaderWrapper)(({ theme }) => { + return { + fontSize: theme.font.sm, + color: theme.colors.textColor, + '>svg': { + fontSize: '20px', + marginRight: '12px', + }, + }; +}); diff --git a/packages/app/src/pages/page-list/trash.tsx b/packages/app/src/pages/page-list/trash.tsx index 4a139e1c76..af55a5d47d 100644 --- a/packages/app/src/pages/page-list/trash.tsx +++ b/packages/app/src/pages/page-list/trash.tsx @@ -1,12 +1,18 @@ import { Header } from '@/components/header'; import { useEditor } from '@/providers/editor-provider'; import { PageList } from '@/components/page-list'; - +import { StyledWrapper } from './styles'; +import { TrashIcon } from '@blocksuite/icons'; export const Trash = () => { const { pageList: allPageList } = useEditor(); return ( <> -
+
+ + + Trash + +
p.trash)} isTrash={true} /> );