n8n-workflow 1.88.0 → 1.89.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.
@@ -0,0 +1,34 @@
1
+ type MultipleInputNodesError = {
2
+ errorCode: 'Multiple Input Nodes';
3
+ nodes: Set<string>;
4
+ };
5
+ type MultipleOutputNodesError = {
6
+ errorCode: 'Multiple Output Nodes';
7
+ nodes: Set<string>;
8
+ };
9
+ type InputEdgeToNonRootNode = {
10
+ errorCode: 'Input Edge To Non-Root Node';
11
+ node: string;
12
+ };
13
+ type OutputEdgeFromNonLeafNode = {
14
+ errorCode: 'Output Edge From Non-Leaf Node';
15
+ node: string;
16
+ };
17
+ type NoContinuousPathFromRootToLeaf = {
18
+ errorCode: 'No Continuous Path From Root To Leaf In Selection';
19
+ start: string;
20
+ end: string;
21
+ };
22
+ export type ExtractableErrorResult = MultipleInputNodesError | MultipleOutputNodesError | InputEdgeToNonRootNode | OutputEdgeFromNonLeafNode | NoContinuousPathFromRootToLeaf;
23
+ type AdjacencyList = Map<string, Set<string>>;
24
+ export declare function getInputEdges(graphIds: Set<string>, adjacencyList: AdjacencyList): Array<[string, string]>;
25
+ export declare function getOutputEdges(graphIds: Set<string>, adjacencyList: AdjacencyList): Array<[string, string]>;
26
+ export declare function getRootNodes(graphIds: Set<string>, adjacencyList: AdjacencyList): Set<string>;
27
+ export declare function getLeafNodes(graphIds: Set<string>, adjacencyList: AdjacencyList): Set<string>;
28
+ export declare function hasPath(start: string, end: string, adjacencyList: AdjacencyList): boolean;
29
+ export type ExtractableSubgraphData = {
30
+ start?: string;
31
+ end?: string;
32
+ };
33
+ export declare function parseExtractableSubgraphSelection(graphIds: Set<string>, adjacencyList: AdjacencyList): ExtractableSubgraphData | ExtractableErrorResult[];
34
+ export {};
@@ -0,0 +1,132 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getInputEdges = getInputEdges;
4
+ exports.getOutputEdges = getOutputEdges;
5
+ exports.getRootNodes = getRootNodes;
6
+ exports.getLeafNodes = getLeafNodes;
7
+ exports.hasPath = hasPath;
8
+ exports.parseExtractableSubgraphSelection = parseExtractableSubgraphSelection;
9
+ function getInputEdges(graphIds, adjacencyList) {
10
+ const result = [];
11
+ for (const [from, tos] of adjacencyList.entries()) {
12
+ if (graphIds.has(from))
13
+ continue;
14
+ for (const to of tos) {
15
+ if (graphIds.has(to)) {
16
+ result.push([from, to]);
17
+ }
18
+ }
19
+ }
20
+ return result;
21
+ }
22
+ function getOutputEdges(graphIds, adjacencyList) {
23
+ const result = [];
24
+ for (const [from, tos] of adjacencyList.entries()) {
25
+ if (!graphIds.has(from))
26
+ continue;
27
+ for (const to of tos) {
28
+ if (!graphIds.has(to)) {
29
+ result.push([from, to]);
30
+ }
31
+ }
32
+ }
33
+ return result;
34
+ }
35
+ function intersection(a, b) {
36
+ const result = new Set();
37
+ for (const x of a) {
38
+ if (b.has(x))
39
+ result.add(x);
40
+ }
41
+ return result;
42
+ }
43
+ function union(a, b) {
44
+ const result = new Set();
45
+ for (const x of a)
46
+ result.add(x);
47
+ for (const x of b)
48
+ result.add(x);
49
+ return result;
50
+ }
51
+ function difference(minuend, subtrahend) {
52
+ const result = new Set(minuend.values());
53
+ for (const x of subtrahend) {
54
+ result.delete(x);
55
+ }
56
+ return result;
57
+ }
58
+ function getRootNodes(graphIds, adjacencyList) {
59
+ let innerNodes = new Set();
60
+ for (const nodeId of graphIds) {
61
+ innerNodes = union(innerNodes, adjacencyList.get(nodeId) ?? new Set());
62
+ }
63
+ return difference(graphIds, innerNodes);
64
+ }
65
+ function getLeafNodes(graphIds, adjacencyList) {
66
+ const result = new Set();
67
+ for (const nodeId of graphIds) {
68
+ if (intersection(adjacencyList.get(nodeId) ?? new Set(), graphIds).size === 0) {
69
+ result.add(nodeId);
70
+ }
71
+ }
72
+ return result;
73
+ }
74
+ function hasPath(start, end, adjacencyList) {
75
+ const seen = new Set();
76
+ const paths = [start];
77
+ while (true) {
78
+ const next = paths.pop();
79
+ if (next === end)
80
+ return true;
81
+ if (next === undefined)
82
+ return false;
83
+ seen.add(next);
84
+ paths.push(...difference(adjacencyList.get(next) ?? new Set(), seen));
85
+ }
86
+ }
87
+ function parseExtractableSubgraphSelection(graphIds, adjacencyList) {
88
+ const errors = [];
89
+ const inputEdges = getInputEdges(graphIds, adjacencyList);
90
+ const inputNodes = new Set(inputEdges.map((x) => x[1]));
91
+ const rootNodes = getRootNodes(graphIds, adjacencyList);
92
+ for (const inputNode of difference(inputNodes, rootNodes).values()) {
93
+ errors.push({
94
+ errorCode: 'Input Edge To Non-Root Node',
95
+ node: inputNode,
96
+ });
97
+ }
98
+ const rootInputNodes = intersection(rootNodes, inputNodes);
99
+ if (rootInputNodes.size > 1) {
100
+ errors.push({
101
+ errorCode: 'Multiple Input Nodes',
102
+ nodes: rootInputNodes,
103
+ });
104
+ }
105
+ const outputEdges = getOutputEdges(graphIds, adjacencyList);
106
+ const outputNodes = new Set(outputEdges.map((x) => x[0]));
107
+ const leafNodes = getLeafNodes(graphIds, adjacencyList);
108
+ for (const outputNode of difference(outputNodes, leafNodes).values()) {
109
+ errors.push({
110
+ errorCode: 'Output Edge From Non-Leaf Node',
111
+ node: outputNode,
112
+ });
113
+ }
114
+ const leafOutputNodes = intersection(leafNodes, outputNodes);
115
+ if (leafOutputNodes.size > 1) {
116
+ errors.push({
117
+ errorCode: 'Multiple Output Nodes',
118
+ nodes: leafOutputNodes,
119
+ });
120
+ }
121
+ const start = rootInputNodes.values().next().value;
122
+ const end = leafOutputNodes.values().next().value;
123
+ if (start && end && !hasPath(start, end, adjacencyList)) {
124
+ errors.push({
125
+ errorCode: 'No Continuous Path From Root To Leaf In Selection',
126
+ start,
127
+ end,
128
+ });
129
+ }
130
+ return errors.length > 0 ? errors : { start, end };
131
+ }
132
+ //# sourceMappingURL=graphUtils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"graphUtils.js","sourceRoot":"","sources":["../../src/Graph/graphUtils.ts"],"names":[],"mappings":"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"}
@@ -694,6 +694,7 @@ export interface INode {
694
694
  credentials?: INodeCredentials;
695
695
  webhookId?: string;
696
696
  extendsCredential?: string;
697
+ rewireOutputLogTo?: NodeConnectionType;
697
698
  }
