fix: recent still show when recent is empty (#1487)

This commit is contained in:
JimmFly
2023-03-10 11:45:20 +08:00
committed by GitHub
parent 81641ed7a7
commit 356181881b

View File

@@ -49,7 +49,14 @@ export const Results: React.FC<ResultsProps> = ({
const resultsPageMeta = pageList.filter( const resultsPageMeta = pageList.filter(
page => pageIds.indexOf(page.id) > -1 && !page.trash page => pageIds.indexOf(page.id) > -1 && !page.trash
); );
const recentlyViewedItem = recentlyViewed.filter(recent => {
const page = pageList.find(page => recent.id === page.id);
if (!page) {
return false;
} else {
return page.trash !== true;
}
});
useEffect(() => { useEffect(() => {
setShowCreatePage(!resultsPageMeta.length); setShowCreatePage(!resultsPageMeta.length);
//Determine whether to display the ‘+ New page’ //Determine whether to display the ‘+ New page’
@@ -92,40 +99,31 @@ export const Results: React.FC<ResultsProps> = ({
) )
) : ( ) : (
<div> <div>
{recentlyViewed.length > 0 && ( {recentlyViewedItem.length > 0 && (
<Command.Group heading={t('Recent')}> <Command.Group heading={t('Recent')}>
{recentlyViewed {recentlyViewedItem.map(recent => {
.filter(recent => { const page = pageList.find(page => recent.id === page.id);
const page = pageList.find(page => recent.id === page.id); assertExists(page);
if (!page) { return (
return false; <Command.Item
} else { key={page.id}
return page.trash !== true; value={page.id}
} onSelect={() => {
}) onClose();
.map(recent => { jumpToPage(blockSuiteWorkspace.id, page.id);
const page = pageList.find(page => recent.id === page.id); }}
assertExists(page); >
return ( <StyledListItem>
<Command.Item {recent.mode === 'edgeless' ? (
key={page.id} <EdgelessIcon />
value={page.id} ) : (
onSelect={() => { <PaperIcon />
onClose(); )}
jumpToPage(blockSuiteWorkspace.id, page.id); <span>{page.title || UNTITLED_WORKSPACE_NAME}</span>
}} </StyledListItem>
> </Command.Item>
<StyledListItem> );
{recent.mode === 'edgeless' ? ( })}
<EdgelessIcon />
) : (
<PaperIcon />
)}
<span>{page.title || UNTITLED_WORKSPACE_NAME}</span>
</StyledListItem>
</Command.Item>
);
})}
</Command.Group> </Command.Group>
)} )}