@n8n/db 1.35.2 → 1.36.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (101) hide show
  1. package/dist/build.tsbuildinfo +1 -1
  2. package/dist/connection/db-connection-monitor.d.ts +2 -0
  3. package/dist/connection/db-connection-monitor.js +33 -25
  4. package/dist/connection/db-connection-monitor.js.map +1 -1
  5. package/dist/entities/index.d.ts +7 -1
  6. package/dist/entities/index.js +11 -2
  7. package/dist/entities/index.js.map +1 -1
  8. package/dist/entities/poller-state.d.ts +9 -0
  9. package/dist/entities/poller-state.js +41 -0
  10. package/dist/entities/poller-state.js.map +1 -0
  11. package/dist/entities/workflow-review-activity-comment.ee.d.ts +11 -0
  12. package/dist/entities/workflow-review-activity-comment.ee.js +50 -0
  13. package/dist/entities/workflow-review-activity-comment.ee.js.map +1 -0
  14. package/dist/entities/workflow-review-activity.ee.d.ts +12 -0
  15. package/dist/entities/workflow-review-activity.ee.js +50 -0
  16. package/dist/entities/workflow-review-activity.ee.js.map +1 -0
  17. package/dist/entities/workflow-review-request-author.ee.js +2 -1
  18. package/dist/entities/workflow-review-request-author.ee.js.map +1 -1
  19. package/dist/entities/workflow-review-request-workflow.ee.d.ts +1 -0
  20. package/dist/entities/workflow-review-request-workflow.ee.js +4 -0
  21. package/dist/entities/workflow-review-request-workflow.ee.js.map +1 -1
  22. package/dist/index.d.ts +2 -0
  23. package/dist/index.js +3 -1
  24. package/dist/index.js.map +1 -1
  25. package/dist/migrations/common/1785843640527-CreateWorkflowReviewActivityTablesAndBaseline.d.ts +11 -0
  26. package/dist/migrations/common/1785843640527-CreateWorkflowReviewActivityTablesAndBaseline.js +102 -0
  27. package/dist/migrations/common/1785843640527-CreateWorkflowReviewActivityTablesAndBaseline.js.map +1 -0
  28. package/dist/migrations/common/1785926660580-CreatePollerStateTable.d.ts +5 -0
  29. package/dist/migrations/common/1785926660580-CreatePollerStateTable.js +26 -0
  30. package/dist/migrations/common/1785926660580-CreatePollerStateTable.js.map +1 -0
  31. package/dist/migrations/common/1786666615643-AddCoalesceOwnerMisfirePolicy.d.ts +10 -0
  32. package/dist/migrations/common/1786666615643-AddCoalesceOwnerMisfirePolicy.js +55 -0
  33. package/dist/migrations/common/1786666615643-AddCoalesceOwnerMisfirePolicy.js.map +1 -0
  34. package/dist/migrations/postgresdb/index.js +7 -1
  35. package/dist/migrations/postgresdb/index.js.map +1 -1
  36. package/dist/migrations/sqlite/1786666615643-AddCoalesceOwnerMisfirePolicy.d.ts +4 -0
  37. package/dist/migrations/sqlite/1786666615643-AddCoalesceOwnerMisfirePolicy.js +12 -0
  38. package/dist/migrations/sqlite/1786666615643-AddCoalesceOwnerMisfirePolicy.js.map +1 -0
  39. package/dist/migrations/sqlite/index.js +7 -1
  40. package/dist/migrations/sqlite/index.js.map +1 -1
  41. package/dist/repositories/base-repository.d.ts +5 -2
  42. package/dist/repositories/base-repository.js +7 -0
  43. package/dist/repositories/base-repository.js.map +1 -1
  44. package/dist/repositories/credentials.repository.d.ts +9 -15
  45. package/dist/repositories/credentials.repository.js +17 -17
  46. package/dist/repositories/credentials.repository.js.map +1 -1
  47. package/dist/repositories/execution.repository.d.ts +5 -3
  48. package/dist/repositories/execution.repository.js +6 -4
  49. package/dist/repositories/execution.repository.js.map +1 -1
  50. package/dist/repositories/folder.repository.d.ts +0 -1
  51. package/dist/repositories/folder.repository.js +3 -6
  52. package/dist/repositories/folder.repository.js.map +1 -1
  53. package/dist/repositories/index.d.ts +4 -1
  54. package/dist/repositories/index.js +8 -2
  55. package/dist/repositories/index.js.map +1 -1
  56. package/dist/repositories/instance-credential-assignment.repository.d.ts +2 -1
  57. package/dist/repositories/instance-credential-assignment.repository.js +4 -3
  58. package/dist/repositories/instance-credential-assignment.repository.js.map +1 -1
  59. package/dist/repositories/poller-state.repository.d.ts +19 -0
  60. package/dist/repositories/poller-state.repository.js +107 -0
  61. package/dist/repositories/poller-state.repository.js.map +1 -0
  62. package/dist/repositories/scheduled-task.repository.d.ts +1 -0
  63. package/dist/repositories/scheduled-task.repository.js +2 -0
  64. package/dist/repositories/scheduled-task.repository.js.map +1 -1
  65. package/dist/repositories/settings.repository.d.ts +3 -1
  66. package/dist/repositories/settings.repository.js +15 -3
  67. package/dist/repositories/settings.repository.js.map +1 -1
  68. package/dist/repositories/shared-workflow.repository.d.ts +2 -2
  69. package/dist/repositories/shared-workflow.repository.js +4 -3
  70. package/dist/repositories/shared-workflow.repository.js.map +1 -1
  71. package/dist/repositories/tag.repository.d.ts +2 -1
  72. package/dist/repositories/tag.repository.js +4 -3
  73. package/dist/repositories/tag.repository.js.map +1 -1
  74. package/dist/repositories/workflow-history.repository.d.ts +2 -1
  75. package/dist/repositories/workflow-history.repository.js +4 -3
  76. package/dist/repositories/workflow-history.repository.js.map +1 -1
  77. package/dist/repositories/workflow-review-activity-comment.repository.d.ts +12 -0
  78. package/dist/repositories/workflow-review-activity-comment.repository.js +32 -0
  79. package/dist/repositories/workflow-review-activity-comment.repository.js.map +1 -0
  80. package/dist/repositories/workflow-review-activity.repository.d.ts +43 -0
  81. package/dist/repositories/workflow-review-activity.repository.js +68 -0
  82. package/dist/repositories/workflow-review-activity.repository.js.map +1 -0
  83. package/dist/repositories/workflow-review-request-author.repository.d.ts +2 -2
  84. package/dist/repositories/workflow-review-request-author.repository.js +4 -3
  85. package/dist/repositories/workflow-review-request-author.repository.js.map +1 -1
  86. package/dist/repositories/workflow-review-request-reviewer.repository.d.ts +6 -2
  87. package/dist/repositories/workflow-review-request-reviewer.repository.js +10 -3
  88. package/dist/repositories/workflow-review-request-reviewer.repository.js.map +1 -1
  89. package/dist/repositories/workflow-review-request-workflow.repository.d.ts +2 -2
  90. package/dist/repositories/workflow-review-request-workflow.repository.js +4 -3
  91. package/dist/repositories/workflow-review-request-workflow.repository.js.map +1 -1
  92. package/dist/repositories/workflow-review-request.repository.d.ts +29 -8
  93. package/dist/repositories/workflow-review-request.repository.js +120 -28
  94. package/dist/repositories/workflow-review-request.repository.js.map +1 -1
  95. package/dist/repositories/workflow.repository.d.ts +2 -3
  96. package/dist/repositories/workflow.repository.js +8 -10
  97. package/dist/repositories/workflow.repository.js.map +1 -1
  98. package/dist/utils/list-query-sort.d.ts +6 -0
  99. package/dist/utils/list-query-sort.js +11 -0
  100. package/dist/utils/list-query-sort.js.map +1 -0
  101. package/package.json +17 -16
