Skip to content

Commit bc5817e

Browse files
authored
feat!: upgrade to Nuxt 4 for kit and client (#901)
1 parent ab3d5ab commit bc5817e

File tree

3 files changed

+478
-441
lines changed

3 files changed

+478
-441
lines changed
Lines changed: 32 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
import type { BuiltinLanguage } from 'shiki'
2-
import { defineNuxtModule, extendViteConfig, logger } from '@nuxt/kit'
2+
import { addVitePlugin, defineNuxtModule, logger } from '@nuxt/kit'
33
import { consola } from 'consola'
44
import LinkAttributes from 'markdown-it-link-attributes'
55
import { createHighlighter } from 'shiki'
@@ -24,39 +24,38 @@ export default defineNuxtModule({
2424

2525
nuxt.options.extensions.push('.md')
2626

27-
extendViteConfig((config) => {
28-
config.plugins!.push(
29-
Markdown({
30-
async markdownItSetup(md) {
31-
md.use(LinkAttributes, {
32-
matcher: (link: string) => /^https?:\/\//.test(link),
33-
attrs: {
34-
target: '_blank',
35-
rel: 'noopener',
27+
addVitePlugin(() => {
28+
return Markdown({
29+
frontmatter: false,
30+
async markdownItSetup(md) {
31+
md.use(LinkAttributes, {
32+
matcher: (link: string) => /^https?:\/\//.test(link),
33+
attrs: {
34+
target: '_blank',
35+
rel: 'noopener',
36+
},
37+
})
38+
39+
const highlighter = await createHighlighter({
40+
themes: [
41+
'vitesse-dark',
42+
'vitesse-light',
43+
],
44+
langs: Object.keys(bundledLanguages),
45+
})
46+
47+
md.options.highlight = (code, lang) => {
48+
const _lang = (highlighter.getLoadedLanguages().includes(lang) ? lang : 'text') as BuiltinLanguage
49+
return highlighter.codeToHtml(code, {
50+
lang: _lang || 'text',
51+
themes: {
52+
dark: 'vitesse-dark',
53+
light: 'vitesse-light',
3654
},
3755
})
38-
39-
const highlighter = await createHighlighter({
40-
themes: [
41-
'vitesse-dark',
42-
'vitesse-light',
43-
],
44-
langs: Object.keys(bundledLanguages),
45-
})
46-
47-
md.options.highlight = (code, lang) => {
48-
const _lang = (highlighter.getLoadedLanguages().includes(lang) ? lang : 'text') as BuiltinLanguage
49-
return highlighter.codeToHtml(code, {
50-
lang: _lang || 'text',
51-
themes: {
52-
dark: 'vitesse-dark',
53-
light: 'vitesse-light',
54-
},
55-
})
56-
}
57-
},
58-
}),
59-
)
60-
})
56+
}
57+
},
58+
})
59+
}, { server: false, client: true })
6160
},
6261
})

0 commit comments

Comments
 (0)