@n8n/db 0.26.0 → 0.28.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 (55) hide show
  1. package/dist/build.tsbuildinfo +1 -1
  2. package/dist/entities/abstract-entity.d.ts +17 -0
  3. package/dist/entities/abstract-entity.js +14 -7
  4. package/dist/entities/abstract-entity.js.map +1 -1
  5. package/dist/entities/execution-data.d.ts +4 -1
  6. package/dist/entities/execution-data.js.map +1 -1
  7. package/dist/entities/index.d.ts +3 -1
  8. package/dist/entities/index.js +4 -1
  9. package/dist/entities/index.js.map +1 -1
  10. package/dist/entities/types-db.d.ts +8 -1
  11. package/dist/entities/types-db.js.map +1 -1
  12. package/dist/entities/user.d.ts +1 -1
  13. package/dist/entities/workflow-dependency-entity.d.ts +14 -0
  14. package/dist/entities/workflow-dependency-entity.js +59 -0
  15. package/dist/entities/workflow-dependency-entity.js.map +1 -0
  16. package/dist/entities/workflow-entity.d.ts +2 -9
  17. package/dist/migrations/common/1759399811000-ChangeValueTypesForInsights.d.ts +4 -0
  18. package/dist/migrations/common/1759399811000-ChangeValueTypesForInsights.js +52 -0
  19. package/dist/migrations/common/1759399811000-ChangeValueTypesForInsights.js.map +1 -0
  20. package/dist/migrations/common/1760019379982-CreateChatHubTables.d.ts +5 -0
  21. package/dist/migrations/common/1760019379982-CreateChatHubTables.js +90 -0
  22. package/dist/migrations/common/1760019379982-CreateChatHubTables.js.map +1 -0
  23. package/dist/migrations/common/1760020838000-UniqueRoleNames.d.ts +5 -0
  24. package/dist/migrations/common/1760020838000-UniqueRoleNames.js +47 -0
  25. package/dist/migrations/common/1760020838000-UniqueRoleNames.js.map +1 -0
  26. package/dist/migrations/common/1760314000000-CreateWorkflowDependencyTable.d.ts +5 -0
  27. package/dist/migrations/common/1760314000000-CreateWorkflowDependencyTable.js +28 -0
  28. package/dist/migrations/common/1760314000000-CreateWorkflowDependencyTable.js.map +1 -0
  29. package/dist/migrations/common/1760965142113-DropUnusedChatHubColumns.d.ts +5 -0
  30. package/dist/migrations/common/1760965142113-DropUnusedChatHubColumns.js +33 -0
  31. package/dist/migrations/common/1760965142113-DropUnusedChatHubColumns.js.map +1 -0
  32. package/dist/migrations/dsl/column.d.ts +2 -0
  33. package/dist/migrations/dsl/column.js +11 -0
  34. package/dist/migrations/dsl/column.js.map +1 -1
  35. package/dist/migrations/dsl/table.d.ts +1 -0
  36. package/dist/migrations/dsl/table.js +4 -0
  37. package/dist/migrations/dsl/table.js.map +1 -1
  38. package/dist/migrations/migration-helpers.js +5 -0
  39. package/dist/migrations/migration-helpers.js.map +1 -1
  40. package/dist/migrations/mysqldb/1760965142113-DropUnusedChatHubColumns.d.ts +5 -0
  41. package/dist/migrations/mysqldb/1760965142113-DropUnusedChatHubColumns.js +43 -0
  42. package/dist/migrations/mysqldb/1760965142113-DropUnusedChatHubColumns.js.map +1 -0
  43. package/dist/migrations/mysqldb/index.js +10 -0
  44. package/dist/migrations/mysqldb/index.js.map +1 -1
  45. package/dist/migrations/postgresdb/index.js +10 -0
  46. package/dist/migrations/postgresdb/index.js.map +1 -1
  47. package/dist/migrations/sqlite/index.js +10 -0
  48. package/dist/migrations/sqlite/index.js.map +1 -1
  49. package/dist/repositories/execution-data.repository.d.ts +3 -1
  50. package/dist/repositories/execution.repository.js.map +1 -1
  51. package/dist/repositories/workflow.repository.d.ts +2 -2
  52. package/dist/services/auth.roles.service.js +23 -0
  53. package/dist/services/auth.roles.service.js.map +1 -1
  54. package/dist/utils/test-utils/mock-entity-manager.d.ts +1 -2
  55. package/package.json +9 -9
@@ -12,9 +12,23 @@ export declare const WithStringId: {
12
12
  generateId(): void;
13
13
  };
14
14
  } & typeof BaseEntity;
15
+ export declare const WithCreatedAt: {
16
+ new (...args: any[]): {
17
+ createdAt: Date;
18
+ };
19
+ } & typeof BaseEntity;
20
+ export declare const WithUpdatedAt: {
21
+ new (...args: any[]): {
22
+ updatedAt: Date;
23
+ setUpdateDate(): void;
24
+ };
25
+ } & typeof BaseEntity;
15
26
  export declare const WithTimestamps: {
16
27
  new (...args: any[]): {
17
28
  createdAt: Date;
29
+ };
30
+ } & {
31
+ new (...args: any[]): {
18
32
  updatedAt: Date;
19
33
  setUpdateDate(): void;
20
34
  };
@@ -27,6 +41,9 @@ export declare const WithTimestampsAndStringId: {
27
41
  } & {
28
42
  new (...args: any[]): {
29
43
  createdAt: Date;
44
+ };
45
+ } & {
46
+ new (...args: any[]): {
30
47
  updatedAt: Date;
31
48
  setUpdateDate(): void;
32
49
  };
@@ -9,7 +9,7 @@ var __metadata = (this && this.__metadata) || function (k, v) {
9
9
  if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
10
  };
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.WithTimestampsAndStringId = exports.WithTimestamps = exports.WithStringId = exports.datetimeColumnType = exports.jsonColumnType = exports.dbType = void 0;
12
+ exports.WithTimestampsAndStringId = exports.WithTimestamps = exports.WithUpdatedAt = exports.WithCreatedAt = exports.WithStringId = exports.datetimeColumnType = exports.jsonColumnType = exports.dbType = void 0;
13
13
  exports.JsonColumn = JsonColumn;
14
14
  exports.DateTimeColumn = DateTimeColumn;
15
15
  const config_1 = require("@n8n/config");
@@ -62,16 +62,12 @@ function mixinStringId(base) {
62
62
  ], Derived.prototype, "generateId", null);
63
63
  return Derived;
64
64
  }
