fix: journal doc title in at menu (#7608)
Fix issue [BS-900](https://linear.app/affine-design/issue/BS-900). ### What Changed? - Add i18n for journal doc title and empty doc title.
This commit is contained in:
@@ -64,7 +64,7 @@ export function pageReferenceRenderer({
|
|||||||
<>
|
<>
|
||||||
{icon}
|
{icon}
|
||||||
<span className="affine-reference-title">
|
<span className="affine-reference-title">
|
||||||
{title ? title : 'Untitled'}
|
{title ? title : t['Untitled']()}
|
||||||
</span>
|
</span>
|
||||||
</>
|
</>
|
||||||
);
|
);
|
||||||
|
|||||||
@@ -1,5 +1,6 @@
|
|||||||
import { WorkspacePropertiesAdapter } from '@affine/core/modules/properties';
|
import { WorkspacePropertiesAdapter } from '@affine/core/modules/properties';
|
||||||
import { mixpanel } from '@affine/core/utils';
|
import { mixpanel } from '@affine/core/utils';
|
||||||
|
import { I18n, i18nTime } from '@affine/i18n';
|
||||||
import type { EditorHost } from '@blocksuite/block-std';
|
import type { EditorHost } from '@blocksuite/block-std';
|
||||||
import type { AffineInlineEditor } from '@blocksuite/blocks';
|
import type { AffineInlineEditor } from '@blocksuite/blocks';
|
||||||
import { LinkedWidgetUtils } from '@blocksuite/blocks';
|
import { LinkedWidgetUtils } from '@blocksuite/blocks';
|
||||||
@@ -36,11 +37,24 @@ export function createLinkedWidgetConfig(framework: FrameworkProvider) {
|
|||||||
}
|
}
|
||||||
return !meta.trash;
|
return !meta.trash;
|
||||||
})
|
})
|
||||||
|
.map(meta => {
|
||||||
|
if (isJournal(meta)) {
|
||||||
|
const date = adapter.getJournalPageDateString(meta.id);
|
||||||
|
if (date) {
|
||||||
|
const title = i18nTime(date, { absolute: { accuracy: 'day' } });
|
||||||
|
return { ...meta, title };
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (!meta.title) {
|
||||||
|
const title = I18n['Untitled']();
|
||||||
|
return { ...meta, title };
|
||||||
|
}
|
||||||
|
return meta;
|
||||||
|
})
|
||||||
.filter(({ title }) => isFuzzyMatch(title, query));
|
.filter(({ title }) => isFuzzyMatch(title, query));
|
||||||
|
|
||||||
// TODO need i18n if BlockSuite supported
|
// TODO need i18n if BlockSuite supported
|
||||||
const MAX_DOCS = 6;
|
const MAX_DOCS = 6;
|
||||||
const DEFAULT_DOC_NAME = 'Untitled';
|
|
||||||
const docsService = framework.get(DocsService);
|
const docsService = framework.get(DocsService);
|
||||||
const isEdgeless = (d: DocMeta) =>
|
const isEdgeless = (d: DocMeta) =>
|
||||||
docsService.list.getMode(d.id) === 'edgeless';
|
docsService.list.getMode(d.id) === 'edgeless';
|
||||||
@@ -49,7 +63,7 @@ export function createLinkedWidgetConfig(framework: FrameworkProvider) {
|
|||||||
name: 'Link to Doc',
|
name: 'Link to Doc',
|
||||||
items: docMetas.map(doc => ({
|
items: docMetas.map(doc => ({
|
||||||
key: doc.id,
|
key: doc.id,
|
||||||
name: doc.title || DEFAULT_DOC_NAME,
|
name: doc.title,
|
||||||
icon: isJournal(doc)
|
icon: isJournal(doc)
|
||||||
? TodayIcon
|
? TodayIcon
|
||||||
: isEdgeless(doc)
|
: isEdgeless(doc)
|
||||||
|
|||||||
Reference in New Issue
Block a user