返回 slidev
conditional-styles.ts
根目录 / packages / slidev / node / virtual / conditional-styles.ts
1 import type { VirtualModuleTemplate } from './types'
2 import { join } from 'pathe'
3 import { resolveImportUrl } from '../resolver'
4
5 const id = '/@slidev/conditional-styles'
6
7 export const templateConditionalStyles: VirtualModuleTemplate = {
8 id,
9 async getContent({ data, roots }) {
10 const imports: string[] = []
11
12 for (const root of roots) {
13 const importPath = this.makeAbsoluteImportGlob([
14 join(root, 'styles/index.{ts,js,css}'),
15 join(root, 'styles.{ts,js,css}'),
16 join(root, 'style.{ts,js,css}'),
17 ])
18 imports.push(`import ${JSON.stringify(importPath)}`)
19 }
20
21 if (data.features.katex)
22 imports.push(`import "${await resolveImportUrl('katex/dist/katex.min.css')}"`)
23
24 return imports.join('\n')
25 },
26 }
27
27 lines TYPESCRIPT