19 lines
669 B
TypeScript
19 lines
669 B
TypeScript
import DefaultTheme from "vitepress/theme";
|
|
import type { Theme } from "vitepress";
|
|
// @ts-expect-error vitepress 会处理 css 导入
|
|
import "./custom.css";
|
|
|
|
/** 无本地偏好时默认暗色(与主应用一致),仍可手动切换亮/暗。 */
|
|
const initTheme = `try { const k='vitepress-theme-appearance'; if(!localStorage.getItem(k)) localStorage.setItem(k,'dark'); } catch {}`;
|
|
|
|
export default {
|
|
extends: DefaultTheme,
|
|
enhanceApp() {
|
|
if (typeof document !== "undefined") {
|
|
const s = document.createElement("script");
|
|
s.textContent = initTheme;
|
|
document.head.prepend(s);
|
|
}
|
|
},
|
|
} satisfies Theme;
|