65
- function mixinTimestamps(base) {
65
+ function mixinUpdatedAt(base) {
66
66
  class Derived extends base {
67
67
  setUpdateDate() {
68
68
  this.updatedAt = new Date();
69
69
  }
70
70
  }
71
- __decorate([
72
- (0, typeorm_1.CreateDateColumn)(tsColumnOptions),
73
- __metadata("design:type", Date)
74
- ], Derived.prototype, "createdAt", void 0);
75
71
  __decorate([
76
72
  (0, typeorm_1.UpdateDateColumn)(tsColumnOptions),
77
73
  __metadata("design:type", Date)
@@ -84,9 +80,20 @@ function mixinTimestamps(base) {
84
80
  ], Derived.prototype, "setUpdateDate", null);
85
81
  return Derived;
86
82
  }
83
+ function mixinCreatedAt(base) {
84
+ class Derived extends base {
85
+ }
86
+ __decorate([
87
+ (0, typeorm_1.CreateDateColumn)(tsColumnOptions),
88
+ __metadata("design:type", Date)
89
+ ], Derived.prototype, "createdAt", void 0);
90
+ return Derived;
91
+ }
87
92
  class BaseEntity {
88
93
  }
89
94
  exports.WithStringId = mixinStringId(BaseEntity);
90
- exports.WithTimestamps = mixinTimestamps(BaseEntity);
95
+ exports.WithCreatedAt = mixinCreatedAt(BaseEntity);
96
+ exports.WithUpdatedAt = mixinUpdatedAt(BaseEntity);
97
+ exports.WithTimestamps = mixinCreatedAt(mixinUpdatedAt(BaseEntity));
91
98
  exports.WithTimestampsAndStringId = mixinStringId(exports.WithTimestamps);
92
99
  //# sourceMappingURL=abstract-entity.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"abstract-entity.js","sourceRoot":"","sources":["../../src/entities/abstract-entity.ts"],"names":[],"mappings":";;;;;;;;;;;;AA2BA,gCAKC;AAED,wCAKC;AAvCD,wCAA2C;AAC3C,gCAAoC;AAEpC,0CAOsB;AAGtB,oDAAqD;AAEhC,cAAM,GAAK,cAAS,CAAC,GAAG,CAAC,qBAAY,CAAC,CAAC,QAAQ,MAAC;AAErE,MAAM,eAAe,GAAG;IACvB,MAAM,EAAE,sCAAsC;IAC9C,UAAU,EAAE,sBAAsB;IAClC,OAAO,EAAE,sBAAsB;IAC/B,OAAO,EAAE,sBAAsB;CAC/B,CAAC,cAAM,CAAC,CAAC;AAEG,QAAA,cAAc,GAAG,cAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,MAAM,CAAC;AAC9D,QAAA,kBAAkB,GAAG,cAAM,KAAK,YAAY,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,UAAU,CAAC;AAEvF,SAAgB,UAAU,CAAC,OAAqC;IAC/D,OAAO,IAAA,gBAAM,EAAC;QACb,GAAG,OAAO;QACV,IAAI,EAAE,sBAAc;KACpB,CAAC,CAAC;AACJ,CAAC;AAED,SAAgB,cAAc,CAAC,OAAqC;IACnE,OAAO,IAAA,gBAAM,EAAC;QACb,GAAG,OAAO;QACV,IAAI,EAAE,0BAAkB;KACxB,CAAC,CAAC;AACJ,CAAC;AACD,MAAM,eAAe,GAAkB;IACtC,SAAS,EAAE,CAAC;IACZ,OAAO,EAAE,GAAG,EAAE,CAAC,eAAe;IAC9B,IAAI,EAAE,0BAAkB;CACxB,CAAC;AAGF,SAAS,aAAa,CAA6B,IAAO;IACzD,MAAM,OAAQ,SAAQ,IAAI;QAKzB,UAAU;YACT,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC;gBACd,IAAI,CAAC,EAAE,GAAG,IAAA,2BAAc,GAAE,CAAC;YAC5B,CAAC;QACF,CAAC;KACD;IARA;QADC,IAAA,uBAAa,EAAC,SAAS,CAAC;;uCACd;IAGX;QADC,IAAA,sBAAY,GAAE;;;;6CAKd;IAEF,OAAO,OAAO,CAAC;AAChB,CAAC;AAGD,SAAS,eAAe,CAA6B,IAAO;IAC3D,MAAM,OAAQ,SAAQ,IAAI;QAQzB,aAAa;YACZ,IAAI,CAAC,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC;QAC7B,CAAC;KACD;IATA;QADC,IAAA,0BAAgB,EAAC,eAAe,CAAC;kCACvB,IAAI;8CAAC;IAGhB;QADC,IAAA,0BAAgB,EAAC,eAAe,CAAC;kCACvB,IAAI;8CAAC;IAGhB;QADC,IAAA,sBAAY,GAAE;;;;gDAGd;IAEF,OAAO,OAAO,CAAC;AAChB,CAAC;AAED,MAAM,UAAU;CAAG;AAEN,QAAA,YAAY,GAAG,aAAa,CAAC,UAAU,CAAC,CAAC;AACzC,QAAA,cAAc,GAAG,eAAe,CAAC,UAAU,CAAC,CAAC;AAC7C,QAAA,yBAAyB,GAAG,aAAa,CAAC,sBAAc,CAAC,CAAC"}
1
+ {"version":3,"file":"abstract-entity.js","sourceRoot":"","sources":["../../src/entities/abstract-entity.ts"],"names":[],"mappings":";;;;;;;;;;;;AA2BA,gCAKC;AAED,wCAKC;AAvCD,wCAA2C;AAC3C,gCAAoC;AAEpC,0CAOsB;AAGtB,oDAAqD;AAEhC,cAAM,GAAK,cAAS,CAAC,GAAG,CAAC,qBAAY,CAAC,CAAC,QAAQ,MAAC;AAErE,MAAM,eAAe,GAAG;IACvB,MAAM,EAAE,sCAAsC;IAC9C,UAAU,EAAE,sBAAsB;IAClC,OAAO,EAAE,sBAAsB;IAC/B,OAAO,EAAE,sBAAsB;CAC/B,CAAC,cAAM,CAAC,CAAC;AAEG,QAAA,cAAc,GAAG,cAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,MAAM,CAAC;AAC9D,QAAA,kBAAkB,GAAG,cAAM,KAAK,YAAY,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,UAAU,CAAC;AAEvF,SAAgB,UAAU,CAAC,OAAqC;IAC/D,OAAO,IAAA,gBAAM,EAAC;QACb,GAAG,OAAO;QACV,IAAI,EAAE,sBAAc;KACpB,CAAC,CAAC;AACJ,CAAC;AAED,SAAgB,cAAc,CAAC,OAAqC;IACnE,OAAO,IAAA,gBAAM,EAAC;QACb,GAAG,OAAO;QACV,IAAI,EAAE,0BAAkB;KACxB,CAAC,CAAC;AACJ,CAAC;AACD,MAAM,eAAe,GAAkB;IACtC,SAAS,EAAE,CAAC;IACZ,OAAO,EAAE,GAAG,EAAE,CAAC,eAAe;IAC9B,IAAI,EAAE,0BAAkB;CACxB,CAAC;AAGF,SAAS,aAAa,CAA6B,IAAO;IACzD,MAAM,OAAQ,SAAQ,IAAI;QAKzB,UAAU;YACT,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC;gBACd,IAAI,CAAC,EAAE,GAAG,IAAA,2BAAc,GAAE,CAAC;YAC5B,CAAC;QACF,CAAC;KACD;IARA;QADC,IAAA,uBAAa,EAAC,SAAS,CAAC;;uCACd;IAGX;QADC,IAAA,sBAAY,GAAE;;;;6CAKd;IAEF,OAAO,OAAO,CAAC;AAChB,CAAC;AAGD,SAAS,cAAc,CAA6B,IAAO;IAC1D,MAAM,OAAQ,SAAQ,IAAI;QAKzB,aAAa;YACZ,IAAI,CAAC,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC;QAC7B,CAAC;KACD;IANA;QADC,IAAA,0BAAgB,EAAC,eAAe,CAAC;kCACvB,IAAI;8CAAC;IAGhB;QADC,IAAA,sBAAY,GAAE;;;;gDAGd;IAEF,OAAO,OAAO,CAAC;AAChB,CAAC;AAGD,SAAS,cAAc,CAA6B,IAAO;IAC1D,MAAM,OAAQ,SAAQ,IAAI;KAGzB;IADA;QADC,IAAA,0BAAgB,EAAC,eAAe,CAAC;kCACvB,IAAI;8CAAC;IAEjB,OAAO,OAAO,CAAC;AAChB,CAAC;AAED,MAAM,UAAU;CAAG;AAEN,QAAA,YAAY,GAAG,aAAa,CAAC,UAAU,CAAC,CAAC;AACzC,QAAA,aAAa,GAAG,cAAc,CAAC,UAAU,CAAC,CAAC;AAC3C,QAAA,aAAa,GAAG,cAAc,CAAC,UAAU,CAAC,CAAC;AAC3C,QAAA,cAAc,GAAG,cAAc,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC,CAAC;AAC5D,QAAA,yBAAyB,GAAG,aAAa,CAAC,sBAAc,CAAC,CAAC"}
@@ -1,8 +1,11 @@
1
1
  import { IWorkflowBase } from 'n8n-workflow';
2
2
  import { ExecutionEntity } from './execution-entity';
3
+ import { ISimplifiedPinData } from './types-db';
3
4
  export declare class ExecutionData {
4
5
  data: string;
5
- workflowData: IWorkflowBase;
6
+ workflowData: Omit<IWorkflowBase, 'pinData'> & {
7
+ pinData?: ISimplifiedPinData;
8
+ };
6
9
  executionId: string;
7
10
  execution: ExecutionEntity;
8
11
  }
@@ -1 +1 @@
1
- {"version":3,"file":"execution-data.js","sourceRoot":"","sources":["../../src/entities/execution-data.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,0CAAmF;AAGnF,uDAA+C;AAC/C,yDAAqD;AACrD,wDAAsD;AAG/C,IAAM,aAAa,GAAnB,MAAM,aAAa;CAsBzB,CAAA;AAtBY,sCAAa;AAEzB;IADC,IAAA,gBAAM,EAAC,MAAM,CAAC;;2CACF;AAQb;IADC,IAAA,4BAAU,GAAE;;mDACe;AAG5B;IADC,IAAA,uBAAa,EAAC,EAAE,WAAW,EAAE,4BAAa,EAAE,CAAC;;kDAC1B;AAQpB;IANC,IAAA,kBAAQ,EAAC,iBAAiB,EAAE,eAAe,EAAE;QAC7C,QAAQ,EAAE,SAAS;KACnB,CAAC;IACD,IAAA,oBAAU,EAAC;QACX,IAAI,EAAE,aAAa;KACnB,CAAC;8BACS,kCAAe;gDAAC;wBArBf,aAAa;IADzB,IAAA,gBAAM,GAAE;GACI,aAAa,CAsBzB"}
1
+ {"version":3,"file":"execution-data.js","sourceRoot":"","sources":["../../src/entities/execution-data.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,0CAAmF;AAGnF,uDAA+C;AAC/C,yDAAqD;AAErD,wDAAsD;AAG/C,IAAM,aAAa,GAAnB,MAAM,aAAa;CA2BzB,CAAA;AA3BY,sCAAa;AAEzB;IADC,IAAA,gBAAM,EAAC,MAAM,CAAC;;2CACF;AAab;IADC,IAAA,4BAAU,GAAE;;mDACmE;AAGhF;IADC,IAAA,uBAAa,EAAC,EAAE,WAAW,EAAE,4BAAa,EAAE,CAAC;;kDAC1B;AAQpB;IANC,IAAA,kBAAQ,EAAC,iBAAiB,EAAE,eAAe,EAAE;QAC7C,QAAQ,EAAE,SAAS;KACnB,CAAC;IACD,IAAA,oBAAU,EAAC;QACX,IAAI,EAAE,aAAa;KACnB,CAAC;8BACS,kCAAe;gDAAC;wBA1Bf,aAAa;IADzB,IAAA,gBAAM,GAAE;GACI,aAAa,CA2BzB"}
@@ -26,11 +26,12 @@ import { TestRun } from './test-run.ee';
26
26
  import { User } from './user';
27
27
  import { Variables } from './variables';
28
28
  import { WebhookEntity } from './webhook-entity';
29
+ import { WorkflowDependency } from './workflow-dependency-entity';
29
30
  import { WorkflowEntity } from './workflow-entity';
30
31
  import { WorkflowHistory } from './workflow-history';
31
32
  import { WorkflowStatistics } from './workflow-statistics';
32
33
  import { WorkflowTagMapping } from './workflow-tag-mapping';
33
- export { EventDestinations, InvalidAuthToken, ProcessedData, Settings, Variables, ApiKey, WebhookEntity, AuthIdentity, CredentialsEntity, Folder, Project, ProjectRelation, Role, Scope, SharedCredentials, SharedWorkflow, TagEntity, User, WorkflowEntity, WorkflowStatistics, WorkflowTagMapping, FolderTagMapping, AuthProviderSyncHistory, WorkflowHistory, ExecutionData, ExecutionMetadata, AnnotationTagEntity, ExecutionAnnotation, AnnotationTagMapping, TestRun, TestCaseExecution, ExecutionEntity, };
34
+ export { EventDestinations, InvalidAuthToken, ProcessedData, Settings, Variables, ApiKey, WebhookEntity, AuthIdentity, CredentialsEntity, Folder, Project, ProjectRelation, Role, Scope, SharedCredentials, SharedWorkflow, TagEntity, User, WorkflowDependency, WorkflowEntity, WorkflowStatistics, WorkflowTagMapping, FolderTagMapping, AuthProviderSyncHistory, WorkflowHistory, ExecutionData, ExecutionMetadata, AnnotationTagEntity, ExecutionAnnotation, AnnotationTagMapping, TestRun, TestCaseExecution, ExecutionEntity, };
34
35
  export declare const entities: {
35
36
  EventDestinations: typeof EventDestinations;
36
37
  InvalidAuthToken: typeof InvalidAuthToken;
@@ -49,6 +50,7 @@ export declare const entities: {
49
50
  SharedWorkflow: typeof SharedWorkflow;
50
51
  TagEntity: typeof TagEntity;
51
52
  User: typeof User;
53
+ WorkflowDependency: typeof WorkflowDependency;
52
54
  WorkflowEntity: typeof WorkflowEntity;
53
55
  WorkflowStatistics: typeof WorkflowStatistics;
54
56
  WorkflowTagMapping: typeof WorkflowTagMapping;
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.entities = exports.ExecutionEntity = exports.TestCaseExecution = exports.TestRun = exports.AnnotationTagMapping = exports.ExecutionAnnotation = exports.AnnotationTagEntity = exports.ExecutionMetadata = exports.ExecutionData = exports.WorkflowHistory = exports.AuthProviderSyncHistory = exports.FolderTagMapping = exports.WorkflowTagMapping = exports.WorkflowStatistics = exports.WorkflowEntity = exports.User = exports.TagEntity = exports.SharedWorkflow = exports.SharedCredentials = exports.Scope = exports.Role = exports.ProjectRelation = exports.Project = exports.Folder = exports.CredentialsEntity = exports.AuthIdentity = exports.WebhookEntity = exports.ApiKey = exports.Variables = exports.Settings = exports.ProcessedData = exports.InvalidAuthToken = exports.EventDestinations = void 0;
3
+ exports.entities = exports.ExecutionEntity = exports.TestCaseExecution = exports.TestRun = exports.AnnotationTagMapping = exports.ExecutionAnnotation = exports.AnnotationTagEntity = exports.ExecutionMetadata = exports.ExecutionData = exports.WorkflowHistory = exports.AuthProviderSyncHistory = exports.FolderTagMapping = exports.WorkflowTagMapping = exports.WorkflowStatistics = exports.WorkflowEntity = exports.WorkflowDependency = exports.User = exports.TagEntity = exports.SharedWorkflow = exports.SharedCredentials = exports.Scope = exports.Role = exports.ProjectRelation = exports.Project = exports.Folder = exports.CredentialsEntity = exports.AuthIdentity = exports.WebhookEntity = exports.ApiKey = exports.Variables = exports.Settings = exports.ProcessedData = exports.InvalidAuthToken = exports.EventDestinations = void 0;
4
4
  const annotation_tag_entity_ee_1 = require("./annotation-tag-entity.ee");
5
5
  Object.defineProperty(exports, "AnnotationTagEntity", { enumerable: true, get: function () { return annotation_tag_entity_ee_1.AnnotationTagEntity; } });
6
6
  const annotation_tag_mapping_ee_1 = require("./annotation-tag-mapping.ee");
@@ -57,6 +57,8 @@ const variables_1 = require("./variables");
57
57
  Object.defineProperty(exports, "Variables", { enumerable: true, get: function () { return variables_1.Variables; } });
58
58
  const webhook_entity_1 = require("./webhook-entity");
59
59
  Object.defineProperty(exports, "WebhookEntity", { enumerable: true, get: function () { return webhook_entity_1.WebhookEntity; } });
60
+ const workflow_dependency_entity_1 = require("./workflow-dependency-entity");
61
+ Object.defineProperty(exports, "WorkflowDependency", { enumerable: true, get: function () { return workflow_dependency_entity_1.WorkflowDependency; } });
60
62
  const workflow_entity_1 = require("./workflow-entity");
61
63
  Object.defineProperty(exports, "WorkflowEntity", { enumerable: true, get: function () { return workflow_entity_1.WorkflowEntity; } });
62
64
  const workflow_history_1 = require("./workflow-history");
@@ -83,6 +85,7 @@ exports.entities = {
83
85
  SharedWorkflow: shared_workflow_1.SharedWorkflow,
84
86
  TagEntity: tag_entity_1.TagEntity,
85
87
  User: user_1.User,
88
+ WorkflowDependency: workflow_dependency_entity_1.WorkflowDependency,
86
89
  WorkflowEntity: workflow_entity_1.WorkflowEntity,
87
90
  WorkflowStatistics: workflow_statistics_1.WorkflowStatistics,
88
91
  WorkflowTagMapping: workflow_tag_mapping_1.WorkflowTagMapping,
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/entities/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/entities/index.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  import type { Scope } from '@n8n/permissions';
2
2
  import type { FindOperator } from '@n8n/typeorm';
3
3
  import type express from 'express';
4
- import type { ICredentialsEncrypted, IRunExecutionData, IWorkflowBase, WorkflowExecuteMode, ExecutionStatus, FeatureFlags, IUserSettings, AnnotationVote, ExecutionSummary, IUser } from 'n8n-workflow';
4
+ import type { ICredentialsEncrypted, IRunExecutionData, IWorkflowBase, WorkflowExecuteMode, ExecutionStatus, FeatureFlags, IUserSettings, AnnotationVote, ExecutionSummary, IUser, IDataObject, IBinaryKeyData, IPairedItemData } from 'n8n-workflow';
5
5
  import { z } from 'zod';
6
6
  import type { CredentialsEntity } from './credentials-entity';
7
7
  import type { Folder } from './folder';
@@ -280,4 +280,11 @@ export type AuthenticatedRequest<RouteParams = {}, ResponseBody = {}, RequestBod
280
280
  'push-ref': string;
281
281
  };
282
282
  };
283
+ export interface ISimplifiedPinData {
284
+ [nodeName: string]: Array<{
285
+ json: IDataObject;
286
+ binary?: IBinaryKeyData;
287
+ pairedItem?: IPairedItemData | IPairedItemData[] | number;
288
+ }>;
289
+ }
283
290
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"types-db.js","sourceRoot":"","sources":["../../src/entities/types-db.ts"],"names":[],"mappings":";;;AAuRA,gDAEC;AA1QD,6BAAwB;AA4PxB,IAAkB,eAMjB;AAND,WAAkB,eAAe;IAChC,2DAAwC,CAAA;IACxC,uDAAoC,CAAA;IACpC,mDAAgC,CAAA;IAChC,+CAA4B,CAAA;IAC5B,6CAA0B,CAAA;AAC3B,CAAC,EANiB,eAAe,+BAAf,eAAe,QAMhC;AAED,MAAM,kBAAkB,GAAG,OAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;AAIrE,SAAgB,kBAAkB,CAAC,KAAa;IAC/C,OAAO,kBAAkB,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC;AACpD,CAAC"}
1
+ {"version":3,"file":"types-db.js","sourceRoot":"","sources":["../../src/entities/types-db.ts"],"names":[],"mappings":";;;AA0RA,gDAEC;AA1QD,6BAAwB;AA4PxB,IAAkB,eAMjB;AAND,WAAkB,eAAe;IAChC,2DAAwC,CAAA;IACxC,uDAAoC,CAAA;IACpC,mDAAgC,CAAA;IAChC,+CAA4B,CAAA;IAC5B,6CAA0B,CAAA;AAC3B,CAAC,EANiB,eAAe,+BAAf,eAAe,QAMhC;AAED,MAAM,kBAAkB,GAAG,OAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;AAIrE,SAAgB,kBAAkB,CAAC,KAAa;IAC/C,OAAO,kBAAkB,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC;AACpD,CAAC"}
@@ -30,7 +30,7 @@ export declare class User extends WithTimestamps implements IUser, AuthPrincipal
30
30
  lastActiveAt?: Date | null;
31
31
  isPending: boolean;
32
32
  computeIsPending(): void;
33
- toJSON(): Omit<this, "setUpdateDate" | "toJSON" | "password" | "preUpsertHook" | "mfaSecret" | "mfaRecoveryCodes" | "computeIsPending" | "createPersonalProjectName" | "toIUser">;
33
+ toJSON(): Omit<this, "setUpdateDate" | "password" | "preUpsertHook" | "mfaSecret" | "mfaRecoveryCodes" | "computeIsPending" | "toJSON" | "createPersonalProjectName" | "toIUser">;
34
34
  createPersonalProjectName(): string;
35
35
  toIUser(): IUser;
36
36
  }
@@ -0,0 +1,14 @@
1
+ import { Relation } from '@n8n/typeorm';
2
+ import { WithCreatedAt } from './abstract-entity';
3
+ import type { WorkflowEntity } from './workflow-entity';
4
+ export type DependencyType = 'credential' | 'nodeType' | 'webhookPath' | 'workflowCall';
5
+ export declare class WorkflowDependency extends WithCreatedAt {
6
+ id: number;
7
+ workflowId: string;
8
+ workflowVersionId: number;
9
+ dependencyType: DependencyType;
10
+ dependencyKey: string;
11
+ dependencyInfo: string | null;
12
+ indexVersionId: number;
13
+ workflow: Relation<WorkflowEntity>;
14
+ }
@@ -0,0 +1,59 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.WorkflowDependency = void 0;
13
+ const typeorm_1 = require("@n8n/typeorm");
14
+ const abstract_entity_1 = require("./abstract-entity");
15
+ let WorkflowDependency = class WorkflowDependency extends abstract_entity_1.WithCreatedAt {
16
+ };
17
+ exports.WorkflowDependency = WorkflowDependency;
18
+ __decorate([
19
+ (0, typeorm_1.PrimaryGeneratedColumn)(),
20
+ __metadata("design:type", Number)
21
+ ], WorkflowDependency.prototype, "id", void 0);
22
+ __decorate([
23
+ (0, typeorm_1.Column)({ length: 36 }),
24
+ (0, typeorm_1.Index)(),
25
+ __metadata("design:type", String)
26
+ ], WorkflowDependency.prototype, "workflowId", void 0);
27
+ __decorate([
28
+ (0, typeorm_1.Column)({ type: 'int' }),
29
+ __metadata("design:type", Number)
30
+ ], WorkflowDependency.prototype, "workflowVersionId", void 0);
31
+ __decorate([
32
+ (0, typeorm_1.Column)({ length: 32 }),
33
+ (0, typeorm_1.Index)(),
34
+ __metadata("design:type", String)
35
+ ], WorkflowDependency.prototype, "dependencyType", void 0);
36
+ __decorate([
37
+ (0, typeorm_1.Column)({ length: 255 }),
38
+ (0, typeorm_1.Index)(),
39
+ __metadata("design:type", String)
40
+ ], WorkflowDependency.prototype, "dependencyKey", void 0);
41
+ __decorate([
42
+ (0, typeorm_1.Column)({ type: 'varchar', length: 255, nullable: true }),
43
+ __metadata("design:type", Object)
44
+ ], WorkflowDependency.prototype, "dependencyInfo", void 0);
45
+ __decorate([
46
+ (0, typeorm_1.Column)({ type: 'smallint', default: 1 }),
47
+ __metadata("design:type", Number)
48
+ ], WorkflowDependency.prototype, "indexVersionId", void 0);
49
+ __decorate([
50
+ (0, typeorm_1.ManyToOne)('WorkflowEntity', {
51
+ onDelete: 'CASCADE',
52
+ }),
53
+ (0, typeorm_1.JoinColumn)({ name: 'workflowId' }),
54
+ __metadata("design:type", Object)
55
+ ], WorkflowDependency.prototype, "workflow", void 0);
56
+ exports.WorkflowDependency = WorkflowDependency = __decorate([
57
+ (0, typeorm_1.Entity)({ name: 'workflow_dependency' })
58
+ ], WorkflowDependency);
59
+ //# sourceMappingURL=workflow-dependency-entity.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"workflow-dependency-entity.js","sourceRoot":"","sources":["../../src/entities/workflow-dependency-entity.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,0CAQsB;AAEtB,uDAAkD;AAM3C,IAAM,kBAAkB,GAAxB,MAAM,kBAAmB,SAAQ,+BAAa;CAoDpD,CAAA;AApDY,gDAAkB;AAE9B;IADC,IAAA,gCAAsB,GAAE;;8CACd;AAOX;IAFC,IAAA,gBAAM,EAAC,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;IACtB,IAAA,eAAK,GAAE;;sDACW;AAOnB;IADC,IAAA,gBAAM,EAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;;6DACE;AAQ1B;IAFC,IAAA,gBAAM,EAAC,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;IACtB,IAAA,eAAK,GAAE;;0DACuB;AAQ/B;IAFC,IAAA,gBAAM,EAAC,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC;IACvB,IAAA,eAAK,GAAE;;yDACc;AAOtB;IADC,IAAA,gBAAM,EAAC,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;0DAC3B;AAM9B;IADC,IAAA,gBAAM,EAAC,EAAE,IAAI,EAAE,UAAU,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC;;0DAClB;AAMvB;IAJC,IAAA,mBAAS,EAAC,gBAAgB,EAAE;QAC5B,QAAQ,EAAE,SAAS;KACnB,CAAC;IACD,IAAA,oBAAU,EAAC,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC;;oDACA;6BAnDvB,kBAAkB;IAD9B,IAAA,gBAAM,EAAC,EAAE,IAAI,EAAE,qBAAqB,EAAE,CAAC;GAC3B,kBAAkB,CAoD9B"}
@@ -1,11 +1,11 @@
1
1
  import { IConnections, IDataObject, IWorkflowSettings, WorkflowFEMeta } from 'n8n-workflow';
2
- import type { IBinaryKeyData, INode, IPairedItemData } from 'n8n-workflow';
2
+ import type { INode } from 'n8n-workflow';
3
3
  import { WithTimestampsAndStringId } from './abstract-entity';
4
4
  import { type Folder } from './folder';
5
5
  import type { SharedWorkflow } from './shared-workflow';
6
6
  import type { TagEntity } from './tag-entity';
7
7
  import type { TestRun } from './test-run.ee';
8
- import type { IWorkflowDb } from './types-db';
8
+ import type { ISimplifiedPinData, IWorkflowDb } from './types-db';
9
9
  import type { WorkflowStatistics } from './workflow-statistics';
10
10
  import type { WorkflowTagMapping } from './workflow-tag-mapping';
11
11
  export declare class WorkflowEntity extends WithTimestampsAndStringId implements IWorkflowDb {
@@ -27,10 +27,3 @@ export declare class WorkflowEntity extends WithTimestampsAndStringId implements
27
27
  parentFolder: Folder | null;
28
28
  testRuns: TestRun[];
29
29
  }
30
- export interface ISimplifiedPinData {
31
- [nodeName: string]: Array<{
32
- json: IDataObject;
33
- binary?: IBinaryKeyData;
34
- pairedItem?: IPairedItemData | IPairedItemData[] | number;
35
- }>;
36
- }
@@ -0,0 +1,4 @@
1
+ import type { IrreversibleMigration, MigrationContext } from '../migration-types';
2
+ export declare class ChangeValueTypesForInsights1759399811000 implements IrreversibleMigration {
3
+ up({ isSqlite, isMysql, isPostgres, escape, copyTable, queryRunner, schemaBuilder: { createTable, column, dropTable }, }: MigrationContext): Promise<void>;
4
+ }
@@ -0,0 +1,52 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ChangeValueTypesForInsights1759399811000 = void 0;
4
+ const INSIGHTS_RAW_TABLE_NAME = 'insights_raw';
5
+ const INSIGHTS_RAW_TEMP_TABLE_NAME = 'temp_insights_raw';
6
+ const INSIGHTS_BY_PERIOD_TABLE_NAME = 'insights_by_period';
7
+ const INSIGHTS_BY_PERIOD_TEMP_TABLE_NAME = 'temp_insights_by_period';
8
+ const INSIGHTS_METADATA_TABLE_NAME = 'insights_metadata';
9
+ const VALUE_COLUMN_NAME = 'value';
10
+ class ChangeValueTypesForInsights1759399811000 {
11
+ async up({ isSqlite, isMysql, isPostgres, escape, copyTable, queryRunner, schemaBuilder: { createTable, column, dropTable }, }) {
12
+ const insightsRawTable = escape.tableName(INSIGHTS_RAW_TABLE_NAME);
13
+ const insightsByPeriodTable = escape.tableName(INSIGHTS_BY_PERIOD_TABLE_NAME);
14
+ const valueColumnName = escape.columnName(VALUE_COLUMN_NAME);
15
+ if (isSqlite) {
16
+ const tempInsightsByPeriodTable = escape.tableName(INSIGHTS_BY_PERIOD_TEMP_TABLE_NAME);
17
+ const tempInsightsRawTable = escape.tableName(INSIGHTS_RAW_TEMP_TABLE_NAME);
18
+ const typeComment = '0: time_saved_minutes, 1: runtime_milliseconds, 2: success, 3: failure';
19
+ await createTable(INSIGHTS_RAW_TEMP_TABLE_NAME)
20
+ .withColumns(column('id').int.primary.autoGenerate2, column('metaId').int.notNull, column('type').int.notNull.comment(typeComment), column('value').bigint.notNull, column('timestamp').timestampTimezone(0).default('CURRENT_TIMESTAMP').notNull)
21
+ .withForeignKey('metaId', {
22
+ tableName: INSIGHTS_METADATA_TABLE_NAME,
23
+ columnName: 'metaId',
24
+ onDelete: 'CASCADE',
25
+ });
26
+ await copyTable(INSIGHTS_RAW_TABLE_NAME, INSIGHTS_RAW_TEMP_TABLE_NAME);
27
+ await dropTable(INSIGHTS_RAW_TABLE_NAME);
28
+ await queryRunner.query(`ALTER TABLE ${tempInsightsRawTable} RENAME TO ${insightsRawTable};`);
29
+ await createTable(INSIGHTS_BY_PERIOD_TEMP_TABLE_NAME)
30
+ .withColumns(column('id').int.primary.autoGenerate2, column('metaId').int.notNull, column('type').int.notNull.comment(typeComment), column('value').bigint.notNull, column('periodUnit').int.notNull.comment('0: hour, 1: day, 2: week'), column('periodStart').default('CURRENT_TIMESTAMP').timestampTimezone(0))
31
+ .withForeignKey('metaId', {
32
+ tableName: INSIGHTS_METADATA_TABLE_NAME,
33
+ columnName: 'metaId',
34
+ onDelete: 'CASCADE',
35
+ })
36
+ .withIndexOn(['periodStart', 'type', 'periodUnit', 'metaId'], true);
37
+ await copyTable(INSIGHTS_BY_PERIOD_TABLE_NAME, INSIGHTS_BY_PERIOD_TEMP_TABLE_NAME);
38
+ await dropTable(INSIGHTS_BY_PERIOD_TABLE_NAME);
39
+ await queryRunner.query(`ALTER TABLE ${tempInsightsByPeriodTable} RENAME TO ${insightsByPeriodTable};`);
40
+ }
41
+ else if (isMysql) {
42
+ await queryRunner.query(`ALTER TABLE ${insightsRawTable} MODIFY COLUMN ${valueColumnName} BIGINT NOT NULL;`);
43
+ await queryRunner.query(`ALTER TABLE ${insightsByPeriodTable} MODIFY COLUMN ${valueColumnName} BIGINT NOT NULL;`);
44
+ }
45
+ else if (isPostgres) {
46
+ await queryRunner.query(`ALTER TABLE ${insightsRawTable} ALTER COLUMN ${valueColumnName} TYPE BIGINT;`);
47
+ await queryRunner.query(`ALTER TABLE ${insightsByPeriodTable} ALTER COLUMN ${valueColumnName} TYPE BIGINT;`);
48
+ }
49
+ }
50
+ }
51
+ exports.ChangeValueTypesForInsights1759399811000 = ChangeValueTypesForInsights1759399811000;
52
+ //# sourceMappingURL=1759399811000-ChangeValueTypesForInsights.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"1759399811000-ChangeValueTypesForInsights.js","sourceRoot":"","sources":["../../../src/migrations/common/1759399811000-ChangeValueTypesForInsights.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ import type { MigrationContext, ReversibleMigration } from '../migration-types';
2
+ export declare class CreateChatHubTables1760019379982 implements ReversibleMigration {
3
+ up({ schemaBuilder: { createTable, column } }: MigrationContext): Promise<void>;
4
+ down({ schemaBuilder: { dropTable } }: MigrationContext): Promise<void>;
5
+ }
@@ -0,0 +1,90 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CreateChatHubTables1760019379982 = void 0;
4
+ const table = {
5
+ sessions: 'chat_hub_sessions',
6
+ messages: 'chat_hub_messages',
7
+ user: 'user',
8
+ credentials: 'credentials_entity',
9
+ workflows: 'workflow_entity',
10
+ executions: 'execution_entity',
11
+ };
12
+ class CreateChatHubTables1760019379982 {
13
+ async up({ schemaBuilder: { createTable, column } }) {
14
+ await createTable(table.sessions)
15
+ .withColumns(column('id').uuid.primary, column('title').varchar(256).notNull, column('ownerId').uuid.notNull, column('lastMessageAt').timestampTimezone(), column('credentialId').varchar(36), column('provider')
16
+ .varchar(16)
17
+ .comment('ChatHubProvider enum: "openai", "anthropic", "google", "n8n"'), column('model')
18
+ .varchar(64)
19
+ .comment('Model name used at the respective Model node, ie. "gpt-4"'), column('workflowId').varchar(36))
20
+ .withForeignKey('ownerId', {
21
+ tableName: table.user,
22
+ columnName: 'id',
23
+ onDelete: 'CASCADE',
24
+ })
25
+ .withForeignKey('credentialId', {
26
+ tableName: table.credentials,
27
+ columnName: 'id',
28
+ onDelete: 'SET NULL',
29
+ })
30
+ .withForeignKey('workflowId', {
31
+ tableName: table.workflows,
32
+ columnName: 'id',
33
+ onDelete: 'SET NULL',
34
+ }).withTimestamps;
35
+ await createTable(table.messages)
36
+ .withColumns(column('id').uuid.primary.notNull, column('sessionId').uuid.notNull, column('previousMessageId').uuid, column('revisionOfMessageId').uuid, column('turnId').uuid, column('retryOfMessageId').uuid, column('type')
37
+ .varchar(16)
38
+ .notNull.comment('ChatHubMessageType enum: "human", "ai", "system", "tool", "generic"'), column('name').varchar(128).notNull, column('state')
39
+ .varchar(16)
40
+ .default("'active'")
41
+ .notNull.comment('ChatHubMessageState enum: "active", "superseded", "hidden", "deleted"'), column('content').text.notNull, column('provider')
42
+ .varchar(16)
43
+ .comment('ChatHubProvider enum: "openai", "anthropic", "google", "n8n"'), column('model')
44
+ .varchar(64)
45
+ .comment('Model name used at the respective Model node, ie. "gpt-4"'), column('workflowId').varchar(36), column('runIndex')
46
+ .int.notNull.default(0)
47
+ .comment('The nth attempt this message has been generated/retried this turn'), column('executionId').int)
48
+ .withForeignKey('sessionId', {
49
+ tableName: table.sessions,
50
+ columnName: 'id',
51
+ onDelete: 'CASCADE',
52
+ })
53
+ .withForeignKey('previousMessageId', {
54
+ tableName: table.messages,
55
+ columnName: 'id',
56
+ onDelete: 'CASCADE',
57
+ })
58
+ .withForeignKey('workflowId', {
59
+ tableName: table.workflows,
60
+ columnName: 'id',
61
+ onDelete: 'SET NULL',
62
+ })
63
+ .withForeignKey('turnId', {
64
+ tableName: table.messages,
65
+ columnName: 'id',
66
+ onDelete: 'CASCADE',
67
+ })
68
+ .withForeignKey('retryOfMessageId', {
69
+ tableName: table.messages,
70
+ columnName: 'id',
71
+ onDelete: 'CASCADE',
72
+ })
73
+ .withForeignKey('revisionOfMessageId', {
74
+ tableName: table.messages,
75
+ columnName: 'id',
76
+ onDelete: 'CASCADE',
77
+ })
78
+ .withForeignKey('executionId', {
79
+ tableName: table.executions,
80
+ columnName: 'id',
81
+ onDelete: 'SET NULL',
82
+ }).withTimestamps;
83
+ }
84
+ async down({ schemaBuilder: { dropTable } }) {
85
+ await dropTable(table.messages);
86
+ await dropTable(table.sessions);
87
+ }
88
+ }
89
+ exports.CreateChatHubTables1760019379982 = CreateChatHubTables1760019379982;
90
+ //# sourceMappingURL=1760019379982-CreateChatHubTables.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"1760019379982-CreateChatHubTables.js","sourceRoot":"","sources":["../../../src/migrations/common/1760019379982-CreateChatHubTables.ts"],"names":[],"mappings":";;;AAEA,MAAM,KAAK,GAAG;IACb,QAAQ,EAAE,mBAAmB;IAC7B,QAAQ,EAAE,mBAAmB;IAC7B,IAAI,EAAE,MAAM;IACZ,WAAW,EAAE,oBAAoB;IACjC,SAAS,EAAE,iBAAiB;IAC5B,UAAU,EAAE,kBAAkB;CACrB,CAAC;AAEX,MAAa,gCAAgC;IAC5C,KAAK,CAAC,EAAE,CAAC,EAAE,aAAa,EAAE,EAAE,WAAW,EAAE,MAAM,EAAE,EAAoB;QACpE,MAAM,WAAW,CAAC,KAAK,CAAC,QAAQ,CAAC;aAC/B,WAAW,CACX,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,OAAO,EACzB,MAAM,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,OAAO,EACpC,MAAM,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,OAAO,EAC9B,MAAM,CAAC,eAAe,CAAC,CAAC,iBAAiB,EAAE,EAE3C,MAAM,CAAC,cAAc,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,EAClC,MAAM,CAAC,UAAU,CAAC;aAChB,OAAO,CAAC,EAAE,CAAC;aACX,OAAO,CAAC,8DAA8D,CAAC,EACzE,MAAM,CAAC,OAAO,CAAC;aACb,OAAO,CAAC,EAAE,CAAC;aACX,OAAO,CAAC,2DAA2D,CAAC,EACtE,MAAM,CAAC,YAAY,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAChC;aACA,cAAc,CAAC,SAAS,EAAE;YAC1B,SAAS,EAAE,KAAK,CAAC,IAAI;YACrB,UAAU,EAAE,IAAI;YAChB,QAAQ,EAAE,SAAS;SACnB,CAAC;aACD,cAAc,CAAC,cAAc,EAAE;YAC/B,SAAS,EAAE,KAAK,CAAC,WAAW;YAC5B,UAAU,EAAE,IAAI;YAChB,QAAQ,EAAE,UAAU;SACpB,CAAC;aACD,cAAc,CAAC,YAAY,EAAE;YAC7B,SAAS,EAAE,KAAK,CAAC,SAAS;YAC1B,UAAU,EAAE,IAAI;YAChB,QAAQ,EAAE,UAAU;SACpB,CAAC,CAAC,cAAc,CAAC;QAEnB,MAAM,WAAW,CAAC,KAAK,CAAC,QAAQ,CAAC;aAC/B,WAAW,CACX,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,EACjC,MAAM,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,OAAO,EAChC,MAAM,CAAC,mBAAmB,CAAC,CAAC,IAAI,EAChC,MAAM,CAAC,qBAAqB,CAAC,CAAC,IAAI,EAClC,MAAM,CAAC,QAAQ,CAAC,CAAC,IAAI,EACrB,MAAM,CAAC,kBAAkB,CAAC,CAAC,IAAI,EAC/B,MAAM,CAAC,MAAM,CAAC;aACZ,OAAO,CAAC,EAAE,CAAC;aACX,OAAO,CAAC,OAAO,CAAC,qEAAqE,CAAC,EACxF,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,OAAO,EACnC,MAAM,CAAC,OAAO,CAAC;aACb,OAAO,CAAC,EAAE,CAAC;aACX,OAAO,CAAC,UAAU,CAAC;aACnB,OAAO,CAAC,OAAO,CAAC,uEAAuE,CAAC,EAC1F,MAAM,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,OAAO,EAC9B,MAAM,CAAC,UAAU,CAAC;aAChB,OAAO,CAAC,EAAE,CAAC;aACX,OAAO,CAAC,8DAA8D,CAAC,EACzE,MAAM,CAAC,OAAO,CAAC;aACb,OAAO,CAAC,EAAE,CAAC;aACX,OAAO,CAAC,2DAA2D,CAAC,EACtE,MAAM,CAAC,YAAY,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,EAChC,MAAM,CAAC,UAAU,CAAC;aAChB,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC;aACtB,OAAO,CAAC,mEAAmE,CAAC,EAC9E,MAAM,CAAC,aAAa,CAAC,CAAC,GAAG,CACzB;aACA,cAAc,CAAC,WAAW,EAAE;YAC5B,SAAS,EAAE,KAAK,CAAC,QAAQ;YACzB,UAAU,EAAE,IAAI;YAChB,QAAQ,EAAE,SAAS;SACnB,CAAC;aACD,cAAc,CAAC,mBAAmB,EAAE;YACpC,SAAS,EAAE,KAAK,CAAC,QAAQ;YACzB,UAAU,EAAE,IAAI;YAChB,QAAQ,EAAE,SAAS;SACnB,CAAC;aACD,cAAc,CAAC,YAAY,EAAE;YAC7B,SAAS,EAAE,KAAK,CAAC,SAAS;YAC1B,UAAU,EAAE,IAAI;YAChB,QAAQ,EAAE,UAAU;SACpB,CAAC;aACD,cAAc,CAAC,QAAQ,EAAE;YACzB,SAAS,EAAE,KAAK,CAAC,QAAQ;YACzB,UAAU,EAAE,IAAI;YAChB,QAAQ,EAAE,SAAS;SACnB,CAAC;aACD,cAAc,CAAC,kBAAkB,EAAE;YACnC,SAAS,EAAE,KAAK,CAAC,QAAQ;YACzB,UAAU,EAAE,IAAI;YAChB,QAAQ,EAAE,SAAS;SACnB,CAAC;aACD,cAAc,CAAC,qBAAqB,EAAE;YACtC,SAAS,EAAE,KAAK,CAAC,QAAQ;YACzB,UAAU,EAAE,IAAI;YAChB,QAAQ,EAAE,SAAS;SACnB,CAAC;aACD,cAAc,CAAC,aAAa,EAAE;YAC9B,SAAS,EAAE,KAAK,CAAC,UAAU;YAC3B,UAAU,EAAE,IAAI;YAChB,QAAQ,EAAE,UAAU;SACpB,CAAC,CAAC,cAAc,CAAC;IACpB,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,EAAE,aAAa,EAAE,EAAE,SAAS,EAAE,EAAoB;QAC5D,MAAM,SAAS,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QAChC,MAAM,SAAS,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;IACjC,CAAC;CACD;AAxGD,4EAwGC"}
@@ -0,0 +1,5 @@
1
+ import type { MigrationContext, ReversibleMigration } from '../migration-types';
2
+ export declare class UniqueRoleNames1760020838000 implements ReversibleMigration {
3
+ up({ isMysql, escape, runQuery }: MigrationContext): Promise<void>;
4
+ down({ isMysql, escape, runQuery }: MigrationContext): Promise<void>;
5
+ }
@@ -0,0 +1,47 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.UniqueRoleNames1760020838000 = void 0;
4
+ class UniqueRoleNames1760020838000 {
5
+ async up({ isMysql, escape, runQuery }) {
6
+ const tableName = escape.tableName('role');
7
+ const displayNameColumn = escape.columnName('displayName');
8
+ const slugColumn = escape.columnName('slug');
9
+ const createdAtColumn = escape.columnName('createdAt');
10
+ const allRoles = await runQuery(`SELECT ${slugColumn}, ${displayNameColumn} FROM ${tableName} ORDER BY ${displayNameColumn}, ${createdAtColumn} ASC`);
11
+ const groupedByName = new Map();
12
+ for (const role of allRoles) {
13
+ const existing = groupedByName.get(role.displayName) || [];
14
+ existing.push(role);
15
+ groupedByName.set(role.displayName, existing);
16
+ }
17
+ for (const [_, roles] of groupedByName.entries()) {
18
+ if (roles.length > 1) {
19
+ const duplicates = roles.slice(1);
20
+ let index = 2;
21
+ for (const role of duplicates.values()) {
22
+ let newDisplayName = `${role.displayName} ${index}`;
23
+ while (allRoles.some((r) => r.displayName === newDisplayName)) {
24
+ index++;
25
+ newDisplayName = `${role.displayName} ${index}`;
26
+ }
27
+ await runQuery(`UPDATE ${tableName} SET ${displayNameColumn} = :displayName WHERE ${slugColumn} = :slug`, {
28
+ displayName: newDisplayName,
29
+ slug: role.slug,
30
+ });
31
+ index++;
32
+ }
33
+ }
34
+ }
35
+ const indexName = escape.indexName('UniqueRoleDisplayName');
36
+ await runQuery(isMysql
37
+ ? `CREATE UNIQUE INDEX ${indexName} ON ${tableName} (${displayNameColumn}(100))`
38
+ : `CREATE UNIQUE INDEX ${indexName} ON ${tableName} (${displayNameColumn})`);
39
+ }
40
+ async down({ isMysql, escape, runQuery }) {
41
+ const tableName = escape.tableName('role');
42
+ const indexName = escape.indexName('UniqueRoleDisplayName');
43
+ await runQuery(isMysql ? `ALTER TABLE ${tableName} DROP INDEX ${indexName}` : `DROP INDEX ${indexName}`);
44
+ }
45
+ }
46
+ exports.UniqueRoleNames1760020838000 = UniqueRoleNames1760020838000;
47
+ //# sourceMappingURL=1760020838000-UniqueRoleNames.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"1760020838000-UniqueRoleNames.js","sourceRoot":"","sources":["../../../src/migrations/common/1760020838000-UniqueRoleNames.ts"],"names":[],"mappings":";;;AAGA,MAAa,4BAA4B;IACxC,KAAK,CAAC,EAAE,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAoB;QACvD,MAAM,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;QAC3C,MAAM,iBAAiB,GAAG,MAAM,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC;QAC3D,MAAM,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;QAC7C,MAAM,eAAe,GAAG,MAAM,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;QACvD,MAAM,QAAQ,GAA8C,MAAM,QAAQ,CACzE,UAAU,UAAU,KAAK,iBAAiB,SAAS,SAAS,aAAa,iBAAiB,KAAK,eAAe,MAAM,CACpH,CAAC;QAGF,MAAM,aAAa,GAAG,IAAI,GAAG,EAAqD,CAAC;QAEnF,KAAK,MAAM,IAAI,IAAI,QAAQ,EAAE,CAAC;YAC7B,MAAM,QAAQ,GAAG,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC;YAC3D,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACpB,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;QAC/C,CAAC;QAED,KAAK,MAAM,CAAC,CAAC,EAAE,KAAK,CAAC,IAAI,aAAa,CAAC,OAAO,EAAE,EAAE,CAAC;YAClD,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACtB,MAAM,UAAU,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;gBAClC,IAAI,KAAK,GAAG,CAAC,CAAC;gBACd,KAAK,MAAM,IAAI,IAAI,UAAU,CAAC,MAAM,EAAE,EAAE,CAAC;oBACxC,IAAI,cAAc,GAAG,GAAG,IAAI,CAAC,WAAW,IAAI,KAAK,EAAE,CAAC;oBACpD,OAAO,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,KAAK,cAAc,CAAC,EAAE,CAAC;wBAC/D,KAAK,EAAE,CAAC;wBACR,cAAc,GAAG,GAAG,IAAI,CAAC,WAAW,IAAI,KAAK,EAAE,CAAC;oBACjD,CAAC;oBACD,MAAM,QAAQ,CACb,UAAU,SAAS,QAAQ,iBAAiB,yBAAyB,UAAU,UAAU,EACzF;wBACC,WAAW,EAAE,cAAc;wBAC3B,IAAI,EAAE,IAAI,CAAC,IAAI;qBACf,CACD,CAAC;oBACF,KAAK,EAAE,CAAC;gBACT,CAAC;YACF,CAAC;QACF,CAAC;QAED,MAAM,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC,uBAAuB,CAAC,CAAC;QAK5D,MAAM,QAAQ,CACb,OAAO;YACN,CAAC,CAAC,uBAAuB,SAAS,OAAO,SAAS,KAAK,iBAAiB,QAAQ;YAChF,CAAC,CAAC,uBAAuB,SAAS,OAAO,SAAS,KAAK,iBAAiB,GAAG,CAC5E,CAAC;IACH,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAoB;QACzD,MAAM,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;QAC3C,MAAM,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC,uBAAuB,CAAC,CAAC;QAC5D,MAAM,QAAQ,CACb,OAAO,CAAC,CAAC,CAAC,eAAe,SAAS,eAAe,SAAS,EAAE,CAAC,CAAC,CAAC,cAAc,SAAS,EAAE,CACxF,CAAC;IACH,CAAC;CACD;AA5DD,oEA4DC"}
@@ -0,0 +1,5 @@
1
+ import type { MigrationContext, ReversibleMigration } from '../migration-types';
2
+ export declare class CreateWorkflowDependencyTable1760314000000 implements ReversibleMigration {
3
+ up({ schemaBuilder: { createTable, column } }: MigrationContext): Promise<void>;
4
+ down({ schemaBuilder: { dropTable } }: MigrationContext): Promise<void>;
5
+ }
@@ -0,0 +1,28 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CreateWorkflowDependencyTable1760314000000 = void 0;
4
+ class CreateWorkflowDependencyTable1760314000000 {
5
+ async up({ schemaBuilder: { createTable, column } }) {
6
+ await createTable('workflow_dependency')
7
+ .withColumns(column('id').int.primary.autoGenerate2, column('workflowId').varchar(36).notNull, column('workflowVersionId').int.notNull.comment('Version of the workflow'), column('dependencyType')
8
+ .varchar(32)
9
+ .notNull.comment('Type of dependency: "credential", "nodeType", "webhookPath", or "workflowCall"'), column('dependencyKey').varchar(255).notNull.comment('ID or name of the dependency'), column('dependencyInfo')
10
+ .varchar(255)
11
+ .comment('Additional info about the dependency, interpreted based on type'), column('indexVersionId')
12
+ .smallint.notNull.default(1)
13
+ .comment('Version of the index structure'))
14
+ .withForeignKey('workflowId', {
15
+ tableName: 'workflow_entity',
16
+ columnName: 'id',
17
+ onDelete: 'CASCADE',
18
+ })
19
+ .withIndexOn(['workflowId'])
20
+ .withIndexOn(['dependencyType'])
21
+ .withIndexOn(['dependencyKey']).withCreatedAt;
22
+ }
23
+ async down({ schemaBuilder: { dropTable } }) {
24
+ await dropTable('workflow_dependency');
25
+ }
26
+ }
27
+ exports.CreateWorkflowDependencyTable1760314000000 = CreateWorkflowDependencyTable1760314000000;
28
+ //# sourceMappingURL=1760314000000-CreateWorkflowDependencyTable.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"1760314000000-CreateWorkflowDependencyTable.js","sourceRoot":"","sources":["../../../src/migrations/common/1760314000000-CreateWorkflowDependencyTable.ts"],"names":[],"mappings":";;;AAEA,MAAa,0CAA0C;IACtD,KAAK,CAAC,EAAE,CAAC,EAAE,aAAa,EAAE,EAAE,WAAW,EAAE,MAAM,EAAE,EAAoB;QACpE,MAAM,WAAW,CAAC,qBAAqB,CAAC;aACtC,WAAW,CACX,MAAM,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,aAAa,EACtC,MAAM,CAAC,YAAY,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,OAAO,EACxC,MAAM,CAAC,mBAAmB,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,yBAAyB,CAAC,EAC1E,MAAM,CAAC,gBAAgB,CAAC;aACtB,OAAO,CAAC,EAAE,CAAC;aACX,OAAO,CAAC,OAAO,CACf,gFAAgF,CAChF,EACF,MAAM,CAAC,eAAe,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,8BAA8B,CAAC,EACpF,MAAM,CAAC,gBAAgB,CAAC;aACtB,OAAO,CAAC,GAAG,CAAC;aACZ,OAAO,CAAC,iEAAiE,CAAC,EAC5E,MAAM,CAAC,gBAAgB,CAAC;aACtB,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC;aAC3B,OAAO,CAAC,gCAAgC,CAAC,CAC3C;aACA,cAAc,CAAC,YAAY,EAAE;YAC7B,SAAS,EAAE,iBAAiB;YAC5B,UAAU,EAAE,IAAI;YAChB,QAAQ,EAAE,SAAS;SACnB,CAAC;aACD,WAAW,CAAC,CAAC,YAAY,CAAC,CAAC;aAC3B,WAAW,CAAC,CAAC,gBAAgB,CAAC,CAAC;aAC/B,WAAW,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,aAAa,CAAC;IAChD,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,EAAE,aAAa,EAAE,EAAE,SAAS,EAAE,EAAoB;QAC5D,MAAM,SAAS,CAAC,qBAAqB,CAAC,CAAC;IACxC,CAAC;CACD;AAjCD,gGAiCC"}
@@ -0,0 +1,5 @@
1
+ import type { MigrationContext, ReversibleMigration } from '../migration-types';
2
+ export declare class DropUnusedChatHubColumns1760965142113 implements ReversibleMigration {
3
+ up({ schemaBuilder: { dropColumns, addColumns, column } }: MigrationContext): Promise<void>;
4
+ down({ schemaBuilder: { dropColumns, addColumns, column, addForeignKey }, }: MigrationContext): Promise<void>;
5
+ }