@valtimo/shared 13.45.0 → 13.45.1

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.
@@ -1253,7 +1253,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImpo
1253
1253
  * limitations under the License.
1254
1254
  */
1255
1255
  const VERSIONS = {
1256
- frontendLibraries: '13.45.0',
1256
+ frontendLibraries: '13.45.1',
1257
1257
  };
1258
1258
 
1259
1259
  /*
@@ -1 +1 @@
1
- {"version":3,"file":"valtimo-shared.mjs","sources":["../../../../projects/valtimo/shared/src/lib/components/carousel/carousel.component.ts","../../../../projects/valtimo/shared/src/lib/components/carousel/carousel.component.html","../../../../projects/valtimo/shared/src/lib/utils/router.utils.ts","../../../../projects/valtimo/shared/src/lib/utils/url.utils.ts","../../../../projects/valtimo/shared/src/lib/utils/global-notification.utils.ts","../../../../projects/valtimo/shared/src/lib/utils/route-params.utils.ts","../../../../projects/valtimo/shared/src/lib/utils/display-type.utils.ts","../../../../projects/valtimo/shared/src/lib/utils/validate-bsn.utils.ts","../../../../projects/valtimo/shared/src/lib/utils/index.ts","../../../../projects/valtimo/shared/src/lib/services/base-api.service.ts","../../../../projects/valtimo/shared/src/lib/models/config.ts","../../../../projects/valtimo/shared/src/lib/models/email-notification-settings.model.ts","../../../../projects/valtimo/shared/src/lib/models/menu-item.model.ts","../../../../projects/valtimo/shared/src/lib/models/menu.config.ts","../../../../projects/valtimo/shared/src/lib/models/security.config.ts","../../../../projects/valtimo/shared/src/lib/models/extension.model.ts","../../../../projects/valtimo/shared/src/lib/models/http-loader.ts","../../../../projects/valtimo/shared/src/lib/models/roles.ts","../../../../projects/valtimo/shared/src/lib/models/user-management.model.ts","../../../../projects/valtimo/shared/src/lib/models/page.ts","../../../../projects/valtimo/shared/src/lib/models/search.model.ts","../../../../projects/valtimo/shared/src/lib/models/versions.model.ts","../../../../projects/valtimo/shared/src/lib/models/user-settings.model.ts","../../../../projects/valtimo/shared/src/lib/models/translation.model.ts","../../../../projects/valtimo/shared/src/lib/models/localization.model.ts","../../../../projects/valtimo/shared/src/lib/models/form-view-model.model.ts","../../../../projects/valtimo/shared/src/lib/models/window.model.ts","../../../../projects/valtimo/shared/src/lib/models/management.model.ts","../../../../projects/valtimo/shared/src/lib/models/tag-color.model.ts","../../../../projects/valtimo/shared/src/lib/models/global-configuration.model.ts","../../../../projects/valtimo/shared/src/lib/models/modal.model.ts","../../../../projects/valtimo/shared/src/lib/models/display-type.model.ts","../../../../projects/valtimo/shared/src/lib/models/building-block-management.model.ts","../../../../projects/valtimo/shared/src/lib/models/index.ts","../../../../projects/valtimo/shared/src/lib/services/config.service.ts","../../../../projects/valtimo/shared/src/lib/services/global-notification.service.ts","../../../../projects/valtimo/shared/src/lib/services/localization.service.ts","../../../../projects/valtimo/shared/src/lib/services/menu-include.service.ts","../../../../projects/valtimo/shared/src/lib/services/user-settings.service.ts","../../../../projects/valtimo/shared/src/lib/constants/versions.ts","../../../../projects/valtimo/shared/src/lib/constants/case-management-tab-token.ts","../../../../projects/valtimo/shared/src/lib/constants/form-view-model-token.ts","../../../../projects/valtimo/shared/src/lib/constants/error.constants.ts","../../../../projects/valtimo/shared/src/lib/constants/case-configuration-extensions-token.ts","../../../../projects/valtimo/shared/src/lib/constants/iko.token.ts","../../../../projects/valtimo/shared/src/lib/constants/building-block-management-tab-token.ts","../../../../projects/valtimo/shared/src/lib/constants/index.ts","../../../../projects/valtimo/shared/src/lib/services/environment.service.ts","../../../../projects/valtimo/shared/src/lib/services/draft-version.service.ts","../../../../projects/valtimo/shared/src/lib/services/edit-permissions.service.ts","../../../../projects/valtimo/shared/src/lib/services/configuration-issue.service.ts","../../../../projects/valtimo/shared/src/lib/services/index.ts","../../../../projects/valtimo/shared/src/lib/components/global-notification.component.ts","../../../../projects/valtimo/shared/src/lib/extension/extension.component.ts","../../../../projects/valtimo/shared/src/lib/extension/extension.component.html","../../../../projects/valtimo/shared/src/lib/config.module.ts","../../../../projects/valtimo/shared/src/lib/testing/services/mock-translate.service.ts","../../../../projects/valtimo/shared/src/lib/testing/services/mock-keycloak.service.ts","../../../../projects/valtimo/shared/src/lib/testing/services/mock-icon.service.ts","../../../../projects/valtimo/shared/src/lib/testing/services/index.ts","../../../../projects/valtimo/shared/src/lib/testing/index.ts","../../../../projects/valtimo/shared/src/lib/translation/custom-multi-translate-http-loader.ts","../../../../projects/valtimo/shared/src/lib/translation/custom-multi-translate-http-loader-factory.ts","../../../../projects/valtimo/shared/src/lib/translation/multi-translate-http-loader-factory.ts","../../../../projects/valtimo/shared/src/lib/translation/index.ts","../../../../projects/valtimo/shared/src/lib/zgw/constants/zgw-object-type-component-token.ts","../../../../projects/valtimo/shared/src/lib/zgw/constants/zgw-documenten-api-documents-component-token.ts","../../../../projects/valtimo/shared/src/lib/zgw/constants/index.ts","../../../../projects/valtimo/shared/src/lib/zgw/index.ts","../../../../projects/valtimo/shared/src/lib/guards/zgw-features.guard.ts","../../../../projects/valtimo/shared/src/lib/guards/index.ts","../../../../projects/valtimo/shared/src/lib/generated/generated-backend-types.ts","../../../../projects/valtimo/shared/src/public-api.ts","../../../../projects/valtimo/shared/src/valtimo-shared.ts"],"sourcesContent":["/*\n * Copyright 2015-2026 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 */\nimport {CommonModule} from '@angular/common';\nimport {\n AfterViewInit,\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n HostBinding,\n Input,\n NgZone,\n OnDestroy,\n ViewChild,\n ViewEncapsulation,\n} from '@angular/core';\nimport {TranslateModule} from '@ngx-translate/core';\nimport {ChevronLeft16, ChevronRight16} from '@carbon/icons';\nimport {ButtonModule, IconModule, IconService} from 'carbon-components-angular';\nimport {BehaviorSubject} from 'rxjs';\n\n@Component({\n selector: 'valtimo-carousel',\n templateUrl: './carousel.component.html',\n styleUrls: ['./carousel.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n standalone: true,\n imports: [CommonModule, TranslateModule, ButtonModule, IconModule],\n})\nexport class CarouselComponent implements AfterViewInit, OnDestroy {\n @HostBinding('class') public readonly hostClasses = 'valtimo-carousel';\n\n @Input() public ariaLabel?: string;\n\n @ViewChild('track') private readonly trackRef!: ElementRef<HTMLElement>;\n\n public readonly canScrollPrev$ = new BehaviorSubject<boolean>(false);\n public readonly canScrollNext$ = new BehaviorSubject<boolean>(false);\n public readonly itemCount$ = new BehaviorSubject<number>(0);\n public readonly activeIndex$ = new BehaviorSubject<number>(0);\n public readonly dots$ = new BehaviorSubject<number[]>([]);\n\n private resizeObserver?: ResizeObserver;\n private mutationObserver?: MutationObserver;\n\n constructor(\n private readonly iconService: IconService,\n private readonly ngZone: NgZone\n ) {\n this.iconService.registerAll([ChevronLeft16, ChevronRight16]);\n }\n\n public ngAfterViewInit(): void {\n const track = this.trackRef.nativeElement;\n\n this.resizeObserver = new ResizeObserver(() => this.ngZone.run(() => this.updateScrollState()));\n this.resizeObserver.observe(track);\n\n this.mutationObserver = new MutationObserver(() =>\n this.ngZone.run(() => this.updateScrollState())\n );\n this.mutationObserver.observe(track, {childList: true});\n\n this.updateScrollState();\n }\n\n public ngOnDestroy(): void {\n this.resizeObserver?.disconnect();\n this.mutationObserver?.disconnect();\n }\n\n public onScroll(): void {\n this.updateScrollState();\n }\n\n public scrollPrev(): void {\n this.scrollByViewport(-1);\n }\n\n public scrollNext(): void {\n this.scrollByViewport(1);\n }\n\n public scrollToIndex(index: number): void {\n const track = this.trackRef.nativeElement;\n track.scrollTo({left: index * track.clientWidth, behavior: 'smooth'});\n }\n\n private scrollByViewport(direction: 1 | -1): void {\n const track = this.trackRef.nativeElement;\n track.scrollBy({left: direction * track.clientWidth, behavior: 'smooth'});\n }\n\n private updateScrollState(): void {\n const track = this.trackRef.nativeElement;\n const maxScrollLeft = track.scrollWidth - track.clientWidth;\n this.canScrollPrev$.next(track.scrollLeft > 0);\n this.canScrollNext$.next(track.scrollLeft < maxScrollLeft - 1);\n\n const count = track.children.length;\n if (count !== this.itemCount$.value) {\n this.itemCount$.next(count);\n this.dots$.next(Array.from({length: count}, (_, index) => index));\n }\n\n const activeIndex = track.clientWidth > 0 ? Math.round(track.scrollLeft / track.clientWidth) : 0;\n if (activeIndex !== this.activeIndex$.value) {\n this.activeIndex$.next(activeIndex);\n }\n }\n}\n","<!--\n ~ Copyright 2015-2026 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-container\n *ngIf=\"{\n prev: canScrollPrev$ | async,\n next: canScrollNext$ | async,\n count: itemCount$ | async,\n active: activeIndex$ | async,\n dots: dots$ | async\n } as vm\"\n>\n <div class=\"valtimo-carousel__viewport\">\n <ul\n #track\n class=\"valtimo-carousel__track\"\n [attr.aria-label]=\"ariaLabel\"\n (scroll)=\"onScroll()\"\n >\n <ng-content></ng-content>\n </ul>\n </div>\n\n <div *ngIf=\"vm.count > 1\" class=\"valtimo-carousel__controls\">\n <cds-icon-button\n class=\"valtimo-carousel__nav\"\n kind=\"ghost\"\n size=\"md\"\n align=\"top-left\"\n [description]=\"'carousel.previous' | translate\"\n [disabled]=\"!vm.prev\"\n (click)=\"scrollPrev()\"\n >\n <svg cdsIcon=\"chevron--left\" size=\"16\"></svg>\n </cds-icon-button>\n\n <div class=\"valtimo-carousel__dots\" role=\"tablist\">\n <button\n *ngFor=\"let index of vm.dots\"\n type=\"button\"\n class=\"valtimo-carousel__dot\"\n [class.valtimo-carousel__dot--active]=\"index === vm.active\"\n [attr.aria-label]=\"('carousel.goToSlide' | translate) + ' ' + (index + 1)\"\n [attr.aria-current]=\"index === vm.active\"\n (click)=\"scrollToIndex(index)\"\n ></button>\n </div>\n\n <cds-icon-button\n class=\"valtimo-carousel__nav\"\n kind=\"ghost\"\n size=\"md\"\n align=\"top-right\"\n [description]=\"'carousel.next' | translate\"\n [disabled]=\"!vm.next\"\n (click)=\"scrollNext()\"\n >\n <svg cdsIcon=\"chevron--right\" size=\"16\"></svg>\n </cds-icon-button>\n </div>\n</ng-container>\n","/*\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\nimport {ExtraOptions} from '@angular/router';\n\nclass RouterUtils {\n public static getRouterExtraOptions(): ExtraOptions {\n return {canceledNavigationResolution: 'computed'};\n }\n}\n\nexport {RouterUtils};\n","/*\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\nclass UrlUtils {\n static formatUrlTrailingSlash(url: string, returnWithTrailingSlash: boolean): string {\n if (url && typeof url === 'string') {\n const urlLastCharacter = url[url.length - 1];\n const urlLastCharacterIsSlash = urlLastCharacter === '/';\n\n if (!returnWithTrailingSlash && urlLastCharacterIsSlash) {\n return url.slice(0, -1);\n } else if (returnWithTrailingSlash && !urlLastCharacterIsSlash) {\n return `${url}/`;\n }\n }\n\n return url;\n }\n\n static formatUrlStartWithSlash(url: string): string {\n if (url && typeof url === 'string' && url.length > 0 && url[0] !== '/') {\n return `/${url}`;\n }\n\n return `${url}`;\n }\n\n static getUrlHost(urlString: string): string {\n let url!: URL;\n\n try {\n url = new URL(urlString);\n } catch (_) {}\n\n return url ? url.host : '';\n }\n}\n\nexport {UrlUtils};\n","/*\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\nimport {NotificationContent} from 'carbon-components-angular';\n\nexport const DEFAULT_NOTIFICATION_PARAMS = {\n duration: 4000,\n showClose: true,\n};\n\nexport const getNotificationObject = (content: NotificationContent): NotificationContent => ({\n ...DEFAULT_NOTIFICATION_PARAMS,\n ...content,\n});\n","/*\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 */\nimport {BuildingBlockManagementParams, CaseManagementParams, ManagementContext} from '../models';\nimport {ActivatedRoute} from '@angular/router';\nimport {combineLatest, distinctUntilChanged, filter, map, Observable, of, switchMap} from 'rxjs';\nimport {isEqual} from 'lodash';\n\nconst getCaseManagementRouteParams = (\n route: ActivatedRoute,\n doFilter = false\n): Observable<CaseManagementParams | undefined> => {\n const rootParams$ = route.params ? route.params : of({});\n const parentParams$ = route.parent?.params ? route.parent.params : of({});\n return combineLatest([rootParams$, parentParams$]).pipe(\n map(([rootParams, parentParams]) => {\n const caseDefinitionKey =\n rootParams['caseDefinitionKey'] || parentParams['caseDefinitionKey'];\n const caseDefinitionVersionTag =\n rootParams['caseDefinitionVersionTag'] || parentParams['caseDefinitionVersionTag'];\n if (caseDefinitionKey && caseDefinitionVersionTag) {\n return {caseDefinitionKey, caseDefinitionVersionTag};\n }\n return null;\n }),\n filter((params): params is CaseManagementParams => (doFilter ? params !== null : true)),\n distinctUntilChanged((previous, current) => isEqual(previous, current))\n );\n};\n\nconst getBuildingBlockManagementRouteParams = (\n route: ActivatedRoute,\n doFilter = false\n): Observable<BuildingBlockManagementParams | undefined> => {\n const rootParams$ = route.params ? route.params : of({});\n const parentParams$ = route.parent?.params ? route.parent.params : of({});\n return combineLatest([rootParams$, parentParams$]).pipe(\n map(([rootParams, parentParams]) => {\n const buildingBlockDefinitionKey =\n rootParams['buildingBlockDefinitionKey'] || parentParams['buildingBlockDefinitionKey'];\n const buildingBlockDefinitionVersionTag =\n rootParams['buildingBlockDefinitionVersionTag'] ||\n parentParams['buildingBlockDefinitionVersionTag'];\n if (buildingBlockDefinitionKey && buildingBlockDefinitionVersionTag) {\n return {buildingBlockDefinitionKey, buildingBlockDefinitionVersionTag};\n }\n return null;\n }),\n filter((params): params is BuildingBlockManagementParams =>\n doFilter ? params !== null : true\n ),\n distinctUntilChanged((previous, current) => isEqual(previous, current))\n );\n};\n\nfunction getContextObservable(route: ActivatedRoute): Observable<ManagementContext | null> {\n // Traverse the route hierarchy to find the context data\n // The context is set on a parent route, so we need to look up the tree\n let currentRoute: ActivatedRoute | null = route;\n while (currentRoute) {\n const context = currentRoute.snapshot?.data?.['context'] as ManagementContext | undefined;\n if (context) {\n return currentRoute.data.pipe(\n map(data => (data && (data['context'] as ManagementContext)) || null),\n distinctUntilChanged()\n );\n }\n currentRoute = currentRoute.parent;\n }\n\n // Fallback to original behavior if no context found in hierarchy\n return route.data.pipe(\n map(data => (data && (data['context'] as ManagementContext)) || null),\n distinctUntilChanged()\n );\n}\n\nfunction getCaseManagementRouteParamsAndContext(\n route: ActivatedRoute\n): Observable<[ManagementContext, CaseManagementParams]> {\n const params$ = getCaseManagementRouteParams(route, true);\n const context$ = getContextObservable(route);\n\n return context$.pipe(\n switchMap(context => {\n if (context === 'case') {\n return combineLatest([of(context), params$]) as Observable<\n [ManagementContext, CaseManagementParams]\n >;\n }\n\n const fallbackParams: CaseManagementParams = {\n caseDefinitionKey: '',\n caseDefinitionVersionTag: '',\n };\n return of([context, fallbackParams] as [ManagementContext, CaseManagementParams]);\n })\n );\n}\n\nexport {\n getCaseManagementRouteParams,\n getContextObservable,\n getCaseManagementRouteParamsAndContext,\n getBuildingBlockManagementRouteParams,\n};\n","/*\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\nimport {DisplayTypeParameters} from '../models';\n\nconst getDisplayTypeParametersView = (displayTypeParameters: DisplayTypeParameters): string => {\n if (displayTypeParameters?.dateFormat) {\n return displayTypeParameters.dateFormat;\n } else if (displayTypeParameters?.tagAmount) {\n return displayTypeParameters.tagAmount.toString();\n } else if (displayTypeParameters?.enum) {\n return Object.keys(displayTypeParameters.enum).reduce((acc, curr) => {\n const keyValuePairString = `${curr}: ${displayTypeParameters.enum?.[curr]}`;\n if (!acc) {\n return `${keyValuePairString}`;\n }\n\n return `${acc}, ${keyValuePairString}`;\n }, '');\n }\n\n return '-';\n};\n\nexport {getDisplayTypeParametersView};\n","/*\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\nconst validateBsn = (value: string): {isValid: boolean; errorKey: string | null} => {\n const baseKey = 'interface.dataValidation.bsnValidator';\n\n if (!value) {\n return {isValid: false, errorKey: `${baseKey}.valueEmpty`};\n }\n\n const trimmed = value.toString().trim();\n\n if (!/^\\d+$/.test(trimmed)) {\n return {isValid: false, errorKey: `${baseKey}.valueOnlyDigits`};\n }\n\n if (trimmed.length < 8 || trimmed.length > 9) {\n return {isValid: false, errorKey: `${baseKey}.valueMinLength`};\n }\n\n if (trimmed.length > 9) {\n return {isValid: false, errorKey: `${baseKey}.valueMaxLength`};\n }\n\n if (/^0+$/.test(trimmed) || /^9+$/.test(trimmed)) {\n return {isValid: false, errorKey: `${baseKey}.valueAllZerosOrNines`};\n }\n\n const digits = trimmed.split('').map(d => parseInt(d, 10));\n let sum = 0;\n const length = digits.length;\n\n for (let i = 0; i < length; i++) {\n const weight = i === length - 1 ? -1 : length - i;\n sum += digits[i] * weight;\n }\n\n if (sum % 11 !== 0) {\n return {isValid: false, errorKey: `${baseKey}.valueElfCheck`};\n }\n\n return {isValid: true, errorKey: null};\n};\n\nexport {validateBsn};\n","/*\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\nexport * from './router.utils';\nexport * from './url.utils';\nexport * from './global-notification.utils';\nexport * from './route-params.utils';\nexport * from './display-type.utils';\nexport * from './validate-bsn.utils';\n","/*\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\nimport {HttpClient} from '@angular/common/http';\nimport {ConfigService} from './config.service';\nimport {UrlUtils} from '../utils';\n\nexport abstract class BaseApiService {\n private readonly _valtimoEndpointUri!: string;\n\n constructor(\n protected readonly httpClient: HttpClient,\n protected readonly configService: ConfigService\n ) {\n this._valtimoEndpointUri = configService.config.valtimoApi.endpointUri;\n }\n\n public getApiUrl(urlPart: string): string {\n const urlWithStartSlash = UrlUtils.formatUrlStartWithSlash(urlPart);\n const urlFormattedWithTrailingSlash = `${UrlUtils.formatUrlTrailingSlash(this._valtimoEndpointUri, false)}${urlWithStartSlash}`;\n return urlFormattedWithTrailingSlash;\n }\n}\n","/*\n * Copyright 2015-2026 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\nimport {InjectionToken, Injector} from '@angular/core';\nimport {Auth} from './security.config';\nimport {MenuConfig} from './menu.config';\nimport {CSPHeaderParams} from 'csp-header';\n\nconst VALTIMO_CONFIG = new InjectionToken<ValtimoConfig>('valtimoConfig');\n\n// eslint-disable-next-line\nconst INITIALIZERS = new InjectionToken<(() => Function)[]>('initializers');\n\ndeclare type Direction = 'ASC' | 'DESC';\n\ninterface DefinitionColumn {\n propertyName: string;\n translationKey: string;\n sortable?: boolean;\n viewType?: string;\n default?: boolean | string;\n enum?: Array<string> | {[key: string]: string};\n title?: string;\n format?: string;\n key?: string;\n tagAmount?: number;\n}\n\ninterface CustomTaskList {\n fields: Array<DefinitionColumn>;\n defaultSortedColumn?: SortState;\n}\n\ninterface CustomLeftSidebar {\n defaultMenuWidth?: number;\n maxMenuWidth?: number;\n minMenuWidth?: number;\n}\n\ninterface Sort {\n name: string;\n direction: Direction;\n}\n\ninterface SortState {\n state: Sort;\n isSorting: boolean;\n}\n\ninterface FormioOptions {\n [key: string]: any;\n}\n\ninterface OverrideFormioOptions extends FormioOptions {\n [key: string]: any;\n}\n\ninterface ValtimoConfigFeatureToggles {\n applicationTitleAsSuffix?: boolean;\n showUserNameInTopBar?: boolean;\n showPlantATreeButton?: boolean;\n disableCaseCount?: boolean;\n caseListColumn?: boolean;\n enableObjectManagement?: boolean;\n largeLogoMargin?: boolean;\n sortFilesByDate?: boolean;\n returnToLastUrlAfterTokenExpiration?: boolean;\n enableTabManagement?: boolean;\n hideValtimoVersionsForNonAdmins?: boolean;\n useStartEventNameAsStartFormTitle?: boolean;\n allowUserThemeSwitching?: boolean;\n enableCompactModeToggle?: boolean;\n compactModeOnByDefault?: boolean;\n enableUserNameInTopBarToggle?: boolean;\n enableFormViewModel?: boolean;\n enableIntermediateSave?: boolean;\n enableTaskPanel?: boolean;\n enableFormFlowBreadcrumbs?: boolean;\n enablePbacDocumentenApiDocuments?: boolean;\n enableSuppressDocumentError?: boolean;\n enableIkoType?: boolean;\n enableGenericCaseList?: boolean;\n enableManualTaskListRefresh?: boolean;\n menuCollapsedByDefault?: boolean;\n enableOpenSearch?: boolean;\n /**\n * @deprecated DMN decision table editing is always enabled and is no longer gated by a\n * feature toggle. This option is ignored and will be removed in a future major release.\n */\n experimentalDmnEditing?: boolean;\n enableZgwFeatures?: boolean;\n /**\n * When enabled, the form.io token is kept in memory only and is no longer persisted to\n * localStorage. Enable this when your forms rely solely on the Keycloak token (attached\n * via the HTTP interceptor) and do not depend on form.io's own token-authenticated requests.\n */\n disableFormioTokenInLocalStorage?: boolean;\n}\n\ninterface ValtimoConfig {\n // eslint-disable-next-line\n logoSvgBase64?: string;\n darkModeLogoSvgBase64?: string;\n logoPngBase64?: string;\n darkModeLogoPngBase64?: string;\n applicationTitle?: string;\n /**@deprecated Initializers will be removed in the future. */\n initializers?: ((injector: Injector) => () => void)[];\n menu: MenuConfig;\n authentication: Auth;\n production: boolean;\n whitelistedDomains: string[];\n langKey?: Language;\n valtimoApi: {\n endpointUri: string;\n };\n changePasswordUrl?: {\n endpointUri: string;\n };\n swagger: {\n endpointUri: string;\n };\n mockApi: {\n endpointUri: string;\n };\n logger: any;\n definitions: any;\n openZaak: {\n catalogus: string;\n };\n uploadProvider: UploadProvider;\n caseFileSizeUploadLimitMB?: number;\n caseFileUploadAcceptedFiles?: string;\n supportedDocumentFileTypesToViewInBrowser?: string[];\n defaultDefinitionTable: Array<DefinitionColumn>;\n translationResources?: Array<string>;\n featureToggles?: ValtimoConfigFeatureToggles;\n visibleTaskListTabs?: Array<TaskListTab>;\n visibleCaseListTabs?: Array<CaseListTab>;\n customTaskList?: CustomTaskList;\n customLeftSidebar?: CustomLeftSidebar;\n caseObjectTypes?: {\n [definitionNameId: string]: Array<string>;\n };\n overrideFeedbackMenuItemToMailTo?: FeedbackMailTo;\n csp?: CSPHeaderParams;\n formioOptions?: OverrideFormioOptions;\n}\n\ninterface FeedbackMailTo {\n email?: string;\n subjectTranslationKey: string;\n bodyTranslationKey: string;\n}\n\nenum UploadProvider {\n S3,\n /**@deprecated This upload provider will be removed in the future. */\n OPEN_ZAAK,\n DOCUMENTEN_API,\n}\n\nenum TaskListTab {\n MINE = 'mine',\n OPEN = 'open',\n ALL = 'all',\n TEAM = 'team',\n}\n\nenum CaseListTab {\n MINE = 'MINE',\n OPEN = 'OPEN',\n ALL = 'ALL',\n TEAM = 'TEAM',\n}\n\nenum Language {\n NL = 'nl',\n EN = 'en',\n}\n\nexport {\n VALTIMO_CONFIG,\n INITIALIZERS,\n Direction,\n DefinitionColumn,\n CustomTaskList,\n CustomLeftSidebar,\n Sort,\n SortState,\n OverrideFormioOptions,\n ValtimoConfigFeatureToggles,\n ValtimoConfig,\n FeedbackMailTo,\n UploadProvider,\n TaskListTab,\n CaseListTab,\n Language,\n};\n","/*\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\nexport interface EmailNotificationSettings {\n emailNotifications: boolean;\n taskNotifications: boolean;\n emailNotificationOnMonday: boolean;\n emailNotificationOnTuesday: boolean;\n emailNotificationOnWednesday: boolean;\n emailNotificationOnThursday: boolean;\n emailNotificationOnFriday: boolean;\n emailNotificationOnSaturday: boolean;\n emailNotificationOnSunday: boolean;\n}\n","/*\n *\n * Copyright 2015-2026 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\nimport {Observable} from 'rxjs';\n\nenum IncludeFunction {\n ObjectManagementEnabled,\n OpenSearchEnabled,\n ZgwFeaturesEnabled,\n}\n\ninterface MenuItem {\n title: string;\n sequence?: number;\n id?: string;\n link?: string[] | null;\n textClass?: string;\n iconClass?: string;\n children?: MenuItem[];\n roles?: string[];\n show?: boolean;\n count$?: Observable<number>;\n includeFunction?: IncludeFunction | IncludeFunction[];\n}\n\nexport {MenuItem, IncludeFunction};\n","/*\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\nimport {MenuItem} from './menu-item.model';\n\nexport interface MenuConfig {\n menuItems: MenuItem[];\n}\n","/*\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\nimport {Observable, ReplaySubject} from 'rxjs';\nimport {EmailNotificationSettings} from './email-notification-settings.model';\nimport {Injector} from '@angular/core';\n\nexport interface UserIdentity {\n email: string;\n firstName: string;\n lastName: string;\n roles: Array<string>;\n username?: string;\n id?: string;\n}\n\nexport class ValtimoUserIdentity implements UserIdentity {\n private readonly _email: string;\n private readonly _firstName: string;\n private readonly _lastName: string;\n private readonly _roles: string[];\n private readonly _username?: string;\n private readonly _id?: string;\n\n constructor(\n email: string,\n firstName: string,\n lastName: string,\n roles: Array<string>,\n username?: string,\n id?: string\n ) {\n this._email = email;\n this._firstName = firstName;\n this._lastName = lastName;\n this._roles = roles;\n this._username = username;\n this._id = id;\n }\n\n get email(): string {\n return this._email;\n }\n\n get firstName(): string {\n return this._firstName;\n }\n\n get lastName(): string {\n return this._lastName;\n }\n\n get roles(): string[] {\n return this._roles;\n }\n\n get username(): string | undefined {\n return this._username;\n }\n\n get id(): string | undefined {\n return this._id;\n }\n}\n\nexport interface UserService {\n getUserSubject(): ReplaySubject<UserIdentity>;\n\n logout(): void;\n\n getToken(): Promise<string>;\n\n updateToken?(minValidity: number): Promise<boolean>;\n}\n\nexport interface EmailNotificationService {\n getEmailNotificationSettings(): Observable<EmailNotificationSettings>;\n\n updateEmailNotificationSettings(\n settings: EmailNotificationSettings\n ): Observable<EmailNotificationSettings>;\n}\n\nexport interface AuthProviders {\n guardServiceProvider: any;\n userServiceProvider: any;\n}\n\nexport interface Auth {\n module: any;\n // eslint-disable-next-line\n initializer: (injector: Injector) => Function;\n authProviders: AuthProviders;\n options: any;\n}\n","/*\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\nimport {ComponentFactoryResolver, ComponentRef, ViewContainerRef} from '@angular/core';\n\nexport interface ExtensionPoint {\n module: string;\n page: string;\n section: string;\n component: any;\n}\n\nexport class ExtensionLoader {\n private readonly componentFactoryResolver: ComponentFactoryResolver = null;\n private componentRef: ComponentRef<any> = null;\n\n constructor(componentFactoryResolver: ComponentFactoryResolver) {\n this.componentFactoryResolver = componentFactoryResolver;\n }\n\n loadExtensionPoint(viewContainerRef: ViewContainerRef, extensionPoint: ExtensionPoint) {\n const componentFactory = this.componentFactoryResolver.resolveComponentFactory(\n extensionPoint.component\n );\n this.componentRef = viewContainerRef.createComponent(componentFactory);\n }\n\n loadAndClearExtensionPoint(viewContainerRef: ViewContainerRef, extensionPoint: ExtensionPoint) {\n const componentFactory = this.componentFactoryResolver.resolveComponentFactory(\n extensionPoint.component\n );\n viewContainerRef.clear();\n return (this.componentRef = viewContainerRef.createComponent(componentFactory));\n }\n}\n\nexport class Extension {\n public readonly _name: string;\n public readonly _extensionPoint: BasicExtensionPoint;\n\n constructor(name: string, extensionPoint: BasicExtensionPoint) {\n this._name = name;\n this._extensionPoint = extensionPoint;\n }\n\n get extensionPoint(): BasicExtensionPoint {\n return this._extensionPoint;\n }\n}\n\nexport class BasicExtensionPoint implements ExtensionPoint {\n private readonly _module: string;\n private readonly _page: string;\n private readonly _section: string;\n private readonly _component: any;\n\n constructor(module: string, page: string, section: string, component: any) {\n this._module = module;\n this._page = page;\n this._section = section;\n this._component = component;\n }\n\n supports(module: string, page: string, section: string): boolean {\n return this._module === module && this._page === page && this._section === section;\n }\n\n get module(): string {\n return this._module;\n }\n\n get page(): string {\n return this._page;\n }\n\n get section(): string {\n return this._section;\n }\n\n get component(): any {\n return this._component;\n }\n}\n","/*\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\nimport {TranslateHttpLoader} from '@ngx-translate/http-loader';\nimport {HttpClient} from '@angular/common/http';\n\nexport function HttpLoaderFactory(httpClient: HttpClient) {\n return new TranslateHttpLoader(httpClient);\n}\n","/*\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\nexport const ROLE_ADMIN = 'ROLE_ADMIN';\nexport const ROLE_USER = 'ROLE_USER';\nexport const ROLE_DEVELOPER = 'ROLE_DEVELOPER';\n","/*\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\nexport interface User {\n id: string;\n fullName: string;\n firstName: string;\n lastName: string;\n email: string;\n roles: Array<string>;\n langKey: string;\n activated: boolean;\n emailVerified: boolean;\n verified: string;\n status: string;\n}\n\nexport interface NamedUser {\n id: string;\n email: string;\n firstName: string;\n lastName: string;\n label: string;\n userName: string;\n}\n","/*\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\ninterface SortResult {\n sorted: boolean;\n unsorted: boolean;\n}\n\ninterface Pageable {\n sort: SortResult;\n pageSize: number;\n pageNumber: number;\n offset: number;\n unpaged: boolean;\n paged: boolean;\n}\n\ninterface Page<T> {\n content: Array<T>;\n pageable: Pageable;\n last: boolean;\n totalPages: number;\n totalElements: number;\n first: boolean;\n sort: SortResult;\n numberOfElements: number;\n size: number;\n number: number;\n [key: string]: any;\n}\n\nexport {SortResult, Pageable, Page};\n","/*\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\nimport {SearchFieldMatchType} from '../generated';\n\ntype SearchFieldDataType = 'text' | 'number' | 'date' | 'datetime' | 'boolean' | 'bsn';\n\ntype SearchFieldFieldType =\n | 'single'\n | 'multiple'\n | 'range'\n | 'single-select-dropdown'\n | 'multi-select-dropdown';\n\n\ntype SearchFieldBoolean = 'booleanPositive' | 'booleanNegative';\n\ntype BooleanValueSingle = boolean;\n\ntype TextValueSingle = string;\ntype ValueMultiple = Array<\n BooleanValueSingle | TextValueSingle | NumberValueSingle | NumberValueRange\n>;\n\ntype NumberValueSingle = number;\n\ninterface NumberValueRange {\n start: NumberValueSingle;\n end: NumberValueSingle;\n}\n\ntype SearchFieldValue =\n | BooleanValueSingle\n | TextValueSingle\n | ValueMultiple\n | NumberValueSingle\n | NumberValueRange;\n\ninterface SearchField {\n ownerId?: string;\n title?: string;\n key: string;\n path?: string;\n order?: number;\n dataType: SearchFieldDataType;\n fieldType: SearchFieldFieldType;\n matchType?: SearchFieldMatchType;\n dropdownDataProvider?: string;\n uuid?: string;\n}\n\ninterface SearchFieldWithValue extends SearchField {\n value: SearchFieldValue;\n}\n\ninterface SearchFieldValues {\n [searchFieldKey: string]: SearchFieldValue;\n}\n\ninterface SearchFieldColumnView {\n title: string;\n key: string;\n path: string;\n dataType: string;\n fieldType: string;\n}\n\ntype SearchOperator = 'AND' | 'OR';\n\ntype AssigneeFilter = 'OPEN' | 'MINE' | 'ALL' | 'TEAM';\n\ninterface SearchFilter {\n key: string;\n values: Array<string>;\n multiValue?: boolean;\n}\n\ninterface SearchFilterRange {\n key: string;\n rangeFrom: string;\n rangeTo: string;\n}\n\nexport {\n SearchFieldDataType,\n SearchFieldFieldType,\n SearchFieldMatchType,\n SearchFieldBoolean,\n SearchField,\n SearchFieldValue,\n SearchFieldWithValue,\n SearchFieldValues,\n SearchFieldColumnView,\n SearchOperator,\n SearchFilter,\n SearchFilterRange,\n AssigneeFilter,\n};\n","/*\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\ninterface Versions {\n frontendLibraries: string;\n}\n\nexport {Versions};\n","/*\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\ninterface UserSettings {\n collapsibleWidescreenMenu?: boolean;\n languageCode?: string;\n compactMode?: boolean;\n showUserNameInTopBar?: boolean;\n preferredTheme?: string;\n caseListPageSizes?: {[key: string]: number};\n taskListPageSizes?: {[key: string]: number};\n}\n\nexport {UserSettings};\n","/*\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\ninterface ITranslationResource {\n prefix: string;\n suffix?: string;\n optional?: boolean;\n}\n\nexport {ITranslationResource};\n","/*\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\ntype LocalizationContent = object;\n\ninterface Localization {\n languageKey: string;\n content: LocalizationContent;\n}\n\ninterface MergedLocalizations {\n [languageKey: string]: LocalizationContent;\n}\n\nexport {Localization, LocalizationContent, MergedLocalizations};\n","/*\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\nimport {Type} from '@angular/core';\n\ninterface FormViewModel {\n component: Type<any>;\n}\n\nexport {FormViewModel};\n","/*\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\nimport {editor} from 'monaco-editor';\n\ntype MonacoEditor = typeof editor;\n\ninterface ValtimoWindow extends Window {\n monaco?: {\n editor?: MonacoEditor;\n };\n flags?: {\n formioValueResolverSelectorComponentRegistered: boolean;\n };\n}\n\nexport {ValtimoWindow};\n","/*\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\ntype ManagementContext = 'case' | 'independent' | 'buildingBlock';\n\nexport {ManagementContext};\n","/*\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\nexport enum TagColor {\n WarmGray = 'WARMGRAY',\n Red = 'RED',\n Magenta = 'MAGENTA',\n Purple = 'PURPLE',\n Blue = 'BLUE',\n Cyan = 'CYAN',\n Teal = 'TEAL',\n Green = 'GREEN',\n Gray = 'GRAY',\n CoolGray = 'COOLGRAY',\n HighContrast = 'HIGHCONTRAST',\n Outline = 'OUTLINE',\n}\n","/*\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\ninterface GlobalConfiguration {\n canUpdateGlobalConfiguration: boolean;\n}\n\nexport {GlobalConfiguration};\n","/*\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\ntype ModalMode = 'add' | 'edit' | 'delete' | 'duplicate';\n\ntype ModalCloseEvent = 'close' | 'closeAndRefresh';\n\nexport {ModalMode, ModalCloseEvent};\n","/*\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\ninterface DisplayType {\n type: string;\n displayTypeParameters: DisplayTypeParameters;\n}\n\ninterface DisplayTypeParameters {\n enum?: {\n [key: string]: string;\n };\n dateFormat?: string;\n tagAmount?: number;\n}\n\nexport {DisplayTypeParameters, DisplayType};\n","/*\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\nimport {Type} from '@angular/core';\nimport {Observable} from 'rxjs';\n\ninterface BuildingBlockManagementParams {\n buildingBlockDefinitionKey: string;\n buildingBlockDefinitionVersionTag: string;\n}\n\ninterface BuildingBlockManagementTabConfig {\n translationKey: string;\n component: Type<any>;\n tabRoute: string;\n enabled$?: Observable<boolean>;\n}\n\nexport {BuildingBlockManagementParams, BuildingBlockManagementTabConfig};\n","/*\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\nexport * from './config';\nexport * from './email-notification-settings.model';\nexport * from './menu-item.model';\nexport * from './menu.config';\nexport * from './security.config';\nexport * from './extension.model';\nexport * from './http-loader';\nexport * from './roles';\nexport * from './user-management.model';\nexport * from './page';\nexport * from './search.model';\nexport * from './versions.model';\nexport * from './user-settings.model';\nexport * from './translation.model';\nexport * from './localization.model';\nexport * from './form-view-model.model';\nexport * from './window.model';\nexport * from './management.model';\nexport * from './tag-color.model';\nexport * from './global-configuration.model';\nexport * from './case-management.model';\nexport * from './modal.model';\nexport * from './display-type.model';\nexport * from './building-block-management.model';\n","/*\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\nimport {ComponentFactoryResolver, Inject, Injectable, ViewContainerRef} from '@angular/core';\nimport {\n Extension,\n ExtensionLoader,\n ExtensionPoint,\n VALTIMO_CONFIG,\n ValtimoConfig,\n ValtimoConfigFeatureToggles,\n} from '../models';\nimport {UrlUtils} from '../utils';\nimport {BehaviorSubject, distinctUntilChanged, map, Observable} from 'rxjs';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class ConfigService {\n private readonly extensionLoader: ExtensionLoader;\n private readonly extensions: Array<Extension> = [];\n private readonly DEFAULT_APPLICATION_TITLE = 'Valtimo';\n\n private readonly _featureToggles$ = new BehaviorSubject<ValtimoConfigFeatureToggles>(\n this.valtimoConfig?.featureToggles ?? ({} as ValtimoConfigFeatureToggles)\n );\n\n public readonly featureToggles$: Observable<ValtimoConfigFeatureToggles> =\n this._featureToggles$.asObservable();\n\n constructor(\n @Inject(VALTIMO_CONFIG) private valtimoConfig: ValtimoConfig,\n private componentFactoryResolver: ComponentFactoryResolver\n ) {\n this.extensionLoader = new ExtensionLoader(componentFactoryResolver);\n }\n\n public get config(): ValtimoConfig {\n const config = this.valtimoConfig;\n const translationResourcesConfig = config.translationResources;\n\n return {\n ...config,\n initializers: config.initializers || [],\n whitelistedDomains: config.whitelistedDomains.map(domain =>\n UrlUtils.formatUrlTrailingSlash(domain, false)\n ),\n mockApi: {\n ...config.mockApi,\n endpointUri: UrlUtils.formatUrlTrailingSlash(config.mockApi.endpointUri, true),\n },\n swagger: {\n ...config.swagger,\n endpointUri: UrlUtils.formatUrlTrailingSlash(config.swagger.endpointUri, false),\n },\n valtimoApi: {\n ...config.valtimoApi,\n endpointUri: UrlUtils.formatUrlTrailingSlash(config.valtimoApi.endpointUri, true),\n },\n ...(translationResourcesConfig && {\n translationResources: translationResourcesConfig.map(resource =>\n UrlUtils.formatUrlTrailingSlash(resource, true)\n ),\n }),\n applicationTitle: config.applicationTitle || this.DEFAULT_APPLICATION_TITLE,\n };\n }\n\n public get featureToggles(): ValtimoConfigFeatureToggles {\n return this._featureToggles$.value;\n }\n\n public get config$(): Observable<ValtimoConfig> {\n return this._featureToggles$.pipe(\n map(featureToggles => ({...this.config, featureToggles}))\n );\n }\n\n public get initializers() {\n return this.valtimoConfig?.initializers || [];\n }\n\n public addExtension(extension: Extension) {\n return this.extensions.push(extension);\n }\n\n public getSupportedExtensionPoint(module: string, page: string, section: string) {\n return this.extensions.find(extension =>\n extension.extensionPoint.supports(module, page, section)\n );\n }\n\n public getSupportedExtensionPoints(module: string, page: string, section: string) {\n return this.extensions.filter(extension =>\n extension.extensionPoint.supports(module, page, section)\n );\n }\n\n public loadExtensionPoint(viewContainerRef: ViewContainerRef, extensionPoint: ExtensionPoint) {\n this.extensionLoader.loadExtensionPoint(viewContainerRef, extensionPoint);\n }\n\n public loadAndReturnExtensionPoint(\n viewContainerRef: ViewContainerRef,\n extensionPoint: ExtensionPoint\n ) {\n return this.extensionLoader.loadAndClearExtensionPoint(viewContainerRef, extensionPoint);\n }\n\n public getFeatureToggleObservable(\n featureToggle: keyof ValtimoConfigFeatureToggles,\n defaultValue = false\n ): Observable<boolean> {\n return this.featureToggles$.pipe(\n map(featureToggles =>\n featureToggles?.hasOwnProperty(featureToggle)\n ? !!featureToggles[featureToggle]\n : defaultValue\n ),\n distinctUntilChanged()\n );\n }\n\n public getFeatureToggle(featureToggle: keyof ValtimoConfigFeatureToggles): boolean {\n return !!(this.featureToggles && this.featureToggles[featureToggle]);\n }\n\n public patchFeatureToggles(overrides: Partial<ValtimoConfigFeatureToggles>): void {\n const merged = {\n ...this._featureToggles$.value,\n ...overrides,\n };\n this.valtimoConfig = {\n ...this.valtimoConfig,\n featureToggles: merged,\n };\n this._featureToggles$.next(merged as ValtimoConfigFeatureToggles);\n }\n}\n","/*\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 */\nimport {ComponentRef, EventEmitter, Injectable} from '@angular/core';\nimport {\n ActionableContent,\n ActionableNotification,\n Notification,\n NotificationContent,\n NotificationService,\n Toast,\n ToastContent,\n} from 'carbon-components-angular';\nimport {take} from 'rxjs';\nimport {getNotificationObject} from '../utils';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class GlobalNotificationService {\n private _notificationService: NotificationService | null = null;\n private readonly _notificationQueue: (Notification & {id: string})[] = [];\n\n public setNotificationService(service: NotificationService): void {\n this._notificationService = service;\n }\n\n public getNotificationService(): NotificationService | null {\n return this._notificationService;\n }\n\n public showNotification(\n notificationObj: NotificationContent | ToastContent | ActionableContent,\n notificationComp: typeof Notification = Notification\n ): Notification | null {\n if (!this._notificationService) return null;\n\n return this.handleNotificationRef(\n this._notificationService?.showNotification(\n getNotificationObject(notificationObj),\n notificationComp\n )\n );\n }\n\n public showToast(\n notificationObj: NotificationContent | ToastContent,\n notificationComp: typeof Toast = Toast\n ): Notification | null {\n if (!this._notificationService) return null;\n\n return this.handleNotificationRef(\n this._notificationService?.showToast(getNotificationObject(notificationObj), notificationComp)\n );\n }\n\n public showActionable(\n notificationObj: ActionableContent,\n notificationComp: typeof ActionableNotification = ActionableNotification\n ): Notification | null {\n if (!this._notificationService) return null;\n\n return this.handleNotificationRef(\n this._notificationService?.showActionable(\n getNotificationObject(notificationObj),\n notificationComp\n )\n );\n }\n\n public close(notificationRef: any): void {\n notificationRef.close.emit();\n }\n\n public getSmartTimeout(notificationObj: any): number | null {\n if (!this._notificationService) return null;\n return this._notificationService?.getSmartTimeout(notificationObj);\n }\n\n public getNotificationRefs(): ComponentRef<any>[] | null {\n if (!this._notificationService) return null;\n return this._notificationService?.notificationRefs;\n }\n\n public getOnCloseEmitter(): EventEmitter<any> | null {\n if (!this._notificationService) return null;\n return this._notificationService?.onClose;\n }\n\n public ngOnDestroy(): void {\n this._notificationService?.ngOnDestroy();\n this._notificationQueue.splice(0, this._notificationQueue.length);\n }\n\n private handleNotificationRef(notificationRef: any): Notification | null {\n const notification = {\n ...notificationRef,\n id:\n notificationRef.toastID ??\n notificationRef.notificationID ??\n notificationRef.actionableNotificationID,\n };\n\n if (this._notificationQueue.length > 3) {\n this._notificationQueue.splice(0, 1);\n this.close(notificationRef);\n }\n\n this._notificationQueue.push(notification);\n setTimeout(() => this.removeNotificationInQueue(notification.id), 4000);\n\n notificationRef.close\n .pipe(take(1))\n .subscribe(() => this.removeNotificationInQueue(notification.id));\n\n return notificationRef;\n }\n\n private removeNotificationInQueue(id: string): void {\n const index = this._notificationQueue.findIndex(\n (notification: Notification & {id: string}) => notification.id === id\n );\n if (index === -1) return;\n\n this._notificationQueue.splice(index, 1);\n }\n}\n","/*\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\nimport {Injectable} from '@angular/core';\nimport {Localization, LocalizationContent, MergedLocalizations} from '../models';\nimport {HttpClient, HttpHeaders} from '@angular/common/http';\nimport {ConfigService} from './config.service';\nimport {map, Observable, of} from 'rxjs';\nimport {catchError} from 'rxjs/operators';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class LocalizationService {\n private readonly valtimoApiUri!: string;\n\n constructor(\n private readonly http: HttpClient,\n private readonly configService: ConfigService\n ) {\n this.valtimoApiUri = configService?.config?.valtimoApi?.endpointUri;\n }\n\n public getLocalization(languageKey: string): Observable<LocalizationContent> {\n return this.http\n .get<LocalizationContent>(`${this.valtimoApiUri}v1/localization/${languageKey}`, {\n headers: new HttpHeaders().set('X-Skip-Interceptor', '403'),\n })\n .pipe(catchError(() => of({})));\n }\n\n public getLocalizations(): Observable<Localization[]> {\n return this.http.get<Localization[]>(`${this.valtimoApiUri}v1/localization`);\n }\n\n public getMergedLocalizations(): Observable<MergedLocalizations> {\n return this.getLocalizations().pipe(\n map(res => res.reduce((acc, curr) => ({...acc, [curr.languageKey]: curr.content}), {}))\n );\n }\n\n public updateLocalization(\n languageKey: string,\n updatedLocalizationContent: LocalizationContent\n ): Observable<LocalizationContent> {\n return this.http.put<LocalizationContent>(\n `${this.valtimoApiUri}management/v1/localization/${languageKey}`,\n updatedLocalizationContent\n );\n }\n\n public updateLocalizations(updatedLocalizations: Localization[]): Observable<Localization[]> {\n return this.http.put<Localization[]>(\n `${this.valtimoApiUri}management/v1/localization`,\n updatedLocalizations\n );\n }\n}\n","/*\n * Copyright 2015-2026 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\nimport {Injectable} from '@angular/core';\nimport {IncludeFunction} from '../models';\nimport {ConfigService} from './config.service';\nimport {combineLatest, map, Observable, of} from 'rxjs';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class MenuIncludeService {\n constructor(private readonly configService: ConfigService) {}\n\n getIncludeFunctionObservable(\n includeFunction: IncludeFunction | IncludeFunction[]\n ): Observable<boolean> {\n if (Array.isArray(includeFunction)) {\n if (includeFunction.length === 0) {\n return of(true);\n }\n const observables = includeFunction.map(fn => this.getSingleIncludeFunction(fn));\n return combineLatest(observables).pipe(map(results => results.every(result => result)));\n }\n return this.getSingleIncludeFunction(includeFunction);\n }\n\n private getSingleIncludeFunction(includeFunction: IncludeFunction): Observable<boolean> {\n switch (includeFunction) {\n case IncludeFunction.ObjectManagementEnabled:\n return this.configService.getFeatureToggleObservable('enableObjectManagement', true);\n case IncludeFunction.OpenSearchEnabled:\n return this.configService.getFeatureToggleObservable('enableOpenSearch', false);\n case IncludeFunction.ZgwFeaturesEnabled:\n return this.configService.getFeatureToggleObservable('enableZgwFeatures', false);\n default:\n return of(true);\n }\n }\n\n /**\n * @deprecated Use getIncludeFunctionObservable instead\n */\n getIncludeFunction(includeFunction: IncludeFunction): Observable<boolean> {\n return this.getSingleIncludeFunction(includeFunction);\n }\n}\n","/*\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\nimport {Injectable} from '@angular/core';\nimport {UserSettings} from '../models';\nimport {HttpClient} from '@angular/common/http';\nimport {ConfigService} from './config.service';\nimport {Observable} from 'rxjs';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class UserSettingsService {\n private readonly valtimoApiUri!: string;\n\n constructor(\n private readonly http: HttpClient,\n private readonly configService: ConfigService\n ) {\n this.valtimoApiUri = configService?.config?.valtimoApi?.endpointUri;\n }\n\n getUserSettings(): Observable<UserSettings> {\n return this.http.get<UserSettings>(`${this.valtimoApiUri}v1/user/settings`);\n }\n\n saveUserSettings(settings: UserSettings): Observable<any> {\n return this.http.put(`${this.valtimoApiUri}v1/user/settings`, settings);\n }\n}\n","/*\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\nimport {Versions} from '../models';\n\nconst VERSIONS: Versions = {\n frontendLibraries: '13.45.0',\n};\n\nexport {VERSIONS};\n","/*\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\nimport {InjectionToken} from '@angular/core';\nimport {CaseManagementTabConfig} from '../models';\n\nconst CASE_MANAGEMENT_TAB_TOKEN = new InjectionToken<CaseManagementTabConfig>(\n 'Specify a component to display per configured tab translation key.'\n);\n\nexport {CASE_MANAGEMENT_TAB_TOKEN};\n","/*\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\nimport {InjectionToken} from '@angular/core';\nimport {FormViewModel} from '../models';\n\nconst FORM_VIEW_MODEL_TOKEN = new InjectionToken<FormViewModel>(\n 'Specify the form view model component.'\n);\n\nexport {FORM_VIEW_MODEL_TOKEN};\n","/*\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\nimport {HttpHeaders} from '@angular/common/http';\n\nconst InterceptorSkip = 'X-Skip-Interceptor';\nconst InterceptorSkipHeader = new HttpHeaders().set(InterceptorSkip, 'all');\n\nexport {InterceptorSkip, InterceptorSkipHeader};\n","/*\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\nimport {InjectionToken, Type} from '@angular/core';\n\nconst CASE_CONFIGURATION_EXTENSIONS_TOKEN = new InjectionToken<Type<any>[]>(\n 'Specify components to display on on the case management general page.'\n);\n\nexport {CASE_CONFIGURATION_EXTENSIONS_TOKEN};\n","/*\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\nimport {InjectionToken} from '@angular/core';\n\nconst IKO_TOKEN = new InjectionToken<boolean>('IKO is enabled when this token is provided');\n\nexport {IKO_TOKEN};\n","/*\n * Copyright 2015-2026 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\nimport {InjectionToken} from '@angular/core';\nimport {BuildingBlockManagementTabConfig} from '../models';\n\nconst BUILDING_BLOCK_MANAGEMENT_TAB_TOKEN = new InjectionToken<BuildingBlockManagementTabConfig[]>(\n 'Specify components to display as tabs on the building block management detail page.'\n);\n\nexport {BUILDING_BLOCK_MANAGEMENT_TAB_TOKEN};\n","/*\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\nexport * from './versions';\nexport * from './case-management-tab-token';\nexport * from './form-view-model-token';\nexport * from './error.constants';\nexport * from './case-configuration-extensions-token';\nexport * from './iko.token';\nexport * from './building-block-management-tab-token';\n","/*\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\nimport {Injectable} from '@angular/core';\nimport {HttpClient, HttpHeaders} from '@angular/common/http';\nimport {map, Observable, of} from 'rxjs';\nimport {ConfigService} from './config.service';\nimport {BaseApiService} from './base-api.service';\nimport {GlobalConfiguration} from '../models';\nimport {catchError} from 'rxjs/operators';\nimport {InterceptorSkip} from '../constants';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class EnvironmentService extends BaseApiService {\n constructor(\n protected readonly httpClient: HttpClient,\n protected readonly configService: ConfigService\n ) {\n super(httpClient, configService);\n }\n\n public canUpdateGlobalConfiguration(): Observable<boolean> {\n return this.httpClient\n .get<GlobalConfiguration>(this.getApiUrl('management/v1/case-definition/check'), {\n headers: new HttpHeaders().set(InterceptorSkip, '404'),\n })\n .pipe(\n map(response => response.canUpdateGlobalConfiguration),\n catchError(() => of(true))\n );\n }\n}\n","/*\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\nimport {Injectable} from '@angular/core';\nimport {HttpClient, HttpHeaders} from '@angular/common/http';\nimport {map, Observable, of} from 'rxjs';\nimport {ConfigService} from './config.service';\nimport {BaseApiService} from './base-api.service';\nimport {InterceptorSkip} from '../constants';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class DraftVersionService extends BaseApiService {\n constructor(\n protected readonly httpClient: HttpClient,\n protected readonly configService: ConfigService\n ) {\n super(httpClient, configService);\n }\n\n public isDraftVersion(\n caseDefinitionKey: string,\n caseDefinitionVersionTag: string\n ): Observable<boolean> {\n if (!caseDefinitionKey || !caseDefinitionVersionTag) {\n return of(false);\n }\n\n return this.httpClient\n .get<any>(\n this.getApiUrl(\n `management/v1/case-definition/${caseDefinitionKey}/version/${caseDefinitionVersionTag}`\n ),\n {\n headers: new HttpHeaders().set(InterceptorSkip, '403'),\n }\n )\n .pipe(map(caseDefinition => !caseDefinition.final));\n }\n\n public isDraftVersionBuildingBlock(\n buildingBlockDefinitionKey: string,\n buildingBlockDefinitionVersionTag: string\n ): Observable<boolean> {\n if (!buildingBlockDefinitionKey || !buildingBlockDefinitionVersionTag) {\n return of(false);\n }\n\n return this.httpClient\n .get<any>(\n this.getApiUrl(\n `management/v1/building-block/${buildingBlockDefinitionKey}/version/${buildingBlockDefinitionVersionTag}`\n ),\n {\n headers: new HttpHeaders().set(InterceptorSkip, '403'),\n }\n )\n .pipe(map(buildingBlockDefinition => !buildingBlockDefinition.final));\n }\n}\n","/*\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\nimport {BaseApiService} from './base-api.service';\nimport {HttpClient} from '@angular/common/http';\nimport {ConfigService} from './config.service';\nimport {combineLatest, map, Observable, of} from 'rxjs';\nimport {EnvironmentService} from './environment.service';\nimport {DraftVersionService} from './draft-version.service';\nimport {Injectable} from '@angular/core';\nimport {BuildingBlockManagementParams, CaseManagementParams} from '../models';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class EditPermissionsService extends BaseApiService {\n constructor(\n protected readonly httpClient: HttpClient,\n protected readonly configService: ConfigService,\n public readonly environmentService: EnvironmentService,\n public readonly draftVersionService: DraftVersionService\n ) {\n super(httpClient, configService);\n }\n\n public hasEditPermissions(\n caseDefinitionKey: string,\n caseDefinitionVersionTag: string\n ): Observable<boolean> {\n return combineLatest([\n this.environmentService.canUpdateGlobalConfiguration(),\n this.draftVersionService.isDraftVersion(caseDefinitionKey, caseDefinitionVersionTag),\n ]).pipe(map(([canUpdate, isDraftVersion]) => canUpdate && isDraftVersion));\n }\n\n public hasPermissionsToEditBasedOnContext(\n params: CaseManagementParams | BuildingBlockManagementParams,\n context: string\n ): Observable<boolean> {\n if (context === 'case') {\n const caseManagementParams = params as CaseManagementParams;\n return this.hasEditPermissions(\n caseManagementParams.caseDefinitionKey,\n caseManagementParams.caseDefinitionVersionTag\n );\n } else if (context === 'independent') {\n return this.environmentService.canUpdateGlobalConfiguration();\n } else if (context === 'buildingBlock') {\n return of(true);\n }\n return of(false);\n }\n}\n","/*\n * Copyright 2015-2026 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\nimport {Injectable} from '@angular/core';\nimport {BehaviorSubject, map, Observable} from 'rxjs';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class ConfigurationIssueService {\n private readonly _unresolvedIssueTypes$ = new BehaviorSubject<Set<string>>(new Set());\n\n public setUnresolvedIssueTypes(issueTypes: string[]): void {\n this._unresolvedIssueTypes$.next(new Set(issueTypes));\n }\n\n public readonly hasAnyIssues$: Observable<boolean> = this._unresolvedIssueTypes$.pipe(\n map(types => types.size > 0)\n );\n\n public hasIssue$(issueType: string): Observable<boolean> {\n return this._unresolvedIssueTypes$.pipe(map(types => types.has(issueType)));\n }\n\n public hasAnyOfIssues$(issueTypes: string[]): Observable<boolean> {\n return this._unresolvedIssueTypes$.pipe(map(types => issueTypes.some(t => types.has(t))));\n }\n}\n","/*\n * Copyright 2015-2026 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\nexport * from './base-api.service';\nexport * from './config.service';\nexport * from './global-notification.service';\nexport * from './localization.service';\nexport * from './menu-include.service';\nexport * from './user-settings.service';\nexport * from './environment.service';\nexport * from './draft-version.service';\nexport * from './edit-permissions.service';\nexport * from './configuration-issue.service';\n","/*\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 */\nimport {CommonModule} from '@angular/common';\nimport {Component, OnInit} from '@angular/core';\nimport {NotificationService} from 'carbon-components-angular';\nimport {GlobalNotificationService} from '../services';\n\n@Component({\n selector: 'valtimo-global-notification',\n template: ``,\n styles: `\n ::ng-deep.cds--toast-notification {\n width: 100%;\n }\n `,\n providers: [NotificationService],\n standalone: true,\n imports: [CommonModule],\n})\nexport class GlobalNotificationComponent implements OnInit {\n constructor(\n private readonly globalNotificationService: GlobalNotificationService,\n private readonly notificationService: NotificationService\n ) {}\n\n public ngOnInit(): void {\n this.globalNotificationService.setNotificationService(this.notificationService);\n }\n}\n","/*\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\nimport {Component, Input, OnInit, ViewChild, ViewContainerRef} from '@angular/core';\nimport {ConfigService} from '../services/config.service';\nimport {Extension, ExtensionLoader, ExtensionPoint} from '../models';\n\n@Component({\n selector: 'valtimo-extension',\n templateUrl: './extension.component.html',\n styleUrls: ['./extension.component.css'],\n standalone: false,\n})\nexport class ExtensionComponent implements OnInit {\n public extensionLoader: ExtensionLoader = null;\n public selectedExtensionPoint: ExtensionPoint;\n public supportedExtensions: Array<Extension>;\n @Input() public module: string;\n @Input() public page: string;\n @Input() public section: string;\n @ViewChild('injectExtension', {read: ViewContainerRef, static: true})\n viewContainerRef: ViewContainerRef;\n\n constructor(private configService: ConfigService) {}\n\n ngOnInit() {\n this.configService\n .getSupportedExtensionPoints(this.module, this.page, this.section)\n .forEach(extension => {\n this.configService.loadExtensionPoint(this.viewContainerRef, extension.extensionPoint);\n });\n }\n}\n","<!--\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","/*\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\nimport {ModuleWithProviders, NgModule} from '@angular/core';\nimport {ConfigService} from './services/config.service';\nimport {VALTIMO_CONFIG, ValtimoConfig} from './models';\nimport {ExtensionComponent} from './extension/extension.component';\n\n@NgModule({\n declarations: [ExtensionComponent],\n imports: [],\n exports: [ExtensionComponent],\n})\nexport class ConfigModule {\n static forRoot(config: ValtimoConfig): ModuleWithProviders<ConfigModule> {\n return {\n ngModule: ConfigModule,\n providers: [\n ConfigService,\n {\n provide: VALTIMO_CONFIG,\n useValue: config,\n },\n ],\n };\n }\n}\n","/*\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\nimport {Injectable} from '@angular/core';\nimport {Observable, of} from 'rxjs';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class MockTranslateService {\n public stream(key: string): Observable<any> {\n return of(null);\n }\n\n public instant(key: string): string {\n return '';\n }\n}\n","/*\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\nimport {Injectable} from '@angular/core';\nimport {Observable, of} from 'rxjs';\nimport {KeycloakProfile} from 'keycloak-js';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class MockKeycloakService {\n public get keycloakEvents$(): Observable<{type: string}> {\n return of({type: ''});\n }\n\n public isLoggedIn(): Observable<boolean> {\n return of(true);\n }\n\n private readonly MOCK_USER_PROFILE: KeycloakProfile = {\n id: '',\n username: '',\n email: '',\n firstName: '',\n lastName: '',\n enabled: true,\n emailVerified: true,\n totp: true,\n createdTimestamp: 0,\n };\n\n public async loadUserProfile(): Promise<KeycloakProfile> {\n return this.MOCK_USER_PROFILE;\n }\n}\n","/*\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\nimport {Injectable} from '@angular/core';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class MockIconService {\n public registerAll(value: Array<any>): void {\n return;\n }\n}\n","/*\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\nexport * from './mock-translate.service';\nexport * from './mock-keycloak.service';\nexport * from './mock-icon.service';\n","/*\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\nexport * from './services';\n","/*\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\nimport {HttpBackend, HttpClient} from '@angular/common/http';\nimport {catchError, map, switchMap} from 'rxjs/operators';\nimport {combineLatest, forkJoin, Observable, of} from 'rxjs';\nimport {deepmerge} from 'deepmerge-ts';\nimport {ITranslationResource} from '../models';\nimport {TranslateLoader} from '@ngx-translate/core';\nimport {LocalizationService} from '../services/localization.service';\n\nexport class CustomMultiTranslateHttpLoader implements TranslateLoader {\n private readonly _handler: HttpBackend;\n private readonly _httpClient: HttpClient;\n private readonly _resourcesPrefix: Array<string> | ITranslationResource[];\n private readonly _localizationService: LocalizationService;\n constructor(\n _handler: HttpBackend,\n _httpClient: HttpClient,\n _localizationService: LocalizationService,\n _resourcesPrefix: Array<string> | ITranslationResource[]\n ) {\n this._handler = _handler;\n this._httpClient = _httpClient;\n this._resourcesPrefix = _resourcesPrefix;\n this._localizationService = _localizationService;\n }\n getTranslation(lang: string): Observable<any> {\n const requests = this._resourcesPrefix.map(resource => {\n let path;\n if (resource.prefix) path = `${resource.prefix}${lang}${resource.suffix || '.json'}`;\n else path = `${resource}${lang}.json`;\n return new HttpClient(this._handler).get(path).pipe(\n catchError(res => {\n if (!resource.optional) {\n console.group();\n console.error('Something went wrong for the following translation file:', path);\n console.error(res);\n console.groupEnd();\n }\n return of({});\n })\n );\n });\n\n return forkJoin(requests).pipe(\n switchMap(localResourcesResponse =>\n combineLatest([of(localResourcesResponse), this._localizationService.getLocalization(lang)])\n ),\n map(([localResourcesResponse, localizationResponse]) =>\n deepmerge(...[...localResourcesResponse, localizationResponse])\n )\n );\n }\n}\n","/*\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\nimport {HttpBackend, HttpClient} from '@angular/common/http';\nimport {ConfigService} from '../services/config.service';\nimport {CustomMultiTranslateHttpLoader} from './custom-multi-translate-http-loader';\nimport {LocalizationService} from '../services/localization.service';\n\nexport function CustomMultiTranslateHttpLoaderFactory(\n http: HttpBackend,\n httpClient: HttpClient,\n configService: ConfigService,\n localizationService: LocalizationService\n) {\n const translationResources = configService?.config?.translationResources;\n\n return new CustomMultiTranslateHttpLoader(http, httpClient, localizationService, [\n './valtimo-translation/core/',\n ...(translationResources &&\n Array.isArray(translationResources) &&\n translationResources.length > 0\n ? translationResources\n : []),\n ]);\n}\n","/*\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\nimport {HttpBackend} from '@angular/common/http';\nimport {MultiTranslateHttpLoader} from 'ngx-translate-multi-http-loader';\nimport {ConfigService} from '../services/config.service';\n\nexport function MultiTranslateHttpLoaderFactory(http: HttpBackend, configService: ConfigService) {\n const translationResources = configService.config.translationResources;\n\n return new MultiTranslateHttpLoader(http, [\n './valtimo-translation/core/',\n ...(translationResources &&\n Array.isArray(translationResources) &&\n translationResources.length > 0\n ? translationResources\n : []),\n ]);\n}\n","/*\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\nexport * from './custom-multi-translate-http-loader';\nexport * from './custom-multi-translate-http-loader-factory';\nexport * from './multi-translate-http-loader-factory';\n","/*\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\nimport {InjectionToken, Type} from '@angular/core';\n\nconst ZGW_OBJECT_TYPE_COMPONENT_TOKEN = new InjectionToken<Type<any>>(\n 'Specify a component to display ZGW object types.'\n);\n\nexport {ZGW_OBJECT_TYPE_COMPONENT_TOKEN};\n","/*\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\nimport {InjectionToken, Type} from '@angular/core';\n\nconst ZGW_DOCUMENTEN_API_DOCUMENTS_COMPONENT_TOKEN = new InjectionToken<Type<any>>(\n 'Specify a component to display on documents tab when Documenten API is set as the upload provider in the environment file.'\n);\n\nexport {ZGW_DOCUMENTEN_API_DOCUMENTS_COMPONENT_TOKEN};\n","/*\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\nexport * from './zgw-object-type-component-token';\nexport * from './zgw-documenten-api-documents-component-token';\n","/*\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\nexport * from './constants';\n","/*\n * Copyright 2015-2026 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\nimport {inject} from '@angular/core';\nimport {CanActivateFn, Router} from '@angular/router';\nimport {ConfigService} from '../services';\n\nexport const zgwFeaturesGuard: CanActivateFn = () => {\n const configService = inject(ConfigService);\n const router = inject(Router);\n\n const enabled = configService.featureToggles?.enableZgwFeatures !== false;\n\n if (!enabled) {\n return router.createUrlTree(['/']);\n }\n\n return true;\n};\n","/*\n * Copyright 2015-2026 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\nexport * from './zgw-features.guard';\n","/* tslint:disable */\n/* eslint-disable */\n// Generated using typescript-generator version 3.2.1263 on 2026-08-26 15:15:30.\n\nexport interface AccentColorsDto {\n colors: { [index: string]: string };\n}\n\nexport interface AdminSettingsLogoDto {\n logoType: string;\n imageBase64: string;\n}\n\nexport interface AdminSettingsLogosDto {\n logo: AdminSettingsLogoDto | null;\n logoDarkMode: AdminSettingsLogoDto | null;\n}\n\nexport interface CreateAdminSettingsLogoDto {\n imageBase64: string;\n}\n\nexport interface FeatureToggleOverridesDto {\n overrides: { [index: string]: boolean };\n}\n\nexport interface UpdateFeatureToggleDto {\n key: string;\n enabled: boolean;\n}\n\nexport interface PbacConditionFieldDto {\n name: string;\n type: string;\n}\n\nexport interface PbacConditionTypeDto {\n key: string;\n}\n\nexport interface PbacEntityMapperDto {\n fromResourceType: string;\n toResourceType: string;\n}\n\nexport interface PbacFieldAliasDto {\n alias: string;\n field: string;\n}\n\nexport interface PbacOperatorDto {\n key: string;\n}\n\nexport interface PbacRegistryDto {\n resources: PbacResourceDto[];\n operators: PbacOperatorDto[];\n conditionTypes: PbacConditionTypeDto[];\n entityMappers: PbacEntityMapperDto[];\n roles: string[];\n}\n\nexport interface PbacResourceDto {\n resourceType: string;\n shortName: string;\n actions: string[];\n fields: PbacConditionFieldDto[];\n fieldAliases: PbacFieldAliasDto[];\n hasSpecificationFactory: boolean;\n containerTargets: string[];\n}\n\nexport interface BuildingBlockDefinitionArtworkDto {\n key: string;\n versionTag: string;\n imageBase64: string;\n}\n\nexport interface BuildingBlockDefinitionDto {\n key: string;\n versionTag: string;\n name: string;\n description: string | null;\n createdBy: string | null;\n createdDate: DateAsString | null;\n basedOnVersionTag: string | null;\n final: boolean;\n imageBase64: string | null;\n}\n\nexport interface BuildingBlockFormDefinitionDto {\n id: string;\n name: string;\n formDefinition: any;\n readOnly: boolean;\n}\n\nexport interface BuildingBlockInstanceDto {\n id: string;\n documentId: string;\n caseDocumentId: string | null;\n definitionKey: string;\n definitionVersionTag: string;\n activityId: string | null;\n callerProcessDefinitionId: string | null;\n processInstanceId: string | null;\n parentBuildingBlockInstanceId: string | null;\n rootBuildingBlockInstanceId: string | null;\n}\n\nexport interface BuildingBlockProcessDefinitionDto {\n id: string;\n key: string;\n name: string | null;\n versionTag: string | null;\n main: boolean;\n draft: boolean;\n}\n\nexport interface BuildingBlockProcessDefinitionWithLinksDto {\n processDefinition: ProcessDefinitionWithPropertiesDto;\n processLinks: ProcessLinkResponseDto[];\n bpmn20Xml: string;\n draft: boolean;\n}\n\nexport interface BuildingBlockVersionDto {\n versionTag: string;\n final: boolean;\n}\n\nexport interface CaseDefinitionBuildingBlockLinkDto {\n id: string;\n caseDefinitionKey: string;\n caseDefinitionVersionTag: string;\n buildingBlockDefinitionKey: string;\n buildingBlockDefinitionVersionTag: string;\n inputMappings: BuildingBlockInputMapping[];\n outputMappings: BuildingBlockOutputMapping[];\n pluginConfigurationMappings: { [index: string]: string };\n}\n\nexport interface CreateBuildingBlockDefinitionArtworkDto {\n imageBase64: string;\n}\n\nexport interface CreateBuildingBlockDefinitionDto {\n key: string;\n versionTag: string;\n name: string;\n description: string | null;\n}\n\nexport interface CreateBuildingBlockDraftDto {\n versionTag: string;\n}\n\nexport interface CreateBuildingBlockFormDefinitionDto {\n name: string;\n formDefinition: string;\n readOnly: boolean | null;\n}\n\nexport interface CreateCaseDefinitionBuildingBlockLinkDto {\n buildingBlockDefinitionKey: string;\n buildingBlockDefinitionVersionTag: string;\n inputMappings: BuildingBlockInputMapping[];\n outputMappings: BuildingBlockOutputMapping[];\n pluginConfigurationMappings: { [index: string]: string };\n}\n\nexport interface UpdateBuildingBlockDefinitionArtworkDto {\n imageBase64: string;\n}\n\nexport interface UpdateBuildingBlockDefinitionDto {\n name: string;\n description: string | null;\n}\n\nexport interface UpdateBuildingBlockFormDefinitionDto {\n name: string;\n formDefinition: string;\n}\n\nexport interface UpdateCaseDefinitionBuildingBlockLinkDto {\n inputMappings: BuildingBlockInputMapping[];\n outputMappings: BuildingBlockOutputMapping[];\n pluginConfigurationMappings: { [index: string]: string };\n}\n\nexport interface CaseDefinitionCheckResponse {\n canUpdateGlobalConfiguration: boolean;\n}\n\nexport interface CaseDefinitionConfigurationIssueDto {\n id: string;\n issueType: string;\n resolved: boolean;\n createdAt: DateAsString;\n resolvedAt: DateAsString | null;\n}\n\nexport interface CaseDefinitionDraftCreateRequest {\n caseDefinitionKey: string;\n caseDefinitionVersion: string;\n name: string | null;\n description: string | null;\n basedOnCaseDefinitionVersion: string | null;\n basedOnCaseDefinitionId: CaseDefinitionId | null;\n caseDefinitionId: CaseDefinitionId;\n}\n\nexport interface CaseDefinitionImportPreviewResponse {\n key: string;\n name: string;\n versionTag: string;\n pluginConfigurations: PluginConfigurationPreviewDto[];\n final: boolean;\n}\n\nexport interface CaseDefinitionImportResponse {\n caseDefinitionId: CaseDefinitionId | null;\n}\n\nexport interface CaseDefinitionQuickSearchDto {\n queryPath: string;\n title: string;\n}\n\nexport interface CaseDefinitionResponseDto {\n caseDefinitionKey: string;\n caseDefinitionVersionTag: string;\n name: string;\n description: string | null;\n createdBy: string | null;\n createdDate: DateAsString | null;\n basedOnVersionTag: string | null;\n final: boolean;\n active: boolean;\n canHaveAssignee: boolean;\n autoAssignTasks: boolean;\n hasExternalStartForm: boolean | null;\n externalStartFormUrl: string | null;\n externalStartFormDescription: string | null;\n conflictingVersions: string | null;\n hasConfigurationIssues: boolean;\n originalKey: string | null;\n originalName: string | null;\n originalVersionTag: string | null;\n}\n\nexport interface CaseDefinitionSettingsResponseDto {\n caseDefinitionKey: string;\n caseDefinitionVersionTag: string;\n canHaveAssignee: boolean;\n autoAssignTasks: boolean;\n hasExternalStartForm: boolean | null;\n externalStartFormUrl: string | null;\n externalStartFormDescription: string | null;\n}\n\nexport interface CaseDefinitionUpdateRequest {\n name: string | null;\n description: string | null;\n}\n\nexport interface CaseListColumnDto {\n title: string | null;\n key: string;\n path: string;\n displayType: any;\n sortable: boolean;\n defaultSort: ColumnDefaultSort | null;\n order: number | null;\n exportable: boolean;\n}\n\nexport interface CaseListRowDto {\n id: string;\n items: CaseListItemDto[];\n}\n\nexport interface CaseSettingsDto {\n canHaveAssignee: boolean | null;\n autoAssignTasks: boolean | null;\n hasExternalStartForm: boolean | null;\n externalStartFormUrl: string | null;\n externalStartFormDescription: string | null;\n}\n\nexport interface CaseTabDto {\n key: string;\n name: string | null;\n type: CaseTabType;\n contentKey: string;\n showTasks: boolean;\n}\n\nexport interface CaseTabUpdateDto {\n name: string | null;\n type: CaseTabType;\n contentKey: string;\n showTasks: boolean;\n}\n\nexport interface CaseTabUpdateOrderDto {\n key: string;\n name: string | null;\n type: CaseTabType;\n contentKey: string;\n showTasks: boolean;\n}\n\nexport interface CaseTabWithMetadataDto {\n key: string;\n name: string | null;\n type: CaseTabType;\n contentKey: string;\n createdOn: DateAsString | null;\n createdBy: string | null;\n showTasks: boolean;\n}\n\nexport interface CaseVersionDto {\n versionTag: string;\n active: boolean;\n final: boolean;\n}\n\nexport interface CreateStartableItemRequest {\n type: StartableItemType;\n properties: any;\n}\n\nexport interface HiddenCaseListColumnDto {\n columnKey: string;\n}\n\nexport interface HiddenTaskListColumnDto {\n columnKey: string;\n}\n\nexport interface ManagementStartableItemDto {\n type: StartableItemType;\n name: string | null;\n key: string;\n versionTag: string | null;\n processDefinitionId: string | null;\n sortOrder: number | null;\n}\n\nexport interface PluginConfigurationPreviewDto {\n pluginConfigurationId: string;\n pluginDefinitionKey: string | null;\n pluginActionDefinitionKey: string;\n processDefinitionKey: string;\n activityId: string;\n existsInTargetEnvironment: boolean;\n}\n\nexport interface StartableItemDto {\n type: StartableItemType;\n name: string | null;\n key: string;\n versionTag: string | null;\n processDefinitionId: string | null;\n draft: boolean;\n}\n\nexport interface StartableItemOrderEntry {\n key: string;\n type: StartableItemType;\n versionTag: string | null;\n sortOrder: number;\n}\n\nexport interface TaskListColumnDto {\n title: string | null;\n key: string;\n path: string;\n displayType: any;\n sortable: boolean;\n defaultSort: ColumnDefaultSort | null;\n order: number | null;\n}\n\nexport interface UpdateStartableItemOrderRequest {\n items: StartableItemOrderEntry[];\n}\n\nexport interface UpdateStartableItemRequest {\n type: StartableItemType;\n properties: any;\n}\n\nexport interface AdminWidgetConfigurationResponseDto {\n key: string;\n title: string;\n dataSourceKey: string;\n displayType: string;\n dataSourceProperties: ObjectNode;\n displayTypeProperties: ObjectNode;\n url: string | null;\n}\n\nexport interface DashboardCreateRequestDto {\n title: string;\n description: string;\n widgetLayout: DashboardWidgetLayout | null;\n}\n\nexport interface DashboardResponseDto {\n key: string;\n title: string;\n description: string;\n createdBy: string;\n createdOn: DateAsString;\n widgetLayout: DashboardWidgetLayout | null;\n}\n\nexport interface DashboardUpdateRequestDto {\n key: string;\n title: string;\n description: string;\n widgetLayout: DashboardWidgetLayout | null;\n}\n\nexport interface DashboardWidgetDataResultDto {\n key: string;\n data: any;\n}\n\nexport interface DashboardWithWidgetsResponseDto {\n key: string;\n title: string;\n widgets: WidgetConfigurationResponseDto[];\n widgetLayout: DashboardWidgetLayout | null;\n}\n\nexport interface SingleWidgetConfigurationUpdateRequestDto {\n title: string;\n dataSourceKey: string;\n displayType: string;\n dataSourceProperties: ObjectNode;\n displayTypeProperties: ObjectNode;\n url: string | null;\n}\n\nexport interface WidgetConfigurationCreateRequestDto {\n title: string;\n dataSourceKey: string;\n displayType: string;\n dataSourceProperties: ObjectNode;\n displayTypeProperties: ObjectNode;\n url: string | null;\n}\n\nexport interface WidgetConfigurationResponseDto {\n key: string;\n title: string;\n displayType: string;\n displayTypeProperties: ObjectNode;\n url: string | null;\n}\n\nexport interface WidgetConfigurationUpdateRequestDto {\n key: string;\n title: string;\n dataSourceKey: string;\n displayType: string;\n dataSourceProperties: ObjectNode;\n displayTypeProperties: ObjectNode;\n url: string | null;\n}\n\nexport interface CaseTagCreateRequestDto {\n key: string;\n title: string;\n color: CaseTagColor;\n}\n\nexport interface CaseTagResponseDto {\n key: string;\n caseDefinitionKey: string;\n caseDefinitionVersionTag: string;\n title: string;\n color: CaseTagColor;\n order: number;\n}\n\nexport interface CaseTagUpdateRequestDto {\n key: string;\n title: string;\n color: CaseTagColor;\n}\n\nexport interface DocumentInspectionDto {\n id: string;\n definitionId: DocumentDefinitionId;\n createdOn: DateAsString;\n modifiedOn: DateAsString;\n createdBy: string;\n sequence: number;\n version: number;\n assigneeId: string;\n assigneeFullName: string;\n assignedTeamKey: string;\n assignedTeamTitle: string;\n internalStatus: string;\n caseTags: CaseTagResponseDto[];\n relations: DocumentRelation[];\n relatedFiles: RelatedFile[];\n content: any;\n}\n\nexport interface InternalCaseStatusCreateRequestDto {\n key: string;\n title: string;\n visibleInCaseListByDefault: boolean;\n retentionPeriodInDays: number;\n color: InternalCaseStatusColor;\n label: string | null;\n}\n\nexport interface InternalCaseStatusResponseDto {\n key: string;\n caseDefinitionName: string;\n title: string;\n visibleInCaseListByDefault: boolean;\n retentionPeriodInDays: number;\n order: number;\n color: InternalCaseStatusColor;\n label: string | null;\n}\n\nexport interface InternalCaseStatusUpdateOrderRequestDto {\n key: string;\n title: string;\n visibleInCaseListByDefault: boolean;\n retentionPeriodInDays: number;\n color: InternalCaseStatusColor;\n label: string | null;\n}\n\nexport interface InternalCaseStatusUpdateRequestDto {\n key: string;\n title: string;\n visibleInCaseListByDefault: boolean;\n retentionPeriodInDays: number;\n color: InternalCaseStatusColor;\n label: string | null;\n}\n\nexport interface ColumnKeyResponse {\n key: string;\n sortable: boolean;\n filterable: boolean;\n}\n\nexport interface ColumnResponse {\n key: string;\n sortable: boolean;\n filterable: boolean;\n defaultSort: string | null;\n}\n\nexport interface DocumentSearchRequest {\n informatieobjecttype: string | null;\n titel: string | null;\n vertrouwelijkheidaanduiding: string | null;\n creatiedatumFrom: DateAsString | null;\n creatiedatumTo: DateAsString | null;\n auteur: string | null;\n trefwoorden: string[] | null;\n}\n\nexport interface DocumentenApiDocumentDto {\n fileId: string;\n pluginConfigurationId: string;\n bestandsnaam: string | null;\n bestandsomvang: number | null;\n creatiedatum: DateAsString;\n auteur: string | null;\n titel: string | null;\n status: string | null;\n taal: string | null;\n identificatie: string | null;\n beschrijving: string | null;\n informatieobjecttype: string | null;\n informatieobjecttypeOmschrijving: string | null;\n trefwoorden: string[] | null;\n formaat: string | null;\n verzenddatum: DateAsString | null;\n ontvangstdatum: DateAsString | null;\n vertrouwelijkheidaanduiding: string | null;\n versie: number | null;\n indicatieGebruiksrecht: boolean | null;\n canView: boolean;\n canModify: boolean;\n canDelete: boolean;\n}\n\nexport interface DocumentenApiUploadFieldDto {\n key: string;\n defaultValue: string | null;\n visible: boolean;\n readonly: boolean;\n}\n\nexport interface DocumentenApiVersionDetailsDto {\n version: string;\n supportsFilterableColumns: boolean;\n supportsSortableColumns: boolean;\n supportsTrefwoorden: boolean;\n supportsUpdatingDefinitiveDocument: boolean;\n supportsObjectInformatieObjecten: boolean;\n experimentalVersion: boolean;\n}\n\nexport interface DocumentenApiVersionDto {\n selectedVersion: string | null;\n supportsFilterableColumns: boolean;\n supportsSortableColumns: boolean;\n supportsTrefwoorden: boolean;\n supportsUpdatingDefinitiveDocument: boolean;\n supportsObjectInformatieObjecten: boolean;\n}\n\nexport interface DocumentenApiVersionManagementDto {\n selectedVersion: string | null;\n detectedVersions: string[];\n supportsFilterableColumns: boolean;\n supportsSortableColumns: boolean;\n supportsTrefwoorden: boolean;\n}\n\nexport interface DocumentenApiVersionsManagementDto {\n versions: string[];\n versionDetails: DocumentenApiVersionDetailsDto[];\n}\n\nexport interface ModifyDocumentRequest {\n creatiedatum: DateAsString;\n titel: string;\n auteur: string;\n status: DocumentStatusType | null;\n taal: string;\n bestandsnaam: string | null;\n beschrijving: string | null;\n ontvangstdatum: DateAsString | null;\n verzenddatum: DateAsString | null;\n indicatieGebruiksrecht: boolean | null;\n vertrouwelijkheidaanduiding: string | null;\n informatieobjecttype: string | null;\n trefwoorden: string[] | null;\n}\n\nexport interface RelatedFileDto extends RelatedFile {\n fileName: string | null;\n sizeInBytes: number | null;\n pluginConfigurationId: string;\n author: string | null;\n title: string | null;\n status: string | null;\n language: string | null;\n identification: string | null;\n description: string | null;\n informatieobjecttype: string | null;\n informatieobjecttypeOmschrijving: string | null;\n keywords: string[] | null;\n format: string | null;\n sendDate: DateAsString | null;\n receiptDate: DateAsString | null;\n confidentialityLevel: string | null;\n version: number | null;\n indicationUsageRights: boolean | null;\n canView: boolean;\n canModify: boolean;\n canDelete: boolean;\n}\n\nexport interface ReorderColumnRequest {\n key: string;\n defaultSort: string | null;\n}\n\nexport interface UpdateColumnRequest {\n defaultSort: string | null;\n}\n\nexport interface FormOption {\n id: string;\n name: string;\n}\n\nexport interface FormProcessLinkCreateRequestDto extends ProcessLinkCreateRequestDto {\n formDefinitionId: string;\n viewModelEnabled: boolean | null;\n formDisplayType: FormDisplayType | null;\n formSize: FormSizes | null;\n subtitles: string[] | null;\n}\n\nexport interface FormProcessLinkExportResponseDto extends ProcessLinkExportResponseDto {\n formDefinitionName: string;\n viewModelEnabled: boolean;\n formDisplayType: FormDisplayType;\n formSize: FormSizes;\n subtitles: string[] | null;\n}\n\nexport interface FormProcessLinkResponseDto extends ProcessLinkResponseDto {\n formDefinitionId: string;\n viewModelEnabled: boolean;\n formDisplayType: FormDisplayType;\n formSize: FormSizes;\n subtitles: string[] | null;\n}\n\nexport interface FormProcessLinkUpdateRequestDto extends ProcessLinkUpdateRequestDto {\n formDefinitionId: string;\n viewModelEnabled: boolean | null;\n formDisplayType: FormDisplayType | null;\n formSize: FormSizes | null;\n subtitles: string[] | null;\n}\n\nexport interface FormSubmissionResult {\n documentId: string | null;\n errors: OperationError[];\n}\n\nexport interface FormSubmissionResultFailed extends FormSubmissionResult, TransactionalResult {\n}\n\nexport interface FormSubmissionResultSucceeded extends FormSubmissionResult {\n documentId: string;\n}\n\nexport interface IntermediateSaveRequest {\n submission: ObjectNode;\n taskInstanceId: string;\n}\n\nexport interface IntermediateSubmission {\n submission: ObjectNode;\n taskInstanceId: string;\n createdBy: string;\n createdOn: DateAsString;\n editedBy: string | null;\n editedOn: DateAsString | null;\n}\n\nexport interface IntermediateSubmissionKt {\n}\n\nexport interface FormFlowAdditionalPropertyDto {\n name: string;\n context: string;\n alwaysPresent: boolean;\n}\n\nexport interface FormFlowBreadcrumbResponse {\n title: string | null;\n key: string;\n stepInstanceId: string | null;\n completed: boolean;\n}\n\nexport interface FormFlowBreadcrumbsResponse {\n currentStepIndex: number;\n breadcrumbs: FormFlowBreadcrumbResponse[];\n}\n\nexport interface FormFlowExpressionBeanDto {\n name: string;\n methods: FormFlowExpressionMethodDto[];\n}\n\nexport interface FormFlowExpressionMethodDto {\n name: string;\n parameters: FormFlowExpressionParameterDto[];\n returnType: string;\n}\n\nexport interface FormFlowExpressionParameterDto {\n name: string;\n type: string;\n}\n\nexport interface FormFlowProcessLinkCreateRequestDto extends ProcessLinkCreateRequestDto {\n formFlowDefinitionKey: string;\n formDisplayType: FormDisplayType | null;\n formSize: FormSizes | null;\n subtitles: string[] | null;\n}\n\nexport interface FormFlowProcessLinkExportResponseDto extends ProcessLinkExportResponseDto {\n formFlowDefinitionKey: string;\n formDisplayType: FormDisplayType;\n formSize: FormSizes;\n subtitles: string[] | null;\n}\n\nexport interface FormFlowProcessLinkResponseDto extends ProcessLinkResponseDto {\n formFlowDefinitionKey: string;\n formDisplayType: FormDisplayType;\n formSize: FormSizes;\n subtitles: string[] | null;\n}\n\nexport interface FormFlowProcessLinkUpdateRequestDto extends ProcessLinkUpdateRequestDto {\n formFlowDefinitionKey: string;\n formDisplayType: FormDisplayType | null;\n formSize: FormSizes | null;\n subtitles: string[] | null;\n}\n\nexport interface FormFlowRegistryDto {\n stepTypes: FormFlowStepTypeDto[];\n expressionBeans: FormFlowExpressionBeanDto[];\n additionalProperties: FormFlowAdditionalPropertyDto[];\n}\n\nexport interface FormFlowStepTypeDto {\n name: string;\n properties: FormFlowStepTypePropertyDto[];\n}\n\nexport interface FormFlowStepTypePropertyDto {\n name: string;\n type: string;\n}\n\nexport interface MultipleFormErrors {\n componentErrors: ComponentError[];\n}\n\nexport interface SingleFormError {\n error: string;\n component: string | null;\n}\n\nexport interface StartFormSubmissionResult {\n documentId: string | null;\n}\n\nexport interface LocalizationResponseDto {\n languageKey: string;\n content: ObjectNode;\n}\n\nexport interface LocalizationUpdateRequestDto {\n languageKey: string;\n content: ObjectNode;\n}\n\nexport interface LoggingEventPropertyDto {\n key: string;\n value: string;\n}\n\nexport interface LoggingEventResponse {\n timestamp: DateAsString;\n formattedMessage: string;\n level: string;\n properties: LoggingEventPropertyDto[];\n stacktrace: string | null;\n}\n\nexport interface LoggingEventSearchRequest {\n afterTimestamp: DateAsString | null;\n beforeTimestamp: DateAsString | null;\n level: string | null;\n likeFormattedMessage: string | null;\n properties: LoggingEventPropertyDto[];\n}\n\nexport interface NoteCreateRequestDto {\n content: string;\n}\n\nexport interface NoteResponseDto {\n id: string;\n createdByUserId: string;\n createdByUserFullName: string;\n createdDate: DateAsString;\n content: string;\n documentId: string;\n}\n\nexport interface NoteUpdateRequestDto {\n content: string;\n}\n\nexport interface JobInspectionDto {\n id: string;\n jobDefinitionId: string | null;\n executionId: string | null;\n activityId: string | null;\n jobType: JobType;\n retries: number;\n exceptionMessage: string | null;\n dueDate: DateAsString | null;\n suspended: boolean;\n}\n\nexport interface LogInspectionSearchRequest {\n level: string | null;\n likeFormattedMessage: string | null;\n afterTimestamp: DateAsString | null;\n beforeTimestamp: DateAsString | null;\n additionalProperties: LoggingEventPropertyDto[];\n}\n\nexport interface ProcessInstanceInspectionDto {\n processInstanceId: string;\n processDefinitionId: string | null;\n processDefinitionKey: string | null;\n processName: string | null;\n version: number;\n latestVersion: number;\n active: boolean;\n startedBy: string | null;\n startedByUserId: string | null;\n startedOn: DateAsString | null;\n incidents: IncidentDto[];\n tasks: TaskInspectionDto[];\n variables: ProcessVariableDto[];\n jobs: JobInspectionDto[];\n buildingBlock: BuildingBlockProcessReference | null;\n}\n\nexport interface TaskInspectionDto {\n id: string;\n name: string | null;\n assignee: string | null;\n created: DateAsString | null;\n dueDate: DateAsString | null;\n taskDefinitionKey: string | null;\n}\n\nexport interface URLProcessLinkCreateRequestDto extends ProcessLinkCreateRequestDto {\n url: string;\n}\n\nexport interface URLProcessLinkDeployDto extends ProcessLinkDeployDto {\n processLinkType: \"url\";\n url: string;\n}\n\nexport interface URLProcessLinkExportResponseDto extends ProcessLinkExportResponseDto {\n url: string;\n}\n\nexport interface URLProcessLinkResponseDto extends ProcessLinkResponseDto {\n url: string;\n}\n\nexport interface URLProcessLinkUpdateRequestDto extends ProcessLinkUpdateRequestDto {\n url: string;\n}\n\nexport interface URLSubmissionResult {\n errors: string[];\n documentId: string;\n}\n\nexport interface URLVariables {\n variables: { [index: string]: string };\n}\n\nexport interface CaseProcessDefinitionResponseDto {\n processDefinition: ProcessDefinitionWithPropertiesDto;\n processCaseLink: ProcessDefinitionCaseDefinition;\n processLinks: ProcessLinkResponseDto[];\n bpmn20Xml: string;\n draft: boolean;\n autofilledElements: AutofilledElementDto[];\n}\n\nexport interface MissingReferenceDto {\n type: MissingReferenceType;\n reference: string;\n activityId: string | null;\n processDefinitionKey: string | null;\n blocksImport: boolean;\n}\n\nexport interface ProcessDefinitionConflictResponseDto {\n processDefinitionKey: string;\n processDefinitionId: string;\n processDefinitionName: string | null;\n}\n\nexport interface ProcessDefinitionImportPreviewResponseDto {\n processDefinitionKeys: string[];\n existingProcessDefinitionKeys: string[];\n pluginConfigurations: ProcessLinkPluginConfigurationPreviewDto[];\n missingReferences: MissingReferenceDto[];\n elementsToReplace: ReplacedElementDto[];\n canImport: boolean;\n}\n\nexport interface ProcessDefinitionImportResponseDto {\n processDefinitionKeys: string[];\n missingReferences: MissingReferenceDto[];\n}\n\nexport interface ProcessDefinitionResponseDto {\n processDefinition: ProcessDefinitionWithPropertiesDto;\n processLinks: ProcessLinkResponseDto[];\n bpmn20Xml: string;\n draft: boolean;\n autofilledElements: AutofilledElementDto[];\n}\n\nexport interface ProcessDefinitionValidateRequestDto {\n bpmnXml: string;\n processLinks: ProcessLinkCreateRequestDto[];\n canInitializeDocument: boolean;\n startableByUser: boolean;\n}\n\nexport interface ProcessDefinitionValidateResponseDto {\n hasWarnings: boolean;\n errors: ProcessDefinitionValidationError[];\n valid: boolean;\n}\n\nexport interface ProcessLinkActivityResult<T> {\n processLinkId: string;\n type: string;\n assignee: string | null;\n due: DateAsString | null;\n properties: T;\n}\n\nexport interface ProcessLinkActivityResultWithTask {\n task: TaskInstanceWithIdentityLink;\n processLinkActivityResult: ProcessLinkActivityResult<any> | null;\n}\n\nexport interface ProcessLinkCreateRequestDto {\n activityId: string;\n processDefinitionId: string;\n activityType: ActivityTypeWithEventName;\n processLinkType: string;\n}\n\nexport interface ProcessLinkExportResponseDto {\n activityId: string;\n activityType: ActivityTypeWithEventName;\n processLinkType: string;\n}\n\nexport interface ProcessLinkPluginConfigurationPreviewDto {\n pluginConfigurationId: string;\n pluginDefinitionKey: string | null;\n pluginActionDefinitionKey: string;\n processDefinitionKey: string;\n activityId: string;\n existsInTargetEnvironment: boolean;\n}\n\nexport interface ProcessLinkResponseDto {\n activityId: string;\n processDefinitionId: string;\n activityType: ActivityTypeWithEventName;\n processLinkType: string;\n id: string;\n}\n\nexport interface ProcessLinkUpdateRequestDto {\n processLinkType: string;\n id: string;\n}\n\nexport interface ReplacedElementDto {\n type: ReplacedElementType;\n key: string;\n}\n\nexport interface SearchFieldV2Dto {\n id: string;\n ownerId: string;\n ownerType: string;\n key: string;\n title: string | null;\n path: string;\n order: number;\n dataType: DataType;\n fieldType: FieldType;\n matchType: SearchFieldMatchType | null;\n dropdownDataProvider: string | null;\n required: boolean;\n}\n\nexport interface TabDto {\n key: string;\n title: string | null;\n type: string;\n properties: { [index: string]: any | null } | null;\n widgetLayout: TabWidgetLayout | null;\n}\n\nexport interface TeamCreateRequestDto {\n key: string;\n title: string;\n}\n\nexport interface TeamImportExportDto {\n key: string;\n title: string;\n}\n\nexport interface TeamListResponseDto {\n key: string;\n title: string;\n userCount: number;\n}\n\nexport interface TeamResponseDto {\n key: string;\n title: string;\n}\n\nexport interface TeamUpdateRequestDto {\n key: string;\n title: string;\n}\n\nexport interface TeamUserCreateRequestDto {\n username: string;\n}\n\nexport interface TeamUserResponseDto {\n username: string;\n fullName: string | null;\n email: string | null;\n}\n\nexport interface AutofilledElementDto {\n activityId: string;\n modificationType: string;\n appliedValue: string;\n}\n\nexport interface BatchAssignTaskDTO {\n assignee: string;\n assignedTeamKey: string;\n tasksIds: string[];\n}\n\nexport interface ChoiceFieldCreateRequestDTO {\n keyName: string;\n title: string;\n}\n\nexport interface ChoiceFieldDTO {\n id: number;\n keyName: string;\n choiceFieldValues: ChoiceFieldValue[];\n}\n\nexport interface ChoiceFieldUpdateRequestDTO {\n id: number;\n keyName: string;\n title: string;\n}\n\nexport interface ChoiceFieldValueCreateRequestDTO {\n name: string;\n deprecated: boolean;\n sortOrder: number;\n value: string;\n}\n\nexport interface ChoiceFieldValueUpdateRequestDTO {\n id: number;\n name: string;\n deprecated: boolean;\n sortOrder: number;\n value: string;\n}\n\nexport interface CommentDto {\n text: string;\n}\n\nexport interface CustomTaskDto {\n task: OperatonTaskDto;\n formFields: FormField[];\n variables: { [index: string]: any };\n formLocation: string;\n processName: string;\n processKey: string;\n processVersion: string;\n businessKey: string;\n}\n\nexport interface DecisionDefinitionResponseDto {\n id: string;\n key: string;\n category: string | null;\n name: string | null;\n version: number;\n resource: string | null;\n deploymentId: string | null;\n tenantId: string | null;\n decisionRequirementsDefinitionId: string | null;\n decisionRequirementsDefinitionKey: string | null;\n versionTag: string | null;\n historyTimeToLive: number | null;\n}\n\nexport interface DefinitionDeploymentResponseDto {\n identifier: string;\n}\n\nexport interface FlowNodeMigrationDTO {\n sourceFlowNodeMap: { [index: string]: string };\n targetFlowNodeMap: { [index: string]: string };\n uniqueFlowNodeMap: { [index: string]: string };\n}\n\nexport interface HeatmapTaskAverageDurationDTO extends HeatmapTaskDTO {\n averageDurationInMilliseconds: number;\n}\n\nexport interface HeatmapTaskCountDTO extends HeatmapTaskDTO {\n}\n\nexport interface HeatmapTaskDTO {\n name: string;\n count: number;\n totalCount: number;\n}\n\nexport interface IncidentDto {\n id: string;\n processInstanceId: string;\n processDefinitionId: string;\n executionId: string;\n activityId: string;\n incidentType: string;\n incidentMessage: string;\n incidentTimestamp: DateAsString;\n causeIncidentId: string;\n rootCauseIncidentId: string;\n configuration: string;\n tenantId: string;\n jobDefinitionId: string;\n}\n\nexport interface KeyAndPasswordDTO {\n key: string;\n newPassword: string;\n}\n\nexport interface LoginDTO {\n username: string;\n password: string;\n rememberMe: boolean;\n}\n\nexport interface ProcessDefinitionDiagramWithPropertyDto {\n id: string;\n bpmn20Xml: string;\n readOnly: boolean;\n systemProcess: boolean;\n autofilledElements: AutofilledElementDto[];\n}\n\nexport interface ProcessDefinitionWithPropertiesDto extends ProcessDefinitionDto {\n readOnly: boolean;\n systemProcess: boolean;\n}\n\nexport interface ProcessInstanceDiagramDto {\n id: string;\n bpmn20Xml: string;\n historicActivityInstances: HistoricActivityInstance[];\n}\n\nexport interface ProcessInstanceSearchDTO {\n processVariables: ProcessVariableDTOV2Union[];\n}\n\nexport interface ProcessInstanceStatisticsDTO {\n duration: number;\n processName: string;\n}\n\nexport interface ProcessVariableDto {\n name: string;\n type: string;\n value: any;\n}\n\nexport interface ProcessVariableMutationRequest {\n name: string;\n type: ProcessVariableType;\n value: any;\n}\n\nexport interface StartFormDto {\n formLocation: string;\n formFields: FormField[];\n genericForm: boolean;\n}\n\nexport interface TaskCompletionDTO {\n variables: { [index: string]: any };\n filesToDelete: string[];\n}\n\nexport interface UserTeamDto {\n key: string;\n}\n\nexport interface TemplatePreviewRequest {\n fileName: string;\n content: string;\n}\n\nexport interface CreateTemplateRequest {\n key: string;\n caseDefinitionKey: string | null;\n caseDefinitionVersionTag: string | null;\n buildingBlockDefinitionKey: string | null;\n buildingBlockDefinitionVersionTag: string | null;\n type: string;\n metadata: { [index: string]: any | null };\n}\n\nexport interface DeleteTemplateRequest {\n caseDefinitionKey: string | null;\n caseDefinitionVersionTag: string | null;\n buildingBlockDefinitionKey: string | null;\n buildingBlockDefinitionVersionTag: string | null;\n templates: TemplateKeyType[];\n}\n\nexport interface TemplateKeyType {\n key: string;\n type: string;\n}\n\nexport interface TemplateListItemResponse {\n key: string;\n type: string;\n}\n\nexport interface TemplateResponse {\n key: string;\n caseDefinitionKey: string | null;\n caseDefinitionVersionTag: string | null;\n buildingBlockDefinitionKey: string | null;\n buildingBlockDefinitionVersionTag: string | null;\n type: string;\n metadata: { [index: string]: any | null };\n content: string;\n}\n\nexport interface UpdateTemplateRequest {\n key: string;\n caseDefinitionKey: string | null;\n caseDefinitionVersionTag: string | null;\n buildingBlockDefinitionKey: string | null;\n buildingBlockDefinitionVersionTag: string | null;\n type: string;\n metadata: { [index: string]: any | null };\n content: string;\n}\n\nexport interface WidgetDto {\n type: string;\n title: string;\n icon: string | null;\n compact: boolean | null;\n width: number;\n color: WidgetColor | null;\n highContrast: boolean;\n displayConditions: Condition<any>[] | null;\n key: string;\n actions: WidgetAction[];\n}\n\nexport interface CaseZaakdetailsInspectionDto {\n syncConfig: ZaakdetailsSyncConfigDto | null;\n zaakdetailsObject: ZaakdetailsObjectDto | null;\n}\n\nexport interface ZaakdetailsObjectContentDto {\n resolved: boolean;\n record: any | null;\n message: string | null;\n objectUrl: string | null;\n}\n\nexport interface ZaakdetailsObjectDto {\n documentId: string;\n objectUrl: string;\n linkedToZaak: boolean;\n}\n\nexport interface ZaakdetailsSyncConfigDto {\n caseDefinitionKey: string;\n caseDefinitionVersionTag: string;\n objectManagementConfigurationId: string | null;\n objectManagementTitle: string | null;\n enabled: boolean;\n}\n\nexport interface CaseZgwInspectionDto {\n zaakInstanceLink: ZaakInstanceLinkDto | null;\n zaak: any | null;\n eigenschappen: ZaakEigenschapDto[];\n rollen: ZaakRolDto[];\n statusHistory: ZaakStatusDto[];\n resultaat: ZaakResultaatDto | null;\n zaakObjecten: ZaakObjectDto[];\n zaakInformatieObjecten: ZaakInformatieObjectDto[];\n besluiten: ZaakBesluitDto[];\n warnings: string[];\n}\n\nexport interface ZaakBesluitDto {\n url: string;\n besluit: string;\n}\n\nexport interface ZaakEigenschapDto {\n url: string;\n eigenschap: string;\n naam: string | null;\n waarde: string;\n}\n\nexport interface ZaakInformatieObjectDto {\n url: string;\n informatieobject: string;\n titel: string | null;\n registratiedatum: DateAsString;\n}\n\nexport interface ZaakInstanceLinkDto {\n zaakInstanceUrl: string;\n zaakInstanceId: string;\n zaakTypeUrl: string;\n}\n\nexport interface ZaakObjectDto {\n url: string;\n objectUrl: string;\n objectType: string;\n objectTypeOverige: string | null;\n relatieomschrijving: string | null;\n}\n\nexport interface ZaakResultaatDto {\n url: string;\n resultaattype: string;\n toelichting: string | null;\n}\n\nexport interface ZaakRolDto {\n url: string | null;\n betrokkeneType: string;\n roltype: string;\n omschrijving: string | null;\n omschrijvingGeneriek: string | null;\n indicatieMachtiging: string | null;\n betrokkeneIdentificatie: any | null;\n}\n\nexport interface ZaakStatusDto {\n url: string;\n statustype: string;\n datumStatusGezet: DateAsString;\n statustoelichting: string | null;\n}\n\nexport interface ZaakobjectResolveResultDto {\n resolved: boolean;\n record: any | null;\n message: string | null;\n objectUrl: string;\n}\n\nexport interface BuildingBlockInputMapping {\n source: string;\n target: string;\n prefixedTarget: string;\n}\n\nexport interface BuildingBlockOutputMapping {\n source: string;\n target: string;\n syncTiming: BuildingBlockSyncTiming;\n prefixedSource: string;\n}\n\nexport interface CaseDefinitionId extends AbstractId<CaseDefinitionId>, BlueprintId {\n key: string;\n versionTag: string;\n}\n\nexport interface CaseListItemDto {\n key: string;\n value: any | null;\n}\n\nexport interface ObjectNode extends ContainerNode<ObjectNode>, Serializable {\n}\n\nexport interface DocumentDefinitionId {\n buildingBlockDefinitionId: BuildingBlockDefinitionId;\n caseDefinitionId: CaseDefinitionId;\n name: string;\n}\n\nexport interface DocumentRelation {\n relationType: DocumentRelationType;\n id: string;\n}\n\nexport interface RelatedFile {\n fileId: string;\n createdOn: DateAsString;\n createdBy: string;\n sizeInBytes: number;\n fileName: string;\n}\n\nexport interface OperationError {\n}\n\nexport interface TransactionalResult {\n}\n\nexport interface ComponentError {\n component: string | null;\n message: string;\n}\n\nexport interface BuildingBlockProcessReference {\n instanceId: string;\n definitionKey: string;\n definitionVersionTag: string;\n documentId: string;\n}\n\nexport interface ProcessLinkDeployDto {\n processLinkType: \"url\";\n activityId: string;\n processDefinitionId: string;\n activityType: ActivityTypeWithEventName;\n}\n\nexport interface ProcessDefinitionCaseDefinition {\n id: ProcessDefinitionCaseDefinitionId;\n canInitializeDocument: boolean;\n startableByUser: boolean;\n processDefinitionName: string | null;\n processDefinitionKey: string | null;\n draft: boolean;\n}\n\nexport interface ProcessDefinitionValidationError {\n elementId: string;\n elementType: string;\n elementName: string | null;\n reason: string;\n errorCode: string | null;\n expression: string | null;\n severity: ValidationSeverity;\n invalidFields: string[] | null;\n invalidArguments: number[] | null;\n listenerType: string | null;\n listenerIndex: number | null;\n}\n\nexport interface TaskInstanceWithIdentityLink {\n businessKey: string;\n id: string | null;\n name: string | null;\n assignee: string | null;\n created: DateAsString | null;\n due: DateAsString | null;\n followUp: DateAsString | null;\n lastUpdated: DateAsString | null;\n delegationState: string | null;\n description: string | null;\n executionId: string | null;\n owner: string | null;\n parentTaskId: string | null;\n priority: number;\n processDefinitionId: string | null;\n processInstanceId: string | null;\n taskDefinitionKey: string | null;\n caseExecutionId: string | null;\n caseInstanceId: string | null;\n caseDefinitionId: string | null;\n suspended: boolean;\n tenantId: string | null;\n assignedTeam: TeamDto | null;\n valtimoAssignee: AssigneeDto | null;\n external: boolean;\n processDefinitionKey: string;\n identityLinks: OperatonIdentityLinkDto[];\n subtitles: string[];\n}\n\nexport interface ChoiceFieldValue extends AbstractAuditingEntity, Serializable {\n id: number;\n name: string;\n deprecated: boolean;\n sortOrder: number;\n value: string;\n choiceField: ChoiceField;\n}\n\nexport interface OperatonTaskDto {\n id: string | null;\n name: string | null;\n assignee: string | null;\n created: DateAsString | null;\n due: DateAsString | null;\n followUp: DateAsString | null;\n lastUpdated: DateAsString | null;\n delegationState: string | null;\n description: string | null;\n executionId: string | null;\n owner: string | null;\n parentTaskId: string | null;\n priority: number;\n processDefinitionId: string | null;\n processInstanceId: string | null;\n taskDefinitionKey: string | null;\n caseExecutionId: string | null;\n caseInstanceId: string | null;\n caseDefinitionId: string | null;\n suspended: boolean;\n tenantId: string | null;\n assignedTeam: TeamDto | null;\n valtimoAssignee: AssigneeDto | null;\n}\n\nexport interface FormField {\n businessKey: boolean;\n validationConstraints: FormFieldValidationConstraint[];\n label: string;\n value: TypedValue;\n typeName: string;\n properties: { [index: string]: string };\n id: string;\n type: FormType;\n /**\n * @deprecated since 1.0\n */\n defaultValue: any;\n}\n\nexport interface ProcessDefinitionDto {\n id: string;\n key: string;\n category: string;\n description: string;\n name: string;\n version: number;\n resource: string;\n deploymentId: string;\n diagram: string;\n suspended: boolean;\n tenantId: string;\n versionTag: string;\n historyTimeToLive: number;\n startableInTasklist: boolean;\n}\n\nexport interface HistoricActivityInstance {\n rootProcessInstanceId: string;\n processDefinitionKey: string;\n canceled: boolean;\n removalTime: DateAsString;\n parentActivityInstanceId: string;\n calledProcessInstanceId: string;\n calledCaseInstanceId: string;\n activityId: string;\n tenantId: string;\n executionId: string;\n assignee: string;\n taskId: string;\n startTime: DateAsString;\n endTime: DateAsString;\n processDefinitionId: string;\n processInstanceId: string;\n activityType: string;\n activityName: string;\n durationInMillis: number;\n completeScope: boolean;\n id: string;\n}\n\nexport interface ProcessVariableDTOV2 {\n \"@type\": \"string\" | \"date\" | \"boolean\" | \"enum\" | \"long\" | \"fileUpload\";\n name: string;\n}\n\nexport interface Condition<T> {\n path: string;\n operator: ExpressionOperator;\n value: T;\n}\n\nexport interface WidgetAction {\n}\n\nexport interface BlueprintId {\n tagPrefix: string;\n idKey: string;\n}\n\nexport interface Serializable {\n}\n\nexport interface BuildingBlockDefinitionId extends AbstractId<BuildingBlockDefinitionId>, BlueprintId {\n key: string;\n versionTag: string;\n}\n\nexport interface ProcessDefinitionCaseDefinitionId extends AbstractId<ProcessDefinitionCaseDefinitionId> {\n processDefinitionId: ProcessDefinitionId;\n caseDefinitionId: CaseDefinitionId;\n}\n\nexport interface OperatonIdentityLinkDto {\n userId: string | null;\n groupId: string | null;\n type: string | null;\n}\n\nexport interface ChoiceField extends AbstractAuditingEntity, Serializable {\n id: number;\n keyName: string;\n title: string;\n}\n\nexport interface AbstractAuditingEntity {\n}\n\nexport interface TeamDto extends Team {\n}\n\nexport interface AssigneeDto {\n username: string;\n firstName: string | null;\n lastName: string | null;\n fullName: string;\n}\n\nexport interface FormFieldValidationConstraint {\n configuration: any;\n name: string;\n}\n\nexport interface TypedValue extends Serializable {\n value: any;\n type: ValueType;\n transient: boolean;\n}\n\nexport interface FormType {\n name: string;\n}\n\nexport interface StringProcessVariableDTOV2 extends ProcessVariableDTOV2 {\n \"@type\": \"string\";\n value: string;\n}\n\nexport interface DateProcessVariableDTOV2 extends ProcessVariableDTOV2 {\n \"@type\": \"date\";\n range: DateRange;\n}\n\nexport interface BooleanProcessVariableDTOV2 extends ProcessVariableDTOV2 {\n \"@type\": \"boolean\";\n value: boolean;\n}\n\nexport interface EnumProcessVariableDTOV2 extends ProcessVariableDTOV2 {\n \"@type\": \"enum\";\n values: string[];\n}\n\nexport interface LongProcessVariableDTOV2 extends ProcessVariableDTOV2 {\n \"@type\": \"long\";\n value: number;\n}\n\nexport interface FileUploadProcessVariableDTOV2 extends ProcessVariableDTOV2 {\n \"@type\": \"fileUpload\";\n value: boolean;\n}\n\nexport interface AbstractId<SELF> extends Identity, Serializable {\n}\n\nexport interface ContainerNode<T> extends BaseJsonNode, JsonNodeCreator {\n}\n\nexport interface ProcessDefinitionId {\n id: string;\n}\n\nexport interface Team {\n title: string;\n key: string;\n}\n\nexport interface ValueType extends Serializable {\n primitiveValueType: boolean;\n name: string;\n parent: ValueType;\n abstract: boolean;\n}\n\nexport interface DateRange {\n from: DateAsString;\n to: DateAsString;\n}\n\nexport interface Identity {\n}\n\nexport interface BaseJsonNode extends Serializable {\n}\n\nexport interface JsonNodeCreator {\n}\n\nexport type DateAsString = string;\n\nexport type StartableItemType = \"PROCESS\" | \"BUILDING_BLOCK\";\n\nexport type JobType = \"TIMER\" | \"ASYNC_CONTINUATION\" | \"MESSAGE\" | \"BATCH\" | \"OTHER\";\n\nexport type MissingReferenceType = \"SUB_PROCESS\" | \"DECISION_DEFINITION\" | \"FORM\" | \"FORM_FLOW\" | \"READ_ONLY_SYSTEM_PROCESS\";\n\nexport type ReplacedElementType = \"PROCESS_DEFINITION\" | \"DECISION_DEFINITION\" | \"FORM\";\n\nexport type ProcessVariableType = \"STRING\" | \"INTEGER\" | \"LONG\" | \"DOUBLE\" | \"BOOLEAN\" | \"JSON\";\n\nexport type ColumnDefaultSort = \"ASC\" | \"DESC\";\n\nexport type CaseTabType = \"standard\" | \"formio\" | \"custom\" | \"widgets\";\n\nexport type DashboardWidgetLayout = \"MUURI_GAP_FREE\" | \"MUURI\" | \"BEAUTIFUL\";\n\nexport type CaseTagColor = \"WARMGRAY\" | \"RED\" | \"MAGENTA\" | \"PURPLE\" | \"BLUE\" | \"CYAN\" | \"TEAL\" | \"GREEN\" | \"GRAY\" | \"COOLGRAY\" | \"HIGHCONTRAST\" | \"OUTLINE\";\n\nexport type InternalCaseStatusColor = \"WARMGRAY\" | \"RED\" | \"MAGENTA\" | \"PURPLE\" | \"BLUE\" | \"CYAN\" | \"TEAL\" | \"GREEN\" | \"GRAY\" | \"COOLGRAY\" | \"HIGHCONTRAST\" | \"OUTLINE\";\n\nexport type DocumentStatusType = \"in_bewerking\" | \"ter_vaststelling\" | \"definitief\" | \"gearchiveerd\";\n\nexport type ActivityTypeWithEventName = \"bpmn:MultiInstanceBody:start\" | \"bpmn:MultiInstanceBody:end\" | \"bpmn:ExclusiveGateway:start\" | \"bpmn:ExclusiveGateway:end\" | \"bpmn:InclusiveGateway:start\" | \"bpmn:InclusiveGateway:end\" | \"bpmn:ParallelGateway:start\" | \"bpmn:ParallelGateway:end\" | \"bpmn:ComplexGateway:start\" | \"bpmn:ComplexGateway:end\" | \"bpmn:EventBasedGateway:start\" | \"bpmn:EventBasedGateway:end\" | \"bpmn:Task:start\" | \"bpmn:Task:end\" | \"bpmn:ScriptTask:start\" | \"bpmn:ScriptTask:end\" | \"bpmn:ServiceTask:start\" | \"bpmn:ServiceTask:end\" | \"bpmn:BusinessRuleTask:start\" | \"bpmn:BusinessRuleTask:end\" | \"bpmn:ManualTask:start\" | \"bpmn:ManualTask:end\" | \"bpmn:UserTask:create\" | \"bpmn:UserTask:assignment\" | \"bpmn:UserTask:complete\" | \"bpmn:UserTask:update\" | \"bpmn:UserTask:delete\" | \"bpmn:UserTask:timeout\" | \"bpmn:UserTask:start\" | \"bpmn:UserTask:end\" | \"bpmn:SendTask:start\" | \"bpmn:SendTask:end\" | \"bpmn:ReceiveTask:start\" | \"bpmn:ReceiveTask:end\" | \"bpmn:SubProcess:start\" | \"bpmn:SubProcess:end\" | \"bpmn:AdHocSubProcess:start\" | \"bpmn:AdHocSubProcess:end\" | \"bpmn:CallActivity:start\" | \"bpmn:CallActivity:end\" | \"bpmn:Transaction:start\" | \"bpmn:Transaction:end\" | \"bpmn:BoundaryTimer:start\" | \"bpmn:BoundaryTimer:end\" | \"bpmn:BoundaryMessage:start\" | \"bpmn:BoundaryMessage:end\" | \"bpmn:BoundarySignal:start\" | \"bpmn:BoundarySignal:end\" | \"bpmn:CompensationBoundaryCatch:start\" | \"bpmn:CompensationBoundaryCatch:end\" | \"bpmn:BoundaryError:start\" | \"bpmn:BoundaryError:end\" | \"bpmn:BoundaryEscalation:start\" | \"bpmn:BoundaryEscalation:end\" | \"bpmn:CancelBoundaryCatch:start\" | \"bpmn:CancelBoundaryCatch:end\" | \"bpmn:BoundaryConditional:start\" | \"bpmn:BoundaryConditional:end\" | \"bpmn:StartEvent:start\" | \"bpmn:StartEvent:end\" | \"bpmn:StartTimerEvent:start\" | \"bpmn:StartTimerEvent:end\" | \"bpmn:MessageStartEvent:start\" | \"bpmn:MessageStartEvent:end\" | \"bpmn:SignalStartEvent:start\" | \"bpmn:SignalStartEvent:end\" | \"bpmn:EscalationStartEvent:start\" | \"bpmn:EscalationStartEvent:end\" | \"bpmn:CompensationStartEvent:start\" | \"bpmn:CompensationStartEvent:end\" | \"bpmn:ErrorStartEvent:start\" | \"bpmn:ErrorStartEvent:end\" | \"bpmn:ConditionalStartEvent:start\" | \"bpmn:ConditionalStartEvent:end\" | \"bpmn:IntermediateCatchEvent:start\" | \"bpmn:IntermediateCatchEvent:end\" | \"bpmn:IntermediateMessageCatch:start\" | \"bpmn:IntermediateMessageCatch:end\" | \"bpmn:IntermediateTimer:start\" | \"bpmn:IntermediateTimer:end\" | \"bpmn:IntermediateLinkCatch:start\" | \"bpmn:IntermediateLinkCatch:end\" | \"bpmn:IntermediateSignalCatch:start\" | \"bpmn:IntermediateSignalCatch:end\" | \"bpmn:IntermediateConditional:start\" | \"bpmn:IntermediateConditional:end\" | \"bpmn:IntermediateThrowEvent:start\" | \"bpmn:IntermediateThrowEvent:end\" | \"bpmn:IntermediateSignalThrow:start\" | \"bpmn:IntermediateSignalThrow:end\" | \"bpmn:IntermediateCompensationThrowEvent:start\" | \"bpmn:IntermediateCompensationThrowEvent:end\" | \"bpmn:IntermediateMessageThrowEvent:start\" | \"bpmn:IntermediateMessageThrowEvent:end\" | \"bpmn:IntermediateNoneThrowEvent:start\" | \"bpmn:IntermediateNoneThrowEvent:end\" | \"bpmn:IntermediateEscalationThrowEvent:start\" | \"bpmn:IntermediateEscalationThrowEvent:end\" | \"bpmn:ErrorEndEvent:start\" | \"bpmn:ErrorEndEvent:end\" | \"bpmn:CancelEndEvent:start\" | \"bpmn:CancelEndEvent:end\" | \"bpmn:TerminateEndEvent:start\" | \"bpmn:TerminateEndEvent:end\" | \"bpmn:MessageEndEvent:start\" | \"bpmn:MessageEndEvent:end\" | \"bpmn:SignalEndEvent:start\" | \"bpmn:SignalEndEvent:end\" | \"bpmn:CompensationEndEvent:start\" | \"bpmn:CompensationEndEvent:end\" | \"bpmn:EscalationEndEvent:start\" | \"bpmn:EscalationEndEvent:end\" | \"bpmn:NoneEndEvent:start\" | \"bpmn:NoneEndEvent:end\";\n\nexport type FormDisplayType = \"modal\" | \"panel\";\n\nexport type FormSizes = \"extraSmall\" | \"small\" | \"medium\" | \"large\";\n\nexport type DataType = \"text\" | \"number\" | \"date\" | \"datetime\" | \"time\" | \"boolean\" | \"bsn\";\n\nexport type FieldType = \"text_contains\" | \"single\" | \"range\" | \"single-select-dropdown\" | \"multi-select-dropdown\";\n\nexport type SearchFieldMatchType = \"like\" | \"exact\";\n\nexport type TabWidgetLayout = \"MUURI_GAP_FREE\" | \"MUURI\" | \"BEAUTIFUL\";\n\nexport type WidgetColor = \"YELLOW\" | \"ORANGE\" | \"RED\" | \"BROWN\" | \"GREEN\" | \"TURQOISE\" | \"PURPLE\" | \"PERIWINKLE\" | \"BLUE\" | \"HIGHCONTRAST\" | \"WHITE\";\n\nexport type BuildingBlockSyncTiming = \"CONTINUOUS\" | \"END\";\n\nexport type DocumentRelationType = \"PREVIOUS\" | \"NEXT\" | \"SUPPORTING\";\n\nexport type ValidationSeverity = \"ERROR\" | \"WARNING\";\n\nexport type ExpressionOperator = \"!=\" | \"==\" | \">\" | \">=\" | \"<\" | \"<=\" | \"list_contains\" | \"in\";\n\nexport type ProcessVariableDTOV2Union = StringProcessVariableDTOV2 | DateProcessVariableDTOV2 | BooleanProcessVariableDTOV2 | EnumProcessVariableDTOV2 | LongProcessVariableDTOV2 | FileUploadProcessVariableDTOV2;\n","/*\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/*\n * Public API Surface of shared\n */\n\nexport * from './lib/components/carousel/carousel.component';\nexport * from './lib/components/global-notification.component';\nexport * from './lib/config.module';\nexport * from './lib/constants';\nexport * from './lib/extension/extension.component';\nexport * from './lib/models';\nexport * from './lib/services';\nexport * from './lib/testing';\nexport * from './lib/translation';\nexport * from './lib/utils';\nexport * from './lib/zgw';\nexport * from './lib/guards';\nexport * from './lib/generated'\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1","i2.ConfigService","i1.ConfigService","i3.EnvironmentService","i4.DraftVersionService","i1.GlobalNotificationService","i2","switchMap","map"],"mappings":"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"}
1
+ {"version":3,"file":"valtimo-shared.mjs","sources":["../../../../projects/valtimo/shared/src/lib/components/carousel/carousel.component.ts","../../../../projects/valtimo/shared/src/lib/components/carousel/carousel.component.html","../../../../projects/valtimo/shared/src/lib/utils/router.utils.ts","../../../../projects/valtimo/shared/src/lib/utils/url.utils.ts","../../../../projects/valtimo/shared/src/lib/utils/global-notification.utils.ts","../../../../projects/valtimo/shared/src/lib/utils/route-params.utils.ts","../../../../projects/valtimo/shared/src/lib/utils/display-type.utils.ts","../../../../projects/valtimo/shared/src/lib/utils/validate-bsn.utils.ts","../../../../projects/valtimo/shared/src/lib/utils/index.ts","../../../../projects/valtimo/shared/src/lib/services/base-api.service.ts","../../../../projects/valtimo/shared/src/lib/models/config.ts","../../../../projects/valtimo/shared/src/lib/models/email-notification-settings.model.ts","../../../../projects/valtimo/shared/src/lib/models/menu-item.model.ts","../../../../projects/valtimo/shared/src/lib/models/menu.config.ts","../../../../projects/valtimo/shared/src/lib/models/security.config.ts","../../../../projects/valtimo/shared/src/lib/models/extension.model.ts","../../../../projects/valtimo/shared/src/lib/models/http-loader.ts","../../../../projects/valtimo/shared/src/lib/models/roles.ts","../../../../projects/valtimo/shared/src/lib/models/user-management.model.ts","../../../../projects/valtimo/shared/src/lib/models/page.ts","../../../../projects/valtimo/shared/src/lib/models/search.model.ts","../../../../projects/valtimo/shared/src/lib/models/versions.model.ts","../../../../projects/valtimo/shared/src/lib/models/user-settings.model.ts","../../../../projects/valtimo/shared/src/lib/models/translation.model.ts","../../../../projects/valtimo/shared/src/lib/models/localization.model.ts","../../../../projects/valtimo/shared/src/lib/models/form-view-model.model.ts","../../../../projects/valtimo/shared/src/lib/models/window.model.ts","../../../../projects/valtimo/shared/src/lib/models/management.model.ts","../../../../projects/valtimo/shared/src/lib/models/tag-color.model.ts","../../../../projects/valtimo/shared/src/lib/models/global-configuration.model.ts","../../../../projects/valtimo/shared/src/lib/models/modal.model.ts","../../../../projects/valtimo/shared/src/lib/models/display-type.model.ts","../../../../projects/valtimo/shared/src/lib/models/building-block-management.model.ts","../../../../projects/valtimo/shared/src/lib/models/index.ts","../../../../projects/valtimo/shared/src/lib/services/config.service.ts","../../../../projects/valtimo/shared/src/lib/services/global-notification.service.ts","../../../../projects/valtimo/shared/src/lib/services/localization.service.ts","../../../../projects/valtimo/shared/src/lib/services/menu-include.service.ts","../../../../projects/valtimo/shared/src/lib/services/user-settings.service.ts","../../../../projects/valtimo/shared/src/lib/constants/versions.ts","../../../../projects/valtimo/shared/src/lib/constants/case-management-tab-token.ts","../../../../projects/valtimo/shared/src/lib/constants/form-view-model-token.ts","../../../../projects/valtimo/shared/src/lib/constants/error.constants.ts","../../../../projects/valtimo/shared/src/lib/constants/case-configuration-extensions-token.ts","../../../../projects/valtimo/shared/src/lib/constants/iko.token.ts","../../../../projects/valtimo/shared/src/lib/constants/building-block-management-tab-token.ts","../../../../projects/valtimo/shared/src/lib/constants/index.ts","../../../../projects/valtimo/shared/src/lib/services/environment.service.ts","../../../../projects/valtimo/shared/src/lib/services/draft-version.service.ts","../../../../projects/valtimo/shared/src/lib/services/edit-permissions.service.ts","../../../../projects/valtimo/shared/src/lib/services/configuration-issue.service.ts","../../../../projects/valtimo/shared/src/lib/services/index.ts","../../../../projects/valtimo/shared/src/lib/components/global-notification.component.ts","../../../../projects/valtimo/shared/src/lib/extension/extension.component.ts","../../../../projects/valtimo/shared/src/lib/extension/extension.component.html","../../../../projects/valtimo/shared/src/lib/config.module.ts","../../../../projects/valtimo/shared/src/lib/testing/services/mock-translate.service.ts","../../../../projects/valtimo/shared/src/lib/testing/services/mock-keycloak.service.ts","../../../../projects/valtimo/shared/src/lib/testing/services/mock-icon.service.ts","../../../../projects/valtimo/shared/src/lib/testing/services/index.ts","../../../../projects/valtimo/shared/src/lib/testing/index.ts","../../../../projects/valtimo/shared/src/lib/translation/custom-multi-translate-http-loader.ts","../../../../projects/valtimo/shared/src/lib/translation/custom-multi-translate-http-loader-factory.ts","../../../../projects/valtimo/shared/src/lib/translation/multi-translate-http-loader-factory.ts","../../../../projects/valtimo/shared/src/lib/translation/index.ts","../../../../projects/valtimo/shared/src/lib/zgw/constants/zgw-object-type-component-token.ts","../../../../projects/valtimo/shared/src/lib/zgw/constants/zgw-documenten-api-documents-component-token.ts","../../../../projects/valtimo/shared/src/lib/zgw/constants/index.ts","../../../../projects/valtimo/shared/src/lib/zgw/index.ts","../../../../projects/valtimo/shared/src/lib/guards/zgw-features.guard.ts","../../../../projects/valtimo/shared/src/lib/guards/index.ts","../../../../projects/valtimo/shared/src/lib/generated/generated-backend-types.ts","../../../../projects/valtimo/shared/src/public-api.ts","../../../../projects/valtimo/shared/src/valtimo-shared.ts"],"sourcesContent":["/*\n * Copyright 2015-2026 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 */\nimport {CommonModule} from '@angular/common';\nimport {\n AfterViewInit,\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n HostBinding,\n Input,\n NgZone,\n OnDestroy,\n ViewChild,\n ViewEncapsulation,\n} from '@angular/core';\nimport {TranslateModule} from '@ngx-translate/core';\nimport {ChevronLeft16, ChevronRight16} from '@carbon/icons';\nimport {ButtonModule, IconModule, IconService} from 'carbon-components-angular';\nimport {BehaviorSubject} from 'rxjs';\n\n@Component({\n selector: 'valtimo-carousel',\n templateUrl: './carousel.component.html',\n styleUrls: ['./carousel.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n standalone: true,\n imports: [CommonModule, TranslateModule, ButtonModule, IconModule],\n})\nexport class CarouselComponent implements AfterViewInit, OnDestroy {\n @HostBinding('class') public readonly hostClasses = 'valtimo-carousel';\n\n @Input() public ariaLabel?: string;\n\n @ViewChild('track') private readonly trackRef!: ElementRef<HTMLElement>;\n\n public readonly canScrollPrev$ = new BehaviorSubject<boolean>(false);\n public readonly canScrollNext$ = new BehaviorSubject<boolean>(false);\n public readonly itemCount$ = new BehaviorSubject<number>(0);\n public readonly activeIndex$ = new BehaviorSubject<number>(0);\n public readonly dots$ = new BehaviorSubject<number[]>([]);\n\n private resizeObserver?: ResizeObserver;\n private mutationObserver?: MutationObserver;\n\n constructor(\n private readonly iconService: IconService,\n private readonly ngZone: NgZone\n ) {\n this.iconService.registerAll([ChevronLeft16, ChevronRight16]);\n }\n\n public ngAfterViewInit(): void {\n const track = this.trackRef.nativeElement;\n\n this.resizeObserver = new ResizeObserver(() => this.ngZone.run(() => this.updateScrollState()));\n this.resizeObserver.observe(track);\n\n this.mutationObserver = new MutationObserver(() =>\n this.ngZone.run(() => this.updateScrollState())\n );\n this.mutationObserver.observe(track, {childList: true});\n\n this.updateScrollState();\n }\n\n public ngOnDestroy(): void {\n this.resizeObserver?.disconnect();\n this.mutationObserver?.disconnect();\n }\n\n public onScroll(): void {\n this.updateScrollState();\n }\n\n public scrollPrev(): void {\n this.scrollByViewport(-1);\n }\n\n public scrollNext(): void {\n this.scrollByViewport(1);\n }\n\n public scrollToIndex(index: number): void {\n const track = this.trackRef.nativeElement;\n track.scrollTo({left: index * track.clientWidth, behavior: 'smooth'});\n }\n\n private scrollByViewport(direction: 1 | -1): void {\n const track = this.trackRef.nativeElement;\n track.scrollBy({left: direction * track.clientWidth, behavior: 'smooth'});\n }\n\n private updateScrollState(): void {\n const track = this.trackRef.nativeElement;\n const maxScrollLeft = track.scrollWidth - track.clientWidth;\n this.canScrollPrev$.next(track.scrollLeft > 0);\n this.canScrollNext$.next(track.scrollLeft < maxScrollLeft - 1);\n\n const count = track.children.length;\n if (count !== this.itemCount$.value) {\n this.itemCount$.next(count);\n this.dots$.next(Array.from({length: count}, (_, index) => index));\n }\n\n const activeIndex = track.clientWidth > 0 ? Math.round(track.scrollLeft / track.clientWidth) : 0;\n if (activeIndex !== this.activeIndex$.value) {\n this.activeIndex$.next(activeIndex);\n }\n }\n}\n","<!--\n ~ Copyright 2015-2026 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-container\n *ngIf=\"{\n prev: canScrollPrev$ | async,\n next: canScrollNext$ | async,\n count: itemCount$ | async,\n active: activeIndex$ | async,\n dots: dots$ | async\n } as vm\"\n>\n <div class=\"valtimo-carousel__viewport\">\n <ul\n #track\n class=\"valtimo-carousel__track\"\n [attr.aria-label]=\"ariaLabel\"\n (scroll)=\"onScroll()\"\n >\n <ng-content></ng-content>\n </ul>\n </div>\n\n <div *ngIf=\"vm.count > 1\" class=\"valtimo-carousel__controls\">\n <cds-icon-button\n class=\"valtimo-carousel__nav\"\n kind=\"ghost\"\n size=\"md\"\n align=\"top-left\"\n [description]=\"'carousel.previous' | translate\"\n [disabled]=\"!vm.prev\"\n (click)=\"scrollPrev()\"\n >\n <svg cdsIcon=\"chevron--left\" size=\"16\"></svg>\n </cds-icon-button>\n\n <div class=\"valtimo-carousel__dots\" role=\"tablist\">\n <button\n *ngFor=\"let index of vm.dots\"\n type=\"button\"\n class=\"valtimo-carousel__dot\"\n [class.valtimo-carousel__dot--active]=\"index === vm.active\"\n [attr.aria-label]=\"('carousel.goToSlide' | translate) + ' ' + (index + 1)\"\n [attr.aria-current]=\"index === vm.active\"\n (click)=\"scrollToIndex(index)\"\n ></button>\n </div>\n\n <cds-icon-button\n class=\"valtimo-carousel__nav\"\n kind=\"ghost\"\n size=\"md\"\n align=\"top-right\"\n [description]=\"'carousel.next' | translate\"\n [disabled]=\"!vm.next\"\n (click)=\"scrollNext()\"\n >\n <svg cdsIcon=\"chevron--right\" size=\"16\"></svg>\n </cds-icon-button>\n </div>\n</ng-container>\n","/*\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\nimport {ExtraOptions} from '@angular/router';\n\nclass RouterUtils {\n public static getRouterExtraOptions(): ExtraOptions {\n return {canceledNavigationResolution: 'computed'};\n }\n}\n\nexport {RouterUtils};\n","/*\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\nclass UrlUtils {\n static formatUrlTrailingSlash(url: string, returnWithTrailingSlash: boolean): string {\n if (url && typeof url === 'string') {\n const urlLastCharacter = url[url.length - 1];\n const urlLastCharacterIsSlash = urlLastCharacter === '/';\n\n if (!returnWithTrailingSlash && urlLastCharacterIsSlash) {\n return url.slice(0, -1);\n } else if (returnWithTrailingSlash && !urlLastCharacterIsSlash) {\n return `${url}/`;\n }\n }\n\n return url;\n }\n\n static formatUrlStartWithSlash(url: string): string {\n if (url && typeof url === 'string' && url.length > 0 && url[0] !== '/') {\n return `/${url}`;\n }\n\n return `${url}`;\n }\n\n static getUrlHost(urlString: string): string {\n let url!: URL;\n\n try {\n url = new URL(urlString);\n } catch (_) {}\n\n return url ? url.host : '';\n }\n}\n\nexport {UrlUtils};\n","/*\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\nimport {NotificationContent} from 'carbon-components-angular';\n\nexport const DEFAULT_NOTIFICATION_PARAMS = {\n duration: 4000,\n showClose: true,\n};\n\nexport const getNotificationObject = (content: NotificationContent): NotificationContent => ({\n ...DEFAULT_NOTIFICATION_PARAMS,\n ...content,\n});\n","/*\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 */\nimport {BuildingBlockManagementParams, CaseManagementParams, ManagementContext} from '../models';\nimport {ActivatedRoute} from '@angular/router';\nimport {combineLatest, distinctUntilChanged, filter, map, Observable, of, switchMap} from 'rxjs';\nimport {isEqual} from 'lodash';\n\nconst getCaseManagementRouteParams = (\n route: ActivatedRoute,\n doFilter = false\n): Observable<CaseManagementParams | undefined> => {\n const rootParams$ = route.params ? route.params : of({});\n const parentParams$ = route.parent?.params ? route.parent.params : of({});\n return combineLatest([rootParams$, parentParams$]).pipe(\n map(([rootParams, parentParams]) => {\n const caseDefinitionKey =\n rootParams['caseDefinitionKey'] || parentParams['caseDefinitionKey'];\n const caseDefinitionVersionTag =\n rootParams['caseDefinitionVersionTag'] || parentParams['caseDefinitionVersionTag'];\n if (caseDefinitionKey && caseDefinitionVersionTag) {\n return {caseDefinitionKey, caseDefinitionVersionTag};\n }\n return null;\n }),\n filter((params): params is CaseManagementParams => (doFilter ? params !== null : true)),\n distinctUntilChanged((previous, current) => isEqual(previous, current))\n );\n};\n\nconst getBuildingBlockManagementRouteParams = (\n route: ActivatedRoute,\n doFilter = false\n): Observable<BuildingBlockManagementParams | undefined> => {\n const rootParams$ = route.params ? route.params : of({});\n const parentParams$ = route.parent?.params ? route.parent.params : of({});\n return combineLatest([rootParams$, parentParams$]).pipe(\n map(([rootParams, parentParams]) => {\n const buildingBlockDefinitionKey =\n rootParams['buildingBlockDefinitionKey'] || parentParams['buildingBlockDefinitionKey'];\n const buildingBlockDefinitionVersionTag =\n rootParams['buildingBlockDefinitionVersionTag'] ||\n parentParams['buildingBlockDefinitionVersionTag'];\n if (buildingBlockDefinitionKey && buildingBlockDefinitionVersionTag) {\n return {buildingBlockDefinitionKey, buildingBlockDefinitionVersionTag};\n }\n return null;\n }),\n filter((params): params is BuildingBlockManagementParams =>\n doFilter ? params !== null : true\n ),\n distinctUntilChanged((previous, current) => isEqual(previous, current))\n );\n};\n\nfunction getContextObservable(route: ActivatedRoute): Observable<ManagementContext | null> {\n // Traverse the route hierarchy to find the context data\n // The context is set on a parent route, so we need to look up the tree\n let currentRoute: ActivatedRoute | null = route;\n while (currentRoute) {\n const context = currentRoute.snapshot?.data?.['context'] as ManagementContext | undefined;\n if (context) {\n return currentRoute.data.pipe(\n map(data => (data && (data['context'] as ManagementContext)) || null),\n distinctUntilChanged()\n );\n }\n currentRoute = currentRoute.parent;\n }\n\n // Fallback to original behavior if no context found in hierarchy\n return route.data.pipe(\n map(data => (data && (data['context'] as ManagementContext)) || null),\n distinctUntilChanged()\n );\n}\n\nfunction getCaseManagementRouteParamsAndContext(\n route: ActivatedRoute\n): Observable<[ManagementContext, CaseManagementParams]> {\n const params$ = getCaseManagementRouteParams(route, true);\n const context$ = getContextObservable(route);\n\n return context$.pipe(\n switchMap(context => {\n if (context === 'case') {\n return combineLatest([of(context), params$]) as Observable<\n [ManagementContext, CaseManagementParams]\n >;\n }\n\n const fallbackParams: CaseManagementParams = {\n caseDefinitionKey: '',\n caseDefinitionVersionTag: '',\n };\n return of([context, fallbackParams] as [ManagementContext, CaseManagementParams]);\n })\n );\n}\n\nexport {\n getCaseManagementRouteParams,\n getContextObservable,\n getCaseManagementRouteParamsAndContext,\n getBuildingBlockManagementRouteParams,\n};\n","/*\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\nimport {DisplayTypeParameters} from '../models';\n\nconst getDisplayTypeParametersView = (displayTypeParameters: DisplayTypeParameters): string => {\n if (displayTypeParameters?.dateFormat) {\n return displayTypeParameters.dateFormat;\n } else if (displayTypeParameters?.tagAmount) {\n return displayTypeParameters.tagAmount.toString();\n } else if (displayTypeParameters?.enum) {\n return Object.keys(displayTypeParameters.enum).reduce((acc, curr) => {\n const keyValuePairString = `${curr}: ${displayTypeParameters.enum?.[curr]}`;\n if (!acc) {\n return `${keyValuePairString}`;\n }\n\n return `${acc}, ${keyValuePairString}`;\n }, '');\n }\n\n return '-';\n};\n\nexport {getDisplayTypeParametersView};\n","/*\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\nconst validateBsn = (value: string): {isValid: boolean; errorKey: string | null} => {\n const baseKey = 'interface.dataValidation.bsnValidator';\n\n if (!value) {\n return {isValid: false, errorKey: `${baseKey}.valueEmpty`};\n }\n\n const trimmed = value.toString().trim();\n\n if (!/^\\d+$/.test(trimmed)) {\n return {isValid: false, errorKey: `${baseKey}.valueOnlyDigits`};\n }\n\n if (trimmed.length < 8 || trimmed.length > 9) {\n return {isValid: false, errorKey: `${baseKey}.valueMinLength`};\n }\n\n if (trimmed.length > 9) {\n return {isValid: false, errorKey: `${baseKey}.valueMaxLength`};\n }\n\n if (/^0+$/.test(trimmed) || /^9+$/.test(trimmed)) {\n return {isValid: false, errorKey: `${baseKey}.valueAllZerosOrNines`};\n }\n\n const digits = trimmed.split('').map(d => parseInt(d, 10));\n let sum = 0;\n const length = digits.length;\n\n for (let i = 0; i < length; i++) {\n const weight = i === length - 1 ? -1 : length - i;\n sum += digits[i] * weight;\n }\n\n if (sum % 11 !== 0) {\n return {isValid: false, errorKey: `${baseKey}.valueElfCheck`};\n }\n\n return {isValid: true, errorKey: null};\n};\n\nexport {validateBsn};\n","/*\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\nexport * from './router.utils';\nexport * from './url.utils';\nexport * from './global-notification.utils';\nexport * from './route-params.utils';\nexport * from './display-type.utils';\nexport * from './validate-bsn.utils';\n","/*\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\nimport {HttpClient} from '@angular/common/http';\nimport {ConfigService} from './config.service';\nimport {UrlUtils} from '../utils';\n\nexport abstract class BaseApiService {\n private readonly _valtimoEndpointUri!: string;\n\n constructor(\n protected readonly httpClient: HttpClient,\n protected readonly configService: ConfigService\n ) {\n this._valtimoEndpointUri = configService.config.valtimoApi.endpointUri;\n }\n\n public getApiUrl(urlPart: string): string {\n const urlWithStartSlash = UrlUtils.formatUrlStartWithSlash(urlPart);\n const urlFormattedWithTrailingSlash = `${UrlUtils.formatUrlTrailingSlash(this._valtimoEndpointUri, false)}${urlWithStartSlash}`;\n return urlFormattedWithTrailingSlash;\n }\n}\n","/*\n * Copyright 2015-2026 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\nimport {InjectionToken, Injector} from '@angular/core';\nimport {Auth} from './security.config';\nimport {MenuConfig} from './menu.config';\nimport {CSPHeaderParams} from 'csp-header';\n\nconst VALTIMO_CONFIG = new InjectionToken<ValtimoConfig>('valtimoConfig');\n\n// eslint-disable-next-line\nconst INITIALIZERS = new InjectionToken<(() => Function)[]>('initializers');\n\ndeclare type Direction = 'ASC' | 'DESC';\n\ninterface DefinitionColumn {\n propertyName: string;\n translationKey: string;\n sortable?: boolean;\n viewType?: string;\n default?: boolean | string;\n enum?: Array<string> | {[key: string]: string};\n title?: string;\n format?: string;\n key?: string;\n tagAmount?: number;\n}\n\ninterface CustomTaskList {\n fields: Array<DefinitionColumn>;\n defaultSortedColumn?: SortState;\n}\n\ninterface CustomLeftSidebar {\n defaultMenuWidth?: number;\n maxMenuWidth?: number;\n minMenuWidth?: number;\n}\n\ninterface Sort {\n name: string;\n direction: Direction;\n}\n\ninterface SortState {\n state: Sort;\n isSorting: boolean;\n}\n\ninterface FormioOptions {\n [key: string]: any;\n}\n\ninterface OverrideFormioOptions extends FormioOptions {\n [key: string]: any;\n}\n\ninterface ValtimoConfigFeatureToggles {\n applicationTitleAsSuffix?: boolean;\n showUserNameInTopBar?: boolean;\n showPlantATreeButton?: boolean;\n disableCaseCount?: boolean;\n caseListColumn?: boolean;\n enableObjectManagement?: boolean;\n largeLogoMargin?: boolean;\n sortFilesByDate?: boolean;\n returnToLastUrlAfterTokenExpiration?: boolean;\n enableTabManagement?: boolean;\n hideValtimoVersionsForNonAdmins?: boolean;\n useStartEventNameAsStartFormTitle?: boolean;\n allowUserThemeSwitching?: boolean;\n enableCompactModeToggle?: boolean;\n compactModeOnByDefault?: boolean;\n enableUserNameInTopBarToggle?: boolean;\n enableFormViewModel?: boolean;\n enableIntermediateSave?: boolean;\n enableTaskPanel?: boolean;\n enableFormFlowBreadcrumbs?: boolean;\n enablePbacDocumentenApiDocuments?: boolean;\n enableSuppressDocumentError?: boolean;\n enableIkoType?: boolean;\n enableGenericCaseList?: boolean;\n enableManualTaskListRefresh?: boolean;\n menuCollapsedByDefault?: boolean;\n enableOpenSearch?: boolean;\n /**\n * @deprecated DMN decision table editing is always enabled and is no longer gated by a\n * feature toggle. This option is ignored and will be removed in a future major release.\n */\n experimentalDmnEditing?: boolean;\n enableZgwFeatures?: boolean;\n /**\n * When enabled, the form.io token is kept in memory only and is no longer persisted to\n * localStorage. Enable this when your forms rely solely on the Keycloak token (attached\n * via the HTTP interceptor) and do not depend on form.io's own token-authenticated requests.\n */\n disableFormioTokenInLocalStorage?: boolean;\n}\n\ninterface ValtimoConfig {\n // eslint-disable-next-line\n logoSvgBase64?: string;\n darkModeLogoSvgBase64?: string;\n logoPngBase64?: string;\n darkModeLogoPngBase64?: string;\n applicationTitle?: string;\n /**@deprecated Initializers will be removed in the future. */\n initializers?: ((injector: Injector) => () => void)[];\n menu: MenuConfig;\n authentication: Auth;\n production: boolean;\n whitelistedDomains: string[];\n langKey?: Language;\n valtimoApi: {\n endpointUri: string;\n };\n changePasswordUrl?: {\n endpointUri: string;\n };\n swagger: {\n endpointUri: string;\n };\n mockApi: {\n endpointUri: string;\n };\n logger: any;\n definitions: any;\n openZaak: {\n catalogus: string;\n };\n uploadProvider: UploadProvider;\n caseFileSizeUploadLimitMB?: number;\n caseFileUploadAcceptedFiles?: string;\n supportedDocumentFileTypesToViewInBrowser?: string[];\n defaultDefinitionTable: Array<DefinitionColumn>;\n translationResources?: Array<string>;\n featureToggles?: ValtimoConfigFeatureToggles;\n visibleTaskListTabs?: Array<TaskListTab>;\n visibleCaseListTabs?: Array<CaseListTab>;\n customTaskList?: CustomTaskList;\n customLeftSidebar?: CustomLeftSidebar;\n caseObjectTypes?: {\n [definitionNameId: string]: Array<string>;\n };\n overrideFeedbackMenuItemToMailTo?: FeedbackMailTo;\n csp?: CSPHeaderParams;\n formioOptions?: OverrideFormioOptions;\n}\n\ninterface FeedbackMailTo {\n email?: string;\n subjectTranslationKey: string;\n bodyTranslationKey: string;\n}\n\nenum UploadProvider {\n S3,\n /**@deprecated This upload provider will be removed in the future. */\n OPEN_ZAAK,\n DOCUMENTEN_API,\n}\n\nenum TaskListTab {\n MINE = 'mine',\n OPEN = 'open',\n ALL = 'all',\n TEAM = 'team',\n}\n\nenum CaseListTab {\n MINE = 'MINE',\n OPEN = 'OPEN',\n ALL = 'ALL',\n TEAM = 'TEAM',\n}\n\nenum Language {\n NL = 'nl',\n EN = 'en',\n}\n\nexport {\n VALTIMO_CONFIG,\n INITIALIZERS,\n Direction,\n DefinitionColumn,\n CustomTaskList,\n CustomLeftSidebar,\n Sort,\n SortState,\n OverrideFormioOptions,\n ValtimoConfigFeatureToggles,\n ValtimoConfig,\n FeedbackMailTo,\n UploadProvider,\n TaskListTab,\n CaseListTab,\n Language,\n};\n","/*\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\nexport interface EmailNotificationSettings {\n emailNotifications: boolean;\n taskNotifications: boolean;\n emailNotificationOnMonday: boolean;\n emailNotificationOnTuesday: boolean;\n emailNotificationOnWednesday: boolean;\n emailNotificationOnThursday: boolean;\n emailNotificationOnFriday: boolean;\n emailNotificationOnSaturday: boolean;\n emailNotificationOnSunday: boolean;\n}\n","/*\n *\n * Copyright 2015-2026 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\nimport {Observable} from 'rxjs';\n\nenum IncludeFunction {\n ObjectManagementEnabled,\n OpenSearchEnabled,\n ZgwFeaturesEnabled,\n}\n\ninterface MenuItem {\n title: string;\n sequence?: number;\n id?: string;\n link?: string[] | null;\n textClass?: string;\n iconClass?: string;\n children?: MenuItem[];\n roles?: string[];\n show?: boolean;\n count$?: Observable<number>;\n includeFunction?: IncludeFunction | IncludeFunction[];\n}\n\nexport {MenuItem, IncludeFunction};\n","/*\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\nimport {MenuItem} from './menu-item.model';\n\nexport interface MenuConfig {\n menuItems: MenuItem[];\n}\n","/*\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\nimport {Observable, ReplaySubject} from 'rxjs';\nimport {EmailNotificationSettings} from './email-notification-settings.model';\nimport {Injector} from '@angular/core';\n\nexport interface UserIdentity {\n email: string;\n firstName: string;\n lastName: string;\n roles: Array<string>;\n username?: string;\n id?: string;\n}\n\nexport class ValtimoUserIdentity implements UserIdentity {\n private readonly _email: string;\n private readonly _firstName: string;\n private readonly _lastName: string;\n private readonly _roles: string[];\n private readonly _username?: string;\n private readonly _id?: string;\n\n constructor(\n email: string,\n firstName: string,\n lastName: string,\n roles: Array<string>,\n username?: string,\n id?: string\n ) {\n this._email = email;\n this._firstName = firstName;\n this._lastName = lastName;\n this._roles = roles;\n this._username = username;\n this._id = id;\n }\n\n get email(): string {\n return this._email;\n }\n\n get firstName(): string {\n return this._firstName;\n }\n\n get lastName(): string {\n return this._lastName;\n }\n\n get roles(): string[] {\n return this._roles;\n }\n\n get username(): string | undefined {\n return this._username;\n }\n\n get id(): string | undefined {\n return this._id;\n }\n}\n\nexport interface UserService {\n getUserSubject(): ReplaySubject<UserIdentity>;\n\n logout(): void;\n\n getToken(): Promise<string>;\n\n updateToken?(minValidity: number): Promise<boolean>;\n}\n\nexport interface EmailNotificationService {\n getEmailNotificationSettings(): Observable<EmailNotificationSettings>;\n\n updateEmailNotificationSettings(\n settings: EmailNotificationSettings\n ): Observable<EmailNotificationSettings>;\n}\n\nexport interface AuthProviders {\n guardServiceProvider: any;\n userServiceProvider: any;\n}\n\nexport interface Auth {\n module: any;\n // eslint-disable-next-line\n initializer: (injector: Injector) => Function;\n authProviders: AuthProviders;\n options: any;\n}\n","/*\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\nimport {ComponentFactoryResolver, ComponentRef, ViewContainerRef} from '@angular/core';\n\nexport interface ExtensionPoint {\n module: string;\n page: string;\n section: string;\n component: any;\n}\n\nexport class ExtensionLoader {\n private readonly componentFactoryResolver: ComponentFactoryResolver = null;\n private componentRef: ComponentRef<any> = null;\n\n constructor(componentFactoryResolver: ComponentFactoryResolver) {\n this.componentFactoryResolver = componentFactoryResolver;\n }\n\n loadExtensionPoint(viewContainerRef: ViewContainerRef, extensionPoint: ExtensionPoint) {\n const componentFactory = this.componentFactoryResolver.resolveComponentFactory(\n extensionPoint.component\n );\n this.componentRef = viewContainerRef.createComponent(componentFactory);\n }\n\n loadAndClearExtensionPoint(viewContainerRef: ViewContainerRef, extensionPoint: ExtensionPoint) {\n const componentFactory = this.componentFactoryResolver.resolveComponentFactory(\n extensionPoint.component\n );\n viewContainerRef.clear();\n return (this.componentRef = viewContainerRef.createComponent(componentFactory));\n }\n}\n\nexport class Extension {\n public readonly _name: string;\n public readonly _extensionPoint: BasicExtensionPoint;\n\n constructor(name: string, extensionPoint: BasicExtensionPoint) {\n this._name = name;\n this._extensionPoint = extensionPoint;\n }\n\n get extensionPoint(): BasicExtensionPoint {\n return this._extensionPoint;\n }\n}\n\nexport class BasicExtensionPoint implements ExtensionPoint {\n private readonly _module: string;\n private readonly _page: string;\n private readonly _section: string;\n private readonly _component: any;\n\n constructor(module: string, page: string, section: string, component: any) {\n this._module = module;\n this._page = page;\n this._section = section;\n this._component = component;\n }\n\n supports(module: string, page: string, section: string): boolean {\n return this._module === module && this._page === page && this._section === section;\n }\n\n get module(): string {\n return this._module;\n }\n\n get page(): string {\n return this._page;\n }\n\n get section(): string {\n return this._section;\n }\n\n get component(): any {\n return this._component;\n }\n}\n","/*\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\nimport {TranslateHttpLoader} from '@ngx-translate/http-loader';\nimport {HttpClient} from '@angular/common/http';\n\nexport function HttpLoaderFactory(httpClient: HttpClient) {\n return new TranslateHttpLoader(httpClient);\n}\n","/*\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\nexport const ROLE_ADMIN = 'ROLE_ADMIN';\nexport const ROLE_USER = 'ROLE_USER';\nexport const ROLE_DEVELOPER = 'ROLE_DEVELOPER';\n","/*\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\nexport interface User {\n id: string;\n fullName: string;\n firstName: string;\n lastName: string;\n email: string;\n roles: Array<string>;\n langKey: string;\n activated: boolean;\n emailVerified: boolean;\n verified: string;\n status: string;\n}\n\nexport interface NamedUser {\n id: string;\n email: string;\n firstName: string;\n lastName: string;\n label: string;\n userName: string;\n}\n","/*\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\ninterface SortResult {\n sorted: boolean;\n unsorted: boolean;\n}\n\ninterface Pageable {\n sort: SortResult;\n pageSize: number;\n pageNumber: number;\n offset: number;\n unpaged: boolean;\n paged: boolean;\n}\n\ninterface Page<T> {\n content: Array<T>;\n pageable: Pageable;\n last: boolean;\n totalPages: number;\n totalElements: number;\n first: boolean;\n sort: SortResult;\n numberOfElements: number;\n size: number;\n number: number;\n [key: string]: any;\n}\n\nexport {SortResult, Pageable, Page};\n","/*\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\nimport {SearchFieldMatchType} from '../generated';\n\ntype SearchFieldDataType = 'text' | 'number' | 'date' | 'datetime' | 'boolean' | 'bsn';\n\ntype SearchFieldFieldType =\n | 'single'\n | 'multiple'\n | 'range'\n | 'single-select-dropdown'\n | 'multi-select-dropdown';\n\n\ntype SearchFieldBoolean = 'booleanPositive' | 'booleanNegative';\n\ntype BooleanValueSingle = boolean;\n\ntype TextValueSingle = string;\ntype ValueMultiple = Array<\n BooleanValueSingle | TextValueSingle | NumberValueSingle | NumberValueRange\n>;\n\ntype NumberValueSingle = number;\n\ninterface NumberValueRange {\n start: NumberValueSingle;\n end: NumberValueSingle;\n}\n\ntype SearchFieldValue =\n | BooleanValueSingle\n | TextValueSingle\n | ValueMultiple\n | NumberValueSingle\n | NumberValueRange;\n\ninterface SearchField {\n ownerId?: string;\n title?: string;\n key: string;\n path?: string;\n order?: number;\n dataType: SearchFieldDataType;\n fieldType: SearchFieldFieldType;\n matchType?: SearchFieldMatchType;\n dropdownDataProvider?: string;\n uuid?: string;\n}\n\ninterface SearchFieldWithValue extends SearchField {\n value: SearchFieldValue;\n}\n\ninterface SearchFieldValues {\n [searchFieldKey: string]: SearchFieldValue;\n}\n\ninterface SearchFieldColumnView {\n title: string;\n key: string;\n path: string;\n dataType: string;\n fieldType: string;\n}\n\ntype SearchOperator = 'AND' | 'OR';\n\ntype AssigneeFilter = 'OPEN' | 'MINE' | 'ALL' | 'TEAM';\n\ninterface SearchFilter {\n key: string;\n values: Array<string>;\n multiValue?: boolean;\n}\n\ninterface SearchFilterRange {\n key: string;\n rangeFrom: string;\n rangeTo: string;\n}\n\nexport {\n SearchFieldDataType,\n SearchFieldFieldType,\n SearchFieldMatchType,\n SearchFieldBoolean,\n SearchField,\n SearchFieldValue,\n SearchFieldWithValue,\n SearchFieldValues,\n SearchFieldColumnView,\n SearchOperator,\n SearchFilter,\n SearchFilterRange,\n AssigneeFilter,\n};\n","/*\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\ninterface Versions {\n frontendLibraries: string;\n}\n\nexport {Versions};\n","/*\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\ninterface UserSettings {\n collapsibleWidescreenMenu?: boolean;\n languageCode?: string;\n compactMode?: boolean;\n showUserNameInTopBar?: boolean;\n preferredTheme?: string;\n caseListPageSizes?: {[key: string]: number};\n taskListPageSizes?: {[key: string]: number};\n}\n\nexport {UserSettings};\n","/*\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\ninterface ITranslationResource {\n prefix: string;\n suffix?: string;\n optional?: boolean;\n}\n\nexport {ITranslationResource};\n","/*\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\ntype LocalizationContent = object;\n\ninterface Localization {\n languageKey: string;\n content: LocalizationContent;\n}\n\ninterface MergedLocalizations {\n [languageKey: string]: LocalizationContent;\n}\n\nexport {Localization, LocalizationContent, MergedLocalizations};\n","/*\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\nimport {Type} from '@angular/core';\n\ninterface FormViewModel {\n component: Type<any>;\n}\n\nexport {FormViewModel};\n","/*\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\nimport {editor} from 'monaco-editor';\n\ntype MonacoEditor = typeof editor;\n\ninterface ValtimoWindow extends Window {\n monaco?: {\n editor?: MonacoEditor;\n };\n flags?: {\n formioValueResolverSelectorComponentRegistered: boolean;\n };\n}\n\nexport {ValtimoWindow};\n","/*\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\ntype ManagementContext = 'case' | 'independent' | 'buildingBlock';\n\nexport {ManagementContext};\n","/*\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\nexport enum TagColor {\n WarmGray = 'WARMGRAY',\n Red = 'RED',\n Magenta = 'MAGENTA',\n Purple = 'PURPLE',\n Blue = 'BLUE',\n Cyan = 'CYAN',\n Teal = 'TEAL',\n Green = 'GREEN',\n Gray = 'GRAY',\n CoolGray = 'COOLGRAY',\n HighContrast = 'HIGHCONTRAST',\n Outline = 'OUTLINE',\n}\n","/*\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\ninterface GlobalConfiguration {\n canUpdateGlobalConfiguration: boolean;\n}\n\nexport {GlobalConfiguration};\n","/*\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\ntype ModalMode = 'add' | 'edit' | 'delete' | 'duplicate';\n\ntype ModalCloseEvent = 'close' | 'closeAndRefresh';\n\nexport {ModalMode, ModalCloseEvent};\n","/*\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\ninterface DisplayType {\n type: string;\n displayTypeParameters: DisplayTypeParameters;\n}\n\ninterface DisplayTypeParameters {\n enum?: {\n [key: string]: string;\n };\n dateFormat?: string;\n tagAmount?: number;\n}\n\nexport {DisplayTypeParameters, DisplayType};\n","/*\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\nimport {Type} from '@angular/core';\nimport {Observable} from 'rxjs';\n\ninterface BuildingBlockManagementParams {\n buildingBlockDefinitionKey: string;\n buildingBlockDefinitionVersionTag: string;\n}\n\ninterface BuildingBlockManagementTabConfig {\n translationKey: string;\n component: Type<any>;\n tabRoute: string;\n enabled$?: Observable<boolean>;\n}\n\nexport {BuildingBlockManagementParams, BuildingBlockManagementTabConfig};\n","/*\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\nexport * from './config';\nexport * from './email-notification-settings.model';\nexport * from './menu-item.model';\nexport * from './menu.config';\nexport * from './security.config';\nexport * from './extension.model';\nexport * from './http-loader';\nexport * from './roles';\nexport * from './user-management.model';\nexport * from './page';\nexport * from './search.model';\nexport * from './versions.model';\nexport * from './user-settings.model';\nexport * from './translation.model';\nexport * from './localization.model';\nexport * from './form-view-model.model';\nexport * from './window.model';\nexport * from './management.model';\nexport * from './tag-color.model';\nexport * from './global-configuration.model';\nexport * from './case-management.model';\nexport * from './modal.model';\nexport * from './display-type.model';\nexport * from './building-block-management.model';\n","/*\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\nimport {ComponentFactoryResolver, Inject, Injectable, ViewContainerRef} from '@angular/core';\nimport {\n Extension,\n ExtensionLoader,\n ExtensionPoint,\n VALTIMO_CONFIG,\n ValtimoConfig,\n ValtimoConfigFeatureToggles,\n} from '../models';\nimport {UrlUtils} from '../utils';\nimport {BehaviorSubject, distinctUntilChanged, map, Observable} from 'rxjs';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class ConfigService {\n private readonly extensionLoader: ExtensionLoader;\n private readonly extensions: Array<Extension> = [];\n private readonly DEFAULT_APPLICATION_TITLE = 'Valtimo';\n\n private readonly _featureToggles$ = new BehaviorSubject<ValtimoConfigFeatureToggles>(\n this.valtimoConfig?.featureToggles ?? ({} as ValtimoConfigFeatureToggles)\n );\n\n public readonly featureToggles$: Observable<ValtimoConfigFeatureToggles> =\n this._featureToggles$.asObservable();\n\n constructor(\n @Inject(VALTIMO_CONFIG) private valtimoConfig: ValtimoConfig,\n private componentFactoryResolver: ComponentFactoryResolver\n ) {\n this.extensionLoader = new ExtensionLoader(componentFactoryResolver);\n }\n\n public get config(): ValtimoConfig {\n const config = this.valtimoConfig;\n const translationResourcesConfig = config.translationResources;\n\n return {\n ...config,\n initializers: config.initializers || [],\n whitelistedDomains: config.whitelistedDomains.map(domain =>\n UrlUtils.formatUrlTrailingSlash(domain, false)\n ),\n mockApi: {\n ...config.mockApi,\n endpointUri: UrlUtils.formatUrlTrailingSlash(config.mockApi.endpointUri, true),\n },\n swagger: {\n ...config.swagger,\n endpointUri: UrlUtils.formatUrlTrailingSlash(config.swagger.endpointUri, false),\n },\n valtimoApi: {\n ...config.valtimoApi,\n endpointUri: UrlUtils.formatUrlTrailingSlash(config.valtimoApi.endpointUri, true),\n },\n ...(translationResourcesConfig && {\n translationResources: translationResourcesConfig.map(resource =>\n UrlUtils.formatUrlTrailingSlash(resource, true)\n ),\n }),\n applicationTitle: config.applicationTitle || this.DEFAULT_APPLICATION_TITLE,\n };\n }\n\n public get featureToggles(): ValtimoConfigFeatureToggles {\n return this._featureToggles$.value;\n }\n\n public get config$(): Observable<ValtimoConfig> {\n return this._featureToggles$.pipe(\n map(featureToggles => ({...this.config, featureToggles}))\n );\n }\n\n public get initializers() {\n return this.valtimoConfig?.initializers || [];\n }\n\n public addExtension(extension: Extension) {\n return this.extensions.push(extension);\n }\n\n public getSupportedExtensionPoint(module: string, page: string, section: string) {\n return this.extensions.find(extension =>\n extension.extensionPoint.supports(module, page, section)\n );\n }\n\n public getSupportedExtensionPoints(module: string, page: string, section: string) {\n return this.extensions.filter(extension =>\n extension.extensionPoint.supports(module, page, section)\n );\n }\n\n public loadExtensionPoint(viewContainerRef: ViewContainerRef, extensionPoint: ExtensionPoint) {\n this.extensionLoader.loadExtensionPoint(viewContainerRef, extensionPoint);\n }\n\n public loadAndReturnExtensionPoint(\n viewContainerRef: ViewContainerRef,\n extensionPoint: ExtensionPoint\n ) {\n return this.extensionLoader.loadAndClearExtensionPoint(viewContainerRef, extensionPoint);\n }\n\n public getFeatureToggleObservable(\n featureToggle: keyof ValtimoConfigFeatureToggles,\n defaultValue = false\n ): Observable<boolean> {\n return this.featureToggles$.pipe(\n map(featureToggles =>\n featureToggles?.hasOwnProperty(featureToggle)\n ? !!featureToggles[featureToggle]\n : defaultValue\n ),\n distinctUntilChanged()\n );\n }\n\n public getFeatureToggle(featureToggle: keyof ValtimoConfigFeatureToggles): boolean {\n return !!(this.featureToggles && this.featureToggles[featureToggle]);\n }\n\n public patchFeatureToggles(overrides: Partial<ValtimoConfigFeatureToggles>): void {\n const merged = {\n ...this._featureToggles$.value,\n ...overrides,\n };\n this.valtimoConfig = {\n ...this.valtimoConfig,\n featureToggles: merged,\n };\n this._featureToggles$.next(merged as ValtimoConfigFeatureToggles);\n }\n}\n","/*\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 */\nimport {ComponentRef, EventEmitter, Injectable} from '@angular/core';\nimport {\n ActionableContent,\n ActionableNotification,\n Notification,\n NotificationContent,\n NotificationService,\n Toast,\n ToastContent,\n} from 'carbon-components-angular';\nimport {take} from 'rxjs';\nimport {getNotificationObject} from '../utils';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class GlobalNotificationService {\n private _notificationService: NotificationService | null = null;\n private readonly _notificationQueue: (Notification & {id: string})[] = [];\n\n public setNotificationService(service: NotificationService): void {\n this._notificationService = service;\n }\n\n public getNotificationService(): NotificationService | null {\n return this._notificationService;\n }\n\n public showNotification(\n notificationObj: NotificationContent | ToastContent | ActionableContent,\n notificationComp: typeof Notification = Notification\n ): Notification | null {\n if (!this._notificationService) return null;\n\n return this.handleNotificationRef(\n this._notificationService?.showNotification(\n getNotificationObject(notificationObj),\n notificationComp\n )\n );\n }\n\n public showToast(\n notificationObj: NotificationContent | ToastContent,\n notificationComp: typeof Toast = Toast\n ): Notification | null {\n if (!this._notificationService) return null;\n\n return this.handleNotificationRef(\n this._notificationService?.showToast(getNotificationObject(notificationObj), notificationComp)\n );\n }\n\n public showActionable(\n notificationObj: ActionableContent,\n notificationComp: typeof ActionableNotification = ActionableNotification\n ): Notification | null {\n if (!this._notificationService) return null;\n\n return this.handleNotificationRef(\n this._notificationService?.showActionable(\n getNotificationObject(notificationObj),\n notificationComp\n )\n );\n }\n\n public close(notificationRef: any): void {\n notificationRef.close.emit();\n }\n\n public getSmartTimeout(notificationObj: any): number | null {\n if (!this._notificationService) return null;\n return this._notificationService?.getSmartTimeout(notificationObj);\n }\n\n public getNotificationRefs(): ComponentRef<any>[] | null {\n if (!this._notificationService) return null;\n return this._notificationService?.notificationRefs;\n }\n\n public getOnCloseEmitter(): EventEmitter<any> | null {\n if (!this._notificationService) return null;\n return this._notificationService?.onClose;\n }\n\n public ngOnDestroy(): void {\n this._notificationService?.ngOnDestroy();\n this._notificationQueue.splice(0, this._notificationQueue.length);\n }\n\n private handleNotificationRef(notificationRef: any): Notification | null {\n const notification = {\n ...notificationRef,\n id:\n notificationRef.toastID ??\n notificationRef.notificationID ??\n notificationRef.actionableNotificationID,\n };\n\n if (this._notificationQueue.length > 3) {\n this._notificationQueue.splice(0, 1);\n this.close(notificationRef);\n }\n\n this._notificationQueue.push(notification);\n setTimeout(() => this.removeNotificationInQueue(notification.id), 4000);\n\n notificationRef.close\n .pipe(take(1))\n .subscribe(() => this.removeNotificationInQueue(notification.id));\n\n return notificationRef;\n }\n\n private removeNotificationInQueue(id: string): void {\n const index = this._notificationQueue.findIndex(\n (notification: Notification & {id: string}) => notification.id === id\n );\n if (index === -1) return;\n\n this._notificationQueue.splice(index, 1);\n }\n}\n","/*\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\nimport {Injectable} from '@angular/core';\nimport {Localization, LocalizationContent, MergedLocalizations} from '../models';\nimport {HttpClient, HttpHeaders} from '@angular/common/http';\nimport {ConfigService} from './config.service';\nimport {map, Observable, of} from 'rxjs';\nimport {catchError} from 'rxjs/operators';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class LocalizationService {\n private readonly valtimoApiUri!: string;\n\n constructor(\n private readonly http: HttpClient,\n private readonly configService: ConfigService\n ) {\n this.valtimoApiUri = configService?.config?.valtimoApi?.endpointUri;\n }\n\n public getLocalization(languageKey: string): Observable<LocalizationContent> {\n return this.http\n .get<LocalizationContent>(`${this.valtimoApiUri}v1/localization/${languageKey}`, {\n headers: new HttpHeaders().set('X-Skip-Interceptor', '403'),\n })\n .pipe(catchError(() => of({})));\n }\n\n public getLocalizations(): Observable<Localization[]> {\n return this.http.get<Localization[]>(`${this.valtimoApiUri}v1/localization`);\n }\n\n public getMergedLocalizations(): Observable<MergedLocalizations> {\n return this.getLocalizations().pipe(\n map(res => res.reduce((acc, curr) => ({...acc, [curr.languageKey]: curr.content}), {}))\n );\n }\n\n public updateLocalization(\n languageKey: string,\n updatedLocalizationContent: LocalizationContent\n ): Observable<LocalizationContent> {\n return this.http.put<LocalizationContent>(\n `${this.valtimoApiUri}management/v1/localization/${languageKey}`,\n updatedLocalizationContent\n );\n }\n\n public updateLocalizations(updatedLocalizations: Localization[]): Observable<Localization[]> {\n return this.http.put<Localization[]>(\n `${this.valtimoApiUri}management/v1/localization`,\n updatedLocalizations\n );\n }\n}\n","/*\n * Copyright 2015-2026 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\nimport {Injectable} from '@angular/core';\nimport {IncludeFunction} from '../models';\nimport {ConfigService} from './config.service';\nimport {combineLatest, map, Observable, of} from 'rxjs';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class MenuIncludeService {\n constructor(private readonly configService: ConfigService) {}\n\n getIncludeFunctionObservable(\n includeFunction: IncludeFunction | IncludeFunction[]\n ): Observable<boolean> {\n if (Array.isArray(includeFunction)) {\n if (includeFunction.length === 0) {\n return of(true);\n }\n const observables = includeFunction.map(fn => this.getSingleIncludeFunction(fn));\n return combineLatest(observables).pipe(map(results => results.every(result => result)));\n }\n return this.getSingleIncludeFunction(includeFunction);\n }\n\n private getSingleIncludeFunction(includeFunction: IncludeFunction): Observable<boolean> {\n switch (includeFunction) {\n case IncludeFunction.ObjectManagementEnabled:\n return this.configService.getFeatureToggleObservable('enableObjectManagement', true);\n case IncludeFunction.OpenSearchEnabled:\n return this.configService.getFeatureToggleObservable('enableOpenSearch', false);\n case IncludeFunction.ZgwFeaturesEnabled:\n return this.configService.getFeatureToggleObservable('enableZgwFeatures', false);\n default:\n return of(true);\n }\n }\n\n /**\n * @deprecated Use getIncludeFunctionObservable instead\n */\n getIncludeFunction(includeFunction: IncludeFunction): Observable<boolean> {\n return this.getSingleIncludeFunction(includeFunction);\n }\n}\n","/*\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\nimport {Injectable} from '@angular/core';\nimport {UserSettings} from '../models';\nimport {HttpClient} from '@angular/common/http';\nimport {ConfigService} from './config.service';\nimport {Observable} from 'rxjs';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class UserSettingsService {\n private readonly valtimoApiUri!: string;\n\n constructor(\n private readonly http: HttpClient,\n private readonly configService: ConfigService\n ) {\n this.valtimoApiUri = configService?.config?.valtimoApi?.endpointUri;\n }\n\n getUserSettings(): Observable<UserSettings> {\n return this.http.get<UserSettings>(`${this.valtimoApiUri}v1/user/settings`);\n }\n\n saveUserSettings(settings: UserSettings): Observable<any> {\n return this.http.put(`${this.valtimoApiUri}v1/user/settings`, settings);\n }\n}\n","/*\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\nimport {Versions} from '../models';\n\nconst VERSIONS: Versions = {\n frontendLibraries: '13.45.1',\n};\n\nexport {VERSIONS};\n","/*\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\nimport {InjectionToken} from '@angular/core';\nimport {CaseManagementTabConfig} from '../models';\n\nconst CASE_MANAGEMENT_TAB_TOKEN = new InjectionToken<CaseManagementTabConfig>(\n 'Specify a component to display per configured tab translation key.'\n);\n\nexport {CASE_MANAGEMENT_TAB_TOKEN};\n","/*\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\nimport {InjectionToken} from '@angular/core';\nimport {FormViewModel} from '../models';\n\nconst FORM_VIEW_MODEL_TOKEN = new InjectionToken<FormViewModel>(\n 'Specify the form view model component.'\n);\n\nexport {FORM_VIEW_MODEL_TOKEN};\n","/*\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\nimport {HttpHeaders} from '@angular/common/http';\n\nconst InterceptorSkip = 'X-Skip-Interceptor';\nconst InterceptorSkipHeader = new HttpHeaders().set(InterceptorSkip, 'all');\n\nexport {InterceptorSkip, InterceptorSkipHeader};\n","/*\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\nimport {InjectionToken, Type} from '@angular/core';\n\nconst CASE_CONFIGURATION_EXTENSIONS_TOKEN = new InjectionToken<Type<any>[]>(\n 'Specify components to display on on the case management general page.'\n);\n\nexport {CASE_CONFIGURATION_EXTENSIONS_TOKEN};\n","/*\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\nimport {InjectionToken} from '@angular/core';\n\nconst IKO_TOKEN = new InjectionToken<boolean>('IKO is enabled when this token is provided');\n\nexport {IKO_TOKEN};\n","/*\n * Copyright 2015-2026 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\nimport {InjectionToken} from '@angular/core';\nimport {BuildingBlockManagementTabConfig} from '../models';\n\nconst BUILDING_BLOCK_MANAGEMENT_TAB_TOKEN = new InjectionToken<BuildingBlockManagementTabConfig[]>(\n 'Specify components to display as tabs on the building block management detail page.'\n);\n\nexport {BUILDING_BLOCK_MANAGEMENT_TAB_TOKEN};\n","/*\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\nexport * from './versions';\nexport * from './case-management-tab-token';\nexport * from './form-view-model-token';\nexport * from './error.constants';\nexport * from './case-configuration-extensions-token';\nexport * from './iko.token';\nexport * from './building-block-management-tab-token';\n","/*\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\nimport {Injectable} from '@angular/core';\nimport {HttpClient, HttpHeaders} from '@angular/common/http';\nimport {map, Observable, of} from 'rxjs';\nimport {ConfigService} from './config.service';\nimport {BaseApiService} from './base-api.service';\nimport {GlobalConfiguration} from '../models';\nimport {catchError} from 'rxjs/operators';\nimport {InterceptorSkip} from '../constants';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class EnvironmentService extends BaseApiService {\n constructor(\n protected readonly httpClient: HttpClient,\n protected readonly configService: ConfigService\n ) {\n super(httpClient, configService);\n }\n\n public canUpdateGlobalConfiguration(): Observable<boolean> {\n return this.httpClient\n .get<GlobalConfiguration>(this.getApiUrl('management/v1/case-definition/check'), {\n headers: new HttpHeaders().set(InterceptorSkip, '404'),\n })\n .pipe(\n map(response => response.canUpdateGlobalConfiguration),\n catchError(() => of(true))\n );\n }\n}\n","/*\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\nimport {Injectable} from '@angular/core';\nimport {HttpClient, HttpHeaders} from '@angular/common/http';\nimport {map, Observable, of} from 'rxjs';\nimport {ConfigService} from './config.service';\nimport {BaseApiService} from './base-api.service';\nimport {InterceptorSkip} from '../constants';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class DraftVersionService extends BaseApiService {\n constructor(\n protected readonly httpClient: HttpClient,\n protected readonly configService: ConfigService\n ) {\n super(httpClient, configService);\n }\n\n public isDraftVersion(\n caseDefinitionKey: string,\n caseDefinitionVersionTag: string\n ): Observable<boolean> {\n if (!caseDefinitionKey || !caseDefinitionVersionTag) {\n return of(false);\n }\n\n return this.httpClient\n .get<any>(\n this.getApiUrl(\n `management/v1/case-definition/${caseDefinitionKey}/version/${caseDefinitionVersionTag}`\n ),\n {\n headers: new HttpHeaders().set(InterceptorSkip, '403'),\n }\n )\n .pipe(map(caseDefinition => !caseDefinition.final));\n }\n\n public isDraftVersionBuildingBlock(\n buildingBlockDefinitionKey: string,\n buildingBlockDefinitionVersionTag: string\n ): Observable<boolean> {\n if (!buildingBlockDefinitionKey || !buildingBlockDefinitionVersionTag) {\n return of(false);\n }\n\n return this.httpClient\n .get<any>(\n this.getApiUrl(\n `management/v1/building-block/${buildingBlockDefinitionKey}/version/${buildingBlockDefinitionVersionTag}`\n ),\n {\n headers: new HttpHeaders().set(InterceptorSkip, '403'),\n }\n )\n .pipe(map(buildingBlockDefinition => !buildingBlockDefinition.final));\n }\n}\n","/*\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\nimport {BaseApiService} from './base-api.service';\nimport {HttpClient} from '@angular/common/http';\nimport {ConfigService} from './config.service';\nimport {combineLatest, map, Observable, of} from 'rxjs';\nimport {EnvironmentService} from './environment.service';\nimport {DraftVersionService} from './draft-version.service';\nimport {Injectable} from '@angular/core';\nimport {BuildingBlockManagementParams, CaseManagementParams} from '../models';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class EditPermissionsService extends BaseApiService {\n constructor(\n protected readonly httpClient: HttpClient,\n protected readonly configService: ConfigService,\n public readonly environmentService: EnvironmentService,\n public readonly draftVersionService: DraftVersionService\n ) {\n super(httpClient, configService);\n }\n\n public hasEditPermissions(\n caseDefinitionKey: string,\n caseDefinitionVersionTag: string\n ): Observable<boolean> {\n return combineLatest([\n this.environmentService.canUpdateGlobalConfiguration(),\n this.draftVersionService.isDraftVersion(caseDefinitionKey, caseDefinitionVersionTag),\n ]).pipe(map(([canUpdate, isDraftVersion]) => canUpdate && isDraftVersion));\n }\n\n public hasPermissionsToEditBasedOnContext(\n params: CaseManagementParams | BuildingBlockManagementParams,\n context: string\n ): Observable<boolean> {\n if (context === 'case') {\n const caseManagementParams = params as CaseManagementParams;\n return this.hasEditPermissions(\n caseManagementParams.caseDefinitionKey,\n caseManagementParams.caseDefinitionVersionTag\n );\n } else if (context === 'independent') {\n return this.environmentService.canUpdateGlobalConfiguration();\n } else if (context === 'buildingBlock') {\n return of(true);\n }\n return of(false);\n }\n}\n","/*\n * Copyright 2015-2026 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\nimport {Injectable} from '@angular/core';\nimport {BehaviorSubject, map, Observable} from 'rxjs';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class ConfigurationIssueService {\n private readonly _unresolvedIssueTypes$ = new BehaviorSubject<Set<string>>(new Set());\n\n public setUnresolvedIssueTypes(issueTypes: string[]): void {\n this._unresolvedIssueTypes$.next(new Set(issueTypes));\n }\n\n public readonly hasAnyIssues$: Observable<boolean> = this._unresolvedIssueTypes$.pipe(\n map(types => types.size > 0)\n );\n\n public hasIssue$(issueType: string): Observable<boolean> {\n return this._unresolvedIssueTypes$.pipe(map(types => types.has(issueType)));\n }\n\n public hasAnyOfIssues$(issueTypes: string[]): Observable<boolean> {\n return this._unresolvedIssueTypes$.pipe(map(types => issueTypes.some(t => types.has(t))));\n }\n}\n","/*\n * Copyright 2015-2026 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\nexport * from './base-api.service';\nexport * from './config.service';\nexport * from './global-notification.service';\nexport * from './localization.service';\nexport * from './menu-include.service';\nexport * from './user-settings.service';\nexport * from './environment.service';\nexport * from './draft-version.service';\nexport * from './edit-permissions.service';\nexport * from './configuration-issue.service';\n","/*\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 */\nimport {CommonModule} from '@angular/common';\nimport {Component, OnInit} from '@angular/core';\nimport {NotificationService} from 'carbon-components-angular';\nimport {GlobalNotificationService} from '../services';\n\n@Component({\n selector: 'valtimo-global-notification',\n template: ``,\n styles: `\n ::ng-deep.cds--toast-notification {\n width: 100%;\n }\n `,\n providers: [NotificationService],\n standalone: true,\n imports: [CommonModule],\n})\nexport class GlobalNotificationComponent implements OnInit {\n constructor(\n private readonly globalNotificationService: GlobalNotificationService,\n private readonly notificationService: NotificationService\n ) {}\n\n public ngOnInit(): void {\n this.globalNotificationService.setNotificationService(this.notificationService);\n }\n}\n","/*\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\nimport {Component, Input, OnInit, ViewChild, ViewContainerRef} from '@angular/core';\nimport {ConfigService} from '../services/config.service';\nimport {Extension, ExtensionLoader, ExtensionPoint} from '../models';\n\n@Component({\n selector: 'valtimo-extension',\n templateUrl: './extension.component.html',\n styleUrls: ['./extension.component.css'],\n standalone: false,\n})\nexport class ExtensionComponent implements OnInit {\n public extensionLoader: ExtensionLoader = null;\n public selectedExtensionPoint: ExtensionPoint;\n public supportedExtensions: Array<Extension>;\n @Input() public module: string;\n @Input() public page: string;\n @Input() public section: string;\n @ViewChild('injectExtension', {read: ViewContainerRef, static: true})\n viewContainerRef: ViewContainerRef;\n\n constructor(private configService: ConfigService) {}\n\n ngOnInit() {\n this.configService\n .getSupportedExtensionPoints(this.module, this.page, this.section)\n .forEach(extension => {\n this.configService.loadExtensionPoint(this.viewContainerRef, extension.extensionPoint);\n });\n }\n}\n","<!--\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","/*\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\nimport {ModuleWithProviders, NgModule} from '@angular/core';\nimport {ConfigService} from './services/config.service';\nimport {VALTIMO_CONFIG, ValtimoConfig} from './models';\nimport {ExtensionComponent} from './extension/extension.component';\n\n@NgModule({\n declarations: [ExtensionComponent],\n imports: [],\n exports: [ExtensionComponent],\n})\nexport class ConfigModule {\n static forRoot(config: ValtimoConfig): ModuleWithProviders<ConfigModule> {\n return {\n ngModule: ConfigModule,\n providers: [\n ConfigService,\n {\n provide: VALTIMO_CONFIG,\n useValue: config,\n },\n ],\n };\n }\n}\n","/*\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\nimport {Injectable} from '@angular/core';\nimport {Observable, of} from 'rxjs';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class MockTranslateService {\n public stream(key: string): Observable<any> {\n return of(null);\n }\n\n public instant(key: string): string {\n return '';\n }\n}\n","/*\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\nimport {Injectable} from '@angular/core';\nimport {Observable, of} from 'rxjs';\nimport {KeycloakProfile} from 'keycloak-js';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class MockKeycloakService {\n public get keycloakEvents$(): Observable<{type: string}> {\n return of({type: ''});\n }\n\n public isLoggedIn(): Observable<boolean> {\n return of(true);\n }\n\n private readonly MOCK_USER_PROFILE: KeycloakProfile = {\n id: '',\n username: '',\n email: '',\n firstName: '',\n lastName: '',\n enabled: true,\n emailVerified: true,\n totp: true,\n createdTimestamp: 0,\n };\n\n public async loadUserProfile(): Promise<KeycloakProfile> {\n return this.MOCK_USER_PROFILE;\n }\n}\n","/*\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\nimport {Injectable} from '@angular/core';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class MockIconService {\n public registerAll(value: Array<any>): void {\n return;\n }\n}\n","/*\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\nexport * from './mock-translate.service';\nexport * from './mock-keycloak.service';\nexport * from './mock-icon.service';\n","/*\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\nexport * from './services';\n","/*\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\nimport {HttpBackend, HttpClient} from '@angular/common/http';\nimport {catchError, map, switchMap} from 'rxjs/operators';\nimport {combineLatest, forkJoin, Observable, of} from 'rxjs';\nimport {deepmerge} from 'deepmerge-ts';\nimport {ITranslationResource} from '../models';\nimport {TranslateLoader} from '@ngx-translate/core';\nimport {LocalizationService} from '../services/localization.service';\n\nexport class CustomMultiTranslateHttpLoader implements TranslateLoader {\n private readonly _handler: HttpBackend;\n private readonly _httpClient: HttpClient;\n private readonly _resourcesPrefix: Array<string> | ITranslationResource[];\n private readonly _localizationService: LocalizationService;\n constructor(\n _handler: HttpBackend,\n _httpClient: HttpClient,\n _localizationService: LocalizationService,\n _resourcesPrefix: Array<string> | ITranslationResource[]\n ) {\n this._handler = _handler;\n this._httpClient = _httpClient;\n this._resourcesPrefix = _resourcesPrefix;\n this._localizationService = _localizationService;\n }\n getTranslation(lang: string): Observable<any> {\n const requests = this._resourcesPrefix.map(resource => {\n let path;\n if (resource.prefix) path = `${resource.prefix}${lang}${resource.suffix || '.json'}`;\n else path = `${resource}${lang}.json`;\n return new HttpClient(this._handler).get(path).pipe(\n catchError(res => {\n if (!resource.optional) {\n console.group();\n console.error('Something went wrong for the following translation file:', path);\n console.error(res);\n console.groupEnd();\n }\n return of({});\n })\n );\n });\n\n return forkJoin(requests).pipe(\n switchMap(localResourcesResponse =>\n combineLatest([of(localResourcesResponse), this._localizationService.getLocalization(lang)])\n ),\n map(([localResourcesResponse, localizationResponse]) =>\n deepmerge(...[...localResourcesResponse, localizationResponse])\n )\n );\n }\n}\n","/*\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\nimport {HttpBackend, HttpClient} from '@angular/common/http';\nimport {ConfigService} from '../services/config.service';\nimport {CustomMultiTranslateHttpLoader} from './custom-multi-translate-http-loader';\nimport {LocalizationService} from '../services/localization.service';\n\nexport function CustomMultiTranslateHttpLoaderFactory(\n http: HttpBackend,\n httpClient: HttpClient,\n configService: ConfigService,\n localizationService: LocalizationService\n) {\n const translationResources = configService?.config?.translationResources;\n\n return new CustomMultiTranslateHttpLoader(http, httpClient, localizationService, [\n './valtimo-translation/core/',\n ...(translationResources &&\n Array.isArray(translationResources) &&\n translationResources.length > 0\n ? translationResources\n : []),\n ]);\n}\n","/*\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\nimport {HttpBackend} from '@angular/common/http';\nimport {MultiTranslateHttpLoader} from 'ngx-translate-multi-http-loader';\nimport {ConfigService} from '../services/config.service';\n\nexport function MultiTranslateHttpLoaderFactory(http: HttpBackend, configService: ConfigService) {\n const translationResources = configService.config.translationResources;\n\n return new MultiTranslateHttpLoader(http, [\n './valtimo-translation/core/',\n ...(translationResources &&\n Array.isArray(translationResources) &&\n translationResources.length > 0\n ? translationResources\n : []),\n ]);\n}\n","/*\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\nexport * from './custom-multi-translate-http-loader';\nexport * from './custom-multi-translate-http-loader-factory';\nexport * from './multi-translate-http-loader-factory';\n","/*\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\nimport {InjectionToken, Type} from '@angular/core';\n\nconst ZGW_OBJECT_TYPE_COMPONENT_TOKEN = new InjectionToken<Type<any>>(\n 'Specify a component to display ZGW object types.'\n);\n\nexport {ZGW_OBJECT_TYPE_COMPONENT_TOKEN};\n","/*\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\nimport {InjectionToken, Type} from '@angular/core';\n\nconst ZGW_DOCUMENTEN_API_DOCUMENTS_COMPONENT_TOKEN = new InjectionToken<Type<any>>(\n 'Specify a component to display on documents tab when Documenten API is set as the upload provider in the environment file.'\n);\n\nexport {ZGW_DOCUMENTEN_API_DOCUMENTS_COMPONENT_TOKEN};\n","/*\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\nexport * from './zgw-object-type-component-token';\nexport * from './zgw-documenten-api-documents-component-token';\n","/*\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\nexport * from './constants';\n","/*\n * Copyright 2015-2026 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\nimport {inject} from '@angular/core';\nimport {CanActivateFn, Router} from '@angular/router';\nimport {ConfigService} from '../services';\n\nexport const zgwFeaturesGuard: CanActivateFn = () => {\n const configService = inject(ConfigService);\n const router = inject(Router);\n\n const enabled = configService.featureToggles?.enableZgwFeatures !== false;\n\n if (!enabled) {\n return router.createUrlTree(['/']);\n }\n\n return true;\n};\n","/*\n * Copyright 2015-2026 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\nexport * from './zgw-features.guard';\n","/* tslint:disable */\n/* eslint-disable */\n// Generated using typescript-generator version 3.2.1263 on 2026-08-26 15:15:30.\n\nexport interface AccentColorsDto {\n colors: { [index: string]: string };\n}\n\nexport interface AdminSettingsLogoDto {\n logoType: string;\n imageBase64: string;\n}\n\nexport interface AdminSettingsLogosDto {\n logo: AdminSettingsLogoDto | null;\n logoDarkMode: AdminSettingsLogoDto | null;\n}\n\nexport interface CreateAdminSettingsLogoDto {\n imageBase64: string;\n}\n\nexport interface FeatureToggleOverridesDto {\n overrides: { [index: string]: boolean };\n}\n\nexport interface UpdateFeatureToggleDto {\n key: string;\n enabled: boolean;\n}\n\nexport interface PbacConditionFieldDto {\n name: string;\n type: string;\n}\n\nexport interface PbacConditionTypeDto {\n key: string;\n}\n\nexport interface PbacEntityMapperDto {\n fromResourceType: string;\n toResourceType: string;\n}\n\nexport interface PbacFieldAliasDto {\n alias: string;\n field: string;\n}\n\nexport interface PbacOperatorDto {\n key: string;\n}\n\nexport interface PbacRegistryDto {\n resources: PbacResourceDto[];\n operators: PbacOperatorDto[];\n conditionTypes: PbacConditionTypeDto[];\n entityMappers: PbacEntityMapperDto[];\n roles: string[];\n}\n\nexport interface PbacResourceDto {\n resourceType: string;\n shortName: string;\n actions: string[];\n fields: PbacConditionFieldDto[];\n fieldAliases: PbacFieldAliasDto[];\n hasSpecificationFactory: boolean;\n containerTargets: string[];\n}\n\nexport interface BuildingBlockDefinitionArtworkDto {\n key: string;\n versionTag: string;\n imageBase64: string;\n}\n\nexport interface BuildingBlockDefinitionDto {\n key: string;\n versionTag: string;\n name: string;\n description: string | null;\n createdBy: string | null;\n createdDate: DateAsString | null;\n basedOnVersionTag: string | null;\n final: boolean;\n imageBase64: string | null;\n}\n\nexport interface BuildingBlockFormDefinitionDto {\n id: string;\n name: string;\n formDefinition: any;\n readOnly: boolean;\n}\n\nexport interface BuildingBlockInstanceDto {\n id: string;\n documentId: string;\n caseDocumentId: string | null;\n definitionKey: string;\n definitionVersionTag: string;\n activityId: string | null;\n callerProcessDefinitionId: string | null;\n processInstanceId: string | null;\n parentBuildingBlockInstanceId: string | null;\n rootBuildingBlockInstanceId: string | null;\n}\n\nexport interface BuildingBlockProcessDefinitionDto {\n id: string;\n key: string;\n name: string | null;\n versionTag: string | null;\n main: boolean;\n draft: boolean;\n}\n\nexport interface BuildingBlockProcessDefinitionWithLinksDto {\n processDefinition: ProcessDefinitionWithPropertiesDto;\n processLinks: ProcessLinkResponseDto[];\n bpmn20Xml: string;\n draft: boolean;\n}\n\nexport interface BuildingBlockVersionDto {\n versionTag: string;\n final: boolean;\n}\n\nexport interface CaseDefinitionBuildingBlockLinkDto {\n id: string;\n caseDefinitionKey: string;\n caseDefinitionVersionTag: string;\n buildingBlockDefinitionKey: string;\n buildingBlockDefinitionVersionTag: string;\n inputMappings: BuildingBlockInputMapping[];\n outputMappings: BuildingBlockOutputMapping[];\n pluginConfigurationMappings: { [index: string]: string };\n}\n\nexport interface CreateBuildingBlockDefinitionArtworkDto {\n imageBase64: string;\n}\n\nexport interface CreateBuildingBlockDefinitionDto {\n key: string;\n versionTag: string;\n name: string;\n description: string | null;\n}\n\nexport interface CreateBuildingBlockDraftDto {\n versionTag: string;\n}\n\nexport interface CreateBuildingBlockFormDefinitionDto {\n name: string;\n formDefinition: string;\n readOnly: boolean | null;\n}\n\nexport interface CreateCaseDefinitionBuildingBlockLinkDto {\n buildingBlockDefinitionKey: string;\n buildingBlockDefinitionVersionTag: string;\n inputMappings: BuildingBlockInputMapping[];\n outputMappings: BuildingBlockOutputMapping[];\n pluginConfigurationMappings: { [index: string]: string };\n}\n\nexport interface UpdateBuildingBlockDefinitionArtworkDto {\n imageBase64: string;\n}\n\nexport interface UpdateBuildingBlockDefinitionDto {\n name: string;\n description: string | null;\n}\n\nexport interface UpdateBuildingBlockFormDefinitionDto {\n name: string;\n formDefinition: string;\n}\n\nexport interface UpdateCaseDefinitionBuildingBlockLinkDto {\n inputMappings: BuildingBlockInputMapping[];\n outputMappings: BuildingBlockOutputMapping[];\n pluginConfigurationMappings: { [index: string]: string };\n}\n\nexport interface CaseDefinitionCheckResponse {\n canUpdateGlobalConfiguration: boolean;\n}\n\nexport interface CaseDefinitionConfigurationIssueDto {\n id: string;\n issueType: string;\n resolved: boolean;\n createdAt: DateAsString;\n resolvedAt: DateAsString | null;\n}\n\nexport interface CaseDefinitionDraftCreateRequest {\n caseDefinitionKey: string;\n caseDefinitionVersion: string;\n name: string | null;\n description: string | null;\n basedOnCaseDefinitionVersion: string | null;\n basedOnCaseDefinitionId: CaseDefinitionId | null;\n caseDefinitionId: CaseDefinitionId;\n}\n\nexport interface CaseDefinitionImportPreviewResponse {\n key: string;\n name: string;\n versionTag: string;\n pluginConfigurations: PluginConfigurationPreviewDto[];\n final: boolean;\n}\n\nexport interface CaseDefinitionImportResponse {\n caseDefinitionId: CaseDefinitionId | null;\n}\n\nexport interface CaseDefinitionQuickSearchDto {\n queryPath: string;\n title: string;\n}\n\nexport interface CaseDefinitionResponseDto {\n caseDefinitionKey: string;\n caseDefinitionVersionTag: string;\n name: string;\n description: string | null;\n createdBy: string | null;\n createdDate: DateAsString | null;\n basedOnVersionTag: string | null;\n final: boolean;\n active: boolean;\n canHaveAssignee: boolean;\n autoAssignTasks: boolean;\n hasExternalStartForm: boolean | null;\n externalStartFormUrl: string | null;\n externalStartFormDescription: string | null;\n conflictingVersions: string | null;\n hasConfigurationIssues: boolean;\n originalKey: string | null;\n originalName: string | null;\n originalVersionTag: string | null;\n}\n\nexport interface CaseDefinitionSettingsResponseDto {\n caseDefinitionKey: string;\n caseDefinitionVersionTag: string;\n canHaveAssignee: boolean;\n autoAssignTasks: boolean;\n hasExternalStartForm: boolean | null;\n externalStartFormUrl: string | null;\n externalStartFormDescription: string | null;\n}\n\nexport interface CaseDefinitionUpdateRequest {\n name: string | null;\n description: string | null;\n}\n\nexport interface CaseListColumnDto {\n title: string | null;\n key: string;\n path: string;\n displayType: any;\n sortable: boolean;\n defaultSort: ColumnDefaultSort | null;\n order: number | null;\n exportable: boolean;\n}\n\nexport interface CaseListRowDto {\n id: string;\n items: CaseListItemDto[];\n}\n\nexport interface CaseSettingsDto {\n canHaveAssignee: boolean | null;\n autoAssignTasks: boolean | null;\n hasExternalStartForm: boolean | null;\n externalStartFormUrl: string | null;\n externalStartFormDescription: string | null;\n}\n\nexport interface CaseTabDto {\n key: string;\n name: string | null;\n type: CaseTabType;\n contentKey: string;\n showTasks: boolean;\n}\n\nexport interface CaseTabUpdateDto {\n name: string | null;\n type: CaseTabType;\n contentKey: string;\n showTasks: boolean;\n}\n\nexport interface CaseTabUpdateOrderDto {\n key: string;\n name: string | null;\n type: CaseTabType;\n contentKey: string;\n showTasks: boolean;\n}\n\nexport interface CaseTabWithMetadataDto {\n key: string;\n name: string | null;\n type: CaseTabType;\n contentKey: string;\n createdOn: DateAsString | null;\n createdBy: string | null;\n showTasks: boolean;\n}\n\nexport interface CaseVersionDto {\n versionTag: string;\n active: boolean;\n final: boolean;\n}\n\nexport interface CreateStartableItemRequest {\n type: StartableItemType;\n properties: any;\n}\n\nexport interface HiddenCaseListColumnDto {\n columnKey: string;\n}\n\nexport interface HiddenTaskListColumnDto {\n columnKey: string;\n}\n\nexport interface ManagementStartableItemDto {\n type: StartableItemType;\n name: string | null;\n key: string;\n versionTag: string | null;\n processDefinitionId: string | null;\n sortOrder: number | null;\n}\n\nexport interface PluginConfigurationPreviewDto {\n pluginConfigurationId: string;\n pluginDefinitionKey: string | null;\n pluginActionDefinitionKey: string;\n processDefinitionKey: string;\n activityId: string;\n existsInTargetEnvironment: boolean;\n}\n\nexport interface StartableItemDto {\n type: StartableItemType;\n name: string | null;\n key: string;\n versionTag: string | null;\n processDefinitionId: string | null;\n draft: boolean;\n}\n\nexport interface StartableItemOrderEntry {\n key: string;\n type: StartableItemType;\n versionTag: string | null;\n sortOrder: number;\n}\n\nexport interface TaskListColumnDto {\n title: string | null;\n key: string;\n path: string;\n displayType: any;\n sortable: boolean;\n defaultSort: ColumnDefaultSort | null;\n order: number | null;\n}\n\nexport interface UpdateStartableItemOrderRequest {\n items: StartableItemOrderEntry[];\n}\n\nexport interface UpdateStartableItemRequest {\n type: StartableItemType;\n properties: any;\n}\n\nexport interface AdminWidgetConfigurationResponseDto {\n key: string;\n title: string;\n dataSourceKey: string;\n displayType: string;\n dataSourceProperties: ObjectNode;\n displayTypeProperties: ObjectNode;\n url: string | null;\n}\n\nexport interface DashboardCreateRequestDto {\n title: string;\n description: string;\n widgetLayout: DashboardWidgetLayout | null;\n}\n\nexport interface DashboardResponseDto {\n key: string;\n title: string;\n description: string;\n createdBy: string;\n createdOn: DateAsString;\n widgetLayout: DashboardWidgetLayout | null;\n}\n\nexport interface DashboardUpdateRequestDto {\n key: string;\n title: string;\n description: string;\n widgetLayout: DashboardWidgetLayout | null;\n}\n\nexport interface DashboardWidgetDataResultDto {\n key: string;\n data: any;\n}\n\nexport interface DashboardWithWidgetsResponseDto {\n key: string;\n title: string;\n widgets: WidgetConfigurationResponseDto[];\n widgetLayout: DashboardWidgetLayout | null;\n}\n\nexport interface SingleWidgetConfigurationUpdateRequestDto {\n title: string;\n dataSourceKey: string;\n displayType: string;\n dataSourceProperties: ObjectNode;\n displayTypeProperties: ObjectNode;\n url: string | null;\n}\n\nexport interface WidgetConfigurationCreateRequestDto {\n title: string;\n dataSourceKey: string;\n displayType: string;\n dataSourceProperties: ObjectNode;\n displayTypeProperties: ObjectNode;\n url: string | null;\n}\n\nexport interface WidgetConfigurationResponseDto {\n key: string;\n title: string;\n displayType: string;\n displayTypeProperties: ObjectNode;\n url: string | null;\n}\n\nexport interface WidgetConfigurationUpdateRequestDto {\n key: string;\n title: string;\n dataSourceKey: string;\n displayType: string;\n dataSourceProperties: ObjectNode;\n displayTypeProperties: ObjectNode;\n url: string | null;\n}\n\nexport interface CaseTagCreateRequestDto {\n key: string;\n title: string;\n color: CaseTagColor;\n}\n\nexport interface CaseTagResponseDto {\n key: string;\n caseDefinitionKey: string;\n caseDefinitionVersionTag: string;\n title: string;\n color: CaseTagColor;\n order: number;\n}\n\nexport interface CaseTagUpdateRequestDto {\n key: string;\n title: string;\n color: CaseTagColor;\n}\n\nexport interface DocumentInspectionDto {\n id: string;\n definitionId: DocumentDefinitionId;\n createdOn: DateAsString;\n modifiedOn: DateAsString;\n createdBy: string;\n sequence: number;\n version: number;\n assigneeId: string;\n assigneeFullName: string;\n assignedTeamKey: string;\n assignedTeamTitle: string;\n internalStatus: string;\n caseTags: CaseTagResponseDto[];\n relations: DocumentRelation[];\n relatedFiles: RelatedFile[];\n content: any;\n}\n\nexport interface InternalCaseStatusCreateRequestDto {\n key: string;\n title: string;\n visibleInCaseListByDefault: boolean;\n retentionPeriodInDays: number;\n color: InternalCaseStatusColor;\n label: string | null;\n}\n\nexport interface InternalCaseStatusResponseDto {\n key: string;\n caseDefinitionName: string;\n title: string;\n visibleInCaseListByDefault: boolean;\n retentionPeriodInDays: number;\n order: number;\n color: InternalCaseStatusColor;\n label: string | null;\n}\n\nexport interface InternalCaseStatusUpdateOrderRequestDto {\n key: string;\n title: string;\n visibleInCaseListByDefault: boolean;\n retentionPeriodInDays: number;\n color: InternalCaseStatusColor;\n label: string | null;\n}\n\nexport interface InternalCaseStatusUpdateRequestDto {\n key: string;\n title: string;\n visibleInCaseListByDefault: boolean;\n retentionPeriodInDays: number;\n color: InternalCaseStatusColor;\n label: string | null;\n}\n\nexport interface ColumnKeyResponse {\n key: string;\n sortable: boolean;\n filterable: boolean;\n}\n\nexport interface ColumnResponse {\n key: string;\n sortable: boolean;\n filterable: boolean;\n defaultSort: string | null;\n}\n\nexport interface DocumentSearchRequest {\n informatieobjecttype: string | null;\n titel: string | null;\n vertrouwelijkheidaanduiding: string | null;\n creatiedatumFrom: DateAsString | null;\n creatiedatumTo: DateAsString | null;\n auteur: string | null;\n trefwoorden: string[] | null;\n}\n\nexport interface DocumentenApiDocumentDto {\n fileId: string;\n pluginConfigurationId: string;\n bestandsnaam: string | null;\n bestandsomvang: number | null;\n creatiedatum: DateAsString;\n auteur: string | null;\n titel: string | null;\n status: string | null;\n taal: string | null;\n identificatie: string | null;\n beschrijving: string | null;\n informatieobjecttype: string | null;\n informatieobjecttypeOmschrijving: string | null;\n trefwoorden: string[] | null;\n formaat: string | null;\n verzenddatum: DateAsString | null;\n ontvangstdatum: DateAsString | null;\n vertrouwelijkheidaanduiding: string | null;\n versie: number | null;\n indicatieGebruiksrecht: boolean | null;\n canView: boolean;\n canModify: boolean;\n canDelete: boolean;\n}\n\nexport interface DocumentenApiUploadFieldDto {\n key: string;\n defaultValue: string | null;\n visible: boolean;\n readonly: boolean;\n}\n\nexport interface DocumentenApiVersionDetailsDto {\n version: string;\n supportsFilterableColumns: boolean;\n supportsSortableColumns: boolean;\n supportsTrefwoorden: boolean;\n supportsUpdatingDefinitiveDocument: boolean;\n supportsObjectInformatieObjecten: boolean;\n experimentalVersion: boolean;\n}\n\nexport interface DocumentenApiVersionDto {\n selectedVersion: string | null;\n supportsFilterableColumns: boolean;\n supportsSortableColumns: boolean;\n supportsTrefwoorden: boolean;\n supportsUpdatingDefinitiveDocument: boolean;\n supportsObjectInformatieObjecten: boolean;\n}\n\nexport interface DocumentenApiVersionManagementDto {\n selectedVersion: string | null;\n detectedVersions: string[];\n supportsFilterableColumns: boolean;\n supportsSortableColumns: boolean;\n supportsTrefwoorden: boolean;\n}\n\nexport interface DocumentenApiVersionsManagementDto {\n versions: string[];\n versionDetails: DocumentenApiVersionDetailsDto[];\n}\n\nexport interface ModifyDocumentRequest {\n creatiedatum: DateAsString;\n titel: string;\n auteur: string;\n status: DocumentStatusType | null;\n taal: string;\n bestandsnaam: string | null;\n beschrijving: string | null;\n ontvangstdatum: DateAsString | null;\n verzenddatum: DateAsString | null;\n indicatieGebruiksrecht: boolean | null;\n vertrouwelijkheidaanduiding: string | null;\n informatieobjecttype: string | null;\n trefwoorden: string[] | null;\n}\n\nexport interface RelatedFileDto extends RelatedFile {\n fileName: string | null;\n sizeInBytes: number | null;\n pluginConfigurationId: string;\n author: string | null;\n title: string | null;\n status: string | null;\n language: string | null;\n identification: string | null;\n description: string | null;\n informatieobjecttype: string | null;\n informatieobjecttypeOmschrijving: string | null;\n keywords: string[] | null;\n format: string | null;\n sendDate: DateAsString | null;\n receiptDate: DateAsString | null;\n confidentialityLevel: string | null;\n version: number | null;\n indicationUsageRights: boolean | null;\n canView: boolean;\n canModify: boolean;\n canDelete: boolean;\n}\n\nexport interface ReorderColumnRequest {\n key: string;\n defaultSort: string | null;\n}\n\nexport interface UpdateColumnRequest {\n defaultSort: string | null;\n}\n\nexport interface FormOption {\n id: string;\n name: string;\n}\n\nexport interface FormProcessLinkCreateRequestDto extends ProcessLinkCreateRequestDto {\n formDefinitionId: string;\n viewModelEnabled: boolean | null;\n formDisplayType: FormDisplayType | null;\n formSize: FormSizes | null;\n subtitles: string[] | null;\n}\n\nexport interface FormProcessLinkExportResponseDto extends ProcessLinkExportResponseDto {\n formDefinitionName: string;\n viewModelEnabled: boolean;\n formDisplayType: FormDisplayType;\n formSize: FormSizes;\n subtitles: string[] | null;\n}\n\nexport interface FormProcessLinkResponseDto extends ProcessLinkResponseDto {\n formDefinitionId: string;\n viewModelEnabled: boolean;\n formDisplayType: FormDisplayType;\n formSize: FormSizes;\n subtitles: string[] | null;\n}\n\nexport interface FormProcessLinkUpdateRequestDto extends ProcessLinkUpdateRequestDto {\n formDefinitionId: string;\n viewModelEnabled: boolean | null;\n formDisplayType: FormDisplayType | null;\n formSize: FormSizes | null;\n subtitles: string[] | null;\n}\n\nexport interface FormSubmissionResult {\n documentId: string | null;\n errors: OperationError[];\n}\n\nexport interface FormSubmissionResultFailed extends FormSubmissionResult, TransactionalResult {\n}\n\nexport interface FormSubmissionResultSucceeded extends FormSubmissionResult {\n documentId: string;\n}\n\nexport interface IntermediateSaveRequest {\n submission: ObjectNode;\n taskInstanceId: string;\n}\n\nexport interface IntermediateSubmission {\n submission: ObjectNode;\n taskInstanceId: string;\n createdBy: string;\n createdOn: DateAsString;\n editedBy: string | null;\n editedOn: DateAsString | null;\n}\n\nexport interface IntermediateSubmissionKt {\n}\n\nexport interface FormFlowAdditionalPropertyDto {\n name: string;\n context: string;\n alwaysPresent: boolean;\n}\n\nexport interface FormFlowBreadcrumbResponse {\n title: string | null;\n key: string;\n stepInstanceId: string | null;\n completed: boolean;\n}\n\nexport interface FormFlowBreadcrumbsResponse {\n currentStepIndex: number;\n breadcrumbs: FormFlowBreadcrumbResponse[];\n}\n\nexport interface FormFlowExpressionBeanDto {\n name: string;\n methods: FormFlowExpressionMethodDto[];\n}\n\nexport interface FormFlowExpressionMethodDto {\n name: string;\n parameters: FormFlowExpressionParameterDto[];\n returnType: string;\n}\n\nexport interface FormFlowExpressionParameterDto {\n name: string;\n type: string;\n}\n\nexport interface FormFlowProcessLinkCreateRequestDto extends ProcessLinkCreateRequestDto {\n formFlowDefinitionKey: string;\n formDisplayType: FormDisplayType | null;\n formSize: FormSizes | null;\n subtitles: string[] | null;\n}\n\nexport interface FormFlowProcessLinkExportResponseDto extends ProcessLinkExportResponseDto {\n formFlowDefinitionKey: string;\n formDisplayType: FormDisplayType;\n formSize: FormSizes;\n subtitles: string[] | null;\n}\n\nexport interface FormFlowProcessLinkResponseDto extends ProcessLinkResponseDto {\n formFlowDefinitionKey: string;\n formDisplayType: FormDisplayType;\n formSize: FormSizes;\n subtitles: string[] | null;\n}\n\nexport interface FormFlowProcessLinkUpdateRequestDto extends ProcessLinkUpdateRequestDto {\n formFlowDefinitionKey: string;\n formDisplayType: FormDisplayType | null;\n formSize: FormSizes | null;\n subtitles: string[] | null;\n}\n\nexport interface FormFlowRegistryDto {\n stepTypes: FormFlowStepTypeDto[];\n expressionBeans: FormFlowExpressionBeanDto[];\n additionalProperties: FormFlowAdditionalPropertyDto[];\n}\n\nexport interface FormFlowStepTypeDto {\n name: string;\n properties: FormFlowStepTypePropertyDto[];\n}\n\nexport interface FormFlowStepTypePropertyDto {\n name: string;\n type: string;\n}\n\nexport interface MultipleFormErrors {\n componentErrors: ComponentError[];\n}\n\nexport interface SingleFormError {\n error: string;\n component: string | null;\n}\n\nexport interface StartFormSubmissionResult {\n documentId: string | null;\n}\n\nexport interface LocalizationResponseDto {\n languageKey: string;\n content: ObjectNode;\n}\n\nexport interface LocalizationUpdateRequestDto {\n languageKey: string;\n content: ObjectNode;\n}\n\nexport interface LoggingEventPropertyDto {\n key: string;\n value: string;\n}\n\nexport interface LoggingEventResponse {\n timestamp: DateAsString;\n formattedMessage: string;\n level: string;\n properties: LoggingEventPropertyDto[];\n stacktrace: string | null;\n}\n\nexport interface LoggingEventSearchRequest {\n afterTimestamp: DateAsString | null;\n beforeTimestamp: DateAsString | null;\n level: string | null;\n likeFormattedMessage: string | null;\n properties: LoggingEventPropertyDto[];\n}\n\nexport interface NoteCreateRequestDto {\n content: string;\n}\n\nexport interface NoteResponseDto {\n id: string;\n createdByUserId: string;\n createdByUserFullName: string;\n createdDate: DateAsString;\n content: string;\n documentId: string;\n}\n\nexport interface NoteUpdateRequestDto {\n content: string;\n}\n\nexport interface JobInspectionDto {\n id: string;\n jobDefinitionId: string | null;\n executionId: string | null;\n activityId: string | null;\n jobType: JobType;\n retries: number;\n exceptionMessage: string | null;\n dueDate: DateAsString | null;\n suspended: boolean;\n}\n\nexport interface LogInspectionSearchRequest {\n level: string | null;\n likeFormattedMessage: string | null;\n afterTimestamp: DateAsString | null;\n beforeTimestamp: DateAsString | null;\n additionalProperties: LoggingEventPropertyDto[];\n}\n\nexport interface ProcessInstanceInspectionDto {\n processInstanceId: string;\n processDefinitionId: string | null;\n processDefinitionKey: string | null;\n processName: string | null;\n version: number;\n latestVersion: number;\n active: boolean;\n startedBy: string | null;\n startedByUserId: string | null;\n startedOn: DateAsString | null;\n incidents: IncidentDto[];\n tasks: TaskInspectionDto[];\n variables: ProcessVariableDto[];\n jobs: JobInspectionDto[];\n buildingBlock: BuildingBlockProcessReference | null;\n}\n\nexport interface TaskInspectionDto {\n id: string;\n name: string | null;\n assignee: string | null;\n created: DateAsString | null;\n dueDate: DateAsString | null;\n taskDefinitionKey: string | null;\n}\n\nexport interface URLProcessLinkCreateRequestDto extends ProcessLinkCreateRequestDto {\n url: string;\n}\n\nexport interface URLProcessLinkDeployDto extends ProcessLinkDeployDto {\n processLinkType: \"url\";\n url: string;\n}\n\nexport interface URLProcessLinkExportResponseDto extends ProcessLinkExportResponseDto {\n url: string;\n}\n\nexport interface URLProcessLinkResponseDto extends ProcessLinkResponseDto {\n url: string;\n}\n\nexport interface URLProcessLinkUpdateRequestDto extends ProcessLinkUpdateRequestDto {\n url: string;\n}\n\nexport interface URLSubmissionResult {\n errors: string[];\n documentId: string;\n}\n\nexport interface URLVariables {\n variables: { [index: string]: string };\n}\n\nexport interface CaseProcessDefinitionResponseDto {\n processDefinition: ProcessDefinitionWithPropertiesDto;\n processCaseLink: ProcessDefinitionCaseDefinition;\n processLinks: ProcessLinkResponseDto[];\n bpmn20Xml: string;\n draft: boolean;\n autofilledElements: AutofilledElementDto[];\n}\n\nexport interface MissingReferenceDto {\n type: MissingReferenceType;\n reference: string;\n activityId: string | null;\n processDefinitionKey: string | null;\n blocksImport: boolean;\n}\n\nexport interface ProcessDefinitionConflictResponseDto {\n processDefinitionKey: string;\n processDefinitionId: string;\n processDefinitionName: string | null;\n}\n\nexport interface ProcessDefinitionImportPreviewResponseDto {\n processDefinitionKeys: string[];\n existingProcessDefinitionKeys: string[];\n pluginConfigurations: ProcessLinkPluginConfigurationPreviewDto[];\n missingReferences: MissingReferenceDto[];\n elementsToReplace: ReplacedElementDto[];\n canImport: boolean;\n}\n\nexport interface ProcessDefinitionImportResponseDto {\n processDefinitionKeys: string[];\n missingReferences: MissingReferenceDto[];\n}\n\nexport interface ProcessDefinitionResponseDto {\n processDefinition: ProcessDefinitionWithPropertiesDto;\n processLinks: ProcessLinkResponseDto[];\n bpmn20Xml: string;\n draft: boolean;\n autofilledElements: AutofilledElementDto[];\n}\n\nexport interface ProcessDefinitionValidateRequestDto {\n bpmnXml: string;\n processLinks: ProcessLinkCreateRequestDto[];\n canInitializeDocument: boolean;\n startableByUser: boolean;\n}\n\nexport interface ProcessDefinitionValidateResponseDto {\n hasWarnings: boolean;\n errors: ProcessDefinitionValidationError[];\n valid: boolean;\n}\n\nexport interface ProcessLinkActivityResult<T> {\n processLinkId: string;\n type: string;\n assignee: string | null;\n due: DateAsString | null;\n properties: T;\n}\n\nexport interface ProcessLinkActivityResultWithTask {\n task: TaskInstanceWithIdentityLink;\n processLinkActivityResult: ProcessLinkActivityResult<any> | null;\n}\n\nexport interface ProcessLinkCreateRequestDto {\n activityId: string;\n processDefinitionId: string;\n activityType: ActivityTypeWithEventName;\n processLinkType: string;\n}\n\nexport interface ProcessLinkExportResponseDto {\n activityId: string;\n activityType: ActivityTypeWithEventName;\n processLinkType: string;\n}\n\nexport interface ProcessLinkPluginConfigurationPreviewDto {\n pluginConfigurationId: string;\n pluginDefinitionKey: string | null;\n pluginActionDefinitionKey: string;\n processDefinitionKey: string;\n activityId: string;\n existsInTargetEnvironment: boolean;\n}\n\nexport interface ProcessLinkResponseDto {\n activityId: string;\n processDefinitionId: string;\n activityType: ActivityTypeWithEventName;\n processLinkType: string;\n id: string;\n}\n\nexport interface ProcessLinkUpdateRequestDto {\n processLinkType: string;\n id: string;\n}\n\nexport interface ReplacedElementDto {\n type: ReplacedElementType;\n key: string;\n}\n\nexport interface SearchFieldV2Dto {\n id: string;\n ownerId: string;\n ownerType: string;\n key: string;\n title: string | null;\n path: string;\n order: number;\n dataType: DataType;\n fieldType: FieldType;\n matchType: SearchFieldMatchType | null;\n dropdownDataProvider: string | null;\n required: boolean;\n}\n\nexport interface TabDto {\n key: string;\n title: string | null;\n type: string;\n properties: { [index: string]: any | null } | null;\n widgetLayout: TabWidgetLayout | null;\n}\n\nexport interface TeamCreateRequestDto {\n key: string;\n title: string;\n}\n\nexport interface TeamImportExportDto {\n key: string;\n title: string;\n}\n\nexport interface TeamListResponseDto {\n key: string;\n title: string;\n userCount: number;\n}\n\nexport interface TeamResponseDto {\n key: string;\n title: string;\n}\n\nexport interface TeamUpdateRequestDto {\n key: string;\n title: string;\n}\n\nexport interface TeamUserCreateRequestDto {\n username: string;\n}\n\nexport interface TeamUserResponseDto {\n username: string;\n fullName: string | null;\n email: string | null;\n}\n\nexport interface AutofilledElementDto {\n activityId: string;\n modificationType: string;\n appliedValue: string;\n}\n\nexport interface BatchAssignTaskDTO {\n assignee: string;\n assignedTeamKey: string;\n tasksIds: string[];\n}\n\nexport interface ChoiceFieldCreateRequestDTO {\n keyName: string;\n title: string;\n}\n\nexport interface ChoiceFieldDTO {\n id: number;\n keyName: string;\n choiceFieldValues: ChoiceFieldValue[];\n}\n\nexport interface ChoiceFieldUpdateRequestDTO {\n id: number;\n keyName: string;\n title: string;\n}\n\nexport interface ChoiceFieldValueCreateRequestDTO {\n name: string;\n deprecated: boolean;\n sortOrder: number;\n value: string;\n}\n\nexport interface ChoiceFieldValueUpdateRequestDTO {\n id: number;\n name: string;\n deprecated: boolean;\n sortOrder: number;\n value: string;\n}\n\nexport interface CommentDto {\n text: string;\n}\n\nexport interface CustomTaskDto {\n task: OperatonTaskDto;\n formFields: FormField[];\n variables: { [index: string]: any };\n formLocation: string;\n processName: string;\n processKey: string;\n processVersion: string;\n businessKey: string;\n}\n\nexport interface DecisionDefinitionResponseDto {\n id: string;\n key: string;\n category: string | null;\n name: string | null;\n version: number;\n resource: string | null;\n deploymentId: string | null;\n tenantId: string | null;\n decisionRequirementsDefinitionId: string | null;\n decisionRequirementsDefinitionKey: string | null;\n versionTag: string | null;\n historyTimeToLive: number | null;\n}\n\nexport interface DefinitionDeploymentResponseDto {\n identifier: string;\n}\n\nexport interface FlowNodeMigrationDTO {\n sourceFlowNodeMap: { [index: string]: string };\n targetFlowNodeMap: { [index: string]: string };\n uniqueFlowNodeMap: { [index: string]: string };\n}\n\nexport interface HeatmapTaskAverageDurationDTO extends HeatmapTaskDTO {\n averageDurationInMilliseconds: number;\n}\n\nexport interface HeatmapTaskCountDTO extends HeatmapTaskDTO {\n}\n\nexport interface HeatmapTaskDTO {\n name: string;\n count: number;\n totalCount: number;\n}\n\nexport interface IncidentDto {\n id: string;\n processInstanceId: string;\n processDefinitionId: string;\n executionId: string;\n activityId: string;\n incidentType: string;\n incidentMessage: string;\n incidentTimestamp: DateAsString;\n causeIncidentId: string;\n rootCauseIncidentId: string;\n configuration: string;\n tenantId: string;\n jobDefinitionId: string;\n}\n\nexport interface KeyAndPasswordDTO {\n key: string;\n newPassword: string;\n}\n\nexport interface LoginDTO {\n username: string;\n password: string;\n rememberMe: boolean;\n}\n\nexport interface ProcessDefinitionDiagramWithPropertyDto {\n id: string;\n bpmn20Xml: string;\n readOnly: boolean;\n systemProcess: boolean;\n autofilledElements: AutofilledElementDto[];\n}\n\nexport interface ProcessDefinitionWithPropertiesDto extends ProcessDefinitionDto {\n readOnly: boolean;\n systemProcess: boolean;\n}\n\nexport interface ProcessInstanceDiagramDto {\n id: string;\n bpmn20Xml: string;\n historicActivityInstances: HistoricActivityInstance[];\n}\n\nexport interface ProcessInstanceSearchDTO {\n processVariables: ProcessVariableDTOV2Union[];\n}\n\nexport interface ProcessInstanceStatisticsDTO {\n duration: number;\n processName: string;\n}\n\nexport interface ProcessVariableDto {\n name: string;\n type: string;\n value: any;\n}\n\nexport interface ProcessVariableMutationRequest {\n name: string;\n type: ProcessVariableType;\n value: any;\n}\n\nexport interface StartFormDto {\n formLocation: string;\n formFields: FormField[];\n genericForm: boolean;\n}\n\nexport interface TaskCompletionDTO {\n variables: { [index: string]: any };\n filesToDelete: string[];\n}\n\nexport interface UserTeamDto {\n key: string;\n}\n\nexport interface TemplatePreviewRequest {\n fileName: string;\n content: string;\n}\n\nexport interface CreateTemplateRequest {\n key: string;\n caseDefinitionKey: string | null;\n caseDefinitionVersionTag: string | null;\n buildingBlockDefinitionKey: string | null;\n buildingBlockDefinitionVersionTag: string | null;\n type: string;\n metadata: { [index: string]: any | null };\n}\n\nexport interface DeleteTemplateRequest {\n caseDefinitionKey: string | null;\n caseDefinitionVersionTag: string | null;\n buildingBlockDefinitionKey: string | null;\n buildingBlockDefinitionVersionTag: string | null;\n templates: TemplateKeyType[];\n}\n\nexport interface TemplateKeyType {\n key: string;\n type: string;\n}\n\nexport interface TemplateListItemResponse {\n key: string;\n type: string;\n}\n\nexport interface TemplateResponse {\n key: string;\n caseDefinitionKey: string | null;\n caseDefinitionVersionTag: string | null;\n buildingBlockDefinitionKey: string | null;\n buildingBlockDefinitionVersionTag: string | null;\n type: string;\n metadata: { [index: string]: any | null };\n content: string;\n}\n\nexport interface UpdateTemplateRequest {\n key: string;\n caseDefinitionKey: string | null;\n caseDefinitionVersionTag: string | null;\n buildingBlockDefinitionKey: string | null;\n buildingBlockDefinitionVersionTag: string | null;\n type: string;\n metadata: { [index: string]: any | null };\n content: string;\n}\n\nexport interface WidgetDto {\n type: string;\n title: string;\n icon: string | null;\n compact: boolean | null;\n width: number;\n color: WidgetColor | null;\n highContrast: boolean;\n displayConditions: Condition<any>[] | null;\n key: string;\n actions: WidgetAction[];\n}\n\nexport interface CaseZaakdetailsInspectionDto {\n syncConfig: ZaakdetailsSyncConfigDto | null;\n zaakdetailsObject: ZaakdetailsObjectDto | null;\n}\n\nexport interface ZaakdetailsObjectContentDto {\n resolved: boolean;\n record: any | null;\n message: string | null;\n objectUrl: string | null;\n}\n\nexport interface ZaakdetailsObjectDto {\n documentId: string;\n objectUrl: string;\n linkedToZaak: boolean;\n}\n\nexport interface ZaakdetailsSyncConfigDto {\n caseDefinitionKey: string;\n caseDefinitionVersionTag: string;\n objectManagementConfigurationId: string | null;\n objectManagementTitle: string | null;\n enabled: boolean;\n}\n\nexport interface CaseZgwInspectionDto {\n zaakInstanceLink: ZaakInstanceLinkDto | null;\n zaak: any | null;\n eigenschappen: ZaakEigenschapDto[];\n rollen: ZaakRolDto[];\n statusHistory: ZaakStatusDto[];\n resultaat: ZaakResultaatDto | null;\n zaakObjecten: ZaakObjectDto[];\n zaakInformatieObjecten: ZaakInformatieObjectDto[];\n besluiten: ZaakBesluitDto[];\n warnings: string[];\n}\n\nexport interface ZaakBesluitDto {\n url: string;\n besluit: string;\n}\n\nexport interface ZaakEigenschapDto {\n url: string;\n eigenschap: string;\n naam: string | null;\n waarde: string;\n}\n\nexport interface ZaakInformatieObjectDto {\n url: string;\n informatieobject: string;\n titel: string | null;\n registratiedatum: DateAsString;\n}\n\nexport interface ZaakInstanceLinkDto {\n zaakInstanceUrl: string;\n zaakInstanceId: string;\n zaakTypeUrl: string;\n}\n\nexport interface ZaakObjectDto {\n url: string;\n objectUrl: string;\n objectType: string;\n objectTypeOverige: string | null;\n relatieomschrijving: string | null;\n}\n\nexport interface ZaakResultaatDto {\n url: string;\n resultaattype: string;\n toelichting: string | null;\n}\n\nexport interface ZaakRolDto {\n url: string | null;\n betrokkeneType: string;\n roltype: string;\n omschrijving: string | null;\n omschrijvingGeneriek: string | null;\n indicatieMachtiging: string | null;\n betrokkeneIdentificatie: any | null;\n}\n\nexport interface ZaakStatusDto {\n url: string;\n statustype: string;\n datumStatusGezet: DateAsString;\n statustoelichting: string | null;\n}\n\nexport interface ZaakobjectResolveResultDto {\n resolved: boolean;\n record: any | null;\n message: string | null;\n objectUrl: string;\n}\n\nexport interface BuildingBlockInputMapping {\n source: string;\n target: string;\n prefixedTarget: string;\n}\n\nexport interface BuildingBlockOutputMapping {\n source: string;\n target: string;\n syncTiming: BuildingBlockSyncTiming;\n prefixedSource: string;\n}\n\nexport interface CaseDefinitionId extends AbstractId<CaseDefinitionId>, BlueprintId {\n key: string;\n versionTag: string;\n}\n\nexport interface CaseListItemDto {\n key: string;\n value: any | null;\n}\n\nexport interface ObjectNode extends ContainerNode<ObjectNode>, Serializable {\n}\n\nexport interface DocumentDefinitionId {\n buildingBlockDefinitionId: BuildingBlockDefinitionId;\n caseDefinitionId: CaseDefinitionId;\n name: string;\n}\n\nexport interface DocumentRelation {\n relationType: DocumentRelationType;\n id: string;\n}\n\nexport interface RelatedFile {\n fileId: string;\n createdOn: DateAsString;\n createdBy: string;\n sizeInBytes: number;\n fileName: string;\n}\n\nexport interface OperationError {\n}\n\nexport interface TransactionalResult {\n}\n\nexport interface ComponentError {\n component: string | null;\n message: string;\n}\n\nexport interface BuildingBlockProcessReference {\n instanceId: string;\n definitionKey: string;\n definitionVersionTag: string;\n documentId: string;\n}\n\nexport interface ProcessLinkDeployDto {\n processLinkType: \"url\";\n activityId: string;\n processDefinitionId: string;\n activityType: ActivityTypeWithEventName;\n}\n\nexport interface ProcessDefinitionCaseDefinition {\n id: ProcessDefinitionCaseDefinitionId;\n canInitializeDocument: boolean;\n startableByUser: boolean;\n processDefinitionName: string | null;\n processDefinitionKey: string | null;\n draft: boolean;\n}\n\nexport interface ProcessDefinitionValidationError {\n elementId: string;\n elementType: string;\n elementName: string | null;\n reason: string;\n errorCode: string | null;\n expression: string | null;\n severity: ValidationSeverity;\n invalidFields: string[] | null;\n invalidArguments: number[] | null;\n listenerType: string | null;\n listenerIndex: number | null;\n}\n\nexport interface TaskInstanceWithIdentityLink {\n businessKey: string;\n id: string | null;\n name: string | null;\n assignee: string | null;\n created: DateAsString | null;\n due: DateAsString | null;\n followUp: DateAsString | null;\n lastUpdated: DateAsString | null;\n delegationState: string | null;\n description: string | null;\n executionId: string | null;\n owner: string | null;\n parentTaskId: string | null;\n priority: number;\n processDefinitionId: string | null;\n processInstanceId: string | null;\n taskDefinitionKey: string | null;\n caseExecutionId: string | null;\n caseInstanceId: string | null;\n caseDefinitionId: string | null;\n suspended: boolean;\n tenantId: string | null;\n assignedTeam: TeamDto | null;\n valtimoAssignee: AssigneeDto | null;\n external: boolean;\n processDefinitionKey: string;\n identityLinks: OperatonIdentityLinkDto[];\n subtitles: string[];\n}\n\nexport interface ChoiceFieldValue extends AbstractAuditingEntity, Serializable {\n id: number;\n name: string;\n deprecated: boolean;\n sortOrder: number;\n value: string;\n choiceField: ChoiceField;\n}\n\nexport interface OperatonTaskDto {\n id: string | null;\n name: string | null;\n assignee: string | null;\n created: DateAsString | null;\n due: DateAsString | null;\n followUp: DateAsString | null;\n lastUpdated: DateAsString | null;\n delegationState: string | null;\n description: string | null;\n executionId: string | null;\n owner: string | null;\n parentTaskId: string | null;\n priority: number;\n processDefinitionId: string | null;\n processInstanceId: string | null;\n taskDefinitionKey: string | null;\n caseExecutionId: string | null;\n caseInstanceId: string | null;\n caseDefinitionId: string | null;\n suspended: boolean;\n tenantId: string | null;\n assignedTeam: TeamDto | null;\n valtimoAssignee: AssigneeDto | null;\n}\n\nexport interface FormField {\n businessKey: boolean;\n validationConstraints: FormFieldValidationConstraint[];\n label: string;\n value: TypedValue;\n typeName: string;\n properties: { [index: string]: string };\n id: string;\n type: FormType;\n /**\n * @deprecated since 1.0\n */\n defaultValue: any;\n}\n\nexport interface ProcessDefinitionDto {\n id: string;\n key: string;\n category: string;\n description: string;\n name: string;\n version: number;\n resource: string;\n deploymentId: string;\n diagram: string;\n suspended: boolean;\n tenantId: string;\n versionTag: string;\n historyTimeToLive: number;\n startableInTasklist: boolean;\n}\n\nexport interface HistoricActivityInstance {\n rootProcessInstanceId: string;\n processDefinitionKey: string;\n canceled: boolean;\n removalTime: DateAsString;\n parentActivityInstanceId: string;\n calledProcessInstanceId: string;\n calledCaseInstanceId: string;\n activityId: string;\n tenantId: string;\n executionId: string;\n assignee: string;\n taskId: string;\n startTime: DateAsString;\n endTime: DateAsString;\n processDefinitionId: string;\n processInstanceId: string;\n activityType: string;\n activityName: string;\n durationInMillis: number;\n completeScope: boolean;\n id: string;\n}\n\nexport interface ProcessVariableDTOV2 {\n \"@type\": \"string\" | \"date\" | \"boolean\" | \"enum\" | \"long\" | \"fileUpload\";\n name: string;\n}\n\nexport interface Condition<T> {\n path: string;\n operator: ExpressionOperator;\n value: T;\n}\n\nexport interface WidgetAction {\n}\n\nexport interface BlueprintId {\n tagPrefix: string;\n idKey: string;\n}\n\nexport interface Serializable {\n}\n\nexport interface BuildingBlockDefinitionId extends AbstractId<BuildingBlockDefinitionId>, BlueprintId {\n key: string;\n versionTag: string;\n}\n\nexport interface ProcessDefinitionCaseDefinitionId extends AbstractId<ProcessDefinitionCaseDefinitionId> {\n processDefinitionId: ProcessDefinitionId;\n caseDefinitionId: CaseDefinitionId;\n}\n\nexport interface OperatonIdentityLinkDto {\n userId: string | null;\n groupId: string | null;\n type: string | null;\n}\n\nexport interface ChoiceField extends AbstractAuditingEntity, Serializable {\n id: number;\n keyName: string;\n title: string;\n}\n\nexport interface AbstractAuditingEntity {\n}\n\nexport interface TeamDto extends Team {\n}\n\nexport interface AssigneeDto {\n username: string;\n firstName: string | null;\n lastName: string | null;\n fullName: string;\n}\n\nexport interface FormFieldValidationConstraint {\n configuration: any;\n name: string;\n}\n\nexport interface TypedValue extends Serializable {\n value: any;\n type: ValueType;\n transient: boolean;\n}\n\nexport interface FormType {\n name: string;\n}\n\nexport interface StringProcessVariableDTOV2 extends ProcessVariableDTOV2 {\n \"@type\": \"string\";\n value: string;\n}\n\nexport interface DateProcessVariableDTOV2 extends ProcessVariableDTOV2 {\n \"@type\": \"date\";\n range: DateRange;\n}\n\nexport interface BooleanProcessVariableDTOV2 extends ProcessVariableDTOV2 {\n \"@type\": \"boolean\";\n value: boolean;\n}\n\nexport interface EnumProcessVariableDTOV2 extends ProcessVariableDTOV2 {\n \"@type\": \"enum\";\n values: string[];\n}\n\nexport interface LongProcessVariableDTOV2 extends ProcessVariableDTOV2 {\n \"@type\": \"long\";\n value: number;\n}\n\nexport interface FileUploadProcessVariableDTOV2 extends ProcessVariableDTOV2 {\n \"@type\": \"fileUpload\";\n value: boolean;\n}\n\nexport interface AbstractId<SELF> extends Identity, Serializable {\n}\n\nexport interface ContainerNode<T> extends BaseJsonNode, JsonNodeCreator {\n}\n\nexport interface ProcessDefinitionId {\n id: string;\n}\n\nexport interface Team {\n title: string;\n key: string;\n}\n\nexport interface ValueType extends Serializable {\n primitiveValueType: boolean;\n name: string;\n parent: ValueType;\n abstract: boolean;\n}\n\nexport interface DateRange {\n from: DateAsString;\n to: DateAsString;\n}\n\nexport interface Identity {\n}\n\nexport interface BaseJsonNode extends Serializable {\n}\n\nexport interface JsonNodeCreator {\n}\n\nexport type DateAsString = string;\n\nexport type StartableItemType = \"PROCESS\" | \"BUILDING_BLOCK\";\n\nexport type JobType = \"TIMER\" | \"ASYNC_CONTINUATION\" | \"MESSAGE\" | \"BATCH\" | \"OTHER\";\n\nexport type MissingReferenceType = \"SUB_PROCESS\" | \"DECISION_DEFINITION\" | \"FORM\" | \"FORM_FLOW\" | \"READ_ONLY_SYSTEM_PROCESS\";\n\nexport type ReplacedElementType = \"PROCESS_DEFINITION\" | \"DECISION_DEFINITION\" | \"FORM\";\n\nexport type ProcessVariableType = \"STRING\" | \"INTEGER\" | \"LONG\" | \"DOUBLE\" | \"BOOLEAN\" | \"JSON\";\n\nexport type ColumnDefaultSort = \"ASC\" | \"DESC\";\n\nexport type CaseTabType = \"standard\" | \"formio\" | \"custom\" | \"widgets\";\n\nexport type DashboardWidgetLayout = \"MUURI_GAP_FREE\" | \"MUURI\" | \"BEAUTIFUL\";\n\nexport type CaseTagColor = \"WARMGRAY\" | \"RED\" | \"MAGENTA\" | \"PURPLE\" | \"BLUE\" | \"CYAN\" | \"TEAL\" | \"GREEN\" | \"GRAY\" | \"COOLGRAY\" | \"HIGHCONTRAST\" | \"OUTLINE\";\n\nexport type InternalCaseStatusColor = \"WARMGRAY\" | \"RED\" | \"MAGENTA\" | \"PURPLE\" | \"BLUE\" | \"CYAN\" | \"TEAL\" | \"GREEN\" | \"GRAY\" | \"COOLGRAY\" | \"HIGHCONTRAST\" | \"OUTLINE\";\n\nexport type DocumentStatusType = \"in_bewerking\" | \"ter_vaststelling\" | \"definitief\" | \"gearchiveerd\";\n\nexport type ActivityTypeWithEventName = \"bpmn:MultiInstanceBody:start\" | \"bpmn:MultiInstanceBody:end\" | \"bpmn:ExclusiveGateway:start\" | \"bpmn:ExclusiveGateway:end\" | \"bpmn:InclusiveGateway:start\" | \"bpmn:InclusiveGateway:end\" | \"bpmn:ParallelGateway:start\" | \"bpmn:ParallelGateway:end\" | \"bpmn:ComplexGateway:start\" | \"bpmn:ComplexGateway:end\" | \"bpmn:EventBasedGateway:start\" | \"bpmn:EventBasedGateway:end\" | \"bpmn:Task:start\" | \"bpmn:Task:end\" | \"bpmn:ScriptTask:start\" | \"bpmn:ScriptTask:end\" | \"bpmn:ServiceTask:start\" | \"bpmn:ServiceTask:end\" | \"bpmn:BusinessRuleTask:start\" | \"bpmn:BusinessRuleTask:end\" | \"bpmn:ManualTask:start\" | \"bpmn:ManualTask:end\" | \"bpmn:UserTask:create\" | \"bpmn:UserTask:assignment\" | \"bpmn:UserTask:complete\" | \"bpmn:UserTask:update\" | \"bpmn:UserTask:delete\" | \"bpmn:UserTask:timeout\" | \"bpmn:UserTask:start\" | \"bpmn:UserTask:end\" | \"bpmn:SendTask:start\" | \"bpmn:SendTask:end\" | \"bpmn:ReceiveTask:start\" | \"bpmn:ReceiveTask:end\" | \"bpmn:SubProcess:start\" | \"bpmn:SubProcess:end\" | \"bpmn:AdHocSubProcess:start\" | \"bpmn:AdHocSubProcess:end\" | \"bpmn:CallActivity:start\" | \"bpmn:CallActivity:end\" | \"bpmn:Transaction:start\" | \"bpmn:Transaction:end\" | \"bpmn:BoundaryTimer:start\" | \"bpmn:BoundaryTimer:end\" | \"bpmn:BoundaryMessage:start\" | \"bpmn:BoundaryMessage:end\" | \"bpmn:BoundarySignal:start\" | \"bpmn:BoundarySignal:end\" | \"bpmn:CompensationBoundaryCatch:start\" | \"bpmn:CompensationBoundaryCatch:end\" | \"bpmn:BoundaryError:start\" | \"bpmn:BoundaryError:end\" | \"bpmn:BoundaryEscalation:start\" | \"bpmn:BoundaryEscalation:end\" | \"bpmn:CancelBoundaryCatch:start\" | \"bpmn:CancelBoundaryCatch:end\" | \"bpmn:BoundaryConditional:start\" | \"bpmn:BoundaryConditional:end\" | \"bpmn:StartEvent:start\" | \"bpmn:StartEvent:end\" | \"bpmn:StartTimerEvent:start\" | \"bpmn:StartTimerEvent:end\" | \"bpmn:MessageStartEvent:start\" | \"bpmn:MessageStartEvent:end\" | \"bpmn:SignalStartEvent:start\" | \"bpmn:SignalStartEvent:end\" | \"bpmn:EscalationStartEvent:start\" | \"bpmn:EscalationStartEvent:end\" | \"bpmn:CompensationStartEvent:start\" | \"bpmn:CompensationStartEvent:end\" | \"bpmn:ErrorStartEvent:start\" | \"bpmn:ErrorStartEvent:end\" | \"bpmn:ConditionalStartEvent:start\" | \"bpmn:ConditionalStartEvent:end\" | \"bpmn:IntermediateCatchEvent:start\" | \"bpmn:IntermediateCatchEvent:end\" | \"bpmn:IntermediateMessageCatch:start\" | \"bpmn:IntermediateMessageCatch:end\" | \"bpmn:IntermediateTimer:start\" | \"bpmn:IntermediateTimer:end\" | \"bpmn:IntermediateLinkCatch:start\" | \"bpmn:IntermediateLinkCatch:end\" | \"bpmn:IntermediateSignalCatch:start\" | \"bpmn:IntermediateSignalCatch:end\" | \"bpmn:IntermediateConditional:start\" | \"bpmn:IntermediateConditional:end\" | \"bpmn:IntermediateThrowEvent:start\" | \"bpmn:IntermediateThrowEvent:end\" | \"bpmn:IntermediateSignalThrow:start\" | \"bpmn:IntermediateSignalThrow:end\" | \"bpmn:IntermediateCompensationThrowEvent:start\" | \"bpmn:IntermediateCompensationThrowEvent:end\" | \"bpmn:IntermediateMessageThrowEvent:start\" | \"bpmn:IntermediateMessageThrowEvent:end\" | \"bpmn:IntermediateNoneThrowEvent:start\" | \"bpmn:IntermediateNoneThrowEvent:end\" | \"bpmn:IntermediateEscalationThrowEvent:start\" | \"bpmn:IntermediateEscalationThrowEvent:end\" | \"bpmn:ErrorEndEvent:start\" | \"bpmn:ErrorEndEvent:end\" | \"bpmn:CancelEndEvent:start\" | \"bpmn:CancelEndEvent:end\" | \"bpmn:TerminateEndEvent:start\" | \"bpmn:TerminateEndEvent:end\" | \"bpmn:MessageEndEvent:start\" | \"bpmn:MessageEndEvent:end\" | \"bpmn:SignalEndEvent:start\" | \"bpmn:SignalEndEvent:end\" | \"bpmn:CompensationEndEvent:start\" | \"bpmn:CompensationEndEvent:end\" | \"bpmn:EscalationEndEvent:start\" | \"bpmn:EscalationEndEvent:end\" | \"bpmn:NoneEndEvent:start\" | \"bpmn:NoneEndEvent:end\";\n\nexport type FormDisplayType = \"modal\" | \"panel\";\n\nexport type FormSizes = \"extraSmall\" | \"small\" | \"medium\" | \"large\";\n\nexport type DataType = \"text\" | \"number\" | \"date\" | \"datetime\" | \"time\" | \"boolean\" | \"bsn\";\n\nexport type FieldType = \"text_contains\" | \"single\" | \"range\" | \"single-select-dropdown\" | \"multi-select-dropdown\";\n\nexport type SearchFieldMatchType = \"like\" | \"exact\";\n\nexport type TabWidgetLayout = \"MUURI_GAP_FREE\" | \"MUURI\" | \"BEAUTIFUL\";\n\nexport type WidgetColor = \"YELLOW\" | \"ORANGE\" | \"RED\" | \"BROWN\" | \"GREEN\" | \"TURQOISE\" | \"PURPLE\" | \"PERIWINKLE\" | \"BLUE\" | \"HIGHCONTRAST\" | \"WHITE\";\n\nexport type BuildingBlockSyncTiming = \"CONTINUOUS\" | \"END\";\n\nexport type DocumentRelationType = \"PREVIOUS\" | \"NEXT\" | \"SUPPORTING\";\n\nexport type ValidationSeverity = \"ERROR\" | \"WARNING\";\n\nexport type ExpressionOperator = \"!=\" | \"==\" | \">\" | \">=\" | \"<\" | \"<=\" | \"list_contains\" | \"in\";\n\nexport type ProcessVariableDTOV2Union = StringProcessVariableDTOV2 | DateProcessVariableDTOV2 | BooleanProcessVariableDTOV2 | EnumProcessVariableDTOV2 | LongProcessVariableDTOV2 | FileUploadProcessVariableDTOV2;\n","/*\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/*\n * Public API Surface of shared\n */\n\nexport * from './lib/components/carousel/carousel.component';\nexport * from './lib/components/global-notification.component';\nexport * from './lib/config.module';\nexport * from './lib/constants';\nexport * from './lib/extension/extension.component';\nexport * from './lib/models';\nexport * from './lib/services';\nexport * from './lib/testing';\nexport * from './lib/translation';\nexport * from './lib/utils';\nexport * from './lib/zgw';\nexport * from './lib/guards';\nexport * from './lib/generated'\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1","i2.ConfigService","i1.ConfigService","i3.EnvironmentService","i4.DraftVersionService","i1.GlobalNotificationService","i2","switchMap","map"],"mappings":"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"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@valtimo/shared",
3
3
  "license": "EUPL-1.2",
4
- "version": "13.45.0",
4
+ "version": "13.45.1",
5
5
  "peerDependencies": {
6
6
  "@angular/common": "19.2.25",
7
7
  "@angular/core": "19.2.25"