perf: 优化默认导航栏生成

This commit is contained in:
pengzhanbo 2024-01-08 00:41:39 +08:00
parent 8f7f4cab42
commit 6b5fd5d427
2 changed files with 30 additions and 0 deletions

View File

@ -52,16 +52,22 @@ export const fallbackLocaleOption: Partial<PlumeThemeLocaleOptions> = {
interface PresetLocale {
home: string
blog: string
tag: string
archive: string
}
const presetLocales: Record<string, PresetLocale> = {
'zh-CN': {
home: '首页',
blog: '博客',
tag: '标签',
archive: '归档',
},
'en-US': {
home: 'Home',
blog: 'Blog',
tag: 'Tags',
archive: 'Archives',
},
}
@ -131,6 +137,23 @@ export function mergeLocaleOptions(app: App, options: PlumeThemeLocaleOptions) {
text: presetLocales[lang]?.blog || presetLocales[defaultLang].blog,
icon: 'material-symbols:article-outline',
})
const avatar = resolveLocaleOptions(options, 'avatar')
if (!avatar) {
if (blog?.tags !== false || defaultBlog?.tags !== false) {
option.navbar.push({
link: pathJoin(link, 'tags/'),
text: presetLocales[lang]?.tag || presetLocales[defaultLang].tag,
icon: 'tabler:tag',
})
}
if (blog?.archives !== false || defaultBlog?.archives !== false) {
option.navbar.push({
link: pathJoin(link, 'archives/'),
text: presetLocales[lang]?.archive || presetLocales[defaultLang].archive,
icon: 'ph:file-archive',
})
}
}
}
})

View File

@ -12,6 +12,13 @@ export function definePlumeNotesItemConfig(item: NotesItemOptions): NotesItemOpt
return item
}
export function defineNavbarConfig(navbar: NavItem[]): NavItem[] {
return navbar
}
/**
* @deprecated move to `defineNavbarConfig`
*/
export function defineNavbar(navbar: NavItem[]): NavItem[] {
return navbar
}