diff --git a/layout/_third-party/tags/mermaid.njk b/layout/_third-party/tags/mermaid.njk index 9f59dc4..d551ed8 100644 --- a/layout/_third-party/tags/mermaid.njk +++ b/layout/_third-party/tags/mermaid.njk @@ -3,13 +3,13 @@ diff --git a/scripts/tags/mermaid.js b/scripts/tags/mermaid.js index e2a029c..04dc4f4 100644 --- a/scripts/tags/mermaid.js +++ b/scripts/tags/mermaid.js @@ -4,9 +4,11 @@ 'use strict'; +const { escapeHTML } = require('hexo-util'); + module.exports = function(args, content) { return `
${args.join(' ')}
-${content}
+${escapeHTML(content)}
`;
};
diff --git a/test/tags/mermaid.js b/test/tags/mermaid.js
index 546e75a..359cc04 100644
--- a/test/tags/mermaid.js
+++ b/test/tags/mermaid.js
@@ -2,6 +2,8 @@
require('chai').should();
+const { escapeHTML } = require('hexo-util');
+
const result = `A[Hard] -->|Text| B(Round)
B --> C{Decision}
C -->|One| D[Result 1]
@@ -13,7 +15,7 @@ describe('mermaid', () => {
it('default', () => {
mermaid(['graph', 'TD'], result).should.eql(`
graph TD
-${result}
+${escapeHTML(result)}
`);
});
});