Ensure plugins api provides a filtered view

This commit is contained in:
Nick O'Leary
2024-03-21 16:37:05 +00:00
parent 3df3096bb4
commit fef93818c9
3 changed files with 102 additions and 67 deletions

View File

@@ -66,7 +66,7 @@ function getPluginConfigs(lang) {
for (var module in moduleConfigs) {
/* istanbul ignore else */
if (moduleConfigs.hasOwnProperty(module)) {
result += get_config_of_plugins(moduleConfigs[module].plugins);
result += generateModulePluginConfig(moduleConfigs[module]);
}
}
pluginConfigCache[lang] = result;
@@ -78,14 +78,14 @@ function getPluginConfig(id, lang) {
let result = '';
let moduleConfigs = registry.getModuleList();
if (moduleConfigs.hasOwnProperty(id)) {
result = get_config_of_plugins(moduleConfigs[id].plugins);
result = generateModulePluginConfig(moduleConfigs[id]);
}
return result;
}
// helper function to avoid code duplication
function get_config_of_plugins(plugins) {
function generateModulePluginConfig(module) {
let result = '';
const plugins = module.plugins
for (let plugin in plugins) {
if (plugins.hasOwnProperty(plugin)) {
let config = plugins[plugin];

View File

@@ -65,7 +65,12 @@ function filterNodeInfo(n) {
r.err = n.err;
}
if (n.hasOwnProperty("plugins")) {
r.plugins = n.plugins;
r.plugins = n.plugins.map(p => {
return {
id: p.id,
type: p.type
}
});
}
if (n.type === "plugin") {
r.editor = !!n.template;