mirror of
https://github.com/node-red/node-red.git
synced 2025-03-01 10:36:34 +00:00
Merge branch 'master' into master
This commit is contained in:
@@ -288,7 +288,7 @@ RED.view = (function() {
|
||||
}
|
||||
selectedLinks.clearUnselected()
|
||||
},
|
||||
length: () => groups.length,
|
||||
length: () => groups.size,
|
||||
forEach: (func) => { groups.forEach(func) },
|
||||
toArray: () => [...groups],
|
||||
clear: function () {
|
||||
@@ -2689,22 +2689,21 @@ RED.view = (function() {
|
||||
addToRemovedLinks(reconnectResult.removedLinks)
|
||||
}
|
||||
|
||||
var startDirty = RED.nodes.dirty();
|
||||
var startChanged = false;
|
||||
var selectedGroups = [];
|
||||
const startDirty = RED.nodes.dirty();
|
||||
let movingSelectedGroups = [];
|
||||
if (movingSet.length() > 0) {
|
||||
|
||||
for (var i=0;i<movingSet.length();i++) {
|
||||
node = movingSet.get(i).n;
|
||||
if (node.type === "group") {
|
||||
selectedGroups.push(node);
|
||||
movingSelectedGroups.push(node);
|
||||
}
|
||||
}
|
||||
// Make sure we have identified all groups about to be deleted
|
||||
for (i=0;i<selectedGroups.length;i++) {
|
||||
selectedGroups[i].nodes.forEach(function(n) {
|
||||
if (n.type === "group" && selectedGroups.indexOf(n) === -1) {
|
||||
selectedGroups.push(n);
|
||||
for (i=0;i<movingSelectedGroups.length;i++) {
|
||||
movingSelectedGroups[i].nodes.forEach(function(n) {
|
||||
if (n.type === "group" && movingSelectedGroups.indexOf(n) === -1) {
|
||||
movingSelectedGroups.push(n);
|
||||
}
|
||||
})
|
||||
}
|
||||
@@ -2721,7 +2720,7 @@ RED.view = (function() {
|
||||
addToRemovedLinks(removedEntities.links);
|
||||
if (node.g) {
|
||||
var group = RED.nodes.group(node.g);
|
||||
if (selectedGroups.indexOf(group) === -1) {
|
||||
if (movingSelectedGroups.indexOf(group) === -1) {
|
||||
// Don't use RED.group.removeFromGroup as that emits
|
||||
// a change event on the node - but we're deleting it
|
||||
var index = group.nodes.indexOf(node);
|
||||
@@ -2735,7 +2734,7 @@ RED.view = (function() {
|
||||
removedLinks = removedLinks.concat(result.links);
|
||||
if (node.g) {
|
||||
var group = RED.nodes.group(node.g);
|
||||
if (selectedGroups.indexOf(group) === -1) {
|
||||
if (movingSelectedGroups.indexOf(group) === -1) {
|
||||
// Don't use RED.group.removeFromGroup as that emits
|
||||
// a change event on the node - but we're deleting it
|
||||
var index = group.nodes.indexOf(node);
|
||||
@@ -2757,8 +2756,8 @@ RED.view = (function() {
|
||||
|
||||
// Groups must be removed in the right order - from inner-most
|
||||
// to outermost.
|
||||
for (i = selectedGroups.length-1; i>=0; i--) {
|
||||
var g = selectedGroups[i];
|
||||
for (i = movingSelectedGroups.length-1; i>=0; i--) {
|
||||
var g = movingSelectedGroups[i];
|
||||
removedGroups.push(g);
|
||||
RED.nodes.removeGroup(g);
|
||||
}
|
||||
|
||||
@@ -253,7 +253,13 @@ module.exports = function(RED) {
|
||||
if (node.allowrate && m.hasOwnProperty("rate") && !isNaN(parseFloat(m.rate))) {
|
||||
node.rate = m.rate;
|
||||
}
|
||||
send(m);
|
||||
if (msg.hasOwnProperty("reset")) {
|
||||
if (msg.hasOwnProperty("flush")) {
|
||||
node.buffer.push({msg: m, send: send, done: done});
|
||||
}
|
||||
}
|
||||
else { send(m); }
|
||||
|
||||
node.reportDepth();
|
||||
node.intervalID = setInterval(sendMsgFromBuffer, node.rate);
|
||||
done();
|
||||
@@ -303,7 +309,8 @@ module.exports = function(RED) {
|
||||
node.droppedMsgs++;
|
||||
}
|
||||
}
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
if (node.allowrate && msg.hasOwnProperty("rate") && !isNaN(parseFloat(msg.rate))) {
|
||||
node.rate = msg.rate;
|
||||
}
|
||||
|
||||
@@ -113,6 +113,10 @@ async function evaluateEnvProperties(flow, env, credentials) {
|
||||
resolve()
|
||||
});
|
||||
}))
|
||||
} else if (type === "conf-type" && /^\${[^}]+}$/.test(value)) {
|
||||
// Get the config node from the parent subflow
|
||||
const name = value.substring(2, value.length - 1);
|
||||
value = flow.getSetting(name);
|
||||
} else {
|
||||
try {
|
||||
value = redUtil.evaluateNodeProperty(value, type, {_flow: flow}, null, null);
|
||||
|
||||
Reference in New Issue
Block a user