n8n-workflow 1.115.0 → 1.116.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 (39) hide show
  1. package/dist/cjs/constants.d.ts +6 -2
  2. package/dist/cjs/constants.d.ts.map +1 -1
  3. package/dist/cjs/constants.js +7 -3
  4. package/dist/cjs/constants.js.map +1 -1
  5. package/dist/cjs/index.d.ts +1 -0
  6. package/dist/cjs/index.d.ts.map +1 -1
  7. package/dist/cjs/index.js +2 -1
  8. package/dist/cjs/index.js.map +1 -1
  9. package/dist/cjs/interfaces.d.ts +25 -3
  10. package/dist/cjs/interfaces.d.ts.map +1 -1
  11. package/dist/cjs/interfaces.js.map +1 -1
  12. package/dist/cjs/telemetry-helpers.d.ts.map +1 -1
  13. package/dist/cjs/telemetry-helpers.js +11 -0
  14. package/dist/cjs/telemetry-helpers.js.map +1 -1
  15. package/dist/cjs/typecheck.tsbuildinfo +1 -1
  16. package/dist/cjs/workflow-diff.d.ts +18 -0
  17. package/dist/cjs/workflow-diff.d.ts.map +1 -0
  18. package/dist/cjs/workflow-diff.js +62 -0
  19. package/dist/cjs/workflow-diff.js.map +1 -0
  20. package/dist/esm/constants.d.ts +6 -2
  21. package/dist/esm/constants.d.ts.map +1 -1
  22. package/dist/esm/constants.js +6 -2
  23. package/dist/esm/constants.js.map +1 -1
  24. package/dist/esm/index.d.ts +1 -0
  25. package/dist/esm/index.d.ts.map +1 -1
  26. package/dist/esm/index.js +1 -0
  27. package/dist/esm/index.js.map +1 -1
  28. package/dist/esm/interfaces.d.ts +25 -3
  29. package/dist/esm/interfaces.d.ts.map +1 -1
  30. package/dist/esm/interfaces.js.map +1 -1
  31. package/dist/esm/telemetry-helpers.d.ts.map +1 -1
  32. package/dist/esm/telemetry-helpers.js +12 -1
  33. package/dist/esm/telemetry-helpers.js.map +1 -1
  34. package/dist/esm/typecheck.tsbuildinfo +1 -1
  35. package/dist/esm/workflow-diff.d.ts +18 -0
  36. package/dist/esm/workflow-diff.d.ts.map +1 -0
  37. package/dist/esm/workflow-diff.js +44 -0
  38. package/dist/esm/workflow-diff.js.map +1 -0
  39. package/package.json +4 -4
