@valtimo/document 0.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (43) hide show
  1. package/fesm2022/valtimo-document.mjs +834 -0
  2. package/fesm2022/valtimo-document.mjs.map +1 -0
  3. package/index.d.ts +6 -0
  4. package/lib/document.module.d.ts +7 -0
  5. package/lib/document.module.d.ts.map +1 -0
  6. package/lib/models/advanced-document-search-request.d.ts +35 -0
  7. package/lib/models/advanced-document-search-request.d.ts.map +1 -0
  8. package/lib/models/audit.model.d.ts +19 -0
  9. package/lib/models/audit.model.d.ts.map +1 -0
  10. package/lib/models/case-tags.model.d.ts +12 -0
  11. package/lib/models/case-tags.model.d.ts.map +1 -0
  12. package/lib/models/document-search-request.d.ts +51 -0
  13. package/lib/models/document-search-request.d.ts.map +1 -0
  14. package/lib/models/document.model.d.ts +299 -0
  15. package/lib/models/document.model.d.ts.map +1 -0
  16. package/lib/models/index.d.ts +9 -0
  17. package/lib/models/index.d.ts.map +1 -0
  18. package/lib/models/internal-case-status.model.d.ts +13 -0
  19. package/lib/models/internal-case-status.model.d.ts.map +1 -0
  20. package/lib/models/list-sorting.model.d.ts +10 -0
  21. package/lib/models/list-sorting.model.d.ts.map +1 -0
  22. package/lib/models/process-document-definition-search.model.d.ts +5 -0
  23. package/lib/models/process-document-definition-search.model.d.ts.map +1 -0
  24. package/lib/services/case-status.service.d.ts +19 -0
  25. package/lib/services/case-status.service.d.ts.map +1 -0
  26. package/lib/services/document.service.d.ts +74 -0
  27. package/lib/services/document.service.d.ts.map +1 -0
  28. package/lib/services/file-sort.service.d.ts +11 -0
  29. package/lib/services/file-sort.service.d.ts.map +1 -0
  30. package/lib/services/index.d.ts +5 -0
  31. package/lib/services/index.d.ts.map +1 -0
  32. package/lib/services/tags.service.d.ts +19 -0
  33. package/lib/services/tags.service.d.ts.map +1 -0
  34. package/lib/utils/case-tags.utils.d.ts +7 -0
  35. package/lib/utils/case-tags.utils.d.ts.map +1 -0
  36. package/lib/utils/index.d.ts +3 -0
  37. package/lib/utils/index.d.ts.map +1 -0
  38. package/lib/utils/internal-case-status.utils.d.ts +7 -0
  39. package/lib/utils/internal-case-status.utils.d.ts.map +1 -0
  40. package/package.json +24 -0
  41. package/public_api.d.ts +5 -0
  42. package/public_api.d.ts.map +1 -0
  43. package/valtimo-document.d.ts.map +1 -0
