@rytass/bpm-core-nestjs-module 0.1.10 → 0.2.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/CHANGELOG.md +58 -0
- package/package.json +2 -2
- package/src/lib/database/migration-runner.js +2 -0
- package/src/lib/database/migration-runner.js.map +1 -1
- package/src/lib/database/reconcile-legacy-migrations.d.ts +13 -0
- package/src/lib/database/reconcile-legacy-migrations.js +70 -0
- package/src/lib/database/reconcile-legacy-migrations.js.map +1 -0
- package/src/lib/form/dto/form-definition.input.d.ts +5 -0
- package/src/lib/form/dto/form-definition.input.js +24 -1
- package/src/lib/form/dto/form-definition.input.js.map +1 -1
- package/src/lib/form/form.mutations.d.ts +2 -2
- package/src/lib/form/form.mutations.js +6 -5
- package/src/lib/form/form.mutations.js.map +1 -1
- package/src/lib/form/form.service.d.ts +20 -6
- package/src/lib/form/form.service.js +129 -80
- package/src/lib/form/form.service.js.map +1 -1
- package/src/lib/migrations/0000000014000-notification-resolution.d.ts +6 -0
- package/src/lib/migrations/0000000014000-notification-resolution.js +30 -0
- package/src/lib/migrations/0000000014000-notification-resolution.js.map +1 -0
- package/src/lib/migrations/0000000015000-backfill-stale-notification-resolution.d.ts +15 -0
- package/src/lib/migrations/0000000015000-backfill-stale-notification-resolution.js +37 -0
- package/src/lib/migrations/0000000015000-backfill-stale-notification-resolution.js.map +1 -0
- package/src/lib/migrations/0000000016000-archive-parallel-form-drafts.d.ts +15 -0
- package/src/lib/migrations/0000000016000-archive-parallel-form-drafts.js +34 -0
- package/src/lib/migrations/0000000016000-archive-parallel-form-drafts.js.map +1 -0
- package/src/lib/migrations/index.d.ts +3 -0
- package/src/lib/migrations/index.js +9 -0
- package/src/lib/migrations/index.js.map +1 -1
- package/src/lib/notification/notification.entity.d.ts +9 -1
- package/src/lib/notification/notification.entity.js +27 -0
- package/src/lib/notification/notification.entity.js.map +1 -1
- package/src/lib/notification/notification.enums.d.ts +14 -0
- package/src/lib/notification/notification.enums.js +19 -1
- package/src/lib/notification/notification.enums.js.map +1 -1
- package/src/lib/notification/notification.service.d.ts +26 -0
- package/src/lib/notification/notification.service.js +62 -0
- package/src/lib/notification/notification.service.js.map +1 -1
- package/src/lib/template/compose-approval-template.object.d.ts +11 -0
- package/src/lib/template/compose-approval-template.object.js +36 -0
- package/src/lib/template/compose-approval-template.object.js.map +1 -0
- package/src/lib/template/compose-template.mutations.d.ts +8 -0
- package/src/lib/template/compose-template.mutations.js +32 -0
- package/src/lib/template/compose-template.mutations.js.map +1 -0
- package/src/lib/template/dto/compose-approval-template.input.d.ts +17 -0
- package/src/lib/template/dto/compose-approval-template.input.js +99 -0
- package/src/lib/template/dto/compose-approval-template.input.js.map +1 -0
- package/src/lib/template/index.d.ts +2 -0
- package/src/lib/template/index.js +2 -0
- package/src/lib/template/index.js.map +1 -1
- package/src/lib/template/template.module.js +9 -1
- package/src/lib/template/template.module.js.map +1 -1
- package/src/lib/template/template.service.d.ts +25 -6
- package/src/lib/template/template.service.js +216 -83
- package/src/lib/template/template.service.js.map +1 -1
- package/src/lib/workflow-engine/workflow-engine.service.js +37 -0
- package/src/lib/workflow-engine/workflow-engine.service.js.map +1 -1
|
@@ -1,6 +1,9 @@
|
|
|
1
|
-
import { Repository } from 'typeorm';
|
|
1
|
+
import { EntityManager, Repository } from 'typeorm';
|
|
2
2
|
import { ConditionService } from '../condition/condition.service';
|
|
3
3
|
import { FormDefinitionVersionEntity } from '../form/form-definition-version.entity';
|
|
4
|
+
import { FormService } from '../form/form.service';
|
|
5
|
+
import { ComposeApprovalTemplateWithFormInput } from './dto/compose-approval-template.input';
|
|
6
|
+
import { ComposeApprovalTemplateWithFormObject } from './compose-approval-template.object';
|
|
4
7
|
import { ApprovalTemplateCategoryEntity } from './approval-template-category.entity';
|
|
5
8
|
import { ApprovalTemplateEntity } from './approval-template.entity';
|
|
6
9
|
import { ApprovalTemplateVersionEntity } from './approval-template-version.entity';
|
|
@@ -25,8 +28,19 @@ export declare class TemplateService {
|
|
|
25
28
|
private readonly templateVersionRepository;
|
|
26
29
|
private readonly formDefinitionVersionRepository;
|
|
27
30
|
private readonly conditionService;
|
|
28
|
-
|
|
29
|
-
|
|
31
|
+
private readonly formService;
|
|
32
|
+
constructor(templateRepository: Repository<ApprovalTemplateEntity>, templateCategoryRepository: Repository<ApprovalTemplateCategoryEntity>, templateVersionRepository: Repository<ApprovalTemplateVersionEntity>, formDefinitionVersionRepository: Repository<FormDefinitionVersionEntity>, conditionService: ConditionService, formService: FormService);
|
|
33
|
+
createApprovalTemplate(input: CreateApprovalTemplateInput, manager?: EntityManager): Promise<ApprovalTemplateEntity>;
|
|
34
|
+
private createApprovalTemplateWithManager;
|
|
35
|
+
/**
|
|
36
|
+
* Atomically build (and optionally publish) a form definition together with
|
|
37
|
+
* the approval template that binds it. The whole flow runs in a single DB
|
|
38
|
+
* transaction so a partial failure rolls back both sides.
|
|
39
|
+
*/
|
|
40
|
+
composeApprovalTemplateWithForm(input: ComposeApprovalTemplateWithFormInput, currentMemberId: string | null): Promise<ComposeApprovalTemplateWithFormObject>;
|
|
41
|
+
private resolveComposedFormVersion;
|
|
42
|
+
private resolveComposedTemplateDraftVersion;
|
|
43
|
+
private findDraftTemplateVersion;
|
|
30
44
|
updateApprovalTemplate(input: UpdateApprovalTemplateInput): Promise<ApprovalTemplateEntity>;
|
|
31
45
|
listApprovalTemplates(options?: ListApprovalTemplatesOptions): Promise<readonly ApprovalTemplateEntity[]>;
|
|
32
46
|
countApprovalTemplates({ categoryId, searchText, status, }?: {
|
|
@@ -47,13 +61,18 @@ export declare class TemplateService {
|
|
|
47
61
|
deleteApprovalTemplateCategory(id: string): Promise<ApprovalTemplateCategoryEntity>;
|
|
48
62
|
listApprovalTemplateVersions(templateId: string): Promise<readonly ApprovalTemplateVersionEntity[]>;
|
|
49
63
|
getApprovalTemplateVersion(id: string): Promise<ApprovalTemplateVersionEntity>;
|
|
50
|
-
updateApprovalTemplateDraft(input: UpdateApprovalTemplateDraftInput): Promise<ApprovalTemplateVersionEntity>;
|
|
51
|
-
forkApprovalTemplate(templateId: string): Promise<ApprovalTemplateVersionEntity>;
|
|
52
|
-
publishApprovalTemplateVersion(versionId: string, publishedByMemberId?: string): Promise<ApprovalTemplateVersionEntity>;
|
|
64
|
+
updateApprovalTemplateDraft(input: UpdateApprovalTemplateDraftInput, manager?: EntityManager): Promise<ApprovalTemplateVersionEntity>;
|
|
65
|
+
forkApprovalTemplate(templateId: string, manager?: EntityManager): Promise<ApprovalTemplateVersionEntity>;
|
|
66
|
+
publishApprovalTemplateVersion(versionId: string, publishedByMemberId?: string, manager?: EntityManager): Promise<ApprovalTemplateVersionEntity>;
|
|
67
|
+
private publishApprovalTemplateVersionWithManager;
|
|
53
68
|
rollbackApprovalTemplateVersion(versionId: string): Promise<ApprovalTemplateVersionEntity>;
|
|
54
69
|
private validatePublishableVersion;
|
|
55
70
|
private validateOptionalFormDefinitionVersion;
|
|
56
71
|
private validateOptionalTemplateCategory;
|
|
72
|
+
private templates;
|
|
73
|
+
private templateVersions;
|
|
74
|
+
private templateCategories;
|
|
75
|
+
private formVersions;
|
|
57
76
|
private getTemplateOrThrow;
|
|
58
77
|
private getTemplateCategoryOrThrow;
|
|
59
78
|
private setApprovalTemplateCategoryActive;
|
|
@@ -6,49 +6,155 @@ const common_1 = require("@nestjs/common");
|
|
|
6
6
|
const typeorm_1 = require("@nestjs/typeorm");
|
|
7
7
|
const typeorm_2 = require("typeorm");
|
|
8
8
|
const condition_service_1 = require("../condition/condition.service");
|
|
9
|
+
const form_definition_entity_1 = require("../form/form-definition.entity");
|
|
9
10
|
const form_definition_version_entity_1 = require("../form/form-definition-version.entity");
|
|
10
11
|
const form_enums_1 = require("../form/form.enums");
|
|
12
|
+
const form_service_1 = require("../form/form.service");
|
|
11
13
|
const approval_template_category_entity_1 = require("./approval-template-category.entity");
|
|
12
14
|
const approval_template_entity_1 = require("./approval-template.entity");
|
|
13
15
|
const approval_template_version_entity_1 = require("./approval-template-version.entity");
|
|
14
16
|
const template_enums_1 = require("./template.enums");
|
|
15
17
|
const workflow_definition_validator_1 = require("./workflow-definition.validator");
|
|
16
18
|
let TemplateService = class TemplateService {
|
|
17
|
-
constructor(templateRepository, templateCategoryRepository, templateVersionRepository, formDefinitionVersionRepository, conditionService) {
|
|
19
|
+
constructor(templateRepository, templateCategoryRepository, templateVersionRepository, formDefinitionVersionRepository, conditionService, formService) {
|
|
18
20
|
this.templateRepository = templateRepository;
|
|
19
21
|
this.templateCategoryRepository = templateCategoryRepository;
|
|
20
22
|
this.templateVersionRepository = templateVersionRepository;
|
|
21
23
|
this.formDefinitionVersionRepository = formDefinitionVersionRepository;
|
|
22
24
|
this.conditionService = conditionService;
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
const
|
|
25
|
+
this.formService = formService;
|
|
26
|
+
}
|
|
27
|
+
async createApprovalTemplate(input, manager) {
|
|
28
|
+
const run = (txManager) => this.createApprovalTemplateWithManager(txManager, input);
|
|
29
|
+
return manager
|
|
30
|
+
? run(manager)
|
|
31
|
+
: this.templateRepository.manager.transaction(run);
|
|
32
|
+
}
|
|
33
|
+
async createApprovalTemplateWithManager(manager, input) {
|
|
34
|
+
await this.validateOptionalFormDefinitionVersion(input.formDefinitionVersionId, manager);
|
|
35
|
+
const category = await this.validateOptionalTemplateCategory(input.categoryId, manager);
|
|
36
|
+
const templateRepository = manager.getRepository(approval_template_entity_1.ApprovalTemplateEntity);
|
|
37
|
+
const versionRepository = manager.getRepository(approval_template_version_entity_1.ApprovalTemplateVersionEntity);
|
|
38
|
+
const template = await templateRepository.save(templateRepository.create({
|
|
39
|
+
category: input.category ?? category?.name ?? null,
|
|
40
|
+
categoryId: category?.id ?? null,
|
|
41
|
+
createdByMemberId: input.createdByMemberId,
|
|
42
|
+
currentVersionId: null,
|
|
43
|
+
description: input.description,
|
|
44
|
+
name: input.name,
|
|
45
|
+
}));
|
|
46
|
+
await versionRepository.save(versionRepository.create({
|
|
47
|
+
archivedAt: null,
|
|
48
|
+
formDefinitionVersionId: input.formDefinitionVersionId,
|
|
49
|
+
initiatorPolicyCel: null,
|
|
50
|
+
notificationConfig: null,
|
|
51
|
+
publishedAt: null,
|
|
52
|
+
publishedByMemberId: null,
|
|
53
|
+
slaDefaults: null,
|
|
54
|
+
status: template_enums_1.ApprovalTemplateVersionStatusEnum.DRAFT,
|
|
55
|
+
templateId: template.id,
|
|
56
|
+
version: 1,
|
|
57
|
+
workflowDefinition: workflow_definition_validator_1.EMPTY_WORKFLOW_DEFINITION,
|
|
58
|
+
}));
|
|
59
|
+
return template;
|
|
60
|
+
}
|
|
61
|
+
/**
|
|
62
|
+
* Atomically build (and optionally publish) a form definition together with
|
|
63
|
+
* the approval template that binds it. The whole flow runs in a single DB
|
|
64
|
+
* transaction so a partial failure rolls back both sides.
|
|
65
|
+
*/
|
|
66
|
+
async composeApprovalTemplateWithForm(input, currentMemberId) {
|
|
27
67
|
return this.templateRepository.manager.transaction(async (manager) => {
|
|
28
|
-
const
|
|
29
|
-
const
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
})
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
68
|
+
const formDefinitionVersion = await this.resolveComposedFormVersion(manager, input, currentMemberId);
|
|
69
|
+
const templateDraftVersion = await this.resolveComposedTemplateDraftVersion(manager, input, currentMemberId);
|
|
70
|
+
let templateVersion = await this.updateApprovalTemplateDraft({
|
|
71
|
+
formDefinitionVersionId: formDefinitionVersion.id,
|
|
72
|
+
initiatorPolicyCel: input.initiatorPolicyCel,
|
|
73
|
+
notificationConfigJson: input.notificationConfigJson,
|
|
74
|
+
slaDefaultsJson: input.slaDefaultsJson,
|
|
75
|
+
versionId: templateDraftVersion.id,
|
|
76
|
+
workflowDefinitionJson: input.workflowDefinitionJson,
|
|
77
|
+
}, manager);
|
|
78
|
+
if (input.publish) {
|
|
79
|
+
templateVersion = await this.publishApprovalTemplateVersion(templateDraftVersion.id, currentMemberId ?? undefined, manager);
|
|
80
|
+
}
|
|
81
|
+
const formDefinition = await manager
|
|
82
|
+
.getRepository(form_definition_entity_1.FormDefinitionEntity)
|
|
83
|
+
.findOneByOrFail({ id: formDefinitionVersion.formDefinitionId });
|
|
84
|
+
const template = await manager
|
|
85
|
+
.getRepository(approval_template_entity_1.ApprovalTemplateEntity)
|
|
86
|
+
.findOneByOrFail({ id: templateVersion.templateId });
|
|
87
|
+
return {
|
|
88
|
+
formDefinition,
|
|
89
|
+
formDefinitionVersion,
|
|
90
|
+
published: input.publish,
|
|
91
|
+
template,
|
|
92
|
+
templateVersion,
|
|
93
|
+
};
|
|
94
|
+
});
|
|
95
|
+
}
|
|
96
|
+
async resolveComposedFormVersion(manager, input, currentMemberId) {
|
|
97
|
+
if (!input.formDefinitionId) {
|
|
98
|
+
const definition = await this.formService.createFormDefinition({
|
|
99
|
+
createdByMemberId: currentMemberId,
|
|
100
|
+
description: input.formDescription,
|
|
101
|
+
name: input.formName,
|
|
102
|
+
schemaJson: input.schemaJson,
|
|
103
|
+
uiSchemaJson: input.uiSchemaJson,
|
|
104
|
+
}, manager);
|
|
105
|
+
const draft = await this.formService.findDraftVersion(definition.id, manager);
|
|
106
|
+
if (!draft) {
|
|
107
|
+
throw new common_1.NotFoundException(`Form definition ${definition.id} draft version was not created`);
|
|
108
|
+
}
|
|
109
|
+
return input.publish
|
|
110
|
+
? this.formService.publishFormDefinitionVersion(draft.id, currentMemberId ?? undefined, manager)
|
|
111
|
+
: draft;
|
|
112
|
+
}
|
|
113
|
+
const existingDraft = await this.formService.findDraftVersion(input.formDefinitionId, manager);
|
|
114
|
+
if (existingDraft) {
|
|
115
|
+
const updated = await this.formService.updateFormDefinitionDraft({
|
|
116
|
+
schemaJson: input.schemaJson ?? '',
|
|
117
|
+
uiSchemaJson: input.uiSchemaJson ?? '',
|
|
118
|
+
versionId: existingDraft.id,
|
|
119
|
+
}, manager);
|
|
120
|
+
return input.publish
|
|
121
|
+
? this.formService.publishFormDefinitionVersion(updated.id, currentMemberId ?? undefined, manager)
|
|
122
|
+
: updated;
|
|
123
|
+
}
|
|
124
|
+
// Published definitions no longer keep a parallel draft: edits publish a
|
|
125
|
+
// new version immediately (content-identical saves reuse the current
|
|
126
|
+
// version) so the template draft can bind a published form version.
|
|
127
|
+
return this.formService.publishFormDefinitionContent({
|
|
128
|
+
formDefinitionId: input.formDefinitionId,
|
|
129
|
+
schemaJson: input.schemaJson,
|
|
130
|
+
uiSchemaJson: input.uiSchemaJson,
|
|
131
|
+
}, currentMemberId ?? undefined, manager);
|
|
132
|
+
}
|
|
133
|
+
async resolveComposedTemplateDraftVersion(manager, input, currentMemberId) {
|
|
134
|
+
if (!input.templateId) {
|
|
135
|
+
const template = await this.createApprovalTemplate({
|
|
136
|
+
category: input.category,
|
|
137
|
+
categoryId: input.categoryId,
|
|
138
|
+
createdByMemberId: currentMemberId,
|
|
139
|
+
description: input.templateDescription,
|
|
140
|
+
formDefinitionVersionId: null,
|
|
141
|
+
name: input.templateName,
|
|
142
|
+
}, manager);
|
|
143
|
+
const draft = await this.findDraftTemplateVersion(template.id, manager);
|
|
144
|
+
if (!draft) {
|
|
145
|
+
throw new common_1.NotFoundException(`Approval template ${template.id} draft version was not created`);
|
|
146
|
+
}
|
|
147
|
+
return draft;
|
|
148
|
+
}
|
|
149
|
+
return ((await this.findDraftTemplateVersion(input.templateId, manager)) ??
|
|
150
|
+
(await this.forkApprovalTemplate(input.templateId, manager)));
|
|
151
|
+
}
|
|
152
|
+
async findDraftTemplateVersion(templateId, manager) {
|
|
153
|
+
return this.templateVersions(manager).findOne({
|
|
154
|
+
where: {
|
|
46
155
|
status: template_enums_1.ApprovalTemplateVersionStatusEnum.DRAFT,
|
|
47
|
-
templateId
|
|
48
|
-
|
|
49
|
-
workflowDefinition: workflow_definition_validator_1.EMPTY_WORKFLOW_DEFINITION,
|
|
50
|
-
}));
|
|
51
|
-
return template;
|
|
156
|
+
templateId,
|
|
157
|
+
},
|
|
52
158
|
});
|
|
53
159
|
}
|
|
54
160
|
async updateApprovalTemplate(input) {
|
|
@@ -169,25 +275,27 @@ let TemplateService = class TemplateService {
|
|
|
169
275
|
async getApprovalTemplateVersion(id) {
|
|
170
276
|
return this.getTemplateVersionOrThrow(id);
|
|
171
277
|
}
|
|
172
|
-
async updateApprovalTemplateDraft(input) {
|
|
173
|
-
const
|
|
278
|
+
async updateApprovalTemplateDraft(input, manager) {
|
|
279
|
+
const versionRepository = this.templateVersions(manager);
|
|
280
|
+
const existing = await this.getTemplateVersionOrThrow(input.versionId, manager);
|
|
174
281
|
if (existing.status !== template_enums_1.ApprovalTemplateVersionStatusEnum.DRAFT) {
|
|
175
282
|
throw new common_1.ConflictException('Only draft approval template versions can be updated');
|
|
176
283
|
}
|
|
177
|
-
await this.validateOptionalFormDefinitionVersion(input.formDefinitionVersionId);
|
|
284
|
+
await this.validateOptionalFormDefinitionVersion(input.formDefinitionVersionId, manager);
|
|
178
285
|
const workflowDefinition = this.parseWorkflowDefinitionOrThrow(input.workflowDefinitionJson);
|
|
179
|
-
const next =
|
|
286
|
+
const next = versionRepository.merge(existing, {
|
|
180
287
|
formDefinitionVersionId: input.formDefinitionVersionId,
|
|
181
288
|
initiatorPolicyCel: input.initiatorPolicyCel,
|
|
182
289
|
notificationConfig: parseOptionalJsonObject(input.notificationConfigJson),
|
|
183
290
|
slaDefaults: parseOptionalJsonObject(input.slaDefaultsJson),
|
|
184
291
|
workflowDefinition,
|
|
185
292
|
});
|
|
186
|
-
return
|
|
293
|
+
return versionRepository.save(next);
|
|
187
294
|
}
|
|
188
|
-
async forkApprovalTemplate(templateId) {
|
|
189
|
-
const
|
|
190
|
-
const
|
|
295
|
+
async forkApprovalTemplate(templateId, manager) {
|
|
296
|
+
const versionRepository = this.templateVersions(manager);
|
|
297
|
+
const template = await this.getTemplateOrThrow(templateId, manager);
|
|
298
|
+
const existingDraft = await versionRepository.findOne({
|
|
191
299
|
where: {
|
|
192
300
|
status: template_enums_1.ApprovalTemplateVersionStatusEnum.DRAFT,
|
|
193
301
|
templateId: template.id,
|
|
@@ -197,10 +305,10 @@ let TemplateService = class TemplateService {
|
|
|
197
305
|
throw new common_1.ConflictException('A draft approval template version already exists');
|
|
198
306
|
}
|
|
199
307
|
const source = template.currentVersionId
|
|
200
|
-
? await this.getTemplateVersionOrThrow(template.currentVersionId)
|
|
308
|
+
? await this.getTemplateVersionOrThrow(template.currentVersionId, manager)
|
|
201
309
|
: null;
|
|
202
|
-
const nextVersion = await this.readNextVersionNumber(template.id);
|
|
203
|
-
return
|
|
310
|
+
const nextVersion = await this.readNextVersionNumber(template.id, manager);
|
|
311
|
+
return versionRepository.save(versionRepository.create({
|
|
204
312
|
archivedAt: null,
|
|
205
313
|
formDefinitionVersionId: source?.formDefinitionVersionId ?? null,
|
|
206
314
|
initiatorPolicyCel: source?.initiatorPolicyCel ?? null,
|
|
@@ -214,39 +322,43 @@ let TemplateService = class TemplateService {
|
|
|
214
322
|
workflowDefinition: source?.workflowDefinition ?? workflow_definition_validator_1.EMPTY_WORKFLOW_DEFINITION,
|
|
215
323
|
}));
|
|
216
324
|
}
|
|
217
|
-
async publishApprovalTemplateVersion(versionId, publishedByMemberId) {
|
|
218
|
-
const version = await this.getTemplateVersionOrThrow(versionId);
|
|
325
|
+
async publishApprovalTemplateVersion(versionId, publishedByMemberId, manager) {
|
|
326
|
+
const version = await this.getTemplateVersionOrThrow(versionId, manager);
|
|
219
327
|
if (version.status !== template_enums_1.ApprovalTemplateVersionStatusEnum.DRAFT) {
|
|
220
328
|
throw new common_1.ConflictException('Only draft approval template versions can be published');
|
|
221
329
|
}
|
|
222
|
-
await this.validatePublishableVersion(version);
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
archivedAt:
|
|
240
|
-
|
|
241
|
-
publishedByMemberId: publishedByMemberId ?? null,
|
|
242
|
-
status: template_enums_1.ApprovalTemplateVersionStatusEnum.PUBLISHED,
|
|
330
|
+
await this.validatePublishableVersion(version, manager);
|
|
331
|
+
const run = (txManager) => this.publishApprovalTemplateVersionWithManager(txManager, version, publishedByMemberId);
|
|
332
|
+
return manager
|
|
333
|
+
? run(manager)
|
|
334
|
+
: this.templateRepository.manager.transaction(run);
|
|
335
|
+
}
|
|
336
|
+
async publishApprovalTemplateVersionWithManager(manager, version, publishedByMemberId) {
|
|
337
|
+
const templateRepository = manager.getRepository(approval_template_entity_1.ApprovalTemplateEntity);
|
|
338
|
+
const versionRepository = manager.getRepository(approval_template_version_entity_1.ApprovalTemplateVersionEntity);
|
|
339
|
+
const template = await templateRepository.findOne({
|
|
340
|
+
where: { deletedAt: (0, typeorm_2.IsNull)(), id: version.templateId },
|
|
341
|
+
});
|
|
342
|
+
if (!template) {
|
|
343
|
+
throw new common_1.NotFoundException(`Approval template ${version.templateId} was not found`);
|
|
344
|
+
}
|
|
345
|
+
if (template.currentVersionId) {
|
|
346
|
+
await versionRepository.update({ id: template.currentVersionId }, {
|
|
347
|
+
archivedAt: new Date(),
|
|
348
|
+
status: template_enums_1.ApprovalTemplateVersionStatusEnum.ARCHIVED,
|
|
243
349
|
});
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
350
|
+
}
|
|
351
|
+
const published = versionRepository.merge(version, {
|
|
352
|
+
archivedAt: null,
|
|
353
|
+
publishedAt: new Date(),
|
|
354
|
+
publishedByMemberId: publishedByMemberId ?? null,
|
|
355
|
+
status: template_enums_1.ApprovalTemplateVersionStatusEnum.PUBLISHED,
|
|
249
356
|
});
|
|
357
|
+
const saved = await versionRepository.save(published);
|
|
358
|
+
await templateRepository.save(templateRepository.merge(template, {
|
|
359
|
+
currentVersionId: saved.id,
|
|
360
|
+
}));
|
|
361
|
+
return saved;
|
|
250
362
|
}
|
|
251
363
|
async rollbackApprovalTemplateVersion(versionId) {
|
|
252
364
|
const target = await this.getTemplateVersionOrThrow(versionId);
|
|
@@ -280,11 +392,11 @@ let TemplateService = class TemplateService {
|
|
|
280
392
|
return saved;
|
|
281
393
|
});
|
|
282
394
|
}
|
|
283
|
-
async validatePublishableVersion(version) {
|
|
395
|
+
async validatePublishableVersion(version, manager) {
|
|
284
396
|
if (!version.formDefinitionVersionId) {
|
|
285
397
|
throw new common_1.BadRequestException('Approval template version must bind a form definition version before publishing');
|
|
286
398
|
}
|
|
287
|
-
const formVersion = await this.
|
|
399
|
+
const formVersion = await this.formVersions(manager).findOne({
|
|
288
400
|
where: { id: version.formDefinitionVersionId },
|
|
289
401
|
});
|
|
290
402
|
if (!formVersion) {
|
|
@@ -309,25 +421,45 @@ let TemplateService = class TemplateService {
|
|
|
309
421
|
throw new common_1.BadRequestException(errors.join('; '));
|
|
310
422
|
}
|
|
311
423
|
}
|
|
312
|
-
async validateOptionalFormDefinitionVersion(formDefinitionVersionId) {
|
|
424
|
+
async validateOptionalFormDefinitionVersion(formDefinitionVersionId, manager) {
|
|
313
425
|
if (!formDefinitionVersionId) {
|
|
314
426
|
return;
|
|
315
427
|
}
|
|
316
|
-
const formVersion = await this.
|
|
428
|
+
const formVersion = await this.formVersions(manager).findOne({
|
|
317
429
|
where: { id: formDefinitionVersionId },
|
|
318
430
|
});
|
|
319
431
|
if (!formVersion) {
|
|
320
432
|
throw new common_1.NotFoundException(`Form definition version ${formDefinitionVersionId} was not found`);
|
|
321
433
|
}
|
|
322
434
|
}
|
|
323
|
-
async validateOptionalTemplateCategory(categoryId) {
|
|
435
|
+
async validateOptionalTemplateCategory(categoryId, manager) {
|
|
324
436
|
if (!categoryId) {
|
|
325
437
|
return null;
|
|
326
438
|
}
|
|
327
|
-
return this.getTemplateCategoryOrThrow(categoryId);
|
|
328
|
-
}
|
|
329
|
-
|
|
330
|
-
|
|
439
|
+
return this.getTemplateCategoryOrThrow(categoryId, manager);
|
|
440
|
+
}
|
|
441
|
+
templates(manager) {
|
|
442
|
+
return manager
|
|
443
|
+
? manager.getRepository(approval_template_entity_1.ApprovalTemplateEntity)
|
|
444
|
+
: this.templateRepository;
|
|
445
|
+
}
|
|
446
|
+
templateVersions(manager) {
|
|
447
|
+
return manager
|
|
448
|
+
? manager.getRepository(approval_template_version_entity_1.ApprovalTemplateVersionEntity)
|
|
449
|
+
: this.templateVersionRepository;
|
|
450
|
+
}
|
|
451
|
+
templateCategories(manager) {
|
|
452
|
+
return manager
|
|
453
|
+
? manager.getRepository(approval_template_category_entity_1.ApprovalTemplateCategoryEntity)
|
|
454
|
+
: this.templateCategoryRepository;
|
|
455
|
+
}
|
|
456
|
+
formVersions(manager) {
|
|
457
|
+
return manager
|
|
458
|
+
? manager.getRepository(form_definition_version_entity_1.FormDefinitionVersionEntity)
|
|
459
|
+
: this.formDefinitionVersionRepository;
|
|
460
|
+
}
|
|
461
|
+
async getTemplateOrThrow(id, manager) {
|
|
462
|
+
const entity = await this.templates(manager).findOne({
|
|
331
463
|
relations: { categoryDetail: true },
|
|
332
464
|
where: { deletedAt: (0, typeorm_2.IsNull)(), id },
|
|
333
465
|
});
|
|
@@ -336,8 +468,8 @@ let TemplateService = class TemplateService {
|
|
|
336
468
|
}
|
|
337
469
|
return entity;
|
|
338
470
|
}
|
|
339
|
-
async getTemplateCategoryOrThrow(id) {
|
|
340
|
-
const entity = await this.
|
|
471
|
+
async getTemplateCategoryOrThrow(id, manager) {
|
|
472
|
+
const entity = await this.templateCategories(manager).findOne({
|
|
341
473
|
where: { id },
|
|
342
474
|
});
|
|
343
475
|
if (!entity) {
|
|
@@ -351,8 +483,8 @@ let TemplateService = class TemplateService {
|
|
|
351
483
|
isActive,
|
|
352
484
|
}));
|
|
353
485
|
}
|
|
354
|
-
async getTemplateVersionOrThrow(id) {
|
|
355
|
-
const entity = await this.
|
|
486
|
+
async getTemplateVersionOrThrow(id, manager) {
|
|
487
|
+
const entity = await this.templateVersions(manager).findOne({
|
|
356
488
|
where: { id },
|
|
357
489
|
});
|
|
358
490
|
if (!entity) {
|
|
@@ -360,8 +492,8 @@ let TemplateService = class TemplateService {
|
|
|
360
492
|
}
|
|
361
493
|
return entity;
|
|
362
494
|
}
|
|
363
|
-
async readNextVersionNumber(templateId) {
|
|
364
|
-
const row = await this.
|
|
495
|
+
async readNextVersionNumber(templateId, manager) {
|
|
496
|
+
const row = await this.templateVersions(manager)
|
|
365
497
|
.createQueryBuilder('version')
|
|
366
498
|
.select('MAX(version.version)', 'maxVersion')
|
|
367
499
|
.where('version.template_id = :templateId', { templateId })
|
|
@@ -391,7 +523,8 @@ exports.TemplateService = TemplateService = tslib_1.__decorate([
|
|
|
391
523
|
typeorm_2.Repository,
|
|
392
524
|
typeorm_2.Repository,
|
|
393
525
|
typeorm_2.Repository,
|
|
394
|
-
condition_service_1.ConditionService
|
|
526
|
+
condition_service_1.ConditionService,
|
|
527
|
+
form_service_1.FormService])
|
|
395
528
|
], TemplateService);
|
|
396
529
|
function parseOptionalJsonObject(value) {
|
|
397
530
|
if (!value) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"template.service.js","sourceRoot":"","sources":["../../../../../../libs/bpm-core/src/lib/template/template.service.ts"],"names":[],"mappings":";;;;AAAA,2CAKwB;AACxB,6CAAmD;AAEnD,qCAA2E;AAC3E,sEAAkE;AAClE,2FAAqF;AACrF,mDAAqE;AACrE,2FAAqF;AACrF,yEAAoE;AACpE,yFAAmF;AAQnF,qDAI0B;AAC1B,mFAIyC;AAsBlC,IAAM,eAAe,GAArB,MAAM,eAAe;IAC1B,YAEmB,kBAAsD,EAEtD,0BAAsE,EAEtE,yBAAoE,EAEpE,+BAAwE,EACxE,gBAAkC;QAPlC,uBAAkB,GAAlB,kBAAkB,CAAoC;QAEtD,+BAA0B,GAA1B,0BAA0B,CAA4C;QAEtE,8BAAyB,GAAzB,yBAAyB,CAA2C;QAEpE,oCAA+B,GAA/B,+BAA+B,CAAyC;QACxE,qBAAgB,GAAhB,gBAAgB,CAAkB;IAClD,CAAC;IAEJ,KAAK,CAAC,sBAAsB,CAC1B,KAAkC;QAElC,MAAM,IAAI,CAAC,qCAAqC,CAC9C,KAAK,CAAC,uBAAuB,CAC9B,CAAC;QACF,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,gCAAgC,CAC1D,KAAK,CAAC,UAAU,CACjB,CAAC;QAEF,OAAO,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,WAAW,CAChD,KAAK,EAAE,OAAO,EAAmC,EAAE;YACjD,MAAM,kBAAkB,GAAG,OAAO,CAAC,aAAa,CAC9C,iDAAsB,CACvB,CAAC;YACF,MAAM,iBAAiB,GAAG,OAAO,CAAC,aAAa,CAC7C,gEAA6B,CAC9B,CAAC;YACF,MAAM,QAAQ,GAAG,MAAM,kBAAkB,CAAC,IAAI,CAC5C,kBAAkB,CAAC,MAAM,CAAC;gBACxB,QAAQ,EAAE,KAAK,CAAC,QAAQ,IAAI,QAAQ,EAAE,IAAI,IAAI,IAAI;gBAClD,UAAU,EAAE,QAAQ,EAAE,EAAE,IAAI,IAAI;gBAChC,iBAAiB,EAAE,KAAK,CAAC,iBAAiB;gBAC1C,gBAAgB,EAAE,IAAI;gBACtB,WAAW,EAAE,KAAK,CAAC,WAAW;gBAC9B,IAAI,EAAE,KAAK,CAAC,IAAI;aACjB,CAAC,CACH,CAAC;YAEF,MAAM,iBAAiB,CAAC,IAAI,CAC1B,iBAAiB,CAAC,MAAM,CAAC;gBACvB,UAAU,EAAE,IAAI;gBAChB,uBAAuB,EAAE,KAAK,CAAC,uBAAuB;gBACtD,kBAAkB,EAAE,IAAI;gBACxB,kBAAkB,EAAE,IAAI;gBACxB,WAAW,EAAE,IAAI;gBACjB,mBAAmB,EAAE,IAAI;gBACzB,WAAW,EAAE,IAAI;gBACjB,MAAM,EAAE,kDAAiC,CAAC,KAAK;gBAC/C,UAAU,EAAE,QAAQ,CAAC,EAAE;gBACvB,OAAO,EAAE,CAAC;gBACV,kBAAkB,EAAE,yDAAyB;aAC9C,CAAC,CACH,CAAC;YAEF,OAAO,QAAQ,CAAC;QAClB,CAAC,CACF,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,sBAAsB,CAC1B,KAAkC;QAElC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QACzD,MAAM,QAAQ,GACZ,KAAK,CAAC,UAAU,KAAK,SAAS;YAC5B,CAAC,CAAC,SAAS;YACX,CAAC,CAAC,MAAM,IAAI,CAAC,gCAAgC,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;QACpE,MAAM,IAAI,GAAG,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC,QAAQ,EAAE;YACnD,QAAQ,EACN,KAAK,CAAC,QAAQ,KAAK,SAAS;gBAC1B,CAAC,CAAC,KAAK,CAAC,QAAQ;gBAChB,CAAC,CAAC,QAAQ,KAAK,SAAS;oBACtB,CAAC,CAAC,CAAC,QAAQ,EAAE,IAAI,IAAI,IAAI,CAAC;oBAC1B,CAAC,CAAC,QAAQ,CAAC,QAAQ;YACzB,UAAU,EACR,KAAK,CAAC,UAAU,KAAK,SAAS;gBAC5B,CAAC,CAAC,QAAQ,CAAC,UAAU;gBACrB,CAAC,CAAC,CAAC,QAAQ,EAAE,EAAE,IAAI,IAAI,CAAC;YAC5B,WAAW,EAAE,KAAK,CAAC,WAAW,IAAI,QAAQ,CAAC,WAAW;YACtD,IAAI,EAAE,KAAK,CAAC,IAAI,IAAI,QAAQ,CAAC,IAAI;SAClC,CAAC,CAAC;QAEH,OAAO,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC5C,CAAC;IAED,KAAK,CAAC,qBAAqB,CACzB,UAAwC,EAAE;QAE1C,MAAM,WAAW,GACf,OAAO,OAAO,CAAC,IAAI,KAAK,QAAQ,IAAI,OAAO,OAAO,CAAC,QAAQ,KAAK,QAAQ,CAAC;QAC3E,MAAM,kBAAkB,GAAG,WAAW;YACpC,CAAC,CAAC,iBAAiB,CAAC,OAAO,CAAC,QAAQ,IAAI,EAAE,CAAC;YAC3C,CAAC,CAAC,SAAS,CAAC;QAEd,OAAO,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC;YAClC,KAAK,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE;YAC/C,SAAS,EAAE,EAAE,cAAc,EAAE,IAAI,EAAE;YACnC,GAAG,CAAC,kBAAkB;gBACpB,CAAC,CAAC;oBACE,IAAI,EAAE,CAAC,aAAa,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,kBAAkB;oBACjE,IAAI,EAAE,kBAAkB;iBACzB;gBACH,CAAC,CAAC,EAAE,CAAC;YACP,KAAK,EAAE,2BAA2B,CAAC;gBACjC,UAAU,EAAE,OAAO,CAAC,UAAU;gBAC9B,UAAU,EAAE,OAAO,CAAC,UAAU;gBAC9B,MAAM,EAAE,OAAO,CAAC,MAAM;aACvB,CAAC;SACH,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,sBAAsB,CAAC,EAC3B,UAAU,EACV,UAAU,EACV,MAAM,MAKJ,EAAE;QACJ,OAAO,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC;YACnC,KAAK,EAAE,2BAA2B,CAAC,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,EAAE,CAAC;SACvE,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,mBAAmB,CAAC,EAAU;QAClC,OAAO,IAAI,CAAC,kBAAkB,CAAC,EAAE,CAAC,CAAC;IACrC,CAAC;IAED,KAAK,CAAC,8BAA8B,CAClC,UAAiD,EAAE;QAEnD,MAAM,WAAW,GACf,OAAO,OAAO,CAAC,IAAI,KAAK,QAAQ,IAAI,OAAO,OAAO,CAAC,QAAQ,KAAK,QAAQ,CAAC;QAC3E,MAAM,kBAAkB,GAAG,WAAW;YACpC,CAAC,CAAC,iBAAiB,CAAC,OAAO,CAAC,QAAQ,IAAI,EAAE,CAAC;YAC3C,CAAC,CAAC,SAAS,CAAC;QAEd,OAAO,IAAI,CAAC,0BAA0B,CAAC,IAAI,CAAC;YAC1C,KAAK,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE;YAC1D,GAAG,CAAC,kBAAkB;gBACpB,CAAC,CAAC;oBACE,IAAI,EAAE,CAAC,aAAa,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,kBAAkB;oBACjE,IAAI,EAAE,kBAAkB;iBACzB;gBACH,CAAC,CAAC,EAAE,CAAC;YACP,KAAK,EAAE,mCAAmC,CAAC;gBACzC,UAAU,EAAE,OAAO,CAAC,UAAU;gBAC9B,MAAM,EAAE,OAAO,CAAC,MAAM;aACvB,CAAC;SACH,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,+BAA+B,CAAC,EACpC,UAAU,EACV,MAAM,MAIJ,EAAE;QACJ,OAAO,IAAI,CAAC,0BAA0B,CAAC,KAAK,CAAC;YAC3C,KAAK,EAAE,mCAAmC,CAAC,EAAE,UAAU,EAAE,MAAM,EAAE,CAAC;SACnE,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,8BAA8B,CAClC,KAA0C;QAE1C,OAAO,IAAI,CAAC,0BAA0B,CAAC,IAAI,CACzC,IAAI,CAAC,0BAA0B,CAAC,MAAM,CAAC;YACrC,WAAW,EAAE,KAAK,CAAC,WAAW;YAC9B,QAAQ,EAAE,KAAK,CAAC,QAAQ,IAAI,IAAI;YAChC,IAAI,EAAE,KAAK,CAAC,IAAI;YAChB,SAAS,EAAE,KAAK,CAAC,SAAS,IAAI,CAAC;SAChC,CAAC,CACH,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,8BAA8B,CAClC,KAA0C;QAE1C,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,0BAA0B,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QAEjE,OAAO,IAAI,CAAC,0BAA0B,CAAC,IAAI,CACzC,IAAI,CAAC,0BAA0B,CAAC,KAAK,CAAC,QAAQ,EAAE;YAC9C,WAAW,EAAE,KAAK,CAAC,WAAW,IAAI,QAAQ,CAAC,WAAW;YACtD,QAAQ,EAAE,KAAK,CAAC,QAAQ,IAAI,QAAQ,CAAC,QAAQ;YAC7C,IAAI,EAAE,KAAK,CAAC,IAAI,IAAI,QAAQ,CAAC,IAAI;YACjC,SAAS,EAAE,KAAK,CAAC,SAAS,IAAI,QAAQ,CAAC,SAAS;SACjD,CAAC,CACH,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,gCAAgC,CACpC,EAAU;QAEV,OAAO,IAAI,CAAC,iCAAiC,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;IAC1D,CAAC;IAED,KAAK,CAAC,kCAAkC,CACtC,EAAU;QAEV,OAAO,IAAI,CAAC,iCAAiC,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;IAC3D,CAAC;IAED,KAAK,CAAC,8BAA8B,CAClC,EAAU;QAEV,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,0BAA0B,CAAC,EAAE,CAAC,CAAC;QAC3D,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC;YACxD,KAAK,EAAE,EAAE,UAAU,EAAE,EAAE,EAAE,SAAS,EAAE,IAAA,gBAAM,GAAE,EAAE;SAC/C,CAAC,CAAC;QAEH,IAAI,aAAa,GAAG,CAAC,EAAE,CAAC;YACtB,OAAO,IAAI,CAAC,0BAA0B,CAAC,IAAI,CACzC,IAAI,CAAC,0BAA0B,CAAC,KAAK,CAAC,QAAQ,EAAE;gBAC9C,QAAQ,EAAE,KAAK;aAChB,CAAC,CACH,CAAC;QACJ,CAAC;QAED,MAAM,IAAI,CAAC,0BAA0B,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QAEvD,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,KAAK,CAAC,4BAA4B,CAChC,UAAkB;QAElB,MAAM,IAAI,CAAC,kBAAkB,CAAC,UAAU,CAAC,CAAC;QAE1C,OAAO,IAAI,CAAC,yBAAyB,CAAC,IAAI,CAAC;YACzC,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE;YAC1B,KAAK,EAAE,EAAE,UAAU,EAAE;SACtB,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,0BAA0B,CAC9B,EAAU;QAEV,OAAO,IAAI,CAAC,yBAAyB,CAAC,EAAE,CAAC,CAAC;IAC5C,CAAC;IAED,KAAK,CAAC,2BAA2B,CAC/B,KAAuC;QAEvC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,yBAAyB,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;QAEvE,IAAI,QAAQ,CAAC,MAAM,KAAK,kDAAiC,CAAC,KAAK,EAAE,CAAC;YAChE,MAAM,IAAI,0BAAiB,CACzB,sDAAsD,CACvD,CAAC;QACJ,CAAC;QAED,MAAM,IAAI,CAAC,qCAAqC,CAC9C,KAAK,CAAC,uBAAuB,CAC9B,CAAC;QACF,MAAM,kBAAkB,GAAG,IAAI,CAAC,8BAA8B,CAC5D,KAAK,CAAC,sBAAsB,CAC7B,CAAC;QACF,MAAM,IAAI,GAAG,IAAI,CAAC,yBAAyB,CAAC,KAAK,CAAC,QAAQ,EAAE;YAC1D,uBAAuB,EAAE,KAAK,CAAC,uBAAuB;YACtD,kBAAkB,EAAE,KAAK,CAAC,kBAAkB;YAC5C,kBAAkB,EAAE,uBAAuB,CAAC,KAAK,CAAC,sBAAsB,CAAC;YACzE,WAAW,EAAE,uBAAuB,CAAC,KAAK,CAAC,eAAe,CAAC;YAC3D,kBAAkB;SACnB,CAAC,CAAC;QAEH,OAAO,IAAI,CAAC,yBAAyB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACnD,CAAC;IAED,KAAK,CAAC,oBAAoB,CACxB,UAAkB;QAElB,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,UAAU,CAAC,CAAC;QAC3D,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,yBAAyB,CAAC,OAAO,CAAC;YACjE,KAAK,EAAE;gBACL,MAAM,EAAE,kDAAiC,CAAC,KAAK;gBAC/C,UAAU,EAAE,QAAQ,CAAC,EAAE;aACxB;SACF,CAAC,CAAC;QAEH,IAAI,aAAa,EAAE,CAAC;YAClB,MAAM,IAAI,0BAAiB,CACzB,kDAAkD,CACnD,CAAC;QACJ,CAAC;QAED,MAAM,MAAM,GAAG,QAAQ,CAAC,gBAAgB;YACtC,CAAC,CAAC,MAAM,IAAI,CAAC,yBAAyB,CAAC,QAAQ,CAAC,gBAAgB,CAAC;YACjE,CAAC,CAAC,IAAI,CAAC;QACT,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,qBAAqB,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;QAElE,OAAO,IAAI,CAAC,yBAAyB,CAAC,IAAI,CACxC,IAAI,CAAC,yBAAyB,CAAC,MAAM,CAAC;YACpC,UAAU,EAAE,IAAI;YAChB,uBAAuB,EAAE,MAAM,EAAE,uBAAuB,IAAI,IAAI;YAChE,kBAAkB,EAAE,MAAM,EAAE,kBAAkB,IAAI,IAAI;YACtD,kBAAkB,EAAE,MAAM,EAAE,kBAAkB,IAAI,IAAI;YACtD,WAAW,EAAE,IAAI;YACjB,mBAAmB,EAAE,IAAI;YACzB,WAAW,EAAE,MAAM,EAAE,WAAW,IAAI,IAAI;YACxC,MAAM,EAAE,kDAAiC,CAAC,KAAK;YAC/C,UAAU,EAAE,QAAQ,CAAC,EAAE;YACvB,OAAO,EAAE,WAAW;YACpB,kBAAkB,EAChB,MAAM,EAAE,kBAAkB,IAAI,yDAAyB;SAC1D,CAAC,CACH,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,8BAA8B,CAClC,SAAiB,EACjB,mBAA4B;QAE5B,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,yBAAyB,CAAC,SAAS,CAAC,CAAC;QAEhE,IAAI,OAAO,CAAC,MAAM,KAAK,kDAAiC,CAAC,KAAK,EAAE,CAAC;YAC/D,MAAM,IAAI,0BAAiB,CACzB,wDAAwD,CACzD,CAAC;QACJ,CAAC;QAED,MAAM,IAAI,CAAC,0BAA0B,CAAC,OAAO,CAAC,CAAC;QAE/C,OAAO,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,WAAW,CAChD,KAAK,EAAE,OAAO,EAA0C,EAAE;YACxD,MAAM,kBAAkB,GAAG,OAAO,CAAC,aAAa,CAC9C,iDAAsB,CACvB,CAAC;YACF,MAAM,iBAAiB,GAAG,OAAO,CAAC,aAAa,CAC7C,gEAA6B,CAC9B,CAAC;YACF,MAAM,QAAQ,GAAG,MAAM,kBAAkB,CAAC,OAAO,CAAC;gBAChD,KAAK,EAAE,EAAE,SAAS,EAAE,IAAA,gBAAM,GAAE,EAAE,EAAE,EAAE,OAAO,CAAC,UAAU,EAAE;aACvD,CAAC,CAAC;YAEH,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACd,MAAM,IAAI,0BAAiB,CACzB,qBAAqB,OAAO,CAAC,UAAU,gBAAgB,CACxD,CAAC;YACJ,CAAC;YAED,IAAI,QAAQ,CAAC,gBAAgB,EAAE,CAAC;gBAC9B,MAAM,iBAAiB,CAAC,MAAM,CAC5B,EAAE,EAAE,EAAE,QAAQ,CAAC,gBAAgB,EAAE,EACjC;oBACE,UAAU,EAAE,IAAI,IAAI,EAAE;oBACtB,MAAM,EAAE,kDAAiC,CAAC,QAAQ;iBACnD,CACF,CAAC;YACJ,CAAC;YAED,MAAM,SAAS,GAAG,iBAAiB,CAAC,KAAK,CAAC,OAAO,EAAE;gBACjD,UAAU,EAAE,IAAI;gBAChB,WAAW,EAAE,IAAI,IAAI,EAAE;gBACvB,mBAAmB,EAAE,mBAAmB,IAAI,IAAI;gBAChD,MAAM,EAAE,kDAAiC,CAAC,SAAS;aACpD,CAAC,CAAC;YACH,MAAM,KAAK,GAAG,MAAM,iBAAiB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YACtD,MAAM,kBAAkB,CAAC,IAAI,CAC3B,kBAAkB,CAAC,KAAK,CAAC,QAAQ,EAAE;gBACjC,gBAAgB,EAAE,KAAK,CAAC,EAAE;aAC3B,CAAC,CACH,CAAC;YAEF,OAAO,KAAK,CAAC;QACf,CAAC,CACF,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,+BAA+B,CACnC,SAAiB;QAEjB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,yBAAyB,CAAC,SAAS,CAAC,CAAC;QAE/D,IAAI,MAAM,CAAC,MAAM,KAAK,kDAAiC,CAAC,KAAK,EAAE,CAAC;YAC9D,MAAM,IAAI,0BAAiB,CACzB,6DAA6D,CAC9D,CAAC;QACJ,CAAC;QAED,OAAO,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,WAAW,CAChD,KAAK,EAAE,OAAO,EAA0C,EAAE;YACxD,MAAM,kBAAkB,GAAG,OAAO,CAAC,aAAa,CAC9C,iDAAsB,CACvB,CAAC;YACF,MAAM,iBAAiB,GAAG,OAAO,CAAC,aAAa,CAC7C,gEAA6B,CAC9B,CAAC;YACF,MAAM,QAAQ,GAAG,MAAM,kBAAkB,CAAC,OAAO,CAAC;gBAChD,KAAK,EAAE,EAAE,SAAS,EAAE,IAAA,gBAAM,GAAE,EAAE,EAAE,EAAE,MAAM,CAAC,UAAU,EAAE;aACtD,CAAC,CAAC;YAEH,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACd,MAAM,IAAI,0BAAiB,CACzB,qBAAqB,MAAM,CAAC,UAAU,gBAAgB,CACvD,CAAC;YACJ,CAAC;YAED,IACE,QAAQ,CAAC,gBAAgB;gBACzB,QAAQ,CAAC,gBAAgB,KAAK,MAAM,CAAC,EAAE,EACvC,CAAC;gBACD,MAAM,iBAAiB,CAAC,MAAM,CAC5B,EAAE,EAAE,EAAE,QAAQ,CAAC,gBAAgB,EAAE,EACjC;oBACE,UAAU,EAAE,IAAI,IAAI,EAAE;oBACtB,MAAM,EAAE,kDAAiC,CAAC,QAAQ;iBACnD,CACF,CAAC;YACJ,CAAC;YAED,MAAM,QAAQ,GAAG,iBAAiB,CAAC,KAAK,CAAC,MAAM,EAAE;gBAC/C,UAAU,EAAE,IAAI;gBAChB,MAAM,EAAE,kDAAiC,CAAC,SAAS;aACpD,CAAC,CAAC;YACH,MAAM,KAAK,GAAG,MAAM,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YACrD,MAAM,kBAAkB,CAAC,IAAI,CAC3B,kBAAkB,CAAC,KAAK,CAAC,QAAQ,EAAE;gBACjC,gBAAgB,EAAE,KAAK,CAAC,EAAE;aAC3B,CAAC,CACH,CAAC;YAEF,OAAO,KAAK,CAAC;QACf,CAAC,CACF,CAAC;IACJ,CAAC;IAEO,KAAK,CAAC,0BAA0B,CACtC,OAAsC;QAEtC,IAAI,CAAC,OAAO,CAAC,uBAAuB,EAAE,CAAC;YACrC,MAAM,IAAI,4BAAmB,CAC3B,iFAAiF,CAClF,CAAC;QACJ,CAAC;QAED,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,+BAA+B,CAAC,OAAO,CAAC;YACrE,KAAK,EAAE,EAAE,EAAE,EAAE,OAAO,CAAC,uBAAuB,EAAE;SAC/C,CAAC,CAAC;QAEH,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,MAAM,IAAI,0BAAiB,CACzB,2BAA2B,OAAO,CAAC,uBAAuB,gBAAgB,CAC3E,CAAC;QACJ,CAAC;QAED,IAAI,WAAW,CAAC,MAAM,KAAK,4CAA+B,CAAC,SAAS,EAAE,CAAC;YACrE,MAAM,IAAI,4BAAmB,CAC3B,qEAAqE,CACtE,CAAC;QACJ,CAAC;QAED,MAAM,cAAc,GAAG,IAAA,sDAAsB,EAAC,OAAO,CAAC,kBAAkB,CAAC,CAAC;QAC1E,MAAM,eAAe,GAAG,IAAI,CAAC,gBAAgB,CAAC,eAAe,CAC3D,wBAAwB,CACtB,OAAO,CAAC,kBAAkB,EAC1B,OAAO,CAAC,kBAAkB,CAC3B,EACD;YACE,sBAAsB,EAAE;gBACtB,KAAK;gBACL,MAAM;gBACN,UAAU;gBACV,WAAW;gBACX,UAAU;gBACV,SAAS;aACV;SACF,CACF,CAAC;QACF,MAAM,MAAM,GAAG,CAAC,GAAG,cAAc,CAAC,MAAM,EAAE,GAAG,eAAe,CAAC,CAAC;QAE9D,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;YAClB,MAAM,IAAI,4BAAmB,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QACnD,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,qCAAqC,CACjD,uBAAkD;QAElD,IAAI,CAAC,uBAAuB,EAAE,CAAC;YAC7B,OAAO;QACT,CAAC;QAED,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,+BAA+B,CAAC,OAAO,CAAC;YACrE,KAAK,EAAE,EAAE,EAAE,EAAE,uBAAuB,EAAE;SACvC,CAAC,CAAC;QAEH,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,MAAM,IAAI,0BAAiB,CACzB,2BAA2B,uBAAuB,gBAAgB,CACnE,CAAC;QACJ,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,gCAAgC,CAC5C,UAAqC;QAErC,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,OAAO,IAAI,CAAC;QACd,CAAC;QAED,OAAO,IAAI,CAAC,0BAA0B,CAAC,UAAU,CAAC,CAAC;IACrD,CAAC;IAEO,KAAK,CAAC,kBAAkB,CAC9B,EAAU;QAEV,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC;YACnD,SAAS,EAAE,EAAE,cAAc,EAAE,IAAI,EAAE;YACnC,KAAK,EAAE,EAAE,SAAS,EAAE,IAAA,gBAAM,GAAE,EAAE,EAAE,EAAE;SACnC,CAAC,CAAC;QAEH,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,IAAI,0BAAiB,CAAC,qBAAqB,EAAE,gBAAgB,CAAC,CAAC;QACvE,CAAC;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;IAEO,KAAK,CAAC,0BAA0B,CACtC,EAAU;QAEV,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,0BAA0B,CAAC,OAAO,CAAC;YAC3D,KAAK,EAAE,EAAE,EAAE,EAAE;SACd,CAAC,CAAC;QAEH,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,IAAI,0BAAiB,CACzB,8BAA8B,EAAE,gBAAgB,CACjD,CAAC;QACJ,CAAC;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;IAEO,KAAK,CAAC,iCAAiC,CAC7C,EAAU,EACV,QAAiB;QAEjB,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,0BAA0B,CAAC,EAAE,CAAC,CAAC;QAE3D,OAAO,IAAI,CAAC,0BAA0B,CAAC,IAAI,CACzC,IAAI,CAAC,0BAA0B,CAAC,KAAK,CAAC,QAAQ,EAAE;YAC9C,QAAQ;SACT,CAAC,CACH,CAAC;IACJ,CAAC;IAEO,KAAK,CAAC,yBAAyB,CACrC,EAAU;QAEV,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,yBAAyB,CAAC,OAAO,CAAC;YAC1D,KAAK,EAAE,EAAE,EAAE,EAAE;SACd,CAAC,CAAC;QAEH,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,IAAI,0BAAiB,CACzB,6BAA6B,EAAE,gBAAgB,CAChD,CAAC;QACJ,CAAC;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;IAEO,KAAK,CAAC,qBAAqB,CAAC,UAAkB;QACpD,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,yBAAyB;aAC7C,kBAAkB,CAAC,SAAS,CAAC;aAC7B,MAAM,CAAC,sBAAsB,EAAE,YAAY,CAAC;aAC5C,KAAK,CAAC,mCAAmC,EAAE,EAAE,UAAU,EAAE,CAAC;aAC1D,SAAS,EAAiB,CAAC;QAC9B,MAAM,UAAU,GACd,OAAO,GAAG,EAAE,UAAU,KAAK,QAAQ;YACjC,CAAC,CAAC,GAAG,CAAC,UAAU;YAChB,CAAC,CAAC,MAAM,CAAC,GAAG,EAAE,UAAU,IAAI,CAAC,CAAC,CAAC;QAEnC,OAAO,UAAU,GAAG,CAAC,CAAC;IACxB,CAAC;IAEO,8BAA8B,CAAC,KAAa;QAClD,IAAI,CAAC;YACH,OAAO,IAAA,2DAA2B,EAAC,KAAK,CAAC,CAAC;QAC5C,CAAC;QAAC,OAAO,KAAc,EAAE,CAAC;YACxB,MAAM,IAAI,4BAAmB,CAC3B,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,6BAA6B,CACvE,CAAC;QACJ,CAAC;IACH,CAAC;CACF,CAAA;AAjlBY,0CAAe;0BAAf,eAAe;IAD3B,IAAA,mBAAU,GAAE;IAGR,mBAAA,IAAA,0BAAgB,EAAC,iDAAsB,CAAC,CAAA;IAExC,mBAAA,IAAA,0BAAgB,EAAC,kEAA8B,CAAC,CAAA;IAEhD,mBAAA,IAAA,0BAAgB,EAAC,gEAA6B,CAAC,CAAA;IAE/C,mBAAA,IAAA,0BAAgB,EAAC,4DAA2B,CAAC,CAAA;6CALT,oBAAU;QAEF,oBAAU;QAEX,oBAAU;QAEJ,oBAAU;QACzB,oCAAgB;GAV1C,eAAe,CAilB3B;AAED,SAAS,uBAAuB,CAC9B,KAAgC;IAEhC,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,WAAW,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC;IAErC,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC;QAC3B,MAAM,IAAI,4BAAmB,CAAC,8BAA8B,CAAC,CAAC;IAChE,CAAC;IAED,OAAO,WAAW,CAAC;AACrB,CAAC;AAED,SAAS,SAAS,CAAC,KAAa;IAC9B,IAAI,CAAC;QACH,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,CAAY,CAAC;IACtC,CAAC;IAAC,OAAO,KAAc,EAAE,CAAC;QACxB,MAAM,IAAI,4BAAmB,CAC3B,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,oBAAoB,CAC9D,CAAC;IACJ,CAAC;AACH,CAAC;AAED,SAAS,aAAa,CAAC,IAAY;IACjC,OAAO,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;AACvD,CAAC;AAED,SAAS,iBAAiB,CAAC,QAAgB;IACzC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,QAAQ,IAAI,CAAC,EAAE,CAAC;QACjD,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,OAAO,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC;AACjC,CAAC;AAED,SAAS,2BAA2B,CAClC,OAIE;IAIF,MAAM,mBAAmB,GAA6C;QACpE,SAAS,EAAE,IAAA,gBAAM,GAAE;KACpB,CAAC;IACF,MAAM,WAAW,GACf,OAAO,CAAC,MAAM,KAAK,+CAA8B,CAAC,KAAK;QACrD,CAAC,CAAC,EAAE,gBAAgB,EAAE,IAAA,gBAAM,GAAE,EAAE;QAChC,CAAC,CAAC,EAAE,CAAC;IACT,MAAM,gBAAgB,GACpB,OAAO,CAAC,MAAM,KAAK,+CAA8B,CAAC,SAAS;QACzD,CAAC,CAAC,EAAE,gBAAgB,EAAE,IAAA,aAAG,EAAC,IAAA,gBAAM,GAAE,CAAC,EAAE;QACrC,CAAC,CAAC,EAAE,CAAC;IACT,MAAM,SAAS,GAA6C;QAC1D,GAAG,mBAAmB;QACtB,GAAG,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACjE,GAAG,WAAW;QACd,GAAG,gBAAgB;KACpB,CAAC;IAEF,MAAM,iBAAiB,GAAG,OAAO,CAAC,UAAU,EAAE,IAAI,EAAE,CAAC;IAErD,IAAI,CAAC,iBAAiB,EAAE,CAAC;QACvB,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,MAAM,aAAa,GAAG,IAAI,iBAAiB,GAAG,CAAC;IAE/C,OAAO;QACL,EAAE,GAAG,SAAS,EAAE,IAAI,EAAE,IAAA,eAAK,EAAC,aAAa,CAAC,EAAE;QAC5C,EAAE,GAAG,SAAS,EAAE,QAAQ,EAAE,IAAA,eAAK,EAAC,aAAa,CAAC,EAAE;QAChD,EAAE,GAAG,SAAS,EAAE,WAAW,EAAE,IAAA,eAAK,EAAC,aAAa,CAAC,EAAE;KACpD,CAAC;AACJ,CAAC;AAED,SAAS,mCAAmC,CAC1C,OAGE;IAIF,MAAM,WAAW,GACf,OAAO,CAAC,MAAM,KAAK,mDAAkC,CAAC,GAAG;QACvD,CAAC,CAAC,EAAE;QACJ,CAAC,CAAC,OAAO,CAAC,MAAM,KAAK,mDAAkC,CAAC,QAAQ;YAC9D,CAAC,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE;YACrB,CAAC,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;IAC3B,MAAM,iBAAiB,GAAG,OAAO,CAAC,UAAU,EAAE,IAAI,EAAE,CAAC;IAErD,IAAI,CAAC,iBAAiB,EAAE,CAAC;QACvB,OAAO,WAAW,CAAC;IACrB,CAAC;IAED,MAAM,aAAa,GAAG,IAAI,iBAAiB,GAAG,CAAC;IAE/C,OAAO;QACL,EAAE,GAAG,WAAW,EAAE,IAAI,EAAE,IAAA,eAAK,EAAC,aAAa,CAAC,EAAE;QAC9C,EAAE,GAAG,WAAW,EAAE,WAAW,EAAE,IAAA,eAAK,EAAC,aAAa,CAAC,EAAE;KACtD,CAAC;AACJ,CAAC;AAED,SAAS,wBAAwB,CAC/B,UAA8B,EAC9B,kBAAiC;IAKjC,OAAO;QACL,EAAE,UAAU,EAAE,kBAAkB,EAAE,KAAK,EAAE,oBAAoB,EAAE;QAC/D,GAAG,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;YACjC,UAAU,EAAE,IAAI,CAAC,IAAI,CAAC,SAAS;YAC/B,KAAK,EAAE,kBAAkB,IAAI,CAAC,EAAE,iBAAiB;SAClD,CAAC,CAAC;QACH,GAAG,UAAU,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;YACnC,IAAI,IAAI,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;gBAC7B,OAAO;oBACL;wBACE,UAAU,EAAE,IAAI,CAAC,IAAI,CAAC,cAAc;wBACpC,KAAK,EAAE,kBAAkB,IAAI,CAAC,EAAE,sBAAsB;qBACvD;oBACD,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,IAAI,KAAK,YAAY;wBAClD,CAAC,CAAC;4BACE;gCACE,UAAU,EAAE,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,UAAU;gCACjD,KAAK,EAAE,kBAAkB,IAAI,CAAC,EAAE,mCAAmC;6BACpE;yBACF;wBACH,CAAC,CAAC,EAAE,CAAC;iBACR,CAAC;YACJ,CAAC;YAED,IAAI,IAAI,CAAC,IAAI,KAAK,aAAa,EAAE,CAAC;gBAChC,OAAO;oBACL;wBACE,UAAU,EAAE,IAAI,CAAC,IAAI,CAAC,cAAc;wBACpC,KAAK,EAAE,kBAAkB,IAAI,CAAC,EAAE,sBAAsB;qBACvD;oBACD,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,KAAK,SAAS;wBACrC,CAAC,CAAC;4BACE;gCACE,UAAU,EAAE,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO;gCACpC,KAAK,EAAE,kBAAkB,IAAI,CAAC,EAAE,sBAAsB;6BACvD;yBACF;wBACH,CAAC,CAAC,EAAE,CAAC;oBACP,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,KAAK,gBAAgB;wBAC5C,CAAC,CAAC;4BACE;gCACE,UAAU,EAAE,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK;gCAClC,KAAK,EAAE,kBAAkB,IAAI,CAAC,EAAE,oBAAoB;6BACrD;yBACF;wBACH,CAAC,CAAC,EAAE,CAAC;iBACR,CAAC;YACJ,CAAC;YAED,OAAO,EAAE,CAAC;QACZ,CAAC,CAAC;KACH,CAAC;AACJ,CAAC;AAED,SAAS,QAAQ,CAAC,KAAc;IAC9B,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;AAC9E,CAAC"}
|
|
1
|
+
{"version":3,"file":"template.service.js","sourceRoot":"","sources":["../../../../../../libs/bpm-core/src/lib/template/template.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -11,6 +11,7 @@ const form_definition_version_entity_1 = require("../form/form-definition-versio
|
|
|
11
11
|
const form_enums_1 = require("../form/form.enums");
|
|
12
12
|
const notification_service_1 = require("../notification/notification.service");
|
|
13
13
|
const notification_entity_1 = require("../notification/notification.entity");
|
|
14
|
+
const notification_enums_1 = require("../notification/notification.enums");
|
|
14
15
|
const signature_service_1 = require("../signature/signature.service");
|
|
15
16
|
const condition_service_1 = require("../condition/condition.service");
|
|
16
17
|
const manager_resolution_entity_1 = require("../organization/manager-resolution.entity");
|
|
@@ -270,6 +271,13 @@ let WorkflowEngineService = class WorkflowEngineService {
|
|
|
270
271
|
}));
|
|
271
272
|
if (input.action === workflow_engine_enums_1.TaskDecisionActionEnum.TRANSFERRED) {
|
|
272
273
|
await this.transferTask(manager, instance, claimedTask, decision, signature, transferToMemberId, decisionComment, decidedAt, claimedCandidate);
|
|
274
|
+
await this.notificationService.resolveTaskNotifications({
|
|
275
|
+
actingMemberId: input.decidedByMemberId,
|
|
276
|
+
manager,
|
|
277
|
+
resolution: notification_enums_1.NotificationResolutionEnum.TRANSFERRED,
|
|
278
|
+
supersedeOthers: true,
|
|
279
|
+
taskId: claimedTask.id,
|
|
280
|
+
});
|
|
273
281
|
return decision;
|
|
274
282
|
}
|
|
275
283
|
const nextCandidateRows = await this.markTaskCandidateDecision({
|
|
@@ -309,6 +317,19 @@ let WorkflowEngineService = class WorkflowEngineService {
|
|
|
309
317
|
},
|
|
310
318
|
taskId: completedTask.id,
|
|
311
319
|
}));
|
|
320
|
+
// Resolve the recipient's "待簽" notification so its inline 同意/拒絕
|
|
321
|
+
// actions disappear once the task is decided. When the task has ended
|
|
322
|
+
// (rejected / returned, or an approval that completed it), every other
|
|
323
|
+
// candidate's notification is superseded too; a non-completing approval
|
|
324
|
+
// on a multi-approver task leaves the remaining approvers' open.
|
|
325
|
+
const taskEnded = input.action !== workflow_engine_enums_1.TaskDecisionActionEnum.APPROVED || shouldCompleteTask;
|
|
326
|
+
await this.notificationService.resolveTaskNotifications({
|
|
327
|
+
actingMemberId: input.decidedByMemberId,
|
|
328
|
+
manager,
|
|
329
|
+
resolution: mapDecisionToResolution(input.action),
|
|
330
|
+
supersedeOthers: taskEnded,
|
|
331
|
+
taskId: completedTask.id,
|
|
332
|
+
});
|
|
312
333
|
if (input.action === workflow_engine_enums_1.TaskDecisionActionEnum.APPROVED &&
|
|
313
334
|
shouldCompleteTask) {
|
|
314
335
|
const token = await tokenRepository.findOne({
|
|
@@ -361,6 +382,10 @@ let WorkflowEngineService = class WorkflowEngineService {
|
|
|
361
382
|
}
|
|
362
383
|
const cancelledAt = new Date();
|
|
363
384
|
await this.consumeOpenRuntimeState(manager, instance, cancelledAt, workflow_engine_enums_1.TaskStatusEnum.CANCELLED);
|
|
385
|
+
await this.notificationService.supersedeInstanceTaskNotifications({
|
|
386
|
+
instanceId: instance.id,
|
|
387
|
+
manager,
|
|
388
|
+
});
|
|
364
389
|
const cancelledInstance = await instanceRepository.save({
|
|
365
390
|
...instance,
|
|
366
391
|
completedAt: cancelledAt,
|
|
@@ -2782,4 +2807,16 @@ function readDryRunStepMessage(node, entryConditionMet) {
|
|
|
2782
2807
|
}
|
|
2783
2808
|
return '節點條件通過。';
|
|
2784
2809
|
}
|
|
2810
|
+
function mapDecisionToResolution(action) {
|
|
2811
|
+
switch (action) {
|
|
2812
|
+
case workflow_engine_enums_1.TaskDecisionActionEnum.APPROVED:
|
|
2813
|
+
return notification_enums_1.NotificationResolutionEnum.APPROVED;
|
|
2814
|
+
case workflow_engine_enums_1.TaskDecisionActionEnum.REJECTED:
|
|
2815
|
+
return notification_enums_1.NotificationResolutionEnum.REJECTED;
|
|
2816
|
+
case workflow_engine_enums_1.TaskDecisionActionEnum.RETURNED:
|
|
2817
|
+
return notification_enums_1.NotificationResolutionEnum.RETURNED;
|
|
2818
|
+
case workflow_engine_enums_1.TaskDecisionActionEnum.TRANSFERRED:
|
|
2819
|
+
return notification_enums_1.NotificationResolutionEnum.TRANSFERRED;
|
|
2820
|
+
}
|
|
2821
|
+
}
|
|
2785
2822
|
//# sourceMappingURL=workflow-engine.service.js.map
|