mirror of
https://github.com/pengzhanbo/vuepress-theme-plume.git
synced 2026-04-23 10:58:13 +08:00
perf: 优化默认导航栏生成
This commit is contained in:
parent
8f7f4cab42
commit
6b5fd5d427
@ -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',
|
||||
})
|
||||
}
|
||||
}
|
||||
}
|
||||
})
|
||||
|
||||
|
||||
@ -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
|
||||
}
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user