mirror of
https://gitee.com/vnotex/vnote.git
synced 2025-07-05 13:59:52 +08:00
upgrade mermaid.js
This commit is contained in:
parent
1f154c08c5
commit
be229bed63
@ -30,7 +30,7 @@ var VPreviewMode = false;
|
||||
if (typeof VEnableMermaid == 'undefined') {
|
||||
VEnableMermaid = false;
|
||||
} else if (VEnableMermaid) {
|
||||
mermaidAPI.initialize({
|
||||
mermaid.initialize({
|
||||
startOnLoad: false
|
||||
});
|
||||
}
|
||||
@ -608,23 +608,8 @@ document.onkeydown = function(e) {
|
||||
}
|
||||
};
|
||||
|
||||
var mermaidParserErr = false;
|
||||
var mermaidIdx = 0;
|
||||
|
||||
if (VEnableMermaid) {
|
||||
mermaidAPI.parseError = function(err, hash) {
|
||||
content.setLog("err: " + err);
|
||||
mermaidParserErr = true;
|
||||
|
||||
// Clean the container element, or mermaidAPI won't render the graph with
|
||||
// the same id.
|
||||
var errGraph = document.getElementById('mermaid-diagram-' + mermaidIdx);
|
||||
var parentNode = errGraph.parentElement;
|
||||
parentNode.outerHTML = '';
|
||||
delete parentNode;
|
||||
};
|
||||
}
|
||||
|
||||
// @className, the class name of the mermaid code block, such as 'lang-mermaid'.
|
||||
var renderMermaid = function(className) {
|
||||
if (!VEnableMermaid) {
|
||||
@ -648,17 +633,26 @@ var renderMermaid = function(className) {
|
||||
// Returns true if succeeded.
|
||||
var renderMermaidOne = function(code) {
|
||||
// Mermaid code block.
|
||||
mermaidParserErr = false;
|
||||
mermaidIdx++;
|
||||
try {
|
||||
// Do not increment mermaidIdx here.
|
||||
var graph = mermaidAPI.render('mermaid-diagram-' + mermaidIdx, code.textContent, function(){});
|
||||
var graph = mermaid.render('mermaid-diagram-' + mermaidIdx,
|
||||
code.textContent,
|
||||
function(){});
|
||||
} catch (err) {
|
||||
content.setLog("err: " + err);
|
||||
// Clean the container element, or mermaid won't render the graph with
|
||||
// the same id.
|
||||
var errGraph = document.getElementById('mermaid-diagram-' + mermaidIdx);
|
||||
if (errGraph) {
|
||||
var parentNode = errGraph.parentElement;
|
||||
parentNode.outerHTML = '';
|
||||
delete parentNode;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
if (mermaidParserErr || typeof graph == "undefined") {
|
||||
if (typeof graph == "undefined") {
|
||||
return false;
|
||||
}
|
||||
|
||||
|
@ -108,28 +108,12 @@ var postProcessMathJax = function(identifier, id, timeStamp, container, isBlock)
|
||||
});
|
||||
};
|
||||
|
||||
var mermaidParserErr = false;
|
||||
var mermaidIdx = 0;
|
||||
|
||||
var flowchartIdx = 0;
|
||||
|
||||
var wavedromIdx = 0;
|
||||
|
||||
if (typeof mermaidAPI != "undefined") {
|
||||
mermaidAPI.parseError = function(err, hash) {
|
||||
mermaidParserErr = true;
|
||||
|
||||
// Clean the container element, or mermaidAPI won't render the graph with
|
||||
// the same id.
|
||||
var errGraph = document.getElementById('mermaid-diagram-' + mermaidIdx);
|
||||
if (errGraph) {
|
||||
var parentNode = errGraph.parentElement;
|
||||
parentNode.outerHTML = '';
|
||||
delete parentNode;
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
var previewDiagram = function(identifier, id, timeStamp, lang, text) {
|
||||
if (text.length == 0) {
|
||||
return;
|
||||
@ -173,19 +157,26 @@ var previewDiagram = function(identifier, id, timeStamp, lang, text) {
|
||||
};
|
||||
|
||||
var renderMermaidOne = function(identifier, id, timeStamp, text) {
|
||||
mermaidParserErr = false;
|
||||
mermaidIdx++;
|
||||
try {
|
||||
// Do not increment mermaidIdx here.
|
||||
var graph = mermaidAPI.render('mermaid-diagram-' + mermaidIdx,
|
||||
text,
|
||||
function(){});
|
||||
var graph = mermaid.render('mermaid-diagram-' + mermaidIdx,
|
||||
text,
|
||||
function(){});
|
||||
} catch (err) {
|
||||
content.setLog("err: " + err);
|
||||
// Clean the container element, or mermaid won't render the graph with
|
||||
// the same id.
|
||||
var errGraph = document.getElementById('mermaid-diagram-' + mermaidIdx);
|
||||
if (errGraph) {
|
||||
var parentNode = errGraph.parentElement;
|
||||
parentNode.outerHTML = '';
|
||||
delete parentNode;
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
if (mermaidParserErr || typeof graph == "undefined") {
|
||||
if (typeof graph == "undefined") {
|
||||
return null;
|
||||
}
|
||||
|
||||
|
49
src/utils/mermaid/mermaid.min.js
vendored
Normal file
49
src/utils/mermaid/mermaid.min.js
vendored
Normal file
File diff suppressed because one or more lines are too long
22
src/utils/mermaid/mermaidAPI.min.js
vendored
22
src/utils/mermaid/mermaidAPI.min.js
vendored
File diff suppressed because one or more lines are too long
@ -926,6 +926,7 @@ const QString &VConfigManager::getCommonCssUrl() const
|
||||
if (cssPath.isEmpty()) {
|
||||
cssPath = QDir(getResourceConfigFolder()).filePath("common.css");
|
||||
if (m_versionChanged || !QFileInfo::exists(cssPath)) {
|
||||
VUtils::deleteFile(cssPath);
|
||||
// Output the default one.
|
||||
if (!VUtils::copyFile(":/resources/common.css", cssPath, false)) {
|
||||
cssPath = "qrc:/resources/common.css";
|
||||
|
@ -52,7 +52,7 @@ const QString VNote::c_showdownAnchorExtraFile = ":/utils/showdown/showdown-head
|
||||
const QString VNote::c_turndownJsFile = ":/utils/turndown/turndown.js";
|
||||
const QString VNote::c_turndownGfmExtraFile = ":/utils/turndown/turndown-plugin-gfm.js";
|
||||
|
||||
const QString VNote::c_mermaidApiJsFile = ":/utils/mermaid/mermaidAPI.min.js";
|
||||
const QString VNote::c_mermaidApiJsFile = ":/utils/mermaid/mermaid.min.js";
|
||||
const QString VNote::c_mermaidForestCssFile = ":/utils/mermaid/mermaid.forest.css";
|
||||
|
||||
const QString VNote::c_flowchartJsFile = ":/utils/flowchart.js/flowchart.min.js";
|
||||
|
@ -56,7 +56,6 @@
|
||||
<file>utils/markdown-it/markdown-it.min.js</file>
|
||||
<file>utils/markdown-it/markdown-it-headinganchor.js</file>
|
||||
<file>utils/markdown-it/markdown-it-task-lists.min.js</file>
|
||||
<file>utils/mermaid/mermaidAPI.min.js</file>
|
||||
<file>resources/icons/close_red.svg</file>
|
||||
<file>resources/docs/shortcuts_en.md</file>
|
||||
<file>resources/docs/shortcuts_zh.md</file>
|
||||
@ -358,5 +357,6 @@
|
||||
<file>resources/themes/v_next/v_next.qss</file>
|
||||
<file>resources/themes/v_next/v_next_codeblock.css</file>
|
||||
<file>resources/themes/v_next/v_next_mermaid.css</file>
|
||||
<file>utils/mermaid/mermaid.min.js</file>
|
||||
</qresource>
|
||||
</RCC>
|
||||
|
Loading…
x
Reference in New Issue
Block a user