@@ -0,0 +1,834 @@
1
+ import * as i1 from '@angular/common/http';
2
+ import { HttpParams, HttpHeaders } from '@angular/common/http';
3
+ import * as i0 from '@angular/core';
4
+ import { Injectable, NgModule } from '@angular/core';
5
+ import * as i2 from '@valtimo/shared';
6
+ import { BaseApiService, InterceptorSkip, TagColor } from '@valtimo/shared';
7
+ import { catchError, of, switchMap } from 'rxjs';
8
+
9
+ /*
10
+ * Copyright 2015-2025 Ritense BV, the Netherlands.
11
+ *
12
+ * Licensed under EUPL, Version 1.2 (the "License");
13
+ * you may not use this file except in compliance with the License.
14
+ * You may obtain a copy of the License at
15
+ *
16
+ * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
17
+ *
18
+ * Unless required by applicable law or agreed to in writing, software
19
+ * distributed under the License is distributed on an "AS IS" basis,
20
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
21
+ * See the License for the specific language governing permissions and
22
+ * limitations under the License.
23
+ */
24
+ class ModifyDocumentRequestImpl {
25
+ constructor(documentId, content, versionBasedOn) {
26
+ this.documentId = documentId;
27
+ this.content = content;
28
+ this.versionBasedOn = versionBasedOn;
29
+ }
30
+ }
31
+ class ModifyDocumentAndCompleteTaskRequestImpl {
32
+ constructor(taskId, request) {
33
+ this.taskId = taskId;
34
+ this.request = request;
35
+ }
36
+ }
37
+ class NewDocumentRequestImpl {
38
+ constructor(definition, content) {
39
+ this.definition = definition;
40
+ this.content = content;
41
+ }
42
+ }
43
+ class NewDocumentAndStartProcessRequestImpl {
44
+ constructor(processDefinitionKey, request) {
45
+ this.processDefinitionKey = processDefinitionKey;
46
+ this.request = request;
47
+ }
48
+ }
49
+ class ModifyDocumentAndStartProcessRequestImpl {
50
+ constructor(processDefinitionKey, request) {
51
+ this.processDefinitionKey = processDefinitionKey;
52
+ this.request = request;
53
+ }
54
+ }
55
+ class DocumentDefinitionCreateRequest {
56
+ constructor(definition) {
57
+ this.definition = definition;
58
+ }
59
+ }
60
+
61
+ /*
62
+ * Copyright 2015-2025 Ritense BV, the Netherlands.
63
+ *
64
+ * Licensed under EUPL, Version 1.2 (the "License");
65
+ * you may not use this file except in compliance with the License.
66
+ * You may obtain a copy of the License at
67
+ *
68
+ * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
69
+ *
70
+ * Unless required by applicable law or agreed to in writing, software
71
+ * distributed under the License is distributed on an "AS IS" basis,
72
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
73
+ * See the License for the specific language governing permissions and
74
+ * limitations under the License.
75
+ */
76
+
77
+ /*
78
+ * Copyright 2015-2025 Ritense BV, the Netherlands.
79
+ *
80
+ * Licensed under EUPL, Version 1.2 (the "License");
81
+ * you may not use this file except in compliance with the License.
82
+ * You may obtain a copy of the License at
83
+ *
84
+ * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
85
+ *
86
+ * Unless required by applicable law or agreed to in writing, software
87
+ * distributed under the License is distributed on an "AS IS" basis,
88
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
89
+ * See the License for the specific language governing permissions and
90
+ * limitations under the License.
91
+ */
92
+
93
+ /*
94
+ * Copyright 2015-2025 Ritense BV, the Netherlands.
95
+ *
96
+ * Licensed under EUPL, Version 1.2 (the "License");
97
+ * you may not use this file except in compliance with the License.
98
+ * You may obtain a copy of the License at
99
+ *
100
+ * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
101
+ *
102
+ * Unless required by applicable law or agreed to in writing, software
103
+ * distributed under the License is distributed on an "AS IS" basis,
104
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
105
+ * See the License for the specific language governing permissions and
106
+ * limitations under the License.
107
+ */
108
+ class AdvancedDocumentSearchRequestHttpBody {
109
+ }
110
+ class AdvancedDocumentSearchRequestImpl {
111
+ constructor(definitionName, page, size, sort, searchOperator, otherFilters) {
112
+ this.definitionName = definitionName;
113
+ this.page = page;
114
+ this.size = size;
115
+ this.sort = sort;
116
+ this.otherFilters = otherFilters;
117
+ this.searchOperator = searchOperator;
118
+ }
119
+ asHttpBody() {
120
+ const httpBody = new AdvancedDocumentSearchRequestHttpBody();
121
+ httpBody.documentDefinitionName = this.definitionName;
122
+ if (this.otherFilters) {
123
+ httpBody.otherFilters = this.otherFilters;
124
+ }
125
+ if (this.searchOperator) {
126
+ httpBody.searchOperator = this.searchOperator;
127
+ }
128
+ return httpBody;
129
+ }
130
+ asHttpParams() {
131
+ let params = new HttpParams()
132
+ .set('definitionName', this.definitionName)
133
+ .set('page', this.page.toString())
134
+ .set('size', this.size.toString());
135
+ if (this.sort) {
136
+ params = params.set('sort', this.getSortString(this.sort));
137
+ }
138
+ return params;
139
+ }
140
+ setPage(page) {
141
+ this.page = page;
142
+ }
143
+ getSortString(sort) {
144
+ return `${sort.state.name},${sort.state.direction}`;
145
+ }
146
+ }
147
+
148
+ /*
149
+ * Copyright 2015-2025 Ritense BV, the Netherlands.
150
+ *
151
+ * Licensed under EUPL, Version 1.2 (the "License");
152
+ * you may not use this file except in compliance with the License.
153
+ * You may obtain a copy of the License at
154
+ *
155
+ * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
156
+ *
157
+ * Unless required by applicable law or agreed to in writing, software
158
+ * distributed under the License is distributed on an "AS IS" basis,
159
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
160
+ * See the License for the specific language governing permissions and
161
+ * limitations under the License.
162
+ */
163
+ class DocumentSearchRequestHttpBody {
164
+ }
165
+ class DocumentSearchRequestImpl {
166
+ constructor(definitionName, page, size, sequence, createdBy, globalSearchFilter, sort, otherFilters) {
167
+ this.definitionName = definitionName;
168
+ this.page = page;
169
+ this.size = size;
170
+ this.sequence = sequence;
171
+ this.createdBy = createdBy;
172
+ this.globalSearchFilter = globalSearchFilter;
173
+ this.sort = sort;
174
+ this.otherFilters = otherFilters;
175
+ }
176
+ asHttpBody() {
177
+ const httpBody = new DocumentSearchRequestHttpBody();
178
+ httpBody.documentDefinitionName = this.definitionName;
179
+ if (this.sequence) {
180
+ httpBody.sequence = this.sequence;
181
+ }
182
+ if (this.createdBy) {
183
+ httpBody.createdBy = this.createdBy;
184
+ }
185
+ if (this.globalSearchFilter) {
186
+ httpBody.globalSearchFilter = this.globalSearchFilter;
187
+ }
188
+ if (this.otherFilters) {
189
+ httpBody.otherFilters = this.otherFilters;
190
+ }
191
+ return httpBody;
192
+ }
193
+ asHttpParams() {
194
+ let params = new HttpParams()
195
+ .set('definitionName', this.definitionName)
196
+ .set('page', this.page.toString())
197
+ .set('size', this.size.toString());
198
+ if (this.sort) {
199
+ params = params.set('sort', this.getSortString(this.sort));
200
+ }
201
+ return params;
202
+ }
203
+ setPage(page) {
204
+ this.page = page;
205
+ }
206
+ getSortString(sort) {
207
+ return `${sort.state.name},${sort.state.direction}`;
208
+ }
209
+ }
210
+
211
+ /*
212
+ * Copyright 2015-2025 Ritense BV, the Netherlands.
213
+ *
214
+ * Licensed under EUPL, Version 1.2 (the "License");
215
+ * you may not use this file except in compliance with the License.
216
+ * You may obtain a copy of the License at
217
+ *
218
+ * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
219
+ *
220
+ * Unless required by applicable law or agreed to in writing, software
221
+ * distributed under the License is distributed on an "AS IS" basis,
222
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
223
+ * See the License for the specific language governing permissions and
224
+ * limitations under the License.
225
+ */
226
+
227
+ /*
228
+ * Copyright 2015-2025 Ritense BV, the Netherlands.
229
+ *
230
+ * Licensed under EUPL, Version 1.2 (the "License");
231
+ * you may not use this file except in compliance with the License.
232
+ * You may obtain a copy of the License at
233
+ *
234
+ * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
235
+ *
236
+ * Unless required by applicable law or agreed to in writing, software
237
+ * distributed under the License is distributed on an "AS IS" basis,
238
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
239
+ * See the License for the specific language governing permissions and
240
+ * limitations under the License.
241
+ */
242
+
243
+ /*
244
+ * Copyright 2015-2025 Ritense BV, the Netherlands.
245
+ *
246
+ * Licensed under EUPL, Version 1.2 (the "License");
247
+ * you may not use this file except in compliance with the License.
248
+ * You may obtain a copy of the License at
249
+ *
250
+ * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
251
+ *
252
+ * Unless required by applicable law or agreed to in writing, software
253
+ * distributed under the License is distributed on an "AS IS" basis,
254
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
255
+ * See the License for the specific language governing permissions and
256
+ * limitations under the License.
257
+ */
258
+
259
+ /*
260
+ * Copyright 2015-2025 Ritense BV, the Netherlands.
261
+ *
262
+ * Licensed under EUPL, Version 1.2 (the "License");
263
+ * you may not use this file except in compliance with the License.
264
+ * You may obtain a copy of the License at
265
+ *
266
+ * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
267
+ *
268
+ * Unless required by applicable law or agreed to in writing, software
269
+ * distributed under the License is distributed on an "AS IS" basis,
270
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
271
+ * See the License for the specific language governing permissions and
272
+ * limitations under the License.
273
+ */
274
+
275
+ /*
276
+ * Copyright 2015-2025 Ritense BV, the Netherlands.
277
+ *
278
+ * Licensed under EUPL, Version 1.2 (the "License");
279
+ * you may not use this file except in compliance with the License.
280
+ * You may obtain a copy of the License at
281
+ *
282
+ * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
283
+ *
284
+ * Unless required by applicable law or agreed to in writing, software
285
+ * distributed under the License is distributed on an "AS IS" basis,
286
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
287
+ * See the License for the specific language governing permissions and
288
+ * limitations under the License.
289
+ */
290
+ class CaseStatusService extends BaseApiService {
291
+ constructor(httpClient, configService) {
292
+ super(httpClient, configService);
293
+ this.httpClient = httpClient;
294
+ this.configService = configService;
295
+ }
296
+ getInternalCaseStatuses(caseDefinitionKey) {
297
+ return this.httpClient.get(this.getApiUrl(`/v1/case-definition/${caseDefinitionKey}/internal-status`));
298
+ }
299
+ getInternalCaseStatusesManagement(caseDefinitionKey) {
300
+ return this.httpClient.get(this.getApiUrl(`/management/v1/case-definition/${caseDefinitionKey}/internal-status`));
301
+ }
302
+ createInternalCaseStatus(caseDefinitionKey, internalCaseStatus) {
303
+ return this.httpClient.post(this.getApiUrl(`/management/v1/case-definition/${caseDefinitionKey}/internal-status`), internalCaseStatus);
304
+ }
305
+ updateInternalCaseStatuses(caseDefinitionKey, internalCaseStatuses) {
306
+ return this.httpClient.put(this.getApiUrl(`/management/v1/case-definition/${caseDefinitionKey}/internal-status`), internalCaseStatuses);
307
+ }
308
+ updateInternalCaseStatus(caseDefinitionKey, internalStatusKey, internalCaseStatus) {
309
+ return this.httpClient.put(this.getApiUrl(`/management/v1/case-definition/${caseDefinitionKey}/internal-status/${internalStatusKey}`), internalCaseStatus);
310
+ }
311
+ deleteInternalCaseStatus(caseDefinitionKey, internalStatusKey) {
312
+ return this.httpClient.delete(this.getApiUrl(`/management/v1/case-definition/${caseDefinitionKey}/internal-status/${internalStatusKey}`));
313
+ }
314
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: CaseStatusService, deps: [{ token: i1.HttpClient }, { token: i2.ConfigService }], target: i0.ɵɵFactoryTarget.Injectable }); }
315
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: CaseStatusService, providedIn: 'root' }); }
316
+ }
317
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: CaseStatusService, decorators: [{
318
+ type: Injectable,
319
+ args: [{
320
+ providedIn: 'root',
321
+ }]
322
+ }], ctorParameters: () => [{ type: i1.HttpClient }, { type: i2.ConfigService }] });
323
+
324
+ /*
325
+ * Copyright 2015-2025 Ritense BV, the Netherlands.
326
+ *
327
+ * Licensed under EUPL, Version 1.2 (the "License");
328
+ * you may not use this file except in compliance with the License.
329
+ * You may obtain a copy of the License at
330
+ *
331
+ * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
332
+ *
333
+ * Unless required by applicable law or agreed to in writing, software
334
+ * distributed under the License is distributed on an "AS IS" basis,
335
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
336
+ * See the License for the specific language governing permissions and
337
+ * limitations under the License.
338
+ */
339
+ class DocumentService {
340
+ constructor(http, configService) {
341
+ this.http = http;
342
+ this.configService = configService;
343
+ this.EMPTY_DOCUMENTS_RESPONSE = {
344
+ content: [],
345
+ empty: true,
346
+ first: false,
347
+ last: false,
348
+ number: 0,
349
+ numberOfElements: 0,
350
+ size: 0,
351
+ sort: false,
352
+ totalElements: 0,
353
+ totalPages: 0,
354
+ };
355
+ this.valtimoEndpointUri = this.configService.config.valtimoApi.endpointUri;
356
+ }
357
+ // Document-calls
358
+ getAllDefinitions() {
359
+ return this.http.get(`${this.valtimoEndpointUri}v1/document-definition?size=1000`);
360
+ }
361
+ queryDefinitions(params) {
362
+ return this.http.get(`${this.valtimoEndpointUri}v1/document-definition`, { params });
363
+ }
364
+ queryDefinitionsForManagement(params) {
365
+ return this.http.get(`${this.valtimoEndpointUri}management/v1/document-definition`, { params });
366
+ }
367
+ getDocumentDefinition(documentDefinitionName, skipNotFound = false) {
368
+ return skipNotFound
369
+ ? this.http.get(`${this.valtimoEndpointUri}v1/document-definition/${documentDefinitionName}`, { headers: new HttpHeaders().set(InterceptorSkip, '404') })
370
+ : this.http.get(`${this.valtimoEndpointUri}v1/document-definition/${documentDefinitionName}`);
371
+ }
372
+ getDocumentDefinitionForManagement(documentDefinitionName) {
373
+ return this.http.get(`${this.valtimoEndpointUri}management/v1/document-definition/${documentDefinitionName}`);
374
+ }
375
+ getDocuments(documentSearchRequest) {
376
+ return this.http.post(`${this.valtimoEndpointUri}v1/document-search`, documentSearchRequest.asHttpBody(), {
377
+ params: documentSearchRequest.asHttpParams(),
378
+ });
379
+ }
380
+ getDocumentsSearch(documentSearchRequest, searchOperator, assigneeFilter, otherFilters, statusFilter, caseTagsFilter) {
381
+ const body = {
382
+ ...documentSearchRequest.asHttpBody(),
383
+ ...(searchOperator && { searchOperator }),
384
+ ...(assigneeFilter && { assigneeFilter }),
385
+ ...(otherFilters && { otherFilters }),
386
+ ...(statusFilter && { statusFilter }),
387
+ ...(caseTagsFilter && { caseTagsFilter }),
388
+ };
389
+ return this.http
390
+ .post(`${this.valtimoEndpointUri}v1/document-definition/${documentSearchRequest.definitionName}/search`, body, { params: documentSearchRequest.asHttpParams() })
391
+ .pipe(catchError(() => of(this.EMPTY_DOCUMENTS_RESPONSE)));
392
+ }
393
+ getSpecifiedDocumentsSearch(documentSearchRequest, searchOperator, assigneeFilter, otherFilters, statusFilter, caseTagsFilter) {
394
+ const body = {
395
+ ...documentSearchRequest.asHttpBody(),
396
+ ...(searchOperator && { searchOperator }),
397
+ ...(assigneeFilter && { assigneeFilter }),
398
+ ...(otherFilters && { otherFilters }),
399
+ ...(statusFilter && { statusFilter }),
400
+ ...(caseTagsFilter && { caseTagsFilter }),
401
+ };
402
+ return this.http
403
+ .post(`${this.valtimoEndpointUri}v1/case/${documentSearchRequest.definitionName}/search`, body, { params: documentSearchRequest.asHttpParams() })
404
+ .pipe(catchError(() => of(this.EMPTY_DOCUMENTS_RESPONSE)));
405
+ }
406
+ getDocumentSearchFields(caseDefinitionKey) {
407
+ return this.http.get(`${this.valtimoEndpointUri}v1/document-search/${caseDefinitionKey}/fields`);
408
+ }
409
+ putDocumentSearch(caseDefinitionKey, request) {
410
+ return this.http.put(`${this.valtimoEndpointUri}v1/document-search/${caseDefinitionKey}/fields`, request);
411
+ }
412
+ postDocumentSearch(caseDefinitionKey, request) {
413
+ return this.http.post(`${this.valtimoEndpointUri}v1/document-search/${caseDefinitionKey}/fields`, { ...request });
414
+ }
415
+ deleteDocumentSearch(caseDefinitionKey, key) {
416
+ const options = {
417
+ headers: new HttpHeaders({
418
+ 'Content-Type': 'application/json',
419
+ }),
420
+ };
421
+ return this.http.delete(`${this.valtimoEndpointUri}v1/document-search/${caseDefinitionKey}/fields?key=${key}`, options);
422
+ }
423
+ getDropdownDataProviders() {
424
+ return this.http.get(`${this.valtimoEndpointUri}v1/data/dropdown-list/provider`);
425
+ }
426
+ getDropdownData(provider, caseDefinitionKey, fieldKey) {
427
+ const dropdownListKey = encodeURI(caseDefinitionKey + '_' + fieldKey);
428
+ return this.http.get(`${this.valtimoEndpointUri}v1/data/dropdown-list?provider=${provider}&key=${dropdownListKey}`);
429
+ }
430
+ postDropdownData(provider, caseDefinitionKey, fieldKey, dropdownData) {
431
+ const dropdownListKey = encodeURI(caseDefinitionKey + '_' + fieldKey);
432
+ return this.http.post(`${this.valtimoEndpointUri}v1/data/dropdown-list?provider=${provider}&key=${dropdownListKey}`, dropdownData);
433
+ }
434
+ deleteDropdownData(provider, caseDefinitionKey, fieldKey) {
435
+ const dropdownListKey = encodeURI(caseDefinitionKey + '_' + fieldKey);
436
+ return this.http.delete(`${this.valtimoEndpointUri}v1/data/dropdown-list?provider=${provider}&key=${dropdownListKey}`);
437
+ }
438
+ getDocument(documentId) {
439
+ return this.http.get(`${this.valtimoEndpointUri}v1/document/${documentId}`);
440
+ }
441
+ modifyDocument(document) {
442
+ return this.http.put(`${this.valtimoEndpointUri}v1/document`, document);
443
+ }
444
+ deleteDocument(documentId) {
445
+ return this.http.delete(`${this.valtimoEndpointUri}v1/document/${documentId}`);
446
+ }
447
+ // ProcessDefinitionCaseDefinition-calls
448
+ findProcessDefinitionCaseDefinitions(caseDefinitionKey) {
449
+ return this.http.get(`${this.valtimoEndpointUri}v1/case-definition/${caseDefinitionKey}/case-process-link`);
450
+ }
451
+ findProcessDefinitionCaseDefinitionsByStartableByUser(caseDefinitionKey, startableByUser) {
452
+ return this.http.get(`${this.valtimoEndpointUri}v1/case-definition/${caseDefinitionKey}/case-process-link?startableByUser=${startableByUser}`);
453
+ }
454
+ findProcessDefinitionCaseDefinitionsByCanInitializeDocument(caseDefinitionKey, canInitializeDocument) {
455
+ return this.http.get(`${this.valtimoEndpointUri}v1/case-definition/${caseDefinitionKey}/case-process-link?canInitializeDocument=${canInitializeDocument}`);
456
+ }
457
+ findProcessDefinitionCaseDefinitionsForDocument(documentId, searchRequest) {
458
+ const params = new HttpParams({
459
+ fromObject: searchRequest,
460
+ });
461
+ return this.http.get(`${this.valtimoEndpointUri}v1/document-instance/${documentId}/case-process-link`, { params });
462
+ }
463
+ // Case definition calls
464
+ getCaseDefinitions(params) {
465
+ return this.http.get(`${this.valtimoEndpointUri}v1/case-definition`, {
466
+ params,
467
+ });
468
+ }
469
+ getCaseDefinitionsManagement(params) {
470
+ return this.http.get(`${this.valtimoEndpointUri}management/v1/case-definition`, {
471
+ params,
472
+ });
473
+ }
474
+ findProcessDocumentDefinitionsByVersion(documentDefinitionName, version) {
475
+ return this.http.get(`${this.valtimoEndpointUri}v1/process-document/definition/document/${documentDefinitionName}/version/${version}`);
476
+ }
477
+ findProcessDocumentInstances(documentId) {
478
+ return this.http.get(`${this.valtimoEndpointUri}v1/process-document/instance/document/${documentId}`);
479
+ }
480
+ createDocumentDefinitionTemplate(payload) {
481
+ return this.http
482
+ .post(`${this.valtimoEndpointUri}management/v1/document-definition-template`, payload)
483
+ .pipe(switchMap((definition) => this.createDocumentDefinitionForManagement({ definition: JSON.stringify(definition) })));
484
+ }
485
+ newDocumentAndStartProcess(request) {
486
+ return this.http.post(`${this.valtimoEndpointUri}v1/process-document/operation/new-document-and-start-process`, request);
487
+ }
488
+ modifyDocumentAndCompleteTask(request) {
489
+ return this.http.post(`${this.valtimoEndpointUri}v1/process-document/operation/modify-document-and-complete-task`, request);
490
+ }
491
+ modifyDocumentAndStartProcess(request) {
492
+ return this.http.post(`${this.valtimoEndpointUri}v1/process-document/operation/modify-document-and-start-process`, request);
493
+ }
494
+ createProcessDocumentDefinition(request) {
495
+ return this.http.post(`${this.valtimoEndpointUri}v1/process-document/definition`, request);
496
+ }
497
+ createDocumentDefinitionForManagement(documentDefinitionCreateRequest) {
498
+ const options = {
499
+ headers: new HttpHeaders({
500
+ 'Content-Type': 'application/json',
501
+ }),
502
+ };
503
+ return this.http.post(`${this.valtimoEndpointUri}management/v1/document-definition`, documentDefinitionCreateRequest, options);
504
+ }
505
+ updateDocumentDefinitionForManagement(caseDefinitionKey, caseDefinitionVersionTag, request) {
506
+ const options = {
507
+ headers: new HttpHeaders({
508
+ 'Content-Type': 'application/json',
509
+ }),
510
+ };
511
+ return this.http.put(`${this.valtimoEndpointUri}management/v1/case-definition/${caseDefinitionKey}/version/${caseDefinitionVersionTag}/document-definition`, request, options);
512
+ }
513
+ deleteProcessDocumentDefinition(request) {
514
+ const options = {
515
+ headers: new HttpHeaders({
516
+ 'Content-Type': 'application/json',
517
+ }),
518
+ body: request,
519
+ };
520
+ return this.http.delete(`${this.valtimoEndpointUri}v1/process-document/definition`, options);
521
+ }
522
+ getAuditLog(documentId, page = 0) {
523
+ let params = new HttpParams();
524
+ params = params.set('page', page.toString());
525
+ return this.http.get(`${this.valtimoEndpointUri}v1/process-document/instance/document/${documentId}/audit`, { params });
526
+ }
527
+ assignResource(documentId, resourceId) {
528
+ return this.http.post(`${this.valtimoEndpointUri}v1/document/${documentId}/resource/${resourceId}`, {});
529
+ }
530
+ removeResource(documentId, resourceId) {
531
+ const options = {
532
+ headers: new HttpHeaders({
533
+ 'Content-Type': 'application/json',
534
+ }),
535
+ };
536
+ return this.http.delete(`${this.valtimoEndpointUri}v1/document/${documentId}/resource/${resourceId}`, options);
537
+ }
538
+ removeDocumentDefinitionForManagement(name) {
539
+ return this.http.delete(`${this.valtimoEndpointUri}management/v1/document-definition/${name}`);
540
+ }
541
+ sendMessage(documentId, request) {
542
+ return this.http.post(`${this.valtimoEndpointUri}v1/document/${documentId}/message`, request);
543
+ }
544
+ getDocumentTypesForCase(caseDefinitionKey, versionTag) {
545
+ return this.http.get(`${this.valtimoEndpointUri}v1/case-definition/${caseDefinitionKey}/version/${versionTag}/zaaktype/documenttype`);
546
+ }
547
+ getDocumentTypesForDocument(documentId) {
548
+ return this.http.get(`${this.valtimoEndpointUri}v1/document/${documentId}/zaaktype/documenttype`);
549
+ }
550
+ getProcessDefinitionCaseDefinitionFromProcessInstanceId(processInstanceId) {
551
+ return this.configService.getFeatureToggle('enableSuppressDocumentError')
552
+ ? this.http.get(`${this.valtimoEndpointUri}v1/process-instance/${processInstanceId}/case-process-link`, {
553
+ headers: new HttpHeaders().set(InterceptorSkip, '400'),
554
+ })
555
+ : this.http.get(`${this.valtimoEndpointUri}v1/process-instance/${processInstanceId}/case-process-link`);
556
+ }
557
+ assignHandlerToDocument(documentId, assigneeId) {
558
+ return this.http.post(`${this.valtimoEndpointUri}v1/document/${documentId}/assign`, { assigneeId });
559
+ }
560
+ unassignHandlerFromDocument(documentId) {
561
+ return this.http.post(`${this.valtimoEndpointUri}v1/document/${documentId}/unassign`, {});
562
+ }
563
+ getCandidateUsers(documentId) {
564
+ return this.http.get(`${this.valtimoEndpointUri}v1/document/${documentId}/candidate-user`);
565
+ }
566
+ getOpenDocumentCount() {
567
+ return this.http.get(`${this.valtimoEndpointUri}v1/document-definition/open/count`);
568
+ }
569
+ patchCaseSettingsForManagement(caseDefinitionKey, caseDefinitionVersionTag, request) {
570
+ return this.http.patch(`${this.valtimoEndpointUri}management/v1/case-definition/${caseDefinitionKey}/version/${caseDefinitionVersionTag}/settings`, { ...request });
571
+ }
572
+ getCaseSettings(caseDefinitionKey) {
573
+ return this.http.get(`${this.valtimoEndpointUri}v1/case-definition/${caseDefinitionKey}/settings`);
574
+ }
575
+ getCaseSettingsForManagement(caseDefinitionKey, caseDefinitionVersionTag) {
576
+ return this.http.get(`${this.valtimoEndpointUri}management/v1/case-definition/${caseDefinitionKey}/version/${caseDefinitionVersionTag}/settings`);
577
+ }
578
+ getCaseList(documentDefinitionName) {
579
+ return this.http.get(`${this.valtimoEndpointUri}v1/case/${documentDefinitionName}/list-column`);
580
+ }
581
+ getCaseListForManagement(documentDefinitionName) {
582
+ return this.http.get(`${this.valtimoEndpointUri}management/v1/case/${documentDefinitionName}/list-column`);
583
+ }
584
+ postCaseListForManagement(documentDefinitionName, request) {
585
+ return this.http.post(`${this.valtimoEndpointUri}management/v1/case/${documentDefinitionName}/list-column`, { ...request });
586
+ }
587
+ putCaseListForManagement(documentDefinitionName, request) {
588
+ return this.http.put(`${this.valtimoEndpointUri}management/v1/case/${documentDefinitionName}/list-column`, [...request]);
589
+ }
590
+ deleteCaseListForManagement(documentDefinitionName, columnKey) {
591
+ return this.http.delete(`${this.valtimoEndpointUri}management/v1/case/${documentDefinitionName}/list-column/${columnKey}`);
592
+ }
593
+ getDocumentDefinitionVersions(documentDefinitionName) {
594
+ return this.http.get(`${this.valtimoEndpointUri}management/v1/document-definition/${documentDefinitionName}/version`);
595
+ }
596
+ getDocumentDefinitionByVersion(caseDefinitionKey, caseDefinitionVersionTag) {
597
+ return this.http.get(`${this.valtimoEndpointUri}management/v1/case-definition/${caseDefinitionKey}/version/${caseDefinitionVersionTag}/document-definition`);
598
+ }
599
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: DocumentService, deps: [{ token: i1.HttpClient }, { token: i2.ConfigService }], target: i0.ɵɵFactoryTarget.Injectable }); }
600
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: DocumentService, providedIn: 'root' }); }
601
+ }
602
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: DocumentService, decorators: [{
603
+ type: Injectable,
604
+ args: [{
605
+ providedIn: 'root',
606
+ }]
607
+ }], ctorParameters: () => [{ type: i1.HttpClient }, { type: i2.ConfigService }] });
608
+
609
+ /*
610
+ * Copyright 2015-2025 Ritense BV, the Netherlands.
611
+ *
612
+ * Licensed under EUPL, Version 1.2 (the "License");
613
+ * you may not use this file except in compliance with the License.
614
+ * You may obtain a copy of the License at
615
+ *
616
+ * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
617
+ *
618
+ * Unless required by applicable law or agreed to in writing, software
619
+ * distributed under the License is distributed on an "AS IS" basis,
620
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
621
+ * See the License for the specific language governing permissions and
622
+ * limitations under the License.
623
+ */
624
+ class FileSortService {
625
+ constructor(configService) {
626
+ this.configService = configService;
627
+ }
628
+ sortRelatedFilesByDateDescending(relatedFiles) {
629
+ const sortByDate = this.configService.config?.featureToggles?.sortFilesByDate;
630
+ if (sortByDate) {
631
+ return relatedFiles.sort((a, b) => new Date(b.createdOn).getTime() - new Date(a.createdOn).getTime());
632
+ }
633
+ return relatedFiles;
634
+ }
635
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: FileSortService, deps: [{ token: i2.ConfigService }], target: i0.ɵɵFactoryTarget.Injectable }); }
636
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: FileSortService, providedIn: 'root' }); }
637
+ }
638
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: FileSortService, decorators: [{
639
+ type: Injectable,
640
+ args: [{
641
+ providedIn: 'root',
642
+ }]
643
+ }], ctorParameters: () => [{ type: i2.ConfigService }] });
644
+
645
+ /*
646
+ * Copyright 2015-2025 Ritense BV, the Netherlands.
647
+ *
648
+ * Licensed under EUPL, Version 1.2 (the "License");
649
+ * you may not use this file except in compliance with the License.
650
+ * You may obtain a copy of the License at
651
+ *
652
+ * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
653
+ *
654
+ * Unless required by applicable law or agreed to in writing, software
655
+ * distributed under the License is distributed on an "AS IS" basis,
656
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
657
+ * See the License for the specific language governing permissions and
658
+ * limitations under the License.
659
+ */
660
+ class CaseTagService extends BaseApiService {
661
+ constructor(httpClient, configService) {
662
+ super(httpClient, configService);
663
+ this.httpClient = httpClient;
664
+ this.configService = configService;
665
+ }
666
+ getCaseTagsManagement(caseDefinitionKey, caseDefinitionVersionTag) {
667
+ return this.httpClient.get(this.getApiUrl(`/management/v1/case-definition/${caseDefinitionKey}/version/${caseDefinitionVersionTag}/case-tag`));
668
+ }
669
+ getCaseTags(caseDefinitionKey) {
670
+ return this.httpClient.get(this.getApiUrl(`/v1/case-definition/${caseDefinitionKey}/case-tag`));
671
+ }
672
+ saveCaseTag(caseDefinitionKey, caseDefinitionVersionTag, tag) {
673
+ return this.httpClient.post(this.getApiUrl(`/management/v1/case-definition/${caseDefinitionKey}/version/${caseDefinitionVersionTag}/case-tag`), tag);
674
+ }
675
+ updateCaseTag(caseDefinitionKey, caseDefinitionVersionTag, currentTag, updatedTag) {
676
+ return this.httpClient.put(this.getApiUrl(`/management/v1/case-definition/${caseDefinitionKey}/version/${caseDefinitionVersionTag}/case-tag/${currentTag}`), updatedTag);
677
+ }
678
+ deleteCaseTag(caseDefinitionKey, caseDefinitionVersionTag, tag) {
679
+ return this.httpClient.delete(this.getApiUrl(`/management/v1/case-definition/${caseDefinitionKey}/version/${caseDefinitionVersionTag}/case-tag/${tag}`));
680
+ }
681
+ updateCaseTags(caseDefinitionKey, caseDefinitionVersionTag, reorderedTags) {
682
+ return this.httpClient.put(this.getApiUrl(`/management/v1/case-definition/${caseDefinitionKey}/version/${caseDefinitionVersionTag}/case-tag`), reorderedTags);
683
+ }
684
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: CaseTagService, deps: [{ token: i1.HttpClient }, { token: i2.ConfigService }], target: i0.ɵɵFactoryTarget.Injectable }); }
685
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: CaseTagService, providedIn: 'root' }); }
686
+ }
687
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: CaseTagService, decorators: [{
688
+ type: Injectable,
689
+ args: [{
690
+ providedIn: 'root',
691
+ }]
692
+ }], ctorParameters: () => [{ type: i1.HttpClient }, { type: i2.ConfigService }] });
693
+
694
+ /*
695
+ * Copyright 2015-2025 Ritense BV, the Netherlands.
696
+ *
697
+ * Licensed under EUPL, Version 1.2 (the "License");
698
+ * you may not use this file except in compliance with the License.
699
+ * You may obtain a copy of the License at
700
+ *
701
+ * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
702
+ *
703
+ * Unless required by applicable law or agreed to in writing, software
704
+ * distributed under the License is distributed on an "AS IS" basis,
705
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
706
+ * See the License for the specific language governing permissions and
707
+ * limitations under the License.
708
+ */
709
+
710
+ /*
711
+ * Copyright 2015-2025 Ritense BV, the Netherlands.
712
+ *
713
+ * Licensed under EUPL, Version 1.2 (the "License");
714
+ * you may not use this file except in compliance with the License.
715
+ * You may obtain a copy of the License at
716
+ *
717
+ * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
718
+ *
719
+ * Unless required by applicable law or agreed to in writing, software
720
+ * distributed under the License is distributed on an "AS IS" basis,
721
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
722
+ * See the License for the specific language governing permissions and
723
+ * limitations under the License.
724
+ */
725
+ class DocumentModule {
726
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: DocumentModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
727
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.17", ngImport: i0, type: DocumentModule }); }
728
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: DocumentModule }); }
729
+ }
730
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: DocumentModule, decorators: [{
731
+ type: NgModule
732
+ }] });
733
+
734
+ /*
735
+ * Copyright 2015-2025 Ritense BV, the Netherlands.
736
+ *
737
+ * Licensed under EUPL, Version 1.2 (the "License");
738
+ * you may not use this file except in compliance with the License.
739
+ * You may obtain a copy of the License at
740
+ *
741
+ * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
742
+ *
743
+ * Unless required by applicable law or agreed to in writing, software
744
+ * distributed under the License is distributed on an "AS IS" basis,
745
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
746
+ * See the License for the specific language governing permissions and
747
+ * limitations under the License.
748
+ */
749
+ class InternalCaseStatusUtils {
750
+ static getTagTypeFromInternalCaseStatusColor(internalCaseStatusColor) {
751
+ switch (internalCaseStatusColor) {
752
+ case TagColor.HighContrast:
753
+ return 'high-contrast';
754
+ case TagColor.CoolGray:
755
+ return 'cool-gray';
756
+ case TagColor.WarmGray:
757
+ return 'warm-gray';
758
+ default:
759
+ return internalCaseStatusColor?.toLowerCase();
760
+ }
761
+ }
762
+ }
763
+
764
+ /*
765
+ * Copyright 2015-2025 Ritense BV, the Netherlands.
766
+ *
767
+ * Licensed under EUPL, Version 1.2 (the "License");
768
+ * you may not use this file except in compliance with the License.
769
+ * You may obtain a copy of the License at
770
+ *
771
+ * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
772
+ *
773
+ * Unless required by applicable law or agreed to in writing, software
774
+ * distributed under the License is distributed on an "AS IS" basis,
775
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
776
+ * See the License for the specific language governing permissions and
777
+ * limitations under the License.
778
+ */
779
+ class CaseTagsUtils {
780
+ static getTagTypeFromCaseTagColor(caseTagColor) {
781
+ switch (caseTagColor) {
782
+ case TagColor.HighContrast:
783
+ return 'high-contrast';
784
+ case TagColor.CoolGray:
785
+ return 'cool-gray';
786
+ case TagColor.WarmGray:
787
+ return 'warm-gray';
788
+ default:
789
+ return caseTagColor?.toLowerCase();
790
+ }
791
+ }
792
+ }
793
+
794
+ /*
795
+ * Copyright 2015-2025 Ritense BV, the Netherlands.
796
+ *
797
+ * Licensed under EUPL, Version 1.2 (the "License");
798
+ * you may not use this file except in compliance with the License.
799
+ * You may obtain a copy of the License at
800
+ *
801
+ * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
802
+ *
803
+ * Unless required by applicable law or agreed to in writing, software
804
+ * distributed under the License is distributed on an "AS IS" basis,
805
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
806
+ * See the License for the specific language governing permissions and
807
+ * limitations under the License.
808
+ */
809
+
810
+ /*
811
+ * Copyright 2015-2025 Ritense BV, the Netherlands.
812
+ *
813
+ * Licensed under EUPL, Version 1.2 (the "License");
814
+ * you may not use this file except in compliance with the License.
815
+ * You may obtain a copy of the License at
816
+ *
817
+ * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
818
+ *
819
+ * Unless required by applicable law or agreed to in writing, software
820
+ * distributed under the License is distributed on an "AS IS" basis,
821
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
822
+ * See the License for the specific language governing permissions and
823
+ * limitations under the License.
824
+ */
825
+ /*
826
+ * Public API Surface of document
827
+ */
828
+
829
+ /**
830
+ * Generated bundle index. Do not edit.
831
+ */
832
+
833
+ export { AdvancedDocumentSearchRequestHttpBody, AdvancedDocumentSearchRequestImpl, CaseStatusService, CaseTagService, CaseTagsUtils, DocumentDefinitionCreateRequest, DocumentModule, DocumentSearchRequestHttpBody, DocumentSearchRequestImpl, DocumentService, FileSortService, InternalCaseStatusUtils, ModifyDocumentAndCompleteTaskRequestImpl, ModifyDocumentAndStartProcessRequestImpl, ModifyDocumentRequestImpl, NewDocumentAndStartProcessRequestImpl, NewDocumentRequestImpl };
834
+ //# sourceMappingURL=valtimo-document.mjs.map