@@ -1,7 +1,7 @@
1
1
  import { DataSource } from '@n8n/typeorm';
2
2
  import { BaseRepository } from './base-repository';
3
3
  import { WorkflowReviewRequestWorkflow } from '../entities/workflow-review-request-workflow.ee';
4
- import type { OperationContext } from '../services/transaction';
4
+ import { type OperationContext, TransactionRunner } from '../services/transaction';
5
5
  export type WorkflowReviewRequestLinkedWorkflow = {
6
6
  workflowName: string;
7
7
  workflowVersionId: string | null;
@@ -12,7 +12,7 @@ export type WorkflowReviewRequestWorkflowDetailRow = {
12
12
  workflowVersionId: string | null;
13
13
  };
14
14
  export declare class WorkflowReviewRequestWorkflowRepository extends BaseRepository<WorkflowReviewRequestWorkflow> {
15
- constructor(dataSource: DataSource);
15
+ constructor(dataSource: DataSource, transactionRunner: TransactionRunner);
16
16
  createWorkflowRow(input: {
17
17
  id?: string;
18
18
  workflowReviewRequestId: string;
@@ -15,9 +15,10 @@ const typeorm_1 = require("@n8n/typeorm");
15
15
  const base_repository_1 = require("./base-repository");
16
16
  const workflow_entity_1 = require("../entities/workflow-entity");
17
17
  const workflow_review_request_workflow_ee_1 = require("../entities/workflow-review-request-workflow.ee");
18
+ const transaction_1 = require("../services/transaction");
18
19
  let WorkflowReviewRequestWorkflowRepository = class WorkflowReviewRequestWorkflowRepository extends base_repository_1.BaseRepository {
19
- constructor(dataSource) {
20
- super(workflow_review_request_workflow_ee_1.WorkflowReviewRequestWorkflow, dataSource.manager);
20
+ constructor(dataSource, transactionRunner) {
21
+ super(workflow_review_request_workflow_ee_1.WorkflowReviewRequestWorkflow, dataSource.manager, transactionRunner);
21
22
  }
22
23
  async createWorkflowRow(input, ctx) {
23
24
  const entity = this.create({
@@ -75,6 +76,6 @@ let WorkflowReviewRequestWorkflowRepository = class WorkflowReviewRequestWorkflo
75
76
  exports.WorkflowReviewRequestWorkflowRepository = WorkflowReviewRequestWorkflowRepository;
76
77
  exports.WorkflowReviewRequestWorkflowRepository = WorkflowReviewRequestWorkflowRepository = __decorate([
77
78
  (0, di_1.Service)(),
78
- __metadata("design:paramtypes", [typeorm_1.DataSource])
79
+ __metadata("design:paramtypes", [typeorm_1.DataSource, transaction_1.TransactionRunner])
79
80
  ], WorkflowReviewRequestWorkflowRepository);
80
81
  //# sourceMappingURL=workflow-review-request-workflow.repository.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"workflow-review-request-workflow.repository.js","sourceRoot":"","sources":["../../src/repositories/workflow-review-request-workflow.repository.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"workflow-review-request-workflow.repository.js","sourceRoot":"","sources":["../../src/repositories/workflow-review-request-workflow.repository.ts"],"names":[],"mappings":"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"}
@@ -1,31 +1,48 @@
1
+ import type { WorkflowReviewClosedReason } from '@n8n/api-types';
1
2
  import { DataSource } from '@n8n/typeorm';
2
3
  import { BaseRepository } from './base-repository';
3
4
  import { WorkflowReviewRequest, type WorkflowReviewRequestDecision, type WorkflowReviewRequestState } from '../entities/workflow-review-request.ee';
4
- import type { OperationContext } from '../services/transaction';
5
+ import { type OperationContext, TransactionRunner } from '../services/transaction';
5
6
  export type InboxCursor = {
6
7
  createdAt: Date;
7
8
  id: string;
8
9
  };
10
+ export type InboxCategoryFilter = {
11
+ userId: string;
12
+ category: 'waiting' | 'authored';
13
+ };
14
+ export type InboxVisibility = {
15
+ scope: 'all';
16
+ } | {
17
+ scope: 'involved';
18
+ userId: string;
19
+ adminProjectIds: string[];
20
+ readableProjectIds: string[] | null;
21
+ readableWorkflowRoles: string[];
22
+ };
9
23
  export type FindManyForInboxOptions = {
10
- projectIds: string[] | null;
11
- requesterId: string;
24
+ visibility: InboxVisibility;
12
25
  state?: WorkflowReviewRequestState;
26
+ category?: InboxCategoryFilter;
13
27
  limit: number;
14
28
  cursor?: InboxCursor;
15
29
  };
16
- export type WorkflowReviewRequestForWorkflowRow = Pick<WorkflowReviewRequest, 'id' | 'state' | 'decision' | 'updatedById' | 'createdAt' | 'updatedAt'> & {
30
+ export type WorkflowReviewRequestForWorkflowRow = Pick<WorkflowReviewRequest, 'id' | 'state' | 'decision' | 'description' | 'updatedById' | 'createdAt' | 'updatedAt'> & {
17
31
  workflowVersionId: string | null;
18
32
  };
19
33
  export type CountByStateForInboxOptions = {
20
- projectIds: string[] | null;
21
- requesterId: string;
34
+ visibility: InboxVisibility;
22
35
  };
23
36
  export type InboxStateCounts = {
24
37
  open: number;
25
38
  closed: number;
26
39
  };
40
+ export type ClosedUnreviewableRequest = {
41
+ id: string;
42
+ reason: WorkflowReviewClosedReason;
43
+ };
27
44
  export declare class WorkflowReviewRequestRepository extends BaseRepository<WorkflowReviewRequest> {
28
- constructor(dataSource: DataSource);
45
+ constructor(dataSource: DataSource, transactionRunner: TransactionRunner);
29
46
  createRequest(input: {
30
47
  id?: string;
31
48
  projectId: string;
@@ -37,7 +54,7 @@ export declare class WorkflowReviewRequestRepository extends BaseRepository<Work
37
54
  updatedById?: string | null;
38
55
  }, ctx: OperationContext): Promise<WorkflowReviewRequest>;
39
56
  saveRequest(request: WorkflowReviewRequest, ctx: OperationContext): Promise<WorkflowReviewRequest>;
40
- closeOrphanedOpenRequests(ctx: OperationContext): Promise<string[]>;
57
+ closeUnreviewableOpenRequests(ctx: OperationContext): Promise<ClosedUnreviewableRequest[]>;
41
58
  findById(id: string, ctx: OperationContext): Promise<WorkflowReviewRequest | null>;
42
59
  findRequestsForWorkflow(workflowId: string, options?: {
43
60
  state?: WorkflowReviewRequestState;
@@ -52,4 +69,8 @@ export declare class WorkflowReviewRequestRepository extends BaseRepository<Work
52
69
  findManyForInbox(options: FindManyForInboxOptions): Promise<WorkflowReviewRequest[]>;
53
70
  countByStateForInbox(options: CountByStateForInboxOptions): Promise<InboxStateCounts>;
54
71
  private applyInboxVisibility;
72
+ private linkedWorkflowExistsSubquery;
73
+ private readableLinkedWorkflowExistsSubquery;
74
+ private participantExistsSubquery;
75
+ private applyCategoryFilter;
55
76
  }
@@ -13,11 +13,31 @@ exports.WorkflowReviewRequestRepository = void 0;
13
13
  const di_1 = require("@n8n/di");
14
14
  const typeorm_1 = require("@n8n/typeorm");
15
15
  const base_repository_1 = require("./base-repository");
16
+ const shared_workflow_1 = require("../entities/shared-workflow");
17
+ const workflow_entity_1 = require("../entities/workflow-entity");
18
+ const workflow_review_request_author_ee_1 = require("../entities/workflow-review-request-author.ee");
19
+ const workflow_review_request_reviewer_ee_1 = require("../entities/workflow-review-request-reviewer.ee");
16
20
  const workflow_review_request_workflow_ee_1 = require("../entities/workflow-review-request-workflow.ee");
17
21
  const workflow_review_request_ee_1 = require("../entities/workflow-review-request.ee");
22
+ const transaction_1 = require("../services/transaction");
23
+ const CLOSE_REASON_PRECEDENCE = [
24
+ 'workflow-deleted',
25
+ 'workflow-archived',
26
+ 'workflow-moved',
27
+ ];
28
+ function closeReasonFor(row) {
29
+ if (row.linkedWorkflowId === null)
30
+ return 'workflow-deleted';
31
+ if (row.isArchived)
32
+ return 'workflow-archived';
33
+ if (row.owningProjectId !== null && row.owningProjectId !== row.requestProjectId) {
34
+ return 'workflow-moved';
35
+ }
36
+ return null;
37
+ }
18
38
  let WorkflowReviewRequestRepository = class WorkflowReviewRequestRepository extends base_repository_1.BaseRepository {
19
- constructor(dataSource) {
20
- super(workflow_review_request_ee_1.WorkflowReviewRequest, dataSource.manager);
39
+ constructor(dataSource, transactionRunner) {
40
+ super(workflow_review_request_ee_1.WorkflowReviewRequest, dataSource.manager, transactionRunner);
21
41
  }
22
42
  async createRequest(input, ctx) {
23
43
  const entity = this.create({
@@ -37,32 +57,42 @@ let WorkflowReviewRequestRepository = class WorkflowReviewRequestRepository exte
37
57
  async saveRequest(request, ctx) {
38
58
  return await this.managerFor(ctx).save(workflow_review_request_ee_1.WorkflowReviewRequest, request);
39
59
  }
40
- async closeOrphanedOpenRequests(ctx) {
60
+ async closeUnreviewableOpenRequests(ctx) {
41
61
  const openState = 'open';
42
62
  const closedState = 'closed';
63
+ const ownerRole = 'workflow:owner';
43
64
  const manager = this.managerFor(ctx);
44
- const orphans = await manager
65
+ const rows = await manager
45
66
  .createQueryBuilder(workflow_review_request_ee_1.WorkflowReviewRequest, 'review')
46
- .select('review.id', 'id')
67
+ .select('review.id', 'requestId')
68
+ .addSelect('review.projectId', 'requestProjectId')
69
+ .addSelect('workflow.id', 'linkedWorkflowId')
70
+ .addSelect('workflow.isArchived', 'isArchived')
71
+ .addSelect('shared.projectId', 'owningProjectId')
72
+ .leftJoin(workflow_review_request_workflow_ee_1.WorkflowReviewRequestWorkflow, 'link', 'link.workflowReviewRequestId = review.id')
73
+ .leftJoin(workflow_entity_1.WorkflowEntity, 'workflow', 'workflow.id = link.workflowId')
74
+ .leftJoin(shared_workflow_1.SharedWorkflow, 'shared', 'shared.workflowId = link.workflowId AND shared.role = :ownerRole', { ownerRole })
47
75
  .where('review.state = :openState', { openState })
48
- .andWhere((qb) => {
49
- const linkedWorkflowExists = qb
50
- .subQuery()
51
- .select('1')
52
- .from(workflow_review_request_workflow_ee_1.WorkflowReviewRequestWorkflow, 'requestWorkflow')
53
- .where('requestWorkflow.workflowReviewRequestId = review.id')
54
- .getQuery();
55
- return `NOT EXISTS ${linkedWorkflowExists}`;
56
- })
57
76
  .getRawMany();
58
- if (orphans.length === 0)
77
+ const reasonByRequestId = new Map();
78
+ for (const row of rows) {
79
+ const reason = closeReasonFor(row);
80
+ if (reason === null)
81
+ continue;
82
+ const current = reasonByRequestId.get(row.requestId);
83
+ if (current !== undefined &&
84
+ CLOSE_REASON_PRECEDENCE.indexOf(current) <= CLOSE_REASON_PRECEDENCE.indexOf(reason)) {
85
+ continue;
86
+ }
87
+ reasonByRequestId.set(row.requestId, reason);
88
+ }
89
+ if (reasonByRequestId.size === 0)
59
90
  return [];
60
- const ids = orphans.map(({ id }) => id);
61
- await manager.update(workflow_review_request_ee_1.WorkflowReviewRequest, ids, {
91
+ await manager.update(workflow_review_request_ee_1.WorkflowReviewRequest, [...reasonByRequestId.keys()], {
62
92
  state: closedState,
63
93
  closedById: null,
64
94
  });
65
- return ids;
95
+ return [...reasonByRequestId].map(([id, reason]) => ({ id, reason }));
66
96
  }
67
97
  async findById(id, ctx) {
68
98
  return await this.managerFor(ctx).findOne(workflow_review_request_ee_1.WorkflowReviewRequest, { where: { id } });
@@ -93,6 +123,7 @@ let WorkflowReviewRequestRepository = class WorkflowReviewRequestRepository exte
93
123
  id: entity.id,
94
124
  state: entity.state,
95
125
  decision: entity.decision,
126
+ description: entity.description,
96
127
  updatedById: entity.updatedById,
97
128
  createdAt: entity.createdAt,
98
129
  updatedAt: entity.updatedAt,
@@ -133,11 +164,14 @@ let WorkflowReviewRequestRepository = class WorkflowReviewRequestRepository exte
133
164
  }));
134
165
  }
135
166
  async findManyForInbox(options) {
136
- const { projectIds, requesterId, state, limit, cursor } = options;
167
+ const { visibility, state, category, limit, cursor } = options;
137
168
  const queryBuilder = this.createQueryBuilder('review')
138
169
  .orderBy('review.createdAt', 'DESC')
139
170
  .addOrderBy('review.id', 'ASC');
140
- this.applyInboxVisibility(queryBuilder, projectIds, requesterId);
171
+ this.applyInboxVisibility(queryBuilder, visibility);
172
+ if (category) {
173
+ this.applyCategoryFilter(queryBuilder, category);
174
+ }
141
175
  if (state !== undefined) {
142
176
  queryBuilder.andWhere('review.state = :state', { state });
143
177
  }
@@ -148,32 +182,90 @@ let WorkflowReviewRequestRepository = class WorkflowReviewRequestRepository exte
148
182
  return await queryBuilder.getMany();
149
183
  }
150
184
  async countByStateForInbox(options) {
151
- const { projectIds, requesterId } = options;
152
185
  const queryBuilder = this.createQueryBuilder('review')
153
186
  .select('review.state', 'state')
154
187
  .addSelect('COUNT(*)', 'count')
155
188
  .groupBy('review.state');
156
- this.applyInboxVisibility(queryBuilder, projectIds, requesterId);
189
+ this.applyInboxVisibility(queryBuilder, options.visibility);
157
190
  const rows = await queryBuilder.getRawMany();
158
191
  return {
159
192
  open: Number(rows.find((row) => row.state === 'open')?.count ?? 0),
160
193
  closed: Number(rows.find((row) => row.state === 'closed')?.count ?? 0),
161
194
  };
162
195
  }
163
- applyInboxVisibility(queryBuilder, projectIds, requesterId) {
164
- if (projectIds === null) {
196
+ applyInboxVisibility(queryBuilder, visibility) {
197
+ if (visibility.scope === 'all') {
165
198
  return;
166
199
  }
167
- if (projectIds.length === 0) {
168
- queryBuilder.andWhere('review.createdById = :requesterId', { requesterId });
200
+ const { userId, adminProjectIds, readableProjectIds, readableWorkflowRoles } = visibility;
201
+ const parameters = { involvedUserId: userId };
202
+ const clauses = [];
203
+ if (adminProjectIds.length > 0) {
204
+ clauses.push('review.projectId IN (:...adminProjectIds)');
205
+ parameters.adminProjectIds = adminProjectIds;
206
+ }
207
+ const authorExists = this.participantExistsSubquery(queryBuilder, workflow_review_request_author_ee_1.WorkflowReviewRequestAuthor, 'visibilityAuthor', 'involvedUserId');
208
+ const reviewerExists = this.participantExistsSubquery(queryBuilder, workflow_review_request_reviewer_ee_1.WorkflowReviewRequestReviewer, 'visibilityReviewer', 'involvedUserId');
209
+ clauses.push(`(EXISTS ${authorExists} OR EXISTS ${reviewerExists})`);
210
+ if (readableProjectIds === null) {
211
+ queryBuilder.andWhere(`(${clauses.join(' OR ')})`, parameters);
169
212
  return;
170
213
  }
171
- queryBuilder.andWhere('(review.projectId IN (:...projectIds) OR review.createdById = :requesterId)', { projectIds, requesterId });
214
+ if (readableProjectIds.length === 0 || readableWorkflowRoles.length === 0) {
215
+ queryBuilder.andWhere('1 = 0');
216
+ return;
217
+ }
218
+ parameters.readableProjectIds = readableProjectIds;
219
+ parameters.readableWorkflowRoles = readableWorkflowRoles;
220
+ const anyLinkExists = this.linkedWorkflowExistsSubquery(queryBuilder, 'visibilityAnyLink');
221
+ const readableLinkExists = this.readableLinkedWorkflowExistsSubquery(queryBuilder);
222
+ queryBuilder.andWhere(`(${clauses.join(' OR ')}) AND (NOT EXISTS ${anyLinkExists} OR EXISTS ${readableLinkExists})`, parameters);
223
+ }
224
+ linkedWorkflowExistsSubquery(queryBuilder, alias) {
225
+ return queryBuilder
226
+ .subQuery()
227
+ .select('1')
228
+ .from(workflow_review_request_workflow_ee_1.WorkflowReviewRequestWorkflow, alias)
229
+ .where(`${alias}.workflowReviewRequestId = review.id`)
230
+ .getQuery();
231
+ }
232
+ readableLinkedWorkflowExistsSubquery(queryBuilder) {
233
+ return queryBuilder
234
+ .subQuery()
235
+ .select('1')
236
+ .from(shared_workflow_1.SharedWorkflow, 'visibilityShared')
237
+ .innerJoin(workflow_review_request_workflow_ee_1.WorkflowReviewRequestWorkflow, 'visibilityLink', 'visibilityLink.workflowId = visibilityShared.workflowId')
238
+ .where('visibilityLink.workflowReviewRequestId = review.id')
239
+ .andWhere('visibilityShared.role IN (:...readableWorkflowRoles)')
240
+ .andWhere('visibilityShared.projectId IN (:...readableProjectIds)')
241
+ .getQuery();
242
+ }
243
+ participantExistsSubquery(queryBuilder, junctionEntity, alias, userParameter) {
244
+ return queryBuilder
245
+ .subQuery()
246
+ .select('1')
247
+ .from(junctionEntity, alias)
248
+ .where(`${alias}.workflowReviewRequestId = review.id`)
249
+ .andWhere(`${alias}.userId = :${userParameter}`)
250
+ .getQuery();
251
+ }
252
+ applyCategoryFilter(queryBuilder, { userId, category }) {
253
+ const authorExists = this.participantExistsSubquery(queryBuilder, workflow_review_request_author_ee_1.WorkflowReviewRequestAuthor, 'author', 'categoryUserId');
254
+ const reviewerExists = this.participantExistsSubquery(queryBuilder, workflow_review_request_reviewer_ee_1.WorkflowReviewRequestReviewer, 'reviewer', 'categoryUserId');
255
+ if (category === 'authored') {
256
+ queryBuilder.andWhere(`(EXISTS ${authorExists} AND NOT EXISTS ${reviewerExists})`, {
257
+ categoryUserId: userId,
258
+ });
259
+ return;
260
+ }
261
+ queryBuilder.andWhere(`(EXISTS ${reviewerExists} OR NOT EXISTS ${authorExists})`, {
262
+ categoryUserId: userId,
263
+ });
172
264
  }
173
265
  };
174
266
  exports.WorkflowReviewRequestRepository = WorkflowReviewRequestRepository;
175
267
  exports.WorkflowReviewRequestRepository = WorkflowReviewRequestRepository = __decorate([
176
268
  (0, di_1.Service)(),
177
- __metadata("design:paramtypes", [typeorm_1.DataSource])
269
+ __metadata("design:paramtypes", [typeorm_1.DataSource, transaction_1.TransactionRunner])
178
270
  ], WorkflowReviewRequestRepository);
179
271
  //# sourceMappingURL=workflow-review-request.repository.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"workflow-review-request.repository.js","sourceRoot":"","sources":["../../src/repositories/workflow-review-request.repository.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"workflow-review-request.repository.js","sourceRoot":"","sources":["../../src/repositories/workflow-review-request.repository.ts"],"names":[],"mappings":"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"}
@@ -8,7 +8,7 @@ import { SharedWorkflowRepository } from './shared-workflow.repository';
8
8
  import { WorkflowHistoryRepository } from './workflow-history.repository';
9
9
  import { WorkflowEntity, User } from '../entities';
10
10
  import type { ListQueryDb, FolderWithWorkflowAndSubFolderCount, ListQuery } from '../entities/types-db';
11
- import type { OperationContext } from '../services/transaction';
11
+ import { type OperationContext, TransactionRunner } from '../services/transaction';
12
12
  type ResourceType = 'folder' | 'workflow';
13
13
  export type WorkflowFolderUnionFull = (ListQueryDb.Workflow.Plain | ListQueryDb.Workflow.WithSharing | FolderWithWorkflowAndSubFolderCount) & {
14
14
  resource: ResourceType;
@@ -22,7 +22,7 @@ export declare class WorkflowRepository extends BaseRepository<WorkflowEntity> {
22
22
  private readonly folderRepository;
23
23
  private readonly sharedWorkflowRepository;
24
24
  private readonly workflowHistoryRepository;
25
- constructor(dataSource: DataSource, globalConfig: GlobalConfig, folderRepository: FolderRepository, sharedWorkflowRepository: SharedWorkflowRepository, workflowHistoryRepository: WorkflowHistoryRepository);
25
+ constructor(dataSource: DataSource, globalConfig: GlobalConfig, folderRepository: FolderRepository, sharedWorkflowRepository: SharedWorkflowRepository, workflowHistoryRepository: WorkflowHistoryRepository, transactionRunner: TransactionRunner);
26
26
  get(where: FindOptionsWhere<WorkflowEntity>, options?: {
27
27
  relations: string[] | FindOptionsRelations<WorkflowEntity>;
28
28
  }): Promise<WorkflowEntity | null>;
@@ -128,7 +128,6 @@ export declare class WorkflowRepository extends BaseRepository<WorkflowEntity> {
128
128
  private applyActiveVersionRelation;
129
129
  private applyTagsRelation;
130
130
  private applySorting;
131
- private parseSortingParams;
132
131
  private applySortingByColumn;
133
132
  private applyPagination;
134
133
  findStartingWith(workflowName: string): Promise<Array<{
@@ -20,12 +20,14 @@ const shared_workflow_repository_1 = require("./shared-workflow.repository");
20
20
  const workflow_history_repository_1 = require("./workflow-history.repository");
21
21
  const entities_1 = require("../entities");
22
22
  const shared_workflow_1 = require("../entities/shared-workflow");
23
+ const transaction_1 = require("../services/transaction");
23
24
  const apply_workflow_boolean_setting_filter_1 = require("../utils/apply-workflow-boolean-setting-filter");
24
25
  const is_string_array_1 = require("../utils/is-string-array");
26
+ const list_query_sort_1 = require("../utils/list-query-sort");
25
27
  const timed_query_1 = require("../utils/timed-query");
26
28
  let WorkflowRepository = class WorkflowRepository extends base_repository_1.BaseRepository {
27
- constructor(dataSource, globalConfig, folderRepository, sharedWorkflowRepository, workflowHistoryRepository) {
28
- super(entities_1.WorkflowEntity, dataSource.manager);
29
+ constructor(dataSource, globalConfig, folderRepository, sharedWorkflowRepository, workflowHistoryRepository, transactionRunner) {
30
+ super(entities_1.WorkflowEntity, dataSource.manager, transactionRunner);
29
31
  this.globalConfig = globalConfig;
30
32
  this.folderRepository = folderRepository;
31
33
  this.sharedWorkflowRepository = sharedWorkflowRepository;
@@ -246,7 +248,7 @@ let WorkflowRepository = class WorkflowRepository extends base_repository_1.Base
246
248
  filter: options.filter,
247
249
  };
248
250
  const columnNames = [...Object.keys(workflowQueryParameters.select ?? {}), 'resource'];
249
- const [sortByColumn, sortByDirection] = this.parseSortingParams(options.sortBy ?? 'updatedAt:asc');
251
+ const { column: sortByColumn, direction: sortByDirection } = (0, list_query_sort_1.parseListQuerySortBy)(options.sortBy ?? 'updatedAt:asc');
250
252
  const foldersQuery = this.folderRepository
251
253
  .getManyQuery(folderQueryParameters)
252
254
  .addSelect('NULL', 'description')
@@ -424,7 +426,7 @@ let WorkflowRepository = class WorkflowRepository extends base_repository_1.Base
424
426
  filter: options.filter,
425
427
  };
426
428
  const columnNames = [...Object.keys(workflowQueryParameters.select ?? {}), 'resource'];
427
- const [sortByColumn, sortByDirection] = this.parseSortingParams(options.sortBy ?? 'updatedAt:asc');
429
+ const { column: sortByColumn, direction: sortByDirection } = (0, list_query_sort_1.parseListQuerySortBy)(options.sortBy ?? 'updatedAt:asc');
428
430
  const foldersQuery = this.folderRepository
429
431
  .getManyQuery(folderQueryParameters)
430
432
  .addSelect('NULL', 'description')
@@ -832,13 +834,9 @@ let WorkflowRepository = class WorkflowRepository extends base_repository_1.Base
832
834
  qb.orderBy('workflow.updatedAt', 'ASC');
833
835
  return;
834
836
  }
835
- const [column, direction] = this.parseSortingParams(sortBy);
837
+ const { column, direction } = (0, list_query_sort_1.parseListQuerySortBy)(sortBy);
836
838
  this.applySortingByColumn(qb, column, direction);
837
839
  }
838
- parseSortingParams(sortBy) {
839
- const [column, order] = sortBy.split(':');
840
- return [column, order.toUpperCase()];
841
- }
842
840
  applySortingByColumn(qb, column, direction) {
843
841
  if (column === 'name') {
844
842
  qb.addSelect('LOWER(workflow.name)', 'workflow_name_lower').orderBy('workflow_name_lower', direction);
@@ -1008,6 +1006,6 @@ __decorate([
1008
1006
  ], WorkflowRepository.prototype, "getMany", null);
1009
1007
  exports.WorkflowRepository = WorkflowRepository = __decorate([
1010
1008
  (0, di_1.Service)(),
1011
- __metadata("design:paramtypes", [typeorm_1.DataSource, config_1.GlobalConfig, folder_repository_1.FolderRepository, shared_workflow_repository_1.SharedWorkflowRepository, workflow_history_repository_1.WorkflowHistoryRepository])
1009
+ __metadata("design:paramtypes", [typeorm_1.DataSource, config_1.GlobalConfig, folder_repository_1.FolderRepository, shared_workflow_repository_1.SharedWorkflowRepository, workflow_history_repository_1.WorkflowHistoryRepository, transaction_1.TransactionRunner])
1012
1010
  ], WorkflowRepository);
1013
1011
  //# sourceMappingURL=workflow.repository.js.map