n8n-workflow 1.101.0 → 1.102.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/common/get-child-nodes.d.ts +3 -0
- package/dist/cjs/common/get-child-nodes.d.ts.map +1 -0
- package/dist/cjs/common/get-child-nodes.js +19 -0
- package/dist/cjs/common/get-child-nodes.js.map +1 -0
- package/dist/cjs/common/get-connected-nodes.d.ts +10 -0
- package/dist/cjs/common/get-connected-nodes.d.ts.map +1 -0
- package/dist/cjs/common/get-connected-nodes.js +84 -0
- package/dist/cjs/common/get-connected-nodes.js.map +1 -0
- package/dist/cjs/common/get-node-by-name.d.ts +9 -0
- package/dist/cjs/common/get-node-by-name.d.ts.map +1 -0
- package/dist/cjs/common/get-node-by-name.js +29 -0
- package/dist/cjs/common/get-node-by-name.js.map +1 -0
- package/dist/cjs/common/get-parent-nodes.d.ts +9 -0
- package/dist/cjs/common/get-parent-nodes.d.ts.map +1 -0
- package/dist/cjs/common/get-parent-nodes.js +25 -0
- package/dist/cjs/common/get-parent-nodes.js.map +1 -0
- package/dist/cjs/common/index.d.ts +6 -0
- package/dist/cjs/common/index.d.ts.map +1 -0
- package/dist/cjs/common/index.js +32 -0
- package/dist/cjs/common/index.js.map +1 -0
- package/dist/cjs/common/map-connections-by-destination.d.ts +3 -0
- package/dist/cjs/common/map-connections-by-destination.d.ts.map +1 -0
- package/dist/cjs/common/map-connections-by-destination.js +53 -0
- package/dist/cjs/common/map-connections-by-destination.js.map +1 -0
- package/dist/cjs/constants.d.ts +2 -0
- package/dist/cjs/constants.d.ts.map +1 -1
- package/dist/cjs/constants.js +3 -1
- package/dist/cjs/constants.js.map +1 -1
- package/dist/cjs/errors/error.types.d.ts +2 -0
- package/dist/cjs/errors/error.types.d.ts.map +1 -1
- package/dist/cjs/errors/expression.error.d.ts +14 -0
- package/dist/cjs/errors/expression.error.d.ts.map +1 -1
- package/dist/cjs/errors/expression.error.js +16 -1
- package/dist/cjs/errors/expression.error.js.map +1 -1
- package/dist/cjs/index.d.ts +1 -0
- package/dist/cjs/index.d.ts.map +1 -1
- package/dist/cjs/index.js +2 -1
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/interfaces.d.ts +50 -4
- package/dist/cjs/interfaces.d.ts.map +1 -1
- package/dist/cjs/interfaces.js.map +1 -1
- package/dist/cjs/node-helpers.d.ts.map +1 -1
- package/dist/cjs/node-helpers.js +4 -0
- package/dist/cjs/node-helpers.js.map +1 -1
- package/dist/cjs/typecheck.tsbuildinfo +1 -1
- package/dist/cjs/workflow-data-proxy.d.ts.map +1 -1
- package/dist/cjs/workflow-data-proxy.js +72 -37
- package/dist/cjs/workflow-data-proxy.js.map +1 -1
- package/dist/cjs/workflow.d.ts +12 -6
- package/dist/cjs/workflow.d.ts.map +1 -1
- package/dist/cjs/workflow.js +85 -97
- package/dist/cjs/workflow.js.map +1 -1
- package/dist/esm/common/get-child-nodes.d.ts +3 -0
- package/dist/esm/common/get-child-nodes.d.ts.map +1 -0
- package/dist/esm/common/get-child-nodes.js +6 -0
- package/dist/esm/common/get-child-nodes.js.map +1 -0
- package/dist/esm/common/get-connected-nodes.d.ts +10 -0
- package/dist/esm/common/get-connected-nodes.d.ts.map +1 -0
- package/dist/esm/common/get-connected-nodes.js +71 -0
- package/dist/esm/common/get-connected-nodes.js.map +1 -0
- package/dist/esm/common/get-node-by-name.d.ts +9 -0
- package/dist/esm/common/get-node-by-name.d.ts.map +1 -0
- package/dist/esm/common/get-node-by-name.js +16 -0
- package/dist/esm/common/get-node-by-name.js.map +1 -0
- package/dist/esm/common/get-parent-nodes.d.ts +9 -0
- package/dist/esm/common/get-parent-nodes.d.ts.map +1 -0
- package/dist/esm/common/get-parent-nodes.js +12 -0
- package/dist/esm/common/get-parent-nodes.js.map +1 -0
- package/dist/esm/common/index.d.ts +6 -0
- package/dist/esm/common/index.d.ts.map +1 -0
- package/dist/esm/common/index.js +6 -0
- package/dist/esm/common/index.js.map +1 -0
- package/dist/esm/common/map-connections-by-destination.d.ts +3 -0
- package/dist/esm/common/map-connections-by-destination.d.ts.map +1 -0
- package/dist/esm/common/map-connections-by-destination.js +40 -0
- package/dist/esm/common/map-connections-by-destination.js.map +1 -0
- package/dist/esm/constants.d.ts +2 -0
- package/dist/esm/constants.d.ts.map +1 -1
- package/dist/esm/constants.js +2 -0
- package/dist/esm/constants.js.map +1 -1
- package/dist/esm/errors/error.types.d.ts +2 -0
- package/dist/esm/errors/error.types.d.ts.map +1 -1
- package/dist/esm/errors/expression.error.d.ts +14 -0
- package/dist/esm/errors/expression.error.d.ts.map +1 -1
- package/dist/esm/errors/expression.error.js +15 -0
- package/dist/esm/errors/expression.error.js.map +1 -1
- package/dist/esm/index.d.ts +1 -0
- package/dist/esm/index.d.ts.map +1 -1
- package/dist/esm/index.js +1 -0
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/interfaces.d.ts +50 -4
- package/dist/esm/interfaces.d.ts.map +1 -1
- package/dist/esm/interfaces.js.map +1 -1
- package/dist/esm/node-helpers.d.ts.map +1 -1
- package/dist/esm/node-helpers.js +4 -0
- package/dist/esm/node-helpers.js.map +1 -1
- package/dist/esm/typecheck.tsbuildinfo +1 -1
- package/dist/esm/workflow-data-proxy.d.ts.map +1 -1
- package/dist/esm/workflow-data-proxy.js +73 -38
- package/dist/esm/workflow-data-proxy.js.map +1 -1
- package/dist/esm/workflow.d.ts +12 -6
- package/dist/esm/workflow.d.ts.map +1 -1
- package/dist/esm/workflow.js +84 -96
- package/dist/esm/workflow.js.map +1 -1
- package/package.json +9 -4
package/dist/cjs/workflow.js
CHANGED
|
@@ -37,7 +37,7 @@ var __importStar = (this && this.__importStar) || (function () {
|
|
|
37
37
|
if (v !== undefined) module.exports = v;
|
|
38
38
|
}
|
|
39
39
|
else if (typeof define === "function" && define.amd) {
|
|
40
|
-
define(["require", "exports", "./constants", "./errors", "./errors/application.error", "./expression", "./global-state", "./interfaces", "./node-helpers", "./node-parameters/rename-node-utils", "./node-reference-parser-utils", "./observable-object"], factory);
|
|
40
|
+
define(["require", "exports", "./common", "./constants", "./errors", "./errors/application.error", "./expression", "./global-state", "./interfaces", "./node-helpers", "./node-parameters/rename-node-utils", "./node-reference-parser-utils", "./observable-object"], factory);
|
|
41
41
|
}
|
|
42
42
|
})(function (require, exports) {
|
|
43
43
|
"use strict";
|
|
@@ -46,6 +46,7 @@ var __importStar = (this && this.__importStar) || (function () {
|
|
|
46
46
|
/* eslint-disable @typescript-eslint/no-unsafe-member-access */
|
|
47
47
|
/* eslint-disable @typescript-eslint/no-unsafe-return */
|
|
48
48
|
/* eslint-disable @typescript-eslint/no-for-in-array */
|
|
49
|
+
const common_1 = require("./common");
|
|
49
50
|
const constants_1 = require("./constants");
|
|
50
51
|
const errors_1 = require("./errors");
|
|
51
52
|
const application_error_1 = require("./errors/application.error");
|
|
@@ -104,7 +105,7 @@ var __importStar = (this && this.__importStar) || (function () {
|
|
|
104
105
|
}
|
|
105
106
|
this.connectionsBySourceNode = parameters.connections;
|
|
106
107
|
// Save also the connections by the destination nodes
|
|
107
|
-
this.connectionsByDestinationNode =
|
|
108
|
+
this.connectionsByDestinationNode = (0, common_1.mapConnectionsByDestination)(parameters.connections);
|
|
108
109
|
this.active = parameters.active || false;
|
|
109
110
|
this.staticData = ObservableObject.create(parameters.staticData || {}, undefined, {
|
|
110
111
|
ignoreEmptyOnFirstChild: true,
|
|
@@ -119,11 +120,6 @@ var __importStar = (this && this.__importStar) || (function () {
|
|
|
119
120
|
});
|
|
120
121
|
this.staticData.__dataChanged = true;
|
|
121
122
|
}
|
|
122
|
-
/**
|
|
123
|
-
* The default connections are by source node. This function rewrites them by destination nodes
|
|
124
|
-
* to easily find parent nodes.
|
|
125
|
-
*
|
|
126
|
-
*/
|
|
127
123
|
static getConnectionsByDestination(connections) {
|
|
128
124
|
const returnConnection = {};
|
|
129
125
|
let connectionInfo;
|
|
@@ -241,10 +237,7 @@ var __importStar = (this && this.__importStar) || (function () {
|
|
|
241
237
|
* @param {string} nodeName Name of the node to return
|
|
242
238
|
*/
|
|
243
239
|
getNode(nodeName) {
|
|
244
|
-
|
|
245
|
-
return this.nodes[nodeName];
|
|
246
|
-
}
|
|
247
|
-
return null;
|
|
240
|
+
return (0, common_1.getNodeByName)(this.nodes, nodeName);
|
|
248
241
|
}
|
|
249
242
|
/**
|
|
250
243
|
* Returns the nodes with the given names if they exist.
|
|
@@ -371,7 +364,7 @@ var __importStar = (this && this.__importStar) || (function () {
|
|
|
371
364
|
}
|
|
372
365
|
}
|
|
373
366
|
// Use the updated connections to create updated connections by destination nodes
|
|
374
|
-
this.connectionsByDestinationNode =
|
|
367
|
+
this.connectionsByDestinationNode = (0, common_1.mapConnectionsByDestination)(this.connectionsBySourceNode);
|
|
375
368
|
}
|
|
376
369
|
/**
|
|
377
370
|
* Finds the highest parent nodes of the node with the given name
|
|
@@ -442,7 +435,7 @@ var __importStar = (this && this.__importStar) || (function () {
|
|
|
442
435
|
* @param {*} [depth=-1]
|
|
443
436
|
*/
|
|
444
437
|
getChildNodes(nodeName, type = interfaces_1.NodeConnectionTypes.Main, depth = -1) {
|
|
445
|
-
return
|
|
438
|
+
return (0, common_1.getChildNodes)(this.connectionsBySourceNode, nodeName, type, depth);
|
|
446
439
|
}
|
|
447
440
|
/**
|
|
448
441
|
* Returns all the nodes before the given one
|
|
@@ -451,7 +444,7 @@ var __importStar = (this && this.__importStar) || (function () {
|
|
|
451
444
|
* @param {*} [depth=-1]
|
|
452
445
|
*/
|
|
453
446
|
getParentNodes(nodeName, type = interfaces_1.NodeConnectionTypes.Main, depth = -1) {
|
|
454
|
-
return
|
|
447
|
+
return (0, common_1.getParentNodes)(this.connectionsByDestinationNode, nodeName, type, depth);
|
|
455
448
|
}
|
|
456
449
|
/**
|
|
457
450
|
* Gets all the nodes which are connected nodes starting from
|
|
@@ -461,67 +454,7 @@ var __importStar = (this && this.__importStar) || (function () {
|
|
|
461
454
|
* @param {*} [depth=-1]
|
|
462
455
|
*/
|
|
463
456
|
getConnectedNodes(connections, nodeName, connectionType = interfaces_1.NodeConnectionTypes.Main, depth = -1, checkedNodesIncoming) {
|
|
464
|
-
|
|
465
|
-
const newDepth = depth === -1 ? depth : depth - 1;
|
|
466
|
-
if (depth === 0) {
|
|
467
|
-
// Reached max depth
|
|
468
|
-
return [];
|
|
469
|
-
}
|
|
470
|
-
if (!connections.hasOwnProperty(nodeName)) {
|
|
471
|
-
// Node does not have incoming connections
|
|
472
|
-
return [];
|
|
473
|
-
}
|
|
474
|
-
let types;
|
|
475
|
-
if (connectionType === 'ALL') {
|
|
476
|
-
types = Object.keys(connections[nodeName]);
|
|
477
|
-
}
|
|
478
|
-
else if (connectionType === 'ALL_NON_MAIN') {
|
|
479
|
-
types = Object.keys(connections[nodeName]).filter((type) => type !== 'main');
|
|
480
|
-
}
|
|
481
|
-
else {
|
|
482
|
-
types = [connectionType];
|
|
483
|
-
}
|
|
484
|
-
let addNodes;
|
|
485
|
-
let nodeIndex;
|
|
486
|
-
let i;
|
|
487
|
-
let parentNodeName;
|
|
488
|
-
const returnNodes = [];
|
|
489
|
-
types.forEach((type) => {
|
|
490
|
-
if (!connections[nodeName].hasOwnProperty(type)) {
|
|
491
|
-
// Node does not have incoming connections of given type
|
|
492
|
-
return;
|
|
493
|
-
}
|
|
494
|
-
const checkedNodes = checkedNodesIncoming ? [...checkedNodesIncoming] : [];
|
|
495
|
-
if (checkedNodes.includes(nodeName)) {
|
|
496
|
-
// Node got checked already before
|
|
497
|
-
return;
|
|
498
|
-
}
|
|
499
|
-
checkedNodes.push(nodeName);
|
|
500
|
-
connections[nodeName][type].forEach((connectionsByIndex) => {
|
|
501
|
-
connectionsByIndex?.forEach((connection) => {
|
|
502
|
-
if (checkedNodes.includes(connection.node)) {
|
|
503
|
-
// Node got checked already before
|
|
504
|
-
return;
|
|
505
|
-
}
|
|
506
|
-
returnNodes.unshift(connection.node);
|
|
507
|
-
addNodes = this.getConnectedNodes(connections, connection.node, connectionType, newDepth, checkedNodes);
|
|
508
|
-
for (i = addNodes.length; i--; i > 0) {
|
|
509
|
-
// Because nodes can have multiple parents it is possible that
|
|
510
|
-
// parts of the tree is parent of both and to not add nodes
|
|
511
|
-
// twice check first if they already got added before.
|
|
512
|
-
parentNodeName = addNodes[i];
|
|
513
|
-
nodeIndex = returnNodes.indexOf(parentNodeName);
|
|
514
|
-
if (nodeIndex !== -1) {
|
|
515
|
-
// Node got found before so remove it from current location
|
|
516
|
-
// that node-order stays correct
|
|
517
|
-
returnNodes.splice(nodeIndex, 1);
|
|
518
|
-
}
|
|
519
|
-
returnNodes.unshift(parentNodeName);
|
|
520
|
-
}
|
|
521
|
-
});
|
|
522
|
-
});
|
|
523
|
-
});
|
|
524
|
-
return returnNodes;
|
|
457
|
+
return (0, common_1.getConnectedNodes)(connections, nodeName, connectionType, depth, checkedNodesIncoming);
|
|
525
458
|
}
|
|
526
459
|
/**
|
|
527
460
|
* Returns all the nodes before the given one
|
|
@@ -582,29 +515,31 @@ var __importStar = (this && this.__importStar) || (function () {
|
|
|
582
515
|
}
|
|
583
516
|
return returnConns;
|
|
584
517
|
}
|
|
585
|
-
getParentMainInputNode(node) {
|
|
586
|
-
if (node)
|
|
587
|
-
|
|
588
|
-
|
|
589
|
-
|
|
590
|
-
|
|
591
|
-
|
|
592
|
-
|
|
593
|
-
|
|
594
|
-
|
|
595
|
-
|
|
596
|
-
|
|
597
|
-
|
|
598
|
-
|
|
599
|
-
|
|
600
|
-
|
|
601
|
-
|
|
602
|
-
|
|
603
|
-
|
|
518
|
+
getParentMainInputNode(node, visitedNodes = new Set()) {
|
|
519
|
+
if (!node)
|
|
520
|
+
return node;
|
|
521
|
+
// Prevent infinite recursion by tracking visited nodes
|
|
522
|
+
if (visitedNodes.has(node.name)) {
|
|
523
|
+
return node;
|
|
524
|
+
}
|
|
525
|
+
visitedNodes.add(node.name);
|
|
526
|
+
const nodeConnections = this.connectionsBySourceNode[node.name];
|
|
527
|
+
if (!nodeConnections) {
|
|
528
|
+
return node;
|
|
529
|
+
}
|
|
530
|
+
// Get non-main connection types that this node connects TO (outgoing connections)
|
|
531
|
+
const nonMainConnectionTypes = Object.keys(nodeConnections).filter((type) => type !== interfaces_1.NodeConnectionTypes.Main);
|
|
532
|
+
for (const connectionType of nonMainConnectionTypes) {
|
|
533
|
+
const connections = nodeConnections[connectionType] ?? [];
|
|
534
|
+
for (const connectionGroup of connections) {
|
|
535
|
+
for (const connection of connectionGroup ?? []) {
|
|
536
|
+
if (connection?.node) {
|
|
537
|
+
const returnNode = this.getNode(connection.node);
|
|
538
|
+
if (!returnNode) {
|
|
539
|
+
throw new application_error_1.ApplicationError(`Node "${connection.node}" not found`);
|
|
540
|
+
}
|
|
541
|
+
return this.getParentMainInputNode(returnNode, visitedNodes);
|
|
604
542
|
}
|
|
605
|
-
// The chain of non-main nodes is potentially not finished yet so
|
|
606
|
-
// keep on going
|
|
607
|
-
return this.getParentMainInputNode(returnNode);
|
|
608
543
|
}
|
|
609
544
|
}
|
|
610
545
|
}
|
|
@@ -759,6 +694,59 @@ var __importStar = (this && this.__importStar) || (function () {
|
|
|
759
694
|
}
|
|
760
695
|
return result;
|
|
761
696
|
}
|
|
697
|
+
/**
|
|
698
|
+
* Checks if there's a bidirectional path between two nodes.
|
|
699
|
+
* This handles AI/tool nodes that have complex connection patterns
|
|
700
|
+
* where simple parent-child traversal doesn't work.
|
|
701
|
+
*
|
|
702
|
+
* @param fromNodeName The starting node name
|
|
703
|
+
* @param toNodeName The target node name
|
|
704
|
+
* @param maxDepth Maximum depth to search (default: 50)
|
|
705
|
+
* @returns true if there's a path between the nodes
|
|
706
|
+
*/
|
|
707
|
+
hasPath(fromNodeName, toNodeName, maxDepth = 50) {
|
|
708
|
+
if (fromNodeName === toNodeName)
|
|
709
|
+
return true;
|
|
710
|
+
// Get connection types that actually exist in this workflow
|
|
711
|
+
// We need both source and destination connection types for bidirectional search
|
|
712
|
+
const connectionTypes = new Set();
|
|
713
|
+
for (const nodeConnections of Object.values(this.connectionsBySourceNode).concat(Object.values(this.connectionsByDestinationNode))) {
|
|
714
|
+
for (const type of Object.keys(nodeConnections)) {
|
|
715
|
+
connectionTypes.add(type);
|
|
716
|
+
}
|
|
717
|
+
}
|
|
718
|
+
const visited = new Set();
|
|
719
|
+
const queue = [
|
|
720
|
+
{ nodeName: fromNodeName, depth: 0 },
|
|
721
|
+
];
|
|
722
|
+
while (queue.length > 0) {
|
|
723
|
+
const { nodeName, depth } = queue.shift();
|
|
724
|
+
if (depth > maxDepth)
|
|
725
|
+
continue;
|
|
726
|
+
if (visited.has(nodeName))
|
|
727
|
+
continue;
|
|
728
|
+
if (nodeName === toNodeName)
|
|
729
|
+
return true;
|
|
730
|
+
visited.add(nodeName);
|
|
731
|
+
for (const connectionType of connectionTypes) {
|
|
732
|
+
// Get children (forward direction)
|
|
733
|
+
const children = this.getChildNodes(nodeName, connectionType);
|
|
734
|
+
for (const childName of children) {
|
|
735
|
+
if (!visited.has(childName)) {
|
|
736
|
+
queue.push({ nodeName: childName, depth: depth + 1 });
|
|
737
|
+
}
|
|
738
|
+
}
|
|
739
|
+
// Get parents (backward direction)
|
|
740
|
+
const parents = this.getParentNodes(nodeName, connectionType);
|
|
741
|
+
for (const parentName of parents) {
|
|
742
|
+
if (!visited.has(parentName)) {
|
|
743
|
+
queue.push({ nodeName: parentName, depth: depth + 1 });
|
|
744
|
+
}
|
|
745
|
+
}
|
|
746
|
+
}
|
|
747
|
+
}
|
|
748
|
+
return false;
|
|
749
|
+
}
|
|
762
750
|
}
|
|
763
751
|
exports.Workflow = Workflow;
|
|
764
752
|
});
|
package/dist/cjs/workflow.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workflow.js","sourceRoot":"","sources":["../../src/workflow.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"workflow.js","sourceRoot":"","sources":["../../src/workflow.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import type { IConnections, NodeConnectionType } from '../interfaces';
|
|
2
|
+
export declare function getChildNodes(connectionsBySourceNode: IConnections, nodeName: string, type?: NodeConnectionType | 'ALL' | 'ALL_NON_MAIN', depth?: number): string[];
|
|
3
|
+
//# sourceMappingURL=get-child-nodes.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"get-child-nodes.d.ts","sourceRoot":"","sources":["../../../src/common/get-child-nodes.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,YAAY,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAEtE,wBAAgB,aAAa,CAC5B,uBAAuB,EAAE,YAAY,EACrC,QAAQ,EAAE,MAAM,EAChB,IAAI,GAAE,kBAAkB,GAAG,KAAK,GAAG,cAAyC,EAC5E,KAAK,SAAK,GACR,MAAM,EAAE,CAEV"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { getConnectedNodes } from './get-connected-nodes';
|
|
2
|
+
import { NodeConnectionTypes } from '../interfaces';
|
|
3
|
+
export function getChildNodes(connectionsBySourceNode, nodeName, type = NodeConnectionTypes.Main, depth = -1) {
|
|
4
|
+
return getConnectedNodes(connectionsBySourceNode, nodeName, type, depth);
|
|
5
|
+
}
|
|
6
|
+
//# sourceMappingURL=get-child-nodes.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"get-child-nodes.js","sourceRoot":"","sources":["../../../src/common/get-child-nodes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAC1D,OAAO,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AAGpD,MAAM,UAAU,aAAa,CAC5B,uBAAqC,EACrC,QAAgB,EAChB,OAAoD,mBAAmB,CAAC,IAAI,EAC5E,KAAK,GAAG,CAAC,CAAC;IAEV,OAAO,iBAAiB,CAAC,uBAAuB,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;AAC1E,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { IConnections, NodeConnectionType } from '../interfaces';
|
|
2
|
+
/**
|
|
3
|
+
* Gets all the nodes which are connected nodes starting from
|
|
4
|
+
* the given one
|
|
5
|
+
*
|
|
6
|
+
* @param {NodeConnectionType} [type='main']
|
|
7
|
+
* @param {*} [depth=-1]
|
|
8
|
+
*/
|
|
9
|
+
export declare function getConnectedNodes(connections: IConnections, nodeName: string, connectionType?: NodeConnectionType | 'ALL' | 'ALL_NON_MAIN', depth?: number, checkedNodesIncoming?: string[]): string[];
|
|
10
|
+
//# sourceMappingURL=get-connected-nodes.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"get-connected-nodes.d.ts","sourceRoot":"","sources":["../../../src/common/get-connected-nodes.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAEtE;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAChC,WAAW,EAAE,YAAY,EACzB,QAAQ,EAAE,MAAM,EAChB,cAAc,GAAE,kBAAkB,GAAG,KAAK,GAAG,cAAyC,EACtF,KAAK,SAAK,EACV,oBAAoB,CAAC,EAAE,MAAM,EAAE,GAC7B,MAAM,EAAE,CAiFV"}
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
import { NodeConnectionTypes } from '../interfaces';
|
|
2
|
+
/**
|
|
3
|
+
* Gets all the nodes which are connected nodes starting from
|
|
4
|
+
* the given one
|
|
5
|
+
*
|
|
6
|
+
* @param {NodeConnectionType} [type='main']
|
|
7
|
+
* @param {*} [depth=-1]
|
|
8
|
+
*/
|
|
9
|
+
export function getConnectedNodes(connections, nodeName, connectionType = NodeConnectionTypes.Main, depth = -1, checkedNodesIncoming) {
|
|
10
|
+
const newDepth = depth === -1 ? depth : depth - 1;
|
|
11
|
+
if (depth === 0) {
|
|
12
|
+
// Reached max depth
|
|
13
|
+
return [];
|
|
14
|
+
}
|
|
15
|
+
if (!connections.hasOwnProperty(nodeName)) {
|
|
16
|
+
// Node does not have incoming connections
|
|
17
|
+
return [];
|
|
18
|
+
}
|
|
19
|
+
let types;
|
|
20
|
+
if (connectionType === 'ALL') {
|
|
21
|
+
types = Object.keys(connections[nodeName]);
|
|
22
|
+
}
|
|
23
|
+
else if (connectionType === 'ALL_NON_MAIN') {
|
|
24
|
+
types = Object.keys(connections[nodeName]).filter((type) => type !== 'main');
|
|
25
|
+
}
|
|
26
|
+
else {
|
|
27
|
+
types = [connectionType];
|
|
28
|
+
}
|
|
29
|
+
let addNodes;
|
|
30
|
+
let nodeIndex;
|
|
31
|
+
let i;
|
|
32
|
+
let parentNodeName;
|
|
33
|
+
const returnNodes = [];
|
|
34
|
+
types.forEach((type) => {
|
|
35
|
+
if (!connections[nodeName].hasOwnProperty(type)) {
|
|
36
|
+
// Node does not have incoming connections of given type
|
|
37
|
+
return;
|
|
38
|
+
}
|
|
39
|
+
const checkedNodes = checkedNodesIncoming ? [...checkedNodesIncoming] : [];
|
|
40
|
+
if (checkedNodes.includes(nodeName)) {
|
|
41
|
+
// Node got checked already before
|
|
42
|
+
return;
|
|
43
|
+
}
|
|
44
|
+
checkedNodes.push(nodeName);
|
|
45
|
+
connections[nodeName][type].forEach((connectionsByIndex) => {
|
|
46
|
+
connectionsByIndex?.forEach((connection) => {
|
|
47
|
+
if (checkedNodes.includes(connection.node)) {
|
|
48
|
+
// Node got checked already before
|
|
49
|
+
return;
|
|
50
|
+
}
|
|
51
|
+
returnNodes.unshift(connection.node);
|
|
52
|
+
addNodes = getConnectedNodes(connections, connection.node, connectionType, newDepth, checkedNodes);
|
|
53
|
+
for (i = addNodes.length; i--; i > 0) {
|
|
54
|
+
// Because nodes can have multiple parents it is possible that
|
|
55
|
+
// parts of the tree is parent of both and to not add nodes
|
|
56
|
+
// twice check first if they already got added before.
|
|
57
|
+
parentNodeName = addNodes[i];
|
|
58
|
+
nodeIndex = returnNodes.indexOf(parentNodeName);
|
|
59
|
+
if (nodeIndex !== -1) {
|
|
60
|
+
// Node got found before so remove it from current location
|
|
61
|
+
// that node-order stays correct
|
|
62
|
+
returnNodes.splice(nodeIndex, 1);
|
|
63
|
+
}
|
|
64
|
+
returnNodes.unshift(parentNodeName);
|
|
65
|
+
}
|
|
66
|
+
});
|
|
67
|
+
});
|
|
68
|
+
});
|
|
69
|
+
return returnNodes;
|
|
70
|
+
}
|
|
71
|
+
//# sourceMappingURL=get-connected-nodes.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"get-connected-nodes.js","sourceRoot":"","sources":["../../../src/common/get-connected-nodes.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { INode, INodes } from '../interfaces';
|
|
2
|
+
/**
|
|
3
|
+
* Returns the node with the given name if it exists else null
|
|
4
|
+
*
|
|
5
|
+
* @param {INodes} nodes Nodes to search in
|
|
6
|
+
* @param {string} name Name of the node to return
|
|
7
|
+
*/
|
|
8
|
+
export declare function getNodeByName(nodes: INodes | INode[], name: string): INode | null;
|
|
9
|
+
//# sourceMappingURL=get-node-by-name.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"get-node-by-name.d.ts","sourceRoot":"","sources":["../../../src/common/get-node-by-name.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAEnD;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,KAAK,EAAE,EAAE,IAAI,EAAE,MAAM,gBAUlE"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Returns the node with the given name if it exists else null
|
|
3
|
+
*
|
|
4
|
+
* @param {INodes} nodes Nodes to search in
|
|
5
|
+
* @param {string} name Name of the node to return
|
|
6
|
+
*/
|
|
7
|
+
export function getNodeByName(nodes, name) {
|
|
8
|
+
if (Array.isArray(nodes)) {
|
|
9
|
+
return nodes.find((node) => node.name === name) || null;
|
|
10
|
+
}
|
|
11
|
+
if (nodes.hasOwnProperty(name)) {
|
|
12
|
+
return nodes[name];
|
|
13
|
+
}
|
|
14
|
+
return null;
|
|
15
|
+
}
|
|
16
|
+
//# sourceMappingURL=get-node-by-name.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"get-node-by-name.js","sourceRoot":"","sources":["../../../src/common/get-node-by-name.ts"],"names":[],"mappings":"AAEA;;;;;GAKG;AACH,MAAM,UAAU,aAAa,CAAC,KAAuB,EAAE,IAAY;IAClE,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QAC1B,OAAO,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,IAAI,CAAC,IAAI,IAAI,CAAC;IACzD,CAAC;IAED,IAAI,KAAK,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC;QAChC,OAAO,KAAK,CAAC,IAAI,CAAC,CAAC;IACpB,CAAC;IAED,OAAO,IAAI,CAAC;AACb,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { IConnections, NodeConnectionType } from '../interfaces';
|
|
2
|
+
/**
|
|
3
|
+
* Returns all the nodes before the given one
|
|
4
|
+
*
|
|
5
|
+
* @param {NodeConnectionType} [type='main']
|
|
6
|
+
* @param {*} [depth=-1]
|
|
7
|
+
*/
|
|
8
|
+
export declare function getParentNodes(connectionsByDestinationNode: IConnections, nodeName: string, type?: NodeConnectionType | 'ALL' | 'ALL_NON_MAIN', depth?: number): string[];
|
|
9
|
+
//# sourceMappingURL=get-parent-nodes.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"get-parent-nodes.d.ts","sourceRoot":"","sources":["../../../src/common/get-parent-nodes.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,YAAY,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAEtE;;;;;GAKG;AACH,wBAAgB,cAAc,CAC7B,4BAA4B,EAAE,YAAY,EAC1C,QAAQ,EAAE,MAAM,EAChB,IAAI,GAAE,kBAAkB,GAAG,KAAK,GAAG,cAAyC,EAC5E,KAAK,SAAK,GACR,MAAM,EAAE,CAEV"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { getConnectedNodes } from './get-connected-nodes';
|
|
2
|
+
import { NodeConnectionTypes } from '../interfaces';
|
|
3
|
+
/**
|
|
4
|
+
* Returns all the nodes before the given one
|
|
5
|
+
*
|
|
6
|
+
* @param {NodeConnectionType} [type='main']
|
|
7
|
+
* @param {*} [depth=-1]
|
|
8
|
+
*/
|
|
9
|
+
export function getParentNodes(connectionsByDestinationNode, nodeName, type = NodeConnectionTypes.Main, depth = -1) {
|
|
10
|
+
return getConnectedNodes(connectionsByDestinationNode, nodeName, type, depth);
|
|
11
|
+
}
|
|
12
|
+
//# sourceMappingURL=get-parent-nodes.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"get-parent-nodes.js","sourceRoot":"","sources":["../../../src/common/get-parent-nodes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAC1D,OAAO,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AAGpD;;;;;GAKG;AACH,MAAM,UAAU,cAAc,CAC7B,4BAA0C,EAC1C,QAAgB,EAChB,OAAoD,mBAAmB,CAAC,IAAI,EAC5E,KAAK,GAAG,CAAC,CAAC;IAEV,OAAO,iBAAiB,CAAC,4BAA4B,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;AAC/E,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/common/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAC;AAClC,cAAc,uBAAuB,CAAC;AACtC,cAAc,oBAAoB,CAAC;AACnC,cAAc,oBAAoB,CAAC;AACnC,cAAc,kCAAkC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/common/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAC;AAClC,cAAc,uBAAuB,CAAC;AACtC,cAAc,oBAAoB,CAAC;AACnC,cAAc,oBAAoB,CAAC;AACnC,cAAc,kCAAkC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"map-connections-by-destination.d.ts","sourceRoot":"","sources":["../../../src/common/map-connections-by-destination.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,YAAY,EAAsB,MAAM,eAAe,CAAC;AAEtE,wBAAgB,2BAA2B,CAAC,WAAW,EAAE,YAAY,gBA4CpE"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
/* eslint-disable @typescript-eslint/no-for-in-array */
|
|
2
|
+
export function mapConnectionsByDestination(connections) {
|
|
3
|
+
const returnConnection = {};
|
|
4
|
+
let connectionInfo;
|
|
5
|
+
let maxIndex;
|
|
6
|
+
for (const sourceNode in connections) {
|
|
7
|
+
if (!connections.hasOwnProperty(sourceNode)) {
|
|
8
|
+
continue;
|
|
9
|
+
}
|
|
10
|
+
for (const type of Object.keys(connections[sourceNode])) {
|
|
11
|
+
if (!connections[sourceNode].hasOwnProperty(type)) {
|
|
12
|
+
continue;
|
|
13
|
+
}
|
|
14
|
+
for (const inputIndex in connections[sourceNode][type]) {
|
|
15
|
+
if (!connections[sourceNode][type].hasOwnProperty(inputIndex)) {
|
|
16
|
+
continue;
|
|
17
|
+
}
|
|
18
|
+
for (connectionInfo of connections[sourceNode][type][inputIndex] ?? []) {
|
|
19
|
+
if (!returnConnection.hasOwnProperty(connectionInfo.node)) {
|
|
20
|
+
returnConnection[connectionInfo.node] = {};
|
|
21
|
+
}
|
|
22
|
+
if (!returnConnection[connectionInfo.node].hasOwnProperty(connectionInfo.type)) {
|
|
23
|
+
returnConnection[connectionInfo.node][connectionInfo.type] = [];
|
|
24
|
+
}
|
|
25
|
+
maxIndex = returnConnection[connectionInfo.node][connectionInfo.type].length - 1;
|
|
26
|
+
for (let j = maxIndex; j < connectionInfo.index; j++) {
|
|
27
|
+
returnConnection[connectionInfo.node][connectionInfo.type].push([]);
|
|
28
|
+
}
|
|
29
|
+
returnConnection[connectionInfo.node][connectionInfo.type][connectionInfo.index]?.push({
|
|
30
|
+
node: sourceNode,
|
|
31
|
+
type,
|
|
32
|
+
index: parseInt(inputIndex, 10),
|
|
33
|
+
});
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
return returnConnection;
|
|
39
|
+
}
|
|
40
|
+
//# sourceMappingURL=map-connections-by-destination.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"map-connections-by-destination.js","sourceRoot":"","sources":["../../../src/common/map-connections-by-destination.ts"],"names":[],"mappings":"AAAA,uDAAuD;AAIvD,MAAM,UAAU,2BAA2B,CAAC,WAAyB;IACpE,MAAM,gBAAgB,GAAiB,EAAE,CAAC;IAE1C,IAAI,cAAc,CAAC;IACnB,IAAI,QAAgB,CAAC;IACrB,KAAK,MAAM,UAAU,IAAI,WAAW,EAAE,CAAC;QACtC,IAAI,CAAC,WAAW,CAAC,cAAc,CAAC,UAAU,CAAC,EAAE,CAAC;YAC7C,SAAS;QACV,CAAC;QAED,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,CAAyB,EAAE,CAAC;YACjF,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC;gBACnD,SAAS;YACV,CAAC;YAED,KAAK,MAAM,UAAU,IAAI,WAAW,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC;gBACxD,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,CAAC,cAAc,CAAC,UAAU,CAAC,EAAE,CAAC;oBAC/D,SAAS;gBACV,CAAC;gBAED,KAAK,cAAc,IAAI,WAAW,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,CAAC,UAAU,CAAC,IAAI,EAAE,EAAE,CAAC;oBACxE,IAAI,CAAC,gBAAgB,CAAC,cAAc,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC;wBAC3D,gBAAgB,CAAC,cAAc,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;oBAC5C,CAAC;oBACD,IAAI,CAAC,gBAAgB,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,cAAc,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC;wBAChF,gBAAgB,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,cAAc,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;oBACjE,CAAC;oBAED,QAAQ,GAAG,gBAAgB,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;oBACjF,KAAK,IAAI,CAAC,GAAG,QAAQ,EAAE,CAAC,GAAG,cAAc,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC;wBACtD,gBAAgB,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;oBACrE,CAAC;oBAED,gBAAgB,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,cAAc,CAAC,KAAK,CAAC,EAAE,IAAI,CAAC;wBACtF,IAAI,EAAE,UAAU;wBAChB,IAAI;wBACJ,KAAK,EAAE,QAAQ,CAAC,UAAU,EAAE,EAAE,CAAC;qBAC/B,CAAC,CAAC;gBACJ,CAAC;YACF,CAAC;QACF,CAAC;IACF,CAAC;IAED,OAAO,gBAAgB,CAAC;AACzB,CAAC"}
|