@n8n/db 0.32.1 → 0.33.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/connection/db-connection.d.ts +3 -2
- package/dist/connection/db-connection.js +15 -2
- package/dist/connection/db-connection.js.map +1 -1
- package/dist/entities/credentials-entity.d.ts +1 -0
- package/dist/entities/credentials-entity.js +4 -0
- package/dist/entities/credentials-entity.js.map +1 -1
- package/dist/entities/types-db.d.ts +5 -1
- package/dist/entities/types-db.js.map +1 -1
- package/dist/entities/workflow-entity.d.ts +3 -0
- package/dist/entities/workflow-entity.js +9 -0
- package/dist/entities/workflow-entity.js.map +1 -1
- package/dist/entities/workflow-history.d.ts +2 -0
- package/dist/entities/workflow-history.js +8 -0
- package/dist/entities/workflow-history.js.map +1 -1
- package/dist/migrations/common/1761773155024-AddAttachmentsToChatHubMessages.d.ts +5 -0
- package/dist/migrations/common/1761773155024-AddAttachmentsToChatHubMessages.js +18 -0
- package/dist/migrations/common/1761773155024-AddAttachmentsToChatHubMessages.js.map +1 -0
- package/dist/migrations/common/1762771954619-IsGlobalGlobalColumnToCredentialsTable.d.ts +5 -0
- package/dist/migrations/common/1762771954619-IsGlobalGlobalColumnToCredentialsTable.js +18 -0
- package/dist/migrations/common/1762771954619-IsGlobalGlobalColumnToCredentialsTable.js.map +1 -0
- package/dist/migrations/common/1763047800000-AddActiveVersionIdColumn.d.ts +5 -0
- package/dist/migrations/common/1763047800000-AddActiveVersionIdColumn.js +27 -0
- package/dist/migrations/common/1763047800000-AddActiveVersionIdColumn.js.map +1 -0
- package/dist/migrations/common/1763572724000-ChangeOAuthStateColumnToUnboundedVarchar.d.ts +4 -0
- package/dist/migrations/common/1763572724000-ChangeOAuthStateColumnToUnboundedVarchar.js +40 -0
- package/dist/migrations/common/1763572724000-ChangeOAuthStateColumnToUnboundedVarchar.js.map +1 -0
- package/dist/migrations/common/1763716655000-CreateBinaryDataTable.d.ts +5 -0
- package/dist/migrations/common/1763716655000-CreateBinaryDataTable.js +19 -0
- package/dist/migrations/common/1763716655000-CreateBinaryDataTable.js.map +1 -0
- package/dist/migrations/dsl/column.d.ts +1 -0
- package/dist/migrations/dsl/column.js +15 -0
- package/dist/migrations/dsl/column.js.map +1 -1
- package/dist/migrations/dsl/table.d.ts +4 -0
- package/dist/migrations/dsl/table.js +19 -1
- package/dist/migrations/dsl/table.js.map +1 -1
- package/dist/migrations/mysqldb/index.js +12 -2
- 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/credentials.repository.d.ts +1 -0
- package/dist/repositories/credentials.repository.js +14 -1
- package/dist/repositories/credentials.repository.js.map +1 -1
- package/dist/repositories/execution.repository.d.ts +1 -0
- package/dist/repositories/execution.repository.js +8 -3
- package/dist/repositories/execution.repository.js.map +1 -1
- package/dist/repositories/license-metrics.repository.js +1 -1
- package/dist/repositories/license-metrics.repository.js.map +1 -1
- package/dist/repositories/settings.repository.d.ts +1 -0
- package/dist/repositories/settings.repository.js +3 -0
- package/dist/repositories/settings.repository.js.map +1 -1
- package/dist/repositories/shared-workflow.repository.d.ts +1 -0
- package/dist/repositories/shared-workflow.repository.js +2 -1
- package/dist/repositories/shared-workflow.repository.js.map +1 -1
- package/dist/repositories/workflow-history.repository.d.ts +1 -1
- package/dist/repositories/workflow-history.repository.js +9 -1
- package/dist/repositories/workflow-history.repository.js.map +1 -1
- package/dist/repositories/workflow-statistics.repository.js +1 -1
- package/dist/repositories/workflow-statistics.repository.js.map +1 -1
- package/dist/repositories/workflow.repository.d.ts +4 -4
- package/dist/repositories/workflow.repository.js +37 -10
- package/dist/repositories/workflow.repository.js.map +1 -1
- package/package.json +12 -11
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Logger } from '@n8n/backend-common';
|
|
2
2
|
import { DatabaseConfig } from '@n8n/config';
|
|
3
|
-
import { ErrorReporter } from 'n8n-core';
|
|
3
|
+
import { BinaryDataConfig, ErrorReporter } from 'n8n-core';
|
|
4
4
|
import { DbConnectionOptions } from './db-connection-options';
|
|
5
5
|
type ConnectionState = {
|
|
6
6
|
connected: boolean;
|
|
@@ -11,10 +11,11 @@ export declare class DbConnection {
|
|
|
11
11
|
private readonly connectionOptions;
|
|
12
12
|
private readonly databaseConfig;
|
|
13
13
|
private readonly logger;
|
|
14
|
+
private readonly binaryDataConfig;
|
|
14
15
|
private dataSource;
|
|
15
16
|
private pingTimer;
|
|
16
17
|
readonly connectionState: ConnectionState;
|
|
17
|
-
constructor(errorReporter: ErrorReporter, connectionOptions: DbConnectionOptions, databaseConfig: DatabaseConfig, logger: Logger);
|
|
18
|
+
constructor(errorReporter: ErrorReporter, connectionOptions: DbConnectionOptions, databaseConfig: DatabaseConfig, logger: Logger, binaryDataConfig: BinaryDataConfig);
|
|
18
19
|
get options(): import("@n8n/typeorm").DataSourceOptions;
|
|
19
20
|
init(): Promise<void>;
|
|
20
21
|
migrate(): Promise<void>;
|
|
@@ -22,11 +22,12 @@ const promises_1 = require("timers/promises");
|
|
|
22
22
|
const db_connection_options_1 = require("./db-connection-options");
|
|
23
23
|
const migration_helpers_1 = require("../migrations/migration-helpers");
|
|
24
24
|
let DbConnection = class DbConnection {
|
|
25
|
-
constructor(errorReporter, connectionOptions, databaseConfig, logger) {
|
|
25
|
+
constructor(errorReporter, connectionOptions, databaseConfig, logger, binaryDataConfig) {
|
|
26
26
|
this.errorReporter = errorReporter;
|
|
27
27
|
this.connectionOptions = connectionOptions;
|
|
28
28
|
this.databaseConfig = databaseConfig;
|
|
29
29
|
this.logger = logger;
|
|
30
|
+
this.binaryDataConfig = binaryDataConfig;
|
|
30
31
|
this.connectionState = {
|
|
31
32
|
connected: false,
|
|
32
33
|
migrated: false,
|
|
@@ -55,6 +56,17 @@ let DbConnection = class DbConnection {
|
|
|
55
56
|
}
|
|
56
57
|
throw error;
|
|
57
58
|
}
|
|
59
|
+
if ((options.type === 'mysql' || options.type === 'mariadb') &&
|
|
60
|
+
this.binaryDataConfig.availableModes.includes('database')) {
|
|
61
|
+
const maxAllowedPacket = this.binaryDataConfig.dbMaxFileSize * 1024 * 1024;
|
|
62
|
+
try {
|
|
63
|
+
await this.dataSource.query(`SET GLOBAL max_allowed_packet = ${maxAllowedPacket}`);
|
|
64
|
+
}
|
|
65
|
+
catch {
|
|
66
|
+
this.logger.warn(`Failed to set \`max_allowed_packet\` to ${maxAllowedPacket} bytes on your MySQL server. ` +
|
|
67
|
+
`Please set \`max_allowed_packet\` to at least ${this.binaryDataConfig.dbMaxFileSize} MiB in your MySQL server configuration.`);
|
|
68
|
+
}
|
|
69
|
+
}
|
|
58
70
|
connectionState.connected = true;
|
|
59
71
|
if (!backend_common_1.inTest)
|
|
60
72
|
this.scheduleNextPing();
|
|
@@ -121,6 +133,7 @@ exports.DbConnection = DbConnection = __decorate([
|
|
|
121
133
|
__metadata("design:paramtypes", [n8n_core_1.ErrorReporter,
|
|
122
134
|
db_connection_options_1.DbConnectionOptions,
|
|
123
135
|
config_1.DatabaseConfig,
|
|
124
|
-
backend_common_1.Logger
|
|
136
|
+
backend_common_1.Logger,
|
|
137
|
+
n8n_core_1.BinaryDataConfig])
|
|
125
138
|
], DbConnection);
|
|
126
139
|
//# sourceMappingURL=db-connection.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"db-connection.js","sourceRoot":"","sources":["../../src/connection/db-connection.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,wDAAqD;AACrD,wCAA6C;AAC7C,8CAAsC;AACtC,gDAA2C;AAC3C,gCAA6C;AAC7C,0CAA0C;AAC1C,
|
|
1
|
+
{"version":3,"file":"db-connection.js","sourceRoot":"","sources":["../../src/connection/db-connection.ts"],"names":[],"mappings":"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"}
|
|
@@ -49,6 +49,10 @@ __decorate([
|
|
|
49
49
|
(0, typeorm_1.Column)({ default: false }),
|
|
50
50
|
__metadata("design:type", Boolean)
|
|
51
51
|
], CredentialsEntity.prototype, "isManaged", void 0);
|
|
52
|
+
__decorate([
|
|
53
|
+
(0, typeorm_1.Column)({ default: false }),
|
|
54
|
+
__metadata("design:type", Boolean)
|
|
55
|
+
], CredentialsEntity.prototype, "isGlobal", void 0);
|
|
52
56
|
exports.CredentialsEntity = CredentialsEntity = __decorate([
|
|
53
57
|
(0, typeorm_1.Entity)()
|
|
54
58
|
], CredentialsEntity);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"credentials-entity.js","sourceRoot":"","sources":["../../src/entities/credentials-entity.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,0CAAgE;AAChE,qDAA6D;AAE7D,uDAA8D;AAKvD,IAAM,iBAAiB,GAAvB,MAAM,iBAAkB,SAAQ,2CAAyB;
|
|
1
|
+
{"version":3,"file":"credentials-entity.js","sourceRoot":"","sources":["../../src/entities/credentials-entity.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,0CAAgE;AAChE,qDAA6D;AAE7D,uDAA8D;AAKvD,IAAM,iBAAiB,GAAvB,MAAM,iBAAkB,SAAQ,2CAAyB;IAoC/D,MAAM;QACL,MAAM,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,GAAG,IAAI,CAAC;QACjC,OAAO,IAAI,CAAC;IACb,CAAC;CACD,CAAA;AAxCY,8CAAiB;AAM7B;IALC,IAAA,gBAAM,EAAC,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC;IACvB,IAAA,0BAAQ,EAAC,EAAE,OAAO,EAAE,2CAA2C,EAAE,CAAC;IAClE,IAAA,wBAAM,EAAC,CAAC,EAAE,GAAG,EAAE;QACf,OAAO,EAAE,uEAAuE;KAChF,CAAC;;+CACW;AAIb;IAFC,IAAA,gBAAM,EAAC,MAAM,CAAC;IACd,IAAA,0BAAQ,GAAE;;+CACE;AAOb;IALC,IAAA,eAAK,GAAE;IACP,IAAA,0BAAQ,EAAC,EAAE,OAAO,EAAE,2CAA2C,EAAE,CAAC;IAClE,IAAA,gBAAM,EAAC;QACP,MAAM,EAAE,GAAG;KACX,CAAC;;+CACW;AAGb;IADC,IAAA,mBAAS,EAAC,mBAAmB,EAAE,aAAa,CAAC;;iDAClB;AAQ5B;IADC,IAAA,gBAAM,EAAC,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;;oDACR;AAMnB;IADC,IAAA,gBAAM,EAAC,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;;mDACT;4BAlCN,iBAAiB;IAD7B,IAAA,gBAAM,GAAE;GACI,iBAAiB,CAwC7B"}
|
|
@@ -11,6 +11,7 @@ import type { SharedWorkflow } from './shared-workflow';
|
|
|
11
11
|
import type { TagEntity } from './tag-entity';
|
|
12
12
|
import type { User } from './user';
|
|
13
13
|
import type { WorkflowEntity } from './workflow-entity';
|
|
14
|
+
import type { WorkflowHistory } from './workflow-history';
|
|
14
15
|
export type UsageCount = {
|
|
15
16
|
usageCount: number;
|
|
16
17
|
};
|
|
@@ -50,11 +51,13 @@ export interface IWorkflowDb extends IWorkflowBase {
|
|
|
50
51
|
triggerCount: number;
|
|
51
52
|
tags?: TagEntity[];
|
|
52
53
|
parentFolder?: Folder | null;
|
|
54
|
+
activeVersion?: WorkflowHistory | null;
|
|
53
55
|
}
|
|
54
56
|
export interface ICredentialsDb extends ICredentialsBase, ICredentialsEncrypted {
|
|
55
57
|
id: string;
|
|
56
58
|
name: string;
|
|
57
59
|
shared?: SharedCredentials[];
|
|
60
|
+
isGlobal?: boolean;
|
|
58
61
|
}
|
|
59
62
|
export interface IExecutionResponse extends IExecutionBase {
|
|
60
63
|
id: string;
|
|
@@ -171,7 +174,7 @@ export declare namespace ExecutionSummaries {
|
|
|
171
174
|
}
|
|
172
175
|
export declare namespace ListQueryDb {
|
|
173
176
|
namespace Workflow {
|
|
174
|
-
type OptionalBaseFields = 'name' | 'active' | 'versionId' | 'createdAt' | 'updatedAt' | 'tags' | 'description';
|
|
177
|
+
type OptionalBaseFields = 'name' | 'active' | 'versionId' | 'activeVersionId' | 'createdAt' | 'updatedAt' | 'tags' | 'description';
|
|
175
178
|
type BaseFields = Pick<WorkflowEntity, 'id'> & Partial<Pick<WorkflowEntity, OptionalBaseFields>>;
|
|
176
179
|
type SharedField = Partial<Pick<WorkflowEntity, 'shared'>>;
|
|
177
180
|
type SortingField = 'createdAt' | 'updatedAt' | 'name';
|
|
@@ -287,4 +290,5 @@ export interface ISimplifiedPinData {
|
|
|
287
290
|
pairedItem?: IPairedItemData | IPairedItemData[] | number;
|
|
288
291
|
}>;
|
|
289
292
|
}
|
|
293
|
+
export type WorkflowHistoryUpdate = Omit<Partial<WorkflowHistory>, 'versionId' | 'workflowId' | 'createdAt' | 'updatedAt'>;
|
|
290
294
|
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":";;;AAqSA,gDAEC;AArRD,6BAAwB;AAuQxB,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"}
|
|
@@ -6,6 +6,7 @@ import type { SharedWorkflow } from './shared-workflow';
|
|
|
6
6
|
import type { TagEntity } from './tag-entity';
|
|
7
7
|
import type { TestRun } from './test-run.ee';
|
|
8
8
|
import type { ISimplifiedPinData, IWorkflowDb } from './types-db';
|
|
9
|
+
import type { WorkflowHistory } from './workflow-history';
|
|
9
10
|
import type { WorkflowStatistics } from './workflow-statistics';
|
|
10
11
|
import type { WorkflowTagMapping } from './workflow-tag-mapping';
|
|
11
12
|
export declare class WorkflowEntity extends WithTimestampsAndStringId implements IWorkflowDb {
|
|
@@ -24,6 +25,8 @@ export declare class WorkflowEntity extends WithTimestampsAndStringId implements
|
|
|
24
25
|
statistics: WorkflowStatistics[];
|
|
25
26
|
pinData?: ISimplifiedPinData;
|
|
26
27
|
versionId: string;
|
|
28
|
+
activeVersionId: string | null;
|
|
29
|
+
activeVersion: WorkflowHistory | null;
|
|
27
30
|
versionCounter: number;
|
|
28
31
|
triggerCount: number;
|
|
29
32
|
parentFolder: Folder | null;
|
|
@@ -103,6 +103,15 @@ __decorate([
|
|
|
103
103
|
(0, typeorm_1.Column)({ length: 36 }),
|
|
104
104
|
__metadata("design:type", String)
|
|
105
105
|
], WorkflowEntity.prototype, "versionId", void 0);
|
|
106
|
+
__decorate([
|
|
107
|
+
(0, typeorm_1.Column)({ name: 'activeVersionId', length: 36, nullable: true }),
|
|
108
|
+
__metadata("design:type", Object)
|
|
109
|
+
], WorkflowEntity.prototype, "activeVersionId", void 0);
|
|
110
|
+
__decorate([
|
|
111
|
+
(0, typeorm_1.ManyToOne)('WorkflowHistory', { nullable: true }),
|
|
112
|
+
(0, typeorm_1.JoinColumn)({ name: 'activeVersionId', referencedColumnName: 'versionId' }),
|
|
113
|
+
__metadata("design:type", Object)
|
|
114
|
+
], WorkflowEntity.prototype, "activeVersion", void 0);
|
|
106
115
|
__decorate([
|
|
107
116
|
(0, typeorm_1.Column)({ default: 1 }),
|
|
108
117
|
__metadata("design:type", Number)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workflow-entity.js","sourceRoot":"","sources":["../../src/entities/workflow-entity.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,0CASsB;AACtB,qDAAyC;AAIzC,uDAAkF;
|
|
1
|
+
{"version":3,"file":"workflow-entity.js","sourceRoot":"","sources":["../../src/entities/workflow-entity.ts"],"names":[],"mappings":"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"}
|
|
@@ -36,6 +36,14 @@ __decorate([
|
|
|
36
36
|
(0, typeorm_1.Column)(),
|
|
37
37
|
__metadata("design:type", String)
|
|
38
38
|
], WorkflowHistory.prototype, "authors", void 0);
|
|
39
|
+
__decorate([
|
|
40
|
+
(0, typeorm_1.Column)({ nullable: true }),
|
|
41
|
+
__metadata("design:type", String)
|
|
42
|
+
], WorkflowHistory.prototype, "name", void 0);
|
|
43
|
+
__decorate([
|
|
44
|
+
(0, typeorm_1.Column)({ nullable: true }),
|
|
45
|
+
__metadata("design:type", String)
|
|
46
|
+
], WorkflowHistory.prototype, "description", void 0);
|
|
39
47
|
__decorate([
|
|
40
48
|
(0, typeorm_1.ManyToOne)('WorkflowEntity', {
|
|
41
49
|
onDelete: 'CASCADE',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workflow-history.js","sourceRoot":"","sources":["../../src/entities/workflow-history.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,0CAAwE;AAIxE,uDAA+D;AAC/D,uDAAmD;AAG5C,IAAM,eAAe,GAArB,MAAM,eAAgB,SAAQ,gCAAc;
|
|
1
|
+
{"version":3,"file":"workflow-history.js","sourceRoot":"","sources":["../../src/entities/workflow-history.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,0CAAwE;AAIxE,uDAA+D;AAC/D,uDAAmD;AAG5C,IAAM,eAAe,GAArB,MAAM,eAAgB,SAAQ,gCAAc;CA0BlD,CAAA;AA1BY,0CAAe;AAE3B;IADC,IAAA,uBAAa,GAAE;;kDACE;AAGlB;IADC,IAAA,gBAAM,GAAE;;mDACU;AAGnB;IADC,IAAA,4BAAU,GAAE;;8CACE;AAGf;IADC,IAAA,4BAAU,GAAE;;oDACa;AAG1B;IADC,IAAA,gBAAM,GAAE;;gDACO;AAGhB;IADC,IAAA,gBAAM,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;6CACd;AAGb;IADC,IAAA,gBAAM,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;oDACP;AAKpB;IAHC,IAAA,mBAAS,EAAC,gBAAgB,EAAE;QAC5B,QAAQ,EAAE,SAAS;KACnB,CAAC;8BACQ,gCAAc;iDAAC;0BAzBb,eAAe;IAD3B,IAAA,gBAAM,GAAE;GACI,eAAe,CA0B3B"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import type { MigrationContext, ReversibleMigration } from '../migration-types';
|
|
2
|
+
export declare class AddAttachmentsToChatHubMessages1761773155024 implements ReversibleMigration {
|
|
3
|
+
up({ schemaBuilder: { addColumns, column } }: MigrationContext): Promise<void>;
|
|
4
|
+
down({ schemaBuilder: { dropColumns } }: MigrationContext): Promise<void>;
|
|
5
|
+
}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.AddAttachmentsToChatHubMessages1761773155024 = void 0;
|
|
4
|
+
const table = {
|
|
5
|
+
messages: 'chat_hub_messages',
|
|
6
|
+
};
|
|
7
|
+
class AddAttachmentsToChatHubMessages1761773155024 {
|
|
8
|
+
async up({ schemaBuilder: { addColumns, column } }) {
|
|
9
|
+
await addColumns(table.messages, [
|
|
10
|
+
column('attachments').json.comment('File attachments for the message (if any), stored as JSON. Files are stored as base64-encoded data URLs.'),
|
|
11
|
+
]);
|
|
12
|
+
}
|
|
13
|
+
async down({ schemaBuilder: { dropColumns } }) {
|
|
14
|
+
await dropColumns(table.messages, ['attachments']);
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
exports.AddAttachmentsToChatHubMessages1761773155024 = AddAttachmentsToChatHubMessages1761773155024;
|
|
18
|
+
//# sourceMappingURL=1761773155024-AddAttachmentsToChatHubMessages.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"1761773155024-AddAttachmentsToChatHubMessages.js","sourceRoot":"","sources":["../../../src/migrations/common/1761773155024-AddAttachmentsToChatHubMessages.ts"],"names":[],"mappings":";;;AAEA,MAAM,KAAK,GAAG;IACb,QAAQ,EAAE,mBAAmB;CACpB,CAAC;AAEX,MAAa,4CAA4C;IACxD,KAAK,CAAC,EAAE,CAAC,EAAE,aAAa,EAAE,EAAE,UAAU,EAAE,MAAM,EAAE,EAAoB;QACnE,MAAM,UAAU,CAAC,KAAK,CAAC,QAAQ,EAAE;YAChC,MAAM,CAAC,aAAa,CAAC,CAAC,IAAI,CAAC,OAAO,CACjC,0GAA0G,CAC1G;SACD,CAAC,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,EAAE,aAAa,EAAE,EAAE,WAAW,EAAE,EAAoB;QAC9D,MAAM,WAAW,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC;IACpD,CAAC;CACD;AAZD,oGAYC"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import type { MigrationContext, ReversibleMigration } from '../migration-types';
|
|
2
|
+
export declare class AddIsGlobalColumnToCredentialsTable1762771954619 implements ReversibleMigration {
|
|
3
|
+
up({ escape, runQuery, isSqlite }: MigrationContext): Promise<void>;
|
|
4
|
+
down({ escape, runQuery }: MigrationContext): Promise<void>;
|
|
5
|
+
}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.AddIsGlobalColumnToCredentialsTable1762771954619 = void 0;
|
|
4
|
+
class AddIsGlobalColumnToCredentialsTable1762771954619 {
|
|
5
|
+
async up({ escape, runQuery, isSqlite }) {
|
|
6
|
+
const tableName = escape.tableName('credentials_entity');
|
|
7
|
+
const columnName = escape.columnName('isGlobal');
|
|
8
|
+
const defaultValue = isSqlite ? 0 : 'FALSE';
|
|
9
|
+
await runQuery(`ALTER TABLE ${tableName} ADD COLUMN ${columnName} BOOLEAN NOT NULL DEFAULT ${defaultValue}`);
|
|
10
|
+
}
|
|
11
|
+
async down({ escape, runQuery }) {
|
|
12
|
+
const tableName = escape.tableName('credentials_entity');
|
|
13
|
+
const columnName = escape.columnName('isGlobal');
|
|
14
|
+
await runQuery(`ALTER TABLE ${tableName} DROP COLUMN ${columnName}`);
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
exports.AddIsGlobalColumnToCredentialsTable1762771954619 = AddIsGlobalColumnToCredentialsTable1762771954619;
|
|
18
|
+
//# sourceMappingURL=1762771954619-IsGlobalGlobalColumnToCredentialsTable.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"1762771954619-IsGlobalGlobalColumnToCredentialsTable.js","sourceRoot":"","sources":["../../../src/migrations/common/1762771954619-IsGlobalGlobalColumnToCredentialsTable.ts"],"names":[],"mappings":";;;AAEA,MAAa,gDAAgD;IAC5D,KAAK,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAoB;QACxD,MAAM,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC,oBAAoB,CAAC,CAAC;QACzD,MAAM,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;QAEjD,MAAM,YAAY,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC;QAE5C,MAAM,QAAQ,CACb,eAAe,SAAS,eAAe,UAAU,6BAA6B,YAAY,EAAE,CAC5F,CAAC;IACH,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAoB;QAChD,MAAM,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC,oBAAoB,CAAC,CAAC;QACzD,MAAM,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;QAEjD,MAAM,QAAQ,CAAC,eAAe,SAAS,gBAAgB,UAAU,EAAE,CAAC,CAAC;IACtE,CAAC;CACD;AAlBD,4GAkBC"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import type { MigrationContext, ReversibleMigration } from '../migration-types';
|
|
2
|
+
export declare class AddActiveVersionIdColumn1763047800000 implements ReversibleMigration {
|
|
3
|
+
up({ schemaBuilder: { addColumns, column, addForeignKey }, queryRunner, escape, }: MigrationContext): Promise<void>;
|
|
4
|
+
down({ schemaBuilder: { dropColumns, dropForeignKey } }: MigrationContext): Promise<void>;
|
|
5
|
+
}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.AddActiveVersionIdColumn1763047800000 = void 0;
|
|
4
|
+
const WORKFLOWS_TABLE_NAME = 'workflow_entity';
|
|
5
|
+
const WORKFLOW_HISTORY_TABLE_NAME = 'workflow_history';
|
|
6
|
+
class AddActiveVersionIdColumn1763047800000 {
|
|
7
|
+
async up({ schemaBuilder: { addColumns, column, addForeignKey }, queryRunner, escape, }) {
|
|
8
|
+
const workflowsTableName = escape.tableName(WORKFLOWS_TABLE_NAME);
|
|
9
|
+
await addColumns(WORKFLOWS_TABLE_NAME, [column('activeVersionId').varchar(36)]);
|
|
10
|
+
await addForeignKey(WORKFLOWS_TABLE_NAME, 'activeVersionId', [WORKFLOW_HISTORY_TABLE_NAME, 'versionId'], undefined, 'RESTRICT');
|
|
11
|
+
const versionIdColumn = escape.columnName('versionId');
|
|
12
|
+
const activeColumn = escape.columnName('active');
|
|
13
|
+
const activeVersionIdColumn = escape.columnName('activeVersionId');
|
|
14
|
+
await queryRunner.query(`UPDATE ${workflowsTableName}
|
|
15
|
+
SET ${activeVersionIdColumn} = ${versionIdColumn}
|
|
16
|
+
WHERE ${activeColumn} = true`);
|
|
17
|
+
}
|
|
18
|
+
async down({ schemaBuilder: { dropColumns, dropForeignKey } }) {
|
|
19
|
+
await dropForeignKey(WORKFLOWS_TABLE_NAME, 'activeVersionId', [
|
|
20
|
+
WORKFLOW_HISTORY_TABLE_NAME,
|
|
21
|
+
'versionId',
|
|
22
|
+
]);
|
|
23
|
+
await dropColumns(WORKFLOWS_TABLE_NAME, ['activeVersionId']);
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
exports.AddActiveVersionIdColumn1763047800000 = AddActiveVersionIdColumn1763047800000;
|
|
27
|
+
//# sourceMappingURL=1763047800000-AddActiveVersionIdColumn.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"1763047800000-AddActiveVersionIdColumn.js","sourceRoot":"","sources":["../../../src/migrations/common/1763047800000-AddActiveVersionIdColumn.ts"],"names":[],"mappings":";;;AAEA,MAAM,oBAAoB,GAAG,iBAAiB,CAAC;AAC/C,MAAM,2BAA2B,GAAG,kBAAkB,CAAC;AAEvD,MAAa,qCAAqC;IACjD,KAAK,CAAC,EAAE,CAAC,EACR,aAAa,EAAE,EAAE,UAAU,EAAE,MAAM,EAAE,aAAa,EAAE,EACpD,WAAW,EACX,MAAM,GACY;QAClB,MAAM,kBAAkB,GAAG,MAAM,CAAC,SAAS,CAAC,oBAAoB,CAAC,CAAC;QAElE,MAAM,UAAU,CAAC,oBAAoB,EAAE,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QAEhF,MAAM,aAAa,CAClB,oBAAoB,EACpB,iBAAiB,EACjB,CAAC,2BAA2B,EAAE,WAAW,CAAC,EAC1C,SAAS,EACT,UAAU,CACV,CAAC;QAGF,MAAM,eAAe,GAAG,MAAM,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;QACvD,MAAM,YAAY,GAAG,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;QACjD,MAAM,qBAAqB,GAAG,MAAM,CAAC,UAAU,CAAC,iBAAiB,CAAC,CAAC;QAEnE,MAAM,WAAW,CAAC,KAAK,CACtB,UAAU,kBAAkB;UACrB,qBAAqB,MAAM,eAAe;YACxC,YAAY,SAAS,CAC9B,CAAC;IACH,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,EAAE,aAAa,EAAE,EAAE,WAAW,EAAE,cAAc,EAAE,EAAoB;QAC9E,MAAM,cAAc,CAAC,oBAAoB,EAAE,iBAAiB,EAAE;YAC7D,2BAA2B;YAC3B,WAAW;SACX,CAAC,CAAC;QACH,MAAM,WAAW,CAAC,oBAAoB,EAAE,CAAC,iBAAiB,CAAC,CAAC,CAAC;IAC9D,CAAC;CACD;AArCD,sFAqCC"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import type { IrreversibleMigration, MigrationContext } from '../migration-types';
|
|
2
|
+
export declare class ChangeOAuthStateColumnToUnboundedVarchar1763572724000 implements IrreversibleMigration {
|
|
3
|
+
up({ isSqlite, isMysql, isPostgres, escape, copyTable, queryRunner, schemaBuilder: { createTable, column, dropTable }, }: MigrationContext): Promise<void>;
|
|
4
|
+
}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ChangeOAuthStateColumnToUnboundedVarchar1763572724000 = void 0;
|
|
4
|
+
const TABLE_NAME = 'oauth_authorization_codes';
|
|
5
|
+
const TEMP_TABLE_NAME = 'temp_oauth_authorization_codes';
|
|
6
|
+
class ChangeOAuthStateColumnToUnboundedVarchar1763572724000 {
|
|
7
|
+
async up({ isSqlite, isMysql, isPostgres, escape, copyTable, queryRunner, schemaBuilder: { createTable, column, dropTable }, }) {
|
|
8
|
+
const tableName = escape.tableName(TABLE_NAME);
|
|
9
|
+
if (isSqlite) {
|
|
10
|
+
const tempTableName = escape.tableName(TEMP_TABLE_NAME);
|
|
11
|
+
await createTable(TEMP_TABLE_NAME)
|
|
12
|
+
.withColumns(column('code').varchar(255).primary.notNull, column('clientId').varchar().notNull, column('userId').uuid.notNull, column('redirectUri').varchar().notNull, column('codeChallenge').varchar().notNull, column('codeChallengeMethod').varchar(255).notNull, column('expiresAt').bigint.notNull.comment('Unix timestamp in milliseconds'), column('state').varchar(), column('used').bool.notNull.default(false))
|
|
13
|
+
.withForeignKey('clientId', {
|
|
14
|
+
tableName: 'oauth_clients',
|
|
15
|
+
columnName: 'id',
|
|
16
|
+
onDelete: 'CASCADE',
|
|
17
|
+
})
|
|
18
|
+
.withForeignKey('userId', {
|
|
19
|
+
tableName: 'user',
|
|
20
|
+
columnName: 'id',
|
|
21
|
+
onDelete: 'CASCADE',
|
|
22
|
+
}).withTimestamps;
|
|
23
|
+
await copyTable(TABLE_NAME, TEMP_TABLE_NAME);
|
|
24
|
+
await dropTable(TABLE_NAME);
|
|
25
|
+
await queryRunner.query(`ALTER TABLE ${tempTableName} RENAME TO ${tableName};`);
|
|
26
|
+
}
|
|
27
|
+
else if (isMysql) {
|
|
28
|
+
await queryRunner.query(`ALTER TABLE ${tableName} MODIFY COLUMN ${escape.columnName('state')} TEXT;`);
|
|
29
|
+
await queryRunner.query(`ALTER TABLE ${tableName} MODIFY COLUMN ${escape.columnName('codeChallenge')} TEXT NOT NULL;`);
|
|
30
|
+
await queryRunner.query(`ALTER TABLE ${tableName} MODIFY COLUMN ${escape.columnName('redirectUri')} TEXT NOT NULL;`);
|
|
31
|
+
}
|
|
32
|
+
else if (isPostgres) {
|
|
33
|
+
await queryRunner.query(`ALTER TABLE ${tableName} ALTER COLUMN ${escape.columnName('state')} TYPE VARCHAR,` +
|
|
34
|
+
` ALTER COLUMN ${escape.columnName('codeChallenge')} TYPE VARCHAR,` +
|
|
35
|
+
` ALTER COLUMN ${escape.columnName('redirectUri')} TYPE VARCHAR;`);
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
exports.ChangeOAuthStateColumnToUnboundedVarchar1763572724000 = ChangeOAuthStateColumnToUnboundedVarchar1763572724000;
|
|
40
|
+
//# sourceMappingURL=1763572724000-ChangeOAuthStateColumnToUnboundedVarchar.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"1763572724000-ChangeOAuthStateColumnToUnboundedVarchar.js","sourceRoot":"","sources":["../../../src/migrations/common/1763572724000-ChangeOAuthStateColumnToUnboundedVarchar.ts"],"names":[],"mappings":";;;AAEA,MAAM,UAAU,GAAG,2BAA2B,CAAC;AAC/C,MAAM,eAAe,GAAG,gCAAgC,CAAC;AAEzD,MAAa,qDAAqD;IAGjE,KAAK,CAAC,EAAE,CAAC,EACR,QAAQ,EACR,OAAO,EACP,UAAU,EACV,MAAM,EACN,SAAS,EACT,WAAW,EACX,aAAa,EAAE,EAAE,WAAW,EAAE,MAAM,EAAE,SAAS,EAAE,GAC/B;QAClB,MAAM,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;QAE/C,IAAI,QAAQ,EAAE,CAAC;YACd,MAAM,aAAa,GAAG,MAAM,CAAC,SAAS,CAAC,eAAe,CAAC,CAAC;YAExD,MAAM,WAAW,CAAC,eAAe,CAAC;iBAChC,WAAW,CACX,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,OAAO,EAC3C,MAAM,CAAC,UAAU,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,EACpC,MAAM,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,OAAO,EAC7B,MAAM,CAAC,aAAa,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,EACvC,MAAM,CAAC,eAAe,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,EACzC,MAAM,CAAC,qBAAqB,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,OAAO,EAClD,MAAM,CAAC,WAAW,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,gCAAgC,CAAC,EAC5E,MAAM,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EACzB,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAC1C;iBACA,cAAc,CAAC,UAAU,EAAE;gBAC3B,SAAS,EAAE,eAAe;gBAC1B,UAAU,EAAE,IAAI;gBAChB,QAAQ,EAAE,SAAS;aACnB,CAAC;iBACD,cAAc,CAAC,QAAQ,EAAE;gBACzB,SAAS,EAAE,MAAM;gBACjB,UAAU,EAAE,IAAI;gBAChB,QAAQ,EAAE,SAAS;aACnB,CAAC,CAAC,cAAc,CAAC;YAEnB,MAAM,SAAS,CAAC,UAAU,EAAE,eAAe,CAAC,CAAC;YAE7C,MAAM,SAAS,CAAC,UAAU,CAAC,CAAC;YAE5B,MAAM,WAAW,CAAC,KAAK,CAAC,eAAe,aAAa,cAAc,SAAS,GAAG,CAAC,CAAC;QACjF,CAAC;aAAM,IAAI,OAAO,EAAE,CAAC;YACpB,MAAM,WAAW,CAAC,KAAK,CACtB,eAAe,SAAS,kBAAkB,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,QAAQ,CAC5E,CAAC;YACF,MAAM,WAAW,CAAC,KAAK,CACtB,eAAe,SAAS,kBAAkB,MAAM,CAAC,UAAU,CAAC,eAAe,CAAC,iBAAiB,CAC7F,CAAC;YACF,MAAM,WAAW,CAAC,KAAK,CACtB,eAAe,SAAS,kBAAkB,MAAM,CAAC,UAAU,CAAC,aAAa,CAAC,iBAAiB,CAC3F,CAAC;QACH,CAAC;aAAM,IAAI,UAAU,EAAE,CAAC;YACvB,MAAM,WAAW,CAAC,KAAK,CACtB,eAAe,SAAS,iBAAiB,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,gBAAgB;gBAClF,iBAAiB,MAAM,CAAC,UAAU,CAAC,eAAe,CAAC,gBAAgB;gBACnE,iBAAiB,MAAM,CAAC,UAAU,CAAC,aAAa,CAAC,gBAAgB,CAClE,CAAC;QACH,CAAC;IACF,CAAC;CACD;AA/DD,sHA+DC"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import type { MigrationContext, ReversibleMigration } from '../migration-types';
|
|
2
|
+
export declare class CreateBinaryDataTable1763716655000 implements ReversibleMigration {
|
|
3
|
+
up({ schemaBuilder: { createTable, column } }: MigrationContext): Promise<void>;
|
|
4
|
+
down({ schemaBuilder: { dropTable } }: MigrationContext): Promise<void>;
|
|
5
|
+
}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.CreateBinaryDataTable1763716655000 = void 0;
|
|
4
|
+
const tableName = 'binary_data';
|
|
5
|
+
class CreateBinaryDataTable1763716655000 {
|
|
6
|
+
async up({ schemaBuilder: { createTable, column } }) {
|
|
7
|
+
await createTable(tableName)
|
|
8
|
+
.withColumns(column('fileId').uuid.primary.notNull, column('sourceType')
|
|
9
|
+
.varchar(50)
|
|
10
|
+
.notNull.comment("Source the file belongs to, e.g. 'execution'"), column('sourceId').varchar(255).notNull.comment('ID of the source, e.g. execution ID'), column('data').binary.notNull.comment('Raw, not base64 encoded'), column('mimeType').varchar(255), column('fileName').varchar(255), column('fileSize').int.notNull.comment('In bytes'))
|
|
11
|
+
.withEnumCheck('sourceType', ['execution', 'chat_message_attachment'])
|
|
12
|
+
.withIndexOn(['sourceType', 'sourceId']).withTimestamps;
|
|
13
|
+
}
|
|
14
|
+
async down({ schemaBuilder: { dropTable } }) {
|
|
15
|
+
await dropTable(tableName);
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
exports.CreateBinaryDataTable1763716655000 = CreateBinaryDataTable1763716655000;
|
|
19
|
+
//# sourceMappingURL=1763716655000-CreateBinaryDataTable.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"1763716655000-CreateBinaryDataTable.js","sourceRoot":"","sources":["../../../src/migrations/common/1763716655000-CreateBinaryDataTable.ts"],"names":[],"mappings":";;;AAEA,MAAM,SAAS,GAAG,aAAa,CAAC;AAEhC,MAAa,kCAAkC;IAC9C,KAAK,CAAC,EAAE,CAAC,EAAE,aAAa,EAAE,EAAE,WAAW,EAAE,MAAM,EAAE,EAAoB;QACpE,MAAM,WAAW,CAAC,SAAS,CAAC;aAC1B,WAAW,CACX,MAAM,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,EACrC,MAAM,CAAC,YAAY,CAAC;aAClB,OAAO,CAAC,EAAE,CAAC;aACX,OAAO,CAAC,OAAO,CAAC,8CAA8C,CAAC,EACjE,MAAM,CAAC,UAAU,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,qCAAqC,CAAC,EACtF,MAAM,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,yBAAyB,CAAC,EAChE,MAAM,CAAC,UAAU,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,EAC/B,MAAM,CAAC,UAAU,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,EAC/B,MAAM,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,CAClD;aACA,aAAa,CAAC,YAAY,EAAE,CAAC,WAAW,EAAE,yBAAyB,CAAC,CAAC;aACrE,WAAW,CAAC,CAAC,YAAY,EAAE,UAAU,CAAC,CAAC,CAAC,cAAc,CAAC;IAC1D,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,EAAE,aAAa,EAAE,EAAE,SAAS,EAAE,EAAoB;QAC5D,MAAM,SAAS,CAAC,SAAS,CAAC,CAAC;IAC5B,CAAC;CACD;AArBD,gFAqBC"}
|
|
@@ -23,6 +23,7 @@ export declare class Column {
|
|
|
23
23
|
timestampTimezone(msPrecision?: number): this;
|
|
24
24
|
timestampNoTimezone(msPrecision?: number): this;
|
|
25
25
|
get uuid(): this;
|
|
26
|
+
get binary(): this;
|
|
26
27
|
get primary(): this;
|
|
27
28
|
primaryWithName(name?: string): this;
|
|
28
29
|
get notNull(): this;
|
|
@@ -61,6 +61,10 @@ class Column {
|
|
|
61
61
|
this.type = 'uuid';
|
|
62
62
|
return this;
|
|
63
63
|
}
|
|
64
|
+
get binary() {
|
|
65
|
+
this.type = 'binary';
|
|
66
|
+
return this;
|
|
67
|
+
}
|
|
64
68
|
get primary() {
|
|
65
69
|
this.isPrimary = true;
|
|
66
70
|
return this;
|
|
@@ -137,6 +141,17 @@ class Column {
|
|
|
137
141
|
else if (type === 'bigint') {
|
|
138
142
|
options.type = 'bigint';
|
|
139
143
|
}
|
|
144
|
+
else if (type === 'binary') {
|
|
145
|
+
if (isPostgres) {
|
|
146
|
+
options.type = 'bytea';
|
|
147
|
+
}
|
|
148
|
+
else if (isMysql) {
|
|
149
|
+
options.type = 'longblob';
|
|
150
|
+
}
|
|
151
|
+
else if (isSqlite) {
|
|
152
|
+
options.type = 'blob';
|
|
153
|
+
}
|
|
154
|
+
}
|
|
140
155
|
if ((type === 'varchar' || type === 'timestamptz' || type === 'timestamp') &&
|
|
141
156
|
length !== 'auto') {
|
|
142
157
|
options.type = `${options.type}(${length})`;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"column.js","sourceRoot":"","sources":["../../../src/migrations/dsl/column.ts"],"names":[],"mappings":";;;AAEA,MAAa,MAAM;
|
|
1
|
+
{"version":3,"file":"column.js","sourceRoot":"","sources":["../../../src/migrations/dsl/column.ts"],"names":[],"mappings":";;;AAEA,MAAa,MAAM;IA+BlB,YAAoB,IAAY;QAAZ,SAAI,GAAJ,IAAI,CAAQ;QAhBxB,gBAAW,GAAG,KAAK,CAAC;QAEpB,iBAAY,GAAG,KAAK,CAAC;QAErB,eAAU,GAAG,IAAI,CAAC;QAElB,cAAS,GAAG,KAAK,CAAC;IAUS,CAAC;IAEpC,IAAI,IAAI;QACP,IAAI,CAAC,IAAI,GAAG,SAAS,CAAC;QACtB,OAAO,IAAI,CAAC;IACb,CAAC;IAED,IAAI,GAAG;QACN,IAAI,CAAC,IAAI,GAAG,KAAK,CAAC;QAClB,OAAO,IAAI,CAAC;IACb,CAAC;IAED,IAAI,MAAM;QACT,IAAI,CAAC,IAAI,GAAG,QAAQ,CAAC;QACrB,OAAO,IAAI,CAAC;IACb,CAAC;IAED,IAAI,QAAQ;QACX,IAAI,CAAC,IAAI,GAAG,UAAU,CAAC;QACvB,OAAO,IAAI,CAAC;IACb,CAAC;IAED,IAAI,MAAM;QACT,IAAI,CAAC,IAAI,GAAG,QAAQ,CAAC;QACrB,OAAO,IAAI,CAAC;IACb,CAAC;IAED,OAAO,CAAC,MAAe;QACtB,IAAI,CAAC,IAAI,GAAG,SAAS,CAAC;QACtB,IAAI,CAAC,MAAM,GAAG,MAAM,IAAI,MAAM,CAAC;QAC/B,OAAO,IAAI,CAAC;IACb,CAAC;IAED,IAAI,IAAI;QACP,IAAI,CAAC,IAAI,GAAG,MAAM,CAAC;QACnB,OAAO,IAAI,CAAC;IACb,CAAC;IAED,IAAI,IAAI;QACP,IAAI,CAAC,IAAI,GAAG,MAAM,CAAC;QACnB,OAAO,IAAI,CAAC;IACb,CAAC;IAKD,SAAS,CAAC,WAAW,GAAG,CAAC;QACxB,IAAI,CAAC,IAAI,GAAG,aAAa,CAAC;QAC1B,IAAI,CAAC,MAAM,GAAG,WAAW,IAAI,MAAM,CAAC;QACpC,OAAO,IAAI,CAAC;IACb,CAAC;IAED,iBAAiB,CAAC,WAAW,GAAG,CAAC;QAChC,IAAI,CAAC,IAAI,GAAG,aAAa,CAAC;QAC1B,IAAI,CAAC,MAAM,GAAG,WAAW,IAAI,MAAM,CAAC;QACpC,OAAO,IAAI,CAAC;IACb,CAAC;IAED,mBAAmB,CAAC,WAAW,GAAG,CAAC;QAClC,IAAI,CAAC,IAAI,GAAG,WAAW,CAAC;QACxB,IAAI,CAAC,MAAM,GAAG,WAAW,IAAI,MAAM,CAAC;QACpC,OAAO,IAAI,CAAC;IACb,CAAC;IAED,IAAI,IAAI;QACP,IAAI,CAAC,IAAI,GAAG,MAAM,CAAC;QACnB,OAAO,IAAI,CAAC;IACb,CAAC;IAED,IAAI,MAAM;QACT,IAAI,CAAC,IAAI,GAAG,QAAQ,CAAC;QACrB,OAAO,IAAI,CAAC;IACb,CAAC;IAED,IAAI,OAAO;QACV,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;QACtB,OAAO,IAAI,CAAC;IACb,CAAC;IAED,eAAe,CAAC,IAAa;QAC5B,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;QACtB,IAAI,CAAC,wBAAwB,GAAG,IAAI,CAAC;QACrC,OAAO,IAAI,CAAC;IACb,CAAC;IAED,IAAI,OAAO;QACV,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;QACxB,OAAO,IAAI,CAAC;IACb,CAAC;IAED,OAAO,CAAC,KAAc;QACrB,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;QAC1B,OAAO,IAAI,CAAC;IACb,CAAC;IAKD,IAAI,YAAY;QACf,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;QACxB,OAAO,IAAI,CAAC;IACb,CAAC;IAMD,IAAI,aAAa;QAChB,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;QACzB,OAAO,IAAI,CAAC;IACb,CAAC;IAED,OAAO,CAAC,OAAe;QACtB,IAAI,CAAC,YAAY,GAAG,OAAO,CAAC;QAC5B,OAAO,IAAI,CAAC;IACb,CAAC;IAED,SAAS,CAAC,MAAc;QACvB,MAAM,EACL,IAAI,EACJ,IAAI,EACJ,UAAU,EACV,SAAS,EACT,WAAW,EACX,YAAY,EACZ,MAAM,EACN,wBAAwB,GACxB,GAAG,IAAI,CAAC;QACT,MAAM,OAAO,GAAG,OAAO,IAAI,MAAM,CAAC;QAClC,MAAM,UAAU,GAAG,UAAU,IAAI,MAAM,CAAC;QACxC,MAAM,QAAQ,GAAG,QAAQ,IAAI,MAAM,CAAC;QAEpC,MAAM,OAAO,GAAuB;YACnC,wBAAwB;YACxB,IAAI;YACJ,UAAU;YACV,SAAS;YACT,IAAI;SACJ,CAAC;QAEF,IAAI,OAAO,CAAC,IAAI,KAAK,KAAK,IAAI,QAAQ,EAAE,CAAC;YACxC,OAAO,CAAC,IAAI,GAAG,SAAS,CAAC;QAC1B,CAAC;aAAM,IAAI,IAAI,KAAK,SAAS,IAAI,OAAO,EAAE,CAAC;YAC1C,OAAO,CAAC,IAAI,GAAG,YAAY,CAAC;QAC7B,CAAC;aAAM,IAAI,IAAI,KAAK,aAAa,EAAE,CAAC;YACnC,OAAO,CAAC,IAAI,GAAG,UAAU,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,UAAU,CAAC;QACxD,CAAC;aAAM,IAAI,IAAI,KAAK,WAAW,EAAE,CAAC;YACjC,OAAO,CAAC,IAAI,GAAG,UAAU,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,UAAU,CAAC;QACtD,CAAC;aAAM,IAAI,IAAI,KAAK,MAAM,IAAI,QAAQ,EAAE,CAAC;YACxC,OAAO,CAAC,IAAI,GAAG,MAAM,CAAC;QACvB,CAAC;aAAM,IAAI,IAAI,KAAK,MAAM,EAAE,CAAC;YAE5B,IAAI,OAAO;gBAAE,OAAO,CAAC,IAAI,GAAG,aAAa,CAAC;YAE1C,IAAI,QAAQ;gBAAE,OAAO,CAAC,IAAI,GAAG,SAAS,CAAC;QACxC,CAAC;aAAM,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;YAC9B,IAAI,UAAU,EAAE,CAAC;gBAChB,OAAO,CAAC,IAAI,GAAG,kBAAkB,CAAC;YACnC,CAAC;iBAAM,IAAI,OAAO,EAAE,CAAC;gBACpB,OAAO,CAAC,IAAI,GAAG,QAAQ,CAAC;YACzB,CAAC;iBAAM,IAAI,QAAQ,EAAE,CAAC;gBACrB,OAAO,CAAC,IAAI,GAAG,MAAM,CAAC;YACvB,CAAC;QACF,CAAC;aAAM,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;YAC9B,OAAO,CAAC,IAAI,GAAG,QAAQ,CAAC;QACzB,CAAC;aAAM,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;YAC9B,IAAI,UAAU,EAAE,CAAC;gBAChB,OAAO,CAAC,IAAI,GAAG,OAAO,CAAC;YACxB,CAAC;iBAAM,IAAI,OAAO,EAAE,CAAC;gBACpB,OAAO,CAAC,IAAI,GAAG,UAAU,CAAC;YAC3B,CAAC;iBAAM,IAAI,QAAQ,EAAE,CAAC;gBACrB,OAAO,CAAC,IAAI,GAAG,MAAM,CAAC;YACvB,CAAC;QACF,CAAC;QAED,IACC,CAAC,IAAI,KAAK,SAAS,IAAI,IAAI,KAAK,aAAa,IAAI,IAAI,KAAK,WAAW,CAAC;YACtE,MAAM,KAAK,MAAM,EAChB,CAAC;YACF,OAAO,CAAC,IAAI,GAAG,GAAG,OAAO,CAAC,IAAI,IAAI,MAAM,GAAG,CAAC;QAC7C,CAAC;QAED,IAAI,WAAW,EAAE,CAAC;YACjB,OAAO,CAAC,WAAW,GAAG,IAAI,CAAC;YAC3B,OAAO,CAAC,kBAAkB,GAAG,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,WAAW,CAAC;QACrE,CAAC;QAED,IAAI,YAAY,EAAE,CAAC;YAClB,OAAO,CAAC,WAAW,GAAG,IAAI,CAAC;YAC3B,OAAO,CAAC,kBAAkB,GAAG,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,UAAU,CAAC;QAC5F,CAAC;QAED,IAAI,SAAS,IAAI,WAAW,IAAI,YAAY,EAAE,CAAC;YAC9C,OAAO,CAAC,UAAU,GAAG,KAAK,CAAC;QAC5B,CAAC;QAED,IAAI,IAAI,CAAC,YAAY,KAAK,SAAS,EAAE,CAAC;YACrC,IAAI,CAAC,IAAI,KAAK,aAAa,IAAI,IAAI,KAAK,WAAW,CAAC,IAAI,IAAI,CAAC,YAAY,KAAK,OAAO,EAAE,CAAC;gBACvF,OAAO,CAAC,OAAO,GAAG,QAAQ;oBACzB,CAAC,CAAC,sCAAsC;oBACxC,CAAC,CAAC,sBAAsB,CAAC;YAC3B,CAAC;iBAAM,CAAC;gBACP,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC,YAAY,CAAC;YACrC,CAAC;QACF,CAAC;QAED,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;YACvB,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC,YAAY,CAAC;QACrC,CAAC;QAED,OAAO,OAAO,CAAC;IAChB,CAAC;CACD;AAnPD,wBAmPC"}
|
|
@@ -13,11 +13,15 @@ export declare class CreateTable extends TableOperation {
|
|
|
13
13
|
private indices;
|
|
14
14
|
private uniqueConstraints;
|
|
15
15
|
private foreignKeys;
|
|
16
|
+
private checks;
|
|
17
|
+
private enumChecks;
|
|
16
18
|
withColumns(...columns: Column[]): this;
|
|
17
19
|
get withTimestamps(): this;
|
|
18
20
|
get withCreatedAt(): this;
|
|
19
21
|
withIndexOn(columnName: string | string[], isUnique?: boolean): this;
|
|
20
22
|
withUniqueConstraintOn(columnName: string | string[]): this;
|
|
23
|
+
withCheck(name: string, expression: string): this;
|
|
24
|
+
withEnumCheck(columnName: string, values: string[]): this;
|
|
21
25
|
withForeignKey(columnName: string, ref: {
|
|
22
26
|
tableName: string;
|
|
23
27
|
columnName: string;
|
|
@@ -24,6 +24,8 @@ class CreateTable extends TableOperation {
|
|
|
24
24
|
this.indices = new Set();
|
|
25
25
|
this.uniqueConstraints = new Set();
|
|
26
26
|
this.foreignKeys = new Set();
|
|
27
|
+
this.checks = new Set();
|
|
28
|
+
this.enumChecks = [];
|
|
27
29
|
}
|
|
28
30
|
withColumns(...columns) {
|
|
29
31
|
this.columns.push(...columns);
|
|
@@ -47,6 +49,14 @@ class CreateTable extends TableOperation {
|
|
|
47
49
|
this.uniqueConstraints.add(new typeorm_1.TableUnique({ columnNames }));
|
|
48
50
|
return this;
|
|
49
51
|
}
|
|
52
|
+
withCheck(name, expression) {
|
|
53
|
+
this.checks.add(new typeorm_1.TableCheck({ name, expression }));
|
|
54
|
+
return this;
|
|
55
|
+
}
|
|
56
|
+
withEnumCheck(columnName, values) {
|
|
57
|
+
this.enumChecks.push({ columnName, values });
|
|
58
|
+
return this;
|
|
59
|
+
}
|
|
50
60
|
withForeignKey(columnName, ref) {
|
|
51
61
|
const foreignKey = {
|
|
52
62
|
columnNames: [columnName],
|
|
@@ -64,13 +74,21 @@ class CreateTable extends TableOperation {
|
|
|
64
74
|
}
|
|
65
75
|
async execute(queryRunner) {
|
|
66
76
|
const { driver } = queryRunner.connection;
|
|
67
|
-
const { columns, tableName: name, prefix, indices, uniqueConstraints, foreignKeys } = this;
|
|
77
|
+
const { columns, tableName: name, prefix, indices, uniqueConstraints, foreignKeys, checks, enumChecks, } = this;
|
|
78
|
+
for (const { columnName, values } of enumChecks) {
|
|
79
|
+
const checkName = `CHK_${prefix}${name}_${columnName}`;
|
|
80
|
+
const escapedColumnName = driver.escape(columnName);
|
|
81
|
+
const escapedValues = values.map((v) => `'${v.replace(/'/g, "''")}'`).join(', ');
|
|
82
|
+
const expression = `${escapedColumnName} IN (${escapedValues})`;
|
|
83
|
+
checks.add(new typeorm_1.TableCheck({ name: checkName, expression }));
|
|
84
|
+
}
|
|
68
85
|
return await queryRunner.createTable(new typeorm_1.Table({
|
|
69
86
|
name: `${prefix}${name}`,
|
|
70
87
|
columns: columns.map((c) => c.toOptions(driver)),
|
|
71
88
|
...(indices.size ? { indices: [...indices] } : {}),
|
|
72
89
|
...(uniqueConstraints.size ? { uniques: [...uniqueConstraints] } : {}),
|
|
73
90
|
...(foreignKeys.size ? { foreignKeys: [...foreignKeys] } : {}),
|
|
91
|
+
...(checks.size ? { checks: [...checks] } : {}),
|
|
74
92
|
...('mysql' in driver ? { engine: 'InnoDB' } : {}),
|
|
75
93
|
}), true);
|
|
76
94
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"table.js","sourceRoot":"","sources":["../../../src/migrations/dsl/table.ts"],"names":[],"mappings":";;;;;;AACA,
|
|
1
|
+
{"version":3,"file":"table.js","sourceRoot":"","sources":["../../../src/migrations/dsl/table.ts"],"names":[],"mappings":"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"}
|