1import { L as inBrowser, Ot as watchEffect, W as ClientOnly, _ as dataSymbol, a as useCopyCode, b as useData, c as RouterSymbol, ht as onMounted, i as useUpdateHead, l as createRouter, lt as defineComponent, m as pathToFile, o as useCodeGroups, q as createSSRApp, r as usePrefetch, s as Content, t as __vitePreload, ut as h, v as initData, y as siteDataRef } from "./chunks/framework.BcTgqkOM.js"; 2import { t as theme_default } from "./chunks/theme.DQ-e-uVz.js"; 3//#region node_modules/.pnpm/[email protected][email protected][email protected][email protected]/node_modules/vitepress/dist/client/app/index.js 4function resolveThemeExtends(theme) { 5 if (theme.extends) { 6 const base = resolveThemeExtends(theme.extends); 7 return { 8 ...base, 9 ...theme, 10 async enhanceApp(ctx) { 11 await base.enhanceApp?.(ctx); 12 await theme.enhanceApp?.(ctx); 13 }, 14 setup() { 15 base.setup?.(); 16 theme.setup?.(); 17 } 18 }; 19 } 20 return theme; 21} 22var Theme = resolveThemeExtends(theme_default); 23var VitePressApp = defineComponent({ 24 name: "VitePressApp", 25 setup() { 26 const { site, lang, dir } = useData(); 27 onMounted(() => { 28 watchEffect(() => { 29 document.documentElement.lang = lang.value; 30 document.documentElement.dir = dir.value; 31 }); 32 }); 33 if (site.value.router.prefetchLinks) usePrefetch(); 34 useCopyCode(); 35 useCodeGroups(); 36 if (Theme.setup) Theme.setup(); 37 return () => h(Theme.Layout); 38 } 39}); 40async function createApp() { 41 globalThis.__VITEPRESS__ = true; 42 const router = newRouter(); 43 const app = newApp(); 44 app.provide(RouterSymbol, router); 45 const data = initData(router.route); 46 app.provide(dataSymbol, data); 47 app.component("Content", Content); 48 app.component("ClientOnly", ClientOnly); 49 Object.defineProperties(app.config.globalProperties, { 50 $frontmatter: { get() { 51 return data.frontmatter.value; 52 } }, 53 $params: { get() { 54 return data.page.value.params; 55 } } 56 }); 57 if (Theme.enhanceApp) await Theme.enhanceApp({ 58 app, 59 router, 60 siteData: siteDataRef 61 }); 62 return { 63 app, 64 router, 65 data 66 }; 67} 68function newApp() { 69 return createSSRApp(VitePressApp); 70} 71function newRouter() { 72 let isInitialPageLoad = inBrowser; 73 return createRouter((path) => { 74 let pageFilePath = pathToFile(path); 75 let pageModule = null; 76 if (pageFilePath) { 77 if (isInitialPageLoad) pageFilePath = pageFilePath.replace(/\.js$/, ".lean.js"); 78 pageModule = __vitePreload(() => import( 79 /*@vite-ignore*/ 80 pageFilePath 81), []); 82 } 83 if (inBrowser) isInitialPageLoad = false; 84 return pageModule; 85 }, Theme.NotFound); 86} 87if (inBrowser) createApp().then(({ app, router, data }) => { 88 router.go(location.href, { initialLoad: true }).then(() => { 89 useUpdateHead(router.route, data.site); 90 app.mount("#app"); 91 }); 92}); 93//#endregion 94export { createApp };
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.