From fbeffb0b5d2af034946555a5abf818bdc732e75d Mon Sep 17 00:00:00 2001 From: Michael Schuldes Date: Sat, 18 May 2019 13:35:44 +0200 Subject: [PATCH] Added plantUML mindmap support --- browser/lib/markdown.js | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/browser/lib/markdown.js b/browser/lib/markdown.js index 49183442..7b22d379 100644 --- a/browser/lib/markdown.js +++ b/browser/lib/markdown.js @@ -211,6 +211,22 @@ class Markdown { } }) + // Mindmap support + this.md.use(require('markdown-it-plantuml'), { + openMarker: '@startmindmap', + closeMarker: '@endmindmap', + generateSource: function (umlCode) { + const stripTrailingSlash = (url) => url.endsWith('/') ? url.slice(0, -1) : url + // Currently PlantUML server doesn't support Ditaa in SVG, so we set the format as PNG at the moment. + const serverAddress = stripTrailingSlash(config.preview.plantUMLServerAddress) + '/svg' + const s = unescape(encodeURIComponent(umlCode)) + const zippedCode = deflate.encode64( + deflate.zip_deflate(`@startmindmap\n${s}\n@endmindmap`, 9) + ) + return `${serverAddress}/${zippedCode}` + } + }) + // Override task item this.md.block.ruler.at('paragraph', function (state, startLine/*, endLine */) { let content, terminate, i, l, token