From 1efd1a52a7337733b80b334d0bbf196f1006a05b Mon Sep 17 00:00:00 2001 From: Nick O'Leary Date: Sun, 1 Jan 2023 19:36:49 +0000 Subject: [PATCH] Ensure modules containing plugins and nodes are loaded properly Fixes #3523 --- .../@node-red/registry/lib/loader.js | 28 +++++-------------- 1 file changed, 7 insertions(+), 21 deletions(-) diff --git a/packages/node_modules/@node-red/registry/lib/loader.js b/packages/node_modules/@node-red/registry/lib/loader.js index 3f0487750..d125156ab 100644 --- a/packages/node_modules/@node-red/registry/lib/loader.js +++ b/packages/node_modules/@node-red/registry/lib/loader.js @@ -126,38 +126,24 @@ function loadModuleFiles(modules) { } var pluginList; var nodeList; - return Promise.all(pluginPromises).then(function(results) { pluginList = results.filter(r => !!r); - // Initial plugin load has happened. Ensure modules that provide - // plugins are in the registry now. - for (var module in modules) { - if (modules.hasOwnProperty(module)) { - if (modules[module].plugins && Object.keys(modules[module].plugins).length > 0) { - // Add the modules for plugins - if (!modules[module].err) { - registry.addModule(modules[module]); - } - } - } - } - return loadNodeSetList(pluginList); - }).then(function() { - return Promise.all(nodePromises); + return Promise.all(nodePromises) }).then(function(results) { nodeList = results.filter(r => !!r); // Initial node load has happened. Ensure remaining modules are in the registry for (var module in modules) { if (modules.hasOwnProperty(module)) { - if (!modules[module].plugins || Object.keys(modules[module].plugins).length === 0) { - if (!modules[module].err) { - registry.addModule(modules[module]); - } + if (!modules[module].err) { + registry.addModule(modules[module]); } } } + }).then(function() { + return loadNodeSetList(pluginList); + }).then(function() { return loadNodeSetList(nodeList); - }); + }) } async function loadPluginTemplate(plugin) {