698
699
  export interface IPinData {
699
700
  [nodeName: string]: INodeExecutionData[];
@@ -1676,6 +1677,7 @@ export interface WorkflowTestData {
1676
1677
  mode: WorkflowExecuteMode;
1677
1678
  input: INodeExecutionData;
1678
1679
  };
1680
+ credentials?: Record<string, ICredentialDataDecryptedObject>;
1679
1681
  }
1680
1682
  export type LogLevel = (typeof LOG_LEVELS)[number];
1681
1683
  export type LogMetadata = {
@@ -1852,7 +1854,8 @@ export interface WorkflowInputsData {
1852
1854
  fields: ResourceMapperField[];
1853
1855
  dataMode: string;
1854
1856
  subworkflowInfo?: {
1855
- id?: string;
1857
+ workflowId?: string;
1858
+ triggerId?: string;
1856
1859
  };
1857
1860
  }
1858
1861
  export interface ResourceMapperField {
@@ -1 +1 @@
1
- {"version":3,"file":"Interfaces.js","sourceRoot":"","sources":["../src/Interfaces.ts"],"names":[],"mappings":";;;AA6FA,MAAsB,YAAY;IASjC,YAAY,eAAwC,EAAE,IAAY,EAAE,IAAa;QAChF,IAAI,CAAC,EAAE,GAAG,eAAe,CAAC,EAAE,IAAI,SAAS,CAAC;QAC1C,IAAI,CAAC,IAAI,GAAG,eAAe,CAAC,IAAI,CAAC;QACjC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IAClB,CAAC;CAOD;AArBD,oCAqBC;AAuED,MAAsB,kBAAkB;CAyCvC;AAzCD,gDAyCC;AA03CD,MAAsB,IAAI;CAKzB;AALD,oBAKC;AAqNY,QAAA,mBAAmB,GAAG;IAClC,OAAO,EAAE,UAAU;IACnB,OAAO,EAAE,UAAU;IACnB,UAAU,EAAE,aAAa;IACzB,WAAW,EAAE,cAAc;IAC3B,eAAe,EAAE,kBAAkB;IACnC,QAAQ,EAAE,WAAW;IACrB,cAAc,EAAE,iBAAiB;IACjC,WAAW,EAAE,cAAc;IAC3B,cAAc,EAAE,iBAAiB;IACjC,MAAM,EAAE,SAAS;IACjB,aAAa,EAAE,gBAAgB;IAC/B,IAAI,EAAE,MAAM;CACH,CAAC;AAME,QAAA,mBAAmB,GAAyB;IACxD,2BAAmB,CAAC,OAAO;IAC3B,2BAAmB,CAAC,OAAO;IAC3B,2BAAmB,CAAC,UAAU;IAC9B,2BAAmB,CAAC,WAAW;IAC/B,2BAAmB,CAAC,eAAe;IACnC,2BAAmB,CAAC,QAAQ;IAC5B,2BAAmB,CAAC,cAAc;IAClC,2BAAmB,CAAC,WAAW;IAC/B,2BAAmB,CAAC,cAAc;IAClC,2BAAmB,CAAC,MAAM;IAC1B,2BAAmB,CAAC,aAAa;IACjC,2BAAmB,CAAC,IAAI;CACxB,CAAC"}
1
+ {"version":3,"file":"Interfaces.js","sourceRoot":"","sources":["../src/Interfaces.ts"],"names":[],"mappings":";;;AA6FA,MAAsB,YAAY;IASjC,YAAY,eAAwC,EAAE,IAAY,EAAE,IAAa;QAChF,IAAI,CAAC,EAAE,GAAG,eAAe,CAAC,EAAE,IAAI,SAAS,CAAC;QAC1C,IAAI,CAAC,IAAI,GAAG,eAAe,CAAC,IAAI,CAAC;QACjC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IAClB,CAAC;CAOD;AArBD,oCAqBC;AAuED,MAAsB,kBAAkB;CAyCvC;AAzCD,gDAyCC;AA23CD,MAAsB,IAAI;CAKzB;AALD,oBAKC;AAqNY,QAAA,mBAAmB,GAAG;IAClC,OAAO,EAAE,UAAU;IACnB,OAAO,EAAE,UAAU;IACnB,UAAU,EAAE,aAAa;IACzB,WAAW,EAAE,cAAc;IAC3B,eAAe,EAAE,kBAAkB;IACnC,QAAQ,EAAE,WAAW;IACrB,cAAc,EAAE,iBAAiB;IACjC,WAAW,EAAE,cAAc;IAC3B,cAAc,EAAE,iBAAiB;IACjC,MAAM,EAAE,SAAS;IACjB,aAAa,EAAE,gBAAgB;IAC/B,IAAI,EAAE,MAAM;CACH,CAAC;AAME,QAAA,mBAAmB,GAAyB;IACxD,2BAAmB,CAAC,OAAO;IAC3B,2BAAmB,CAAC,OAAO;IAC3B,2BAAmB,CAAC,UAAU;IAC9B,2BAAmB,CAAC,WAAW;IAC/B,2BAAmB,CAAC,eAAe;IACnC,2BAAmB,CAAC,QAAQ;IAC5B,2BAAmB,CAAC,cAAc;IAClC,2BAAmB,CAAC,WAAW;IAC/B,2BAAmB,CAAC,cAAc;IAClC,2BAAmB,CAAC,MAAM;IAC1B,2BAAmB,CAAC,aAAa;IACjC,2BAAmB,CAAC,IAAI;CACxB,CAAC"}
@@ -1,13 +1,11 @@
1
- import type { IContextObject, INode, INodeCredentialDescription, INodeIssues, INodeParameters, INodeProperties, INodePropertyCollection, INodeType, IParameterDependencies, IRunExecutionData, IVersionedNodeType, INodeTypeDescription, INodeOutputConfiguration, INodeInputConfiguration, NodeHint, INodeExecutionData, NodeConnectionType } from './Interfaces';
1
+ import type { IContextObject, INode, INodeCredentialDescription, INodeIssues, INodeParameters, INodeProperties, INodePropertyCollection, INodeType, IParameterDependencies, IRunExecutionData, IVersionedNodeType, INodeTypeDescription, INodeOutputConfiguration, INodeInputConfiguration, NodeConnectionType } from './Interfaces';
2
2
  import type { Workflow } from './Workflow';
3
3
  export declare const cronNodeOptions: INodePropertyCollection[];
4
4
  export declare function isSubNodeType(typeDescription: Pick<INodeTypeDescription, 'outputs'> | null): boolean;
5
- export declare function applyDeclarativeNodeOptionParameters(nodeType: INodeType): void;
6
5
  export declare function displayParameter(nodeValues: INodeParameters, parameter: INodeProperties | INodeCredentialDescription, node: Pick<INode, 'typeVersion'> | null, nodeTypeDescription: INodeTypeDescription | null, nodeValuesRoot?: INodeParameters, displayKey?: 'displayOptions' | 'disabledOptions'): boolean;
7
6
  export declare function displayParameterPath(nodeValues: INodeParameters, parameter: INodeProperties | INodeCredentialDescription, path: string, node: Pick<INode, 'typeVersion'> | null, nodeTypeDescription: INodeTypeDescription | null, displayKey?: 'displayOptions' | 'disabledOptions'): boolean;
8
7
  export declare function getContext(runExecutionData: IRunExecutionData, type: string, node?: INode): IContextObject;
9
- export declare function getParameterResolveOrder(nodePropertiesArray: INodeProperties[], parameterDependencies: IParameterDependencies): number[];
10
- export type GetNodeParametersOptions = {
8
+ type GetNodeParametersOptions = {
11
9
  onlySimpleTypes?: boolean;
12
10
  dataIsResolved?: boolean;
13
11
  nodeValuesRoot?: INodeParameters;
@@ -19,14 +17,8 @@ export declare function getNodeWebhookPath(workflowId: string, node: INode, path
19
17
  export declare function getNodeWebhookUrl(baseUrl: string, workflowId: string, node: INode, path: string, isFullPath?: boolean): string;
20
18
  export declare function getConnectionTypes(connections: Array<NodeConnectionType | INodeInputConfiguration | INodeOutputConfiguration>): NodeConnectionType[];
21
19
  export declare function getNodeInputs(workflow: Workflow, node: INode, nodeTypeData: INodeTypeDescription): Array<NodeConnectionType | INodeInputConfiguration>;
22
- export declare function getNodeHints(workflow: Workflow, node: INode, nodeTypeData: INodeTypeDescription, nodeInputData?: {
23
- runExecutionData: IRunExecutionData | null;
24
- runIndex: number;
25
- connectionInputData: INodeExecutionData[];
26
- }): NodeHint[];
27
20
  export declare function getNodeOutputs(workflow: Workflow, node: INode, nodeTypeData: INodeTypeDescription): Array<NodeConnectionType | INodeOutputConfiguration>;
28
21
  export declare function getNodeParametersIssues(nodePropertiesArray: INodeProperties[], node: INode, nodeTypeDescription: INodeTypeDescription | null, pinDataNodeNames?: string[]): INodeIssues | null;
29
- export declare function nodeIssuesToString(issues: INodeIssues, node?: INode): string[];
30
22
  export declare function getParameterValueByPath(nodeValues: INodeParameters, parameterName: string, path: string): import("./Interfaces").NodeParameterValueType;
31
23
  export declare function getParameterIssues(nodeProperties: INodeProperties, nodeValues: INodeParameters, path: string, node: INode, nodeTypeDescription: INodeTypeDescription | null): INodeIssues;
32
24
  export declare function mergeIssues(destination: INodeIssues, source: INodeIssues | null): void;
@@ -34,3 +26,4 @@ export declare function mergeNodeProperties(mainProperties: INodeProperties[], a
34
26
  export declare function getVersionedNodeType(object: IVersionedNodeType | INodeType, version?: number): INodeType;
35
27
  export declare function isTriggerNode(nodeTypeData: INodeTypeDescription): boolean;
36
28
  export declare function isExecutable(workflow: Workflow, node: INode, nodeTypeData: INodeTypeDescription): boolean;
29
+ export {};
@@ -5,20 +5,16 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.cronNodeOptions = void 0;
7
7
  exports.isSubNodeType = isSubNodeType;
8
- exports.applyDeclarativeNodeOptionParameters = applyDeclarativeNodeOptionParameters;
9
8
  exports.displayParameter = displayParameter;
10
9
  exports.displayParameterPath = displayParameterPath;
11
10
  exports.getContext = getContext;
12
- exports.getParameterResolveOrder = getParameterResolveOrder;
13
11
  exports.getNodeParameters = getNodeParameters;
14
12
  exports.getNodeWebhookPath = getNodeWebhookPath;
15
13
  exports.getNodeWebhookUrl = getNodeWebhookUrl;
16
14
  exports.getConnectionTypes = getConnectionTypes;
17
15
  exports.getNodeInputs = getNodeInputs;
18
- exports.getNodeHints = getNodeHints;
19
16
  exports.getNodeOutputs = getNodeOutputs;
20
17
  exports.getNodeParametersIssues = getNodeParametersIssues;
21
- exports.nodeIssuesToString = nodeIssuesToString;
22
18
  exports.getParameterValueByPath = getParameterValueByPath;
23
19
  exports.getParameterIssues = getParameterIssues;
24
20
  exports.mergeIssues = mergeIssues;
@@ -219,82 +215,6 @@ exports.cronNodeOptions = [
219
215
  ],
220
216
  },
221
217
  ];
222
- const declarativeNodeOptionParameters = {
223
- displayName: 'Request Options',
224
- name: 'requestOptions',
225
- type: 'collection',
226
- isNodeSetting: true,
227
- placeholder: 'Add Option',
228
- default: {},
229
- options: [
230
- {
231
- displayName: 'Batching',
232
- name: 'batching',
233
- placeholder: 'Add Batching',
234
- type: 'fixedCollection',
235
- typeOptions: {
236
- multipleValues: false,
237
- },
238
- default: {
239
- batch: {},
240
- },
241
- options: [
242
- {
243
- displayName: 'Batching',
244
- name: 'batch',
245
- values: [
246
- {
247
- displayName: 'Items per Batch',
248
- name: 'batchSize',
249
- type: 'number',
250
- typeOptions: {
251
- minValue: -1,
252
- },
253
- default: 50,
254
- description: 'Input will be split in batches to throttle requests. -1 for disabled. 0 will be treated as 1.',
255
- },
256
- {
257
- displayName: 'Batch Interval (ms)',
258
- name: 'batchInterval',
259
- type: 'number',
260
- typeOptions: {
261
- minValue: 0,
262
- },
263
- default: 1000,
264
- description: 'Time (in milliseconds) between each batch of requests. 0 for disabled.',
265
- },
266
- ],
267
- },
268
- ],
269
- },
270
- {
271
- displayName: 'Ignore SSL Issues (Insecure)',
272
- name: 'allowUnauthorizedCerts',
273
- type: 'boolean',
274
- noDataExpression: true,
275
- default: false,
276
- description: 'Whether to accept the response even if SSL certificate validation is not possible',
277
- },
278
- {
279
- displayName: 'Proxy',
280
- name: 'proxy',
281
- type: 'string',
282
- default: '',
283
- placeholder: 'e.g. http://myproxy:3128',
284
- description: 'HTTP proxy to use. If authentication is required it can be defined as follow: http://username:password@myproxy:3128',
285
- },
286
- {
287
- displayName: 'Timeout',
288
- name: 'timeout',
289
- type: 'number',
290
- typeOptions: {
291
- minValue: 1,
292
- },
293
- default: 10000,
294
- description: 'Time in ms to wait for the server to send response headers (and start the response body) before aborting the request',
295
- },
296
- ],
297
- };
298
218
  function isSubNodeType(typeDescription) {
299
219
  if (!typeDescription?.outputs || typeof typeDescription.outputs === 'string') {
300
220
  return false;
@@ -304,47 +224,6 @@ function isSubNodeType(typeDescription) {
304
224
  ? outputTypes.filter((output) => output !== Interfaces_1.NodeConnectionTypes.Main).length > 0
305
225
  : false;
306
226
  }
307
- function applyDeclarativeNodeOptionParameters(nodeType) {
308
- if (nodeType.execute ||
309
- nodeType.trigger ||
310
- nodeType.webhook ||
311
- nodeType.description.polling ||
312
- isSubNodeType(nodeType.description)) {
313
- return;
314
- }
315
- const parameters = nodeType.description.properties;
316
- if (!parameters) {
317
- return;
318
- }
319
- const existingRequestOptionsIndex = parameters.findIndex((parameter) => parameter.name === 'requestOptions');
320
- if (existingRequestOptionsIndex !== -1) {
321
- parameters[existingRequestOptionsIndex] = {
322
- ...declarativeNodeOptionParameters,
323
- options: [
324
- ...(declarativeNodeOptionParameters.options || []),
325
- ...(parameters[existingRequestOptionsIndex]?.options || []),
326
- ],
327
- };
328
- const options = parameters[existingRequestOptionsIndex]?.options;
329
- if (options) {
330
- options.sort((a, b) => {
331
- if ('displayName' in a && 'displayName' in b) {
332
- if (a.displayName < b.displayName) {
333
- return -1;
334
- }
335
- if (a.displayName > b.displayName) {
336
- return 1;
337
- }
338
- }
339
- return 0;
340
- });
341
- }
342
- }
343
- else {
344
- parameters.push(declarativeNodeOptionParameters);
345
- }
346
- return;
347
- }
348
227
  const getPropertyValues = (nodeValues, propertyName, node, nodeTypeDescription, nodeValuesRoot) => {
349
228
  let value;
350
229
  if (propertyName.charAt(0) === '/') {
@@ -802,42 +681,6 @@ function getNodeInputs(workflow, node, nodeTypeData) {
802
681
  return [];
803
682
  }
804
683
  }
805
- function getNodeHints(workflow, node, nodeTypeData, nodeInputData) {
806
- const hints = [];
807
- if (nodeTypeData?.hints?.length) {
808
- for (const hint of nodeTypeData.hints) {
809
- if (hint.displayCondition) {
810
- try {
811
- let display;
812
- if (nodeInputData === undefined) {
813
- display = (workflow.expression.getSimpleParameterValue(node, hint.displayCondition, 'internal', {}) || false);
814
- }
815
- else {
816
- const { runExecutionData, runIndex, connectionInputData } = nodeInputData;
817
- display = workflow.expression.getParameterValue(hint.displayCondition, runExecutionData ?? null, runIndex, 0, node.name, connectionInputData, 'manual', {});
818
- }
819
- if (typeof display === 'string' && display.trim() === 'true') {
820
- display = true;
821
- }
822
- if (typeof display !== 'boolean') {
823
- console.warn(`Condition was not resolved as boolean in '${node.name}' node for hint: `, hint.message);
824
- continue;
825
- }
826
- if (display) {
827
- hints.push(hint);
828
- }
829
- }
830
- catch (e) {
831
- console.warn(`Could not calculate display condition in '${node.name}' node for hint: `, hint.message);
832
- }
833
- }
834
- else {
835
- hints.push(hint);
836
- }
837
- }
838
- }
839
- return hints;
840
- }
841
684
  function getNodeOutputs(workflow, node, nodeTypeData) {
842
685
  let outputs = [];
843
686
  if (Array.isArray(nodeTypeData.outputs)) {
@@ -887,33 +730,6 @@ function getNodeParametersIssues(nodePropertiesArray, node, nodeTypeDescription,
887
730
  }
888
731
  return foundIssues;
889
732
  }
890
- function nodeIssuesToString(issues, node) {
891
- const nodeIssues = [];
892
- if (issues.execution !== undefined) {
893
- nodeIssues.push('Execution Error.');
894
- }
895
- const objectProperties = ['parameters', 'credentials', 'input'];
896
- let issueText;
897
- let parameterName;
898
- for (const propertyName of objectProperties) {
899
- if (issues[propertyName] !== undefined) {
900
- for (parameterName of Object.keys(issues[propertyName])) {
901
- for (issueText of issues[propertyName][parameterName]) {
902
- nodeIssues.push(issueText);
903
- }
904
- }
905
- }
906
- }
907
- if (issues.typeUnknown !== undefined) {
908
- if (node !== undefined) {
909
- nodeIssues.push(`Node Type "${node.type}" is not known.`);
910
- }
911
- else {
912
- nodeIssues.push('Node Type is not known.');
913
- }
914
- }
915
- return nodeIssues;
916
- }
917
733
  const validateResourceLocatorParameter = (value, parameterMode) => {
918
734
  const valueToValidate = value?.value?.toString() || '';
919
735
  if (valueToValidate.startsWith('=')) {
@@ -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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"}
@@ -0,0 +1,4 @@
1
+ export declare function hasDotNotationBannedChar(nodeName: string): boolean;
2
+ export declare function backslashEscape(nodeName: string): string;
3
+ export declare function dollarEscape(nodeName: string): string;
4
+ export declare function applyAccessPatterns(expression: string, previousName: string, newName: string): string;