upgrade mermaid to 10.2.4

This commit is contained in:
zadam 2023-07-14 19:56:37 +02:00
parent d4a9461460
commit 332b92791e
2 changed files with 1576 additions and 1232 deletions

2776
libraries/mermaid.min.js vendored

File diff suppressed because one or more lines are too long

View File

@ -75,8 +75,9 @@ export default class MermaidWidget extends NoteContextAwareWidget {
this.$errorContainer.hide(); this.$errorContainer.hide();
try { try {
await this.renderSvg(async renderedSvg => { const svg = await this.renderSvg();
this.$display.html(renderedSvg);
this.$display.html(svg);
await wheelZoomLoaded; await wheelZoomLoaded;
@ -88,22 +89,20 @@ export default class MermaidWidget extends NoteContextAwareWidget {
speed: 20, speed: 20,
zoomOnClick: false zoomOnClick: false
}); });
});
} catch (e) { } catch (e) {
this.$errorMessage.text(e.message); this.$errorMessage.text(e.message);
this.$errorContainer.show(); this.$errorContainer.show();
} }
} }
async renderSvg(cb) { async renderSvg() {
idCounter++; idCounter++;
const blob = await this.note.getBlob(); const blob = await this.note.getBlob();
const content = blob.content || ""; const content = blob.content || "";
// this can't be promisified since in case of error, this both calls callback with error SVG and throws exception const {svg} = await mermaid.mermaidAPI.render(`mermaid-graph-${idCounter}`, content);
// with error details return svg;
mermaid.mermaidAPI.render(`mermaid-graph-${idCounter}`, content, cb);
} }
async entitiesReloadedEvent({loadResults}) { async entitiesReloadedEvent({loadResults}) {
@ -117,9 +116,8 @@ export default class MermaidWidget extends NoteContextAwareWidget {
return; return;
} }
await this.renderSvg(renderedSvg => { const svg = await this.renderSvg();
this.download(`${this.note.title}.svg`, renderedSvg); this.download(`${this.note.title}.svg`, svg);
});
} }
download(filename, text) { download(filename, text) {