import MarkdownIt from 'markdown-it'; import markdownItAttrs from 'markdown-it-attrs'; import markdownItContainer from 'markdown-it-container'; import markdownItIns from 'markdown-it-ins'; import markdownItKbd from 'markdown-it-kbd'; import markdownItMark from 'markdown-it-mark'; /** * A custom Markdown It instance with added features. */ export const markdown = MarkdownIt({ html: true, xhtmlOut: false, breaks: false, langPrefix: 'language-', linkify: false, typographer: false }); markdown.use(markdownItIns); markdown.use(markdownItKbd); markdown.use(markdownItMark); ['info', 'warning'].forEach(type => { markdown.use(markdownItContainer, type, { render: function (tokens, idx) { const variant = type === 'warning' ? 'warning' : 'info'; const icon = type === 'warning' ? 'triangle-exclamation' : 'circle-info'; if (tokens[idx].nesting === 1) { return `