@@ -0,0 +1,18 @@
1
+ export declare const enum NodeDiffStatus {
2
+ Eq = "equal",
3
+ Modified = "modified",
4
+ Added = "added",
5
+ Deleted = "deleted"
6
+ }
7
+ export type NodeDiff<T> = {
8
+ status: NodeDiffStatus;
9
+ node: T;
10
+ };
11
+ export type WorkflowDiff<T> = Map<string, NodeDiff<T>>;
12
+ export declare function compareNodes<T extends {
13
+ id: string;
14
+ }>(base: T | undefined, target: T | undefined): boolean;
15
+ export declare function compareWorkflowsNodes<T extends {
16
+ id: string;
17
+ }>(base: T[], target: T[], nodesEqual?: (base: T | undefined, target: T | undefined) => boolean): WorkflowDiff<T>;
18
+ //# sourceMappingURL=workflow-diff.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"workflow-diff.d.ts","sourceRoot":"","sources":["../../src/workflow-diff.ts"],"names":[],"mappings":"AAGA,0BAAkB,cAAc;IAC/B,EAAE,UAAU;IACZ,QAAQ,aAAa;IACrB,KAAK,UAAU;IACf,OAAO,YAAY;CACnB;AAED,MAAM,MAAM,QAAQ,CAAC,CAAC,IAAI;IACzB,MAAM,EAAE,cAAc,CAAC;IACvB,IAAI,EAAE,CAAC,CAAC;CACR,CAAC;AAEF,MAAM,MAAM,YAAY,CAAC,CAAC,IAAI,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;AAEvD,wBAAgB,YAAY,CAAC,CAAC,SAAS;IAAE,EAAE,EAAE,MAAM,CAAA;CAAE,EACpD,IAAI,EAAE,CAAC,GAAG,SAAS,EACnB,MAAM,EAAE,CAAC,GAAG,SAAS,GACnB,OAAO,CAOT;AAED,wBAAgB,qBAAqB,CAAC,CAAC,SAAS;IAAE,EAAE,EAAE,MAAM,CAAA;CAAE,EAC7D,IAAI,EAAE,CAAC,EAAE,EACT,MAAM,EAAE,CAAC,EAAE,EACX,UAAU,GAAE,CAAC,IAAI,EAAE,CAAC,GAAG,SAAS,EAAE,MAAM,EAAE,CAAC,GAAG,SAAS,KAAK,OAAsB,GAChF,YAAY,CAAC,CAAC,CAAC,CA8BjB"}
@@ -0,0 +1,44 @@
1
+ import isEqual from 'lodash/isEqual';
2
+ import pick from 'lodash/pick';
3
+ export var NodeDiffStatus;
4
+ (function (NodeDiffStatus) {
5
+ NodeDiffStatus["Eq"] = "equal";
6
+ NodeDiffStatus["Modified"] = "modified";
7
+ NodeDiffStatus["Added"] = "added";
8
+ NodeDiffStatus["Deleted"] = "deleted";
9
+ })(NodeDiffStatus || (NodeDiffStatus = {}));
10
+ export function compareNodes(base, target) {
11
+ const propsToCompare = ['name', 'type', 'typeVersion', 'webhookId', 'credentials', 'parameters'];
12
+ const baseNode = pick(base, propsToCompare);
13
+ const targetNode = pick(target, propsToCompare);
14
+ return isEqual(baseNode, targetNode);
15
+ }
16
+ export function compareWorkflowsNodes(base, target, nodesEqual = compareNodes) {
17
+ const baseNodes = base.reduce((acc, node) => {
18
+ acc.set(node.id, node);
19
+ return acc;
20
+ }, new Map());
21
+ const targetNodes = target.reduce((acc, node) => {
22
+ acc.set(node.id, node);
23
+ return acc;
24
+ }, new Map());
25
+ const diff = new Map();
26
+ for (const [id, node] of baseNodes.entries()) {
27
+ if (!targetNodes.has(id)) {
28
+ diff.set(id, { status: NodeDiffStatus.Deleted, node });
29
+ }
30
+ else if (!nodesEqual(baseNodes.get(id), targetNodes.get(id))) {
31
+ diff.set(id, { status: NodeDiffStatus.Modified, node });
32
+ }
33
+ else {
34
+ diff.set(id, { status: NodeDiffStatus.Eq, node });
35
+ }
36
+ }
37
+ for (const [id, node] of targetNodes.entries()) {
38
+ if (!baseNodes.has(id)) {
39
+ diff.set(id, { status: NodeDiffStatus.Added, node });
40
+ }
41
+ }
42
+ return diff;
43
+ }
44
+ //# sourceMappingURL=workflow-diff.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"workflow-diff.js","sourceRoot":"","sources":["../../src/workflow-diff.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,gBAAgB,CAAC;AACrC,OAAO,IAAI,MAAM,aAAa,CAAC;AAE/B,MAAM,CAAN,IAAkB,cAKjB;AALD,WAAkB,cAAc;IAC/B,8BAAY,CAAA;IACZ,uCAAqB,CAAA;IACrB,iCAAe,CAAA;IACf,qCAAmB,CAAA;AACpB,CAAC,EALiB,cAAc,KAAd,cAAc,QAK/B;AASD,MAAM,UAAU,YAAY,CAC3B,IAAmB,EACnB,MAAqB;IAErB,MAAM,cAAc,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,aAAa,EAAE,WAAW,EAAE,aAAa,EAAE,YAAY,CAAC,CAAC;IAEjG,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC;IAC5C,MAAM,UAAU,GAAG,IAAI,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;IAEhD,OAAO,OAAO,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;AACtC,CAAC;AAED,MAAM,UAAU,qBAAqB,CACpC,IAAS,EACT,MAAW,EACX,aAAsE,YAAY;IAElF,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAiB,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE;QAC3D,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;QACvB,OAAO,GAAG,CAAC;IACZ,CAAC,EAAE,IAAI,GAAG,EAAE,CAAC,CAAC;IAEd,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,CAAiB,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE;QAC/D,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;QACvB,OAAO,GAAG,CAAC;IACZ,CAAC,EAAE,IAAI,GAAG,EAAE,CAAC,CAAC;IAEd,MAAM,IAAI,GAAoB,IAAI,GAAG,EAAE,CAAC;IAExC,KAAK,MAAM,CAAC,EAAE,EAAE,IAAI,CAAC,IAAI,SAAS,CAAC,OAAO,EAAE,EAAE,CAAC;QAC9C,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC;YAC1B,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,cAAc,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;QACxD,CAAC;aAAM,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,WAAW,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;YAChE,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,cAAc,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;QACzD,CAAC;aAAM,CAAC;YACP,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,cAAc,CAAC,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;QACnD,CAAC;IACF,CAAC;IAED,KAAK,MAAM,CAAC,EAAE,EAAE,IAAI,CAAC,IAAI,WAAW,CAAC,OAAO,EAAE,EAAE,CAAC;QAChD,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC;YACxB,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,cAAc,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QACtD,CAAC;IACF,CAAC;IAED,OAAO,IAAI,CAAC;AACb,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "n8n-workflow",
3
- "version": "1.115.0",
3
+ "version": "1.116.0",
4
4
  "description": "Workflow base code of n8n",
5
5
  "types": "dist/esm/index.d.ts",
6
6
  "module": "dist/esm/index.js",
@@ -33,9 +33,9 @@
33
33
  "@types/xml2js": "^0.4.14",
34
34
  "vitest": "^3.1.3",
35
35
  "vitest-mock-extended": "^3.1.0",
36
- "@n8n/config": "1.60.0",
37
- "@n8n/typescript-config": "1.3.0",
38
- "@n8n/vitest-config": "1.5.0"
36
+ "@n8n/config": "1.61.0",
37
+ "@n8n/vitest-config": "1.5.0",
38
+ "@n8n/typescript-config": "1.3.0"
39
39
  },
40
40
  "dependencies": {
41
41
  "@n8n/tournament": "1.0.6",