@n8n/workflow-sdk 0.3.1 → 0.4.0

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.
Files changed (48) hide show
  1. package/dist/ast-interpreter/interpreter.js +14 -0
  2. package/dist/ast-interpreter/interpreter.js.map +1 -1
  3. package/dist/build.tsbuildinfo +1 -1
  4. package/dist/codegen/code-generator.d.ts +2 -1
  5. package/dist/codegen/code-generator.js +114 -45
  6. package/dist/codegen/code-generator.js.map +1 -1
  7. package/dist/codegen/composite-builder.js +261 -74
  8. package/dist/codegen/composite-builder.js.map +1 -1
  9. package/dist/codegen/composite-handlers/build-utils.js +21 -4
  10. package/dist/codegen/composite-handlers/build-utils.js.map +1 -1
  11. package/dist/codegen/composite-handlers/if-else-handler.js +18 -0
  12. package/dist/codegen/composite-handlers/if-else-handler.js.map +1 -1
  13. package/dist/codegen/composite-handlers/switch-case-handler.js +4 -1
  14. package/dist/codegen/composite-handlers/switch-case-handler.js.map +1 -1
  15. package/dist/codegen/composite-tree.d.ts +2 -0
  16. package/dist/codegen/constants.js +6 -1
  17. package/dist/codegen/constants.js.map +1 -1
  18. package/dist/codegen/output-utils.d.ts +1 -0
  19. package/dist/codegen/output-utils.js +11 -0
  20. package/dist/codegen/output-utils.js.map +1 -1
  21. package/dist/codegen/semantic-graph.js +55 -9
  22. package/dist/codegen/semantic-graph.js.map +1 -1
  23. package/dist/codegen/semantic-registry.js +1 -1
  24. package/dist/codegen/semantic-registry.js.map +1 -1
  25. package/dist/codegen/subnode-generator.js +18 -9
  26. package/dist/codegen/subnode-generator.js.map +1 -1
  27. package/dist/codegen/types.d.ts +1 -0
  28. package/dist/codegen/variable-names.js +10 -0
  29. package/dist/codegen/variable-names.js.map +1 -1
  30. package/dist/types/base.d.ts +7 -2
  31. package/dist/types/base.js +49 -0
  32. package/dist/types/base.js.map +1 -1
  33. package/dist/validation/test-schema-setup.js +2 -1
  34. package/dist/validation/test-schema-setup.js.map +1 -1
  35. package/dist/workflow-builder/node-builders/node-builder.js +22 -19
  36. package/dist/workflow-builder/node-builders/node-builder.js.map +1 -1
  37. package/dist/workflow-builder/plugins/composite-handlers/if-else-handler.js +32 -0
  38. package/dist/workflow-builder/plugins/composite-handlers/if-else-handler.js.map +1 -1
  39. package/dist/workflow-builder/plugins/validators/disconnected-node-validator.js +2 -1
  40. package/dist/workflow-builder/plugins/validators/disconnected-node-validator.js.map +1 -1
  41. package/dist/workflow-builder/subnode-utils.js +70 -115
  42. package/dist/workflow-builder/subnode-utils.js.map +1 -1
  43. package/dist/workflow-builder/workflow-import.d.ts +1 -1
  44. package/dist/workflow-builder/workflow-import.js +16 -4
  45. package/dist/workflow-builder/workflow-import.js.map +1 -1
  46. package/dist/workflow-builder.js +75 -12
  47. package/dist/workflow-builder.js.map +1 -1
  48. package/package.json +2 -2
@@ -47,9 +47,23 @@ function extractInputIndex(slotName) {
47
47
  return match ? parseInt(match[1], 10) : 0;
48
48
  }
