@valtimo/plugin 13.49.1 → 13.50.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.
- package/fesm2022/valtimo-plugin.mjs +282 -9
- package/fesm2022/valtimo-plugin.mjs.map +1 -1
- package/lib/components/external-plugin-iframe/external-plugin-iframe.component.d.ts +31 -2
- package/lib/components/external-plugin-iframe/external-plugin-iframe.component.d.ts.map +1 -1
- package/lib/components/external-plugin-side-panel/external-plugin-side-panel.component.d.ts +29 -0
- package/lib/components/external-plugin-side-panel/external-plugin-side-panel.component.d.ts.map +1 -0
- package/lib/models/external-plugin-side-panel.model.d.ts +20 -0
- package/lib/models/external-plugin-side-panel.model.d.ts.map +1 -0
- package/lib/models/external-plugin.model.d.ts +1 -1
- package/lib/models/external-plugin.model.d.ts.map +1 -1
- package/lib/models/index.d.ts +1 -0
- package/lib/models/index.d.ts.map +1 -1
- package/lib/services/external-plugin-side-panel.service.d.ts +14 -0
- package/lib/services/external-plugin-side-panel.service.d.ts.map +1 -0
- package/lib/services/index.d.ts +1 -0
- package/lib/services/index.d.ts.map +1 -1
- package/package.json +1 -1
- package/public-api.d.ts +1 -0
- package/public-api.d.ts.map +1 -1
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
|
-
import { InjectionToken, Inject, Injectable, signal, Pipe, NgModule, EventEmitter, Output, Input, Component, ViewContainerRef, ViewChild, ChangeDetectionStrategy, ViewChildren } from '@angular/core';
|
|
3
|
-
import { BehaviorSubject, combineLatest, tap, take, Subscription, map as map$1,
|
|
2
|
+
import { InjectionToken, Inject, Injectable, signal, Pipe, NgModule, EventEmitter, Output, Input, Component, ViewContainerRef, ViewChild, ChangeDetectionStrategy, forwardRef, inject, Injector, ViewChildren } from '@angular/core';
|
|
3
|
+
import { BehaviorSubject, combineLatest, tap, take, Subscription, switchMap, map as map$1, of, defer, catchError, forkJoin, shareReplay, throwError, skip, filter, Subject } from 'rxjs';
|
|
4
4
|
import { map, tap as tap$1 } from 'rxjs/operators';
|
|
5
5
|
import * as i2 from '@ngx-translate/core';
|
|
6
6
|
import { TranslateModule } from '@ngx-translate/core';
|
|
@@ -14,8 +14,10 @@ import { RouterModule } from '@angular/router';
|
|
|
14
14
|
import * as i1$1 from '@angular/common';
|
|
15
15
|
import { CommonModule } from '@angular/common';
|
|
16
16
|
import * as i2$2 from '@valtimo/components';
|
|
17
|
-
import { ParagraphModule, FormModule, InputModule, FitPageDirective, ValuePathSelectorPrefix, SelectModule, CarbonMultiInputModule, RadioModule, InputLabelModule, CARBON_THEME,
|
|
17
|
+
import { ParagraphModule, FormModule, InputModule, CurrentCarbonTheme, SidePanelService, CdsThemeService, FitPageDirective, ValuePathSelectorPrefix, SelectModule, CarbonMultiInputModule, RadioModule, InputLabelModule, CARBON_THEME, OverflowMenuComponent, OverflowMenuOptionComponent, ReadOnlyDirective, VModalComponent, MultiInputFormModule, TooltipIconModule, ValtimoCdsModalDirective, VModalModule, DatePickerModule as DatePickerModule$1 } from '@valtimo/components';
|
|
18
18
|
import { validate } from 'uuid';
|
|
19
|
+
import * as i1$6 from '@valtimo/document';
|
|
20
|
+
import { DocumentService } from '@valtimo/document';
|
|
19
21
|
import * as i1$3 from 'carbon-components-angular';
|
|
20
22
|
import { LoadingModule, ComboBoxModule, LayerModule, NotificationModule, ToggleModule, ButtonModule, IconModule, DatePickerInputModule, DatePickerModule, TimePickerModule, ModalModule, InputModule as InputModule$1 } from 'carbon-components-angular';
|
|
21
23
|
import { AuthGuardService } from '@valtimo/security';
|
|
@@ -25,7 +27,6 @@ import * as i7 from 'carbon-components-angular/dropdown';
|
|
|
25
27
|
import flatpickr from 'flatpickr';
|
|
26
28
|
import { Add16, TrashCan16, DataTable16, Checkmark16 } from '@carbon/icons';
|
|
27
29
|
import * as i1$5 from '@valtimo/resource';
|
|
28
|
-
import * as i1$6 from '@valtimo/document';
|
|
29
30
|
import * as i4 from '@valtimo/process';
|
|
30
31
|
|
|
31
32
|
/*
|
|
@@ -769,6 +770,41 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImpo
|
|
|
769
770
|
}]
|
|
770
771
|
}], ctorParameters: () => [{ type: i1.HttpClient }, { type: i2$1.ConfigService }] });
|
|
771
772
|
|
|
773
|
+
/*
|
|
774
|
+
* Copyright 2015-2026 Ritense BV, the Netherlands.
|
|
775
|
+
*
|
|
776
|
+
* Licensed under EUPL, Version 1.2 (the "License");
|
|
777
|
+
* you may not use this file except in compliance with the License.
|
|
778
|
+
* You may obtain a copy of the License at
|
|
779
|
+
*
|
|
780
|
+
* https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
|
|
781
|
+
*
|
|
782
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
783
|
+
* distributed under the License is distributed on an "AS IS" basis,
|
|
784
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
785
|
+
* See the License for the specific language governing permissions and
|
|
786
|
+
* limitations under the License.
|
|
787
|
+
*/
|
|
788
|
+
class ExternalPluginSidePanelService extends BaseApiService {
|
|
789
|
+
constructor(httpClient, configService) {
|
|
790
|
+
super(httpClient, configService);
|
|
791
|
+
this.httpClient = httpClient;
|
|
792
|
+
this.configService = configService;
|
|
793
|
+
}
|
|
794
|
+
getSidePanel(configurationId, bundleKey) {
|
|
795
|
+
const params = bundleKey ? new HttpParams().set('bundleKey', bundleKey) : undefined;
|
|
796
|
+
return this.httpClient.get(this.getApiUrl(`/v1/external-plugin/configuration/${configurationId}/side-panel`), { params });
|
|
797
|
+
}
|
|
798
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: ExternalPluginSidePanelService, deps: [{ token: i1.HttpClient }, { token: i2$1.ConfigService }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
799
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: ExternalPluginSidePanelService, providedIn: 'root' }); }
|
|
800
|
+
}
|
|
801
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: ExternalPluginSidePanelService, decorators: [{
|
|
802
|
+
type: Injectable,
|
|
803
|
+
args: [{
|
|
804
|
+
providedIn: 'root',
|
|
805
|
+
}]
|
|
806
|
+
}], ctorParameters: () => [{ type: i1.HttpClient }, { type: i2$1.ConfigService }] });
|
|
807
|
+
|
|
772
808
|
/*
|
|
773
809
|
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
774
810
|
*
|
|
@@ -896,6 +932,22 @@ function isExternalPluginDefinitionIncompatible(definition) {
|
|
|
896
932
|
* limitations under the License.
|
|
897
933
|
*/
|
|
898
934
|
|
|
935
|
+
/*
|
|
936
|
+
* Copyright 2015-2026 Ritense BV, the Netherlands.
|
|
937
|
+
*
|
|
938
|
+
* Licensed under EUPL, Version 1.2 (the "License");
|
|
939
|
+
* you may not use this file except in compliance with the License.
|
|
940
|
+
* You may obtain a copy of the License at
|
|
941
|
+
*
|
|
942
|
+
* https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
|
|
943
|
+
*
|
|
944
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
945
|
+
* distributed under the License is distributed on an "AS IS" basis,
|
|
946
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
947
|
+
* See the License for the specific language governing permissions and
|
|
948
|
+
* limitations under the License.
|
|
949
|
+
*/
|
|
950
|
+
|
|
899
951
|
/*
|
|
900
952
|
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
901
953
|
*
|
|
@@ -1346,6 +1398,75 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImpo
|
|
|
1346
1398
|
}]
|
|
1347
1399
|
}] });
|
|
1348
1400
|
|
|
1401
|
+
/*
|
|
1402
|
+
* Copyright 2015-2026 Ritense BV, the Netherlands.
|
|
1403
|
+
*
|
|
1404
|
+
* Licensed under EUPL, Version 1.2 (the "License");
|
|
1405
|
+
* you may not use this file except in compliance with the License.
|
|
1406
|
+
* You may obtain a copy of the License at
|
|
1407
|
+
*
|
|
1408
|
+
* https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
|
|
1409
|
+
*
|
|
1410
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
1411
|
+
* distributed under the License is distributed on an "AS IS" basis,
|
|
1412
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1413
|
+
* See the License for the specific language governing permissions and
|
|
1414
|
+
* limitations under the License.
|
|
1415
|
+
*/
|
|
1416
|
+
/**
|
|
1417
|
+
* Side-panel content for an external-plugin `side-panel` bundle. Owns its own user-token session,
|
|
1418
|
+
* so the token lives exactly as long as the panel content.
|
|
1419
|
+
*/
|
|
1420
|
+
class ExternalPluginSidePanelComponent {
|
|
1421
|
+
constructor(sidePanelApiService, sessionService) {
|
|
1422
|
+
this.sidePanelApiService = sidePanelApiService;
|
|
1423
|
+
this.sessionService = sessionService;
|
|
1424
|
+
this.bundleKey = null;
|
|
1425
|
+
this.context = {};
|
|
1426
|
+
this.$iframeReady = signal(false);
|
|
1427
|
+
this.$panel = signal(null);
|
|
1428
|
+
this.$pluginDataUrl = signal(null);
|
|
1429
|
+
this.$state = signal('loading');
|
|
1430
|
+
this._subscriptions = new Subscription();
|
|
1431
|
+
}
|
|
1432
|
+
ngOnInit() {
|
|
1433
|
+
this._subscriptions.add(this.sidePanelApiService
|
|
1434
|
+
.getSidePanel(this.configurationId, this.bundleKey)
|
|
1435
|
+
.pipe(switchMap(panel => this.sessionService.startSession(panel.configurationId).pipe(map$1(() => panel))))
|
|
1436
|
+
.subscribe({
|
|
1437
|
+
next: panel => {
|
|
1438
|
+
this.$panel.set(panel);
|
|
1439
|
+
this.$pluginDataUrl.set(derivePluginDataUrl(panel.bundleUrl));
|
|
1440
|
+
this.$state.set('ready');
|
|
1441
|
+
},
|
|
1442
|
+
error: () => this.$state.set('error'),
|
|
1443
|
+
}));
|
|
1444
|
+
}
|
|
1445
|
+
ngOnDestroy() {
|
|
1446
|
+
this._subscriptions.unsubscribe();
|
|
1447
|
+
}
|
|
1448
|
+
onIframeReady() {
|
|
1449
|
+
this.$iframeReady.set(true);
|
|
1450
|
+
}
|
|
1451
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: ExternalPluginSidePanelComponent, deps: [{ token: ExternalPluginSidePanelService }, { token: ExternalPluginSessionService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
1452
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.25", type: ExternalPluginSidePanelComponent, isStandalone: true, selector: "valtimo-external-plugin-side-panel", inputs: { bundleKey: "bundleKey", configurationId: "configurationId", context: "context" }, providers: [ExternalPluginSessionService], ngImport: i0, template: "<!--\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<div class=\"external-plugin-side-panel\">\n @switch ($state()) {\n @case ('loading') {\n <div class=\"external-plugin-side-panel__status\">\n <cds-loading [isActive]=\"true\" [overlay]=\"false\" size=\"normal\"></cds-loading>\n </div>\n }\n\n @case ('error') {\n <div class=\"external-plugin-side-panel__status external-plugin-side-panel__status--error\">\n {{ 'sidePanel.loadError' | translate }}\n </div>\n }\n\n @case ('ready') {\n @if (!$iframeReady()) {\n <div class=\"external-plugin-side-panel__status\">\n <cds-loading [isActive]=\"true\" [overlay]=\"false\" size=\"normal\"></cds-loading>\n </div>\n }\n\n <valtimo-external-plugin-iframe\n [allowedEndpoints]=\"sessionService.$allowedEndpoints()\"\n [bundleUrl]=\"$panel()!.bundleUrl\"\n [configurationId]=\"$panel()!.configurationId\"\n [context]=\"context\"\n [pluginDataUrl]=\"$pluginDataUrl()\"\n [userToken]=\"sessionService.$userToken()\"\n (readyEvent)=\"onIframeReady()\"\n ></valtimo-external-plugin-iframe>\n }\n }\n</div>\n", styles: [".external-plugin-side-panel{display:flex;flex-direction:column;height:100%}.external-plugin-side-panel ::ng-deep valtimo-external-plugin-iframe{display:block;flex:1;min-height:0}.external-plugin-side-panel ::ng-deep .external-plugin-iframe{width:100%;height:100%;border:0}.external-plugin-side-panel__status{display:flex;align-items:center;justify-content:center;padding:var(--cds-spacing-07);color:var(--cds-text-secondary)}.external-plugin-side-panel__status--error{color:var(--cds-text-error)}\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"], dependencies: [{ kind: "ngmodule", type: i0.forwardRef(() => CommonModule) }, { kind: "ngmodule", type: i0.forwardRef(() => LoadingModule) }, { kind: "component", type: i0.forwardRef(() => i1$3.Loading), selector: "cds-loading, ibm-loading", inputs: ["title", "isActive", "size", "overlay"] }, { kind: "ngmodule", type: i0.forwardRef(() => TranslateModule) }, { kind: "pipe", type: i0.forwardRef(() => i2.TranslatePipe), name: "translate" }, { kind: "component", type: i0.forwardRef(() => ExternalPluginIframeComponent), selector: "valtimo-external-plugin-iframe", inputs: ["bundleUrl", "context", "prefillConfiguration", "userToken", "pluginDataUrl", "allowedEndpoints", "configurationId", "autoHeight"], outputs: ["configurationChangedEvent", "readyEvent", "taskCompletedEvent", "submitTaskEvent"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
1453
|
+
}
|
|
1454
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: ExternalPluginSidePanelComponent, decorators: [{
|
|
1455
|
+
type: Component,
|
|
1456
|
+
args: [{ standalone: true, selector: 'valtimo-external-plugin-side-panel', changeDetection: ChangeDetectionStrategy.OnPush, providers: [ExternalPluginSessionService], imports: [
|
|
1457
|
+
CommonModule,
|
|
1458
|
+
LoadingModule,
|
|
1459
|
+
TranslateModule,
|
|
1460
|
+
forwardRef(() => ExternalPluginIframeComponent),
|
|
1461
|
+
], template: "<!--\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<div class=\"external-plugin-side-panel\">\n @switch ($state()) {\n @case ('loading') {\n <div class=\"external-plugin-side-panel__status\">\n <cds-loading [isActive]=\"true\" [overlay]=\"false\" size=\"normal\"></cds-loading>\n </div>\n }\n\n @case ('error') {\n <div class=\"external-plugin-side-panel__status external-plugin-side-panel__status--error\">\n {{ 'sidePanel.loadError' | translate }}\n </div>\n }\n\n @case ('ready') {\n @if (!$iframeReady()) {\n <div class=\"external-plugin-side-panel__status\">\n <cds-loading [isActive]=\"true\" [overlay]=\"false\" size=\"normal\"></cds-loading>\n </div>\n }\n\n <valtimo-external-plugin-iframe\n [allowedEndpoints]=\"sessionService.$allowedEndpoints()\"\n [bundleUrl]=\"$panel()!.bundleUrl\"\n [configurationId]=\"$panel()!.configurationId\"\n [context]=\"context\"\n [pluginDataUrl]=\"$pluginDataUrl()\"\n [userToken]=\"sessionService.$userToken()\"\n (readyEvent)=\"onIframeReady()\"\n ></valtimo-external-plugin-iframe>\n }\n }\n</div>\n", styles: [".external-plugin-side-panel{display:flex;flex-direction:column;height:100%}.external-plugin-side-panel ::ng-deep valtimo-external-plugin-iframe{display:block;flex:1;min-height:0}.external-plugin-side-panel ::ng-deep .external-plugin-iframe{width:100%;height:100%;border:0}.external-plugin-side-panel__status{display:flex;align-items:center;justify-content:center;padding:var(--cds-spacing-07);color:var(--cds-text-secondary)}.external-plugin-side-panel__status--error{color:var(--cds-text-error)}\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"] }]
|
|
1462
|
+
}], ctorParameters: () => [{ type: ExternalPluginSidePanelService }, { type: ExternalPluginSessionService }], propDecorators: { bundleKey: [{
|
|
1463
|
+
type: Input
|
|
1464
|
+
}], configurationId: [{
|
|
1465
|
+
type: Input
|
|
1466
|
+
}], context: [{
|
|
1467
|
+
type: Input
|
|
1468
|
+
}] } });
|
|
1469
|
+
|
|
1349
1470
|
/*
|
|
1350
1471
|
* Copyright 2015-2026 Ritense BV, the Netherlands.
|
|
1351
1472
|
*
|
|
@@ -1367,11 +1488,19 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImpo
|
|
|
1367
1488
|
* scroll.
|
|
1368
1489
|
*/
|
|
1369
1490
|
const MAX_IFRAME_HEIGHT = 20000;
|
|
1491
|
+
const MAX_PANEL_TEXT_LENGTH = 200;
|
|
1492
|
+
/** Context keys that name the case; only GZAC's surface context may set them. */
|
|
1493
|
+
const CASE_CONTEXT_KEYS = ['documentId', 'caseDefinitionKey'];
|
|
1370
1494
|
class ExternalPluginIframeComponent {
|
|
1371
|
-
constructor(_sanitizer, _translateService, _configService
|
|
1495
|
+
constructor(_sanitizer, _translateService, _configService,
|
|
1496
|
+
// Defaults keep subclasses that call super() with the original three arguments working.
|
|
1497
|
+
_sidePanelService = inject(SidePanelService), _cdsThemeService = inject(CdsThemeService), _injector = inject(Injector)) {
|
|
1372
1498
|
this._sanitizer = _sanitizer;
|
|
1373
1499
|
this._translateService = _translateService;
|
|
1374
1500
|
this._configService = _configService;
|
|
1501
|
+
this._sidePanelService = _sidePanelService;
|
|
1502
|
+
this._cdsThemeService = _cdsThemeService;
|
|
1503
|
+
this._injector = _injector;
|
|
1375
1504
|
this.context = {};
|
|
1376
1505
|
this.prefillConfiguration = null;
|
|
1377
1506
|
/**
|
|
@@ -1407,6 +1536,10 @@ class ExternalPluginIframeComponent {
|
|
|
1407
1536
|
this.submitTaskEvent = new EventEmitter();
|
|
1408
1537
|
this.$trustedUrl = signal(null);
|
|
1409
1538
|
this._onMessageBound = this._onMessage.bind(this);
|
|
1539
|
+
this._subscriptions = new Subscription();
|
|
1540
|
+
/** Offers waiting for their case to resolve, by key without the case. */
|
|
1541
|
+
this._pendingPanelOffers = new Map();
|
|
1542
|
+
this._theme = CurrentCarbonTheme.WHITE;
|
|
1410
1543
|
this._apiBasePath = this._deriveApiBasePath();
|
|
1411
1544
|
}
|
|
1412
1545
|
ngOnInit() {
|
|
@@ -1416,9 +1549,16 @@ class ExternalPluginIframeComponent {
|
|
|
1416
1549
|
this.$trustedUrl.set(this._sanitizer.bypassSecurityTrustResourceUrl(this.bundleUrl));
|
|
1417
1550
|
}
|
|
1418
1551
|
window.addEventListener('message', this._onMessageBound);
|
|
1552
|
+
this._subscriptions.add(this._cdsThemeService.currentTheme$.subscribe(theme => {
|
|
1553
|
+
const changed = theme !== this._theme;
|
|
1554
|
+
this._theme = theme;
|
|
1555
|
+
if (changed)
|
|
1556
|
+
this._postToIframe('themeChanged', { theme });
|
|
1557
|
+
}));
|
|
1419
1558
|
}
|
|
1420
1559
|
ngOnDestroy() {
|
|
1421
1560
|
window.removeEventListener('message', this._onMessageBound);
|
|
1561
|
+
this._subscriptions.unsubscribe();
|
|
1422
1562
|
}
|
|
1423
1563
|
triggerSave() {
|
|
1424
1564
|
this._postToIframe('save', {});
|
|
@@ -1439,7 +1579,7 @@ class ExternalPluginIframeComponent {
|
|
|
1439
1579
|
onIframeLoad() {
|
|
1440
1580
|
this._postToIframe('init', {
|
|
1441
1581
|
context: this.context,
|
|
1442
|
-
theme:
|
|
1582
|
+
theme: this._theme,
|
|
1443
1583
|
locale: this._translateService.currentLang ?? this._translateService.defaultLang ?? 'en',
|
|
1444
1584
|
});
|
|
1445
1585
|
}
|
|
@@ -1483,7 +1623,140 @@ class ExternalPluginIframeComponent {
|
|
|
1483
1623
|
case 'proxyRequest':
|
|
1484
1624
|
void this._handleProxyRequest(data.payload);
|
|
1485
1625
|
break;
|
|
1626
|
+
case 'offerPanel':
|
|
1627
|
+
this._offerPanel(data.payload);
|
|
1628
|
+
break;
|
|
1629
|
+
case 'withdrawPanel':
|
|
1630
|
+
this._withdrawPanel(data.payload);
|
|
1631
|
+
break;
|
|
1632
|
+
}
|
|
1633
|
+
}
|
|
1634
|
+
/**
|
|
1635
|
+
* Offers one of this configuration's own `side-panel` bundles to the app-wide side panel. The
|
|
1636
|
+
* bundle URL is resolved by GZAC, never taken from the iframe. This surface's context is trusted
|
|
1637
|
+
* and overrides same-named keys in the plugin-supplied context; the keys naming the case are
|
|
1638
|
+
* GZAC's alone.
|
|
1639
|
+
*/
|
|
1640
|
+
_offerPanel(payload) {
|
|
1641
|
+
const offer = this._parsePanelOffer(payload);
|
|
1642
|
+
if (!offer || !this.configurationId)
|
|
1643
|
+
return;
|
|
1644
|
+
const configurationId = this.configurationId;
|
|
1645
|
+
const documentId = this._contextString('documentId');
|
|
1646
|
+
// Per case: the same key offered for another case gets a fresh iframe with that case's context.
|
|
1647
|
+
const key = `${this._panelKeyBase(offer.bundleKey, offer.key)}:${encodeURIComponent(documentId ?? '')}`;
|
|
1648
|
+
const pluginContext = Object.fromEntries(Object.entries(offer.context ?? {}).filter(([name]) => !CASE_CONTEXT_KEYS.includes(name)));
|
|
1649
|
+
this._cancelPendingPanelOffer(offer.bundleKey, offer.key);
|
|
1650
|
+
const subscription = this._caseOrigin(documentId).subscribe(origin => {
|
|
1651
|
+
this._pendingPanelOffers.delete(this._panelKeyBase(offer.bundleKey, offer.key));
|
|
1652
|
+
this._sidePanelService.offer({
|
|
1653
|
+
key,
|
|
1654
|
+
title: offer.title,
|
|
1655
|
+
subtitle: offer.subtitle,
|
|
1656
|
+
// Named by GZAC, never by the plugin, so the user can trust which case it is for.
|
|
1657
|
+
origin,
|
|
1658
|
+
pinned: offer.pinned,
|
|
1659
|
+
component: ExternalPluginSidePanelComponent,
|
|
1660
|
+
inputs: {
|
|
1661
|
+
bundleKey: offer.bundleKey ?? null,
|
|
1662
|
+
configurationId,
|
|
1663
|
+
context: { ...pluginContext, ...this.context },
|
|
1664
|
+
},
|
|
1665
|
+
});
|
|
1666
|
+
});
|
|
1667
|
+
if (!subscription.closed) {
|
|
1668
|
+
this._pendingPanelOffers.set(this._panelKeyBase(offer.bundleKey, offer.key), subscription);
|
|
1669
|
+
}
|
|
1670
|
+
}
|
|
1671
|
+
/**
|
|
1672
|
+
* Withdraws the panel only when it still shows this configuration's content under that key, for
|
|
1673
|
+
* whichever case it was offered.
|
|
1674
|
+
*/
|
|
1675
|
+
_withdrawPanel(payload) {
|
|
1676
|
+
const { bundleKey, key } = (payload ?? {});
|
|
1677
|
+
if (!this.configurationId || !this._isPanelText(key))
|
|
1678
|
+
return;
|
|
1679
|
+
if (bundleKey !== undefined && !this._isPanelText(bundleKey))
|
|
1680
|
+
return;
|
|
1681
|
+
this._cancelPendingPanelOffer(bundleKey, key);
|
|
1682
|
+
const keyBase = `${this._panelKeyBase(bundleKey, key)}:`;
|
|
1683
|
+
this._sidePanelService.current$.pipe(take(1)).subscribe(current => {
|
|
1684
|
+
if (current?.key.startsWith(keyBase))
|
|
1685
|
+
this._sidePanelService.withdraw(current.key);
|
|
1686
|
+
});
|
|
1687
|
+
}
|
|
1688
|
+
_cancelPendingPanelOffer(bundleKey, key) {
|
|
1689
|
+
const keyBase = this._panelKeyBase(bundleKey, key);
|
|
1690
|
+
this._pendingPanelOffers.get(keyBase)?.unsubscribe();
|
|
1691
|
+
this._pendingPanelOffers.delete(keyBase);
|
|
1692
|
+
}
|
|
1693
|
+
/** Synchronous when the surface names the case; a task form only knows its document. */
|
|
1694
|
+
_caseOrigin(documentId) {
|
|
1695
|
+
if (!documentId)
|
|
1696
|
+
return of(undefined);
|
|
1697
|
+
const caseDefinitionKey = this._contextString('caseDefinitionKey');
|
|
1698
|
+
const caseDefinitionKey$ = caseDefinitionKey
|
|
1699
|
+
? of(caseDefinitionKey)
|
|
1700
|
+
: defer(() => this._injector.get(DocumentService).getDocument(documentId)).pipe(map$1(document => document?.definitionId?.name || null), catchError(() => of(null)));
|
|
1701
|
+
return caseDefinitionKey$.pipe(map$1(definitionKey => definitionKey
|
|
1702
|
+
? {
|
|
1703
|
+
route: ['/cases', definitionKey, 'document', documentId],
|
|
1704
|
+
label: this._caseLabel(definitionKey, documentId),
|
|
1705
|
+
}
|
|
1706
|
+
: undefined));
|
|
1707
|
+
}
|
|
1708
|
+
/** E.g. "Inwonerplan #12". Resolved only once shown. */
|
|
1709
|
+
_caseLabel(caseDefinitionKey, documentId) {
|
|
1710
|
+
return defer(() => {
|
|
1711
|
+
const documentService = this._injector.get(DocumentService);
|
|
1712
|
+
return forkJoin({
|
|
1713
|
+
caseDefinition: documentService
|
|
1714
|
+
.getActiveCaseDefinition(caseDefinitionKey)
|
|
1715
|
+
.pipe(catchError(() => of(null))),
|
|
1716
|
+
documentDefinition: documentService
|
|
1717
|
+
.getDocumentDefinition(caseDefinitionKey)
|
|
1718
|
+
.pipe(catchError(() => of(null))),
|
|
1719
|
+
document: documentService.getDocument(documentId).pipe(catchError(() => of(null))),
|
|
1720
|
+
});
|
|
1721
|
+
}).pipe(map$1(({ caseDefinition, documentDefinition, document }) => {
|
|
1722
|
+
const name = caseDefinition?.name || documentDefinition?.schema?.title || caseDefinitionKey;
|
|
1723
|
+
return document?.sequence ? `${name} #${document.sequence}` : name;
|
|
1724
|
+
}), shareReplay({ bufferSize: 1, refCount: false }));
|
|
1725
|
+
}
|
|
1726
|
+
_contextString(name) {
|
|
1727
|
+
const value = this.context?.[name];
|
|
1728
|
+
return typeof value === 'string' && value ? value : null;
|
|
1729
|
+
}
|
|
1730
|
+
_isPanelText(value) {
|
|
1731
|
+
return typeof value === 'string' && value.length > 0 && value.length <= MAX_PANEL_TEXT_LENGTH;
|
|
1732
|
+
}
|
|
1733
|
+
_panelKeyBase(bundleKey, key) {
|
|
1734
|
+
return `external-plugin:${this.configurationId}:${encodeURIComponent(bundleKey ?? '')}:${encodeURIComponent(key)}`;
|
|
1735
|
+
}
|
|
1736
|
+
_parsePanelOffer(payload) {
|
|
1737
|
+
if (!payload || typeof payload !== 'object')
|
|
1738
|
+
return null;
|
|
1739
|
+
const { bundleKey, key, title, subtitle, pinned, context } = payload;
|
|
1740
|
+
if (!this._isPanelText(key) || !this._isPanelText(title))
|
|
1741
|
+
return null;
|
|
1742
|
+
if (bundleKey !== undefined && !this._isPanelText(bundleKey))
|
|
1743
|
+
return null;
|
|
1744
|
+
if (subtitle !== undefined && !this._isPanelText(subtitle))
|
|
1745
|
+
return null;
|
|
1746
|
+
if (pinned !== undefined && typeof pinned !== 'boolean')
|
|
1747
|
+
return null;
|
|
1748
|
+
if (context !== undefined &&
|
|
1749
|
+
(!context || typeof context !== 'object' || Array.isArray(context))) {
|
|
1750
|
+
return null;
|
|
1486
1751
|
}
|
|
1752
|
+
return {
|
|
1753
|
+
bundleKey: bundleKey,
|
|
1754
|
+
key,
|
|
1755
|
+
title,
|
|
1756
|
+
subtitle: subtitle,
|
|
1757
|
+
pinned: pinned,
|
|
1758
|
+
context: context,
|
|
1759
|
+
};
|
|
1487
1760
|
}
|
|
1488
1761
|
/**
|
|
1489
1762
|
* Size the iframe to the height its content reported. The iframe is at an opaque origin, so this
|
|
@@ -1663,13 +1936,13 @@ class ExternalPluginIframeComponent {
|
|
|
1663
1936
|
.replace(/§§/g, '.*');
|
|
1664
1937
|
return new RegExp(`^${regex}$`).test(pathname);
|
|
1665
1938
|
}
|
|
1666
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: ExternalPluginIframeComponent, deps: [{ token: i3.DomSanitizer }, { token: i2.TranslateService }, { token: i2$1.ConfigService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
1939
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: ExternalPluginIframeComponent, deps: [{ token: i3.DomSanitizer }, { token: i2.TranslateService }, { token: i2$1.ConfigService }, { token: i2$2.SidePanelService }, { token: i2$2.CdsThemeService }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
1667
1940
|
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.25", type: ExternalPluginIframeComponent, isStandalone: true, selector: "valtimo-external-plugin-iframe", inputs: { bundleUrl: "bundleUrl", context: "context", prefillConfiguration: "prefillConfiguration", userToken: "userToken", pluginDataUrl: "pluginDataUrl", allowedEndpoints: "allowedEndpoints", configurationId: "configurationId", autoHeight: "autoHeight" }, outputs: { configurationChangedEvent: "configurationChangedEvent", readyEvent: "readyEvent", taskCompletedEvent: "taskCompletedEvent", submitTaskEvent: "submitTaskEvent" }, viewQueries: [{ propertyName: "iframeRef", first: true, predicate: ["pluginIframe"], descendants: true }], ngImport: i0, template: "<!--\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<!--\n sandbox is deliberately WITHOUT allow-same-origin (opaque origin, no access to the GZAC session\n or token \u2014 see the parent-proxy model). `allow-forms` lets a plugin use an idiomatic <form> to\n submit (e.g. a task-form): without it the browser blocks the submit event before the plugin's\n handler can forward it via postMessage. It grants nothing beyond what allow-scripts already can\n (a script can already POST via fetch), and does not weaken origin isolation.\n-->\n<iframe\n *ngIf=\"$trustedUrl() as url\"\n #pluginIframe\n [src]=\"url\"\n (load)=\"onIframeLoad()\"\n sandbox=\"allow-scripts allow-forms\"\n class=\"external-plugin-iframe\"\n></iframe>\n", styles: [":host{display:block;height:100%}.external-plugin-iframe{display:block;width:100%;height:100%;border:none}\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"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
1668
1941
|
}
|
|
1669
1942
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: ExternalPluginIframeComponent, decorators: [{
|
|
1670
1943
|
type: Component,
|
|
1671
1944
|
args: [{ standalone: true, selector: 'valtimo-external-plugin-iframe', changeDetection: ChangeDetectionStrategy.OnPush, imports: [CommonModule], template: "<!--\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<!--\n sandbox is deliberately WITHOUT allow-same-origin (opaque origin, no access to the GZAC session\n or token \u2014 see the parent-proxy model). `allow-forms` lets a plugin use an idiomatic <form> to\n submit (e.g. a task-form): without it the browser blocks the submit event before the plugin's\n handler can forward it via postMessage. It grants nothing beyond what allow-scripts already can\n (a script can already POST via fetch), and does not weaken origin isolation.\n-->\n<iframe\n *ngIf=\"$trustedUrl() as url\"\n #pluginIframe\n [src]=\"url\"\n (load)=\"onIframeLoad()\"\n sandbox=\"allow-scripts allow-forms\"\n class=\"external-plugin-iframe\"\n></iframe>\n", styles: [":host{display:block;height:100%}.external-plugin-iframe{display:block;width:100%;height:100%;border:none}\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"] }]
|
|
1672
|
-
}], ctorParameters: () => [{ type: i3.DomSanitizer }, { type: i2.TranslateService }, { type: i2$1.ConfigService }], propDecorators: { iframeRef: [{
|
|
1945
|
+
}], ctorParameters: () => [{ type: i3.DomSanitizer }, { type: i2.TranslateService }, { type: i2$1.ConfigService }, { type: i2$2.SidePanelService }, { type: i2$2.CdsThemeService }, { type: i0.Injector }], propDecorators: { iframeRef: [{
|
|
1673
1946
|
type: ViewChild,
|
|
1674
1947
|
args: ['pluginIframe']
|
|
1675
1948
|
}], bundleUrl: [{
|
|
@@ -12895,5 +13168,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImpo
|
|
|
12895
13168
|
* Generated bundle index. Do not edit.
|
|
12896
13169
|
*/
|
|
12897
13170
|
|
|
12898
|
-
export { AddDocumentTrefwoordConfigurationComponent, BESLUITEN_API_CONFIGURATION_TEST_IDS, BesluitenApiConfigurationComponent, BesluitenApiPluginModule, CATALOGI_API_CONFIGURATION_TEST_IDS, CatalogiApiConfigurationComponent, CatalogiApiPluginModule, CompletePortalTaskComponent, CreateMedewerkerZaakRolComponent, CreateNatuurlijkPersoonZaakRolComponent, CreateNietNatuurlijkPersoonZaakRolComponent, CreateOrganisatorischeEenheidZaakRolComponent, CreatePersoonComponent, CreatePortalTaskComponent, CreateVestigingZaakRolComponent, CreateZaakBesluitConfigurationComponent, CreateZaakConfigurationComponent, CreateZaakNotitieConfigurationComponent, CreateZaakObjectConfigurationComponent, CreateZaakResultaatConfigurationComponent, CreateZaakeigenschapComponent, DEFAULT_PLUGIN_CONFIGURATION_TEST_IDS, DOCUMENTEN_API_CONFIGURATION_TEST_IDS, DeleteDocumentLinkConfigurationComponent, DeleteObjectComponent, DeleteZaakResultatenConfigurationComponent, DeleteZaakRolComponent, DeleteZaakeigenschapComponent, DocumentenApiConfigurationComponent, DocumentenApiPluginModule, DocumentenApiPreviewConfigurationComponent, DocumentenApiPreviewPluginModule, DownloadDocumentConfigurationComponent, EXTERNAL_PLUGIN_KEY_PREFIX, EndHersteltermijnComponent, ExactPluginModule, ExternalPluginIframeComponent, ExternalPluginPageComponent, ExternalPluginPageRoutingModule, ExternalPluginPageService, ExternalPluginService, ExternalPluginSessionService, ExternalPluginTaskFormSubmissionService, ExternalPluginUserTokenService, GenerateDocumentConfigurationComponent, GetAuditTrailConfigurationComponent, GetBesluitConfigurationComponent, GetBesluittypeConfigurationComponent, GetEigenschapConfigurationComponent, GetInformatieobjecttypeConfigurationComponent, GetInformatieobjecttypenConfigurationComponent, GetResultaattypeConfigurationComponent, GetResultaattypenConfigurationComponent, GetRoltypeConfigurationComponent, GetRoltypenConfigurationComponent, GetStatustypeConfigurationComponent, GetStatustypenConfigurationComponent, GetTemplateNamesComponent, GetZaakInformatieobjectenComponent, GetZaakbesluitenConfigurationComponent, KLANTINTERACTIES_API_CONFIGURATION_TEST_IDS, KlantinteractiesApiConfigurationComponent, KlantinteractiesApiPluginModule, LinkDocumentToBesluitConfigurationComponent, LinkDocumentToObjectConfigurationComponent, LinkDocumentToZaakConfigurationComponent, LinkUploadedDocumentToZaakConfigurationComponent, NOTIFICATIES_API_CONFIGURATION_TEST_IDS, NotificatiesApiConfigurationComponent, NotificatiesApiPluginModule, OBJECTEN_API_CONFIGURATION_TEST_IDS, OBJECTTYPEN_API_CONFIGURATION_TEST_IDS, OBJECT_TOKEN_AUTHENTICATION_CONFIGURATION_TEST_IDS, OPEN_KLANT_TOKEN_AUTHENTICATION_CONFIGURATION_TEST_IDS, OPEN_NOTIFICATIES_CONFIGURATION_TEST_IDS, OPEN_ZAAK_CONFIGURATION_TEST_IDS, ObjectTokenAuthencationConfigurationComponent, ObjectTokenAuthenticationPluginModule, ObjectenApiConfigurationComponent, ObjectenApiPluginModule, ObjecttypenApiConfigurationComponent, ObjecttypenApiPluginModule, OpenKlantTokenAuthenticationConfigurationComponent, OpenKlantTokenAuthenticationPluginModule, OpenNotificatiesConfigurationComponent, OpenNotificatiesPluginModule, OpenZaakConfigurationComponent, OpenZaakPluginModule, PLUGINS_TOKEN, PLUGIN_CATALOG_TEST_IDS, PLUGIN_EDIT_MODAL_TEST_IDS, PORTAALTAAK_CONFIGURATION_TEST_IDS, PatchZaakBesluitConfigurationComponent, PatchZaakConfigurationComponent, PatchZaakNotitieConfigurationComponent, PluginConfigurationContainerComponent, PluginConfigurationContainerModule, PluginConfigurationMappingComponent, PluginManagementService, PluginService, PluginTranslatePipe, PluginTranslatePipeModule, PluginTranslationService, PortaaltaakConfigurationComponent, PortaaltaakPluginModule, PublishNotificatieConfigurationComponent, ReceiveNotificatieConfigurationComponent, RelateerZakenComponent, SMART_DOCUMENTS_CONFIGURATION_TEST_IDS, SetZaakStatusConfigurationComponent, SetZaakopschortingComponent, SmartDocumentsConfigurationComponent, SmartDocumentsPluginModule, StartHersteltermijnConfigurationComponent, StoreTempDocumentConfigurationComponent, StoreUploadedDocumentConfigurationComponent, StoreUploadedDocumentInPartsConfigurationComponent, UpdateZaakeigenschapComponent, VERZOEK_CONFIGURATION_TEST_IDS, VerzoekConfigurationComponent, VerzoekPluginModule, ZAKEN_API_CONFIGURATION_TEST_IDS, ZAKEN_API_CREATE_ZAAK_ACTION_TEST_IDS, ZakenApiConfigurationComponent, ZakenApiPluginModule, besluitenApiPluginSpecification, catalogiApiPluginSpecification, derivePluginDataUrl, documentenApiPluginSpecification, documentenApiPreviewPluginSpecification, exactPluginSpecification, extractExternalDefinitionId, getExternalPluginDescription, getExternalPluginDisplayName, getExternalPluginName, isExternalPluginDefinitionIncompatible, isExternalPluginKey, klantinteractiesApiPluginSpecification, notificatiesApiPluginSpecification, objectTokenAuthenticationPluginSpecification, objectenApiPluginSpecification, objecttypenApiPluginSpecification, openKlantTokenAuthenticationPluginSpecification, openNotificatiesPluginSpecification, openZaakPluginSpecification, portaaltaakPluginSpecification, smartDocumentsPluginSpecification, toExternalPluginKey, verzoekPluginSpecification, zakenApiPluginSpecification };
|
|
13171
|
+
export { AddDocumentTrefwoordConfigurationComponent, BESLUITEN_API_CONFIGURATION_TEST_IDS, BesluitenApiConfigurationComponent, BesluitenApiPluginModule, CATALOGI_API_CONFIGURATION_TEST_IDS, CatalogiApiConfigurationComponent, CatalogiApiPluginModule, CompletePortalTaskComponent, CreateMedewerkerZaakRolComponent, CreateNatuurlijkPersoonZaakRolComponent, CreateNietNatuurlijkPersoonZaakRolComponent, CreateOrganisatorischeEenheidZaakRolComponent, CreatePersoonComponent, CreatePortalTaskComponent, CreateVestigingZaakRolComponent, CreateZaakBesluitConfigurationComponent, CreateZaakConfigurationComponent, CreateZaakNotitieConfigurationComponent, CreateZaakObjectConfigurationComponent, CreateZaakResultaatConfigurationComponent, CreateZaakeigenschapComponent, DEFAULT_PLUGIN_CONFIGURATION_TEST_IDS, DOCUMENTEN_API_CONFIGURATION_TEST_IDS, DeleteDocumentLinkConfigurationComponent, DeleteObjectComponent, DeleteZaakResultatenConfigurationComponent, DeleteZaakRolComponent, DeleteZaakeigenschapComponent, DocumentenApiConfigurationComponent, DocumentenApiPluginModule, DocumentenApiPreviewConfigurationComponent, DocumentenApiPreviewPluginModule, DownloadDocumentConfigurationComponent, EXTERNAL_PLUGIN_KEY_PREFIX, EndHersteltermijnComponent, ExactPluginModule, ExternalPluginIframeComponent, ExternalPluginPageComponent, ExternalPluginPageRoutingModule, ExternalPluginPageService, ExternalPluginService, ExternalPluginSessionService, ExternalPluginSidePanelComponent, ExternalPluginSidePanelService, ExternalPluginTaskFormSubmissionService, ExternalPluginUserTokenService, GenerateDocumentConfigurationComponent, GetAuditTrailConfigurationComponent, GetBesluitConfigurationComponent, GetBesluittypeConfigurationComponent, GetEigenschapConfigurationComponent, GetInformatieobjecttypeConfigurationComponent, GetInformatieobjecttypenConfigurationComponent, GetResultaattypeConfigurationComponent, GetResultaattypenConfigurationComponent, GetRoltypeConfigurationComponent, GetRoltypenConfigurationComponent, GetStatustypeConfigurationComponent, GetStatustypenConfigurationComponent, GetTemplateNamesComponent, GetZaakInformatieobjectenComponent, GetZaakbesluitenConfigurationComponent, KLANTINTERACTIES_API_CONFIGURATION_TEST_IDS, KlantinteractiesApiConfigurationComponent, KlantinteractiesApiPluginModule, LinkDocumentToBesluitConfigurationComponent, LinkDocumentToObjectConfigurationComponent, LinkDocumentToZaakConfigurationComponent, LinkUploadedDocumentToZaakConfigurationComponent, NOTIFICATIES_API_CONFIGURATION_TEST_IDS, NotificatiesApiConfigurationComponent, NotificatiesApiPluginModule, OBJECTEN_API_CONFIGURATION_TEST_IDS, OBJECTTYPEN_API_CONFIGURATION_TEST_IDS, OBJECT_TOKEN_AUTHENTICATION_CONFIGURATION_TEST_IDS, OPEN_KLANT_TOKEN_AUTHENTICATION_CONFIGURATION_TEST_IDS, OPEN_NOTIFICATIES_CONFIGURATION_TEST_IDS, OPEN_ZAAK_CONFIGURATION_TEST_IDS, ObjectTokenAuthencationConfigurationComponent, ObjectTokenAuthenticationPluginModule, ObjectenApiConfigurationComponent, ObjectenApiPluginModule, ObjecttypenApiConfigurationComponent, ObjecttypenApiPluginModule, OpenKlantTokenAuthenticationConfigurationComponent, OpenKlantTokenAuthenticationPluginModule, OpenNotificatiesConfigurationComponent, OpenNotificatiesPluginModule, OpenZaakConfigurationComponent, OpenZaakPluginModule, PLUGINS_TOKEN, PLUGIN_CATALOG_TEST_IDS, PLUGIN_EDIT_MODAL_TEST_IDS, PORTAALTAAK_CONFIGURATION_TEST_IDS, PatchZaakBesluitConfigurationComponent, PatchZaakConfigurationComponent, PatchZaakNotitieConfigurationComponent, PluginConfigurationContainerComponent, PluginConfigurationContainerModule, PluginConfigurationMappingComponent, PluginManagementService, PluginService, PluginTranslatePipe, PluginTranslatePipeModule, PluginTranslationService, PortaaltaakConfigurationComponent, PortaaltaakPluginModule, PublishNotificatieConfigurationComponent, ReceiveNotificatieConfigurationComponent, RelateerZakenComponent, SMART_DOCUMENTS_CONFIGURATION_TEST_IDS, SetZaakStatusConfigurationComponent, SetZaakopschortingComponent, SmartDocumentsConfigurationComponent, SmartDocumentsPluginModule, StartHersteltermijnConfigurationComponent, StoreTempDocumentConfigurationComponent, StoreUploadedDocumentConfigurationComponent, StoreUploadedDocumentInPartsConfigurationComponent, UpdateZaakeigenschapComponent, VERZOEK_CONFIGURATION_TEST_IDS, VerzoekConfigurationComponent, VerzoekPluginModule, ZAKEN_API_CONFIGURATION_TEST_IDS, ZAKEN_API_CREATE_ZAAK_ACTION_TEST_IDS, ZakenApiConfigurationComponent, ZakenApiPluginModule, besluitenApiPluginSpecification, catalogiApiPluginSpecification, derivePluginDataUrl, documentenApiPluginSpecification, documentenApiPreviewPluginSpecification, exactPluginSpecification, extractExternalDefinitionId, getExternalPluginDescription, getExternalPluginDisplayName, getExternalPluginName, isExternalPluginDefinitionIncompatible, isExternalPluginKey, klantinteractiesApiPluginSpecification, notificatiesApiPluginSpecification, objectTokenAuthenticationPluginSpecification, objectenApiPluginSpecification, objecttypenApiPluginSpecification, openKlantTokenAuthenticationPluginSpecification, openNotificatiesPluginSpecification, openZaakPluginSpecification, portaaltaakPluginSpecification, smartDocumentsPluginSpecification, toExternalPluginKey, verzoekPluginSpecification, zakenApiPluginSpecification };
|
|
12899
13172
|
//# sourceMappingURL=valtimo-plugin.mjs.map
|