@valtimo/shared 0.0.0-test

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 (148) hide show
  1. package/README.md +31 -0
  2. package/assets/core/en.json +2707 -0
  3. package/assets/core/nl.json +2749 -0
  4. package/fesm2022/valtimo-shared.mjs +1908 -0
  5. package/fesm2022/valtimo-shared.mjs.map +1 -0
  6. package/index.d.ts +6 -0
  7. package/lib/components/global-notification.component.d.ts +13 -0
  8. package/lib/components/global-notification.component.d.ts.map +1 -0
  9. package/lib/config.module.d.ts +11 -0
  10. package/lib/config.module.d.ts.map +1 -0
  11. package/lib/constants/building-block-management-tab-token.d.ts +5 -0
  12. package/lib/constants/building-block-management-tab-token.d.ts.map +1 -0
  13. package/lib/constants/case-configuration-extensions-token.d.ts +4 -0
  14. package/lib/constants/case-configuration-extensions-token.d.ts.map +1 -0
  15. package/lib/constants/case-management-tab-token.d.ts +5 -0
  16. package/lib/constants/case-management-tab-token.d.ts.map +1 -0
  17. package/lib/constants/error.constants.d.ts +5 -0
  18. package/lib/constants/error.constants.d.ts.map +1 -0
  19. package/lib/constants/form-view-model-token.d.ts +5 -0
  20. package/lib/constants/form-view-model-token.d.ts.map +1 -0
  21. package/lib/constants/iko.token.d.ts +4 -0
  22. package/lib/constants/iko.token.d.ts.map +1 -0
  23. package/lib/constants/index.d.ts +8 -0
  24. package/lib/constants/index.d.ts.map +1 -0
  25. package/lib/constants/versions.d.ts +4 -0
  26. package/lib/constants/versions.d.ts.map +1 -0
  27. package/lib/extension/extension.component.d.ts +19 -0
  28. package/lib/extension/extension.component.d.ts.map +1 -0
  29. package/lib/generated/generated-backend-types.d.ts +1058 -0
  30. package/lib/generated/generated-backend-types.d.ts.map +1 -0
  31. package/lib/generated/index.d.ts +2 -0
  32. package/lib/generated/index.d.ts.map +1 -0
  33. package/lib/models/building-block-management.model.d.ts +14 -0
  34. package/lib/models/building-block-management.model.d.ts.map +1 -0
  35. package/lib/models/case-management.model.d.ts +14 -0
  36. package/lib/models/case-management.model.d.ts.map +1 -0
  37. package/lib/models/config.d.ts +148 -0
  38. package/lib/models/config.d.ts.map +1 -0
  39. package/lib/models/display-type.model.d.ts +13 -0
  40. package/lib/models/display-type.model.d.ts.map +1 -0
  41. package/lib/models/email-notification-settings.model.d.ts +12 -0
  42. package/lib/models/email-notification-settings.model.d.ts.map +1 -0
  43. package/lib/models/extension.model.d.ts +33 -0
  44. package/lib/models/extension.model.d.ts.map +1 -0
  45. package/lib/models/form-view-model.model.d.ts +6 -0
  46. package/lib/models/form-view-model.model.d.ts.map +1 -0
  47. package/lib/models/global-configuration.model.d.ts +5 -0
  48. package/lib/models/global-configuration.model.d.ts.map +1 -0
  49. package/lib/models/http-loader.d.ts +4 -0
  50. package/lib/models/http-loader.d.ts.map +1 -0
  51. package/lib/models/index.d.ts +25 -0
  52. package/lib/models/index.d.ts.map +1 -0
  53. package/lib/models/localization.model.d.ts +10 -0
  54. package/lib/models/localization.model.d.ts.map +1 -0
  55. package/lib/models/management.model.d.ts +3 -0
  56. package/lib/models/management.model.d.ts.map +1 -0
  57. package/lib/models/menu-item.model.d.ts +19 -0
  58. package/lib/models/menu-item.model.d.ts.map +1 -0
  59. package/lib/models/menu.config.d.ts +5 -0
  60. package/lib/models/menu.config.d.ts.map +1 -0
  61. package/lib/models/modal.model.d.ts +4 -0
  62. package/lib/models/modal.model.d.ts.map +1 -0
  63. package/lib/models/page.d.ts +27 -0
  64. package/lib/models/page.d.ts.map +1 -0
  65. package/lib/models/roles.d.ts +4 -0
  66. package/lib/models/roles.d.ts.map +1 -0
  67. package/lib/models/search.model.d.ts +52 -0
  68. package/lib/models/search.model.d.ts.map +1 -0
  69. package/lib/models/security.config.d.ts +47 -0
  70. package/lib/models/security.config.d.ts.map +1 -0
  71. package/lib/models/tag-color.model.d.ts +15 -0
  72. package/lib/models/tag-color.model.d.ts.map +1 -0
  73. package/lib/models/translation.model.d.ts +7 -0
  74. package/lib/models/translation.model.d.ts.map +1 -0
  75. package/lib/models/user-management.model.d.ts +22 -0
  76. package/lib/models/user-management.model.d.ts.map +1 -0
  77. package/lib/models/user-settings.model.d.ts +9 -0
  78. package/lib/models/user-settings.model.d.ts.map +1 -0
  79. package/lib/models/versions.model.d.ts +5 -0
  80. package/lib/models/versions.model.d.ts.map +1 -0
  81. package/lib/models/window.model.d.ts +12 -0
  82. package/lib/models/window.model.d.ts.map +1 -0
  83. package/lib/services/base-api.service.d.ts +10 -0
  84. package/lib/services/base-api.service.d.ts.map +1 -0
  85. package/lib/services/config.service.d.ts +27 -0
  86. package/lib/services/config.service.d.ts.map +1 -0
  87. package/lib/services/configuration-issue.service.d.ts +11 -0
  88. package/lib/services/configuration-issue.service.d.ts.map +1 -0
  89. package/lib/services/draft-version.service.d.ts +15 -0
  90. package/lib/services/draft-version.service.d.ts.map +1 -0
  91. package/lib/services/edit-permissions.service.d.ts +20 -0
  92. package/lib/services/edit-permissions.service.d.ts.map +1 -0
  93. package/lib/services/environment.service.d.ts +14 -0
  94. package/lib/services/environment.service.d.ts.map +1 -0
  95. package/lib/services/global-notification.service.d.ts +22 -0
  96. package/lib/services/global-notification.service.d.ts.map +1 -0
  97. package/lib/services/index.d.ts +11 -0
  98. package/lib/services/index.d.ts.map +1 -0
  99. package/lib/services/localization.service.d.ts +19 -0
  100. package/lib/services/localization.service.d.ts.map +1 -0
  101. package/lib/services/menu-include.service.d.ts +13 -0
  102. package/lib/services/menu-include.service.d.ts.map +1 -0
  103. package/lib/services/user-settings.service.d.ts +16 -0
  104. package/lib/services/user-settings.service.d.ts.map +1 -0
  105. package/lib/testing/index.d.ts +2 -0
  106. package/lib/testing/index.d.ts.map +1 -0
  107. package/lib/testing/services/index.d.ts +4 -0
  108. package/lib/testing/services/index.d.ts.map +1 -0
  109. package/lib/testing/services/mock-icon.service.d.ts +7 -0
  110. package/lib/testing/services/mock-icon.service.d.ts.map +1 -0
  111. package/lib/testing/services/mock-keycloak.service.d.ts +14 -0
  112. package/lib/testing/services/mock-keycloak.service.d.ts.map +1 -0
  113. package/lib/testing/services/mock-translate.service.d.ts +9 -0
  114. package/lib/testing/services/mock-translate.service.d.ts.map +1 -0
  115. package/lib/translation/custom-multi-translate-http-loader-factory.d.ts +6 -0
  116. package/lib/translation/custom-multi-translate-http-loader-factory.d.ts.map +1 -0
  117. package/lib/translation/custom-multi-translate-http-loader.d.ts +14 -0
  118. package/lib/translation/custom-multi-translate-http-loader.d.ts.map +1 -0
  119. package/lib/translation/index.d.ts +4 -0
  120. package/lib/translation/index.d.ts.map +1 -0
  121. package/lib/translation/multi-translate-http-loader-factory.d.ts +5 -0
  122. package/lib/translation/multi-translate-http-loader-factory.d.ts.map +1 -0
  123. package/lib/utils/display-type.utils.d.ts +4 -0
  124. package/lib/utils/display-type.utils.d.ts.map +1 -0
  125. package/lib/utils/global-notification.utils.d.ts +7 -0
  126. package/lib/utils/global-notification.utils.d.ts.map +1 -0
  127. package/lib/utils/index.d.ts +7 -0
  128. package/lib/utils/index.d.ts.map +1 -0
  129. package/lib/utils/route-params.utils.d.ts +9 -0
  130. package/lib/utils/route-params.utils.d.ts.map +1 -0
  131. package/lib/utils/router.utils.d.ts +6 -0
  132. package/lib/utils/router.utils.d.ts.map +1 -0
  133. package/lib/utils/url.utils.d.ts +7 -0
  134. package/lib/utils/url.utils.d.ts.map +1 -0
  135. package/lib/utils/validate-bsn.utils.d.ts +6 -0
  136. package/lib/utils/validate-bsn.utils.d.ts.map +1 -0
  137. package/lib/zgw/constants/index.d.ts +3 -0
  138. package/lib/zgw/constants/index.d.ts.map +1 -0
  139. package/lib/zgw/constants/zgw-documenten-api-documents-component-token.d.ts +4 -0
  140. package/lib/zgw/constants/zgw-documenten-api-documents-component-token.d.ts.map +1 -0
  141. package/lib/zgw/constants/zgw-object-type-component-token.d.ts +4 -0
  142. package/lib/zgw/constants/zgw-object-type-component-token.d.ts.map +1 -0
  143. package/lib/zgw/index.d.ts +2 -0
  144. package/lib/zgw/index.d.ts.map +1 -0
  145. package/package.json +26 -0
  146. package/public-api.d.ts +12 -0
  147. package/public-api.d.ts.map +1 -0
  148. package/valtimo-shared.d.ts.map +1 -0