49
49
  function getOutputIndex(outputName) {
50
- const match = outputName.match(/^output(\d+)$/);
51
- if (match) {
52
- return parseInt(match[1], 10);
50
+ if (outputName === 'trueBranch')
51
+ return 0;
52
+ if (outputName === 'falseBranch')
53
+ return 1;
54
+ if (outputName === 'done')
55
+ return 0;
56
+ if (outputName === 'loop')
57
+ return 1;
58
+ if (outputName === 'error')
59
+ return 0;
60
+ const outputMatch = outputName.match(/^output(\d+)$/);
61
+ if (outputMatch) {
62
+ return parseInt(outputMatch[1], 10);
63
+ }
64
+ const caseMatch = outputName.match(/^case(\d+)$/);
65
+ if (caseMatch) {
66
+ return parseInt(caseMatch[1], 10);
53
67
  }
54
68
  return 0;
55
69
  }
@@ -67,7 +81,10 @@ function getAllFirstOutputTargets(node) {
67
81
  return [];
68
82
  }
69
83
  function hasErrorOutput(node) {
70
- return node.json.onError === 'continueErrorOutput';
84
+ if (node.json.onError === 'continueErrorOutput')
85
+ return true;
86
+ const errorConnections = node.outputs.get('error');
87
+ return !!errorConnections && errorConnections.length > 0;
71
88
  }
72
89
  function getErrorOutputTargets(node) {
73
90
  const errorConnections = node.outputs.get('error');
@@ -1 +1 @@
1
- {"version":3,"file":"build-utils.js","sourceRoot":"","sources":["../../../src/codegen/composite-handlers/build-utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"build-utils.js","sourceRoot":"","sources":["../../../src/codegen/composite-handlers/build-utils.ts"],"names":[],"mappings":"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"}
@@ -47,11 +47,29 @@ function buildIfElseComposite(node, ctx) {
47
47
  };
48
48
  const trueBranch = buildBranchTargets(trueBranchTargets, branchCtx, node.name, 0);
49
49
  const falseBranch = buildBranchTargets(falseBranchTargets, branchCtx, node.name, 1);
50
+ let errorHandler;
51
+ if ((0, build_utils_1.hasErrorOutput)(node)) {
52
+ const errorTargets = (0, build_utils_1.getErrorOutputTargets)(node);
53
+ if (errorTargets.length > 0) {
54
+ const firstErrorTarget = errorTargets[0];
55
+ if (ctx.visited.has(firstErrorTarget)) {
56
+ const errorTargetNode = ctx.graph.nodes.get(firstErrorTarget);
57
+ if (errorTargetNode) {
58
+ ctx.variables.set(firstErrorTarget, errorTargetNode);
59
+ errorHandler = (0, build_utils_1.createVarRef)(firstErrorTarget);
60
+ }
61
+ }
62
+ else {
63
+ errorHandler = buildFromNodeSimple(firstErrorTarget, ctx);
64
+ }
65
+ }
66
+ }
50
67
  return {
51
68
  kind: 'ifElse',
52
69
  ifNode: node,
53
70
  trueBranch,
54
71
  falseBranch,
72
+ errorHandler,
55
73
  };
56
74
  }
57
75
  //# sourceMappingURL=if-else-handler.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"if-else-handler.js","sourceRoot":"","sources":["../../../src/codegen/composite-handlers/if-else-handler.ts"],"names":[],"mappings":";;AA8EA,oDAkBC;AAxFD,+CAA8F;AAU9F,SAAS,mBAAmB,CAAC,QAAgB,EAAE,GAAiB;IAC/D,MAAM,IAAI,GAAG,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IAC3C,IAAI,CAAC,IAAI,EAAE,CAAC;QACX,OAAO,IAAA,0BAAY,EAAC,QAAQ,CAAC,CAAC;IAC/B,CAAC;IAED,IAAI,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC/B,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;QAClC,OAAO,IAAA,0BAAY,EAAC,QAAQ,CAAC,CAAC;IAC/B,CAAC;IAED,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IAE1B,IAAI,IAAA,8BAAgB,EAAC,IAAI,CAAC,EAAE,CAAC;QAC5B,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;IACnC,CAAC;IAED,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC;IAChF,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC1B,MAAM,UAAU,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;QACrC,MAAM,aAAa,GAAG,mBAAmB,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC;QAC3D,OAAO;YACN,IAAI,EAAE,OAAO;YACb,KAAK,EAAE,CAAC,IAAA,wBAAU,EAAC,IAAI,CAAC,EAAE,aAAa,CAAC;SACxC,CAAC;IACH,CAAC;IAED,OAAO,IAAA,wBAAU,EAAC,IAAI,CAAC,CAAC;AACzB,CAAC;AAKD,SAAS,kBAAkB,CAC1B,OAA4D,EAC5D,GAAiB,EACjB,eAAwB,EACxB,kBAA2B;IAE3B,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IAEtC,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC1B,OAAO,mBAAmB,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IACpD,CAAC;IAED,MAAM,QAAQ,GAAoB,EAAE,CAAC;IACrC,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;QAC9B,QAAQ,CAAC,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC;IACxD,CAAC;IAED,OAAO,QAAQ,CAAC;AACjB,CAAC;AASD,SAAgB,oBAAoB,CAAC,IAAkB,EAAE,GAAiB;IACzE,MAAM,iBAAiB,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC;IAC/D,MAAM,kBAAkB,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC;IAEjE,MAAM,SAAS,GAAiB;QAC/B,GAAG,GAAG;QACN,eAAe,EAAE,IAAI;KACrB,CAAC;IAEF,MAAM,UAAU,GAAG,kBAAkB,CAAC,iBAAiB,EAAE,SAAS,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;IAClF,MAAM,WAAW,GAAG,kBAAkB,CAAC,kBAAkB,EAAE,SAAS,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;IAEpF,OAAO;QACN,IAAI,EAAE,QAAQ;QACd,MAAM,EAAE,IAAI;QACZ,UAAU;QACV,WAAW;KACX,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"if-else-handler.js","sourceRoot":"","sources":["../../../src/codegen/composite-handlers/if-else-handler.ts"],"names":[],"mappings":"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"}
@@ -53,7 +53,10 @@ function buildSwitchCaseComposite(node, ctx) {
53
53
  caseIndices.push(outputIndex);
54
54
  }
55
55
  else if (outputName === 'fallback') {
56
- const fallbackIndex = caseIndices.length > 0 ? Math.max(...caseIndices) + 1 : 0;
56
+ const params = node.json.parameters;
57
+ const rules = params?.rules;
58
+ const rulesArray = (rules?.rules ?? rules?.values);
59
+ const fallbackIndex = rulesArray?.length ?? 4;
57
60
  caseIndices.push(fallbackIndex);
58
61
  outputIndex = fallbackIndex;
59
62
  }
@@ -1 +1 @@
1
- {"version":3,"file":"switch-case-handler.js","sourceRoot":"","sources":["../../../src/codegen/composite-handlers/switch-case-handler.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"switch-case-handler.js","sourceRoot":"","sources":["../../../src/codegen/composite-handlers/switch-case-handler.ts"],"names":[],"mappings":"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"}
@@ -21,6 +21,7 @@ export interface IfElseCompositeNode extends CompositeNodeBase {
21
21
  ifNode: SemanticNode;
22
22
  trueBranch: CompositeNode | CompositeNode[] | null;
23
23
  falseBranch: CompositeNode | CompositeNode[] | null;
24
+ errorHandler?: CompositeNode;
24
25
  }
25
26
  export interface SwitchCaseCompositeNode extends CompositeNodeBase {
26
27
  kind: 'switchCase';
@@ -67,6 +68,7 @@ export interface DeferredInputConnection {
67
68
  targetInputIndex: number;
68
69
  sourceNodeName: string;
69
70
  sourceOutputIndex: number;
71
+ isErrorOutput?: boolean;
70
72
  }
71
73
  export interface DeferredMergeDownstream {
72
74
  mergeNode: SemanticNode;
@@ -26,5 +26,10 @@ exports.AI_CONNECTION_TO_BUILDER = {
26
26
  ai_reranker: 'reranker',
27
27
  };
28
28
  exports.AI_ALWAYS_ARRAY_TYPES = new Set(['ai_tool']);
29
- exports.AI_OPTIONAL_ARRAY_TYPES = new Set(['ai_languageModel']);
29
+ exports.AI_OPTIONAL_ARRAY_TYPES = new Set([
30
+ 'ai_languageModel',
31
+ 'ai_document',
32
+ 'ai_embedding',
33
+ 'ai_reranker',
34
+ ]);
30
35
  //# sourceMappingURL=constants.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/codegen/constants.ts"],"names":[],"mappings":";;;AASa,QAAA,2BAA2B,GAAqC;IAC5E,gBAAgB,EAAE,OAAO;IACzB,SAAS,EAAE,QAAQ;IACnB,OAAO,EAAE,OAAO;IAChB,eAAe,EAAE,cAAc;IAC/B,YAAY,EAAE,WAAW;IACzB,cAAc,EAAE,aAAa;IAC7B,YAAY,EAAE,WAAW;IACzB,WAAW,EAAE,gBAAgB;IAC7B,eAAe,EAAE,cAAc;IAC/B,WAAW,EAAE,UAAU;CACvB,CAAC;AAKW,QAAA,wBAAwB,GAAqC;IACzE,gBAAgB,EAAE,eAAe;IACjC,SAAS,EAAE,QAAQ;IACnB,OAAO,EAAE,MAAM;IACf,eAAe,EAAE,cAAc;IAC/B,YAAY,EAAE,WAAW;IACzB,cAAc,EAAE,aAAa;IAC7B,YAAY,EAAE,WAAW;IACzB,WAAW,EAAE,gBAAgB;IAC7B,eAAe,EAAE,cAAc;IAC/B,WAAW,EAAE,UAAU;CACvB,CAAC;AAKW,QAAA,qBAAqB,GAAG,IAAI,GAAG,CAAmB,CAAC,SAAS,CAAC,CAAC,CAAC;AAK/D,QAAA,uBAAuB,GAAG,IAAI,GAAG,CAAmB,CAAC,kBAAkB,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/codegen/constants.ts"],"names":[],"mappings":";;;AASa,QAAA,2BAA2B,GAAqC;IAC5E,gBAAgB,EAAE,OAAO;IACzB,SAAS,EAAE,QAAQ;IACnB,OAAO,EAAE,OAAO;IAChB,eAAe,EAAE,cAAc;IAC/B,YAAY,EAAE,WAAW;IACzB,cAAc,EAAE,aAAa;IAC7B,YAAY,EAAE,WAAW;IACzB,WAAW,EAAE,gBAAgB;IAC7B,eAAe,EAAE,cAAc;IAC/B,WAAW,EAAE,UAAU;CACvB,CAAC;AAKW,QAAA,wBAAwB,GAAqC;IACzE,gBAAgB,EAAE,eAAe;IACjC,SAAS,EAAE,QAAQ;IACnB,OAAO,EAAE,MAAM;IACf,eAAe,EAAE,cAAc;IAC/B,YAAY,EAAE,WAAW;IACzB,cAAc,EAAE,aAAa;IAC7B,YAAY,EAAE,WAAW;IACzB,WAAW,EAAE,gBAAgB;IAC7B,eAAe,EAAE,cAAc;IAC/B,WAAW,EAAE,UAAU;CACvB,CAAC;AAKW,QAAA,qBAAqB,GAAG,IAAI,GAAG,CAAmB,CAAC,SAAS,CAAC,CAAC,CAAC;AAK/D,QAAA,uBAAuB,GAAG,IAAI,GAAG,CAAmB;IAChE,kBAAkB;IAClB,aAAa;IACb,cAAc;IACd,aAAa;CACb,CAAC,CAAC"}
@@ -6,4 +6,5 @@ export interface OutputTargetInfo {
6
6
  export declare function getAllOutputTargets(node: SemanticNode): string[];
7
7
  export declare function hasMultipleOutputSlots(node: SemanticNode): boolean;
8
8
  export declare function hasConsecutiveOutputSlots(node: SemanticNode): boolean;
9
+ export declare function hasNonZeroOutputIndex(node: SemanticNode): boolean;
9
10
  export declare function getOutputTargetsByIndex(node: SemanticNode): Map<number, OutputTargetInfo[]>;
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.getAllOutputTargets = getAllOutputTargets;
4
4
  exports.hasMultipleOutputSlots = hasMultipleOutputSlots;
5
5
  exports.hasConsecutiveOutputSlots = hasConsecutiveOutputSlots;
6
+ exports.hasNonZeroOutputIndex = hasNonZeroOutputIndex;
6
7
  exports.getOutputTargetsByIndex = getOutputTargetsByIndex;
7
8
  const build_utils_1 = require("./composite-handlers/build-utils");
8
9
  function getAllOutputTargets(node) {
@@ -49,6 +50,16 @@ function hasConsecutiveOutputSlots(node) {
49
50
  }
50
51
  return true;
51
52
  }
53
+ function hasNonZeroOutputIndex(node) {
54
+ for (const [outputName, connections] of node.outputs) {
55
+ if (outputName === 'error')
56
+ continue;
57
+ if (connections.length > 0 && (0, build_utils_1.getOutputIndex)(outputName) > 0) {
58
+ return true;
59
+ }
60
+ }
61
+ return false;
62
+ }
52
63
  function getOutputTargetsByIndex(node) {
53
64
  const result = new Map();
54
65
  for (const [outputName, connections] of node.outputs) {
@@ -1 +1 @@
1
- {"version":3,"file":"output-utils.js","sourceRoot":"","sources":["../../src/codegen/output-utils.ts"],"names":[],"mappings":";;AAuBA,kDAWC;AAMD,wDASC;AAYD,8DAsBC;AAOD,0DAcC;AAjGD,kEAAkE;AAgBlE,SAAgB,mBAAmB,CAAC,IAAkB;IACrD,MAAM,OAAO,GAAa,EAAE,CAAC;IAC7B,KAAK,MAAM,CAAC,UAAU,EAAE,WAAW,CAAC,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;QACtD,IAAI,UAAU,KAAK,OAAO;YAAE,SAAS;QACrC,KAAK,MAAM,IAAI,IAAI,WAAW,EAAE,CAAC;YAChC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;gBACpC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YAC3B,CAAC;QACF,CAAC;IACF,CAAC;IACD,OAAO,OAAO,CAAC;AAChB,CAAC;AAMD,SAAgB,sBAAsB,CAAC,IAAkB;IACxD,IAAI,aAAa,GAAG,CAAC,CAAC;IACtB,KAAK,MAAM,CAAC,UAAU,EAAE,WAAW,CAAC,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;QACtD,IAAI,UAAU,KAAK,OAAO;YAAE,SAAS;QACrC,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC5B,aAAa,EAAE,CAAC;QACjB,CAAC;IACF,CAAC;IACD,OAAO,aAAa,GAAG,CAAC,CAAC;AAC1B,CAAC;AAYD,SAAgB,yBAAyB,CAAC,IAAkB;IAC3D,MAAM,eAAe,GAAa,EAAE,CAAC;IACrC,KAAK,MAAM,CAAC,UAAU,EAAE,WAAW,CAAC,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;QACtD,IAAI,UAAU,KAAK,OAAO;YAAE,SAAS;QACrC,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC5B,MAAM,KAAK,GAAG,IAAA,4BAAc,EAAC,UAAU,CAAC,CAAC;YACzC,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC7B,CAAC;IACF,CAAC;IAED,IAAI,eAAe,CAAC,MAAM,IAAI,CAAC;QAAE,OAAO,IAAI,CAAC;IAG7C,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IAGtC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,eAAe,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACjD,IAAI,eAAe,CAAC,CAAC,CAAC,KAAK,eAAe,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC;YACvD,OAAO,KAAK,CAAC;QACd,CAAC;IACF,CAAC;IACD,OAAO,IAAI,CAAC;AACb,CAAC;AAOD,SAAgB,uBAAuB,CAAC,IAAkB;IACzD,MAAM,MAAM,GAAG,IAAI,GAAG,EAA8B,CAAC;IACrD,KAAK,MAAM,CAAC,UAAU,EAAE,WAAW,CAAC,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;QACtD,IAAI,UAAU,KAAK,OAAO;YAAE,SAAS;QACrC,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC;YAAE,SAAS;QAEvC,MAAM,WAAW,GAAG,IAAA,4BAAc,EAAC,UAAU,CAAC,CAAC;QAC/C,MAAM,OAAO,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YACvC,UAAU,EAAE,CAAC,CAAC,MAAM;YACpB,eAAe,EAAE,CAAC,CAAC,eAAe;SAClC,CAAC,CAAC,CAAC;QACJ,MAAM,CAAC,GAAG,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;IAClC,CAAC;IACD,OAAO,MAAM,CAAC;AACf,CAAC"}
1
+ {"version":3,"file":"output-utils.js","sourceRoot":"","sources":["../../src/codegen/output-utils.ts"],"names":[],"mappings":"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"}
@@ -1,10 +1,15 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.buildSemanticGraph = buildSemanticGraph;
4
+ const n8n_workflow_1 = require("n8n-workflow");
4
5
  const semantic_registry_1 = require("./semantic-registry");
5
6
  const types_1 = require("./types");
7
+ const base_1 = require("../types/base");
6
8
  const trigger_detection_1 = require("../utils/trigger-detection");
7
9
  function createSemanticNode(nodeJson) {
10
+ if (typeof nodeJson.typeVersion === 'string') {
11
+ nodeJson.typeVersion = Number(nodeJson.typeVersion);
12
+ }
8
13
  return {
9
14
  name: nodeJson.name ?? nodeJson.id,
10
15
  type: nodeJson.type,
@@ -50,6 +55,32 @@ function parseMainConnections(sourceName, outputs, graph) {
50
55
  }
51
56
  });
52
57
  }
58
+ function parseErrorConnections(sourceName, outputs, graph) {
59
+ const sourceNode = graph.nodes.get(sourceName);
60
+ if (!sourceNode)
61
+ return;
62
+ const connections = [];
63
+ for (const targets of outputs) {
64
+ if (!targets)
65
+ continue;
66
+ for (const target of targets) {
67
+ const targetNode = graph.nodes.get(target.node);
68
+ if (!targetNode)
69
+ continue;
70
+ const inputSlot = (0, semantic_registry_1.getInputName)(targetNode.type, target.index, targetNode.json);
71
+ const sources = targetNode.inputSources.get(inputSlot) ?? [];
72
+ sources.push({ from: sourceName, outputSlot: 'error' });
73
+ targetNode.inputSources.set(inputSlot, sources);
74
+ connections.push({
75
+ target: target.node,
76
+ targetInputSlot: inputSlot,
77
+ });
78
+ }
79
+ }
80
+ if (connections.length > 0) {
81
+ sourceNode.outputs.set('error', connections);
82
+ }
83
+ }
53
84
  function parseAiConnections(sourceName, connectionType, outputs, graph) {
54
85
  const sourceNode = graph.nodes.get(sourceName);
55
86
  if (!sourceNode)
@@ -59,12 +90,13 @@ function parseAiConnections(sourceName, connectionType, outputs, graph) {
59
90
  return;
60
91
  targets.forEach((target) => {
61
92
  const parentNode = graph.nodes.get(target.node);
62
- if (parentNode) {
63
- parentNode.subnodes.push({
64
- connectionType,
65
- subnodeName: sourceName,
66
- });
67
- }
93
+ if (!parentNode)
94
+ return;
95
+ parentNode.subnodes.push({
96
+ connectionType,
97
+ subnodeName: sourceName,
98
+ index: target.index,
99
+ });
68
100
  });
69
101
  });
70
102
  }
@@ -187,7 +219,8 @@ function buildSemanticGraph(json) {
187
219
  cycleEdges: new Map(),
188
220
  };
189
221
  const unnamedCounters = new Map();
190
- for (const nodeJson of json.nodes) {
222
+ for (const rawNode of json.nodes) {
223
+ const nodeJson = { ...rawNode };
191
224
  let nodeName = nodeJson.name;
192
225
  if (nodeName === undefined || nodeName === '') {
193
226
  const typeSuffix = nodeJson.type.split('.').pop() ?? 'node';
@@ -195,19 +228,32 @@ function buildSemanticGraph(json) {
195
228
  unnamedCounters.set(typeSuffix, counter);
196
229
  nodeName = `__unnamed_${typeSuffix}_${counter}__`;
197
230
  }
198
- graph.nodes.set(nodeName, createSemanticNode(nodeJson));
231
+ else if (graph.nodes.has(nodeName)) {
232
+ nodeName = (0, base_1.generateUniqueName)(nodeName, (n) => graph.nodes.has(n));
233
+ }
234
+ const semanticNode = createSemanticNode(nodeJson);
235
+ semanticNode.name = nodeName;
236
+ graph.nodes.set(nodeName, semanticNode);
199
237
  }
200
- for (const [sourceName, connectionTypes] of Object.entries(json.connections)) {
238
+ const connections = (0, n8n_workflow_1.deepCopy)(json.connections);
239
+ (0, base_1.normalizeConnections)(connections);
240
+ for (const [sourceName, connectionTypes] of Object.entries(connections)) {
201
241
  for (const [connType, outputs] of Object.entries(connectionTypes)) {
202
242
  const typedOutputs = outputs;
203
243
  if (connType === 'main') {
204
244
  parseMainConnections(sourceName, typedOutputs, graph);
205
245
  }
246
+ else if (connType === 'error') {
247
+ parseErrorConnections(sourceName, typedOutputs, graph);
248
+ }
206
249
  else if (isAiConnectionType(connType)) {
207
250
  parseAiConnections(sourceName, connType, typedOutputs, graph);
208
251
  }
209
252
  }
210
253
  }
254
+ for (const [, node] of graph.nodes) {
255
+ node.subnodes.sort((a, b) => a.index - b.index);
256
+ }
211
257
  graph.roots = identifyRoots(graph);
212
258
  const disconnectedRoots = findDisconnectedRoots(graph);
213
259
  graph.roots.push(...disconnectedRoots);
@@ -1 +1 @@
1
- {"version":3,"file":"semantic-graph.js","sourceRoot":"","sources":["../../src/codegen/semantic-graph.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"semantic-graph.js","sourceRoot":"","sources":["../../src/codegen/semantic-graph.ts"],"names":[],"mappings":"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"}
@@ -15,7 +15,7 @@ const NODE_SEMANTICS = {
15
15
  outputs: (node) => {
16
16
  const params = node.parameters;
17
17
  const rules = params?.rules;
18
- const rulesArray = rules?.rules;
18
+ const rulesArray = (rules?.rules ?? rules?.values);
19
19
  const numCases = rulesArray?.length ?? 4;
20
20
  const cases = Array.from({ length: numCases }, (_, i) => `case${i}`);
21
21
  return [...cases, 'fallback'];
@@ -1 +1 @@
1
- {"version":3,"file":"semantic-registry.js","sourceRoot":"","sources":["../../src/codegen/semantic-registry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"semantic-registry.js","sourceRoot":"","sources":["../../src/codegen/semantic-registry.ts"],"names":[],"mappings":"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"}
@@ -153,23 +153,27 @@ function generateSubnodesConfigInline(node, ctx, options) {
153
153
  if (!subnodeNode)
154
154
  continue;
155
155
  const existing = grouped.get(sub.connectionType) ?? [];
156
- existing.push(subnodeNode);
156
+ existing.push({ node: subnodeNode, index: sub.index });
157
157
  grouped.set(sub.connectionType, existing);
158
158
  }
159
159
  const entries = [];
160
- for (const [connType, subnodeNodes] of grouped) {
160
+ for (const [connType, subnodeEntries] of grouped) {
161
161
  const configKey = constants_1.AI_CONNECTION_TO_CONFIG_KEY[connType];
162
162
  const builderName = constants_1.AI_CONNECTION_TO_BUILDER[connType];
163
- if (subnodeNodes.length === 0)
163
+ if (subnodeEntries.length === 0)
164
164
  continue;
165
- const calls = subnodeNodes.map((n) => generateSubnodeCall(n, builderName, ctx, options));
165
+ const calls = subnodeEntries.map((e) => generateSubnodeCall(e.node, builderName, ctx, options));
166
166
  if (constants_1.AI_ALWAYS_ARRAY_TYPES.has(connType)) {
167
167
  entries.push(`${configKey}: [${calls.join(', ')}]`);
168
168
  }
169
169
  else if (constants_1.AI_OPTIONAL_ARRAY_TYPES.has(connType)) {
170
- if (subnodeNodes.length === 1) {
170
+ if (subnodeEntries.length === 1) {
171
171
  entries.push(`${configKey}: ${calls[0]}`);
172
172
  }
173
+ else if (connType === 'ai_languageModel' &&
174
+ subnodeEntries.every((e) => e.index === subnodeEntries[0].index)) {
175
+ entries.push(`${configKey}: [[${calls.join(', ')}]]`);
176
+ }
173
177
  else {
174
178
  entries.push(`${configKey}: [${calls.join(', ')}]`);
175
179
  }
@@ -188,21 +192,26 @@ function generateSubnodesConfigWithVarRefs(node, ctx) {
188
192
  for (const sub of node.subnodes) {
189
193
  const varName = getVarName(sub.subnodeName, ctx);
190
194
  const existing = grouped.get(sub.connectionType) ?? [];
191
- existing.push(varName);
195
+ existing.push({ varName, index: sub.index });
192
196
  grouped.set(sub.connectionType, existing);
193
197
  }
194
198
  const entries = [];
195
- for (const [connType, varNames] of grouped) {
199
+ for (const [connType, varEntries] of grouped) {
196
200
  const configKey = constants_1.AI_CONNECTION_TO_CONFIG_KEY[connType];
197
- if (varNames.length === 0)
201
+ if (varEntries.length === 0)
198
202
  continue;
203
+ const varNames = varEntries.map((e) => e.varName);
199
204
  if (constants_1.AI_ALWAYS_ARRAY_TYPES.has(connType)) {
200
205
  entries.push(`${configKey}: [${varNames.join(', ')}]`);
201
206
  }
202
207
  else if (constants_1.AI_OPTIONAL_ARRAY_TYPES.has(connType)) {
203
- if (varNames.length === 1) {
208
+ if (varEntries.length === 1) {
204
209
  entries.push(`${configKey}: ${varNames[0]}`);
205
210
  }
211
+ else if (connType === 'ai_languageModel' &&
212
+ varEntries.every((e) => e.index === varEntries[0].index)) {
213
+ entries.push(`${configKey}: [[${varNames.join(', ')}]]`);
214
+ }
206
215
  else {
207
216
  entries.push(`${configKey}: [${varNames.join(', ')}]`);
208
217
  }
@@ -1 +1 @@
1
- {"version":3,"file":"subnode-generator.js","sourceRoot":"","sources":["../../src/codegen/subnode-generator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"subnode-generator.js","sourceRoot":"","sources":["../../src/codegen/subnode-generator.ts"],"names":[],"mappings":"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"}
@@ -4,6 +4,7 @@ export type AiConnectionType = (typeof AI_CONNECTION_TYPES)[number];
4
4
  export interface SubnodeConnection {
5
5
  connectionType: AiConnectionType;
6
6
  subnodeName: string;
7
+ index: number;
7
8
  }
8
9
  export interface SemanticConnection {
9
10
  target: string;
@@ -80,12 +80,22 @@ exports.RESERVED_KEYWORDS = new Set([
80
80
  'Reflect',
81
81
  'Proxy',
82
82
  ]);
83
+ function hashFallbackName(nodeName) {
84
+ let hash = 0;
85
+ for (let i = 0; i < nodeName.length; i++) {
86
+ hash = ((hash << 5) - hash + nodeName.charCodeAt(i)) | 0;
87
+ }
88
+ return 'node_' + Math.abs(hash).toString(36);
89
+ }
83
90
  function toVarName(nodeName) {
84
91
  let varName = nodeName
85
92
  .replace(/[^a-zA-Z0-9]/g, '_')
86
93
  .replace(/_+/g, '_')
87
94
  .replace(/_$/g, '')
88
95
  .replace(/^([A-Z])/, (c) => c.toLowerCase());
96
+ if (!varName || varName === '_') {
97
+ return hashFallbackName(nodeName);
98
+ }
89
99
  if (/^\d/.test(varName)) {
90
100
  varName = '_' + varName;
91
101
  }
@@ -1 +1 @@
1
- {"version":3,"file":"variable-names.js","sourceRoot":"","sources":["../../src/codegen/variable-names.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"variable-names.js","sourceRoot":"","sources":["../../src/codegen/variable-names.ts"],"names":[],"mappings":"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"}
@@ -56,6 +56,8 @@ export interface INodeConnections {
56
56
  export interface IConnections {
57
57
  [key: string]: INodeConnections;
58
58
  }
59
+ export declare function normalizeConnections(connections: IConnections): void;
60
+ export declare function generateUniqueName(baseName: string, exists: (name: string) => boolean): string;
59
61
  export interface NodeJSON {
60
62
  id: string;
61
63
  name?: string;
@@ -100,6 +102,7 @@ export interface DeclaredConnection {
100
102
  target: NodeInstance<string, string, unknown> | InputTarget;
101
103
  outputIndex: number;
102
104
  targetInputIndex?: number;
105
+ connectionType?: string;
103
106
  }
104
107
  export interface InputTarget {
105
108
  readonly _isInputTarget: true;
@@ -146,7 +149,7 @@ export interface StickyNoteConfig {
146
149
  name?: string;
147
150
  }
148
151
  export interface SubnodeConfig {
149
- model?: LanguageModelInstance | LanguageModelInstance[];
152
+ model?: LanguageModelInstance | LanguageModelInstance[] | LanguageModelInstance[][];
150
153
  memory?: MemoryInstance;
151
154
  tools?: ToolInstance[];
152
155
  outputParser?: OutputParserInstance;
@@ -156,7 +159,7 @@ export interface SubnodeConfig {
156
159
  retriever?: RetrieverInstance;
157
160
  documentLoader?: DocumentLoaderInstance | DocumentLoaderInstance[];
158
161
  textSplitter?: TextSplitterInstance;
159
- reranker?: RerankerInstance;
162
+ reranker?: RerankerInstance | RerankerInstance[];
160
163
  }
161
164
  export interface NodeInstance<TType extends string, TVersion extends string, TOutput = unknown> {
162
165
  readonly type: TType;
@@ -230,8 +233,10 @@ export interface IfElseBuilder<TOutput = unknown> {
230
233
  readonly ifNode: NodeInstance<'n8n-nodes-base.if', string, TOutput>;
231
234
  readonly trueBranch: IfElseTarget;
232
235
  readonly falseBranch: IfElseTarget;
236
+ readonly errorBranch?: IfElseTarget;
233
237
  onTrue(target: IfElseTarget): IfElseBuilder<TOutput>;
234
238
  onFalse(target: IfElseTarget): IfElseBuilder<TOutput>;
239
+ onError(target: IfElseTarget): IfElseBuilder<TOutput>;
235
240
  to<T extends NodeInstance<string, string, unknown>>(target: T | T[], outputIndex?: number): NodeChain<NodeInstance<'n8n-nodes-base.if', string, TOutput>, T>;
236
241
  }
237
242
  export interface SwitchCaseBuilder<TOutput = unknown> {