n8n-workflow 0.98.0 → 0.101.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.
@@ -55,11 +55,28 @@ class Expression {
55
55
  versions: process.versions,
56
56
  };
57
57
  data.document = {};
58
+ data.global = {};
59
+ data.window = {};
60
+ data.Window = {};
61
+ data.this = {};
62
+ data.self = {};
63
+ data.alert = {};
64
+ data.prompt = {};
65
+ data.confirm = {};
66
+ data.eval = {};
67
+ data.setTimeout = {};
68
+ data.setInterval = {};
69
+ data.Function = {};
70
+ data.fetch = {};
71
+ data.XMLHttpRequest = {};
58
72
  data.DateTime = luxon_1.DateTime;
59
73
  data.Interval = luxon_1.Interval;
60
74
  data.Duration = luxon_1.Duration;
61
75
  data.constructor = {};
62
76
  try {
77
+ if (/([^a-zA-Z0-9"']window[^a-zA-Z0-9"'])/g.test(parameterValue)) {
78
+ throw new Error(`window is not allowed`);
79
+ }
63
80
  const returnValue = tmpl.tmpl(parameterValue, data);
64
81
  if (typeof returnValue === 'function') {
65
82
  throw new Error('Expression resolved to a function. Please add "()"');
@@ -1 +1 @@
1
- {"version":3,"file":"Expression.js","sourceRoot":"","sources":["../../src/Expression.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Expression.js","sourceRoot":"","sources":["../../src/Expression.ts"],"names":[],"mappings":"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"}
@@ -170,6 +170,7 @@ export interface ICredentialType {
170
170
  __overwrittenProperties?: string[];
171
171
  authenticate?: IAuthenticate;
172
172
  test?: ICredentialTestRequest;
173
+ genericAuth?: boolean;
173
174
  }
174
175
  export interface ICredentialTypes {
175
176
  credentialTypes?: ICredentialTypeData;
@@ -209,6 +210,10 @@ export interface IGetExecutePollFunctions {
209
210
  export interface IGetExecuteTriggerFunctions {
210
211
  (workflow: Workflow, node: INode, additionalData: IWorkflowExecuteAdditionalData, mode: WorkflowExecuteMode, activation: WorkflowActivateMode): ITriggerFunctions;
211
212
  }
213
+ export interface IRunNodeResponse {
214
+ data: INodeExecutionData[][] | null | undefined;
215
+ closeFunction?: () => Promise<void>;
216
+ }
212
217
  export interface IGetExecuteFunctions {
213
218
  (workflow: Workflow, runExecutionData: IRunExecutionData, runIndex: number, connectionInputData: INodeExecutionData[], inputData: ITaskDataConnections, node: INode, additionalData: IWorkflowExecuteAdditionalData, mode: WorkflowExecuteMode): IExecuteFunctions;
214
219
  }
@@ -399,7 +404,7 @@ export interface IPollFunctions {
399
404
  };
400
405
  }
401
406
  export interface ITriggerFunctions {
402
- emit(data: INodeExecutionData[][], responsePromise?: IDeferredPromise<IExecuteResponsePromiseData>): void;
407
+ emit(data: INodeExecutionData[][], responsePromise?: IDeferredPromise<IExecuteResponsePromiseData>, donePromise?: IDeferredPromise<IRun>): void;
403
408
  emitError(error: Error, responsePromise?: IDeferredPromise<IExecuteResponsePromiseData>): void;
404
409
  getCredentials(type: string): Promise<ICredentialDataDecryptedObject>;
405
410
  getMode(): WorkflowExecuteMode;
@@ -492,7 +497,7 @@ export declare type NodeParameterValue = string | number | boolean | undefined |
492
497
  export interface INodeParameters {
493
498
  [key: string]: NodeParameterValue | INodeParameters | NodeParameterValue[] | INodeParameters[];
494
499
  }
495
- export declare type NodePropertyTypes = 'boolean' | 'collection' | 'color' | 'dateTime' | 'fixedCollection' | 'hidden' | 'json' | 'notice' | 'multiOptions' | 'number' | 'options' | 'string';
500
+ export declare type NodePropertyTypes = 'boolean' | 'collection' | 'color' | 'dateTime' | 'fixedCollection' | 'hidden' | 'json' | 'notice' | 'multiOptions' | 'number' | 'options' | 'string' | 'credentialsSelect';
496
501
  export declare type CodeAutocompleteTypes = 'function' | 'functionItem';
497
502
  export declare type EditorTypes = 'code' | 'json';
498
503
  export interface ILoadOptions {
@@ -518,8 +523,6 @@ export interface INodePropertyTypeOptions {
518
523
  rows?: number;
519
524
  showAlpha?: boolean;
520
525
  sortable?: boolean;
521
- truncate?: boolean;
522
- truncateAt?: number;
523
526
  [key: string]: any;
524
527
  }
525
528
  export interface IDisplayOptions {
@@ -545,6 +548,7 @@ export interface INodeProperties {
545
548
  noDataExpression?: boolean;
546
549
  required?: boolean;
547
550
  routing?: INodePropertyRouting;
551
+ credentialTypes?: Array<'extends:oAuth2Api' | 'extends:oAuth1Api' | 'has:authenticate' | 'has:genericAuth'>;
548
552
  }
549
553
  export interface INodePropertyOptions {
550
554
  name: string;
@@ -984,8 +988,13 @@ export interface INodeGraphItem {
984
988
  resource?: string;
985
989
  operation?: string;
986
990
  domain?: string;
991
+ domain_base?: string;
992
+ domain_path?: string;
987
993
  position: [number, number];
988
994
  mode?: string;
995
+ credential_type?: string;
996
+ credential_set?: boolean;
997
+ method?: string;
989
998
  }
990
999
  export interface INodeNameIndex {
991
1000
  [name: string]: string;
@@ -1002,3 +1011,8 @@ export interface ITelemetrySettings {
1002
1011
  enabled: boolean;
1003
1012
  config?: ITelemetryClientConfig;
1004
1013
  }
1014
+ export interface IConnectedNode {
1015
+ name: string;
1016
+ indicies: number[];
1017
+ depth: number;
1018
+ }
@@ -369,6 +369,7 @@ function getParamterResolveOrder(nodePropertiesArray, parameterDependencies) {
369
369
  }
370
370
  exports.getParamterResolveOrder = getParamterResolveOrder;
371
371
  function getNodeParameters(nodePropertiesArray, nodeValues, returnDefaults, returnNoneDisplayed, node, onlySimpleTypes = false, dataIsResolved = false, nodeValuesRoot, parentType, parameterDependencies) {
372
+ var _a, _b;
372
373
  if (parameterDependencies === undefined) {
373
374
  parameterDependencies = getParamterDependencies(nodePropertiesArray);
374
375
  }
@@ -476,6 +477,12 @@ function getNodeParameters(nodePropertiesArray, nodeValues, returnDefaults, retu
476
477
  propertyValues = JSON.parse(JSON.stringify(nodeProperties.default));
477
478
  }
478
479
  }
480
+ if (!returnDefaults &&
481
+ ((_a = nodeProperties.typeOptions) === null || _a === void 0 ? void 0 : _a.multipleValues) === false &&
482
+ propertyValues &&
483
+ Object.keys(propertyValues).length === 0) {
484
+ return nodeValues;
485
+ }
479
486
  for (const itemName of Object.keys(propertyValues || {})) {
480
487
  if (nodeProperties.typeOptions !== undefined &&
481
488
  nodeProperties.typeOptions.multipleValues === true) {
@@ -508,6 +515,19 @@ function getNodeParameters(nodePropertiesArray, nodeValues, returnDefaults, retu
508
515
  }
509
516
  }
510
517
  }
518
+ if (!returnDefaults &&
519
+ ((_b = nodeProperties.typeOptions) === null || _b === void 0 ? void 0 : _b.multipleValues) === false &&
520
+ collectionValues &&
521
+ Object.keys(collectionValues).length === 0 &&
522
+ propertyValues &&
523
+ (propertyValues === null || propertyValues === void 0 ? void 0 : propertyValues.constructor.name) === 'Object' &&
524
+ Object.keys(propertyValues).length !== 0) {
525
+ const returnValue = {};
526
+ Object.keys(propertyValues || {}).forEach((value) => {
527
+ returnValue[value] = {};
528
+ });
529
+ return { [nodeProperties.name]: returnValue };
530
+ }
511
531
  if (Object.keys(collectionValues).length !== 0 || returnDefaults) {
512
532
  if (returnDefaults) {
513
533
  if (collectionValues === undefined) {
@@ -1 +1 @@
1
- {"version":3,"file":"NodeHelpers.js","sourceRoot":"","sources":["../../src/NodeHelpers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"NodeHelpers.js","sourceRoot":"","sources":["../../src/NodeHelpers.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,7 @@
1
1
  import { INode, INodesGraphResult, IWorkflowBase, INodeTypes } from '.';
2
2
  export declare function getNodeTypeForName(workflow: IWorkflowBase, nodeName: string): INode | undefined;
3
3
  export declare function isNumber(value: unknown): value is number;
4
+ export declare function getDomainBase(raw: string, urlParts?: RegExp): string;
5
+ export declare const ANONYMIZATION_CHARACTER = "*";
6
+ export declare function getDomainPath(raw: string, urlParts?: RegExp): string;
4
7
  export declare function generateNodesGraph(workflow: IWorkflowBase, nodeTypes: INodeTypes): INodesGraphResult;
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.generateNodesGraph = exports.isNumber = exports.getNodeTypeForName = void 0;
3
+ exports.generateNodesGraph = exports.getDomainPath = exports.ANONYMIZATION_CHARACTER = exports.getDomainBase = exports.isNumber = exports.getNodeTypeForName = void 0;
4
4
  const LoggerProxy_1 = require("./LoggerProxy");
5
5
  const STICKY_NODE_TYPE = 'n8n-nodes-base.stickyNote';
6
6
  function getNodeTypeForName(workflow, nodeName) {
@@ -29,6 +29,50 @@ function areOverlapping(topLeft, bottomRight, targetPos) {
29
29
  targetPos[0] < bottomRight[0] &&
30
30
  targetPos[1] < bottomRight[1]);
31
31
  }
32
+ const URL_PARTS_REGEX = /(?<protocolPlusDomain>.*?\..*?)(?<pathname>\/.*)/;
33
+ function getDomainBase(raw, urlParts = URL_PARTS_REGEX) {
34
+ var _a;
35
+ try {
36
+ const url = new URL(raw);
37
+ return [url.protocol, url.hostname].join('//');
38
+ }
39
+ catch (_) {
40
+ const match = urlParts.exec(raw);
41
+ if (!((_a = match === null || match === void 0 ? void 0 : match.groups) === null || _a === void 0 ? void 0 : _a.protocolPlusDomain))
42
+ return '';
43
+ return match.groups.protocolPlusDomain;
44
+ }
45
+ }
46
+ exports.getDomainBase = getDomainBase;
47
+ function isSensitive(segment) {
48
+ if (/^v\d+$/.test(segment))
49
+ return false;
50
+ return /%40/.test(segment) || /\d/.test(segment) || /^[0-9A-F]{8}/i.test(segment);
51
+ }
52
+ exports.ANONYMIZATION_CHARACTER = '*';
53
+ function sanitizeRoute(raw, check = isSensitive, char = exports.ANONYMIZATION_CHARACTER) {
54
+ return raw
55
+ .split('/')
56
+ .map((segment) => (check(segment) ? char.repeat(segment.length) : segment))
57
+ .join('/');
58
+ }
59
+ function getDomainPath(raw, urlParts = URL_PARTS_REGEX) {
60
+ var _a;
61
+ try {
62
+ const url = new URL(raw);
63
+ if (!url.hostname)
64
+ throw new Error('Malformed URL');
65
+ return sanitizeRoute(url.pathname);
66
+ }
67
+ catch (_) {
68
+ const match = urlParts.exec(raw);
69
+ if (!((_a = match === null || match === void 0 ? void 0 : match.groups) === null || _a === void 0 ? void 0 : _a.pathname))
70
+ return '';
71
+ const route = match.groups.pathname.split('?').shift();
72
+ return sanitizeRoute(route);
73
+ }
74
+ }
75
+ exports.getDomainPath = getDomainPath;
32
76
  function generateNodesGraph(workflow, nodeTypes) {
33
77
  var _a;
34
78
  const nodesGraph = {
@@ -61,14 +105,29 @@ function generateNodesGraph(workflow, nodeTypes) {
61
105
  type: node.type,
62
106
  position: node.position,
63
107
  };
64
- if (node.type === 'n8n-nodes-base.httpRequest') {
108
+ if (node.type === 'n8n-nodes-base.httpRequest' && node.typeVersion === 1) {
65
109
  try {
66
110
  nodeItem.domain = new URL(node.parameters.url).hostname;
67
111
  }
68
- catch (e) {
69
- nodeItem.domain = node.parameters.url;
112
+ catch (_) {
113
+ nodeItem.domain = getDomainBase(node.parameters.url);
70
114
  }
71
115
  }
116
+ else if (node.type === 'n8n-nodes-base.httpRequest' && node.typeVersion === 2) {
117
+ const { authentication } = node.parameters;
118
+ nodeItem.credential_type = {
119
+ none: 'none',
120
+ genericCredentialType: node.parameters.genericAuthType,
121
+ existingCredentialType: node.parameters.nodeCredentialType,
122
+ }[authentication];
123
+ nodeItem.credential_set = node.credentials
124
+ ? Object.keys(node.credentials).length > 0
125
+ : false;
126
+ const { url } = node.parameters;
127
+ nodeItem.domain_base = getDomainBase(url);
128
+ nodeItem.domain_path = getDomainPath(url);
129
+ nodeItem.method = node.parameters.requestMethod;
130
+ }
72
131
  else {
73
132
  const nodeType = nodeTypes.getByNameAndVersion(node.type);
74
133
  nodeType === null || nodeType === void 0 ? void 0 : nodeType.description.properties.forEach((property) => {
@@ -1 +1 @@
1
- {"version":3,"file":"TelemetryHelpers.js","sourceRoot":"","sources":["../../src/TelemetryHelpers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"TelemetryHelpers.js","sourceRoot":"","sources":["../../src/TelemetryHelpers.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { Expression, IConnections, IGetExecuteTriggerFunctions, INode, INodeExecuteFunctions, INodeExecutionData, INodeParameters, INodes, INodeType, INodeTypes, IPollFunctions, IRunExecutionData, ITaskDataConnections, ITriggerResponse, IWebhookData, IWebhookResponseData, IWorfklowIssues, IWorkflowExecuteAdditionalData, IWorkflowSettings, NodeParameterValue, WebhookSetupMethodNames, WorkflowActivateMode, WorkflowExecuteMode } from '.';
2
- import { IDataObject } from './Interfaces';
2
+ import { IDataObject, IConnectedNode, IRunNodeResponse } from './Interfaces';
3
3
  export declare class Workflow {
4
4
  id: string | undefined;
5
5
  name: string | undefined;
@@ -38,6 +38,8 @@ export declare class Workflow {
38
38
  getChildNodes(nodeName: string, type?: string, depth?: number): string[];
39
39
  getParentNodes(nodeName: string, type?: string, depth?: number): string[];
40
40
  getConnectedNodes(connections: IConnections, nodeName: string, type?: string, depth?: number, checkedNodes?: string[]): string[];
41
+ getParentNodesByDepth(nodeName: string, maxDepth?: number): IConnectedNode[];
42
+ searchNodesBFS(connections: IConnections, sourceNode: string, maxDepth?: number): IConnectedNode[];
41
43
  getNodeConnectionOutputIndex(nodeName: string, parentNodeName: string, type?: string, depth?: number, checkedNodes?: string[]): number | undefined;
42
44
  __getStartNode(nodeNames: string[]): INode | undefined;
43
45
  getStartNode(destinationNode?: string): INode | undefined;
@@ -45,5 +47,5 @@ export declare class Workflow {
45
47
  runTrigger(node: INode, getTriggerFunctions: IGetExecuteTriggerFunctions, additionalData: IWorkflowExecuteAdditionalData, mode: WorkflowExecuteMode, activation: WorkflowActivateMode): Promise<ITriggerResponse | undefined>;
46
48
  runPoll(node: INode, pollFunctions: IPollFunctions): Promise<INodeExecutionData[][] | null>;
47
49
  runWebhook(webhookData: IWebhookData, node: INode, additionalData: IWorkflowExecuteAdditionalData, nodeExecuteFunctions: INodeExecuteFunctions, mode: WorkflowExecuteMode): Promise<IWebhookResponseData>;
48
- runNode(node: INode, inputData: ITaskDataConnections, runExecutionData: IRunExecutionData, runIndex: number, additionalData: IWorkflowExecuteAdditionalData, nodeExecuteFunctions: INodeExecuteFunctions, mode: WorkflowExecuteMode): Promise<INodeExecutionData[][] | null | undefined>;
50
+ runNode(node: INode, inputData: ITaskDataConnections, runExecutionData: IRunExecutionData, runIndex: number, additionalData: IWorkflowExecuteAdditionalData, nodeExecuteFunctions: INodeExecuteFunctions, mode: WorkflowExecuteMode): Promise<IRunNodeResponse>;
49
51
  }
@@ -2,6 +2,9 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.Workflow = void 0;
4
4
  const _1 = require(".");
5
+ function dedupe(arr) {
6
+ return [...new Set(arr)];
7
+ }
5
8
  class Workflow {
6
9
  constructor(parameters) {
7
10
  this.nodes = {};
@@ -319,6 +322,53 @@ class Workflow {
319
322
  });
320
323
  return returnNodes;
321
324
  }
325
+ getParentNodesByDepth(nodeName, maxDepth = -1) {
326
+ return this.searchNodesBFS(this.connectionsByDestinationNode, nodeName, maxDepth);
327
+ }
328
+ searchNodesBFS(connections, sourceNode, maxDepth = -1) {
329
+ const returnConns = [];
330
+ const type = 'main';
331
+ let queue = [];
332
+ queue.push({
333
+ name: sourceNode,
334
+ depth: 0,
335
+ indicies: [],
336
+ });
337
+ const visited = {};
338
+ let depth = 0;
339
+ while (queue.length > 0) {
340
+ if (maxDepth !== -1 && depth > maxDepth) {
341
+ break;
342
+ }
343
+ depth++;
344
+ const toAdd = [...queue];
345
+ queue = [];
346
+ toAdd.forEach((curr) => {
347
+ if (visited[curr.name]) {
348
+ visited[curr.name].indicies = dedupe(visited[curr.name].indicies.concat(curr.indicies));
349
+ return;
350
+ }
351
+ visited[curr.name] = curr;
352
+ if (curr.name !== sourceNode) {
353
+ returnConns.push(curr);
354
+ }
355
+ if (!connections.hasOwnProperty(curr.name) ||
356
+ !connections[curr.name].hasOwnProperty(type)) {
357
+ return;
358
+ }
359
+ connections[curr.name][type].forEach((connectionsByIndex) => {
360
+ connectionsByIndex.forEach((connection) => {
361
+ queue.push({
362
+ name: connection.node,
363
+ indicies: [connection.index],
364
+ depth,
365
+ });
366
+ });
367
+ });
368
+ });
369
+ }
370
+ return returnConns;
371
+ }
322
372
  getNodeConnectionOutputIndex(nodeName, parentNodeName, type = 'main', depth = -1, checkedNodes) {
323
373
  const node = this.getNode(parentNodeName);
324
374
  if (node === null) {
@@ -424,7 +474,8 @@ class Workflow {
424
474
  if (mode === 'manual') {
425
475
  const triggerResponse = await nodeType.trigger.call(triggerFunctions);
426
476
  triggerResponse.manualTriggerResponse = new Promise((resolve, reject) => {
427
- triggerFunctions.emit = ((resolveEmit) => (data, responsePromise) => {
477
+ triggerFunctions.emit = ((resolveEmit) => (data, responsePromise, donePromise) => {
478
+ var _a;
428
479
  additionalData.hooks.hookFunctions.sendResponse = [
429
480
  async (response) => {
430
481
  if (responsePromise) {
@@ -432,6 +483,11 @@ class Workflow {
432
483
  }
433
484
  },
434
485
  ];
486
+ if (donePromise) {
487
+ (_a = additionalData.hooks.hookFunctions.workflowExecuteAfter) === null || _a === void 0 ? void 0 : _a.unshift(async (runData) => {
488
+ return donePromise.resolve(runData);
489
+ });
490
+ }
435
491
  resolveEmit(data);
436
492
  })(resolve);
437
493
  triggerFunctions.emitError = ((rejectEmit) => (error, responsePromise) => {
@@ -474,11 +530,11 @@ class Workflow {
474
530
  if (node.disabled === true) {
475
531
  if (inputData.hasOwnProperty('main') && inputData.main.length > 0) {
476
532
  if (inputData.main[0] === null) {
477
- return undefined;
533
+ return { data: undefined };
478
534
  }
479
- return [inputData.main[0]];
535
+ return { data: [inputData.main[0]] };
480
536
  }
481
- return undefined;
537
+ return { data: undefined };
482
538
  }
483
539
  const nodeType = this.nodeTypes.getByNameAndVersion(node.type, node.typeVersion);
484
540
  if (nodeType === undefined) {
@@ -492,7 +548,7 @@ class Workflow {
492
548
  connectionInputData = inputData.main[0];
493
549
  }
494
550
  if (connectionInputData.length === 0) {
495
- return undefined;
551
+ return { data: undefined };
496
552
  }
497
553
  }
498
554
  if (runExecutionData.resultData.lastNodeExecuted === node.name &&
@@ -518,7 +574,7 @@ class Workflow {
518
574
  returnPromises.push(nodeType.executeSingle.call(thisArgs));
519
575
  }
520
576
  if (returnPromises.length === 0) {
521
- return null;
577
+ return { data: null };
522
578
  }
523
579
  let promiseResults;
524
580
  try {
@@ -528,48 +584,51 @@ class Workflow {
528
584
  return Promise.reject(error);
529
585
  }
530
586
  if (promiseResults) {
531
- return [promiseResults];
587
+ return { data: [promiseResults] };
532
588
  }
533
589
  }
534
590
  else if (nodeType.execute) {
535
591
  const thisArgs = nodeExecuteFunctions.getExecuteFunctions(this, runExecutionData, runIndex, connectionInputData, inputData, node, additionalData, mode);
536
- return nodeType.execute.call(thisArgs);
592
+ return { data: await nodeType.execute.call(thisArgs) };
537
593
  }
538
594
  else if (nodeType.poll) {
539
595
  if (mode === 'manual') {
540
596
  const thisArgs = nodeExecuteFunctions.getExecutePollFunctions(this, node, additionalData, mode, 'manual');
541
- return nodeType.poll.call(thisArgs);
597
+ return { data: await nodeType.poll.call(thisArgs) };
542
598
  }
543
- return inputData.main;
599
+ return { data: inputData.main };
544
600
  }
545
601
  else if (nodeType.trigger) {
546
602
  if (mode === 'manual') {
547
603
  const triggerResponse = await this.runTrigger(node, nodeExecuteFunctions.getExecuteTriggerFunctions, additionalData, mode, 'manual');
548
604
  if (triggerResponse === undefined) {
549
- return null;
605
+ return { data: null };
550
606
  }
551
607
  if (triggerResponse.manualTriggerFunction !== undefined) {
552
608
  await triggerResponse.manualTriggerFunction();
553
609
  }
554
610
  const response = await triggerResponse.manualTriggerResponse;
611
+ let closeFunction;
555
612
  if (triggerResponse.closeFunction) {
556
- await triggerResponse.closeFunction();
613
+ closeFunction = triggerResponse.closeFunction;
557
614
  }
558
615
  if (response.length === 0) {
559
- return null;
616
+ return { data: null, closeFunction };
560
617
  }
561
- return response;
618
+ return { data: response, closeFunction };
562
619
  }
563
- return inputData.main;
620
+ return { data: inputData.main };
564
621
  }
565
622
  else if (nodeType.webhook) {
566
- return inputData.main;
623
+ return { data: inputData.main };
567
624
  }
568
625
  else {
569
626
  const routingNode = new _1.RoutingNode(this, node, connectionInputData, runExecutionData !== null && runExecutionData !== void 0 ? runExecutionData : null, additionalData, mode);
570
- return routingNode.runNode(inputData, runIndex, nodeType, nodeExecuteFunctions);
627
+ return {
628
+ data: await routingNode.runNode(inputData, runIndex, nodeType, nodeExecuteFunctions),
629
+ };
571
630
  }
572
- return null;
631
+ return { data: null };
573
632
  }
574
633
  }
575
634
  exports.Workflow = Workflow;