UNPKG

@nolebase/integrations

Version:

A unconfig (unified configurations) for both VitePress and VitePress theme. Supporting all Nólëbase Integrations with default theme.

37 lines (34 loc) 1.06 kB
import { cwd } from 'node:process'; import defu from 'defu'; function presetMarkdownIt(options) { const opts = defu(options, { bidirectionalLinks: { options: { dir: cwd() } }, unlazyImages: { options: { imgElementTag: "NolebaseUnlazyImg" } }, inlineLinkPreview: true }); return { async install(md) { if (opts.bidirectionalLinks) { const { BiDirectionalLinks } = await import('@nolebase/markdown-it-bi-directional-links'); md.use(BiDirectionalLinks(opts.bidirectionalLinks.options)); } if (opts.unlazyImages) { const { UnlazyImages } = await import('@nolebase/markdown-it-unlazy-img'); md.use(UnlazyImages(), opts.unlazyImages.options); } if (opts.inlineLinkPreview) { const { InlineLinkPreviewElementTransform } = await import('@nolebase/vitepress-plugin-inline-link-preview/markdown-it'); md.use(InlineLinkPreviewElementTransform, opts.inlineLinkPreview.options); } } }; } export { presetMarkdownIt };