|
|
|
@ -1,5 +1,5 @@
|
|
|
|
import type { DefaultTheme } from 'vitepress/theme'
|
|
|
|
import type { DefaultTheme } from 'vitepress/theme'
|
|
|
|
import { isActive } from '../../shared'
|
|
|
|
import { isActive, isExternal } from '../../shared'
|
|
|
|
import { ensureStartingSlash } from './utils'
|
|
|
|
import { ensureStartingSlash } from './utils'
|
|
|
|
|
|
|
|
|
|
|
|
export interface SidebarLink {
|
|
|
|
export interface SidebarLink {
|
|
|
|
@ -112,7 +112,7 @@ function addBase(items: SidebarItem[], _base?: string): SidebarItem[] {
|
|
|
|
return [...items].map((_item) => {
|
|
|
|
return [...items].map((_item) => {
|
|
|
|
const item = { ..._item }
|
|
|
|
const item = { ..._item }
|
|
|
|
const base = item.base || _base
|
|
|
|
const base = item.base || _base
|
|
|
|
if (base && item.link)
|
|
|
|
if (base && item.link && !isExternal(item.link))
|
|
|
|
item.link = base + item.link.replace(/^\//, base.endsWith('/') ? '' : '/')
|
|
|
|
item.link = base + item.link.replace(/^\//, base.endsWith('/') ? '' : '/')
|
|
|
|
if (item.items) item.items = addBase(item.items, base)
|
|
|
|
if (item.items) item.items = addBase(item.items, base)
|
|
|
|
return item
|
|
|
|
return item
|
|
|
|
|