feat: mermaid

This commit is contained in:
2026-03-02 11:03:51 +08:00
parent e8ce7b7216
commit b737e9f4ea
6 changed files with 1297 additions and 35 deletions
+2
View File
@@ -2,10 +2,12 @@ import { Marked } from 'marked';
import {createDirectives, presetDirectiveConfigs} from 'marked-directive';
import yaml from 'js-yaml';
import markedAlert from "marked-alert";
import markedMermaid from "./mermaid";
// 使用 marked-directive 来支持指令语法
const marked = new Marked()
.use(markedAlert())
.use(markedMermaid())
.use(createDirectives([
...presetDirectiveConfigs,
{
+22
View File
@@ -0,0 +1,22 @@
import type {MarkedExtension} from "marked";
import mermaid from "mermaid";
mermaid.initialize({
theme: 'dark'
});
export default function markedMermaid(): MarkedExtension {
return {
renderer: {
code: (code) => {
// Use default render for other languages
if (code.lang !== 'mermaid') {
return false;
}
// Use Mermaid to render the diagram
return `<pre class="mermaid">${code.text}</pre>`;
},
},
};
}