mirror of
https://github.com/node-red/node-red.git
synced 2023-10-10 11:36:53 +00:00
Add nodesExcludes option
This commit is contained in:
parent
069f42f0c5
commit
43073de10b
21
red/nodes.js
21
red/nodes.js
@ -208,13 +208,20 @@ function load(_settings) {
|
|||||||
|
|
||||||
var RED = require("./red.js");
|
var RED = require("./red.js");
|
||||||
|
|
||||||
function loadNode(nodeFilename) {
|
function loadNode(nodeDir, nodeFn) {
|
||||||
var preCount = node_type_registry.count();
|
|
||||||
|
if (settings.nodesExcludes) {
|
||||||
|
for (var i=0;i<settings.nodesExcludes.length;i++) {
|
||||||
|
if (settings.nodesExcludes[i] == nodeFn) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
var nodeFilename = path.join(nodeDir,nodeFn);
|
||||||
var r = require(nodeFilename);
|
var r = require(nodeFilename);
|
||||||
if (typeof r === "function") {
|
if (typeof r === "function") {
|
||||||
r(RED);
|
r(RED);
|
||||||
}
|
}
|
||||||
if (preCount != node_type_registry.count()) {
|
|
||||||
var templateFilename = nodeFilename.replace(/\.js$/,".html");
|
var templateFilename = nodeFilename.replace(/\.js$/,".html");
|
||||||
if (fs.existsSync(templateFilename)) {
|
if (fs.existsSync(templateFilename)) {
|
||||||
node_type_registry.registerConfig(fs.readFileSync(templateFilename,'utf8'));
|
node_type_registry.registerConfig(fs.readFileSync(templateFilename,'utf8'));
|
||||||
@ -222,7 +229,6 @@ function load(_settings) {
|
|||||||
util.log("["+type+"] missing template file: "+templateFilename);
|
util.log("["+type+"] missing template file: "+templateFilename);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
function scanForNodes(dir) {
|
function scanForNodes(dir) {
|
||||||
var pm = path.join(dir,"node_modules");
|
var pm = path.join(dir,"node_modules");
|
||||||
@ -239,8 +245,8 @@ function load(_settings) {
|
|||||||
for (var i in nrn) {
|
for (var i in nrn) {
|
||||||
console.log(" ",i,":",nrn[i]);
|
console.log(" ",i,":",nrn[i]);
|
||||||
try {
|
try {
|
||||||
var nodeFilename = path.join(pm,fn,nrn[i]);
|
var nodeDir = path.join(pm,fn);
|
||||||
loadNode(nodeFilename);
|
loadNode(nodeDir,nrn[i]);
|
||||||
} catch(err) {
|
} catch(err) {
|
||||||
util.log("["+i+"] "+err);
|
util.log("["+i+"] "+err);
|
||||||
//console.log(err.stack);
|
//console.log(err.stack);
|
||||||
@ -266,8 +272,7 @@ function load(_settings) {
|
|||||||
if (stats.isFile()) {
|
if (stats.isFile()) {
|
||||||
if (/\.js$/.test(fn)) {
|
if (/\.js$/.test(fn)) {
|
||||||
try {
|
try {
|
||||||
var nodeFilename = path.join(dir,fn);
|
loadNode(dir,fn);
|
||||||
loadNode(nodeFilename);
|
|
||||||
} catch(err) {
|
} catch(err) {
|
||||||
errors.push({fn:fn, err:err});
|
errors.push({fn:fn, err:err});
|
||||||
//util.log("["+fn+"] "+err);
|
//util.log("["+fn+"] "+err);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user