diff --git a/packages/node_modules/@node-red/editor-client/src/js/plugins.js b/packages/node_modules/@node-red/editor-client/src/js/plugins.js index 25d6acf8a..e6f41517d 100644 --- a/packages/node_modules/@node-red/editor-client/src/js/plugins.js +++ b/packages/node_modules/@node-red/editor-client/src/js/plugins.js @@ -8,6 +8,23 @@ RED.plugins = (function() { pluginsByType[definition.type] = pluginsByType[definition.type] || []; pluginsByType[definition.type].push(definition); } + if (RED._loadingModule) { + definition.module = RED._loadingModule; + definition["_"] = function() { + var args = Array.prototype.slice.call(arguments); + var originalKey = args[0]; + if (!/:/.test(args[0])) { + args[0] = definition.module+":"+args[0]; + } + var result = RED._.apply(null,args); + if (result === args[0]) { + return originalKey; + } + return result; + } + } else { + definition["_"] = RED["_"] + } if (definition.onadd && typeof definition.onadd === 'function') { definition.onadd(); } diff --git a/packages/node_modules/@node-red/editor-client/src/js/red.js b/packages/node_modules/@node-red/editor-client/src/js/red.js index 229147b10..a2bcb0e7d 100644 --- a/packages/node_modules/@node-red/editor-client/src/js/red.js +++ b/packages/node_modules/@node-red/editor-client/src/js/red.js @@ -67,11 +67,11 @@ var RED = (function() { var moduleId; if (moduleIdMatch) { moduleId = moduleIdMatch[1]; + RED._loadingModule = moduleId; } else { moduleId = "unknown"; } try { - var hasDeferred = false; var nodeConfigEls = $("
"+config+"
"); var scripts = nodeConfigEls.find("script"); @@ -85,6 +85,7 @@ var RED = (function() { scriptCount--; if (scriptCount === 0) { $(targetContainer).append(nodeConfigEls); + delete RED._loadingModule; done() } } @@ -108,6 +109,7 @@ var RED = (function() { }) if (!hasDeferred) { $(targetContainer).append(nodeConfigEls); + delete RED._loadingModule; done(); } } catch(err) { @@ -116,6 +118,7 @@ var RED = (function() { timeout: 10000 }); console.log("["+moduleId+"] "+err.toString()); + delete RED._loadingModule; done(); } }