mirror of
https://github.com/node-red/node-red.git
synced 2025-03-01 10:36:34 +00:00
add support for mermaid diagram to markdown editor
This commit is contained in:
33
packages/node_modules/@node-red/editor-api/lib/editor/editor-libs.js
vendored
Normal file
33
packages/node_modules/@node-red/editor-api/lib/editor/editor-libs.js
vendored
Normal file
@@ -0,0 +1,33 @@
|
||||
// Dynamic loading support for editor libraries
|
||||
|
||||
var apiUtils = require("../util");
|
||||
var fs = require("fs");
|
||||
var path = require("path");
|
||||
|
||||
var lib2path = {
|
||||
"mermaid": "../../../editor-client/public/vendor/mermaid/mermaid.min.js",
|
||||
};
|
||||
|
||||
module.exports = {
|
||||
init: function(_settings, _runtimeAPI) {
|
||||
settings = _settings;
|
||||
},
|
||||
|
||||
get: function(req,res) {
|
||||
var name = req.params.name;
|
||||
|
||||
if (name in lib2path) {
|
||||
try {
|
||||
var lib = path.join(__dirname, lib2path[name]);
|
||||
var code = fs.readFileSync(lib);
|
||||
res.send(code);
|
||||
}
|
||||
catch (e) {
|
||||
res.status(500).json({code: "runtime_error", message: e.toString()});
|
||||
}
|
||||
}
|
||||
else {
|
||||
res.status(400).json({code: "invalid_request", message: `no library: ${name}`});
|
||||
}
|
||||
},
|
||||
}
|
@@ -116,6 +116,11 @@ module.exports = {
|
||||
// SSH keys
|
||||
editorApp.use("/settings/user/keys",needsPermission("settings.write"),info.sshkeys());
|
||||
|
||||
// Editor Libraries
|
||||
var editorLibs = require("./editor-libs");
|
||||
editorLibs.init(settings, runtimeAPI);
|
||||
editorApp.get("/editor-libs/:name", needsPermission("editor-libs.read"), editorLibs.get, apiUtil.errorHandler);
|
||||
|
||||
return editorApp;
|
||||
}
|
||||
},
|
||||
|
Reference in New Issue
Block a user