@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.
- package/dist/build.tsbuildinfo +1 -1
- package/dist/entities/abstract-entity.d.ts +17 -0
- package/dist/entities/abstract-entity.js +14 -7
- package/dist/entities/abstract-entity.js.map +1 -1
- package/dist/entities/execution-data.d.ts +4 -1
- package/dist/entities/execution-data.js.map +1 -1
- package/dist/entities/index.d.ts +3 -1
- package/dist/entities/index.js +4 -1
- package/dist/entities/index.js.map +1 -1
- package/dist/entities/types-db.d.ts +8 -1
- package/dist/entities/types-db.js.map +1 -1
- package/dist/entities/user.d.ts +1 -1
- package/dist/entities/workflow-dependency-entity.d.ts +14 -0
- package/dist/entities/workflow-dependency-entity.js +59 -0
- package/dist/entities/workflow-dependency-entity.js.map +1 -0
- package/dist/entities/workflow-entity.d.ts +2 -9
- package/dist/migrations/common/1759399811000-ChangeValueTypesForInsights.d.ts +4 -0
- package/dist/migrations/common/1759399811000-ChangeValueTypesForInsights.js +52 -0
- package/dist/migrations/common/1759399811000-ChangeValueTypesForInsights.js.map +1 -0
- package/dist/migrations/common/1760019379982-CreateChatHubTables.d.ts +5 -0
- package/dist/migrations/common/1760019379982-CreateChatHubTables.js +90 -0
- package/dist/migrations/common/1760019379982-CreateChatHubTables.js.map +1 -0
- package/dist/migrations/common/1760020838000-UniqueRoleNames.d.ts +5 -0
- package/dist/migrations/common/1760020838000-UniqueRoleNames.js +47 -0
- package/dist/migrations/common/1760020838000-UniqueRoleNames.js.map +1 -0
- package/dist/migrations/common/1760314000000-CreateWorkflowDependencyTable.d.ts +5 -0
- package/dist/migrations/common/1760314000000-CreateWorkflowDependencyTable.js +28 -0
- package/dist/migrations/common/1760314000000-CreateWorkflowDependencyTable.js.map +1 -0
- package/dist/migrations/common/1760965142113-DropUnusedChatHubColumns.d.ts +5 -0
- package/dist/migrations/common/1760965142113-DropUnusedChatHubColumns.js +33 -0
- package/dist/migrations/common/1760965142113-DropUnusedChatHubColumns.js.map +1 -0
- package/dist/migrations/dsl/column.d.ts +2 -0
- package/dist/migrations/dsl/column.js +11 -0
- package/dist/migrations/dsl/column.js.map +1 -1
- package/dist/migrations/dsl/table.d.ts +1 -0
- package/dist/migrations/dsl/table.js +4 -0
- package/dist/migrations/dsl/table.js.map +1 -1
- package/dist/migrations/migration-helpers.js +5 -0
- package/dist/migrations/migration-helpers.js.map +1 -1
- package/dist/migrations/mysqldb/1760965142113-DropUnusedChatHubColumns.d.ts +5 -0
- package/dist/migrations/mysqldb/1760965142113-DropUnusedChatHubColumns.js +43 -0
- package/dist/migrations/mysqldb/1760965142113-DropUnusedChatHubColumns.js.map +1 -0
- package/dist/migrations/mysqldb/index.js +10 -0
- package/dist/migrations/mysqldb/index.js.map +1 -1
- package/dist/migrations/postgresdb/index.js +10 -0
- package/dist/migrations/postgresdb/index.js.map +1 -1
- package/dist/migrations/sqlite/index.js +10 -0
- package/dist/migrations/sqlite/index.js.map +1 -1
- package/dist/repositories/execution-data.repository.d.ts +3 -1
- package/dist/repositories/execution.repository.js.map +1 -1
- package/dist/repositories/workflow.repository.d.ts +2 -2
- package/dist/services/auth.roles.service.js +23 -0
- package/dist/services/auth.roles.service.js.map +1 -1
- package/dist/utils/test-utils/mock-entity-manager.d.ts +1 -2
- 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
|
|
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.
|
|
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,
|
|
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;
|
|
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"}
|
package/dist/entities/index.d.ts
CHANGED
|
@@ -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;
|
package/dist/entities/index.js
CHANGED
|
@@ -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":";;;AAAA,yEAAiE;
|
|
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":";;;
|
|
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"}
|
package/dist/entities/user.d.ts
CHANGED
|
@@ -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" | "
|
|
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 {
|
|
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":"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"}
|
|
@@ -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
|
+
}
|