@@ -0,0 +1,1908 @@
1
+ import { CommonModule } from '@angular/common';
2
+ import * as i0 from '@angular/core';
3
+ import { InjectionToken, Inject, Injectable, Component, ViewContainerRef, ViewChild, Input, NgModule } from '@angular/core';
4
+ import * as i2 from 'carbon-components-angular';
5
+ import { Notification, Toast, ActionableNotification, NotificationService } from 'carbon-components-angular';
6
+ import { of, combineLatest, map, filter, distinctUntilChanged, switchMap, take, BehaviorSubject, forkJoin } from 'rxjs';
7
+ import { isEqual } from 'lodash';
8
+ import { TranslateHttpLoader } from '@ngx-translate/http-loader';
9
+ import * as i1 from '@angular/common/http';
10
+ import { HttpHeaders, HttpClient } from '@angular/common/http';
11
+ import { catchError, switchMap as switchMap$1, map as map$1 } from 'rxjs/operators';
12
+ import { deepmerge } from 'deepmerge-ts';
13
+ import { MultiTranslateHttpLoader } from 'ngx-translate-multi-http-loader';
14
+
15
+ /*
16
+ * Copyright 2015-2025 Ritense BV, the Netherlands.
17
+ *
18
+ * Licensed under EUPL, Version 1.2 (the "License");
19
+ * you may not use this file except in compliance with the License.
20
+ * You may obtain a copy of the License at
21
+ *
22
+ * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
23
+ *
24
+ * Unless required by applicable law or agreed to in writing, software
25
+ * distributed under the License is distributed on an "AS IS" basis,
26
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
27
+ * See the License for the specific language governing permissions and
28
+ * limitations under the License.
29
+ */
30
+ class RouterUtils {
31
+ static getRouterExtraOptions() {
32
+ return { canceledNavigationResolution: 'computed' };
33
+ }
34
+ }
35
+
36
+ /*
37
+ * Copyright 2015-2025 Ritense BV, the Netherlands.
38
+ *
39
+ * Licensed under EUPL, Version 1.2 (the "License");
40
+ * you may not use this file except in compliance with the License.
41
+ * You may obtain a copy of the License at
42
+ *
43
+ * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
44
+ *
45
+ * Unless required by applicable law or agreed to in writing, software
46
+ * distributed under the License is distributed on an "AS IS" basis,
47
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
48
+ * See the License for the specific language governing permissions and
49
+ * limitations under the License.
50
+ */
51
+ class UrlUtils {
52
+ static formatUrlTrailingSlash(url, returnWithTrailingSlash) {
53
+ if (url && typeof url === 'string') {
54
+ const urlLastCharacter = url[url.length - 1];
55
+ const urlLastCharacterIsSlash = urlLastCharacter === '/';
56
+ if (!returnWithTrailingSlash && urlLastCharacterIsSlash) {
57
+ return url.slice(0, -1);
58
+ }
59
+ else if (returnWithTrailingSlash && !urlLastCharacterIsSlash) {
60
+ return `${url}/`;
61
+ }
62
+ }
63
+ return url;
64
+ }
65
+ static formatUrlStartWithSlash(url) {
66
+ if (url && typeof url === 'string' && url.length > 0 && url[0] !== '/') {
67
+ return `/${url}`;
68
+ }
69
+ return `${url}`;
70
+ }
71
+ static getUrlHost(urlString) {
72
+ let url;
73
+ try {
74
+ url = new URL(urlString);
75
+ }
76
+ catch (_) { }
77
+ return url ? url.host : '';
78
+ }
79
+ }
80
+
81
+ /*
82
+ * Copyright 2015-2025 Ritense BV, the Netherlands.
83
+ *
84
+ * Licensed under EUPL, Version 1.2 (the "License");
85
+ * you may not use this file except in compliance with the License.
86
+ * You may obtain a copy of the License at
87
+ *
88
+ * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
89
+ *
90
+ * Unless required by applicable law or agreed to in writing, software
91
+ * distributed under the License is distributed on an "AS IS" basis,
92
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
93
+ * See the License for the specific language governing permissions and
94
+ * limitations under the License.
95
+ */
96
+ const DEFAULT_NOTIFICATION_PARAMS = {
97
+ duration: 4000,
98
+ showClose: true,
99
+ };
100
+ const getNotificationObject = (content) => ({
101
+ ...DEFAULT_NOTIFICATION_PARAMS,
102
+ ...content,
103
+ });
104
+
105
+ const getCaseManagementRouteParams = (route, doFilter = false) => {
106
+ const rootParams$ = route.params ? route.params : of({});
107
+ const parentParams$ = route.parent?.params ? route.parent.params : of({});
108
+ return combineLatest([rootParams$, parentParams$]).pipe(map(([rootParams, parentParams]) => {
109
+ const caseDefinitionKey = rootParams['caseDefinitionKey'] || parentParams['caseDefinitionKey'];
110
+ const caseDefinitionVersionTag = rootParams['caseDefinitionVersionTag'] || parentParams['caseDefinitionVersionTag'];
111
+ if (caseDefinitionKey && caseDefinitionVersionTag) {
112
+ return { caseDefinitionKey, caseDefinitionVersionTag };
113
+ }
114
+ return null;
115
+ }), filter((params) => (doFilter ? params !== null : true)), distinctUntilChanged((previous, current) => isEqual(previous, current)));
116
+ };
117
+ const getBuildingBlockManagementRouteParams = (route, doFilter = false) => {
118
+ const rootParams$ = route.params ? route.params : of({});
119
+ const parentParams$ = route.parent?.params ? route.parent.params : of({});
120
+ return combineLatest([rootParams$, parentParams$]).pipe(map(([rootParams, parentParams]) => {
121
+ const buildingBlockDefinitionKey = rootParams['buildingBlockDefinitionKey'] || parentParams['buildingBlockDefinitionKey'];
122
+ const buildingBlockDefinitionVersionTag = rootParams['buildingBlockDefinitionVersionTag'] ||
123
+ parentParams['buildingBlockDefinitionVersionTag'];
124
+ if (buildingBlockDefinitionKey && buildingBlockDefinitionVersionTag) {
125
+ return { buildingBlockDefinitionKey, buildingBlockDefinitionVersionTag };
126
+ }
127
+ return null;
128
+ }), filter((params) => doFilter ? params !== null : true), distinctUntilChanged((previous, current) => isEqual(previous, current)));
129
+ };
130
+ function getContextObservable(route) {
131
+ // Traverse the route hierarchy to find the context data
132
+ // The context is set on a parent route, so we need to look up the tree
133
+ let currentRoute = route;
134
+ while (currentRoute) {
135
+ const context = currentRoute.snapshot?.data?.['context'];
136
+ if (context) {
137
+ return currentRoute.data.pipe(map(data => (data && data['context']) || null), distinctUntilChanged());
138
+ }
139
+ currentRoute = currentRoute.parent;
140
+ }
141
+ // Fallback to original behavior if no context found in hierarchy
142
+ return route.data.pipe(map(data => (data && data['context']) || null), distinctUntilChanged());
143
+ }
144
+ function getCaseManagementRouteParamsAndContext(route) {
145
+ const params$ = getCaseManagementRouteParams(route, true);
146
+ const context$ = getContextObservable(route);
147
+ return context$.pipe(switchMap(context => {
148
+ if (context === 'case') {
149
+ return combineLatest([of(context), params$]);
150
+ }
151
+ const fallbackParams = {
152
+ caseDefinitionKey: '',
153
+ caseDefinitionVersionTag: '',
154
+ };
155
+ return of([context, fallbackParams]);
156
+ }));
157
+ }
158
+
159
+ /*
160
+ * Copyright 2015-2025 Ritense BV, the Netherlands.
161
+ *
162
+ * Licensed under EUPL, Version 1.2 (the "License");
163
+ * you may not use this file except in compliance with the License.
164
+ * You may obtain a copy of the License at
165
+ *
166
+ * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
167
+ *
168
+ * Unless required by applicable law or agreed to in writing, software
169
+ * distributed under the License is distributed on an "AS IS" basis,
170
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
171
+ * See the License for the specific language governing permissions and
172
+ * limitations under the License.
173
+ */
174
+ const getDisplayTypeParametersView = (displayTypeParameters) => {
175
+ if (displayTypeParameters?.dateFormat) {
176
+ return displayTypeParameters.dateFormat;
177
+ }
178
+ else if (displayTypeParameters?.tagAmount) {
179
+ return displayTypeParameters.tagAmount.toString();
180
+ }
181
+ else if (displayTypeParameters?.enum) {
182
+ return Object.keys(displayTypeParameters.enum).reduce((acc, curr) => {
183
+ const keyValuePairString = `${curr}: ${displayTypeParameters.enum?.[curr]}`;
184
+ if (!acc) {
185
+ return `${keyValuePairString}`;
186
+ }
187
+ return `${acc}, ${keyValuePairString}`;
188
+ }, '');
189
+ }
190
+ return '-';
191
+ };
192
+
193
+ /*
194
+ * Copyright 2015-2025 Ritense BV, the Netherlands.
195
+ *
196
+ * Licensed under EUPL, Version 1.2 (the "License");
197
+ * you may not use this file except in compliance with the License.
198
+ * You may obtain a copy of the License at
199
+ *
200
+ * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
201
+ *
202
+ * Unless required by applicable law or agreed to in writing, software
203
+ * distributed under the License is distributed on an "AS IS" basis,
204
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
205
+ * See the License for the specific language governing permissions and
206
+ * limitations under the License.
207
+ */
208
+ const validateBsn = (value) => {
209
+ const baseKey = 'interface.dataValidation.bsnValidator';
210
+ if (!value) {
211
+ return { isValid: false, errorKey: `${baseKey}.valueEmpty` };
212
+ }
213
+ const trimmed = value.toString().trim();
214
+ if (!/^\d+$/.test(trimmed)) {
215
+ return { isValid: false, errorKey: `${baseKey}.valueOnlyDigits` };
216
+ }
217
+ if (trimmed.length < 8 || trimmed.length > 9) {
218
+ return { isValid: false, errorKey: `${baseKey}.valueMinLength` };
219
+ }
220
+ if (trimmed.length > 9) {
221
+ return { isValid: false, errorKey: `${baseKey}.valueMaxLength` };
222
+ }
223
+ if (/^0+$/.test(trimmed) || /^9+$/.test(trimmed)) {
224
+ return { isValid: false, errorKey: `${baseKey}.valueAllZerosOrNines` };
225
+ }
226
+ const digits = trimmed.split('').map(d => parseInt(d, 10));
227
+ let sum = 0;
228
+ const length = digits.length;
229
+ for (let i = 0; i < length; i++) {
230
+ const weight = i === length - 1 ? -1 : length - i;
231
+ sum += digits[i] * weight;
232
+ }
233
+ if (sum % 11 !== 0) {
234
+ return { isValid: false, errorKey: `${baseKey}.valueElfCheck` };
235
+ }
236
+ return { isValid: true, errorKey: null };
237
+ };
238
+
239
+ /*
240
+ * Copyright 2015-2025 Ritense BV, the Netherlands.
241
+ *
242
+ * Licensed under EUPL, Version 1.2 (the "License");
243
+ * you may not use this file except in compliance with the License.
244
+ * You may obtain a copy of the License at
245
+ *
246
+ * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
247
+ *
248
+ * Unless required by applicable law or agreed to in writing, software
249
+ * distributed under the License is distributed on an "AS IS" basis,
250
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
251
+ * See the License for the specific language governing permissions and
252
+ * limitations under the License.
253
+ */
254
+
255
+ /*
256
+ * Copyright 2015-2025 Ritense BV, the Netherlands.
257
+ *
258
+ * Licensed under EUPL, Version 1.2 (the "License");
259
+ * you may not use this file except in compliance with the License.
260
+ * You may obtain a copy of the License at
261
+ *
262
+ * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
263
+ *
264
+ * Unless required by applicable law or agreed to in writing, software
265
+ * distributed under the License is distributed on an "AS IS" basis,
266
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
267
+ * See the License for the specific language governing permissions and
268
+ * limitations under the License.
269
+ */
270
+ class BaseApiService {
271
+ constructor(httpClient, configService) {
272
+ this.httpClient = httpClient;
273
+ this.configService = configService;
274
+ this._valtimoEndpointUri = configService.config.valtimoApi.endpointUri;
275
+ }
276
+ getApiUrl(urlPart) {
277
+ const urlWithStartSlash = UrlUtils.formatUrlStartWithSlash(urlPart);
278
+ const urlFormattedWithTrailingSlash = `${UrlUtils.formatUrlTrailingSlash(this._valtimoEndpointUri, false)}${urlWithStartSlash}`;
279
+ return urlFormattedWithTrailingSlash;
280
+ }
281
+ }
282
+
283
+ /*
284
+ * Copyright 2015-2025 Ritense BV, the Netherlands.
285
+ *
286
+ * Licensed under EUPL, Version 1.2 (the "License");
287
+ * you may not use this file except in compliance with the License.
288
+ * You may obtain a copy of the License at
289
+ *
290
+ * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
291
+ *
292
+ * Unless required by applicable law or agreed to in writing, software
293
+ * distributed under the License is distributed on an "AS IS" basis,
294
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
295
+ * See the License for the specific language governing permissions and
296
+ * limitations under the License.
297
+ */
298
+ const VALTIMO_CONFIG = new InjectionToken('valtimoConfig');
299
+ // eslint-disable-next-line
300
+ const INITIALIZERS = new InjectionToken('initializers');
301
+ var UploadProvider;
302
+ (function (UploadProvider) {
303
+ UploadProvider[UploadProvider["S3"] = 0] = "S3";
304
+ /**@deprecated This upload provider will be removed in the future. */
305
+ UploadProvider[UploadProvider["OPEN_ZAAK"] = 1] = "OPEN_ZAAK";
306
+ UploadProvider[UploadProvider["DOCUMENTEN_API"] = 2] = "DOCUMENTEN_API";
307
+ })(UploadProvider || (UploadProvider = {}));
308
+ var TaskListTab;
309
+ (function (TaskListTab) {
310
+ TaskListTab["MINE"] = "mine";
311
+ TaskListTab["OPEN"] = "open";
312
+ TaskListTab["ALL"] = "all";
313
+ TaskListTab["TEAM"] = "team";
314
+ })(TaskListTab || (TaskListTab = {}));
315
+ var CaseListTab;
316
+ (function (CaseListTab) {
317
+ CaseListTab["MINE"] = "MINE";
318
+ CaseListTab["OPEN"] = "OPEN";
319
+ CaseListTab["ALL"] = "ALL";
320
+ CaseListTab["TEAM"] = "TEAM";
321
+ })(CaseListTab || (CaseListTab = {}));
322
+ var Language;
323
+ (function (Language) {
324
+ Language["NL"] = "nl";
325
+ Language["EN"] = "en";
326
+ })(Language || (Language = {}));
327
+
328
+ /*
329
+ * Copyright 2015-2025 Ritense BV, the Netherlands.
330
+ *
331
+ * Licensed under EUPL, Version 1.2 (the "License");
332
+ * you may not use this file except in compliance with the License.
333
+ * You may obtain a copy of the License at
334
+ *
335
+ * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
336
+ *
337
+ * Unless required by applicable law or agreed to in writing, software
338
+ * distributed under the License is distributed on an "AS IS" basis,
339
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
340
+ * See the License for the specific language governing permissions and
341
+ * limitations under the License.
342
+ */
343
+
344
+ /*
345
+ * Copyright 2015-2025 Ritense BV, the Netherlands.
346
+ *
347
+ * Licensed under EUPL, Version 1.2 (the "License");
348
+ * you may not use this file except in compliance with the License.
349
+ * You may obtain a copy of the License at
350
+ *
351
+ * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
352
+ *
353
+ * Unless required by applicable law or agreed to in writing, software
354
+ * distributed under the License is distributed on an "AS IS" basis,
355
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
356
+ * See the License for the specific language governing permissions and
357
+ * limitations under the License.
358
+ */
359
+ var IncludeFunction;
360
+ (function (IncludeFunction) {
361
+ IncludeFunction[IncludeFunction["ObjectManagementEnabled"] = 0] = "ObjectManagementEnabled";
362
+ })(IncludeFunction || (IncludeFunction = {}));
363
+
364
+ /*
365
+ * Copyright 2015-2025 Ritense BV, the Netherlands.
366
+ *
367
+ * Licensed under EUPL, Version 1.2 (the "License");
368
+ * you may not use this file except in compliance with the License.
369
+ * You may obtain a copy of the License at
370
+ *
371
+ * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
372
+ *
373
+ * Unless required by applicable law or agreed to in writing, software
374
+ * distributed under the License is distributed on an "AS IS" basis,
375
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
376
+ * See the License for the specific language governing permissions and
377
+ * limitations under the License.
378
+ */
379
+
380
+ /*
381
+ * Copyright 2015-2025 Ritense BV, the Netherlands.
382
+ *
383
+ * Licensed under EUPL, Version 1.2 (the "License");
384
+ * you may not use this file except in compliance with the License.
385
+ * You may obtain a copy of the License at
386
+ *
387
+ * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
388
+ *
389
+ * Unless required by applicable law or agreed to in writing, software
390
+ * distributed under the License is distributed on an "AS IS" basis,
391
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
392
+ * See the License for the specific language governing permissions and
393
+ * limitations under the License.
394
+ */
395
+ class ValtimoUserIdentity {
396
+ constructor(email, firstName, lastName, roles, username, id) {
397
+ this._email = email;
398
+ this._firstName = firstName;
399
+ this._lastName = lastName;
400
+ this._roles = roles;
401
+ this._username = username;
402
+ this._id = id;
403
+ }
404
+ get email() {
405
+ return this._email;
406
+ }
407
+ get firstName() {
408
+ return this._firstName;
409
+ }
410
+ get lastName() {
411
+ return this._lastName;
412
+ }
413
+ get roles() {
414
+ return this._roles;
415
+ }
416
+ get username() {
417
+ return this._username;
418
+ }
419
+ get id() {
420
+ return this._id;
421
+ }
422
+ }
423
+
424
+ /*
425
+ * Copyright 2015-2025 Ritense BV, the Netherlands.
426
+ *
427
+ * Licensed under EUPL, Version 1.2 (the "License");
428
+ * you may not use this file except in compliance with the License.
429
+ * You may obtain a copy of the License at
430
+ *
431
+ * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
432
+ *
433
+ * Unless required by applicable law or agreed to in writing, software
434
+ * distributed under the License is distributed on an "AS IS" basis,
435
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
436
+ * See the License for the specific language governing permissions and
437
+ * limitations under the License.
438
+ */
439
+ class ExtensionLoader {
440
+ constructor(componentFactoryResolver) {
441
+ this.componentFactoryResolver = null;
442
+ this.componentRef = null;
443
+ this.componentFactoryResolver = componentFactoryResolver;
444
+ }
445
+ loadExtensionPoint(viewContainerRef, extensionPoint) {
446
+ const componentFactory = this.componentFactoryResolver.resolveComponentFactory(extensionPoint.component);
447
+ this.componentRef = viewContainerRef.createComponent(componentFactory);
448
+ }
449
+ loadAndClearExtensionPoint(viewContainerRef, extensionPoint) {
450
+ const componentFactory = this.componentFactoryResolver.resolveComponentFactory(extensionPoint.component);
451
+ viewContainerRef.clear();
452
+ return (this.componentRef = viewContainerRef.createComponent(componentFactory));
453
+ }
454
+ }
455
+ class Extension {
456
+ constructor(name, extensionPoint) {
457
+ this._name = name;
458
+ this._extensionPoint = extensionPoint;
459
+ }
460
+ get extensionPoint() {
461
+ return this._extensionPoint;
462
+ }
463
+ }
464
+ class BasicExtensionPoint {
465
+ constructor(module, page, section, component) {
466
+ this._module = module;
467
+ this._page = page;
468
+ this._section = section;
469
+ this._component = component;
470
+ }
471
+ supports(module, page, section) {
472
+ return this._module === module && this._page === page && this._section === section;
473
+ }
474
+ get module() {
475
+ return this._module;
476
+ }
477
+ get page() {
478
+ return this._page;
479
+ }
480
+ get section() {
481
+ return this._section;
482
+ }
483
+ get component() {
484
+ return this._component;
485
+ }
486
+ }
487
+
488
+ /*
489
+ * Copyright 2015-2025 Ritense BV, the Netherlands.
490
+ *
491
+ * Licensed under EUPL, Version 1.2 (the "License");
492
+ * you may not use this file except in compliance with the License.
493
+ * You may obtain a copy of the License at
494
+ *
495
+ * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
496
+ *
497
+ * Unless required by applicable law or agreed to in writing, software
498
+ * distributed under the License is distributed on an "AS IS" basis,
499
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
500
+ * See the License for the specific language governing permissions and
501
+ * limitations under the License.
502
+ */
503
+ function HttpLoaderFactory(httpClient) {
504
+ return new TranslateHttpLoader(httpClient);
505
+ }
506
+
507
+ /*
508
+ * Copyright 2015-2025 Ritense BV, the Netherlands.
509
+ *
510
+ * Licensed under EUPL, Version 1.2 (the "License");
511
+ * you may not use this file except in compliance with the License.
512
+ * You may obtain a copy of the License at
513
+ *
514
+ * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
515
+ *
516
+ * Unless required by applicable law or agreed to in writing, software
517
+ * distributed under the License is distributed on an "AS IS" basis,
518
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
519
+ * See the License for the specific language governing permissions and
520
+ * limitations under the License.
521
+ */
522
+ const ROLE_ADMIN = 'ROLE_ADMIN';
523
+ const ROLE_USER = 'ROLE_USER';
524
+ const ROLE_DEVELOPER = 'ROLE_DEVELOPER';
525
+
526
+ /*
527
+ * Copyright 2015-2025 Ritense BV, the Netherlands.
528
+ *
529
+ * Licensed under EUPL, Version 1.2 (the "License");
530
+ * you may not use this file except in compliance with the License.
531
+ * You may obtain a copy of the License at
532
+ *
533
+ * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
534
+ *
535
+ * Unless required by applicable law or agreed to in writing, software
536
+ * distributed under the License is distributed on an "AS IS" basis,
537
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
538
+ * See the License for the specific language governing permissions and
539
+ * limitations under the License.
540
+ */
541
+
542
+ /*
543
+ * Copyright 2015-2025 Ritense BV, the Netherlands.
544
+ *
545
+ * Licensed under EUPL, Version 1.2 (the "License");
546
+ * you may not use this file except in compliance with the License.
547
+ * You may obtain a copy of the License at
548
+ *
549
+ * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
550
+ *
551
+ * Unless required by applicable law or agreed to in writing, software
552
+ * distributed under the License is distributed on an "AS IS" basis,
553
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
554
+ * See the License for the specific language governing permissions and
555
+ * limitations under the License.
556
+ */
557
+
558
+ /*
559
+ * Copyright 2015-2025 Ritense BV, the Netherlands.
560
+ *
561
+ * Licensed under EUPL, Version 1.2 (the "License");
562
+ * you may not use this file except in compliance with the License.
563
+ * You may obtain a copy of the License at
564
+ *
565
+ * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
566
+ *
567
+ * Unless required by applicable law or agreed to in writing, software
568
+ * distributed under the License is distributed on an "AS IS" basis,
569
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
570
+ * See the License for the specific language governing permissions and
571
+ * limitations under the License.
572
+ */
573
+
574
+ /*
575
+ * Copyright 2015-2025 Ritense BV, the Netherlands.
576
+ *
577
+ * Licensed under EUPL, Version 1.2 (the "License");
578
+ * you may not use this file except in compliance with the License.
579
+ * You may obtain a copy of the License at
580
+ *
581
+ * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
582
+ *
583
+ * Unless required by applicable law or agreed to in writing, software
584
+ * distributed under the License is distributed on an "AS IS" basis,
585
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
586
+ * See the License for the specific language governing permissions and
587
+ * limitations under the License.
588
+ */
589
+
590
+ /*
591
+ * Copyright 2015-2025 Ritense BV, the Netherlands.
592
+ *
593
+ * Licensed under EUPL, Version 1.2 (the "License");
594
+ * you may not use this file except in compliance with the License.
595
+ * You may obtain a copy of the License at
596
+ *
597
+ * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
598
+ *
599
+ * Unless required by applicable law or agreed to in writing, software
600
+ * distributed under the License is distributed on an "AS IS" basis,
601
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
602
+ * See the License for the specific language governing permissions and
603
+ * limitations under the License.
604
+ */
605
+
606
+ /*
607
+ * Copyright 2015-2025 Ritense BV, the Netherlands.
608
+ *
609
+ * Licensed under EUPL, Version 1.2 (the "License");
610
+ * you may not use this file except in compliance with the License.
611
+ * You may obtain a copy of the License at
612
+ *
613
+ * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
614
+ *
615
+ * Unless required by applicable law or agreed to in writing, software
616
+ * distributed under the License is distributed on an "AS IS" basis,
617
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
618
+ * See the License for the specific language governing permissions and
619
+ * limitations under the License.
620
+ */
621
+
622
+ /*
623
+ * Copyright 2015-2025 Ritense BV, the Netherlands.
624
+ *
625
+ * Licensed under EUPL, Version 1.2 (the "License");
626
+ * you may not use this file except in compliance with the License.
627
+ * You may obtain a copy of the License at
628
+ *
629
+ * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
630
+ *
631
+ * Unless required by applicable law or agreed to in writing, software
632
+ * distributed under the License is distributed on an "AS IS" basis,
633
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
634
+ * See the License for the specific language governing permissions and
635
+ * limitations under the License.
636
+ */
637
+
638
+ /*
639
+ * Copyright 2015-2025 Ritense BV, the Netherlands.
640
+ *
641
+ * Licensed under EUPL, Version 1.2 (the "License");
642
+ * you may not use this file except in compliance with the License.
643
+ * You may obtain a copy of the License at
644
+ *
645
+ * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
646
+ *
647
+ * Unless required by applicable law or agreed to in writing, software
648
+ * distributed under the License is distributed on an "AS IS" basis,
649
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
650
+ * See the License for the specific language governing permissions and
651
+ * limitations under the License.
652
+ */
653
+
654
+ /*
655
+ * Copyright 2015-2025 Ritense BV, the Netherlands.
656
+ *
657
+ * Licensed under EUPL, Version 1.2 (the "License");
658
+ * you may not use this file except in compliance with the License.
659
+ * You may obtain a copy of the License at
660
+ *
661
+ * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
662
+ *
663
+ * Unless required by applicable law or agreed to in writing, software
664
+ * distributed under the License is distributed on an "AS IS" basis,
665
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
666
+ * See the License for the specific language governing permissions and
667
+ * limitations under the License.
668
+ */
669
+
670
+ /*
671
+ * Copyright 2015-2025 Ritense BV, the Netherlands.
672
+ *
673
+ * Licensed under EUPL, Version 1.2 (the "License");
674
+ * you may not use this file except in compliance with the License.
675
+ * You may obtain a copy of the License at
676
+ *
677
+ * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
678
+ *
679
+ * Unless required by applicable law or agreed to in writing, software
680
+ * distributed under the License is distributed on an "AS IS" basis,
681
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
682
+ * See the License for the specific language governing permissions and
683
+ * limitations under the License.
684
+ */
685
+
686
+ /*
687
+ * Copyright 2015-2025 Ritense BV, the Netherlands.
688
+ *
689
+ * Licensed under EUPL, Version 1.2 (the "License");
690
+ * you may not use this file except in compliance with the License.
691
+ * You may obtain a copy of the License at
692
+ *
693
+ * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
694
+ *
695
+ * Unless required by applicable law or agreed to in writing, software
696
+ * distributed under the License is distributed on an "AS IS" basis,
697
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
698
+ * See the License for the specific language governing permissions and
699
+ * limitations under the License.
700
+ */
701
+ var TagColor;
702
+ (function (TagColor) {
703
+ TagColor["WarmGray"] = "WARMGRAY";
704
+ TagColor["Red"] = "RED";
705
+ TagColor["Magenta"] = "MAGENTA";
706
+ TagColor["Purple"] = "PURPLE";
707
+ TagColor["Blue"] = "BLUE";
708
+ TagColor["Cyan"] = "CYAN";
709
+ TagColor["Teal"] = "TEAL";
710
+ TagColor["Green"] = "GREEN";
711
+ TagColor["Gray"] = "GRAY";
712
+ TagColor["CoolGray"] = "COOLGRAY";
713
+ TagColor["HighContrast"] = "HIGHCONTRAST";
714
+ TagColor["Outline"] = "OUTLINE";
715
+ })(TagColor || (TagColor = {}));
716
+
717
+ /*
718
+ * Copyright 2015-2025 Ritense BV, the Netherlands.
719
+ *
720
+ * Licensed under EUPL, Version 1.2 (the "License");
721
+ * you may not use this file except in compliance with the License.
722
+ * You may obtain a copy of the License at
723
+ *
724
+ * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
725
+ *
726
+ * Unless required by applicable law or agreed to in writing, software
727
+ * distributed under the License is distributed on an "AS IS" basis,
728
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
729
+ * See the License for the specific language governing permissions and
730
+ * limitations under the License.
731
+ */
732
+
733
+ /*
734
+ * Copyright 2015-2025 Ritense BV, the Netherlands.
735
+ *
736
+ * Licensed under EUPL, Version 1.2 (the "License");
737
+ * you may not use this file except in compliance with the License.
738
+ * You may obtain a copy of the License at
739
+ *
740
+ * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
741
+ *
742
+ * Unless required by applicable law or agreed to in writing, software
743
+ * distributed under the License is distributed on an "AS IS" basis,
744
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
745
+ * See the License for the specific language governing permissions and
746
+ * limitations under the License.
747
+ */
748
+
749
+ /*
750
+ * Copyright 2015-2025 Ritense BV, the Netherlands.
751
+ *
752
+ * Licensed under EUPL, Version 1.2 (the "License");
753
+ * you may not use this file except in compliance with the License.
754
+ * You may obtain a copy of the License at
755
+ *
756
+ * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
757
+ *
758
+ * Unless required by applicable law or agreed to in writing, software
759
+ * distributed under the License is distributed on an "AS IS" basis,
760
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
761
+ * See the License for the specific language governing permissions and
762
+ * limitations under the License.
763
+ */
764
+
765
+ /*
766
+ * Copyright 2015-2025 Ritense BV, the Netherlands.
767
+ *
768
+ * Licensed under EUPL, Version 1.2 (the "License");
769
+ * you may not use this file except in compliance with the License.
770
+ * You may obtain a copy of the License at
771
+ *
772
+ * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
773
+ *
774
+ * Unless required by applicable law or agreed to in writing, software
775
+ * distributed under the License is distributed on an "AS IS" basis,
776
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
777
+ * See the License for the specific language governing permissions and
778
+ * limitations under the License.
779
+ */
780
+
781
+ /*
782
+ * Copyright 2015-2025 Ritense BV, the Netherlands.
783
+ *
784
+ * Licensed under EUPL, Version 1.2 (the "License");
785
+ * you may not use this file except in compliance with the License.
786
+ * You may obtain a copy of the License at
787
+ *
788
+ * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
789
+ *
790
+ * Unless required by applicable law or agreed to in writing, software
791
+ * distributed under the License is distributed on an "AS IS" basis,
792
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
793
+ * See the License for the specific language governing permissions and
794
+ * limitations under the License.
795
+ */
796
+
797
+ /*
798
+ * Copyright 2015-2025 Ritense BV, the Netherlands.
799
+ *
800
+ * Licensed under EUPL, Version 1.2 (the "License");
801
+ * you may not use this file except in compliance with the License.
802
+ * You may obtain a copy of the License at
803
+ *
804
+ * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
805
+ *
806
+ * Unless required by applicable law or agreed to in writing, software
807
+ * distributed under the License is distributed on an "AS IS" basis,
808
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
809
+ * See the License for the specific language governing permissions and
810
+ * limitations under the License.
811
+ */
812
+ class ConfigService {
813
+ constructor(valtimoConfig, componentFactoryResolver) {
814
+ this.valtimoConfig = valtimoConfig;
815
+ this.componentFactoryResolver = componentFactoryResolver;
816
+ this.extensions = [];
817
+ this.DEFAULT_APPLICATION_TITLE = 'Valtimo';
818
+ this.extensionLoader = new ExtensionLoader(componentFactoryResolver);
819
+ }
820
+ get config() {
821
+ const config = this.valtimoConfig;
822
+ const translationResourcesConfig = config.translationResources;
823
+ return {
824
+ ...config,
825
+ initializers: config.initializers || [],
826
+ whitelistedDomains: config.whitelistedDomains.map(domain => UrlUtils.formatUrlTrailingSlash(domain, false)),
827
+ mockApi: {
828
+ ...config.mockApi,
829
+ endpointUri: UrlUtils.formatUrlTrailingSlash(config.mockApi.endpointUri, true),
830
+ },
831
+ swagger: {
832
+ ...config.swagger,
833
+ endpointUri: UrlUtils.formatUrlTrailingSlash(config.swagger.endpointUri, false),
834
+ },
835
+ valtimoApi: {
836
+ ...config.valtimoApi,
837
+ endpointUri: UrlUtils.formatUrlTrailingSlash(config.valtimoApi.endpointUri, true),
838
+ },
839
+ ...(translationResourcesConfig && {
840
+ translationResources: translationResourcesConfig.map(resource => UrlUtils.formatUrlTrailingSlash(resource, true)),
841
+ }),
842
+ applicationTitle: config.applicationTitle || this.DEFAULT_APPLICATION_TITLE,
843
+ };
844
+ }
845
+ get featureToggles() {
846
+ return this.config.featureToggles;
847
+ }
848
+ get config$() {
849
+ return of(this.config);
850
+ }
851
+ get featureToggles$() {
852
+ return of(this.config.featureToggles);
853
+ }
854
+ get initializers() {
855
+ return this.valtimoConfig?.initializers || [];
856
+ }
857
+ addExtension(extension) {
858
+ return this.extensions.push(extension);
859
+ }
860
+ getSupportedExtensionPoint(module, page, section) {
861
+ return this.extensions.find(extension => extension.extensionPoint.supports(module, page, section));
862
+ }
863
+ getSupportedExtensionPoints(module, page, section) {
864
+ return this.extensions.filter(extension => extension.extensionPoint.supports(module, page, section));
865
+ }
866
+ loadExtensionPoint(viewContainerRef, extensionPoint) {
867
+ this.extensionLoader.loadExtensionPoint(viewContainerRef, extensionPoint);
868
+ }
869
+ loadAndReturnExtensionPoint(viewContainerRef, extensionPoint) {
870
+ return this.extensionLoader.loadAndClearExtensionPoint(viewContainerRef, extensionPoint);
871
+ }
872
+ getFeatureToggleObservable(featureToggle) {
873
+ return this.featureToggles$.pipe(map(featureToggles => !!(featureToggles && featureToggles[featureToggle])));
874
+ }
875
+ getFeatureToggle(featureToggle) {
876
+ return !!(this.featureToggles && this.featureToggles[featureToggle]);
877
+ }
878
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: ConfigService, deps: [{ token: VALTIMO_CONFIG }, { token: i0.ComponentFactoryResolver }], target: i0.ɵɵFactoryTarget.Injectable }); }
879
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: ConfigService, providedIn: 'root' }); }
880
+ }
881
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: ConfigService, decorators: [{
882
+ type: Injectable,
883
+ args: [{
884
+ providedIn: 'root',
885
+ }]
886
+ }], ctorParameters: () => [{ type: undefined, decorators: [{
887
+ type: Inject,
888
+ args: [VALTIMO_CONFIG]
889
+ }] }, { type: i0.ComponentFactoryResolver }] });
890
+
891
+ /*
892
+ * Copyright 2015-2025 Ritense BV, the Netherlands.
893
+ *
894
+ * Licensed under EUPL, Version 1.2 (the "License");
895
+ * you may not use this file except in compliance with the License.
896
+ * You may obtain a copy of the License at
897
+ *
898
+ * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
899
+ *
900
+ * Unless required by applicable law or agreed to in writing, software
901
+ * distributed under the License is distributed on an "AS IS" basis,
902
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
903
+ * See the License for the specific language governing permissions and
904
+ * limitations under the License.
905
+ */
906
+ class GlobalNotificationService {
907
+ constructor() {
908
+ this._notificationService = null;
909
+ this._notificationQueue = [];
910
+ }
911
+ setNotificationService(service) {
912
+ this._notificationService = service;
913
+ }
914
+ getNotificationService() {
915
+ return this._notificationService;
916
+ }
917
+ showNotification(notificationObj, notificationComp = Notification) {
918
+ if (!this._notificationService)
919
+ return null;
920
+ return this.handleNotificationRef(this._notificationService?.showNotification(getNotificationObject(notificationObj), notificationComp));
921
+ }
922
+ showToast(notificationObj, notificationComp = Toast) {
923
+ if (!this._notificationService)
924
+ return null;
925
+ return this.handleNotificationRef(this._notificationService?.showToast(getNotificationObject(notificationObj), notificationComp));
926
+ }
927
+ showActionable(notificationObj, notificationComp = ActionableNotification) {
928
+ if (!this._notificationService)
929
+ return null;
930
+ return this.handleNotificationRef(this._notificationService?.showActionable(getNotificationObject(notificationObj), notificationComp));
931
+ }
932
+ close(notificationRef) {
933
+ notificationRef.close.emit();
934
+ }
935
+ getSmartTimeout(notificationObj) {
936
+ if (!this._notificationService)
937
+ return null;
938
+ return this._notificationService?.getSmartTimeout(notificationObj);
939
+ }
940
+ getNotificationRefs() {
941
+ if (!this._notificationService)
942
+ return null;
943
+ return this._notificationService?.notificationRefs;
944
+ }
945
+ getOnCloseEmitter() {
946
+ if (!this._notificationService)
947
+ return null;
948
+ return this._notificationService?.onClose;
949
+ }
950
+ ngOnDestroy() {
951
+ this._notificationService?.ngOnDestroy();
952
+ this._notificationQueue.splice(0, this._notificationQueue.length);
953
+ }
954
+ handleNotificationRef(notificationRef) {
955
+ const notification = {
956
+ ...notificationRef,
957
+ id: notificationRef.toastID ??
958
+ notificationRef.notificationID ??
959
+ notificationRef.actionableNotificationID,
960
+ };
961
+ if (this._notificationQueue.length > 3) {
962
+ this._notificationQueue.splice(0, 1);
963
+ this.close(notificationRef);
964
+ }
965
+ this._notificationQueue.push(notification);
966
+ setTimeout(() => this.removeNotificationInQueue(notification.id), 4000);
967
+ notificationRef.close
968
+ .pipe(take(1))
969
+ .subscribe(() => this.removeNotificationInQueue(notification.id));
970
+ return notificationRef;
971
+ }
972
+ removeNotificationInQueue(id) {
973
+ const index = this._notificationQueue.findIndex((notification) => notification.id === id);
974
+ if (index === -1)
975
+ return;
976
+ this._notificationQueue.splice(index, 1);
977
+ }
978
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: GlobalNotificationService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
979
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: GlobalNotificationService, providedIn: 'root' }); }
980
+ }
981
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: GlobalNotificationService, decorators: [{
982
+ type: Injectable,
983
+ args: [{
984
+ providedIn: 'root',
985
+ }]
986
+ }] });
987
+
988
+ /*
989
+ * Copyright 2015-2025 Ritense BV, the Netherlands.
990
+ *
991
+ * Licensed under EUPL, Version 1.2 (the "License");
992
+ * you may not use this file except in compliance with the License.
993
+ * You may obtain a copy of the License at
994
+ *
995
+ * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
996
+ *
997
+ * Unless required by applicable law or agreed to in writing, software
998
+ * distributed under the License is distributed on an "AS IS" basis,
999
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1000
+ * See the License for the specific language governing permissions and
1001
+ * limitations under the License.
1002
+ */
1003
+ class LocalizationService {
1004
+ constructor(http, configService) {
1005
+ this.http = http;
1006
+ this.configService = configService;
1007
+ this.valtimoApiUri = configService?.config?.valtimoApi?.endpointUri;
1008
+ }
1009
+ getLocalization(languageKey) {
1010
+ return this.http
1011
+ .get(`${this.valtimoApiUri}v1/localization/${languageKey}`, {
1012
+ headers: new HttpHeaders().set('X-Skip-Interceptor', '403'),
1013
+ })
1014
+ .pipe(catchError(() => of({})));
1015
+ }
1016
+ getLocalizations() {
1017
+ return this.http.get(`${this.valtimoApiUri}v1/localization`);
1018
+ }
1019
+ getMergedLocalizations() {
1020
+ return this.getLocalizations().pipe(map(res => res.reduce((acc, curr) => ({ ...acc, [curr.languageKey]: curr.content }), {})));
1021
+ }
1022
+ updateLocalization(languageKey, updatedLocalizationContent) {
1023
+ return this.http.put(`${this.valtimoApiUri}management/v1/localization/${languageKey}`, updatedLocalizationContent);
1024
+ }
1025
+ updateLocalizations(updatedLocalizations) {
1026
+ return this.http.put(`${this.valtimoApiUri}management/v1/localization`, updatedLocalizations);
1027
+ }
1028
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: LocalizationService, deps: [{ token: i1.HttpClient }, { token: ConfigService }], target: i0.ɵɵFactoryTarget.Injectable }); }
1029
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: LocalizationService, providedIn: 'root' }); }
1030
+ }
1031
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: LocalizationService, decorators: [{
1032
+ type: Injectable,
1033
+ args: [{
1034
+ providedIn: 'root',
1035
+ }]
1036
+ }], ctorParameters: () => [{ type: i1.HttpClient }, { type: ConfigService }] });
1037
+
1038
+ /*
1039
+ * Copyright 2015-2025 Ritense BV, the Netherlands.
1040
+ *
1041
+ * Licensed under EUPL, Version 1.2 (the "License");
1042
+ * you may not use this file except in compliance with the License.
1043
+ * You may obtain a copy of the License at
1044
+ *
1045
+ * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
1046
+ *
1047
+ * Unless required by applicable law or agreed to in writing, software
1048
+ * distributed under the License is distributed on an "AS IS" basis,
1049
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1050
+ * See the License for the specific language governing permissions and
1051
+ * limitations under the License.
1052
+ */
1053
+ class MenuIncludeService {
1054
+ constructor(configService) {
1055
+ this.configService = configService;
1056
+ this.valtimoConfig = this.configService.config;
1057
+ }
1058
+ getIncludeFunction(includeFunction) {
1059
+ switch (includeFunction) {
1060
+ case IncludeFunction.ObjectManagementEnabled:
1061
+ return of(!!this.valtimoConfig?.featureToggles?.enableObjectManagement || true);
1062
+ default:
1063
+ return of(true);
1064
+ }
1065
+ }
1066
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: MenuIncludeService, deps: [{ token: ConfigService }], target: i0.ɵɵFactoryTarget.Injectable }); }
1067
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: MenuIncludeService, providedIn: 'root' }); }
1068
+ }
1069
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: MenuIncludeService, decorators: [{
1070
+ type: Injectable,
1071
+ args: [{
1072
+ providedIn: 'root',
1073
+ }]
1074
+ }], ctorParameters: () => [{ type: ConfigService }] });
1075
+
1076
+ /*
1077
+ * Copyright 2015-2025 Ritense BV, the Netherlands.
1078
+ *
1079
+ * Licensed under EUPL, Version 1.2 (the "License");
1080
+ * you may not use this file except in compliance with the License.
1081
+ * You may obtain a copy of the License at
1082
+ *
1083
+ * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
1084
+ *
1085
+ * Unless required by applicable law or agreed to in writing, software
1086
+ * distributed under the License is distributed on an "AS IS" basis,
1087
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1088
+ * See the License for the specific language governing permissions and
1089
+ * limitations under the License.
1090
+ */
1091
+ class UserSettingsService {
1092
+ constructor(http, configService) {
1093
+ this.http = http;
1094
+ this.configService = configService;
1095
+ this.valtimoApiUri = configService?.config?.valtimoApi?.endpointUri;
1096
+ }
1097
+ getUserSettings() {
1098
+ return this.http.get(`${this.valtimoApiUri}v1/user/settings`);
1099
+ }
1100
+ saveUserSettings(settings) {
1101
+ return this.http.put(`${this.valtimoApiUri}v1/user/settings`, settings);
1102
+ }
1103
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: UserSettingsService, deps: [{ token: i1.HttpClient }, { token: ConfigService }], target: i0.ɵɵFactoryTarget.Injectable }); }
1104
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: UserSettingsService, providedIn: 'root' }); }
1105
+ }
1106
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: UserSettingsService, decorators: [{
1107
+ type: Injectable,
1108
+ args: [{
1109
+ providedIn: 'root',
1110
+ }]
1111
+ }], ctorParameters: () => [{ type: i1.HttpClient }, { type: ConfigService }] });
1112
+
1113
+ /*
1114
+ * Copyright 2015-2025 Ritense BV, the Netherlands.
1115
+ *
1116
+ * Licensed under EUPL, Version 1.2 (the "License");
1117
+ * you may not use this file except in compliance with the License.
1118
+ * You may obtain a copy of the License at
1119
+ *
1120
+ * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
1121
+ *
1122
+ * Unless required by applicable law or agreed to in writing, software
1123
+ * distributed under the License is distributed on an "AS IS" basis,
1124
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1125
+ * See the License for the specific language governing permissions and
1126
+ * limitations under the License.
1127
+ */
1128
+ const VERSIONS = {
1129
+ frontendLibraries: '0.0.0-test',
1130
+ };
1131
+
1132
+ /*
1133
+ * Copyright 2015-2025 Ritense BV, the Netherlands.
1134
+ *
1135
+ * Licensed under EUPL, Version 1.2 (the "License");
1136
+ * you may not use this file except in compliance with the License.
1137
+ * You may obtain a copy of the License at
1138
+ *
1139
+ * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
1140
+ *
1141
+ * Unless required by applicable law or agreed to in writing, software
1142
+ * distributed under the License is distributed on an "AS IS" basis,
1143
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1144
+ * See the License for the specific language governing permissions and
1145
+ * limitations under the License.
1146
+ */
1147
+ const CASE_MANAGEMENT_TAB_TOKEN = new InjectionToken('Specify a component to display per configured tab translation key.');
1148
+
1149
+ /*
1150
+ * Copyright 2015-2025 Ritense BV, the Netherlands.
1151
+ *
1152
+ * Licensed under EUPL, Version 1.2 (the "License");
1153
+ * you may not use this file except in compliance with the License.
1154
+ * You may obtain a copy of the License at
1155
+ *
1156
+ * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
1157
+ *
1158
+ * Unless required by applicable law or agreed to in writing, software
1159
+ * distributed under the License is distributed on an "AS IS" basis,
1160
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1161
+ * See the License for the specific language governing permissions and
1162
+ * limitations under the License.
1163
+ */
1164
+ const FORM_VIEW_MODEL_TOKEN = new InjectionToken('Specify the form view model component.');
1165
+
1166
+ /*
1167
+ * Copyright 2015-2025 Ritense BV, the Netherlands.
1168
+ *
1169
+ * Licensed under EUPL, Version 1.2 (the "License");
1170
+ * you may not use this file except in compliance with the License.
1171
+ * You may obtain a copy of the License at
1172
+ *
1173
+ * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
1174
+ *
1175
+ * Unless required by applicable law or agreed to in writing, software
1176
+ * distributed under the License is distributed on an "AS IS" basis,
1177
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1178
+ * See the License for the specific language governing permissions and
1179
+ * limitations under the License.
1180
+ */
1181
+ const InterceptorSkip = 'X-Skip-Interceptor';
1182
+ const InterceptorSkipHeader = new HttpHeaders().set(InterceptorSkip, 'all');
1183
+
1184
+ /*
1185
+ * Copyright 2015-2025 Ritense BV, the Netherlands.
1186
+ *
1187
+ * Licensed under EUPL, Version 1.2 (the "License");
1188
+ * you may not use this file except in compliance with the License.
1189
+ * You may obtain a copy of the License at
1190
+ *
1191
+ * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
1192
+ *
1193
+ * Unless required by applicable law or agreed to in writing, software
1194
+ * distributed under the License is distributed on an "AS IS" basis,
1195
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1196
+ * See the License for the specific language governing permissions and
1197
+ * limitations under the License.
1198
+ */
1199
+ const CASE_CONFIGURATION_EXTENSIONS_TOKEN = new InjectionToken('Specify components to display on on the case management general page.');
1200
+
1201
+ /*
1202
+ * Copyright 2015-2025 Ritense BV, the Netherlands.
1203
+ *
1204
+ * Licensed under EUPL, Version 1.2 (the "License");
1205
+ * you may not use this file except in compliance with the License.
1206
+ * You may obtain a copy of the License at
1207
+ *
1208
+ * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
1209
+ *
1210
+ * Unless required by applicable law or agreed to in writing, software
1211
+ * distributed under the License is distributed on an "AS IS" basis,
1212
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1213
+ * See the License for the specific language governing permissions and
1214
+ * limitations under the License.
1215
+ */
1216
+ const IKO_TOKEN = new InjectionToken('IKO is enabled when this token is provided');
1217
+
1218
+ /*
1219
+ * Copyright 2015-2026 Ritense BV, the Netherlands.
1220
+ *
1221
+ * Licensed under EUPL, Version 1.2 (the "License");
1222
+ * you may not use this file except in compliance with the License.
1223
+ * You may obtain a copy of the License at
1224
+ *
1225
+ * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
1226
+ *
1227
+ * Unless required by applicable law or agreed to in writing, software
1228
+ * distributed under the License is distributed on an "AS IS" basis,
1229
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1230
+ * See the License for the specific language governing permissions and
1231
+ * limitations under the License.
1232
+ */
1233
+ const BUILDING_BLOCK_MANAGEMENT_TAB_TOKEN = new InjectionToken('Specify components to display as tabs on the building block management detail page.');
1234
+
1235
+ /*
1236
+ * Copyright 2015-2025 Ritense BV, the Netherlands.
1237
+ *
1238
+ * Licensed under EUPL, Version 1.2 (the "License");
1239
+ * you may not use this file except in compliance with the License.
1240
+ * You may obtain a copy of the License at
1241
+ *
1242
+ * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
1243
+ *
1244
+ * Unless required by applicable law or agreed to in writing, software
1245
+ * distributed under the License is distributed on an "AS IS" basis,
1246
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1247
+ * See the License for the specific language governing permissions and
1248
+ * limitations under the License.
1249
+ */
1250
+
1251
+ /*
1252
+ * Copyright 2015-2025 Ritense BV, the Netherlands.
1253
+ *
1254
+ * Licensed under EUPL, Version 1.2 (the "License");
1255
+ * you may not use this file except in compliance with the License.
1256
+ * You may obtain a copy of the License at
1257
+ *
1258
+ * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
1259
+ *
1260
+ * Unless required by applicable law or agreed to in writing, software
1261
+ * distributed under the License is distributed on an "AS IS" basis,
1262
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1263
+ * See the License for the specific language governing permissions and
1264
+ * limitations under the License.
1265
+ */
1266
+ class EnvironmentService extends BaseApiService {
1267
+ constructor(httpClient, configService) {
1268
+ super(httpClient, configService);
1269
+ this.httpClient = httpClient;
1270
+ this.configService = configService;
1271
+ }
1272
+ canUpdateGlobalConfiguration() {
1273
+ return this.httpClient
1274
+ .get(this.getApiUrl('management/v1/case-definition/check'), {
1275
+ headers: new HttpHeaders().set(InterceptorSkip, '404'),
1276
+ })
1277
+ .pipe(map(response => response.canUpdateGlobalConfiguration), catchError(() => of(true)));
1278
+ }
1279
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: EnvironmentService, deps: [{ token: i1.HttpClient }, { token: ConfigService }], target: i0.ɵɵFactoryTarget.Injectable }); }
1280
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: EnvironmentService, providedIn: 'root' }); }
1281
+ }
1282
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: EnvironmentService, decorators: [{
1283
+ type: Injectable,
1284
+ args: [{
1285
+ providedIn: 'root',
1286
+ }]
1287
+ }], ctorParameters: () => [{ type: i1.HttpClient }, { type: ConfigService }] });
1288
+
1289
+ /*
1290
+ * Copyright 2015-2025 Ritense BV, the Netherlands.
1291
+ *
1292
+ * Licensed under EUPL, Version 1.2 (the "License");
1293
+ * you may not use this file except in compliance with the License.
1294
+ * You may obtain a copy of the License at
1295
+ *
1296
+ * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
1297
+ *
1298
+ * Unless required by applicable law or agreed to in writing, software
1299
+ * distributed under the License is distributed on an "AS IS" basis,
1300
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1301
+ * See the License for the specific language governing permissions and
1302
+ * limitations under the License.
1303
+ */
1304
+ class DraftVersionService extends BaseApiService {
1305
+ constructor(httpClient, configService) {
1306
+ super(httpClient, configService);
1307
+ this.httpClient = httpClient;
1308
+ this.configService = configService;
1309
+ }
1310
+ isDraftVersion(caseDefinitionKey, caseDefinitionVersionTag) {
1311
+ if (!caseDefinitionKey || !caseDefinitionVersionTag) {
1312
+ return of(false);
1313
+ }
1314
+ return this.httpClient
1315
+ .get(this.getApiUrl(`management/v1/case-definition/${caseDefinitionKey}/version/${caseDefinitionVersionTag}`), {
1316
+ headers: new HttpHeaders().set(InterceptorSkip, '403'),
1317
+ })
1318
+ .pipe(map(caseDefinition => !caseDefinition.final));
1319
+ }
1320
+ isDraftVersionBuildingBlock(buildingBlockDefinitionKey, buildingBlockDefinitionVersionTag) {
1321
+ if (!buildingBlockDefinitionKey || !buildingBlockDefinitionVersionTag) {
1322
+ return of(false);
1323
+ }
1324
+ return this.httpClient
1325
+ .get(this.getApiUrl(`management/v1/building-block/${buildingBlockDefinitionKey}/version/${buildingBlockDefinitionVersionTag}`), {
1326
+ headers: new HttpHeaders().set(InterceptorSkip, '403'),
1327
+ })
1328
+ .pipe(map(buildingBlockDefinition => !buildingBlockDefinition.final));
1329
+ }
1330
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: DraftVersionService, deps: [{ token: i1.HttpClient }, { token: ConfigService }], target: i0.ɵɵFactoryTarget.Injectable }); }
1331
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: DraftVersionService, providedIn: 'root' }); }
1332
+ }
1333
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: DraftVersionService, decorators: [{
1334
+ type: Injectable,
1335
+ args: [{
1336
+ providedIn: 'root',
1337
+ }]
1338
+ }], ctorParameters: () => [{ type: i1.HttpClient }, { type: ConfigService }] });
1339
+
1340
+ /*
1341
+ * Copyright 2015-2025 Ritense BV, the Netherlands.
1342
+ *
1343
+ * Licensed under EUPL, Version 1.2 (the "License");
1344
+ * you may not use this file except in compliance with the License.
1345
+ * You may obtain a copy of the License at
1346
+ *
1347
+ * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
1348
+ *
1349
+ * Unless required by applicable law or agreed to in writing, software
1350
+ * distributed under the License is distributed on an "AS IS" basis,
1351
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1352
+ * See the License for the specific language governing permissions and
1353
+ * limitations under the License.
1354
+ */
1355
+ class EditPermissionsService extends BaseApiService {
1356
+ constructor(httpClient, configService, environmentService, draftVersionService) {
1357
+ super(httpClient, configService);
1358
+ this.httpClient = httpClient;
1359
+ this.configService = configService;
1360
+ this.environmentService = environmentService;
1361
+ this.draftVersionService = draftVersionService;
1362
+ }
1363
+ hasEditPermissions(caseDefinitionKey, caseDefinitionVersionTag) {
1364
+ return combineLatest([
1365
+ this.environmentService.canUpdateGlobalConfiguration(),
1366
+ this.draftVersionService.isDraftVersion(caseDefinitionKey, caseDefinitionVersionTag),
1367
+ ]).pipe(map(([canUpdate, isDraftVersion]) => canUpdate && isDraftVersion));
1368
+ }
1369
+ hasPermissionsToEditBasedOnContext(params, context) {
1370
+ if (context === 'case') {
1371
+ const caseManagementParams = params;
1372
+ return this.hasEditPermissions(caseManagementParams.caseDefinitionKey, caseManagementParams.caseDefinitionVersionTag);
1373
+ }
1374
+ else if (context === 'independent') {
1375
+ return this.environmentService.canUpdateGlobalConfiguration();
1376
+ }
1377
+ else if (context === 'buildingBlock') {
1378
+ return of(true);
1379
+ }
1380
+ return of(false);
1381
+ }
1382
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: EditPermissionsService, deps: [{ token: i1.HttpClient }, { token: ConfigService }, { token: EnvironmentService }, { token: DraftVersionService }], target: i0.ɵɵFactoryTarget.Injectable }); }
1383
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: EditPermissionsService, providedIn: 'root' }); }
1384
+ }
1385
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: EditPermissionsService, decorators: [{
1386
+ type: Injectable,
1387
+ args: [{
1388
+ providedIn: 'root',
1389
+ }]
1390
+ }], ctorParameters: () => [{ type: i1.HttpClient }, { type: ConfigService }, { type: EnvironmentService }, { type: DraftVersionService }] });
1391
+
1392
+ /*
1393
+ * Copyright 2015-2026 Ritense BV, the Netherlands.
1394
+ *
1395
+ * Licensed under EUPL, Version 1.2 (the "License");
1396
+ * you may not use this file except in compliance with the License.
1397
+ * You may obtain a copy of the License at
1398
+ *
1399
+ * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
1400
+ *
1401
+ * Unless required by applicable law or agreed to in writing, software
1402
+ * distributed under the License is distributed on an "AS IS" basis,
1403
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1404
+ * See the License for the specific language governing permissions and
1405
+ * limitations under the License.
1406
+ */
1407
+ class ConfigurationIssueService {
1408
+ constructor() {
1409
+ this._unresolvedIssueTypes$ = new BehaviorSubject(new Set());
1410
+ this.hasAnyIssues$ = this._unresolvedIssueTypes$.pipe(map(types => types.size > 0));
1411
+ }
1412
+ setUnresolvedIssueTypes(issueTypes) {
1413
+ this._unresolvedIssueTypes$.next(new Set(issueTypes));
1414
+ }
1415
+ hasIssue$(issueType) {
1416
+ return this._unresolvedIssueTypes$.pipe(map(types => types.has(issueType)));
1417
+ }
1418
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: ConfigurationIssueService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
1419
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: ConfigurationIssueService, providedIn: 'root' }); }
1420
+ }
1421
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: ConfigurationIssueService, decorators: [{
1422
+ type: Injectable,
1423
+ args: [{
1424
+ providedIn: 'root',
1425
+ }]
1426
+ }] });
1427
+
1428
+ /*
1429
+ * Copyright 2015-2026 Ritense BV, the Netherlands.
1430
+ *
1431
+ * Licensed under EUPL, Version 1.2 (the "License");
1432
+ * you may not use this file except in compliance with the License.
1433
+ * You may obtain a copy of the License at
1434
+ *
1435
+ * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
1436
+ *
1437
+ * Unless required by applicable law or agreed to in writing, software
1438
+ * distributed under the License is distributed on an "AS IS" basis,
1439
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1440
+ * See the License for the specific language governing permissions and
1441
+ * limitations under the License.
1442
+ */
1443
+
1444
+ /*
1445
+ * Copyright 2015-2025 Ritense BV, the Netherlands.
1446
+ *
1447
+ * Licensed under EUPL, Version 1.2 (the "License");
1448
+ * you may not use this file except in compliance with the License.
1449
+ * You may obtain a copy of the License at
1450
+ *
1451
+ * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
1452
+ *
1453
+ * Unless required by applicable law or agreed to in writing, software
1454
+ * distributed under the License is distributed on an "AS IS" basis,
1455
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1456
+ * See the License for the specific language governing permissions and
1457
+ * limitations under the License.
1458
+ */
1459
+ class GlobalNotificationComponent {
1460
+ constructor(globalNotificationService, notificationService) {
1461
+ this.globalNotificationService = globalNotificationService;
1462
+ this.notificationService = notificationService;
1463
+ }
1464
+ ngOnInit() {
1465
+ this.globalNotificationService.setNotificationService(this.notificationService);
1466
+ }
1467
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: GlobalNotificationComponent, deps: [{ token: GlobalNotificationService }, { token: i2.NotificationService }], target: i0.ɵɵFactoryTarget.Component }); }
1468
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.20", type: GlobalNotificationComponent, isStandalone: true, selector: "valtimo-global-notification", providers: [NotificationService], ngImport: i0, template: ``, isInline: true, styles: ["::ng-deep .cds--toast-notification{width:100%}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }] }); }
1469
+ }
1470
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: GlobalNotificationComponent, decorators: [{
1471
+ type: Component,
1472
+ args: [{ selector: 'valtimo-global-notification', template: ``, providers: [NotificationService], standalone: true, imports: [CommonModule], styles: ["::ng-deep .cds--toast-notification{width:100%}\n"] }]
1473
+ }], ctorParameters: () => [{ type: GlobalNotificationService }, { type: i2.NotificationService }] });
1474
+
1475
+ /*
1476
+ * Copyright 2015-2025 Ritense BV, the Netherlands.
1477
+ *
1478
+ * Licensed under EUPL, Version 1.2 (the "License");
1479
+ * you may not use this file except in compliance with the License.
1480
+ * You may obtain a copy of the License at
1481
+ *
1482
+ * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
1483
+ *
1484
+ * Unless required by applicable law or agreed to in writing, software
1485
+ * distributed under the License is distributed on an "AS IS" basis,
1486
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1487
+ * See the License for the specific language governing permissions and
1488
+ * limitations under the License.
1489
+ */
1490
+ class ExtensionComponent {
1491
+ constructor(configService) {
1492
+ this.configService = configService;
1493
+ this.extensionLoader = null;
1494
+ }
1495
+ ngOnInit() {
1496
+ this.configService
1497
+ .getSupportedExtensionPoints(this.module, this.page, this.section)
1498
+ .forEach(extension => {
1499
+ this.configService.loadExtensionPoint(this.viewContainerRef, extension.extensionPoint);
1500
+ });
1501
+ }
1502
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: ExtensionComponent, deps: [{ token: ConfigService }], target: i0.ɵɵFactoryTarget.Component }); }
1503
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.20", type: ExtensionComponent, isStandalone: false, selector: "valtimo-extension", inputs: { module: "module", page: "page", section: "section" }, viewQueries: [{ propertyName: "viewContainerRef", first: true, predicate: ["injectExtension"], descendants: true, read: ViewContainerRef, static: true }], ngImport: i0, template: "<!--\n ~ Copyright 2015-2025 Ritense BV, the Netherlands.\n ~\n ~ Licensed under EUPL, Version 1.2 (the \"License\");\n ~ you may not use this file except in compliance with the License.\n ~ You may obtain a copy of the License at\n ~\n ~ https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n ~\n ~ Unless required by applicable law or agreed to in writing, software\n ~ distributed under the License is distributed on an \"AS IS\" basis,\n ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n ~ See the License for the specific language governing permissions and\n ~ limitations under the License.\n -->\n\n<ng-template #injectExtension></ng-template>\n", styles: [""] }); }
1504
+ }
1505
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: ExtensionComponent, decorators: [{
1506
+ type: Component,
1507
+ args: [{ selector: 'valtimo-extension', standalone: false, template: "<!--\n ~ Copyright 2015-2025 Ritense BV, the Netherlands.\n ~\n ~ Licensed under EUPL, Version 1.2 (the \"License\");\n ~ you may not use this file except in compliance with the License.\n ~ You may obtain a copy of the License at\n ~\n ~ https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n ~\n ~ Unless required by applicable law or agreed to in writing, software\n ~ distributed under the License is distributed on an \"AS IS\" basis,\n ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n ~ See the License for the specific language governing permissions and\n ~ limitations under the License.\n -->\n\n<ng-template #injectExtension></ng-template>\n" }]
1508
+ }], ctorParameters: () => [{ type: ConfigService }], propDecorators: { module: [{
1509
+ type: Input
1510
+ }], page: [{
1511
+ type: Input
1512
+ }], section: [{
1513
+ type: Input
1514
+ }], viewContainerRef: [{
1515
+ type: ViewChild,
1516
+ args: ['injectExtension', { read: ViewContainerRef, static: true }]
1517
+ }] } });
1518
+
1519
+ /*
1520
+ * Copyright 2015-2025 Ritense BV, the Netherlands.
1521
+ *
1522
+ * Licensed under EUPL, Version 1.2 (the "License");
1523
+ * you may not use this file except in compliance with the License.
1524
+ * You may obtain a copy of the License at
1525
+ *
1526
+ * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
1527
+ *
1528
+ * Unless required by applicable law or agreed to in writing, software
1529
+ * distributed under the License is distributed on an "AS IS" basis,
1530
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1531
+ * See the License for the specific language governing permissions and
1532
+ * limitations under the License.
1533
+ */
1534
+ class ConfigModule {
1535
+ static forRoot(config) {
1536
+ return {
1537
+ ngModule: ConfigModule,
1538
+ providers: [
1539
+ ConfigService,
1540
+ {
1541
+ provide: VALTIMO_CONFIG,
1542
+ useValue: config,
1543
+ },
1544
+ ],
1545
+ };
1546
+ }
1547
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: ConfigModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
1548
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.20", ngImport: i0, type: ConfigModule, declarations: [ExtensionComponent], exports: [ExtensionComponent] }); }
1549
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: ConfigModule }); }
1550
+ }
1551
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: ConfigModule, decorators: [{
1552
+ type: NgModule,
1553
+ args: [{
1554
+ declarations: [ExtensionComponent],
1555
+ imports: [],
1556
+ exports: [ExtensionComponent],
1557
+ }]
1558
+ }] });
1559
+
1560
+ /*
1561
+ * Copyright 2015-2025 Ritense BV, the Netherlands.
1562
+ *
1563
+ * Licensed under EUPL, Version 1.2 (the "License");
1564
+ * you may not use this file except in compliance with the License.
1565
+ * You may obtain a copy of the License at
1566
+ *
1567
+ * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
1568
+ *
1569
+ * Unless required by applicable law or agreed to in writing, software
1570
+ * distributed under the License is distributed on an "AS IS" basis,
1571
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1572
+ * See the License for the specific language governing permissions and
1573
+ * limitations under the License.
1574
+ */
1575
+ class MockTranslateService {
1576
+ stream(key) {
1577
+ return of(null);
1578
+ }
1579
+ instant(key) {
1580
+ return '';
1581
+ }
1582
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: MockTranslateService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
1583
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: MockTranslateService, providedIn: 'root' }); }
1584
+ }
1585
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: MockTranslateService, decorators: [{
1586
+ type: Injectable,
1587
+ args: [{
1588
+ providedIn: 'root',
1589
+ }]
1590
+ }] });
1591
+
1592
+ /*
1593
+ * Copyright 2015-2025 Ritense BV, the Netherlands.
1594
+ *
1595
+ * Licensed under EUPL, Version 1.2 (the "License");
1596
+ * you may not use this file except in compliance with the License.
1597
+ * You may obtain a copy of the License at
1598
+ *
1599
+ * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
1600
+ *
1601
+ * Unless required by applicable law or agreed to in writing, software
1602
+ * distributed under the License is distributed on an "AS IS" basis,
1603
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1604
+ * See the License for the specific language governing permissions and
1605
+ * limitations under the License.
1606
+ */
1607
+ class MockKeycloakService {
1608
+ constructor() {
1609
+ this.MOCK_USER_PROFILE = {
1610
+ id: '',
1611
+ username: '',
1612
+ email: '',
1613
+ firstName: '',
1614
+ lastName: '',
1615
+ enabled: true,
1616
+ emailVerified: true,
1617
+ totp: true,
1618
+ createdTimestamp: 0,
1619
+ };
1620
+ }
1621
+ get keycloakEvents$() {
1622
+ return of({ type: '' });
1623
+ }
1624
+ isLoggedIn() {
1625
+ return of(true);
1626
+ }
1627
+ async loadUserProfile() {
1628
+ return this.MOCK_USER_PROFILE;
1629
+ }
1630
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: MockKeycloakService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
1631
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: MockKeycloakService, providedIn: 'root' }); }
1632
+ }
1633
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: MockKeycloakService, decorators: [{
1634
+ type: Injectable,
1635
+ args: [{
1636
+ providedIn: 'root',
1637
+ }]
1638
+ }] });
1639
+
1640
+ /*
1641
+ * Copyright 2015-2025 Ritense BV, the Netherlands.
1642
+ *
1643
+ * Licensed under EUPL, Version 1.2 (the "License");
1644
+ * you may not use this file except in compliance with the License.
1645
+ * You may obtain a copy of the License at
1646
+ *
1647
+ * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
1648
+ *
1649
+ * Unless required by applicable law or agreed to in writing, software
1650
+ * distributed under the License is distributed on an "AS IS" basis,
1651
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1652
+ * See the License for the specific language governing permissions and
1653
+ * limitations under the License.
1654
+ */
1655
+ class MockIconService {
1656
+ registerAll(value) {
1657
+ return;
1658
+ }
1659
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: MockIconService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
1660
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: MockIconService, providedIn: 'root' }); }
1661
+ }
1662
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: MockIconService, decorators: [{
1663
+ type: Injectable,
1664
+ args: [{
1665
+ providedIn: 'root',
1666
+ }]
1667
+ }] });
1668
+
1669
+ /*
1670
+ * Copyright 2015-2025 Ritense BV, the Netherlands.
1671
+ *
1672
+ * Licensed under EUPL, Version 1.2 (the "License");
1673
+ * you may not use this file except in compliance with the License.
1674
+ * You may obtain a copy of the License at
1675
+ *
1676
+ * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
1677
+ *
1678
+ * Unless required by applicable law or agreed to in writing, software
1679
+ * distributed under the License is distributed on an "AS IS" basis,
1680
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1681
+ * See the License for the specific language governing permissions and
1682
+ * limitations under the License.
1683
+ */
1684
+
1685
+ /*
1686
+ * Copyright 2015-2025 Ritense BV, the Netherlands.
1687
+ *
1688
+ * Licensed under EUPL, Version 1.2 (the "License");
1689
+ * you may not use this file except in compliance with the License.
1690
+ * You may obtain a copy of the License at
1691
+ *
1692
+ * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
1693
+ *
1694
+ * Unless required by applicable law or agreed to in writing, software
1695
+ * distributed under the License is distributed on an "AS IS" basis,
1696
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1697
+ * See the License for the specific language governing permissions and
1698
+ * limitations under the License.
1699
+ */
1700
+
1701
+ /*
1702
+ * Copyright 2015-2025 Ritense BV, the Netherlands.
1703
+ *
1704
+ * Licensed under EUPL, Version 1.2 (the "License");
1705
+ * you may not use this file except in compliance with the License.
1706
+ * You may obtain a copy of the License at
1707
+ *
1708
+ * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
1709
+ *
1710
+ * Unless required by applicable law or agreed to in writing, software
1711
+ * distributed under the License is distributed on an "AS IS" basis,
1712
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1713
+ * See the License for the specific language governing permissions and
1714
+ * limitations under the License.
1715
+ */
1716
+ class CustomMultiTranslateHttpLoader {
1717
+ constructor(_handler, _httpClient, _localizationService, _resourcesPrefix) {
1718
+ this._handler = _handler;
1719
+ this._httpClient = _httpClient;
1720
+ this._resourcesPrefix = _resourcesPrefix;
1721
+ this._localizationService = _localizationService;
1722
+ }
1723
+ getTranslation(lang) {
1724
+ const requests = this._resourcesPrefix.map(resource => {
1725
+ let path;
1726
+ if (resource.prefix)
1727
+ path = `${resource.prefix}${lang}${resource.suffix || '.json'}`;
1728
+ else
1729
+ path = `${resource}${lang}.json`;
1730
+ return new HttpClient(this._handler).get(path).pipe(catchError(res => {
1731
+ if (!resource.optional) {
1732
+ console.group();
1733
+ console.error('Something went wrong for the following translation file:', path);
1734
+ console.error(res);
1735
+ console.groupEnd();
1736
+ }
1737
+ return of({});
1738
+ }));
1739
+ });
1740
+ return forkJoin(requests).pipe(switchMap$1(localResourcesResponse => combineLatest([of(localResourcesResponse), this._localizationService.getLocalization(lang)])), map$1(([localResourcesResponse, localizationResponse]) => deepmerge(...[...localResourcesResponse, localizationResponse])));
1741
+ }
1742
+ }
1743
+
1744
+ /*
1745
+ * Copyright 2015-2025 Ritense BV, the Netherlands.
1746
+ *
1747
+ * Licensed under EUPL, Version 1.2 (the "License");
1748
+ * you may not use this file except in compliance with the License.
1749
+ * You may obtain a copy of the License at
1750
+ *
1751
+ * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
1752
+ *
1753
+ * Unless required by applicable law or agreed to in writing, software
1754
+ * distributed under the License is distributed on an "AS IS" basis,
1755
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1756
+ * See the License for the specific language governing permissions and
1757
+ * limitations under the License.
1758
+ */
1759
+ function CustomMultiTranslateHttpLoaderFactory(http, httpClient, configService, localizationService) {
1760
+ const translationResources = configService?.config?.translationResources;
1761
+ return new CustomMultiTranslateHttpLoader(http, httpClient, localizationService, [
1762
+ './valtimo-translation/core/',
1763
+ ...(translationResources &&
1764
+ Array.isArray(translationResources) &&
1765
+ translationResources.length > 0
1766
+ ? translationResources
1767
+ : []),
1768
+ ]);
1769
+ }
1770
+
1771
+ /*
1772
+ * Copyright 2015-2025 Ritense BV, the Netherlands.
1773
+ *
1774
+ * Licensed under EUPL, Version 1.2 (the "License");
1775
+ * you may not use this file except in compliance with the License.
1776
+ * You may obtain a copy of the License at
1777
+ *
1778
+ * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
1779
+ *
1780
+ * Unless required by applicable law or agreed to in writing, software
1781
+ * distributed under the License is distributed on an "AS IS" basis,
1782
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1783
+ * See the License for the specific language governing permissions and
1784
+ * limitations under the License.
1785
+ */
1786
+ function MultiTranslateHttpLoaderFactory(http, configService) {
1787
+ const translationResources = configService.config.translationResources;
1788
+ return new MultiTranslateHttpLoader(http, [
1789
+ './valtimo-translation/core/',
1790
+ ...(translationResources &&
1791
+ Array.isArray(translationResources) &&
1792
+ translationResources.length > 0
1793
+ ? translationResources
1794
+ : []),
1795
+ ]);
1796
+ }
1797
+
1798
+ /*
1799
+ * Copyright 2015-2025 Ritense BV, the Netherlands.
1800
+ *
1801
+ * Licensed under EUPL, Version 1.2 (the "License");
1802
+ * you may not use this file except in compliance with the License.
1803
+ * You may obtain a copy of the License at
1804
+ *
1805
+ * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
1806
+ *
1807
+ * Unless required by applicable law or agreed to in writing, software
1808
+ * distributed under the License is distributed on an "AS IS" basis,
1809
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1810
+ * See the License for the specific language governing permissions and
1811
+ * limitations under the License.
1812
+ */
1813
+
1814
+ /*
1815
+ * Copyright 2015-2025 Ritense BV, the Netherlands.
1816
+ *
1817
+ * Licensed under EUPL, Version 1.2 (the "License");
1818
+ * you may not use this file except in compliance with the License.
1819
+ * You may obtain a copy of the License at
1820
+ *
1821
+ * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
1822
+ *
1823
+ * Unless required by applicable law or agreed to in writing, software
1824
+ * distributed under the License is distributed on an "AS IS" basis,
1825
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1826
+ * See the License for the specific language governing permissions and
1827
+ * limitations under the License.
1828
+ */
1829
+ const ZGW_OBJECT_TYPE_COMPONENT_TOKEN = new InjectionToken('Specify a component to display ZGW object types.');
1830
+
1831
+ /*
1832
+ * Copyright 2015-2025 Ritense BV, the Netherlands.
1833
+ *
1834
+ * Licensed under EUPL, Version 1.2 (the "License");
1835
+ * you may not use this file except in compliance with the License.
1836
+ * You may obtain a copy of the License at
1837
+ *
1838
+ * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
1839
+ *
1840
+ * Unless required by applicable law or agreed to in writing, software
1841
+ * distributed under the License is distributed on an "AS IS" basis,
1842
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1843
+ * See the License for the specific language governing permissions and
1844
+ * limitations under the License.
1845
+ */
1846
+ const ZGW_DOCUMENTEN_API_DOCUMENTS_COMPONENT_TOKEN = new InjectionToken('Specify a component to display on documents tab when Documenten API is set as the upload provider in the environment file.');
1847
+
1848
+ /*
1849
+ * Copyright 2015-2025 Ritense BV, the Netherlands.
1850
+ *
1851
+ * Licensed under EUPL, Version 1.2 (the "License");
1852
+ * you may not use this file except in compliance with the License.
1853
+ * You may obtain a copy of the License at
1854
+ *
1855
+ * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
1856
+ *
1857
+ * Unless required by applicable law or agreed to in writing, software
1858
+ * distributed under the License is distributed on an "AS IS" basis,
1859
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1860
+ * See the License for the specific language governing permissions and
1861
+ * limitations under the License.
1862
+ */
1863
+
1864
+ /*
1865
+ * Copyright 2015-2025 Ritense BV, the Netherlands.
1866
+ *
1867
+ * Licensed under EUPL, Version 1.2 (the "License");
1868
+ * you may not use this file except in compliance with the License.
1869
+ * You may obtain a copy of the License at
1870
+ *
1871
+ * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
1872
+ *
1873
+ * Unless required by applicable law or agreed to in writing, software
1874
+ * distributed under the License is distributed on an "AS IS" basis,
1875
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1876
+ * See the License for the specific language governing permissions and
1877
+ * limitations under the License.
1878
+ */
1879
+
1880
+ /* tslint:disable */
1881
+ /* eslint-disable */
1882
+ // Generated using typescript-generator version 3.2.1263 on 2026-03-16 10:02:12.
1883
+
1884
+ /*
1885
+ * Copyright 2015-2025 Ritense BV, the Netherlands.
1886
+ *
1887
+ * Licensed under EUPL, Version 1.2 (the "License");
1888
+ * you may not use this file except in compliance with the License.
1889
+ * You may obtain a copy of the License at
1890
+ *
1891
+ * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
1892
+ *
1893
+ * Unless required by applicable law or agreed to in writing, software
1894
+ * distributed under the License is distributed on an "AS IS" basis,
1895
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1896
+ * See the License for the specific language governing permissions and
1897
+ * limitations under the License.
1898
+ */
1899
+ /*
1900
+ * Public API Surface of shared
1901
+ */
1902
+
1903
+ /**
1904
+ * Generated bundle index. Do not edit.
1905
+ */
1906
+
1907
+ export { BUILDING_BLOCK_MANAGEMENT_TAB_TOKEN, BaseApiService, BasicExtensionPoint, CASE_CONFIGURATION_EXTENSIONS_TOKEN, CASE_MANAGEMENT_TAB_TOKEN, CaseListTab, ConfigModule, ConfigService, ConfigurationIssueService, CustomMultiTranslateHttpLoader, CustomMultiTranslateHttpLoaderFactory, DEFAULT_NOTIFICATION_PARAMS, DraftVersionService, EditPermissionsService, EnvironmentService, Extension, ExtensionComponent, ExtensionLoader, FORM_VIEW_MODEL_TOKEN, GlobalNotificationComponent, GlobalNotificationService, HttpLoaderFactory, IKO_TOKEN, INITIALIZERS, IncludeFunction, InterceptorSkip, InterceptorSkipHeader, Language, LocalizationService, MenuIncludeService, MockIconService, MockKeycloakService, MockTranslateService, MultiTranslateHttpLoaderFactory, ROLE_ADMIN, ROLE_DEVELOPER, ROLE_USER, RouterUtils, TagColor, TaskListTab, UploadProvider, UrlUtils, UserSettingsService, VALTIMO_CONFIG, VERSIONS, ValtimoUserIdentity, ZGW_DOCUMENTEN_API_DOCUMENTS_COMPONENT_TOKEN, ZGW_OBJECT_TYPE_COMPONENT_TOKEN, getBuildingBlockManagementRouteParams, getCaseManagementRouteParams, getCaseManagementRouteParamsAndContext, getContextObservable, getDisplayTypeParametersView, getNotificationObject, validateBsn };
1908
+ //# sourceMappingURL=valtimo-shared.mjs.map