@rytass/bpm-core-nestjs-module 0.1.10 → 0.3.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 +92 -0
- package/README.md +43 -0
- package/package.json +3 -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/0000000017000-adhoc-directives.d.ts +6 -0
- package/src/lib/migrations/0000000017000-adhoc-directives.js +53 -0
- package/src/lib/migrations/0000000017000-adhoc-directives.js.map +1 -0
- package/src/lib/migrations/index.d.ts +4 -0
- package/src/lib/migrations/index.js +12 -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 +40 -0
- package/src/lib/notification/notification.service.js +92 -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/adhoc-directive.entity.d.ts +31 -0
- package/src/lib/workflow-engine/adhoc-directive.entity.js +105 -0
- package/src/lib/workflow-engine/adhoc-directive.entity.js.map +1 -0
- package/src/lib/workflow-engine/adhoc.enums.d.ts +21 -0
- package/src/lib/workflow-engine/adhoc.enums.js +42 -0
- package/src/lib/workflow-engine/adhoc.enums.js.map +1 -0
- package/src/lib/workflow-engine/dto/adhoc-notification.input.d.ts +6 -0
- package/src/lib/workflow-engine/dto/adhoc-notification.input.js +28 -0
- package/src/lib/workflow-engine/dto/adhoc-notification.input.js.map +1 -0
- package/src/lib/workflow-engine/dto/adhoc-target.input.d.ts +16 -0
- package/src/lib/workflow-engine/dto/adhoc-target.input.js +61 -0
- package/src/lib/workflow-engine/dto/adhoc-target.input.js.map +1 -0
- package/src/lib/workflow-engine/index.d.ts +4 -0
- package/src/lib/workflow-engine/index.js +4 -0
- package/src/lib/workflow-engine/index.js.map +1 -1
- package/src/lib/workflow-engine/task.entity.d.ts +5 -0
- package/src/lib/workflow-engine/task.entity.js +21 -0
- package/src/lib/workflow-engine/task.entity.js.map +1 -1
- package/src/lib/workflow-engine/workflow-engine.enums.d.ts +3 -0
- package/src/lib/workflow-engine/workflow-engine.enums.js +3 -0
- package/src/lib/workflow-engine/workflow-engine.enums.js.map +1 -1
- package/src/lib/workflow-engine/workflow-engine.module.js +2 -0
- package/src/lib/workflow-engine/workflow-engine.module.js.map +1 -1
- package/src/lib/workflow-engine/workflow-engine.mutations.d.ts +10 -0
- package/src/lib/workflow-engine/workflow-engine.mutations.js +112 -0
- package/src/lib/workflow-engine/workflow-engine.mutations.js.map +1 -1
- package/src/lib/workflow-engine/workflow-engine.queries.d.ts +2 -0
- package/src/lib/workflow-engine/workflow-engine.queries.js +12 -0
- package/src/lib/workflow-engine/workflow-engine.queries.js.map +1 -1
- package/src/lib/workflow-engine/workflow-engine.service.d.ts +44 -1
- package/src/lib/workflow-engine/workflow-engine.service.js +817 -41
- package/src/lib/workflow-engine/workflow-engine.service.js.map +1 -1
|
@@ -14,29 +14,33 @@ let FormService = class FormService {
|
|
|
14
14
|
this.formDefinitionRepository = formDefinitionRepository;
|
|
15
15
|
this.formDefinitionVersionRepository = formDefinitionVersionRepository;
|
|
16
16
|
}
|
|
17
|
-
async createFormDefinition(input) {
|
|
17
|
+
async createFormDefinition(input, manager) {
|
|
18
18
|
const schemas = this.parseSchemasOrThrow(input.schemaJson, input.uiSchemaJson);
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
19
|
+
const run = (txManager) => this.createFormDefinitionWithManager(txManager, input, schemas);
|
|
20
|
+
return manager
|
|
21
|
+
? run(manager)
|
|
22
|
+
: this.formDefinitionRepository.manager.transaction(run);
|
|
23
|
+
}
|
|
24
|
+
async createFormDefinitionWithManager(manager, input, schemas) {
|
|
25
|
+
const definitionRepository = manager.getRepository(form_definition_entity_1.FormDefinitionEntity);
|
|
26
|
+
const versionRepository = manager.getRepository(form_definition_version_entity_1.FormDefinitionVersionEntity);
|
|
27
|
+
const definition = await definitionRepository.save(definitionRepository.create({
|
|
28
|
+
createdByMemberId: input.createdByMemberId,
|
|
29
|
+
currentVersionId: null,
|
|
30
|
+
description: input.description,
|
|
31
|
+
name: input.name,
|
|
32
|
+
}));
|
|
33
|
+
await versionRepository.save(versionRepository.create({
|
|
34
|
+
archivedAt: null,
|
|
35
|
+
formDefinitionId: definition.id,
|
|
36
|
+
publishedAt: null,
|
|
37
|
+
publishedByMemberId: null,
|
|
38
|
+
schema: schemas.schema,
|
|
39
|
+
status: form_enums_1.FormDefinitionVersionStatusEnum.DRAFT,
|
|
40
|
+
uiSchema: schemas.uiSchema,
|
|
41
|
+
version: 1,
|
|
42
|
+
}));
|
|
43
|
+
return definition;
|
|
40
44
|
}
|
|
41
45
|
async updateFormDefinition(input) {
|
|
42
46
|
const existing = await this.getFormDefinitionOrThrow(input.id);
|
|
@@ -82,77 +86,108 @@ let FormService = class FormService {
|
|
|
82
86
|
async getFormDefinitionVersion(id) {
|
|
83
87
|
return this.getFormDefinitionVersionOrThrow(id);
|
|
84
88
|
}
|
|
85
|
-
async updateFormDefinitionDraft(input) {
|
|
86
|
-
const
|
|
89
|
+
async updateFormDefinitionDraft(input, manager) {
|
|
90
|
+
const versionRepository = this.formVersions(manager);
|
|
91
|
+
const existing = await this.getFormDefinitionVersionOrThrow(input.versionId, manager);
|
|
87
92
|
if (existing.status !== form_enums_1.FormDefinitionVersionStatusEnum.DRAFT) {
|
|
88
93
|
throw new common_1.ConflictException('Only draft form definition versions can be updated');
|
|
89
94
|
}
|
|
90
95
|
const schemas = this.parseSchemasOrThrow(input.schemaJson, input.uiSchemaJson);
|
|
91
|
-
const next =
|
|
96
|
+
const next = versionRepository.merge(existing, {
|
|
92
97
|
schema: schemas.schema,
|
|
93
98
|
uiSchema: schemas.uiSchema,
|
|
94
99
|
});
|
|
95
|
-
return
|
|
100
|
+
return versionRepository.save(next);
|
|
96
101
|
}
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
102
|
+
/**
|
|
103
|
+
* Publishes the given form content as the current version atomically.
|
|
104
|
+
*
|
|
105
|
+
* Form definitions do not keep a draft in parallel with a published
|
|
106
|
+
* version: before the first publish the single draft is updated in place
|
|
107
|
+
* and published; afterwards every save publishes a brand-new version
|
|
108
|
+
* (version + 1) directly. Saving content identical to the current
|
|
109
|
+
* published version is a no-op that returns the current version.
|
|
110
|
+
*/
|
|
111
|
+
async publishFormDefinitionContent(input, publishedByMemberId, manager) {
|
|
112
|
+
const schemas = this.parseSchemasOrThrow(input.schemaJson, input.uiSchemaJson);
|
|
113
|
+
const run = async (txManager) => {
|
|
114
|
+
const definition = await this.getFormDefinitionOrThrow(input.formDefinitionId, txManager);
|
|
115
|
+
const versionRepository = txManager.getRepository(form_definition_version_entity_1.FormDefinitionVersionEntity);
|
|
116
|
+
const draft = await this.findDraftVersion(definition.id, txManager);
|
|
117
|
+
if (draft) {
|
|
118
|
+
const updated = await versionRepository.save(versionRepository.merge(draft, {
|
|
119
|
+
schema: schemas.schema,
|
|
120
|
+
uiSchema: schemas.uiSchema,
|
|
121
|
+
}));
|
|
122
|
+
return this.publishFormDefinitionVersionWithManager(txManager, updated, publishedByMemberId);
|
|
123
|
+
}
|
|
124
|
+
const current = definition.currentVersionId
|
|
125
|
+
? await this.getFormDefinitionVersionOrThrow(definition.currentVersionId, txManager)
|
|
126
|
+
: null;
|
|
127
|
+
if (current && hasSameFormContent(current, schemas)) {
|
|
128
|
+
return current;
|
|
129
|
+
}
|
|
130
|
+
const created = await versionRepository.save(versionRepository.create({
|
|
131
|
+
archivedAt: null,
|
|
101
132
|
formDefinitionId: definition.id,
|
|
133
|
+
publishedAt: null,
|
|
134
|
+
publishedByMemberId: null,
|
|
135
|
+
schema: schemas.schema,
|
|
136
|
+
status: form_enums_1.FormDefinitionVersionStatusEnum.DRAFT,
|
|
137
|
+
uiSchema: schemas.uiSchema,
|
|
138
|
+
version: await this.readNextVersionNumber(definition.id, txManager),
|
|
139
|
+
}));
|
|
140
|
+
return this.publishFormDefinitionVersionWithManager(txManager, created, publishedByMemberId);
|
|
141
|
+
};
|
|
142
|
+
return manager
|
|
143
|
+
? run(manager)
|
|
144
|
+
: this.formDefinitionRepository.manager.transaction(run);
|
|
145
|
+
}
|
|
146
|
+
async findDraftVersion(formDefinitionId, manager) {
|
|
147
|
+
return this.formVersions(manager).findOne({
|
|
148
|
+
where: {
|
|
149
|
+
formDefinitionId,
|
|
102
150
|
status: form_enums_1.FormDefinitionVersionStatusEnum.DRAFT,
|
|
103
151
|
},
|
|
104
152
|
});
|
|
105
|
-
if (existingDraft) {
|
|
106
|
-
throw new common_1.ConflictException('A draft form definition version already exists');
|
|
107
|
-
}
|
|
108
|
-
const source = definition.currentVersionId
|
|
109
|
-
? await this.getFormDefinitionVersionOrThrow(definition.currentVersionId)
|
|
110
|
-
: null;
|
|
111
|
-
const nextVersion = await this.readNextVersionNumber(definition.id);
|
|
112
|
-
return this.formDefinitionVersionRepository.save(this.formDefinitionVersionRepository.create({
|
|
113
|
-
archivedAt: null,
|
|
114
|
-
formDefinitionId: definition.id,
|
|
115
|
-
publishedAt: null,
|
|
116
|
-
publishedByMemberId: null,
|
|
117
|
-
schema: source?.schema ?? form_schema_validator_1.EMPTY_FORM_SCHEMA,
|
|
118
|
-
status: form_enums_1.FormDefinitionVersionStatusEnum.DRAFT,
|
|
119
|
-
uiSchema: source?.uiSchema ?? form_schema_validator_1.EMPTY_FORM_UI_SCHEMA,
|
|
120
|
-
version: nextVersion,
|
|
121
|
-
}));
|
|
122
153
|
}
|
|
123
|
-
async publishFormDefinitionVersion(versionId, publishedByMemberId) {
|
|
124
|
-
const version = await this.getFormDefinitionVersionOrThrow(versionId);
|
|
154
|
+
async publishFormDefinitionVersion(versionId, publishedByMemberId, manager) {
|
|
155
|
+
const version = await this.getFormDefinitionVersionOrThrow(versionId, manager);
|
|
125
156
|
if (version.status !== form_enums_1.FormDefinitionVersionStatusEnum.DRAFT) {
|
|
126
157
|
throw new common_1.ConflictException('Only draft form definition versions can be published');
|
|
127
158
|
}
|
|
128
159
|
this.parseSchemasOrThrow(JSON.stringify(version.schema), JSON.stringify(version.uiSchema));
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
archivedAt:
|
|
146
|
-
|
|
147
|
-
publishedByMemberId: publishedByMemberId ?? null,
|
|
148
|
-
status: form_enums_1.FormDefinitionVersionStatusEnum.PUBLISHED,
|
|
160
|
+
const run = (txManager) => this.publishFormDefinitionVersionWithManager(txManager, version, publishedByMemberId);
|
|
161
|
+
return manager
|
|
162
|
+
? run(manager)
|
|
163
|
+
: this.formDefinitionRepository.manager.transaction(run);
|
|
164
|
+
}
|
|
165
|
+
async publishFormDefinitionVersionWithManager(manager, version, publishedByMemberId) {
|
|
166
|
+
const definitionRepository = manager.getRepository(form_definition_entity_1.FormDefinitionEntity);
|
|
167
|
+
const versionRepository = manager.getRepository(form_definition_version_entity_1.FormDefinitionVersionEntity);
|
|
168
|
+
const definition = await definitionRepository.findOne({
|
|
169
|
+
where: { deletedAt: (0, typeorm_2.IsNull)(), id: version.formDefinitionId },
|
|
170
|
+
});
|
|
171
|
+
if (!definition) {
|
|
172
|
+
throw new common_1.NotFoundException(`Form definition ${version.formDefinitionId} was not found`);
|
|
173
|
+
}
|
|
174
|
+
if (definition.currentVersionId) {
|
|
175
|
+
await versionRepository.update({ id: definition.currentVersionId }, {
|
|
176
|
+
archivedAt: new Date(),
|
|
177
|
+
status: form_enums_1.FormDefinitionVersionStatusEnum.ARCHIVED,
|
|
149
178
|
});
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
179
|
+
}
|
|
180
|
+
const published = versionRepository.merge(version, {
|
|
181
|
+
archivedAt: null,
|
|
182
|
+
publishedAt: new Date(),
|
|
183
|
+
publishedByMemberId: publishedByMemberId ?? null,
|
|
184
|
+
status: form_enums_1.FormDefinitionVersionStatusEnum.PUBLISHED,
|
|
155
185
|
});
|
|
186
|
+
const saved = await versionRepository.save(published);
|
|
187
|
+
await definitionRepository.save(definitionRepository.merge(definition, {
|
|
188
|
+
currentVersionId: saved.id,
|
|
189
|
+
}));
|
|
190
|
+
return saved;
|
|
156
191
|
}
|
|
157
192
|
async rollbackFormDefinitionVersion(versionId) {
|
|
158
193
|
const target = await this.getFormDefinitionVersionOrThrow(versionId);
|
|
@@ -193,8 +228,18 @@ let FormService = class FormService {
|
|
|
193
228
|
valid: result.valid,
|
|
194
229
|
};
|
|
195
230
|
}
|
|
196
|
-
|
|
197
|
-
|
|
231
|
+
formDefinitions(manager) {
|
|
232
|
+
return manager
|
|
233
|
+
? manager.getRepository(form_definition_entity_1.FormDefinitionEntity)
|
|
234
|
+
: this.formDefinitionRepository;
|
|
235
|
+
}
|
|
236
|
+
formVersions(manager) {
|
|
237
|
+
return manager
|
|
238
|
+
? manager.getRepository(form_definition_version_entity_1.FormDefinitionVersionEntity)
|
|
239
|
+
: this.formDefinitionVersionRepository;
|
|
240
|
+
}
|
|
241
|
+
async getFormDefinitionOrThrow(id, manager) {
|
|
242
|
+
const entity = await this.formDefinitions(manager).findOne({
|
|
198
243
|
where: { deletedAt: (0, typeorm_2.IsNull)(), id },
|
|
199
244
|
});
|
|
200
245
|
if (!entity) {
|
|
@@ -224,8 +269,8 @@ let FormService = class FormService {
|
|
|
224
269
|
});
|
|
225
270
|
return applyCurrentVersionSummary(definition, version);
|
|
226
271
|
}
|
|
227
|
-
async getFormDefinitionVersionOrThrow(id) {
|
|
228
|
-
const entity = await this.
|
|
272
|
+
async getFormDefinitionVersionOrThrow(id, manager) {
|
|
273
|
+
const entity = await this.formVersions(manager).findOne({
|
|
229
274
|
where: { id },
|
|
230
275
|
});
|
|
231
276
|
if (!entity) {
|
|
@@ -233,8 +278,8 @@ let FormService = class FormService {
|
|
|
233
278
|
}
|
|
234
279
|
return entity;
|
|
235
280
|
}
|
|
236
|
-
async readNextVersionNumber(formDefinitionId) {
|
|
237
|
-
const row = await this.
|
|
281
|
+
async readNextVersionNumber(formDefinitionId, manager) {
|
|
282
|
+
const row = await this.formVersions(manager)
|
|
238
283
|
.createQueryBuilder('version')
|
|
239
284
|
.select('MAX(version.version)', 'maxVersion')
|
|
240
285
|
.where('version.form_definition_id = :formDefinitionId', {
|
|
@@ -287,6 +332,10 @@ function createFormDefinitionWhere(status) {
|
|
|
287
332
|
}
|
|
288
333
|
return { deletedAt: (0, typeorm_2.IsNull)() };
|
|
289
334
|
}
|
|
335
|
+
function hasSameFormContent(version, schemas) {
|
|
336
|
+
return (JSON.stringify(version.schema) === JSON.stringify(schemas.schema) &&
|
|
337
|
+
JSON.stringify(version.uiSchema) === JSON.stringify(schemas.uiSchema));
|
|
338
|
+
}
|
|
290
339
|
function applyCurrentVersionSummary(definition, version) {
|
|
291
340
|
return Object.assign(new form_definition_entity_1.FormDefinitionEntity(), definition, {
|
|
292
341
|
currentVersionCreatedAt: version?.createdAt ?? null,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"form.service.js","sourceRoot":"","sources":["../../../../../../libs/bpm-core/src/lib/form/form.service.ts"],"names":[],"mappings":";;;;AAAA,2CAKwB;AACxB,6CAAmD;AACnD,qCAAwE;AACxE,qEAAgE;AAChE,qFAA+E;AAO/E,6CAGsB;AAEtB,mEAKiC;AAa1B,IAAM,WAAW,GAAjB,MAAM,WAAW;IACtB,YAEmB,wBAA0D,EAE1D,+BAAwE;QAFxE,6BAAwB,GAAxB,wBAAwB,CAAkC;QAE1D,oCAA+B,GAA/B,+BAA+B,CAAyC;IACxF,CAAC;IAEJ,KAAK,CAAC,oBAAoB,CACxB,KAAgC;QAEhC,MAAM,OAAO,GAAG,IAAI,CAAC,mBAAmB,CACtC,KAAK,CAAC,UAAU,EAChB,KAAK,CAAC,YAAY,CACnB,CAAC;QAEF,OAAO,IAAI,CAAC,wBAAwB,CAAC,OAAO,CAAC,WAAW,CACtD,KAAK,EAAE,OAAO,EAAiC,EAAE;YAC/C,MAAM,oBAAoB,GACxB,OAAO,CAAC,aAAa,CAAC,6CAAoB,CAAC,CAAC;YAC9C,MAAM,iBAAiB,GAAG,OAAO,CAAC,aAAa,CAC7C,4DAA2B,CAC5B,CAAC;YACF,MAAM,UAAU,GAAG,MAAM,oBAAoB,CAAC,IAAI,CAChD,oBAAoB,CAAC,MAAM,CAAC;gBAC1B,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,gBAAgB,EAAE,UAAU,CAAC,EAAE;gBAC/B,WAAW,EAAE,IAAI;gBACjB,mBAAmB,EAAE,IAAI;gBACzB,MAAM,EAAE,OAAO,CAAC,MAAM;gBACtB,MAAM,EAAE,4CAA+B,CAAC,KAAK;gBAC7C,QAAQ,EAAE,OAAO,CAAC,QAAQ;gBAC1B,OAAO,EAAE,CAAC;aACX,CAAC,CACH,CAAC;YAEF,OAAO,UAAU,CAAC;QACpB,CAAC,CACF,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,oBAAoB,CACxB,KAAgC;QAEhC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,wBAAwB,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QAC/D,MAAM,IAAI,GAAG,IAAI,CAAC,wBAAwB,CAAC,KAAK,CAAC,QAAQ,EAAE;YACzD,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,wBAAwB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAClD,CAAC;IAED,KAAK,CAAC,mBAAmB,CACvB,UAAsC,EAAE;QAExC,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,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC;YAC3D,KAAK,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE;YAC/C,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,yBAAyB,CAAC,OAAO,CAAC,MAAM,CAAC;SACjD,CAAC,CAAC;QAEH,OAAO,IAAI,CAAC,sBAAsB,CAAC,WAAW,CAAC,CAAC;IAClD,CAAC;IAED,KAAK,CAAC,oBAAoB,CACxB,MAAqC;QAErC,OAAO,IAAI,CAAC,wBAAwB,CAAC,KAAK,CAAC;YACzC,KAAK,EAAE,yBAAyB,CAAC,MAAM,CAAC;SACzC,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,iBAAiB,CAAC,EAAU;QAChC,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,wBAAwB,CAAC,EAAE,CAAC,CAAC;QAE3D,OAAO,IAAI,CAAC,qBAAqB,CAAC,UAAU,CAAC,CAAC;IAChD,CAAC;IAED,KAAK,CAAC,0BAA0B,CAC9B,gBAAwB;QAExB,MAAM,IAAI,CAAC,wBAAwB,CAAC,gBAAgB,CAAC,CAAC;QAEtD,OAAO,IAAI,CAAC,+BAA+B,CAAC,IAAI,CAAC;YAC/C,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE;YAC1B,KAAK,EAAE,EAAE,gBAAgB,EAAE;SAC5B,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,wBAAwB,CAC5B,EAAU;QAEV,OAAO,IAAI,CAAC,+BAA+B,CAAC,EAAE,CAAC,CAAC;IAClD,CAAC;IAED,KAAK,CAAC,yBAAyB,CAC7B,KAAqC;QAErC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,+BAA+B,CACzD,KAAK,CAAC,SAAS,CAChB,CAAC;QAEF,IAAI,QAAQ,CAAC,MAAM,KAAK,4CAA+B,CAAC,KAAK,EAAE,CAAC;YAC9D,MAAM,IAAI,0BAAiB,CACzB,oDAAoD,CACrD,CAAC;QACJ,CAAC;QAED,MAAM,OAAO,GAAG,IAAI,CAAC,mBAAmB,CACtC,KAAK,CAAC,UAAU,EAChB,KAAK,CAAC,YAAY,CACnB,CAAC;QACF,MAAM,IAAI,GAAG,IAAI,CAAC,+BAA+B,CAAC,KAAK,CAAC,QAAQ,EAAE;YAChE,MAAM,EAAE,OAAO,CAAC,MAAM;YACtB,QAAQ,EAAE,OAAO,CAAC,QAAQ;SAC3B,CAAC,CAAC;QAEH,OAAO,IAAI,CAAC,+BAA+B,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACzD,CAAC;IAED,KAAK,CAAC,kBAAkB,CACtB,gBAAwB;QAExB,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,wBAAwB,CAAC,gBAAgB,CAAC,CAAC;QACzE,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,+BAA+B,CAAC,OAAO,CAAC;YACvE,KAAK,EAAE;gBACL,gBAAgB,EAAE,UAAU,CAAC,EAAE;gBAC/B,MAAM,EAAE,4CAA+B,CAAC,KAAK;aAC9C;SACF,CAAC,CAAC;QAEH,IAAI,aAAa,EAAE,CAAC;YAClB,MAAM,IAAI,0BAAiB,CACzB,gDAAgD,CACjD,CAAC;QACJ,CAAC;QAED,MAAM,MAAM,GAAG,UAAU,CAAC,gBAAgB;YACxC,CAAC,CAAC,MAAM,IAAI,CAAC,+BAA+B,CAAC,UAAU,CAAC,gBAAgB,CAAC;YACzE,CAAC,CAAC,IAAI,CAAC;QACT,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,qBAAqB,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;QAEpE,OAAO,IAAI,CAAC,+BAA+B,CAAC,IAAI,CAC9C,IAAI,CAAC,+BAA+B,CAAC,MAAM,CAAC;YAC1C,UAAU,EAAE,IAAI;YAChB,gBAAgB,EAAE,UAAU,CAAC,EAAE;YAC/B,WAAW,EAAE,IAAI;YACjB,mBAAmB,EAAE,IAAI;YACzB,MAAM,EAAE,MAAM,EAAE,MAAM,IAAI,yCAAiB;YAC3C,MAAM,EAAE,4CAA+B,CAAC,KAAK;YAC7C,QAAQ,EAAE,MAAM,EAAE,QAAQ,IAAI,4CAAoB;YAClD,OAAO,EAAE,WAAW;SACrB,CAAC,CACH,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,4BAA4B,CAChC,SAAiB,EACjB,mBAA4B;QAE5B,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,+BAA+B,CAAC,SAAS,CAAC,CAAC;QAEtE,IAAI,OAAO,CAAC,MAAM,KAAK,4CAA+B,CAAC,KAAK,EAAE,CAAC;YAC7D,MAAM,IAAI,0BAAiB,CACzB,sDAAsD,CACvD,CAAC;QACJ,CAAC;QAED,IAAI,CAAC,mBAAmB,CACtB,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,EAC9B,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,QAAQ,CAAC,CACjC,CAAC;QAEF,OAAO,IAAI,CAAC,wBAAwB,CAAC,OAAO,CAAC,WAAW,CACtD,KAAK,EAAE,OAAO,EAAwC,EAAE;YACtD,MAAM,oBAAoB,GACxB,OAAO,CAAC,aAAa,CAAC,6CAAoB,CAAC,CAAC;YAC9C,MAAM,iBAAiB,GAAG,OAAO,CAAC,aAAa,CAC7C,4DAA2B,CAC5B,CAAC;YACF,MAAM,UAAU,GAAG,MAAM,oBAAoB,CAAC,OAAO,CAAC;gBACpD,KAAK,EAAE,EAAE,SAAS,EAAE,IAAA,gBAAM,GAAE,EAAE,EAAE,EAAE,OAAO,CAAC,gBAAgB,EAAE;aAC7D,CAAC,CAAC;YAEH,IAAI,CAAC,UAAU,EAAE,CAAC;gBAChB,MAAM,IAAI,0BAAiB,CACzB,mBAAmB,OAAO,CAAC,gBAAgB,gBAAgB,CAC5D,CAAC;YACJ,CAAC;YAED,IAAI,UAAU,CAAC,gBAAgB,EAAE,CAAC;gBAChC,MAAM,iBAAiB,CAAC,MAAM,CAC5B,EAAE,EAAE,EAAE,UAAU,CAAC,gBAAgB,EAAE,EACnC;oBACE,UAAU,EAAE,IAAI,IAAI,EAAE;oBACtB,MAAM,EAAE,4CAA+B,CAAC,QAAQ;iBACjD,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,4CAA+B,CAAC,SAAS;aAClD,CAAC,CAAC;YACH,MAAM,KAAK,GAAG,MAAM,iBAAiB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YACtD,MAAM,oBAAoB,CAAC,IAAI,CAC7B,oBAAoB,CAAC,KAAK,CAAC,UAAU,EAAE;gBACrC,gBAAgB,EAAE,KAAK,CAAC,EAAE;aAC3B,CAAC,CACH,CAAC;YAEF,OAAO,KAAK,CAAC;QACf,CAAC,CACF,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,6BAA6B,CACjC,SAAiB;QAEjB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,+BAA+B,CAAC,SAAS,CAAC,CAAC;QAErE,IAAI,MAAM,CAAC,MAAM,KAAK,4CAA+B,CAAC,KAAK,EAAE,CAAC;YAC5D,MAAM,IAAI,0BAAiB,CACzB,2DAA2D,CAC5D,CAAC;QACJ,CAAC;QAED,OAAO,IAAI,CAAC,wBAAwB,CAAC,OAAO,CAAC,WAAW,CACtD,KAAK,EAAE,OAAO,EAAwC,EAAE;YACtD,MAAM,oBAAoB,GACxB,OAAO,CAAC,aAAa,CAAC,6CAAoB,CAAC,CAAC;YAC9C,MAAM,iBAAiB,GAAG,OAAO,CAAC,aAAa,CAC7C,4DAA2B,CAC5B,CAAC;YACF,MAAM,UAAU,GAAG,MAAM,oBAAoB,CAAC,OAAO,CAAC;gBACpD,KAAK,EAAE,EAAE,SAAS,EAAE,IAAA,gBAAM,GAAE,EAAE,EAAE,EAAE,MAAM,CAAC,gBAAgB,EAAE;aAC5D,CAAC,CAAC;YAEH,IAAI,CAAC,UAAU,EAAE,CAAC;gBAChB,MAAM,IAAI,0BAAiB,CACzB,mBAAmB,MAAM,CAAC,gBAAgB,gBAAgB,CAC3D,CAAC;YACJ,CAAC;YAED,IACE,UAAU,CAAC,gBAAgB;gBAC3B,UAAU,CAAC,gBAAgB,KAAK,MAAM,CAAC,EAAE,EACzC,CAAC;gBACD,MAAM,iBAAiB,CAAC,MAAM,CAC5B,EAAE,EAAE,EAAE,UAAU,CAAC,gBAAgB,EAAE,EACnC;oBACE,UAAU,EAAE,IAAI,IAAI,EAAE;oBACtB,MAAM,EAAE,4CAA+B,CAAC,QAAQ;iBACjD,CACF,CAAC;YACJ,CAAC;YAED,MAAM,QAAQ,GAAG,iBAAiB,CAAC,KAAK,CAAC,MAAM,EAAE;gBAC/C,UAAU,EAAE,IAAI;gBAChB,MAAM,EAAE,4CAA+B,CAAC,SAAS;aAClD,CAAC,CAAC;YACH,MAAM,KAAK,GAAG,MAAM,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YACrD,MAAM,oBAAoB,CAAC,IAAI,CAC7B,oBAAoB,CAAC,KAAK,CAAC,UAAU,EAAE;gBACrC,gBAAgB,EAAE,KAAK,CAAC,EAAE;aAC3B,CAAC,CACH,CAAC;YAEF,OAAO,KAAK,CAAC;QACf,CAAC,CACF,CAAC;IACJ,CAAC;IAED,cAAc,CAAC,KAA0B;QACvC,MAAM,MAAM,GAAG,IAAA,0CAAkB,EAAC,KAAK,CAAC,UAAU,EAAE,KAAK,CAAC,YAAY,CAAC,CAAC;QAExE,OAAO;YACL,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,KAAK,EAAE,MAAM,CAAC,KAAK;SACpB,CAAC;IACJ,CAAC;IAEO,KAAK,CAAC,wBAAwB,CACpC,EAAU;QAEV,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,wBAAwB,CAAC,OAAO,CAAC;YACzD,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,mBAAmB,EAAE,gBAAgB,CAAC,CAAC;QACrE,CAAC;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;IAEO,KAAK,CAAC,sBAAsB,CAClC,WAA4C;QAE5C,MAAM,iBAAiB,GAAG,WAAW,CAAC,OAAO,CAAC,CAAC,UAAU,EAAE,EAAE,CAC3D,UAAU,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,EAAE,CACjE,CAAC;QAEF,IAAI,iBAAiB,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACnC,OAAO,WAAW,CAAC;QACrB,CAAC;QAED,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,+BAA+B,CAAC,MAAM,CAAC;YACjE,EAAE,EAAE,IAAA,YAAE,EAAC,iBAAiB,CAAC;SAC1B,CAAC,CAAC;QACH,MAAM,WAAW,GAAG,IAAI,GAAG,CACzB,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC,CACjD,CAAC;QAEF,OAAO,WAAW,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE,CACpC,0BAA0B,CACxB,UAAU,EACV,UAAU,CAAC,gBAAgB;YACzB,CAAC,CAAC,CAAC,WAAW,CAAC,GAAG,CAAC,UAAU,CAAC,gBAAgB,CAAC,IAAI,IAAI,CAAC;YACxD,CAAC,CAAC,IAAI,CACT,CACF,CAAC;IACJ,CAAC;IAEO,KAAK,CAAC,qBAAqB,CACjC,UAAgC;QAEhC,IAAI,CAAC,UAAU,CAAC,gBAAgB,EAAE,CAAC;YACjC,OAAO,UAAU,CAAC;QACpB,CAAC;QAED,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,+BAA+B,CAAC,OAAO,CAAC;YACjE,KAAK,EAAE,EAAE,EAAE,EAAE,UAAU,CAAC,gBAAgB,EAAE;SAC3C,CAAC,CAAC;QAEH,OAAO,0BAA0B,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;IACzD,CAAC;IAEO,KAAK,CAAC,+BAA+B,CAC3C,EAAU;QAEV,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,+BAA+B,CAAC,OAAO,CAAC;YAChE,KAAK,EAAE,EAAE,EAAE,EAAE;SACd,CAAC,CAAC;QAEH,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,IAAI,0BAAiB,CACzB,2BAA2B,EAAE,gBAAgB,CAC9C,CAAC;QACJ,CAAC;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;IAEO,KAAK,CAAC,qBAAqB,CACjC,gBAAwB;QAExB,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,+BAA+B;aACnD,kBAAkB,CAAC,SAAS,CAAC;aAC7B,MAAM,CAAC,sBAAsB,EAAE,YAAY,CAAC;aAC5C,KAAK,CAAC,gDAAgD,EAAE;YACvD,gBAAgB;SACjB,CAAC;aACD,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,mBAAmB,CACzB,UAAqC,EACrC,YAAuC;QAEvC,IAAI,CAAC;YACH,OAAO,IAAA,mDAA2B,EAAC,UAAU,EAAE,YAAY,CAAC,CAAC;QAC/D,CAAC;QAAC,OAAO,KAAc,EAAE,CAAC;YACxB,MAAM,IAAI,4BAAmB,CAC3B,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,qBAAqB,CAC/D,CAAC;QACJ,CAAC;IACH,CAAC;CACF,CAAA;AAvZY,kCAAW;sBAAX,WAAW;IADvB,IAAA,mBAAU,GAAE;IAGR,mBAAA,IAAA,0BAAgB,EAAC,6CAAoB,CAAC,CAAA;IAEtC,mBAAA,IAAA,0BAAgB,EAAC,4DAA2B,CAAC,CAAA;6CADH,oBAAU;QAEH,oBAAU;GALnD,WAAW,CAuZvB;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,yBAAyB,CAChC,MAAgD;IAEhD,IAAI,MAAM,KAAK,yCAA4B,CAAC,KAAK,EAAE,CAAC;QAClD,OAAO;YACL,gBAAgB,EAAE,IAAA,gBAAM,GAAE;YAC1B,SAAS,EAAE,IAAA,gBAAM,GAAE;SACpB,CAAC;IACJ,CAAC;IAED,IAAI,MAAM,KAAK,yCAA4B,CAAC,SAAS,EAAE,CAAC;QACtD,OAAO;YACL,gBAAgB,EAAE,IAAA,aAAG,EAAC,IAAA,gBAAM,GAAE,CAAC;YAC/B,SAAS,EAAE,IAAA,gBAAM,GAAE;SACpB,CAAC;IACJ,CAAC;IAED,OAAO,EAAE,SAAS,EAAE,IAAA,gBAAM,GAAE,EAAE,CAAC;AACjC,CAAC;AAED,SAAS,0BAA0B,CACjC,UAAgC,EAChC,OAA2C;IAE3C,OAAO,MAAM,CAAC,MAAM,CAAC,IAAI,6CAAoB,EAAE,EAAE,UAAU,EAAE;QAC3D,uBAAuB,EAAE,OAAO,EAAE,SAAS,IAAI,IAAI;QACnD,oBAAoB,EAAE,OAAO,EAAE,OAAO,IAAI,IAAI;QAC9C,yBAAyB,EAAE,OAAO,EAAE,WAAW,IAAI,IAAI;KACxD,CAAC,CAAC;AACL,CAAC"}
|
|
1
|
+
{"version":3,"file":"form.service.js","sourceRoot":"","sources":["../../../../../../libs/bpm-core/src/lib/form/form.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.NotificationResolution0000000014000 = void 0;
|
|
4
|
+
class NotificationResolution0000000014000 {
|
|
5
|
+
constructor() {
|
|
6
|
+
this.name = 'NotificationResolution0000000014000';
|
|
7
|
+
}
|
|
8
|
+
async up(queryRunner) {
|
|
9
|
+
await queryRunner.query(`
|
|
10
|
+
ALTER TABLE "notifications"
|
|
11
|
+
ADD COLUMN IF NOT EXISTS "resolution" text NULL,
|
|
12
|
+
ADD COLUMN IF NOT EXISTS "resolved_at" timestamptz NULL
|
|
13
|
+
`);
|
|
14
|
+
await queryRunner.query(`
|
|
15
|
+
CREATE INDEX IF NOT EXISTS "IDX_notifications_open_task"
|
|
16
|
+
ON "notifications" ("task_id", "recipient_member_id")
|
|
17
|
+
WHERE "resolution" IS NULL AND "task_id" IS NOT NULL
|
|
18
|
+
`);
|
|
19
|
+
}
|
|
20
|
+
async down(queryRunner) {
|
|
21
|
+
await queryRunner.query('DROP INDEX IF EXISTS "IDX_notifications_open_task"');
|
|
22
|
+
await queryRunner.query(`
|
|
23
|
+
ALTER TABLE "notifications"
|
|
24
|
+
DROP COLUMN IF EXISTS "resolved_at",
|
|
25
|
+
DROP COLUMN IF EXISTS "resolution"
|
|
26
|
+
`);
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
exports.NotificationResolution0000000014000 = NotificationResolution0000000014000;
|
|
30
|
+
//# sourceMappingURL=0000000014000-notification-resolution.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"0000000014000-notification-resolution.js","sourceRoot":"","sources":["../../../../../../libs/bpm-core/src/lib/migrations/0000000014000-notification-resolution.ts"],"names":[],"mappings":";;;AAEA,MAAa,mCAAmC;IAAhD;QACE,SAAI,GAAG,qCAAqC,CAAC;IAyB/C,CAAC;IAvBC,KAAK,CAAC,EAAE,CAAC,WAAwB;QAC/B,MAAM,WAAW,CAAC,KAAK,CAAC;;;;KAIvB,CAAC,CAAC;QACH,MAAM,WAAW,CAAC,KAAK,CAAC;;;;KAIvB,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,WAAwB;QACjC,MAAM,WAAW,CAAC,KAAK,CACrB,oDAAoD,CACrD,CAAC;QACF,MAAM,WAAW,CAAC,KAAK,CAAC;;;;KAIvB,CAAC,CAAC;IACL,CAAC;CACF;AA1BD,kFA0BC"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { MigrationInterface, QueryRunner } from 'typeorm';
|
|
2
|
+
/**
|
|
3
|
+
* Backfill the action-lifecycle of notifications created before the write-side
|
|
4
|
+
* resolution wiring existed. Any TASK_ASSIGNED / TASK_TRANSFERRED notification
|
|
5
|
+
* whose task has already left an actionable state (COMPLETED / CANCELLED /
|
|
6
|
+
* TRANSFERRED) but still has a null `resolution` is marked `SUPERSEDED` (and
|
|
7
|
+
* read), so a decided case can no longer show stale 同意 / 拒絕 actions.
|
|
8
|
+
*
|
|
9
|
+
* Idempotent: the `resolution IS NULL` guard means re-running it is a no-op.
|
|
10
|
+
*/
|
|
11
|
+
export declare class BackfillStaleNotificationResolution0000000015000 implements MigrationInterface {
|
|
12
|
+
name: string;
|
|
13
|
+
up(queryRunner: QueryRunner): Promise<void>;
|
|
14
|
+
down(): Promise<void>;
|
|
15
|
+
}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.BackfillStaleNotificationResolution0000000015000 = void 0;
|
|
4
|
+
/**
|
|
5
|
+
* Backfill the action-lifecycle of notifications created before the write-side
|
|
6
|
+
* resolution wiring existed. Any TASK_ASSIGNED / TASK_TRANSFERRED notification
|
|
7
|
+
* whose task has already left an actionable state (COMPLETED / CANCELLED /
|
|
8
|
+
* TRANSFERRED) but still has a null `resolution` is marked `SUPERSEDED` (and
|
|
9
|
+
* read), so a decided case can no longer show stale 同意 / 拒絕 actions.
|
|
10
|
+
*
|
|
11
|
+
* Idempotent: the `resolution IS NULL` guard means re-running it is a no-op.
|
|
12
|
+
*/
|
|
13
|
+
class BackfillStaleNotificationResolution0000000015000 {
|
|
14
|
+
constructor() {
|
|
15
|
+
this.name = 'BackfillStaleNotificationResolution0000000015000';
|
|
16
|
+
}
|
|
17
|
+
async up(queryRunner) {
|
|
18
|
+
await queryRunner.query(`
|
|
19
|
+
UPDATE "notifications" AS n
|
|
20
|
+
SET "resolution" = 'SUPERSEDED',
|
|
21
|
+
"resolved_at" = now(),
|
|
22
|
+
"status" = 'READ',
|
|
23
|
+
"read_at" = COALESCE(n."read_at", now())
|
|
24
|
+
FROM "tasks" AS t
|
|
25
|
+
WHERE n."task_id" = t."id"
|
|
26
|
+
AND n."type" IN ('TASK_ASSIGNED', 'TASK_TRANSFERRED')
|
|
27
|
+
AND n."resolution" IS NULL
|
|
28
|
+
AND t."status" IN ('COMPLETED', 'CANCELLED', 'TRANSFERRED')
|
|
29
|
+
`);
|
|
30
|
+
}
|
|
31
|
+
async down() {
|
|
32
|
+
// Data backfill — no safe automatic revert (cannot distinguish rows that
|
|
33
|
+
// were backfilled from rows later superseded through normal operation).
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
exports.BackfillStaleNotificationResolution0000000015000 = BackfillStaleNotificationResolution0000000015000;
|
|
37
|
+
//# sourceMappingURL=0000000015000-backfill-stale-notification-resolution.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"0000000015000-backfill-stale-notification-resolution.js","sourceRoot":"","sources":["../../../../../../libs/bpm-core/src/lib/migrations/0000000015000-backfill-stale-notification-resolution.ts"],"names":[],"mappings":";;;AAEA;;;;;;;;GAQG;AACH,MAAa,gDAAgD;IAA7D;QAGE,SAAI,GAAG,kDAAkD,CAAC;IAqB5D,CAAC;IAnBC,KAAK,CAAC,EAAE,CAAC,WAAwB;QAC/B,MAAM,WAAW,CAAC,KAAK,CAAC;;;;;;;;;;;KAWvB,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,IAAI;QACR,yEAAyE;QACzE,wEAAwE;IAC1E,CAAC;CACF;AAxBD,4GAwBC"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { MigrationInterface, QueryRunner } from 'typeorm';
|
|
2
|
+
/**
|
|
3
|
+
* Form definitions no longer keep a DRAFT version in parallel with a
|
|
4
|
+
* published one: after the first publish every save publishes a brand-new
|
|
5
|
+
* version directly (see FormService.publishFormDefinitionContent). Archive
|
|
6
|
+
* the drafts that were forked from already-published definitions under the
|
|
7
|
+
* old model so the data matches the new single-track lifecycle.
|
|
8
|
+
*
|
|
9
|
+
* Idempotent: the `status = 'DRAFT'` guard means re-running it is a no-op.
|
|
10
|
+
*/
|
|
11
|
+
export declare class ArchiveParallelFormDrafts0000000016000 implements MigrationInterface {
|
|
12
|
+
name: string;
|
|
13
|
+
up(queryRunner: QueryRunner): Promise<void>;
|
|
14
|
+
down(): Promise<void>;
|
|
15
|
+
}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ArchiveParallelFormDrafts0000000016000 = void 0;
|
|
4
|
+
/**
|
|
5
|
+
* Form definitions no longer keep a DRAFT version in parallel with a
|
|
6
|
+
* published one: after the first publish every save publishes a brand-new
|
|
7
|
+
* version directly (see FormService.publishFormDefinitionContent). Archive
|
|
8
|
+
* the drafts that were forked from already-published definitions under the
|
|
9
|
+
* old model so the data matches the new single-track lifecycle.
|
|
10
|
+
*
|
|
11
|
+
* Idempotent: the `status = 'DRAFT'` guard means re-running it is a no-op.
|
|
12
|
+
*/
|
|
13
|
+
class ArchiveParallelFormDrafts0000000016000 {
|
|
14
|
+
constructor() {
|
|
15
|
+
this.name = 'ArchiveParallelFormDrafts0000000016000';
|
|
16
|
+
}
|
|
17
|
+
async up(queryRunner) {
|
|
18
|
+
await queryRunner.query(`
|
|
19
|
+
UPDATE "form_definition_versions" AS v
|
|
20
|
+
SET "status" = 'ARCHIVED',
|
|
21
|
+
"archived_at" = COALESCE(v."archived_at", now())
|
|
22
|
+
FROM "form_definitions" AS d
|
|
23
|
+
WHERE v."form_definition_id" = d."id"
|
|
24
|
+
AND v."status" = 'DRAFT'
|
|
25
|
+
AND d."current_version_id" IS NOT NULL
|
|
26
|
+
`);
|
|
27
|
+
}
|
|
28
|
+
async down() {
|
|
29
|
+
// Data cleanup — no safe automatic revert (cannot distinguish rows
|
|
30
|
+
// archived here from versions archived through normal publishing).
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
exports.ArchiveParallelFormDrafts0000000016000 = ArchiveParallelFormDrafts0000000016000;
|
|
34
|
+
//# sourceMappingURL=0000000016000-archive-parallel-form-drafts.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"0000000016000-archive-parallel-form-drafts.js","sourceRoot":"","sources":["../../../../../../libs/bpm-core/src/lib/migrations/0000000016000-archive-parallel-form-drafts.ts"],"names":[],"mappings":";;;AAEA;;;;;;;;GAQG;AACH,MAAa,sCAAsC;IAAnD;QAGE,SAAI,GAAG,wCAAwC,CAAC;IAkBlD,CAAC;IAhBC,KAAK,CAAC,EAAE,CAAC,WAAwB;QAC/B,MAAM,WAAW,CAAC,KAAK,CAAC;;;;;;;;KAQvB,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,IAAI;QACR,mEAAmE;QACnE,mEAAmE;IACrE,CAAC;CACF;AArBD,wFAqBC"}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.AdhocDirectives0000000017000 = void 0;
|
|
4
|
+
class AdhocDirectives0000000017000 {
|
|
5
|
+
constructor() {
|
|
6
|
+
this.name = 'AdhocDirectives0000000017000';
|
|
7
|
+
}
|
|
8
|
+
async up(queryRunner) {
|
|
9
|
+
await queryRunner.query(`
|
|
10
|
+
CREATE TABLE IF NOT EXISTS "task_adhoc_directives" (
|
|
11
|
+
"id" uuid PRIMARY KEY DEFAULT gen_random_uuid(),
|
|
12
|
+
"instance_id" uuid NOT NULL,
|
|
13
|
+
"origin_task_id" uuid NOT NULL,
|
|
14
|
+
"origin_node_id" text NOT NULL,
|
|
15
|
+
"created_by_member_id" text NOT NULL,
|
|
16
|
+
"type" text NOT NULL,
|
|
17
|
+
"target_kind" text NOT NULL,
|
|
18
|
+
"target_value" jsonb NOT NULL,
|
|
19
|
+
"on_reject" text NULL,
|
|
20
|
+
"channels" jsonb NULL,
|
|
21
|
+
"comment" text NULL,
|
|
22
|
+
"status" text NOT NULL DEFAULT 'PENDING',
|
|
23
|
+
"consumed_at" timestamptz NULL,
|
|
24
|
+
"created_at" timestamptz NOT NULL DEFAULT now()
|
|
25
|
+
)
|
|
26
|
+
`);
|
|
27
|
+
await queryRunner.query(`
|
|
28
|
+
CREATE INDEX IF NOT EXISTS "IDX_adhoc_directives_pending"
|
|
29
|
+
ON "task_adhoc_directives" ("instance_id", "type")
|
|
30
|
+
WHERE "status" = 'PENDING'
|
|
31
|
+
`);
|
|
32
|
+
await queryRunner.query(`
|
|
33
|
+
ALTER TABLE "tasks"
|
|
34
|
+
ADD COLUMN IF NOT EXISTS "is_adhoc" boolean NOT NULL DEFAULT false,
|
|
35
|
+
ADD COLUMN IF NOT EXISTS "adhoc_type" text NULL,
|
|
36
|
+
ADD COLUMN IF NOT EXISTS "adhoc_origin_task_id" uuid NULL,
|
|
37
|
+
ADD COLUMN IF NOT EXISTS "adhoc_directive_id" uuid NULL
|
|
38
|
+
`);
|
|
39
|
+
}
|
|
40
|
+
async down(queryRunner) {
|
|
41
|
+
await queryRunner.query(`
|
|
42
|
+
ALTER TABLE "tasks"
|
|
43
|
+
DROP COLUMN IF EXISTS "adhoc_directive_id",
|
|
44
|
+
DROP COLUMN IF EXISTS "adhoc_origin_task_id",
|
|
45
|
+
DROP COLUMN IF EXISTS "adhoc_type",
|
|
46
|
+
DROP COLUMN IF EXISTS "is_adhoc"
|
|
47
|
+
`);
|
|
48
|
+
await queryRunner.query('DROP INDEX IF EXISTS "IDX_adhoc_directives_pending"');
|
|
49
|
+
await queryRunner.query('DROP TABLE IF EXISTS "task_adhoc_directives"');
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
exports.AdhocDirectives0000000017000 = AdhocDirectives0000000017000;
|
|
53
|
+
//# sourceMappingURL=0000000017000-adhoc-directives.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"0000000017000-adhoc-directives.js","sourceRoot":"","sources":["../../../../../../libs/bpm-core/src/lib/migrations/0000000017000-adhoc-directives.ts"],"names":[],"mappings":";;;AAEA,MAAa,4BAA4B;IAAzC;QACE,SAAI,GAAG,8BAA8B,CAAC;IAgDxC,CAAC;IA9CC,KAAK,CAAC,EAAE,CAAC,WAAwB;QAC/B,MAAM,WAAW,CAAC,KAAK,CAAC;;;;;;;;;;;;;;;;;KAiBvB,CAAC,CAAC;QACH,MAAM,WAAW,CAAC,KAAK,CAAC;;;;KAIvB,CAAC,CAAC;QACH,MAAM,WAAW,CAAC,KAAK,CAAC;;;;;;KAMvB,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,WAAwB;QACjC,MAAM,WAAW,CAAC,KAAK,CAAC;;;;;;KAMvB,CAAC,CAAC;QACH,MAAM,WAAW,CAAC,KAAK,CACrB,qDAAqD,CACtD,CAAC;QACF,MAAM,WAAW,CAAC,KAAK,CAAC,8CAA8C,CAAC,CAAC;IAC1E,CAAC;CACF;AAjDD,oEAiDC"}
|
|
@@ -14,3 +14,7 @@ export * from './0000000010000-notification-delivery-state';
|
|
|
14
14
|
export * from './0000000011000-remove-attachment-encryption-key';
|
|
15
15
|
export * from './0000000012000-notification-sla-idempotency';
|
|
16
16
|
export * from './0000000013000-workflow-query-indexes';
|
|
17
|
+
export * from './0000000014000-notification-resolution';
|
|
18
|
+
export * from './0000000015000-backfill-stale-notification-resolution';
|
|
19
|
+
export * from './0000000016000-archive-parallel-form-drafts';
|
|
20
|
+
export * from './0000000017000-adhoc-directives';
|
|
@@ -16,6 +16,10 @@ const _0000000010000_notification_delivery_state_1 = require("./0000000010000-no
|
|
|
16
16
|
const _0000000011000_remove_attachment_encryption_key_1 = require("./0000000011000-remove-attachment-encryption-key");
|
|
17
17
|
const _0000000012000_notification_sla_idempotency_1 = require("./0000000012000-notification-sla-idempotency");
|
|
18
18
|
const _0000000013000_workflow_query_indexes_1 = require("./0000000013000-workflow-query-indexes");
|
|
19
|
+
const _0000000014000_notification_resolution_1 = require("./0000000014000-notification-resolution");
|
|
20
|
+
const _0000000015000_backfill_stale_notification_resolution_1 = require("./0000000015000-backfill-stale-notification-resolution");
|
|
21
|
+
const _0000000016000_archive_parallel_form_drafts_1 = require("./0000000016000-archive-parallel-form-drafts");
|
|
22
|
+
const _0000000017000_adhoc_directives_1 = require("./0000000017000-adhoc-directives");
|
|
19
23
|
exports.BPM_CORE_MIGRATIONS = [
|
|
20
24
|
_0000000000001_enable_postgres_extensions_1.EnablePostgresExtensions0000000000001,
|
|
21
25
|
_0000000001000_identity_organization_foundation_1.IdentityOrganizationFoundation0000000001000,
|
|
@@ -31,6 +35,10 @@ exports.BPM_CORE_MIGRATIONS = [
|
|
|
31
35
|
_0000000011000_remove_attachment_encryption_key_1.RemoveAttachmentEncryptionKey0000000011000,
|
|
32
36
|
_0000000012000_notification_sla_idempotency_1.NotificationSlaIdempotency0000000012000,
|
|
33
37
|
_0000000013000_workflow_query_indexes_1.WorkflowQueryIndexes0000000013000,
|
|
38
|
+
_0000000014000_notification_resolution_1.NotificationResolution0000000014000,
|
|
39
|
+
_0000000015000_backfill_stale_notification_resolution_1.BackfillStaleNotificationResolution0000000015000,
|
|
40
|
+
_0000000016000_archive_parallel_form_drafts_1.ArchiveParallelFormDrafts0000000016000,
|
|
41
|
+
_0000000017000_adhoc_directives_1.AdhocDirectives0000000017000,
|
|
34
42
|
];
|
|
35
43
|
tslib_1.__exportStar(require("./0000000000001-enable-postgres-extensions"), exports);
|
|
36
44
|
tslib_1.__exportStar(require("./0000000001000-identity-organization-foundation"), exports);
|
|
@@ -46,4 +54,8 @@ tslib_1.__exportStar(require("./0000000010000-notification-delivery-state"), exp
|
|
|
46
54
|
tslib_1.__exportStar(require("./0000000011000-remove-attachment-encryption-key"), exports);
|
|
47
55
|
tslib_1.__exportStar(require("./0000000012000-notification-sla-idempotency"), exports);
|
|
48
56
|
tslib_1.__exportStar(require("./0000000013000-workflow-query-indexes"), exports);
|
|
57
|
+
tslib_1.__exportStar(require("./0000000014000-notification-resolution"), exports);
|
|
58
|
+
tslib_1.__exportStar(require("./0000000015000-backfill-stale-notification-resolution"), exports);
|
|
59
|
+
tslib_1.__exportStar(require("./0000000016000-archive-parallel-form-drafts"), exports);
|
|
60
|
+
tslib_1.__exportStar(require("./0000000017000-adhoc-directives"), exports);
|
|
49
61
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../libs/bpm-core/src/lib/migrations/index.ts"],"names":[],"mappings":";;;;AACA,0GAAmG;AACnG,sHAA+G;AAC/G,oGAA6F;AAC7F,8GAAuG;AACvG,0GAAmG;AACnG,sFAAgF;AAChF,wFAAkF;AAClF,kGAA4F;AAC5F,8GAAuG;AACvG,oFAA8E;AAC9E,4GAAqG;AACrG,sHAA8G;AAC9G,8GAAuG;AACvG,kGAA2F;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../libs/bpm-core/src/lib/migrations/index.ts"],"names":[],"mappings":";;;;AACA,0GAAmG;AACnG,sHAA+G;AAC/G,oGAA6F;AAC7F,8GAAuG;AACvG,0GAAmG;AACnG,sFAAgF;AAChF,wFAAkF;AAClF,kGAA4F;AAC5F,8GAAuG;AACvG,oFAA8E;AAC9E,4GAAqG;AACrG,sHAA8G;AAC9G,8GAAuG;AACvG,kGAA2F;AAC3F,oGAA8F;AAC9F,kIAA0H;AAC1H,8GAAsG;AACtG,sFAAgF;AAEnE,QAAA,mBAAmB,GAA8C;IAC5E,iFAAqC;IACrC,6FAA2C;IAC3C,2EAAkC;IAClC,qFAAuC;IACvC,iFAAqC;IACrC,8DAA4B;IAC5B,gEAA6B;IAC7B,0EAAkC;IAClC,qFAAuC;IACvC,4DAA2B;IAC3B,mFAAsC;IACtC,4FAA0C;IAC1C,qFAAuC;IACvC,yEAAiC;IACjC,4EAAmC;IACnC,wGAAgD;IAChD,oFAAsC;IACtC,8DAA4B;CAC7B,CAAC;AAEF,qFAA2D;AAC3D,2FAAiE;AACjE,kFAAwD;AACxD,uFAA6D;AAC7D,qFAA2D;AAC3D,2EAAiD;AACjD,4EAAkD;AAClD,iFAAuD;AACvD,uFAA6D;AAC7D,0EAAgD;AAChD,sFAA4D;AAC5D,2FAAiE;AACjE,uFAA6D;AAC7D,iFAAuD;AACvD,kFAAwD;AACxD,iGAAuE;AACvE,uFAA6D;AAC7D,2EAAiD"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { NotificationChannelEnum, NotificationStatusEnum, NotificationTypeEnum } from './notification.enums';
|
|
1
|
+
import { NotificationChannelEnum, NotificationResolutionEnum, NotificationStatusEnum, NotificationTypeEnum } from './notification.enums';
|
|
2
2
|
export declare class NotificationEntity {
|
|
3
3
|
id: string;
|
|
4
4
|
recipientMemberId: string;
|
|
@@ -10,6 +10,8 @@ export declare class NotificationEntity {
|
|
|
10
10
|
body: string;
|
|
11
11
|
payload: Readonly<Record<string, unknown>>;
|
|
12
12
|
status: NotificationStatusEnum;
|
|
13
|
+
resolution: NotificationResolutionEnum | null;
|
|
14
|
+
resolvedAt: Date | null;
|
|
13
15
|
sentAt: Date | null;
|
|
14
16
|
readAt: Date | null;
|
|
15
17
|
attemptCount: number;
|
|
@@ -20,4 +22,10 @@ export declare class NotificationEntity {
|
|
|
20
22
|
deliveryTarget: string | null;
|
|
21
23
|
createdAt: Date;
|
|
22
24
|
get payloadJson(): string;
|
|
25
|
+
/**
|
|
26
|
+
* Whether the recipient can still act on this notification (i.e. it is an
|
|
27
|
+
* unresolved task-assignment). Drives the inline 同意/拒絕 actions on the
|
|
28
|
+
* client so they are never offered for an already-decided task.
|
|
29
|
+
*/
|
|
30
|
+
get actionable(): boolean;
|
|
23
31
|
}
|