// Mermaid diagram stub library for on-demand dynamic loading // Will be overwritten after script loading by $.getScript var mermaid = (function () { var enabled /* = undefined */; var initializing = false; var initCalled = false; function initialize(opt) { if (enabled === undefined) { if (RED.settings.markdownEditor && RED.settings.markdownEditor.mermaid) { enabled = RED.settings.markdownEditor.mermaid.enabled; } else { enabled = true; } } if (enabled) { initializing = true; $.getScript("vendor/mermaid/mermaid.min.js", function (data, stat, jqxhr) { $(".mermaid").show(); // invoke loaded mermaid API initializing = false; mermaid.initialize(opt); if (initCalled) { mermaid.init(); initCalled = false; } }); } } function init() { if (initializing) { $(".mermaid").hide(); initCalled = true; } } return { initialize: initialize, init: init, }; })();