|
|
|
@ -1,7 +1,7 @@
|
|
|
|
|
import { useSiteData, usePageData, useRoute } from 'vitepress'
|
|
|
|
|
import { computed, h, FunctionalComponent, VNode } from 'vue'
|
|
|
|
|
import { Header } from '../../../../types/shared'
|
|
|
|
|
import { isActive, resolvePath } from '../utils'
|
|
|
|
|
import { isActive, getPathDirName } from '../utils'
|
|
|
|
|
import { DefaultTheme } from '../config'
|
|
|
|
|
import { useActiveSidebarLinks } from '../composables/activeSidebarLink'
|
|
|
|
|
|
|
|
|
@ -91,6 +91,10 @@ interface ResolvedSidebarItem {
|
|
|
|
|
function resolveAutoSidebar(headers: Header[], depth: number): ResolvedSidebar {
|
|
|
|
|
const ret: ResolvedSidebar = []
|
|
|
|
|
|
|
|
|
|
if (headers === undefined) {
|
|
|
|
|
return []
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
let lastH2: ResolvedSidebarItem | undefined = undefined
|
|
|
|
|
headers.forEach(({ level, title, slug }) => {
|
|
|
|
|
if (level - 1 > depth) {
|
|
|
|
@ -125,7 +129,7 @@ function resolveMultiSidebar(
|
|
|
|
|
headers: Header[],
|
|
|
|
|
depth: number
|
|
|
|
|
): ResolvedSidebar {
|
|
|
|
|
const item = config[resolvePath(path)]
|
|
|
|
|
const item = config[getPathDirName(path)]
|
|
|
|
|
|
|
|
|
|
if (Array.isArray(item)) {
|
|
|
|
|
return resolveArraySidebar(item, depth)
|
|
|
|
|