@n8n/node-engine-compatibility 0.1.0 → 0.2.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/LICENSE_EE.md +27 -0
- package/dist/build.tsbuildinfo +1 -1
- package/dist/constants.d.ts +3 -0
- package/dist/constants.js +7 -0
- package/dist/constants.js.map +1 -0
- package/dist/errors.d.ts +13 -4
- package/dist/errors.js +26 -7
- package/dist/errors.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/types.d.ts +18 -7
- package/dist/v1-adapters.d.ts +10 -0
- package/dist/v1-adapters.js +159 -0
- package/dist/v1-adapters.js.map +1 -0
- package/dist/v1-step-executor.d.ts +1 -1
- package/dist/v1-step-executor.js +34 -54
- package/dist/v1-step-executor.js.map +1 -1
- package/dist/v1-workflow-converter.d.ts +8 -0
- package/dist/v1-workflow-converter.js +151 -6
- package/dist/v1-workflow-converter.js.map +1 -1
- package/package.json +19 -8
|
@@ -1,16 +1,24 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.V1WorkflowConverter = void 0;
|
|
4
|
+
const constants_1 = require("./constants");
|
|
4
5
|
const errors_1 = require("./errors");
|
|
5
|
-
const MANUAL_TRIGGER_TYPE = 'n8n-nodes-base.manualTrigger';
|
|
6
6
|
const KNOWN_TRIGGER_TYPES = new Set(['n8n-nodes-base.webhook', 'n8n-nodes-base.cron']);
|
|
7
7
|
class V1WorkflowConverter {
|
|
8
8
|
convert(workflow) {
|
|
9
|
-
const
|
|
10
|
-
|
|
9
|
+
const liveNodes = workflow.nodes.filter((node) => node.disabled !== true);
|
|
10
|
+
const disabledNodeIds = workflow.nodes
|
|
11
|
+
.filter((node) => node.disabled === true)
|
|
12
|
+
.map((node) => node.id);
|
|
13
|
+
const nodes = liveNodes.map((node) => this.toGraphNode(node));
|
|
14
|
+
let edges = this.toEdges(workflow);
|
|
15
|
+
edges = this.spliceOutDisabledNodes(edges, disabledNodeIds);
|
|
16
|
+
edges = this.dedupeEdges(edges);
|
|
17
|
+
this.markBackEdges(nodes, edges);
|
|
18
|
+
return { nodes, edges };
|
|
11
19
|
}
|
|
12
20
|
toGraphNode(node) {
|
|
13
|
-
if (node.type === MANUAL_TRIGGER_TYPE) {
|
|
21
|
+
if (node.type === constants_1.MANUAL_TRIGGER_TYPE) {
|
|
14
22
|
return { id: node.id, name: node.name, type: 'trigger' };
|
|
15
23
|
}
|
|
16
24
|
if (this.isTriggerNode(node)) {
|
|
@@ -25,13 +33,150 @@ class V1WorkflowConverter {
|
|
|
25
33
|
parameters: node.parameters,
|
|
26
34
|
continueOnFail: node.continueOnFail === true || node.onError === 'continueRegularOutput',
|
|
27
35
|
};
|
|
28
|
-
|
|
36
|
+
const type = node.type === constants_1.SPLIT_IN_BATCHES_TYPE ? 'batch' : 'v1-node';
|
|
37
|
+
return { id: node.id, name: node.name, type, config };
|
|
29
38
|
}
|
|
30
39
|
isTriggerNode(node) {
|
|
31
|
-
return (node.type === MANUAL_TRIGGER_TYPE ||
|
|
40
|
+
return (node.type === constants_1.MANUAL_TRIGGER_TYPE ||
|
|
32
41
|
KNOWN_TRIGGER_TYPES.has(node.type) ||
|
|
33
42
|
node.type.toLowerCase().endsWith('trigger'));
|
|
34
43
|
}
|
|
44
|
+
toEdges(workflow) {
|
|
45
|
+
const idsByName = new Map(workflow.nodes.map((node) => [node.name, node.id]));
|
|
46
|
+
return Object.entries(workflow.connections).flatMap(([sourceName, connectionsByType]) => this.toEdgesForSource(sourceName, connectionsByType, idsByName));
|
|
47
|
+
}
|
|
48
|
+
toEdgesForSource(sourceName, connectionsByType, idsByName) {
|
|
49
|
+
const from = idsByName.get(sourceName);
|
|
50
|
+
const edges = [];
|
|
51
|
+
for (const [connectionType, outputSlots] of Object.entries(connectionsByType)) {
|
|
52
|
+
this.validateSupportedConnectionType(sourceName, connectionType);
|
|
53
|
+
for (let outputIndex = 0; outputIndex < outputSlots.length; outputIndex++) {
|
|
54
|
+
for (const connection of outputSlots[outputIndex] ?? []) {
|
|
55
|
+
this.validateSupportedConnectionType(sourceName, connection.type);
|
|
56
|
+
const to = idsByName.get(connection.node);
|
|
57
|
+
if (from === undefined || to === undefined)
|
|
58
|
+
continue;
|
|
59
|
+
edges.push({ from, to, outputIndex, inputIndex: connection.index });
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
return edges;
|
|
64
|
+
}
|
|
65
|
+
validateSupportedConnectionType(nodeName, connectionType) {
|
|
66
|
+
if (connectionType !== constants_1.MAIN_CONNECTION_TYPE) {
|
|
67
|
+
throw new errors_1.UnsupportedConnectionTypeError(nodeName, connectionType);
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
spliceOutDisabledNodes(edges, disabledNodeIds) {
|
|
71
|
+
for (const disabledNodeId of disabledNodeIds) {
|
|
72
|
+
const incoming = edges.filter((edge) => edge.to === disabledNodeId && edge.from !== disabledNodeId && edge.inputIndex === 0);
|
|
73
|
+
const outgoing = edges.filter((edge) => edge.from === disabledNodeId && edge.to !== disabledNodeId);
|
|
74
|
+
const spliced = incoming.flatMap((into) => outgoing.map((outOf) => ({
|
|
75
|
+
from: into.from,
|
|
76
|
+
to: outOf.to,
|
|
77
|
+
outputIndex: into.outputIndex,
|
|
78
|
+
inputIndex: outOf.inputIndex,
|
|
79
|
+
})));
|
|
80
|
+
edges = this.dedupeEdges(edges
|
|
81
|
+
.filter((edge) => edge.from !== disabledNodeId && edge.to !== disabledNodeId)
|
|
82
|
+
.concat(spliced));
|
|
83
|
+
}
|
|
84
|
+
return edges;
|
|
85
|
+
}
|
|
86
|
+
dedupeEdges(edges) {
|
|
87
|
+
const byKey = new Map();
|
|
88
|
+
for (const edge of edges) {
|
|
89
|
+
byKey.set(`${edge.from}|${edge.to}|${edge.outputIndex}|${edge.inputIndex}`, edge);
|
|
90
|
+
}
|
|
91
|
+
return [...byKey.values()];
|
|
92
|
+
}
|
|
93
|
+
markBackEdges(nodes, edges) {
|
|
94
|
+
const batchNodeIds = new Set(nodes.filter((node) => node.type === 'batch').map((n) => n.id));
|
|
95
|
+
const namesById = new Map(nodes.map((node) => [node.id, node.name]));
|
|
96
|
+
let remaining = edges;
|
|
97
|
+
while (remaining.length > 0) {
|
|
98
|
+
const outgoingByNode = new Map();
|
|
99
|
+
const selfLoopNodeIds = new Set();
|
|
100
|
+
for (const edge of remaining) {
|
|
101
|
+
const outgoing = outgoingByNode.get(edge.from);
|
|
102
|
+
if (outgoing)
|
|
103
|
+
outgoing.push(edge);
|
|
104
|
+
else
|
|
105
|
+
outgoingByNode.set(edge.from, [edge]);
|
|
106
|
+
if (edge.from === edge.to)
|
|
107
|
+
selfLoopNodeIds.add(edge.from);
|
|
108
|
+
}
|
|
109
|
+
const cyclicSccs = this.computeSccs(nodes, outgoingByNode).filter((members) => members.length > 1 || selfLoopNodeIds.has(members[0]));
|
|
110
|
+
if (cyclicSccs.length === 0)
|
|
111
|
+
return;
|
|
112
|
+
for (const members of cyclicSccs) {
|
|
113
|
+
const entryId = this.resolveSingleBatchEntry(members, remaining, batchNodeIds, namesById);
|
|
114
|
+
const memberSet = new Set(members);
|
|
115
|
+
for (const edge of remaining) {
|
|
116
|
+
if (edge.to === entryId && memberSet.has(edge.from))
|
|
117
|
+
edge.isBackEdge = true;
|
|
118
|
+
}
|
|
119
|
+
}
|
|
120
|
+
remaining = remaining.filter((edge) => !edge.isBackEdge);
|
|
121
|
+
}
|
|
122
|
+
}
|
|
123
|
+
resolveSingleBatchEntry(members, edges, batchNodeIds, namesById) {
|
|
124
|
+
const memberSet = new Set(members);
|
|
125
|
+
const toNames = (ids) => ids.map((id) => namesById.get(id) ?? id);
|
|
126
|
+
const batchMembers = members.filter((id) => batchNodeIds.has(id));
|
|
127
|
+
if (batchMembers.length === 0) {
|
|
128
|
+
throw new errors_1.UnsupportedCycleError(toNames(members));
|
|
129
|
+
}
|
|
130
|
+
const externalEntries = new Set();
|
|
131
|
+
for (const edge of edges) {
|
|
132
|
+
if (memberSet.has(edge.to) && !memberSet.has(edge.from))
|
|
133
|
+
externalEntries.add(edge.to);
|
|
134
|
+
}
|
|
135
|
+
const entries = externalEntries.size > 0 ? [...externalEntries] : batchMembers;
|
|
136
|
+
if (entries.length !== 1 || !batchNodeIds.has(entries[0])) {
|
|
137
|
+
throw new errors_1.UnsupportedLoopEntryError(toNames(members), toNames(entries));
|
|
138
|
+
}
|
|
139
|
+
return entries[0];
|
|
140
|
+
}
|
|
141
|
+
computeSccs(nodes, outgoingByNode) {
|
|
142
|
+
const indexById = new Map();
|
|
143
|
+
const lowlinkById = new Map();
|
|
144
|
+
const stack = [];
|
|
145
|
+
const onStack = new Set();
|
|
146
|
+
const sccs = [];
|
|
147
|
+
let nextIndex = 0;
|
|
148
|
+
const connect = (nodeId) => {
|
|
149
|
+
indexById.set(nodeId, nextIndex);
|
|
150
|
+
lowlinkById.set(nodeId, nextIndex);
|
|
151
|
+
nextIndex += 1;
|
|
152
|
+
stack.push(nodeId);
|
|
153
|
+
onStack.add(nodeId);
|
|
154
|
+
for (const edge of outgoingByNode.get(nodeId) ?? []) {
|
|
155
|
+
if (!indexById.has(edge.to)) {
|
|
156
|
+
connect(edge.to);
|
|
157
|
+
lowlinkById.set(nodeId, Math.min(lowlinkById.get(nodeId), lowlinkById.get(edge.to)));
|
|
158
|
+
}
|
|
159
|
+
else if (onStack.has(edge.to)) {
|
|
160
|
+
lowlinkById.set(nodeId, Math.min(lowlinkById.get(nodeId), indexById.get(edge.to)));
|
|
161
|
+
}
|
|
162
|
+
}
|
|
163
|
+
if (lowlinkById.get(nodeId) === indexById.get(nodeId)) {
|
|
164
|
+
const members = [];
|
|
165
|
+
let member;
|
|
166
|
+
do {
|
|
167
|
+
member = stack.pop();
|
|
168
|
+
onStack.delete(member);
|
|
169
|
+
members.push(member);
|
|
170
|
+
} while (member !== nodeId);
|
|
171
|
+
sccs.push(members);
|
|
172
|
+
}
|
|
173
|
+
};
|
|
174
|
+
for (const node of nodes) {
|
|
175
|
+
if (!indexById.has(node.id))
|
|
176
|
+
connect(node.id);
|
|
177
|
+
}
|
|
178
|
+
return sccs;
|
|
179
|
+
}
|
|
35
180
|
}
|
|
36
181
|
exports.V1WorkflowConverter = V1WorkflowConverter;
|
|
37
182
|
//# sourceMappingURL=v1-workflow-converter.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"v1-workflow-converter.js","sourceRoot":"","sources":["../src/v1-workflow-converter.ts"],"names":[],"mappings":";;;AAGA,
|
|
1
|
+
{"version":3,"file":"v1-workflow-converter.js","sourceRoot":"","sources":["../src/v1-workflow-converter.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,25 +1,36 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@n8n/node-engine-compatibility",
|
|
3
|
-
"version": "0.1
|
|
3
|
+
"version": "0.2.1",
|
|
4
4
|
"description": "Adapts v1 nodes and workflows to the Engine 2.0 execution model",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
7
7
|
"files": [
|
|
8
|
-
"dist/**/*"
|
|
8
|
+
"dist/**/*",
|
|
9
|
+
"LICENSE.md",
|
|
10
|
+
"LICENSE_EE.md"
|
|
9
11
|
],
|
|
10
12
|
"dependencies": {
|
|
11
|
-
"n8n
|
|
12
|
-
"
|
|
13
|
-
"n8n-workflow": "2.
|
|
13
|
+
"@n8n/engine": "0.14.0",
|
|
14
|
+
"n8n-core": "2.34.1",
|
|
15
|
+
"n8n-workflow": "2.34.1"
|
|
14
16
|
},
|
|
15
17
|
"devDependencies": {
|
|
16
18
|
"typescript": "7.0.2",
|
|
17
19
|
"vitest": "^4.1.9",
|
|
18
|
-
"@n8n/typescript-config": "1.9.0",
|
|
19
20
|
"@n8n/vitest-config": "1.19.0",
|
|
20
|
-
"n8n-
|
|
21
|
+
"@n8n/typescript-config": "1.9.0",
|
|
22
|
+
"n8n-nodes-base": "2.34.1"
|
|
23
|
+
},
|
|
24
|
+
"license": "SEE LICENSE IN LICENSE.md",
|
|
25
|
+
"homepage": "https://n8n.io",
|
|
26
|
+
"author": {
|
|
27
|
+
"name": "Jan Oberhauser",
|
|
28
|
+
"email": "jan@n8n.io"
|
|
29
|
+
},
|
|
30
|
+
"repository": {
|
|
31
|
+
"type": "git",
|
|
32
|
+
"url": "git+https://github.com/n8n-io/n8n.git"
|
|
21
33
|
},
|
|
22
|
-
"license": "LicenseRef-n8n-sustainable-use",
|
|
23
34
|
"scripts": {
|
|
24
35
|
"clean": "rimraf dist .turbo",
|
|
25
36
|
"typecheck": "tsc --noEmit",
|