From 306aae354cdf458afb0a101c5b3325cf501e0f70 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=8C=97=E9=9B=81=E4=BA=91=E4=BE=9D?= <14120445+BeiyanYunyi@users.noreply.github.com> Date: Sat, 20 Apr 2024 11:33:14 +0800 Subject: [PATCH] refactor(style): :art: Move changelog and suggestion box to footer (#315) --- docs/.vitepress/components.d.ts | 1 + .../.vitepress/theme/components/AppFooter.vue | 16 +++++ docs/.vitepress/theme/index.ts | 22 ++++--- docs/vite.config.ts | 63 ++++++++++--------- 4 files changed, 61 insertions(+), 41 deletions(-) create mode 100644 docs/.vitepress/theme/components/AppFooter.vue diff --git a/docs/.vitepress/components.d.ts b/docs/.vitepress/components.d.ts index 1acce5d..adbbe27 100644 --- a/docs/.vitepress/components.d.ts +++ b/docs/.vitepress/components.d.ts @@ -8,6 +8,7 @@ export {} declare module 'vue' { export interface GlobalComponents { AppearanceToggle: typeof import('./theme/components/AppearanceToggle.vue')['default'] + AppFooter: typeof import('./theme/components/AppFooter.vue')['default'] AppSBox: typeof import('./theme/components/AppSBox.vue')['default'] ArticlesMenu: typeof import('./theme/components/ArticlesMenu.vue')['default'] CopyrightInfo: typeof import('./theme/components/CopyrightInfo.vue')['default'] diff --git a/docs/.vitepress/theme/components/AppFooter.vue b/docs/.vitepress/theme/components/AppFooter.vue new file mode 100644 index 0000000..cbb8f07 --- /dev/null +++ b/docs/.vitepress/theme/components/AppFooter.vue @@ -0,0 +1,16 @@ + + + diff --git a/docs/.vitepress/theme/index.ts b/docs/.vitepress/theme/index.ts index a01da93..3635f30 100644 --- a/docs/.vitepress/theme/index.ts +++ b/docs/.vitepress/theme/index.ts @@ -1,12 +1,11 @@ // https://vitepress.dev/guide/custom-theme -import { h } from 'vue' import type { Theme } from 'vitepress' import DefaultTheme from 'vitepress/theme' -import AppearanceToggle from './components/AppearanceToggle.vue' +import { h } from 'vue' import { - NolebaseEnhancedReadabilitiesPlugin, NolebaseEnhancedReadabilitiesMenu, + NolebaseEnhancedReadabilitiesPlugin, NolebaseEnhancedReadabilitiesScreenMenu, } from '@nolebase/vitepress-plugin-enhanced-readabilities/client' @@ -15,25 +14,28 @@ import { } from '@nolebase/vitepress-plugin-highlight-targeted-heading/client' import { - NolebaseGitChangelogPlugin + NolebaseGitChangelogPlugin, } from '@nolebase/vitepress-plugin-git-changelog/client' +import AppearanceToggle from './components/AppearanceToggle.vue' import '@nolebase/vitepress-plugin-enhanced-readabilities/client/style.css' -import '@nolebase/vitepress-plugin-highlight-targeted-heading/client/style.css' import '@nolebase/vitepress-plugin-git-changelog/client/style.css' +import '@nolebase/vitepress-plugin-highlight-targeted-heading/client/style.css' import 'uno.css' +import AppFooter from './components/AppFooter.vue' import './style.css' export default { extends: DefaultTheme, Layout: () => { return h(AppearanceToggle, null, { - 'default': () => h(DefaultTheme.Layout, null, { + default: () => h(DefaultTheme.Layout, null, { // https://vitepress.dev/guide/extending-default-theme#layout-slots 'doc-top': () => [ h(NolebaseHighlightTargetedHeading), ], + 'doc-after': () => [h(AppFooter)], 'nav-bar-content-after': () => [ h(NolebaseEnhancedReadabilitiesMenu), ], @@ -47,15 +49,15 @@ export default { app.use(NolebaseEnhancedReadabilitiesPlugin, { spotlight: { defaultToggle: true, - } + }, }) app.use(NolebaseGitChangelogPlugin, { locales: { 'zh-CN': { lastEditedDateFnsLocaleName: 'zhCN', - } - } + }, + }, }) - } + }, } satisfies Theme diff --git a/docs/vite.config.ts b/docs/vite.config.ts index c31aef8..4cdf72b 100644 --- a/docs/vite.config.ts +++ b/docs/vite.config.ts @@ -1,14 +1,14 @@ import { resolve } from 'node:path' import { defineConfig } from 'vite' +import Components from 'unplugin-vue-components/vite' +import UnoCSS from 'unocss/vite' +import { GitChangelog, GitChangelogMarkdownSection } from '@nolebase/vitepress-plugin-git-changelog/vite' import { MarkdownSectionWrapper, PageHeaderTemplate, TemplateAppSBox, - TemplateCopyrightInfo + TemplateCopyrightInfo, } from './.vitepress/plugins/MarkdownSectionWrapper' -import Components from 'unplugin-vue-components/vite' -import UnoCSS from 'unocss/vite' -import { GitChangelog, GitChangelogMarkdownSection } from '@nolebase/vitepress-plugin-git-changelog/vite' export default defineConfig({ server: { @@ -20,44 +20,45 @@ export default defineConfig({ changeOrigin: true, autoRewrite: true, }, - } + }, }, plugins: [ MarkdownSectionWrapper( - [PageHeaderTemplate, TemplateCopyrightInfo], - [TemplateAppSBox], - { - excludes: [], - exclude: (_, { helpers }): boolean => { - if (helpers.idEquals('index.md')) - return true + [PageHeaderTemplate, TemplateCopyrightInfo], + [], + { + excludes: [], + exclude: (_, { helpers }): boolean => { + if (helpers.idEquals('index.md')) + return true - return false - }, - }), + return false + }, + }, + ), GitChangelog({ repoURL: 'https://github.com/project-trans/RLE-wiki', maxGitLogCount: 1000, rewritePaths: { 'docs/': '', - } + }, }), - GitChangelogMarkdownSection({ - sections: { - disableChangelog: false, - disableContributors: true - }, - getChangelogTitle: (): string => { - return '文件历史' - }, - excludes: [], - exclude: (_, { helpers }): boolean => { - if (helpers.idEquals('index.md')) - return true + // GitChangelogMarkdownSection({ + // sections: { + // disableChangelog: false, + // disableContributors: true, + // }, + // getChangelogTitle: (): string => { + // return '文件历史' + // }, + // excludes: [], + // exclude: (_, { helpers }): boolean => { + // if (helpers.idEquals('index.md')) + // return true - return false - }, - }), + // return false + // }, + // }), Components({ dirs: resolve(__dirname, '.vitepress/theme/components'), include: [/\.vue$/, /\.vue\?vue/, /\.md$/],