Le Tan 5 лет назад
Родитель
Сommit
be229bed63

+ 13 - 19
src/resources/markdown_template.js

@@ -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;
     }
 

+ 12 - 21
src/resources/mathjax_preview.js

@@ -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;
     }
 

Разница между файлами не показана из-за своего большого размера
+ 0 - 0
src/utils/mermaid/mermaid.min.js


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
src/utils/mermaid/mermaidAPI.min.js


+ 1 - 0
src/vconfigmanager.cpp

@@ -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";

+ 1 - 1
src/vnote.cpp

@@ -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";

+ 1 - 1
src/vnote.qrc

@@ -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>

Некоторые файлы не были показаны из-за большого количества измененных файлов