verstak
Version:
Verstak - Front-End Library
23 lines (22 loc) • 628 B
JavaScript
import Md from "markdown-it";
import * as prism from "prismjs";
import { Block } from "verstak";
export function Markdown(content) {
return (Block({
preparation(el, base) {
this.contentWrapping = true;
base();
},
body() {
this.textIsFormatted = true;
this.text = md.render(content);
},
}));
}
const md = new Md({
html: true,
highlight: (str, lang, attrs) => {
const highlighted = prism.highlight(str, prism.languages[lang], lang);
return `<pre class="language-${lang}"><code>${highlighted}</code></pre>`;
},
});