@n8n/db 0.3.0 → 0.4.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/project-relation.d.ts +2 -1
- package/dist/entities/project-relation.js.map +1 -1
- package/dist/entities/shared-credentials.d.ts +1 -1
- package/dist/entities/shared-credentials.js +1 -1
- package/dist/entities/shared-credentials.js.map +1 -1
- package/dist/entities/shared-workflow.d.ts +1 -1
- package/dist/entities/shared-workflow.js +1 -1
- package/dist/entities/shared-workflow.js.map +1 -1
- package/dist/entities/types-db.d.ts +31 -2
- package/dist/entities/types-db.js.map +1 -1
- package/dist/entities/user.d.ts +4 -7
- package/dist/entities/user.js +0 -24
- package/dist/entities/user.js.map +1 -1
- package/dist/entities/webhook-entity.d.ts +1 -0
- package/dist/entities/webhook-entity.js +3 -0
- package/dist/entities/webhook-entity.js.map +1 -1
- package/dist/entities/workflow-entity.d.ts +1 -0
- package/dist/entities/workflow-entity.js +4 -0
- package/dist/entities/workflow-entity.js.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/repositories/annotation-tag-mapping.repository.ee.d.ts +6 -0
- package/dist/repositories/annotation-tag-mapping.repository.ee.js +36 -0
- package/dist/repositories/annotation-tag-mapping.repository.ee.js.map +1 -0
- package/dist/repositories/annotation-tag.repository.ee.d.ts +5 -0
- package/dist/repositories/annotation-tag.repository.ee.js +26 -0
- package/dist/repositories/annotation-tag.repository.ee.js.map +1 -0
- package/dist/repositories/api-key.repository.d.ts +5 -0
- package/dist/repositories/api-key.repository.js +26 -0
- package/dist/repositories/api-key.repository.js.map +1 -0
- package/dist/repositories/auth-identity.repository.d.ts +5 -0
- package/dist/repositories/auth-identity.repository.js +26 -0
- package/dist/repositories/auth-identity.repository.js.map +1 -0
- package/dist/repositories/auth-provider-sync-history.repository.d.ts +5 -0
- package/dist/repositories/auth-provider-sync-history.repository.js +26 -0
- package/dist/repositories/auth-provider-sync-history.repository.js.map +1 -0
- package/dist/repositories/auth-user.repository.d.ts +5 -0
- package/dist/repositories/auth-user.repository.js +26 -0
- package/dist/repositories/auth-user.repository.js.map +1 -0
- package/dist/repositories/credentials.repository.d.ts +20 -0
- package/dist/repositories/credentials.repository.js +132 -0
- package/dist/repositories/credentials.repository.js.map +1 -0
- package/dist/repositories/event-destinations.repository.d.ts +5 -0
- package/dist/repositories/event-destinations.repository.js +26 -0
- package/dist/repositories/event-destinations.repository.js.map +1 -0
- package/dist/repositories/execution-annotation.repository.d.ts +5 -0
- package/dist/repositories/execution-annotation.repository.js +26 -0
- package/dist/repositories/execution-annotation.repository.js.map +1 -0
- package/dist/repositories/execution-data.repository.d.ts +9 -0
- package/dist/repositories/execution-data.repository.js +37 -0
- package/dist/repositories/execution-data.repository.js.map +1 -0
- package/dist/repositories/execution-metadata.repository.d.ts +5 -0
- package/dist/repositories/execution-metadata.repository.js +26 -0
- package/dist/repositories/execution-metadata.repository.js.map +1 -0
- package/dist/repositories/execution.repository.d.ts +119 -0
- package/dist/repositories/execution.repository.js +695 -0
- package/dist/repositories/execution.repository.js.map +1 -0
- package/dist/repositories/folder-tag-mapping.repository.d.ts +6 -0
- package/dist/repositories/folder-tag-mapping.repository.js +33 -0
- package/dist/repositories/folder-tag-mapping.repository.js.map +1 -0
- package/dist/repositories/folder.repository.d.ts +32 -0
- package/dist/repositories/folder.repository.js +269 -0
- package/dist/repositories/folder.repository.js.map +1 -0
- package/dist/repositories/index.d.ts +33 -0
- package/dist/repositories/index.js +70 -0
- package/dist/repositories/index.js.map +1 -0
- package/dist/repositories/installed-nodes.repository.d.ts +5 -0
- package/dist/repositories/installed-nodes.repository.js +26 -0
- package/dist/repositories/installed-nodes.repository.js.map +1 -0
- package/dist/repositories/installed-packages.repository.d.ts +9 -0
- package/dist/repositories/installed-packages.repository.js +54 -0
- package/dist/repositories/installed-packages.repository.js.map +1 -0
- package/dist/repositories/invalid-auth-token.repository.d.ts +5 -0
- package/dist/repositories/invalid-auth-token.repository.js +26 -0
- package/dist/repositories/invalid-auth-token.repository.js.map +1 -0
- package/dist/repositories/license-metrics.repository.d.ts +20 -0
- package/dist/repositories/license-metrics.repository.js +69 -0
- package/dist/repositories/license-metrics.repository.js.map +1 -0
- package/dist/repositories/processed-data.repository.d.ts +5 -0
- package/dist/repositories/processed-data.repository.js +26 -0
- package/dist/repositories/processed-data.repository.js.map +1 -0
- package/dist/repositories/project-relation.repository.d.ts +14 -0
- package/dist/repositories/project-relation.repository.js +72 -0
- package/dist/repositories/project-relation.repository.js.map +1 -0
- package/dist/repositories/project.repository.d.ts +13 -0
- package/dist/repositories/project.repository.js +56 -0
- package/dist/repositories/project.repository.js.map +1 -0
- package/dist/repositories/settings.repository.d.ts +6 -0
- package/dist/repositories/settings.repository.js +29 -0
- package/dist/repositories/settings.repository.js.map +1 -0
- package/dist/repositories/shared-credentials.repository.d.ts +17 -0
- package/dist/repositories/shared-credentials.repository.js +104 -0
- package/dist/repositories/shared-credentials.repository.js.map +1 -0
- package/dist/repositories/shared-workflow.repository.d.ts +25 -0
- package/dist/repositories/shared-workflow.repository.js +134 -0
- package/dist/repositories/shared-workflow.repository.js.map +1 -0
- package/dist/repositories/tag.repository.d.ts +10 -0
- package/dist/repositories/tag.repository.js +68 -0
- package/dist/repositories/tag.repository.js.map +1 -0
- package/dist/repositories/test-case-execution.repository.ee.d.ts +35 -0
- package/dist/repositories/test-case-execution.repository.ee.js +85 -0
- package/dist/repositories/test-case-execution.repository.ee.js.map +1 -0
- package/dist/repositories/test-definition.repository.ee.d.ts +17 -0
- package/dist/repositories/test-definition.repository.ee.js +75 -0
- package/dist/repositories/test-definition.repository.ee.js.map +1 -0
- package/dist/repositories/test-metric.repository.ee.d.ts +5 -0
- package/dist/repositories/test-metric.repository.ee.js +26 -0
- package/dist/repositories/test-metric.repository.ee.js.map +1 -0
- package/dist/repositories/test-run.repository.ee.d.ts +37 -0
- package/dist/repositories/test-run.repository.ee.js +97 -0
- package/dist/repositories/test-run.repository.ee.js.map +1 -0
- package/dist/repositories/variables.repository.d.ts +5 -0
- package/dist/repositories/variables.repository.js +26 -0
- package/dist/repositories/variables.repository.js.map +1 -0
- package/dist/repositories/workflow-history.repository.d.ts +6 -0
- package/dist/repositories/workflow-history.repository.js +29 -0
- package/dist/repositories/workflow-history.repository.js.map +1 -0
- package/dist/repositories/workflow-statistics.repository.d.ts +15 -0
- package/dist/repositories/workflow-statistics.repository.js +123 -0
- package/dist/repositories/workflow-statistics.repository.js.map +1 -0
- package/dist/repositories/workflow-tag-mapping.repository.d.ts +6 -0
- package/dist/repositories/workflow-tag-mapping.repository.js +33 -0
- package/dist/repositories/workflow-tag-mapping.repository.js.map +1 -0
- package/dist/utils/get-final-test-result.d.ts +3 -0
- package/dist/utils/get-final-test-result.js +21 -0
- package/dist/utils/get-final-test-result.js.map +1 -0
- package/package.json +8 -5
|
@@ -0,0 +1,26 @@
|
|
|
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.VariablesRepository = void 0;
|
|
13
|
+
const di_1 = require("@n8n/di");
|
|
14
|
+
const typeorm_1 = require("@n8n/typeorm");
|
|
15
|
+
const entities_1 = require("../entities");
|
|
16
|
+
let VariablesRepository = class VariablesRepository extends typeorm_1.Repository {
|
|
17
|
+
constructor(dataSource) {
|
|
18
|
+
super(entities_1.Variables, dataSource.manager);
|
|
19
|
+
}
|
|
20
|
+
};
|
|
21
|
+
exports.VariablesRepository = VariablesRepository;
|
|
22
|
+
exports.VariablesRepository = VariablesRepository = __decorate([
|
|
23
|
+
(0, di_1.Service)(),
|
|
24
|
+
__metadata("design:paramtypes", [typeorm_1.DataSource])
|
|
25
|
+
], VariablesRepository);
|
|
26
|
+
//# sourceMappingURL=variables.repository.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"variables.repository.js","sourceRoot":"","sources":["../../src/repositories/variables.repository.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,gCAAkC;AAClC,0CAAsD;AAEtD,0CAAwC;AAGjC,IAAM,mBAAmB,GAAzB,MAAM,mBAAoB,SAAQ,oBAAqB;IAC7D,YAAY,UAAsB;QACjC,KAAK,CAAC,oBAAS,EAAE,UAAU,CAAC,OAAO,CAAC,CAAC;IACtC,CAAC;CACD,CAAA;AAJY,kDAAmB;8BAAnB,mBAAmB;IAD/B,IAAA,YAAO,GAAE;qCAEe,oBAAU;GADtB,mBAAmB,CAI/B"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { DataSource, Repository } from '@n8n/typeorm';
|
|
2
|
+
import { WorkflowHistory } from '../entities';
|
|
3
|
+
export declare class WorkflowHistoryRepository extends Repository<WorkflowHistory> {
|
|
4
|
+
constructor(dataSource: DataSource);
|
|
5
|
+
deleteEarlierThan(date: Date): Promise<import("@n8n/typeorm").DeleteResult>;
|
|
6
|
+
}
|
|
@@ -0,0 +1,29 @@
|
|
|
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.WorkflowHistoryRepository = void 0;
|
|
13
|
+
const di_1 = require("@n8n/di");
|
|
14
|
+
const typeorm_1 = require("@n8n/typeorm");
|
|
15
|
+
const entities_1 = require("../entities");
|
|
16
|
+
let WorkflowHistoryRepository = class WorkflowHistoryRepository extends typeorm_1.Repository {
|
|
17
|
+
constructor(dataSource) {
|
|
18
|
+
super(entities_1.WorkflowHistory, dataSource.manager);
|
|
19
|
+
}
|
|
20
|
+
async deleteEarlierThan(date) {
|
|
21
|
+
return await this.delete({ createdAt: (0, typeorm_1.LessThan)(date) });
|
|
22
|
+
}
|
|
23
|
+
};
|
|
24
|
+
exports.WorkflowHistoryRepository = WorkflowHistoryRepository;
|
|
25
|
+
exports.WorkflowHistoryRepository = WorkflowHistoryRepository = __decorate([
|
|
26
|
+
(0, di_1.Service)(),
|
|
27
|
+
__metadata("design:paramtypes", [typeorm_1.DataSource])
|
|
28
|
+
], WorkflowHistoryRepository);
|
|
29
|
+
//# sourceMappingURL=workflow-history.repository.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"workflow-history.repository.js","sourceRoot":"","sources":["../../src/repositories/workflow-history.repository.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,gCAAkC;AAClC,0CAAgE;AAEhE,0CAA8C;AAGvC,IAAM,yBAAyB,GAA/B,MAAM,yBAA0B,SAAQ,oBAA2B;IACzE,YAAY,UAAsB;QACjC,KAAK,CAAC,0BAAe,EAAE,UAAU,CAAC,OAAO,CAAC,CAAC;IAC5C,CAAC;IAED,KAAK,CAAC,iBAAiB,CAAC,IAAU;QACjC,OAAO,MAAM,IAAI,CAAC,MAAM,CAAC,EAAE,SAAS,EAAE,IAAA,kBAAQ,EAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACzD,CAAC;CACD,CAAA;AARY,8DAAyB;oCAAzB,yBAAyB;IADrC,IAAA,YAAO,GAAE;qCAEe,oBAAU;GADtB,yBAAyB,CAQrC"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { GlobalConfig } from '@n8n/config';
|
|
2
|
+
import { DataSource, Repository } from '@n8n/typeorm';
|
|
3
|
+
import { WorkflowStatistics } from '../entities';
|
|
4
|
+
import type { User } from '../entities';
|
|
5
|
+
import { StatisticsNames } from '../entities/types-db';
|
|
6
|
+
type StatisticsInsertResult = 'insert' | 'failed' | 'alreadyExists';
|
|
7
|
+
type StatisticsUpsertResult = StatisticsInsertResult | 'update';
|
|
8
|
+
export declare class WorkflowStatisticsRepository extends Repository<WorkflowStatistics> {
|
|
9
|
+
private readonly globalConfig;
|
|
10
|
+
constructor(dataSource: DataSource, globalConfig: GlobalConfig);
|
|
11
|
+
insertWorkflowStatistics(eventName: StatisticsNames, workflowId: string): Promise<StatisticsInsertResult>;
|
|
12
|
+
upsertWorkflowStatistics(eventName: StatisticsNames, workflowId: string, isRootExecution: boolean): Promise<StatisticsUpsertResult>;
|
|
13
|
+
queryNumWorkflowsUserHasWithFiveOrMoreProdExecs(userId: User['id']): Promise<number>;
|
|
14
|
+
}
|
|
15
|
+
export {};
|
|
@@ -0,0 +1,123 @@
|
|
|
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.WorkflowStatisticsRepository = void 0;
|
|
13
|
+
const config_1 = require("@n8n/config");
|
|
14
|
+
const di_1 = require("@n8n/di");
|
|
15
|
+
const typeorm_1 = require("@n8n/typeorm");
|
|
16
|
+
const entities_1 = require("../entities");
|
|
17
|
+
let WorkflowStatisticsRepository = class WorkflowStatisticsRepository extends typeorm_1.Repository {
|
|
18
|
+
constructor(dataSource, globalConfig) {
|
|
19
|
+
super(entities_1.WorkflowStatistics, dataSource.manager);
|
|
20
|
+
this.globalConfig = globalConfig;
|
|
21
|
+
}
|
|
22
|
+
async insertWorkflowStatistics(eventName, workflowId) {
|
|
23
|
+
try {
|
|
24
|
+
const exists = await this.findOne({
|
|
25
|
+
where: {
|
|
26
|
+
workflowId,
|
|
27
|
+
name: eventName,
|
|
28
|
+
},
|
|
29
|
+
});
|
|
30
|
+
if (exists)
|
|
31
|
+
return 'alreadyExists';
|
|
32
|
+
await this.insert({
|
|
33
|
+
workflowId,
|
|
34
|
+
name: eventName,
|
|
35
|
+
count: 1,
|
|
36
|
+
rootCount: 1,
|
|
37
|
+
latestEvent: new Date(),
|
|
38
|
+
});
|
|
39
|
+
return 'insert';
|
|
40
|
+
}
|
|
41
|
+
catch (error) {
|
|
42
|
+
if (!(error instanceof typeorm_1.QueryFailedError)) {
|
|
43
|
+
throw error;
|
|
44
|
+
}
|
|
45
|
+
return 'failed';
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
async upsertWorkflowStatistics(eventName, workflowId, isRootExecution) {
|
|
49
|
+
const dbType = this.globalConfig.database.type;
|
|
50
|
+
const { tableName } = this.metadata;
|
|
51
|
+
try {
|
|
52
|
+
if (dbType === 'sqlite') {
|
|
53
|
+
await this.query(`INSERT INTO "${tableName}" ("count", "rootCount", "name", "workflowId", "latestEvent")
|
|
54
|
+
VALUES (1, ${isRootExecution ? '1' : '0'}, "${eventName}", "${workflowId}", CURRENT_TIMESTAMP)
|
|
55
|
+
ON CONFLICT (workflowId, name)
|
|
56
|
+
DO UPDATE SET
|
|
57
|
+
count = count + 1,
|
|
58
|
+
rootCount = ${isRootExecution ? 'rootCount + 1' : 'rootCount'},
|
|
59
|
+
latestEvent = CURRENT_TIMESTAMP`);
|
|
60
|
+
const counter = await this.findOne({
|
|
61
|
+
select: ['count'],
|
|
62
|
+
where: {
|
|
63
|
+
name: eventName,
|
|
64
|
+
workflowId,
|
|
65
|
+
},
|
|
66
|
+
});
|
|
67
|
+
return (counter?.count ?? 0) > 1 ? 'update' : counter?.count === 1 ? 'insert' : 'failed';
|
|
68
|
+
}
|
|
69
|
+
else if (dbType === 'postgresdb') {
|
|
70
|
+
const upsertRootCount = isRootExecution
|
|
71
|
+
? `"${tableName}"."rootCount" + 1`
|
|
72
|
+
: `"${tableName}"."rootCount"`;
|
|
73
|
+
const queryResult = (await this.query(`INSERT INTO "${tableName}" ("count", "rootCount", "name", "workflowId", "latestEvent")
|
|
74
|
+
VALUES (1, ${isRootExecution ? '1' : '0'}, '${eventName}', '${workflowId}', CURRENT_TIMESTAMP)
|
|
75
|
+
ON CONFLICT ("name", "workflowId")
|
|
76
|
+
DO UPDATE SET
|
|
77
|
+
"count" = "${tableName}"."count" + 1,
|
|
78
|
+
"rootCount" = ${upsertRootCount},
|
|
79
|
+
"latestEvent" = CURRENT_TIMESTAMP
|
|
80
|
+
RETURNING *;`));
|
|
81
|
+
return queryResult[0].count === 1 ? 'insert' : 'update';
|
|
82
|
+
}
|
|
83
|
+
else {
|
|
84
|
+
const queryResult = (await this.query(`INSERT INTO \`${tableName}\` (count, rootCount, name, workflowId, latestEvent)
|
|
85
|
+
VALUES (1, ${isRootExecution ? '1' : '0'}, "${eventName}", "${workflowId}", NOW())
|
|
86
|
+
ON DUPLICATE KEY
|
|
87
|
+
UPDATE
|
|
88
|
+
count = count + 1,
|
|
89
|
+
rootCount = ${isRootExecution ? 'rootCount + 1' : 'rootCount'},
|
|
90
|
+
latestEvent = NOW();`));
|
|
91
|
+
return queryResult.affectedRows === 1 ? 'insert' : 'update';
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
catch (error) {
|
|
95
|
+
console.log('error', error);
|
|
96
|
+
if (error instanceof typeorm_1.QueryFailedError)
|
|
97
|
+
return 'failed';
|
|
98
|
+
throw error;
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
async queryNumWorkflowsUserHasWithFiveOrMoreProdExecs(userId) {
|
|
102
|
+
return await this.count({
|
|
103
|
+
where: {
|
|
104
|
+
workflow: {
|
|
105
|
+
shared: {
|
|
106
|
+
role: 'workflow:owner',
|
|
107
|
+
project: { projectRelations: { userId, role: 'project:personalOwner' } },
|
|
108
|
+
},
|
|
109
|
+
active: true,
|
|
110
|
+
},
|
|
111
|
+
name: "production_success",
|
|
112
|
+
count: (0, typeorm_1.MoreThanOrEqual)(5),
|
|
113
|
+
},
|
|
114
|
+
});
|
|
115
|
+
}
|
|
116
|
+
};
|
|
117
|
+
exports.WorkflowStatisticsRepository = WorkflowStatisticsRepository;
|
|
118
|
+
exports.WorkflowStatisticsRepository = WorkflowStatisticsRepository = __decorate([
|
|
119
|
+
(0, di_1.Service)(),
|
|
120
|
+
__metadata("design:paramtypes", [typeorm_1.DataSource,
|
|
121
|
+
config_1.GlobalConfig])
|
|
122
|
+
], WorkflowStatisticsRepository);
|
|
123
|
+
//# sourceMappingURL=workflow-statistics.repository.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"workflow-statistics.repository.js","sourceRoot":"","sources":["../../src/repositories/workflow-statistics.repository.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { DataSource, Repository } from '@n8n/typeorm';
|
|
2
|
+
import { WorkflowTagMapping } from '../entities';
|
|
3
|
+
export declare class WorkflowTagMappingRepository extends Repository<WorkflowTagMapping> {
|
|
4
|
+
constructor(dataSource: DataSource);
|
|
5
|
+
overwriteTaggings(workflowId: string, tagIds: string[]): Promise<import("@n8n/typeorm").InsertResult>;
|
|
6
|
+
}
|
|
@@ -0,0 +1,33 @@
|
|
|
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.WorkflowTagMappingRepository = void 0;
|
|
13
|
+
const di_1 = require("@n8n/di");
|
|
14
|
+
const typeorm_1 = require("@n8n/typeorm");
|
|
15
|
+
const entities_1 = require("../entities");
|
|
16
|
+
let WorkflowTagMappingRepository = class WorkflowTagMappingRepository extends typeorm_1.Repository {
|
|
17
|
+
constructor(dataSource) {
|
|
18
|
+
super(entities_1.WorkflowTagMapping, dataSource.manager);
|
|
19
|
+
}
|
|
20
|
+
async overwriteTaggings(workflowId, tagIds) {
|
|
21
|
+
return await this.manager.transaction(async (tx) => {
|
|
22
|
+
await tx.delete(entities_1.WorkflowTagMapping, { workflowId });
|
|
23
|
+
const taggings = tagIds.map((tagId) => this.create({ workflowId, tagId }));
|
|
24
|
+
return await tx.insert(entities_1.WorkflowTagMapping, taggings);
|
|
25
|
+
});
|
|
26
|
+
}
|
|
27
|
+
};
|
|
28
|
+
exports.WorkflowTagMappingRepository = WorkflowTagMappingRepository;
|
|
29
|
+
exports.WorkflowTagMappingRepository = WorkflowTagMappingRepository = __decorate([
|
|
30
|
+
(0, di_1.Service)(),
|
|
31
|
+
__metadata("design:paramtypes", [typeorm_1.DataSource])
|
|
32
|
+
], WorkflowTagMappingRepository);
|
|
33
|
+
//# sourceMappingURL=workflow-tag-mapping.repository.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"workflow-tag-mapping.repository.js","sourceRoot":"","sources":["../../src/repositories/workflow-tag-mapping.repository.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,gCAAkC;AAClC,0CAAsD;AAEtD,0CAAiD;AAG1C,IAAM,4BAA4B,GAAlC,MAAM,4BAA6B,SAAQ,oBAA8B;IAC/E,YAAY,UAAsB;QACjC,KAAK,CAAC,6BAAkB,EAAE,UAAU,CAAC,OAAO,CAAC,CAAC;IAC/C,CAAC;IAED,KAAK,CAAC,iBAAiB,CAAC,UAAkB,EAAE,MAAgB;QAC3D,OAAO,MAAM,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,KAAK,EAAE,EAAE,EAAE,EAAE;YAClD,MAAM,EAAE,CAAC,MAAM,CAAC,6BAAkB,EAAE,EAAE,UAAU,EAAE,CAAC,CAAC;YAEpD,MAAM,QAAQ,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC;YAE3E,OAAO,MAAM,EAAE,CAAC,MAAM,CAAC,6BAAkB,EAAE,QAAQ,CAAC,CAAC;QACtD,CAAC,CAAC,CAAC;IACJ,CAAC;CACD,CAAA;AAdY,oEAA4B;uCAA5B,4BAA4B;IADxC,IAAA,YAAO,GAAE;qCAEe,oBAAU;GADtB,4BAA4B,CAcxC"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getTestRunFinalResult = getTestRunFinalResult;
|
|
4
|
+
function getTestRunFinalResult(testCaseExecutions) {
|
|
5
|
+
const severityMap = {
|
|
6
|
+
error: 3,
|
|
7
|
+
warning: 2,
|
|
8
|
+
success: 1,
|
|
9
|
+
};
|
|
10
|
+
let finalResult = 'success';
|
|
11
|
+
for (const testCaseExecution of testCaseExecutions) {
|
|
12
|
+
if (['error', 'warning'].includes(testCaseExecution.status)) {
|
|
13
|
+
if (testCaseExecution.status in severityMap &&
|
|
14
|
+
severityMap[testCaseExecution.status] > severityMap[finalResult]) {
|
|
15
|
+
finalResult = testCaseExecution.status;
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
return finalResult;
|
|
20
|
+
}
|
|
21
|
+
//# sourceMappingURL=get-final-test-result.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"get-final-test-result.js","sourceRoot":"","sources":["../../src/utils/get-final-test-result.ts"],"names":[],"mappings":";;AAOA,sDAsBC;AAtBD,SAAgB,qBAAqB,CAAC,kBAAuC;IAE5E,MAAM,WAAW,GAAuC;QACvD,KAAK,EAAE,CAAC;QACR,OAAO,EAAE,CAAC;QACV,OAAO,EAAE,CAAC;KACV,CAAC;IAEF,IAAI,WAAW,GAAuB,SAAS,CAAC;IAEhD,KAAK,MAAM,iBAAiB,IAAI,kBAAkB,EAAE,CAAC;QACpD,IAAI,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC,QAAQ,CAAC,iBAAiB,CAAC,MAAM,CAAC,EAAE,CAAC;YAC7D,IACC,iBAAiB,CAAC,MAAM,IAAI,WAAW;gBACvC,WAAW,CAAC,iBAAiB,CAAC,MAA4B,CAAC,GAAG,WAAW,CAAC,WAAW,CAAC,EACrF,CAAC;gBACF,WAAW,GAAG,iBAAiB,CAAC,MAA4B,CAAC;YAC9D,CAAC;QACF,CAAC;IACF,CAAC;IAED,OAAO,WAAW,CAAC;AACpB,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@n8n/db",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.4.0",
|
|
4
4
|
"main": "dist/index.js",
|
|
5
5
|
"module": "src/index.ts",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
@@ -12,16 +12,19 @@
|
|
|
12
12
|
"dependencies": {
|
|
13
13
|
"@n8n/typeorm": "0.3.20-12",
|
|
14
14
|
"class-validator": "0.14.0",
|
|
15
|
+
"flatted": "3.2.7",
|
|
16
|
+
"lodash": "4.17.21",
|
|
15
17
|
"nanoid": "3.3.8",
|
|
16
18
|
"reflect-metadata": "0.2.2",
|
|
17
19
|
"xss": "1.0.15",
|
|
20
|
+
"@n8n/config": "^1.39.0",
|
|
21
|
+
"@n8n/permissions": "^0.24.0",
|
|
18
22
|
"@n8n/di": "^0.5.0",
|
|
19
|
-
"
|
|
20
|
-
"n8n-
|
|
21
|
-
"@n8n/config": "^1.38.0",
|
|
22
|
-
"n8n-workflow": "^1.90.0"
|
|
23
|
+
"n8n-core": "^1.92.0",
|
|
24
|
+
"n8n-workflow": "^1.91.0"
|
|
23
25
|
},
|
|
24
26
|
"devDependencies": {
|
|
27
|
+
"@types/lodash": "^4.14.195",
|
|
25
28
|
"@n8n/typescript-config": "1.2.0"
|
|
26
29
|
},
|
|
27
30
|
"license": "SEE LICENSE IN LICENSE.md",
|