Files
docs/docs/.vitepress/theme/index.mts
T

25 lines
995 B
TypeScript

import { h } from 'vue'
import DefaultTheme from 'vitepress/theme'
import type { Theme } from 'vitepress'
import {
InjectionKey,
NolebaseEnhancedReadabilitiesMenu,
NolebaseEnhancedReadabilitiesScreenMenu,
} from '@nolebase/vitepress-plugin-enhanced-readabilities/client'
import { NolebaseHighlightTargetedHeading } from '@nolebase/vitepress-plugin-highlight-targeted-heading/client'
import '@nolebase/vitepress-plugin-enhanced-readabilities/client/style.css'
import '@nolebase/vitepress-plugin-highlight-targeted-heading/client/style.css'
import './style.css'
export default {
extends: DefaultTheme,
enhanceApp({ app }) {
app.provide(InjectionKey, { spotlight: { defaultToggle: true } })
},
Layout: () => h(DefaultTheme.Layout, null, {
'nav-bar-content-after': () => h(NolebaseEnhancedReadabilitiesMenu),
'nav-screen-content-after': () => h(NolebaseEnhancedReadabilitiesScreenMenu),
'layout-top': () => h(NolebaseHighlightTargetedHeading),
}),
} satisfies Theme