UNPKG

@nolebase/integrations

Version:

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

43 lines (37 loc) 1.31 kB
'use strict'; const node_process = require('node:process'); const defu = require('defu'); function _interopDefaultCompat (e) { return e && typeof e === 'object' && 'default' in e ? e.default : e; } const defu__default = /*#__PURE__*/_interopDefaultCompat(defu); function presetMarkdownIt(options) { const opts = defu__default(options, { bidirectionalLinks: { options: { dir: node_process.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); } } }; } exports.presetMarkdownIt = presetMarkdownIt;