Adding mermaid.js support via markdown-it.

- Fixes #2754
This commit is contained in:
Dessalines 2024-10-15 15:50:03 -04:00
parent b05363beb5
commit 25b2a7bb86
3 changed files with 828 additions and 0 deletions

View file

@ -33,6 +33,7 @@
"@babel/preset-typescript": "^7.24.7", "@babel/preset-typescript": "^7.24.7",
"@babel/runtime": "^7.25.4", "@babel/runtime": "^7.25.4",
"@emoji-mart/data": "^1.2.1", "@emoji-mart/data": "^1.2.1",
"@wekanteam/markdown-it-mermaid": "^0.6.4",
"autosize": "^6.0.1", "autosize": "^6.0.1",
"babel-loader": "^9.1.3", "babel-loader": "^9.1.3",
"babel-plugin-inferno": "^6.7.1", "babel-plugin-inferno": "^6.7.1",

File diff suppressed because it is too large Load diff

View file

@ -14,6 +14,7 @@ import markdown_it_ruby from "markdown-it-ruby";
import markdown_it_sub from "markdown-it-sub"; import markdown_it_sub from "markdown-it-sub";
import markdown_it_sup from "markdown-it-sup"; import markdown_it_sup from "markdown-it-sup";
import markdown_it_highlightjs from "markdown-it-highlightjs/core"; import markdown_it_highlightjs from "markdown-it-highlightjs/core";
import markdown_it_mermaid from "@wekanteam/markdown-it-mermaid";
import { Renderer, Token } from "markdown-it"; import { Renderer, Token } from "markdown-it";
import { instanceLinkRegex, relTags } from "./config"; import { instanceLinkRegex, relTags } from "./config";
import { lazyHighlightjs } from "./lazy-highlightjs"; import { lazyHighlightjs } from "./lazy-highlightjs";
@ -176,6 +177,7 @@ export function setupMarkdown() {
.use(markdown_it_html5_embed, html5EmbedConfig) .use(markdown_it_html5_embed, html5EmbedConfig)
.use(markdown_it_container, "spoiler", spoilerConfig) .use(markdown_it_container, "spoiler", spoilerConfig)
.use(markdown_it_highlightjs, highlightjsConfig) .use(markdown_it_highlightjs, highlightjsConfig)
.use(markdown_it_mermaid)
.use(markdown_it_ruby) .use(markdown_it_ruby)
.use(localInstanceLinkParser) .use(localInstanceLinkParser)
.use(markdown_it_bidi); .use(markdown_it_bidi);
@ -190,6 +192,7 @@ export function setupMarkdown() {
.use(markdown_it_html5_embed, html5EmbedConfig) .use(markdown_it_html5_embed, html5EmbedConfig)
.use(markdown_it_container, "spoiler", spoilerConfig) .use(markdown_it_container, "spoiler", spoilerConfig)
.use(markdown_it_highlightjs, highlightjsConfig) .use(markdown_it_highlightjs, highlightjsConfig)
.use(markdown_it_mermaid)
.use(localInstanceLinkParser) .use(localInstanceLinkParser)
.use(markdown_it_bidi) .use(markdown_it_bidi)
// .use(markdown_it_emoji, { // .use(markdown_it_emoji, {