upgrade Mermaid.js to v10

This commit is contained in:
Le Tan 2024-06-19 16:46:21 +08:00
parent 84891fb2f2
commit 06c712cb64
4 changed files with 1859 additions and 1409 deletions

View File

@ -73,7 +73,7 @@ class GraphRenderer extends VxWorker {
}
});
this.doRender(this.nodesToRender);
this.doRender();
}
// Interface 2.

View File

@ -16,7 +16,7 @@ class Mermaid extends GraphRenderer {
initialize(p_callback) {
return super.initialize(() => {
mermaid.mermaidAPI.initialize({
mermaid.initialize({
startOnLoad: false,
theme: this.theme
});
@ -26,12 +26,12 @@ class Mermaid extends GraphRenderer {
// Render @p_node as Mermaid graph.
// Return true on success.
renderOne(p_node, p_idx) {
async renderOne(p_node, p_idx) {
let graphSvg = null;
try {
graphSvg = mermaid.mermaidAPI.render('vx-mermaid-graph-' + p_idx,
p_node.textContent,
function() {});
const { svg } = await mermaid.render('vx-mermaid-graph-' + p_idx,
p_node.textContent);
graphSvg = svg;
} catch (p_err) {
console.error('failed to render Mermaid', p_err);
// Clean the container element, or Mermaid won't render the graph with
@ -72,12 +72,12 @@ class Mermaid extends GraphRenderer {
// Render a graph from @p_text.
// Will append a div to @p_container and return the div.
renderTextInternal(p_container, p_text, p_idx) {
async renderTextInternal(p_container, p_text, p_idx) {
let graphSvg = null;
try {
graphSvg = mermaid.mermaidAPI.render('vx-mermaid-graph-stand-alone-' + p_idx,
p_text,
function() {});
const { svg } = await mermaid.render('vx-mermaid-graph-stand-alone-' + p_idx,
p_text);
graphSvg = svg;
} catch (p_err) {
console.error('failed to render Mermaid', p_err);
// Clean the container element, or Mermaid won't render the graph with
@ -104,20 +104,21 @@ class Mermaid extends GraphRenderer {
}
p_container.appendChild(graphDiv);
console.log(graphDiv);
return graphDiv;
}
// p_callback(graphDiv).
renderText(p_container, p_text, p_idx, p_callback) {
if (!this.initialize(() => {
let graphDiv = this.renderTextInternal(p_container, p_text, p_idx);
async renderText(p_container, p_text, p_idx, p_callback) {
if (!this.initialize(async () => {
let graphDiv = await this.renderTextInternal(p_container, p_text, p_idx);
p_callback(graphDiv);
})) {
return;
}
let graphDiv = this.renderTextInternal(p_container, p_text, p_idx);
let graphDiv = await this.renderTextInternal(p_container, p_text, p_idx);
console.log(graphDiv);
p_callback(graphDiv);
}
}

View File

@ -1,2 +1,2 @@
# [mermaid](https://github.com/mermaid-js/mermaid)
v9.4.3
v10.9.1

File diff suppressed because one or more lines are too long