@valtimo/plugin-management 13.11.0 → 13.13.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -184,10 +184,10 @@ class PluginManagementStateService {
184
184
  this.clearSelectedPluginDefinition();
185
185
  this.clearSelectedPluginConfiguration();
186
186
  }
187
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: PluginManagementStateService, deps: [{ token: i2.PluginService }, { token: i2$1.DomSanitizer }], target: i0.ɵɵFactoryTarget.Injectable }); }
188
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: PluginManagementStateService, providedIn: 'root' }); }
187
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: PluginManagementStateService, deps: [{ token: i2.PluginService }, { token: i2$1.DomSanitizer }], target: i0.ɵɵFactoryTarget.Injectable }); }
188
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: PluginManagementStateService, providedIn: 'root' }); }
189
189
  }
190
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: PluginManagementStateService, decorators: [{
190
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: PluginManagementStateService, decorators: [{
191
191
  type: Injectable,
192
192
  args: [{
193
193
  providedIn: 'root',
@@ -259,10 +259,10 @@ class PluginAddSelectComponent {
259
259
  this.stateService.clearSelectedPluginDefinition();
260
260
  });
261
261
  }
262
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: PluginAddSelectComponent, deps: [{ token: i2.PluginManagementService }, { token: PluginManagementStateService }], target: i0.ɵɵFactoryTarget.Component }); }
263
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.17", type: PluginAddSelectComponent, isStandalone: false, selector: "valtimo-plugin-add-select", ngImport: i0, template: "<!--\n ~ Copyright 2015-2025 Ritense BV, the Netherlands.\n ~\n ~ Licensed under EUPL, Version 1.2 (the \"License\");\n ~ you may not use this file except in compliance with the License.\n ~ You may obtain a copy of the License at\n ~\n ~ https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n ~\n ~ Unless required by applicable law or agreed to in writing, software\n ~ distributed under the License is distributed on an \"AS IS\" basis,\n ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n ~ See the License for the specific language governing permissions and\n ~ limitations under the License.\n -->\n\n<ng-container *ngIf=\"pluginDefinitionsWithLogos$ | async as pluginDefinitions; else loading\">\n <div class=\"plugin-definition__grid\">\n <ng-container\n *ngTemplateOutlet=\"pluginDefinitionsTemplate; context: {pluginDefinitions: pluginDefinitions}\"\n ></ng-container>\n <ng-container\n *ngTemplateOutlet=\"\n noPluginDefinitionsTemplate;\n context: {pluginDefinitions: pluginDefinitions}\n \"\n ></ng-container>\n </div>\n</ng-container>\n\n<ng-template #noPluginDefinitionsTemplate let-pluginDefinitions=\"pluginDefinitions\">\n <div *ngIf=\"pluginDefinitions?.length === 0\" class=\"plugin-definition__no-results\">\n <v-paragraph [center]=\"true\" [fullWidth]=\"true\">{{\n 'pluginManagement.noDefinitions' | translate\n }}</v-paragraph>\n </div>\n</ng-template>\n\n<ng-template #pluginDefinitionsTemplate let-pluginDefinitions=\"pluginDefinitions\">\n <cds-tile-group [multiple]=\"false\" (selected)=\"selectPluginDefinition($event)\" [cdsLayer]=\"1\">\n <cds-selection-tile\n *ngFor=\"let pluginDefinition of pluginDefinitions\"\n [value]=\"pluginDefinition\"\n [selected]=\"(selectedPluginDefinition$ | async)?.key === pluginDefinition.key\"\n >\n <img\n class=\"plugin-definition-logo\"\n [title]=\"'title' | pluginTranslate: pluginDefinition.key | async\"\n [src]=\"pluginDefinition.pluginLogoBase64\"\n />\n\n <h5>{{ 'title' | pluginTranslate: pluginDefinition.key | async }}</h5>\n\n <p>{{ 'description' | pluginTranslate: pluginDefinition.key | async }}</p>\n </cds-selection-tile>\n </cds-tile-group>\n</ng-template>\n\n<ng-template #loading>\n <div class=\"plugin-definition__grid\">\n <ng-container *ngTemplateOutlet=\"loadingCard\"></ng-container>\n <ng-container *ngTemplateOutlet=\"loadingCard\"></ng-container>\n <ng-container *ngTemplateOutlet=\"loadingCard\"></ng-container>\n </div>\n</ng-template>\n\n<ng-template #loadingCard>\n <div class=\"plugin-definition__item\">\n <cds-loading size=\"sm\"></cds-loading>\n </div>\n</ng-template>\n", styles: [".btn-back{position:absolute}.cards-container{display:flex;flex-flow:row wrap;width:100%}.card{width:calc(33.3% - 20px);margin-right:30px}.card:nth-child(3n+3){margin-right:0}.card-header{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.plugin-definition-logo{object-fit:contain;height:60px;width:100%}.plugin-definition__grid{flex-flow:wrap;box-sizing:border-box;display:flex;margin:0 -22px -22px 0}.plugin-definition__item{flex:1 1 33.3%;box-sizing:border-box;max-width:33.3%;padding:0 22px 22px 0}.plugin-definition__no-results{box-sizing:border-box;flex:1 1 100%;padding:0 22px 22px 0}:host ::ng-deep fieldset{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;width:calc(100% - 24px)}:host ::ng-deep .cds--tile--selectable{height:100%;padding:16px}:host ::ng-deep .cds--tile-content{display:flex;flex-direction:column;gap:16px;color:var(--cds-text-primary)}\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"], dependencies: [{ kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i4.ParagraphComponent, selector: "v-paragraph", inputs: ["center", "fullWidth", "margin", "italic", "loading", "dataTestId"] }, { kind: "directive", type: i5.LayerDirective, selector: "[cdsLayer], [ibmLayer]", inputs: ["ibmLayer", "cdsLayer"], exportAs: ["layer"] }, { kind: "component", type: i5.SelectionTile, selector: "cds-selection-tile, ibm-selection-tile", inputs: ["theme", "id", "selected", "value", "disabled"], outputs: ["change"] }, { kind: "component", type: i5.TileGroup, selector: "cds-tile-group, ibm-tile-group", inputs: ["name", "multiple", "legend"], outputs: ["selected"] }, { kind: "component", type: i5.Loading, selector: "cds-loading, ibm-loading", inputs: ["title", "isActive", "size", "overlay"] }, { kind: "pipe", type: i3.AsyncPipe, name: "async" }, { kind: "pipe", type: i4$1.TranslatePipe, name: "translate" }, { kind: "pipe", type: i2.PluginTranslatePipe, name: "pluginTranslate" }] }); }
262
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: PluginAddSelectComponent, deps: [{ token: i2.PluginManagementService }, { token: PluginManagementStateService }], target: i0.ɵɵFactoryTarget.Component }); }
263
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.18", type: PluginAddSelectComponent, isStandalone: false, selector: "valtimo-plugin-add-select", ngImport: i0, template: "<!--\n ~ Copyright 2015-2025 Ritense BV, the Netherlands.\n ~\n ~ Licensed under EUPL, Version 1.2 (the \"License\");\n ~ you may not use this file except in compliance with the License.\n ~ You may obtain a copy of the License at\n ~\n ~ https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n ~\n ~ Unless required by applicable law or agreed to in writing, software\n ~ distributed under the License is distributed on an \"AS IS\" basis,\n ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n ~ See the License for the specific language governing permissions and\n ~ limitations under the License.\n -->\n\n<ng-container *ngIf=\"pluginDefinitionsWithLogos$ | async as pluginDefinitions; else loading\">\n <div class=\"plugin-definition__grid\">\n <ng-container\n *ngTemplateOutlet=\"pluginDefinitionsTemplate; context: {pluginDefinitions: pluginDefinitions}\"\n ></ng-container>\n <ng-container\n *ngTemplateOutlet=\"\n noPluginDefinitionsTemplate;\n context: {pluginDefinitions: pluginDefinitions}\n \"\n ></ng-container>\n </div>\n</ng-container>\n\n<ng-template #noPluginDefinitionsTemplate let-pluginDefinitions=\"pluginDefinitions\">\n <div *ngIf=\"pluginDefinitions?.length === 0\" class=\"plugin-definition__no-results\">\n <v-paragraph [center]=\"true\" [fullWidth]=\"true\">{{\n 'pluginManagement.noDefinitions' | translate\n }}</v-paragraph>\n </div>\n</ng-template>\n\n<ng-template #pluginDefinitionsTemplate let-pluginDefinitions=\"pluginDefinitions\">\n <cds-tile-group [multiple]=\"false\" (selected)=\"selectPluginDefinition($event)\" [cdsLayer]=\"1\">\n <cds-selection-tile\n *ngFor=\"let pluginDefinition of pluginDefinitions\"\n [value]=\"pluginDefinition\"\n [selected]=\"(selectedPluginDefinition$ | async)?.key === pluginDefinition.key\"\n >\n <img\n class=\"plugin-definition-logo\"\n [title]=\"'title' | pluginTranslate: pluginDefinition.key | async\"\n [src]=\"pluginDefinition.pluginLogoBase64\"\n />\n\n <h5>{{ 'title' | pluginTranslate: pluginDefinition.key | async }}</h5>\n\n <p>{{ 'description' | pluginTranslate: pluginDefinition.key | async }}</p>\n </cds-selection-tile>\n </cds-tile-group>\n</ng-template>\n\n<ng-template #loading>\n <div class=\"plugin-definition__grid\">\n <ng-container *ngTemplateOutlet=\"loadingCard\"></ng-container>\n <ng-container *ngTemplateOutlet=\"loadingCard\"></ng-container>\n <ng-container *ngTemplateOutlet=\"loadingCard\"></ng-container>\n </div>\n</ng-template>\n\n<ng-template #loadingCard>\n <div class=\"plugin-definition__item\">\n <cds-loading size=\"sm\"></cds-loading>\n </div>\n</ng-template>\n", styles: [".btn-back{position:absolute}.cards-container{display:flex;flex-flow:row wrap;width:100%}.card{width:calc(33.3% - 20px);margin-right:30px}.card:nth-child(3n+3){margin-right:0}.card-header{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.plugin-definition-logo{object-fit:contain;height:60px;width:100%}.plugin-definition__grid{flex-flow:wrap;box-sizing:border-box;display:flex;margin:0 -22px -22px 0}.plugin-definition__item{flex:1 1 33.3%;box-sizing:border-box;max-width:33.3%;padding:0 22px 22px 0}.plugin-definition__no-results{box-sizing:border-box;flex:1 1 100%;padding:0 22px 22px 0}:host ::ng-deep fieldset{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;width:calc(100% - 24px)}:host ::ng-deep .cds--tile--selectable{height:100%;padding:16px}:host ::ng-deep .cds--tile-content{display:flex;flex-direction:column;gap:16px;color:var(--cds-text-primary)}\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"], dependencies: [{ kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i4.ParagraphComponent, selector: "v-paragraph", inputs: ["center", "fullWidth", "margin", "italic", "loading", "dataTestId"] }, { kind: "directive", type: i5.LayerDirective, selector: "[cdsLayer], [ibmLayer]", inputs: ["ibmLayer", "cdsLayer"], exportAs: ["layer"] }, { kind: "component", type: i5.SelectionTile, selector: "cds-selection-tile, ibm-selection-tile", inputs: ["theme", "id", "selected", "value", "disabled"], outputs: ["change"] }, { kind: "component", type: i5.TileGroup, selector: "cds-tile-group, ibm-tile-group", inputs: ["name", "multiple", "legend"], outputs: ["selected"] }, { kind: "component", type: i5.Loading, selector: "cds-loading, ibm-loading", inputs: ["title", "isActive", "size", "overlay"] }, { kind: "pipe", type: i3.AsyncPipe, name: "async" }, { kind: "pipe", type: i4$1.TranslatePipe, name: "translate" }, { kind: "pipe", type: i2.PluginTranslatePipe, name: "pluginTranslate" }] }); }
264
264
  }
265
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: PluginAddSelectComponent, decorators: [{
265
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: PluginAddSelectComponent, decorators: [{
266
266
  type: Component,
267
267
  args: [{ standalone: false, selector: 'valtimo-plugin-add-select', template: "<!--\n ~ Copyright 2015-2025 Ritense BV, the Netherlands.\n ~\n ~ Licensed under EUPL, Version 1.2 (the \"License\");\n ~ you may not use this file except in compliance with the License.\n ~ You may obtain a copy of the License at\n ~\n ~ https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n ~\n ~ Unless required by applicable law or agreed to in writing, software\n ~ distributed under the License is distributed on an \"AS IS\" basis,\n ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n ~ See the License for the specific language governing permissions and\n ~ limitations under the License.\n -->\n\n<ng-container *ngIf=\"pluginDefinitionsWithLogos$ | async as pluginDefinitions; else loading\">\n <div class=\"plugin-definition__grid\">\n <ng-container\n *ngTemplateOutlet=\"pluginDefinitionsTemplate; context: {pluginDefinitions: pluginDefinitions}\"\n ></ng-container>\n <ng-container\n *ngTemplateOutlet=\"\n noPluginDefinitionsTemplate;\n context: {pluginDefinitions: pluginDefinitions}\n \"\n ></ng-container>\n </div>\n</ng-container>\n\n<ng-template #noPluginDefinitionsTemplate let-pluginDefinitions=\"pluginDefinitions\">\n <div *ngIf=\"pluginDefinitions?.length === 0\" class=\"plugin-definition__no-results\">\n <v-paragraph [center]=\"true\" [fullWidth]=\"true\">{{\n 'pluginManagement.noDefinitions' | translate\n }}</v-paragraph>\n </div>\n</ng-template>\n\n<ng-template #pluginDefinitionsTemplate let-pluginDefinitions=\"pluginDefinitions\">\n <cds-tile-group [multiple]=\"false\" (selected)=\"selectPluginDefinition($event)\" [cdsLayer]=\"1\">\n <cds-selection-tile\n *ngFor=\"let pluginDefinition of pluginDefinitions\"\n [value]=\"pluginDefinition\"\n [selected]=\"(selectedPluginDefinition$ | async)?.key === pluginDefinition.key\"\n >\n <img\n class=\"plugin-definition-logo\"\n [title]=\"'title' | pluginTranslate: pluginDefinition.key | async\"\n [src]=\"pluginDefinition.pluginLogoBase64\"\n />\n\n <h5>{{ 'title' | pluginTranslate: pluginDefinition.key | async }}</h5>\n\n <p>{{ 'description' | pluginTranslate: pluginDefinition.key | async }}</p>\n </cds-selection-tile>\n </cds-tile-group>\n</ng-template>\n\n<ng-template #loading>\n <div class=\"plugin-definition__grid\">\n <ng-container *ngTemplateOutlet=\"loadingCard\"></ng-container>\n <ng-container *ngTemplateOutlet=\"loadingCard\"></ng-container>\n <ng-container *ngTemplateOutlet=\"loadingCard\"></ng-container>\n </div>\n</ng-template>\n\n<ng-template #loadingCard>\n <div class=\"plugin-definition__item\">\n <cds-loading size=\"sm\"></cds-loading>\n </div>\n</ng-template>\n", styles: [".btn-back{position:absolute}.cards-container{display:flex;flex-flow:row wrap;width:100%}.card{width:calc(33.3% - 20px);margin-right:30px}.card:nth-child(3n+3){margin-right:0}.card-header{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.plugin-definition-logo{object-fit:contain;height:60px;width:100%}.plugin-definition__grid{flex-flow:wrap;box-sizing:border-box;display:flex;margin:0 -22px -22px 0}.plugin-definition__item{flex:1 1 33.3%;box-sizing:border-box;max-width:33.3%;padding:0 22px 22px 0}.plugin-definition__no-results{box-sizing:border-box;flex:1 1 100%;padding:0 22px 22px 0}:host ::ng-deep fieldset{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;width:calc(100% - 24px)}:host ::ng-deep .cds--tile--selectable{height:100%;padding:16px}:host ::ng-deep .cds--tile-content{display:flex;flex-direction:column;gap:16px;color:var(--cds-text-primary)}\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"] }]
268
268
  }], ctorParameters: () => [{ type: i2.PluginManagementService }, { type: PluginManagementStateService }] });
@@ -298,10 +298,10 @@ class PluginConfigureComponent {
298
298
  onFunctionConfiguration(configuration) {
299
299
  this.configuration.emit(configuration);
300
300
  }
301
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: PluginConfigureComponent, deps: [{ token: PluginManagementStateService }], target: i0.ɵɵFactoryTarget.Component }); }
302
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.17", type: PluginConfigureComponent, isStandalone: false, selector: "valtimo-plugin-configure", outputs: { valid: "valid", configuration: "configuration" }, ngImport: i0, template: "<!--\n ~ Copyright 2015-2025 Ritense BV, the Netherlands.\n ~\n ~ Licensed under EUPL, Version 1.2 (the \"License\");\n ~ you may not use this file except in compliance with the License.\n ~ You may obtain a copy of the License at\n ~\n ~ https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n ~\n ~ Unless required by applicable law or agreed to in writing, software\n ~ distributed under the License is distributed on an \"AS IS\" basis,\n ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n ~ See the License for the specific language governing permissions and\n ~ limitations under the License.\n -->\n\n<valtimo-plugin-configuration-container\n *ngIf=\"pluginDefinitionKey$ | async as pluginDefinitionKey\"\n [cdsLayer]=\"1\"\n [pluginDefinitionKey]=\"pluginDefinitionKey\"\n [prefillConfiguration$]=\"prefillConfiguration$\"\n [save$]=\"save$\"\n [disabled$]=\"disabled$\"\n (valid)=\"onValid($event)\"\n (configuration)=\"onFunctionConfiguration($event)\"\n type=\"configuration\"\n></valtimo-plugin-configuration-container>\n", styles: ["/*!\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"], dependencies: [{ kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.PluginConfigurationContainerComponent, selector: "valtimo-plugin-configuration-container", inputs: ["type", "pluginDefinitionKey", "functionKey", "save$", "disabled$", "selectedPluginConfiguration$", "prefillConfiguration$"], outputs: ["valid", "configuration"] }, { kind: "directive", type: i5.LayerDirective, selector: "[cdsLayer], [ibmLayer]", inputs: ["ibmLayer", "cdsLayer"], exportAs: ["layer"] }, { kind: "pipe", type: i3.AsyncPipe, name: "async" }] }); }
301
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: PluginConfigureComponent, deps: [{ token: PluginManagementStateService }], target: i0.ɵɵFactoryTarget.Component }); }
302
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.18", type: PluginConfigureComponent, isStandalone: false, selector: "valtimo-plugin-configure", outputs: { valid: "valid", configuration: "configuration" }, ngImport: i0, template: "<!--\n ~ Copyright 2015-2025 Ritense BV, the Netherlands.\n ~\n ~ Licensed under EUPL, Version 1.2 (the \"License\");\n ~ you may not use this file except in compliance with the License.\n ~ You may obtain a copy of the License at\n ~\n ~ https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n ~\n ~ Unless required by applicable law or agreed to in writing, software\n ~ distributed under the License is distributed on an \"AS IS\" basis,\n ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n ~ See the License for the specific language governing permissions and\n ~ limitations under the License.\n -->\n\n<valtimo-plugin-configuration-container\n *ngIf=\"pluginDefinitionKey$ | async as pluginDefinitionKey\"\n [cdsLayer]=\"1\"\n [pluginDefinitionKey]=\"pluginDefinitionKey\"\n [prefillConfiguration$]=\"prefillConfiguration$\"\n [save$]=\"save$\"\n [disabled$]=\"disabled$\"\n (valid)=\"onValid($event)\"\n (configuration)=\"onFunctionConfiguration($event)\"\n type=\"configuration\"\n></valtimo-plugin-configuration-container>\n", styles: ["/*!\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"], dependencies: [{ kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.PluginConfigurationContainerComponent, selector: "valtimo-plugin-configuration-container", inputs: ["type", "pluginDefinitionKey", "functionKey", "save$", "disabled$", "selectedPluginConfiguration$", "prefillConfiguration$"], outputs: ["valid", "configuration"] }, { kind: "directive", type: i5.LayerDirective, selector: "[cdsLayer], [ibmLayer]", inputs: ["ibmLayer", "cdsLayer"], exportAs: ["layer"] }, { kind: "pipe", type: i3.AsyncPipe, name: "async" }] }); }
303
303
  }
304
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: PluginConfigureComponent, decorators: [{
304
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: PluginConfigureComponent, decorators: [{
305
305
  type: Component,
306
306
  args: [{ standalone: false, selector: 'valtimo-plugin-configure', template: "<!--\n ~ Copyright 2015-2025 Ritense BV, the Netherlands.\n ~\n ~ Licensed under EUPL, Version 1.2 (the \"License\");\n ~ you may not use this file except in compliance with the License.\n ~ You may obtain a copy of the License at\n ~\n ~ https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n ~\n ~ Unless required by applicable law or agreed to in writing, software\n ~ distributed under the License is distributed on an \"AS IS\" basis,\n ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n ~ See the License for the specific language governing permissions and\n ~ limitations under the License.\n -->\n\n<valtimo-plugin-configuration-container\n *ngIf=\"pluginDefinitionKey$ | async as pluginDefinitionKey\"\n [cdsLayer]=\"1\"\n [pluginDefinitionKey]=\"pluginDefinitionKey\"\n [prefillConfiguration$]=\"prefillConfiguration$\"\n [save$]=\"save$\"\n [disabled$]=\"disabled$\"\n (valid)=\"onValid($event)\"\n (configuration)=\"onFunctionConfiguration($event)\"\n type=\"configuration\"\n></valtimo-plugin-configuration-container>\n", styles: ["/*!\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"] }]
307
307
  }], ctorParameters: () => [{ type: PluginManagementStateService }], propDecorators: { valid: [{
@@ -379,10 +379,10 @@ class PluginAddModalComponent {
379
379
  returnToFirstStep() {
380
380
  this.returnToFirstStepSubject$.next(true);
381
381
  }
382
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: PluginAddModalComponent, deps: [{ token: PluginManagementStateService }, { token: i2.PluginManagementService }, { token: i3$1.NGXLogger }], target: i0.ɵɵFactoryTarget.Component }); }
383
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.17", type: PluginAddModalComponent, isStandalone: false, selector: "valtimo-plugin-add-modal", inputs: { open: "open" }, outputs: { closeModal: "closeModal" }, ngImport: i0, template: "<!--\n ~ Copyright 2015-2025 Ritense BV, the Netherlands.\n ~\n ~ Licensed under EUPL, Version 1.2 (the \"License\");\n ~ you may not use this file except in compliance with the License.\n ~ You may obtain a copy of the License at\n ~\n ~ https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n ~\n ~ Unless required by applicable law or agreed to in writing, software\n ~ distributed under the License is distributed on an \"AS IS\" basis,\n ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n ~ See the License for the specific language governing permissions and\n ~ limitations under the License.\n -->\n\n<v-stepper-container\n (completeEvent)=\"complete()\"\n (cancelClickEvent)=\"hide()\"\n [disabled]=\"inputDisabled$ | async\"\n [returnToFirstStepSubject$]=\"returnToFirstStepSubject$\"\n>\n <cds-modal valtimoCdsModal #pluginAddModal [open]=\"open\" (close)=\"hide()\">\n <cds-modal-header [showCloseButton]=\"true\" (closeSelect)=\"hide()\">\n <v-stepper-header></v-stepper-header>\n </cds-modal-header>\n <section cdsModalContent>\n <v-stepper-content>\n <v-stepper-step titleTranslationKey=\"pluginManagement.addSteps.step0\">\n <valtimo-plugin-add-select></valtimo-plugin-add-select>\n </v-stepper-step>\n <v-stepper-step titleTranslationKey=\"pluginManagement.addSteps.step1\">\n <valtimo-plugin-configure\n (valid)=\"onValid($event)\"\n (configuration)=\"onConfiguration($event)\"\n ></valtimo-plugin-configure>\n </v-stepper-step>\n </v-stepper-content>\n </section>\n <cds-modal-footer>\n <v-stepper-footer class=\"stepper-footer\">\n <v-stepper-footer-step\n nextButtonTranslationKey=\"pluginManagement.addSteps.step1\"\n [nextButtonEnabled]=\"selectedPluginDefinition$ | async\"\n ></v-stepper-footer-step>\n <v-stepper-footer-step\n completeButtonTranslationKey=\"pluginManagement.addSteps.complete\"\n [completeButtonEnabled]=\"configurationValid$ | async\"\n ></v-stepper-footer-step>\n </v-stepper-footer>\n </cds-modal-footer>\n </cds-modal>\n</v-stepper-container>\n", styles: [".stepper-footer{width:100%}\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"], dependencies: [{ kind: "component", type: i4.StepperContainerComponent, selector: "v-stepper-container", inputs: ["returnToFirstStepSubject$", "disabled"], outputs: ["cancelClickEvent", "completeEvent", "nextStepEvent"] }, { kind: "component", type: i4.StepperContentComponent, selector: "v-stepper-content" }, { kind: "component", type: i4.StepperFooterComponent, selector: "v-stepper-footer" }, { kind: "component", type: i4.StepperHeaderComponent, selector: "v-stepper-header" }, { kind: "component", type: i4.StepperStepComponent, selector: "v-stepper-step", inputs: ["titleTranslationKey"] }, { kind: "component", type: i4.StepperFooterStepComponent, selector: "v-stepper-footer-step", inputs: ["nextButtonEnabled", "completeButtonEnabled", "nextButtonTranslationKey", "cancelButtonTranslationKey", "completeButtonTranslationKey", "completeButtonMdiIcon", "showCompleteButton"] }, { kind: "component", type: i5.Modal, selector: "cds-modal, ibm-modal", inputs: ["size", "theme", "ariaLabel", "open", "trigger", "hasScrollingContent"], outputs: ["overlaySelected", "close"] }, { kind: "component", type: i5.ModalHeader, selector: "cds-modal-header, ibm-modal-header", inputs: ["theme", "closeLabel", "showCloseButton"], outputs: ["closeSelect"] }, { kind: "component", type: i5.ModalFooter, selector: "cds-modal-footer, ibm-modal-footer" }, { kind: "directive", type: i5.ModalContent, selector: "[cdsModalContent], [ibmModalContent]", inputs: ["hasForm"] }, { kind: "directive", type: i4.ValtimoCdsModalDirective, selector: "[valtimoCdsModal]", inputs: ["minContentHeight"] }, { kind: "component", type: PluginAddSelectComponent, selector: "valtimo-plugin-add-select" }, { kind: "component", type: PluginConfigureComponent, selector: "valtimo-plugin-configure", outputs: ["valid", "configuration"] }, { kind: "pipe", type: i3.AsyncPipe, name: "async" }] }); }
382
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: PluginAddModalComponent, deps: [{ token: PluginManagementStateService }, { token: i2.PluginManagementService }, { token: i3$1.NGXLogger }], target: i0.ɵɵFactoryTarget.Component }); }
383
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.18", type: PluginAddModalComponent, isStandalone: false, selector: "valtimo-plugin-add-modal", inputs: { open: "open" }, outputs: { closeModal: "closeModal" }, ngImport: i0, template: "<!--\n ~ Copyright 2015-2025 Ritense BV, the Netherlands.\n ~\n ~ Licensed under EUPL, Version 1.2 (the \"License\");\n ~ you may not use this file except in compliance with the License.\n ~ You may obtain a copy of the License at\n ~\n ~ https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n ~\n ~ Unless required by applicable law or agreed to in writing, software\n ~ distributed under the License is distributed on an \"AS IS\" basis,\n ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n ~ See the License for the specific language governing permissions and\n ~ limitations under the License.\n -->\n\n<v-stepper-container\n (completeEvent)=\"complete()\"\n (cancelClickEvent)=\"hide()\"\n [disabled]=\"inputDisabled$ | async\"\n [returnToFirstStepSubject$]=\"returnToFirstStepSubject$\"\n>\n <cds-modal valtimoCdsModal #pluginAddModal [open]=\"open\" (close)=\"hide()\">\n <cds-modal-header [showCloseButton]=\"true\" (closeSelect)=\"hide()\">\n <v-stepper-header></v-stepper-header>\n </cds-modal-header>\n <section cdsModalContent>\n <v-stepper-content>\n <v-stepper-step titleTranslationKey=\"pluginManagement.addSteps.step0\">\n <valtimo-plugin-add-select></valtimo-plugin-add-select>\n </v-stepper-step>\n <v-stepper-step titleTranslationKey=\"pluginManagement.addSteps.step1\">\n <valtimo-plugin-configure\n (valid)=\"onValid($event)\"\n (configuration)=\"onConfiguration($event)\"\n ></valtimo-plugin-configure>\n </v-stepper-step>\n </v-stepper-content>\n </section>\n <cds-modal-footer>\n <v-stepper-footer class=\"stepper-footer\">\n <v-stepper-footer-step\n nextButtonTranslationKey=\"pluginManagement.addSteps.step1\"\n [nextButtonEnabled]=\"selectedPluginDefinition$ | async\"\n ></v-stepper-footer-step>\n <v-stepper-footer-step\n completeButtonTranslationKey=\"pluginManagement.addSteps.complete\"\n [completeButtonEnabled]=\"configurationValid$ | async\"\n ></v-stepper-footer-step>\n </v-stepper-footer>\n </cds-modal-footer>\n </cds-modal>\n</v-stepper-container>\n", styles: [".stepper-footer{width:100%}\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"], dependencies: [{ kind: "component", type: i4.StepperContainerComponent, selector: "v-stepper-container", inputs: ["returnToFirstStepSubject$", "disabled"], outputs: ["cancelClickEvent", "completeEvent", "nextStepEvent"] }, { kind: "component", type: i4.StepperContentComponent, selector: "v-stepper-content" }, { kind: "component", type: i4.StepperFooterComponent, selector: "v-stepper-footer" }, { kind: "component", type: i4.StepperHeaderComponent, selector: "v-stepper-header" }, { kind: "component", type: i4.StepperStepComponent, selector: "v-stepper-step", inputs: ["titleTranslationKey"] }, { kind: "component", type: i4.StepperFooterStepComponent, selector: "v-stepper-footer-step", inputs: ["nextButtonEnabled", "completeButtonEnabled", "nextButtonTranslationKey", "cancelButtonTranslationKey", "completeButtonTranslationKey", "completeButtonMdiIcon", "showCompleteButton"] }, { kind: "component", type: i5.Modal, selector: "cds-modal, ibm-modal", inputs: ["size", "theme", "ariaLabel", "open", "trigger", "hasScrollingContent"], outputs: ["overlaySelected", "close"] }, { kind: "component", type: i5.ModalHeader, selector: "cds-modal-header, ibm-modal-header", inputs: ["theme", "closeLabel", "showCloseButton"], outputs: ["closeSelect"] }, { kind: "component", type: i5.ModalFooter, selector: "cds-modal-footer, ibm-modal-footer" }, { kind: "directive", type: i5.ModalContent, selector: "[cdsModalContent], [ibmModalContent]", inputs: ["hasForm"] }, { kind: "directive", type: i4.ValtimoCdsModalDirective, selector: "[valtimoCdsModal]", inputs: ["minContentHeight"] }, { kind: "component", type: PluginAddSelectComponent, selector: "valtimo-plugin-add-select" }, { kind: "component", type: PluginConfigureComponent, selector: "valtimo-plugin-configure", outputs: ["valid", "configuration"] }, { kind: "pipe", type: i3.AsyncPipe, name: "async" }] }); }
384
384
  }
385
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: PluginAddModalComponent, decorators: [{
385
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: PluginAddModalComponent, decorators: [{
386
386
  type: Component,
387
387
  args: [{ standalone: false, selector: 'valtimo-plugin-add-modal', template: "<!--\n ~ Copyright 2015-2025 Ritense BV, the Netherlands.\n ~\n ~ Licensed under EUPL, Version 1.2 (the \"License\");\n ~ you may not use this file except in compliance with the License.\n ~ You may obtain a copy of the License at\n ~\n ~ https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n ~\n ~ Unless required by applicable law or agreed to in writing, software\n ~ distributed under the License is distributed on an \"AS IS\" basis,\n ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n ~ See the License for the specific language governing permissions and\n ~ limitations under the License.\n -->\n\n<v-stepper-container\n (completeEvent)=\"complete()\"\n (cancelClickEvent)=\"hide()\"\n [disabled]=\"inputDisabled$ | async\"\n [returnToFirstStepSubject$]=\"returnToFirstStepSubject$\"\n>\n <cds-modal valtimoCdsModal #pluginAddModal [open]=\"open\" (close)=\"hide()\">\n <cds-modal-header [showCloseButton]=\"true\" (closeSelect)=\"hide()\">\n <v-stepper-header></v-stepper-header>\n </cds-modal-header>\n <section cdsModalContent>\n <v-stepper-content>\n <v-stepper-step titleTranslationKey=\"pluginManagement.addSteps.step0\">\n <valtimo-plugin-add-select></valtimo-plugin-add-select>\n </v-stepper-step>\n <v-stepper-step titleTranslationKey=\"pluginManagement.addSteps.step1\">\n <valtimo-plugin-configure\n (valid)=\"onValid($event)\"\n (configuration)=\"onConfiguration($event)\"\n ></valtimo-plugin-configure>\n </v-stepper-step>\n </v-stepper-content>\n </section>\n <cds-modal-footer>\n <v-stepper-footer class=\"stepper-footer\">\n <v-stepper-footer-step\n nextButtonTranslationKey=\"pluginManagement.addSteps.step1\"\n [nextButtonEnabled]=\"selectedPluginDefinition$ | async\"\n ></v-stepper-footer-step>\n <v-stepper-footer-step\n completeButtonTranslationKey=\"pluginManagement.addSteps.complete\"\n [completeButtonEnabled]=\"configurationValid$ | async\"\n ></v-stepper-footer-step>\n </v-stepper-footer>\n </cds-modal-footer>\n </cds-modal>\n</v-stepper-container>\n", styles: [".stepper-footer{width:100%}\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"] }]
388
388
  }], ctorParameters: () => [{ type: PluginManagementStateService }, { type: i2.PluginManagementService }, { type: i3$1.NGXLogger }], propDecorators: { open: [{
@@ -428,10 +428,10 @@ class PluginEditComponent {
428
428
  onFunctionConfiguration(configuration) {
429
429
  this.configuration.emit(configuration);
430
430
  }
431
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: PluginEditComponent, deps: [{ token: PluginManagementStateService }], target: i0.ɵɵFactoryTarget.Component }); }
432
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.17", type: PluginEditComponent, isStandalone: false, selector: "valtimo-plugin-edit", outputs: { valid: "valid", configuration: "configuration" }, ngImport: i0, template: "<!--\n ~ Copyright 2015-2025 Ritense BV, the Netherlands.\n ~\n ~ Licensed under EUPL, Version 1.2 (the \"License\");\n ~ you may not use this file except in compliance with the License.\n ~ You may obtain a copy of the License at\n ~\n ~ https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n ~\n ~ Unless required by applicable law or agreed to in writing, software\n ~ distributed under the License is distributed on an \"AS IS\" basis,\n ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n ~ See the License for the specific language governing permissions and\n ~ limitations under the License.\n -->\n\n<valtimo-plugin-configuration-container\n *ngIf=\"pluginDefinitionKey$ | async as pluginDefinitionKey\"\n [cdsLayer]=\"1\"\n [pluginDefinitionKey]=\"pluginDefinitionKey\"\n [prefillConfiguration$]=\"prefillConfiguration$\"\n [save$]=\"saveEdit$\"\n [disabled$]=\"disabled$\"\n (valid)=\"onValid($event)\"\n (configuration)=\"onFunctionConfiguration($event)\"\n type=\"configuration\"\n></valtimo-plugin-configuration-container>\n", styles: ["/*!\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"], dependencies: [{ kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.PluginConfigurationContainerComponent, selector: "valtimo-plugin-configuration-container", inputs: ["type", "pluginDefinitionKey", "functionKey", "save$", "disabled$", "selectedPluginConfiguration$", "prefillConfiguration$"], outputs: ["valid", "configuration"] }, { kind: "directive", type: i5.LayerDirective, selector: "[cdsLayer], [ibmLayer]", inputs: ["ibmLayer", "cdsLayer"], exportAs: ["layer"] }, { kind: "pipe", type: i3.AsyncPipe, name: "async" }] }); }
431
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: PluginEditComponent, deps: [{ token: PluginManagementStateService }], target: i0.ɵɵFactoryTarget.Component }); }
432
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.18", type: PluginEditComponent, isStandalone: false, selector: "valtimo-plugin-edit", outputs: { valid: "valid", configuration: "configuration" }, ngImport: i0, template: "<!--\n ~ Copyright 2015-2025 Ritense BV, the Netherlands.\n ~\n ~ Licensed under EUPL, Version 1.2 (the \"License\");\n ~ you may not use this file except in compliance with the License.\n ~ You may obtain a copy of the License at\n ~\n ~ https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n ~\n ~ Unless required by applicable law or agreed to in writing, software\n ~ distributed under the License is distributed on an \"AS IS\" basis,\n ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n ~ See the License for the specific language governing permissions and\n ~ limitations under the License.\n -->\n\n<valtimo-plugin-configuration-container\n *ngIf=\"pluginDefinitionKey$ | async as pluginDefinitionKey\"\n [cdsLayer]=\"1\"\n [pluginDefinitionKey]=\"pluginDefinitionKey\"\n [prefillConfiguration$]=\"prefillConfiguration$\"\n [save$]=\"saveEdit$\"\n [disabled$]=\"disabled$\"\n (valid)=\"onValid($event)\"\n (configuration)=\"onFunctionConfiguration($event)\"\n type=\"configuration\"\n></valtimo-plugin-configuration-container>\n", styles: ["/*!\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"], dependencies: [{ kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.PluginConfigurationContainerComponent, selector: "valtimo-plugin-configuration-container", inputs: ["type", "pluginDefinitionKey", "functionKey", "save$", "disabled$", "selectedPluginConfiguration$", "prefillConfiguration$"], outputs: ["valid", "configuration"] }, { kind: "directive", type: i5.LayerDirective, selector: "[cdsLayer], [ibmLayer]", inputs: ["ibmLayer", "cdsLayer"], exportAs: ["layer"] }, { kind: "pipe", type: i3.AsyncPipe, name: "async" }] }); }
433
433
  }
434
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: PluginEditComponent, decorators: [{
434
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: PluginEditComponent, decorators: [{
435
435
  type: Component,
436
436
  args: [{ standalone: false, selector: 'valtimo-plugin-edit', template: "<!--\n ~ Copyright 2015-2025 Ritense BV, the Netherlands.\n ~\n ~ Licensed under EUPL, Version 1.2 (the \"License\");\n ~ you may not use this file except in compliance with the License.\n ~ You may obtain a copy of the License at\n ~\n ~ https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n ~\n ~ Unless required by applicable law or agreed to in writing, software\n ~ distributed under the License is distributed on an \"AS IS\" basis,\n ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n ~ See the License for the specific language governing permissions and\n ~ limitations under the License.\n -->\n\n<valtimo-plugin-configuration-container\n *ngIf=\"pluginDefinitionKey$ | async as pluginDefinitionKey\"\n [cdsLayer]=\"1\"\n [pluginDefinitionKey]=\"pluginDefinitionKey\"\n [prefillConfiguration$]=\"prefillConfiguration$\"\n [save$]=\"saveEdit$\"\n [disabled$]=\"disabled$\"\n (valid)=\"onValid($event)\"\n (configuration)=\"onFunctionConfiguration($event)\"\n type=\"configuration\"\n></valtimo-plugin-configuration-container>\n", styles: ["/*!\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"] }]
437
437
  }], ctorParameters: () => [{ type: PluginManagementStateService }], propDecorators: { valid: [{
@@ -541,10 +541,10 @@ class PluginEditModalComponent {
541
541
  });
542
542
  });
543
543
  }
544
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: PluginEditModalComponent, deps: [{ token: PluginManagementStateService }, { token: i2.PluginManagementService }, { token: i3$1.NGXLogger }], target: i0.ɵɵFactoryTarget.Component }); }
545
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.17", type: PluginEditModalComponent, isStandalone: false, selector: "valtimo-plugin-edit-modal", inputs: { open: "open", saveNewConfiguration: "saveNewConfiguration" }, outputs: { closeModal: "closeModal" }, ngImport: i0, template: "<!--\n ~ Copyright 2015-2025 Ritense BV, the Netherlands.\n ~\n ~ Licensed under EUPL, Version 1.2 (the \"License\");\n ~ you may not use this file except in compliance with the License.\n ~ You may obtain a copy of the License at\n ~\n ~ https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n ~\n ~ Unless required by applicable law or agreed to in writing, software\n ~ distributed under the License is distributed on an \"AS IS\" basis,\n ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n ~ See the License for the specific language governing permissions and\n ~ limitations under the License.\n -->\n\n<cds-modal\n #pluginEditModal\n valtimoCdsModal\n [open]=\"open\"\n (close)=\"hide()\"\n *ngIf=\"{selectedConfiguration: selectedPluginConfiguration$ | async} as obs\"\n>\n <cds-modal-header [showCloseButton]=\"true\" (closeSelect)=\"hide()\">\n {{\n obs.selectedConfiguration?.title +\n ' - ' +\n ('title' | pluginTranslate: obs.selectedConfiguration?.pluginDefinition?.key | async)\n }}\n </cds-modal-header>\n <section cdsModalContent>\n <valtimo-plugin-edit\n (valid)=\"onPluginValid($event)\"\n (configuration)=\"onPluginConfiguration($event)\"\n ></valtimo-plugin-edit>\n </section>\n <cds-modal-footer>\n <button cdsButton=\"danger\" (click)=\"delete()\" [disabled]=\"inputDisabled$ | async\">\n {{ 'pluginManagement.remove' | translate }}\n </button>\n <button\n cdsButton=\"primary\"\n [disabled]=\"(configurationValid$ | async) === false || (inputDisabled$ | async)\"\n (click)=\"save()\"\n >\n {{ 'pluginManagement.save' | translate }}\n </button>\n </cds-modal-footer>\n</cds-modal>\n", styles: ["/*!\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"], dependencies: [{ kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i5.Button, selector: "[cdsButton], [ibmButton]", inputs: ["ibmButton", "cdsButton", "size", "skeleton", "iconOnly", "isExpressive"] }, { kind: "component", type: i5.Modal, selector: "cds-modal, ibm-modal", inputs: ["size", "theme", "ariaLabel", "open", "trigger", "hasScrollingContent"], outputs: ["overlaySelected", "close"] }, { kind: "component", type: i5.ModalHeader, selector: "cds-modal-header, ibm-modal-header", inputs: ["theme", "closeLabel", "showCloseButton"], outputs: ["closeSelect"] }, { kind: "component", type: i5.ModalFooter, selector: "cds-modal-footer, ibm-modal-footer" }, { kind: "directive", type: i5.ModalContent, selector: "[cdsModalContent], [ibmModalContent]", inputs: ["hasForm"] }, { kind: "directive", type: i4.ValtimoCdsModalDirective, selector: "[valtimoCdsModal]", inputs: ["minContentHeight"] }, { kind: "component", type: PluginEditComponent, selector: "valtimo-plugin-edit", outputs: ["valid", "configuration"] }, { kind: "pipe", type: i3.AsyncPipe, name: "async" }, { kind: "pipe", type: i4$1.TranslatePipe, name: "translate" }, { kind: "pipe", type: i2.PluginTranslatePipe, name: "pluginTranslate" }] }); }
544
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: PluginEditModalComponent, deps: [{ token: PluginManagementStateService }, { token: i2.PluginManagementService }, { token: i3$1.NGXLogger }], target: i0.ɵɵFactoryTarget.Component }); }
545
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.18", type: PluginEditModalComponent, isStandalone: false, selector: "valtimo-plugin-edit-modal", inputs: { open: "open", saveNewConfiguration: "saveNewConfiguration" }, outputs: { closeModal: "closeModal" }, ngImport: i0, template: "<!--\n ~ Copyright 2015-2025 Ritense BV, the Netherlands.\n ~\n ~ Licensed under EUPL, Version 1.2 (the \"License\");\n ~ you may not use this file except in compliance with the License.\n ~ You may obtain a copy of the License at\n ~\n ~ https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n ~\n ~ Unless required by applicable law or agreed to in writing, software\n ~ distributed under the License is distributed on an \"AS IS\" basis,\n ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n ~ See the License for the specific language governing permissions and\n ~ limitations under the License.\n -->\n\n<cds-modal\n #pluginEditModal\n valtimoCdsModal\n [open]=\"open\"\n (close)=\"hide()\"\n *ngIf=\"{selectedConfiguration: selectedPluginConfiguration$ | async} as obs\"\n>\n <cds-modal-header [showCloseButton]=\"true\" (closeSelect)=\"hide()\">\n {{\n obs.selectedConfiguration?.title +\n ' - ' +\n ('title' | pluginTranslate: obs.selectedConfiguration?.pluginDefinition?.key | async)\n }}\n </cds-modal-header>\n <section cdsModalContent>\n <valtimo-plugin-edit\n (valid)=\"onPluginValid($event)\"\n (configuration)=\"onPluginConfiguration($event)\"\n ></valtimo-plugin-edit>\n </section>\n <cds-modal-footer>\n <button cdsButton=\"danger\" (click)=\"delete()\" [disabled]=\"inputDisabled$ | async\">\n {{ 'pluginManagement.remove' | translate }}\n </button>\n <button\n cdsButton=\"primary\"\n [disabled]=\"(configurationValid$ | async) === false || (inputDisabled$ | async)\"\n (click)=\"save()\"\n >\n {{ 'pluginManagement.save' | translate }}\n </button>\n </cds-modal-footer>\n</cds-modal>\n", styles: ["/*!\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"], dependencies: [{ kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i5.Button, selector: "[cdsButton], [ibmButton]", inputs: ["ibmButton", "cdsButton", "size", "skeleton", "iconOnly", "isExpressive"] }, { kind: "component", type: i5.Modal, selector: "cds-modal, ibm-modal", inputs: ["size", "theme", "ariaLabel", "open", "trigger", "hasScrollingContent"], outputs: ["overlaySelected", "close"] }, { kind: "component", type: i5.ModalHeader, selector: "cds-modal-header, ibm-modal-header", inputs: ["theme", "closeLabel", "showCloseButton"], outputs: ["closeSelect"] }, { kind: "component", type: i5.ModalFooter, selector: "cds-modal-footer, ibm-modal-footer" }, { kind: "directive", type: i5.ModalContent, selector: "[cdsModalContent], [ibmModalContent]", inputs: ["hasForm"] }, { kind: "directive", type: i4.ValtimoCdsModalDirective, selector: "[valtimoCdsModal]", inputs: ["minContentHeight"] }, { kind: "component", type: PluginEditComponent, selector: "valtimo-plugin-edit", outputs: ["valid", "configuration"] }, { kind: "pipe", type: i3.AsyncPipe, name: "async" }, { kind: "pipe", type: i4$1.TranslatePipe, name: "translate" }, { kind: "pipe", type: i2.PluginTranslatePipe, name: "pluginTranslate" }] }); }
546
546
  }
547
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: PluginEditModalComponent, decorators: [{
547
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: PluginEditModalComponent, decorators: [{
548
548
  type: Component,
549
549
  args: [{ standalone: false, selector: 'valtimo-plugin-edit-modal', template: "<!--\n ~ Copyright 2015-2025 Ritense BV, the Netherlands.\n ~\n ~ Licensed under EUPL, Version 1.2 (the \"License\");\n ~ you may not use this file except in compliance with the License.\n ~ You may obtain a copy of the License at\n ~\n ~ https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n ~\n ~ Unless required by applicable law or agreed to in writing, software\n ~ distributed under the License is distributed on an \"AS IS\" basis,\n ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n ~ See the License for the specific language governing permissions and\n ~ limitations under the License.\n -->\n\n<cds-modal\n #pluginEditModal\n valtimoCdsModal\n [open]=\"open\"\n (close)=\"hide()\"\n *ngIf=\"{selectedConfiguration: selectedPluginConfiguration$ | async} as obs\"\n>\n <cds-modal-header [showCloseButton]=\"true\" (closeSelect)=\"hide()\">\n {{\n obs.selectedConfiguration?.title +\n ' - ' +\n ('title' | pluginTranslate: obs.selectedConfiguration?.pluginDefinition?.key | async)\n }}\n </cds-modal-header>\n <section cdsModalContent>\n <valtimo-plugin-edit\n (valid)=\"onPluginValid($event)\"\n (configuration)=\"onPluginConfiguration($event)\"\n ></valtimo-plugin-edit>\n </section>\n <cds-modal-footer>\n <button cdsButton=\"danger\" (click)=\"delete()\" [disabled]=\"inputDisabled$ | async\">\n {{ 'pluginManagement.remove' | translate }}\n </button>\n <button\n cdsButton=\"primary\"\n [disabled]=\"(configurationValid$ | async) === false || (inputDisabled$ | async)\"\n (click)=\"save()\"\n >\n {{ 'pluginManagement.save' | translate }}\n </button>\n </cds-modal-footer>\n</cds-modal>\n", styles: ["/*!\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"] }]
550
550
  }], ctorParameters: () => [{ type: PluginManagementStateService }, { type: i2.PluginManagementService }, { type: i3$1.NGXLogger }], propDecorators: { open: [{
@@ -661,10 +661,10 @@ class PluginManagementComponent {
661
661
  this.saveNewConfiguration$.next(true);
662
662
  this.stateService.selectPluginConfiguration(configurationClone);
663
663
  }
664
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: PluginManagementComponent, deps: [{ token: i3$1.NGXLogger }, { token: i2.PluginManagementService }, { token: i2.PluginTranslationService }, { token: PluginManagementStateService }, { token: i4$1.TranslateService }], target: i0.ɵɵFactoryTarget.Component }); }
665
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.17", type: PluginManagementComponent, isStandalone: false, selector: "valtimo-plugin-management", ngImport: i0, template: "<!--\n ~ Copyright 2015-2025 Ritense BV, the Netherlands.\n ~\n ~ Licensed under EUPL, Version 1.2 (the \"License\");\n ~ you may not use this file except in compliance with the License.\n ~ You may obtain a copy of the License at\n ~\n ~ https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n ~\n ~ Unless required by applicable law or agreed to in writing, software\n ~ distributed under the License is distributed on an \"AS IS\" basis,\n ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n ~ See the License for the specific language governing permissions and\n ~ limitations under the License.\n -->\n<ng-container\n *ngIf=\"{\n pluginConfigurations: pluginConfigurations$ | async,\n loading: loading$ | async,\n } as obs\"\n>\n <valtimo-carbon-list\n [actionItems]=\"actionItems\"\n [loading]=\"obs.loading\"\n [items]=\"obs.pluginConfigurations\"\n [fields]=\"fields\"\n [header]=\"false\"\n (rowClicked)=\"editConfiguration($event)\"\n >\n <ng-container carbonToolbarContent [ngTemplateOutlet]=\"configurePluginButton\"></ng-container>\n\n <valtimo-no-results\n [action]=\"configurePluginButton\"\n [title]=\"'pages.plugins.noResults' | translate\"\n ></valtimo-no-results>\n </valtimo-carbon-list>\n\n <ng-template #configurePluginButton>\n <button cdsButton=\"primary\" [disabled]=\"obs.loading\" (click)=\"showAddModal()\">\n {{ 'pluginManagement.add' | translate }}\n\n <svg cdsIcon=\"add\" size=\"16\" class=\"cds--btn__icon\"></svg>\n </button>\n </ng-template>\n</ng-container>\n\n<valtimo-plugin-add-modal\n [open]=\"showAddModal$ | async\"\n (closeModal)=\"closeAddModal()\"\n></valtimo-plugin-add-modal>\n\n<valtimo-plugin-edit-modal\n [open]=\"showEditModal$ | async\"\n [saveNewConfiguration]=\"saveNewConfiguration$ | async\"\n (closeModal)=\"closeEditModal()\"\n></valtimo-plugin-edit-modal>\n", styles: ["/*!\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"], dependencies: [{ kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i5.Button, selector: "[cdsButton], [ibmButton]", inputs: ["ibmButton", "cdsButton", "size", "skeleton", "iconOnly", "isExpressive"] }, { kind: "component", type: i4.CarbonListComponent, selector: "valtimo-carbon-list", inputs: ["items", "fields", "tableTranslations", "paginatorConfig", "pagination", "loading", "actions", "actionItems", "showActionItems", "header", "hideColumnHeader", "initialSortState", "sortState", "isSearchable", "enableSingleSelection", "lastColumnTemplate", "paginationIdentifier", "showSelectionColumn", "striped", "hideToolbar", "lockedTooltipTranslationKey", "movingRowsEnabled", "dragAndDrop", "dragAndDropDisabled"], outputs: ["rowClicked", "paginationClicked", "paginationSet", "search", "sortChanged", "moveRow", "itemsReordered"] }, { kind: "component", type: i4.CarbonNoResultsComponent, selector: "valtimo-no-results", inputs: ["action", "description", "illustration", "title", "smallPadding", "collapseVertically", "alwaysRenderVertically"] }, { kind: "directive", type: i5.IconDirective, selector: "[cdsIcon], [ibmIcon]", inputs: ["ibmIcon", "cdsIcon", "size", "title", "ariaLabel", "ariaLabelledBy", "ariaHidden", "isFocusable"] }, { kind: "component", type: PluginAddModalComponent, selector: "valtimo-plugin-add-modal", inputs: ["open"], outputs: ["closeModal"] }, { kind: "component", type: PluginEditModalComponent, selector: "valtimo-plugin-edit-modal", inputs: ["open", "saveNewConfiguration"], outputs: ["closeModal"] }, { kind: "pipe", type: i3.AsyncPipe, name: "async" }, { kind: "pipe", type: i4$1.TranslatePipe, name: "translate" }] }); }
664
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: PluginManagementComponent, deps: [{ token: i3$1.NGXLogger }, { token: i2.PluginManagementService }, { token: i2.PluginTranslationService }, { token: PluginManagementStateService }, { token: i4$1.TranslateService }], target: i0.ɵɵFactoryTarget.Component }); }
665
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.18", type: PluginManagementComponent, isStandalone: false, selector: "valtimo-plugin-management", ngImport: i0, template: "<!--\n ~ Copyright 2015-2025 Ritense BV, the Netherlands.\n ~\n ~ Licensed under EUPL, Version 1.2 (the \"License\");\n ~ you may not use this file except in compliance with the License.\n ~ You may obtain a copy of the License at\n ~\n ~ https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n ~\n ~ Unless required by applicable law or agreed to in writing, software\n ~ distributed under the License is distributed on an \"AS IS\" basis,\n ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n ~ See the License for the specific language governing permissions and\n ~ limitations under the License.\n -->\n<ng-container\n *ngIf=\"{\n pluginConfigurations: pluginConfigurations$ | async,\n loading: loading$ | async,\n } as obs\"\n>\n <valtimo-carbon-list\n [actionItems]=\"actionItems\"\n [loading]=\"obs.loading\"\n [items]=\"obs.pluginConfigurations\"\n [fields]=\"fields\"\n [header]=\"false\"\n (rowClicked)=\"editConfiguration($event)\"\n >\n <ng-container carbonToolbarContent [ngTemplateOutlet]=\"configurePluginButton\"></ng-container>\n\n <valtimo-no-results\n [action]=\"configurePluginButton\"\n [title]=\"'pages.plugins.noResults' | translate\"\n ></valtimo-no-results>\n </valtimo-carbon-list>\n\n <ng-template #configurePluginButton>\n <button cdsButton=\"primary\" [disabled]=\"obs.loading\" (click)=\"showAddModal()\">\n {{ 'pluginManagement.add' | translate }}\n\n <svg cdsIcon=\"add\" size=\"16\" class=\"cds--btn__icon\"></svg>\n </button>\n </ng-template>\n</ng-container>\n\n<valtimo-plugin-add-modal\n [open]=\"showAddModal$ | async\"\n (closeModal)=\"closeAddModal()\"\n></valtimo-plugin-add-modal>\n\n<valtimo-plugin-edit-modal\n [open]=\"showEditModal$ | async\"\n [saveNewConfiguration]=\"saveNewConfiguration$ | async\"\n (closeModal)=\"closeEditModal()\"\n></valtimo-plugin-edit-modal>\n", styles: ["/*!\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"], dependencies: [{ kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i5.Button, selector: "[cdsButton], [ibmButton]", inputs: ["ibmButton", "cdsButton", "size", "skeleton", "iconOnly", "isExpressive"] }, { kind: "component", type: i4.CarbonListComponent, selector: "valtimo-carbon-list", inputs: ["items", "fields", "tableTranslations", "paginatorConfig", "pagination", "loading", "skeletonRowCount", "actions", "actionItems", "showActionItems", "header", "hideColumnHeader", "initialSortState", "sortState", "isSearchable", "enableSingleSelection", "lastColumnTemplate", "paginationIdentifier", "showSelectionColumn", "striped", "hideToolbar", "lockedTooltipTranslationKey", "movingRowsEnabled", "dragAndDrop", "dragAndDropDisabled"], outputs: ["rowClicked", "paginationClicked", "paginationSet", "search", "sortChanged", "moveRow", "itemsReordered"] }, { kind: "component", type: i4.CarbonNoResultsComponent, selector: "valtimo-no-results", inputs: ["action", "description", "illustration", "title", "smallPadding", "collapseVertically", "alwaysRenderVertically"] }, { kind: "directive", type: i5.IconDirective, selector: "[cdsIcon], [ibmIcon]", inputs: ["ibmIcon", "cdsIcon", "size", "title", "ariaLabel", "ariaLabelledBy", "ariaHidden", "isFocusable"] }, { kind: "component", type: PluginAddModalComponent, selector: "valtimo-plugin-add-modal", inputs: ["open"], outputs: ["closeModal"] }, { kind: "component", type: PluginEditModalComponent, selector: "valtimo-plugin-edit-modal", inputs: ["open", "saveNewConfiguration"], outputs: ["closeModal"] }, { kind: "pipe", type: i3.AsyncPipe, name: "async" }, { kind: "pipe", type: i4$1.TranslatePipe, name: "translate" }] }); }
666
666
  }
667
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: PluginManagementComponent, decorators: [{
667
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: PluginManagementComponent, decorators: [{
668
668
  type: Component,
669
669
  args: [{ standalone: false, selector: 'valtimo-plugin-management', template: "<!--\n ~ Copyright 2015-2025 Ritense BV, the Netherlands.\n ~\n ~ Licensed under EUPL, Version 1.2 (the \"License\");\n ~ you may not use this file except in compliance with the License.\n ~ You may obtain a copy of the License at\n ~\n ~ https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n ~\n ~ Unless required by applicable law or agreed to in writing, software\n ~ distributed under the License is distributed on an \"AS IS\" basis,\n ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n ~ See the License for the specific language governing permissions and\n ~ limitations under the License.\n -->\n<ng-container\n *ngIf=\"{\n pluginConfigurations: pluginConfigurations$ | async,\n loading: loading$ | async,\n } as obs\"\n>\n <valtimo-carbon-list\n [actionItems]=\"actionItems\"\n [loading]=\"obs.loading\"\n [items]=\"obs.pluginConfigurations\"\n [fields]=\"fields\"\n [header]=\"false\"\n (rowClicked)=\"editConfiguration($event)\"\n >\n <ng-container carbonToolbarContent [ngTemplateOutlet]=\"configurePluginButton\"></ng-container>\n\n <valtimo-no-results\n [action]=\"configurePluginButton\"\n [title]=\"'pages.plugins.noResults' | translate\"\n ></valtimo-no-results>\n </valtimo-carbon-list>\n\n <ng-template #configurePluginButton>\n <button cdsButton=\"primary\" [disabled]=\"obs.loading\" (click)=\"showAddModal()\">\n {{ 'pluginManagement.add' | translate }}\n\n <svg cdsIcon=\"add\" size=\"16\" class=\"cds--btn__icon\"></svg>\n </button>\n </ng-template>\n</ng-container>\n\n<valtimo-plugin-add-modal\n [open]=\"showAddModal$ | async\"\n (closeModal)=\"closeAddModal()\"\n></valtimo-plugin-add-modal>\n\n<valtimo-plugin-edit-modal\n [open]=\"showEditModal$ | async\"\n [saveNewConfiguration]=\"saveNewConfiguration$ | async\"\n (closeModal)=\"closeEditModal()\"\n></valtimo-plugin-edit-modal>\n", styles: ["/*!\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"] }]
670
670
  }], ctorParameters: () => [{ type: i3$1.NGXLogger }, { type: i2.PluginManagementService }, { type: i2.PluginTranslationService }, { type: PluginManagementStateService }, { type: i4$1.TranslateService }] });
@@ -693,11 +693,11 @@ const routes = [
693
693
  },
694
694
  ];
695
695
  class PluginManagementRoutingModule {
696
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: PluginManagementRoutingModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
697
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.17", ngImport: i0, type: PluginManagementRoutingModule, imports: [CommonModule, i1.RouterModule], exports: [RouterModule] }); }
698
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: PluginManagementRoutingModule, imports: [CommonModule, RouterModule.forChild(routes), RouterModule] }); }
696
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: PluginManagementRoutingModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
697
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.18", ngImport: i0, type: PluginManagementRoutingModule, imports: [CommonModule, i1.RouterModule], exports: [RouterModule] }); }
698
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: PluginManagementRoutingModule, imports: [CommonModule, RouterModule.forChild(routes), RouterModule] }); }
699
699
  }
700
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: PluginManagementRoutingModule, decorators: [{
700
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: PluginManagementRoutingModule, decorators: [{
701
701
  type: NgModule,
702
702
  args: [{
703
703
  declarations: [],
@@ -722,8 +722,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.17", ngImpo
722
722
  * limitations under the License.
723
723
  */
724
724
  class PluginManagementModule {
725
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: PluginManagementModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
726
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.17", ngImport: i0, type: PluginManagementModule, declarations: [PluginManagementComponent,
725
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: PluginManagementModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
726
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.18", ngImport: i0, type: PluginManagementModule, declarations: [PluginManagementComponent,
727
727
  PluginAddModalComponent,
728
728
  PluginAddSelectComponent,
729
729
  PluginConfigureComponent,
@@ -750,7 +750,7 @@ class PluginManagementModule {
750
750
  PluginConfigureComponent,
751
751
  PluginEditModalComponent,
752
752
  PluginEditComponent] }); }
753
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: PluginManagementModule, providers: [PluginManagementStateService], imports: [CommonModule,
753
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: PluginManagementModule, providers: [PluginManagementStateService], imports: [CommonModule,
754
754
  PluginManagementRoutingModule,
755
755
  TranslateModule,
756
756
  ParagraphModule,
@@ -767,7 +767,7 @@ class PluginManagementModule {
767
767
  TilesModule,
768
768
  LoadingModule] }); }
769
769
  }
770
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: PluginManagementModule, decorators: [{
770
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: PluginManagementModule, decorators: [{
771
771
  type: NgModule,
772
772
  args: [{
773
773
  providers: [PluginManagementStateService],
@@ -1 +1 @@
1
- {"version":3,"file":"valtimo-plugin-management.mjs","sources":["../../../../projects/valtimo/plugin-management/src/lib/models/plugin-modal.model.ts","../../../../projects/valtimo/plugin-management/src/lib/models/index.ts","../../../../projects/valtimo/plugin-management/src/lib/services/plugin-management-state.service.ts","../../../../projects/valtimo/plugin-management/src/lib/services/index.ts","../../../../projects/valtimo/plugin-management/src/lib/components/plugin-add-select/plugin-add-select.component.ts","../../../../projects/valtimo/plugin-management/src/lib/components/plugin-add-select/plugin-add-select.component.html","../../../../projects/valtimo/plugin-management/src/lib/components/plugin-configure/plugin-configure.component.ts","../../../../projects/valtimo/plugin-management/src/lib/components/plugin-configure/plugin-configure.component.html","../../../../projects/valtimo/plugin-management/src/lib/components/plugin-add-modal/plugin-add-modal.component.ts","../../../../projects/valtimo/plugin-management/src/lib/components/plugin-add-modal/plugin-add-modal.component.html","../../../../projects/valtimo/plugin-management/src/lib/components/plugin-edit/plugin-edit.component.ts","../../../../projects/valtimo/plugin-management/src/lib/components/plugin-edit/plugin-edit.component.html","../../../../projects/valtimo/plugin-management/src/lib/components/plugin-edit-modal/plugin-edit-modal.component.ts","../../../../projects/valtimo/plugin-management/src/lib/components/plugin-edit-modal/plugin-edit-modal.component.html","../../../../projects/valtimo/plugin-management/src/lib/components/plugin-management/plugin-management.component.ts","../../../../projects/valtimo/plugin-management/src/lib/components/plugin-management/plugin-management.component.html","../../../../projects/valtimo/plugin-management/src/lib/plugin-management-routing.ts","../../../../projects/valtimo/plugin-management/src/lib/plugin-management.module.ts","../../../../projects/valtimo/plugin-management/src/public-api.ts","../../../../projects/valtimo/plugin-management/src/valtimo-plugin-management.ts"],"sourcesContent":["/*\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 PluginModal = 'add' | 'edit';\n\nexport {PluginModal};\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 './plugin-modal.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 {Injectable} from '@angular/core';\nimport {BehaviorSubject, combineLatest, Observable, Subject} from 'rxjs';\nimport {map, take} from 'rxjs/operators';\nimport {PluginModal} from '../models';\nimport {\n PluginService,\n PluginSpecification,\n PluginConfiguration,\n PluginDefinition,\n PluginDefinitionWithLogo,\n} from '@valtimo/plugin';\nimport {DomSanitizer} from '@angular/platform-browser';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class PluginManagementStateService {\n private readonly _showModal$ = new Subject<PluginModal>();\n private readonly _hideModal$ = new Subject();\n private readonly _inputDisabled$ = new BehaviorSubject<boolean>(false);\n private readonly _refresh$ = new BehaviorSubject<null>(null);\n private readonly _save$ = new Subject<null>();\n private readonly _saveEdit$ = new Subject<null>();\n private readonly _delete$ = new Subject<null>();\n private readonly _hideModalSaveButton$ = new BehaviorSubject<boolean>(false);\n private readonly _pluginDefinitions$ = new BehaviorSubject<Array<PluginDefinition> | undefined>(\n undefined\n );\n private readonly _pluginDefinitionsWithLogos$: Observable<\n Array<PluginDefinitionWithLogo> | undefined\n > = combineLatest([\n this._pluginDefinitions$,\n this.pluginService.pluginSpecifications$,\n this.pluginService.availablePluginIds$,\n ]).pipe(\n map(([pluginDefinitions, pluginSpecifications, availablePluginIds]) =>\n pluginDefinitions\n ?.filter(pluginDefinition => availablePluginIds.includes(pluginDefinition.key))\n .map(pluginDefinition => {\n const pluginSpecification = pluginSpecifications.find(\n specification => specification.pluginId === pluginDefinition.key\n );\n\n return {\n ...pluginDefinition,\n ...(pluginSpecification?.pluginLogoBase64 && {\n pluginLogoBase64: this.sanitizer.bypassSecurityTrustResourceUrl(\n pluginSpecification?.pluginLogoBase64\n ),\n }),\n };\n })\n )\n );\n private readonly _selectedPluginDefinition$ = new BehaviorSubject<PluginDefinition | undefined>(\n undefined\n );\n\n private readonly _selectedPluginConfiguration$ = new BehaviorSubject<\n PluginConfiguration | undefined\n >(undefined);\n\n constructor(\n private readonly pluginService: PluginService,\n private readonly sanitizer: DomSanitizer\n ) {}\n\n get showModal$(): Observable<PluginModal> {\n return this._showModal$.asObservable();\n }\n\n get hideModal$(): Observable<any> {\n return this._hideModal$.asObservable();\n }\n\n get inputDisabled$(): Observable<boolean> {\n return this._inputDisabled$.asObservable();\n }\n\n get refresh$(): Observable<any> {\n return this._refresh$.asObservable();\n }\n\n get pluginDefinitions$(): Observable<Array<PluginDefinition> | undefined> {\n return this._pluginDefinitions$.asObservable();\n }\n\n get pluginDefinitionsWithLogos$(): Observable<Array<PluginDefinitionWithLogo> | undefined> {\n return this._pluginDefinitionsWithLogos$;\n }\n\n get selectedPluginDefinition$(): Observable<PluginDefinition | undefined> {\n return this._selectedPluginDefinition$.asObservable();\n }\n\n get selectedPluginConfiguration$(): Observable<PluginConfiguration | undefined> {\n return this._selectedPluginConfiguration$.asObservable();\n }\n\n get save$(): Observable<any> {\n return this._save$.asObservable();\n }\n\n get saveEdit$(): Observable<any> {\n return this._saveEdit$.asObservable();\n }\n\n get delete$(): Observable<any> {\n return this._delete$.asObservable();\n }\n\n get hideModalSaveButton$(): Observable<boolean> {\n return this._hideModalSaveButton$.asObservable();\n }\n\n showModal(modalType: PluginModal): void {\n this._showModal$.next(modalType);\n }\n\n hideModal(): void {\n this._hideModal$.next(null);\n }\n\n disableInput(): void {\n this._inputDisabled$.next(true);\n }\n\n enableInput(): void {\n this._inputDisabled$.next(false);\n }\n\n refresh(): void {\n this._refresh$.next(null);\n }\n\n setPluginDefinitions(definitions: Array<PluginDefinition>): void {\n this._pluginDefinitions$.next(definitions);\n }\n\n selectPluginDefinition(definition: PluginDefinition): void {\n this._selectedPluginDefinition$.next(definition);\n }\n\n selectPluginConfiguration(configuration: PluginConfiguration): void {\n this._selectedPluginConfiguration$.next(configuration);\n }\n\n clearSelectedPluginDefinition(): void {\n this._selectedPluginDefinition$.next(undefined);\n }\n\n clearSelectedPluginConfiguration(): void {\n this._selectedPluginConfiguration$.next(undefined);\n }\n\n save(): void {\n this._save$.next(null);\n }\n\n saveEdit(): void {\n this._saveEdit$.next(null);\n }\n\n delete(): void {\n this._delete$.next(null);\n }\n\n hideModalSaveButton(): void {\n this._hideModalSaveButton$.next(true);\n }\n\n showModalSaveButton(): void {\n this._hideModalSaveButton$.next(false);\n }\n\n clear(): void {\n this.clearSelectedPluginDefinition();\n this.clearSelectedPluginConfiguration();\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 './plugin-management-state.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\nimport {Component, OnDestroy, OnInit} from '@angular/core';\nimport {combineLatest, Subscription} from 'rxjs';\nimport {PluginManagementStateService} from '../../services';\nimport {PluginDefinition, PluginManagementService} from '@valtimo/plugin';\n\n@Component({\n standalone: false,\n selector: 'valtimo-plugin-add-select',\n templateUrl: './plugin-add-select.component.html',\n styleUrls: ['./plugin-add-select.component.scss'],\n})\nexport class PluginAddSelectComponent implements OnInit, OnDestroy {\n public readonly selectedPluginDefinition$ = this.stateService.selectedPluginDefinition$;\n public readonly disabled$ = this.stateService.inputDisabled$;\n public readonly pluginDefinitionsWithLogos$ = this.stateService.pluginDefinitionsWithLogos$;\n\n private refreshSubscription!: Subscription;\n\n constructor(\n private readonly pluginManagementService: PluginManagementService,\n private readonly stateService: PluginManagementStateService\n ) {}\n\n public ngOnInit(): void {\n this.openRefreshSubscription();\n this.getPluginDefinitions();\n }\n\n public ngOnDestroy(): void {\n this.refreshSubscription?.unsubscribe();\n }\n\n public selectPluginDefinition(event: {value: PluginDefinition}): void {\n this.stateService.selectPluginDefinition(event.value);\n }\n\n public deselectPluginDefinition(): void {\n this.stateService.clearSelectedPluginDefinition();\n }\n\n private getPluginDefinitions(): void {\n this.pluginManagementService.getPluginDefinitions().subscribe(pluginDefinitions => {\n this.stateService.setPluginDefinitions(pluginDefinitions);\n });\n }\n\n private openRefreshSubscription(): void {\n this.refreshSubscription = combineLatest([\n this.stateService.showModal$,\n this.stateService.refresh$,\n ]).subscribe(() => {\n this.stateService.clearSelectedPluginDefinition();\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-container *ngIf=\"pluginDefinitionsWithLogos$ | async as pluginDefinitions; else loading\">\n <div class=\"plugin-definition__grid\">\n <ng-container\n *ngTemplateOutlet=\"pluginDefinitionsTemplate; context: {pluginDefinitions: pluginDefinitions}\"\n ></ng-container>\n <ng-container\n *ngTemplateOutlet=\"\n noPluginDefinitionsTemplate;\n context: {pluginDefinitions: pluginDefinitions}\n \"\n ></ng-container>\n </div>\n</ng-container>\n\n<ng-template #noPluginDefinitionsTemplate let-pluginDefinitions=\"pluginDefinitions\">\n <div *ngIf=\"pluginDefinitions?.length === 0\" class=\"plugin-definition__no-results\">\n <v-paragraph [center]=\"true\" [fullWidth]=\"true\">{{\n 'pluginManagement.noDefinitions' | translate\n }}</v-paragraph>\n </div>\n</ng-template>\n\n<ng-template #pluginDefinitionsTemplate let-pluginDefinitions=\"pluginDefinitions\">\n <cds-tile-group [multiple]=\"false\" (selected)=\"selectPluginDefinition($event)\" [cdsLayer]=\"1\">\n <cds-selection-tile\n *ngFor=\"let pluginDefinition of pluginDefinitions\"\n [value]=\"pluginDefinition\"\n [selected]=\"(selectedPluginDefinition$ | async)?.key === pluginDefinition.key\"\n >\n <img\n class=\"plugin-definition-logo\"\n [title]=\"'title' | pluginTranslate: pluginDefinition.key | async\"\n [src]=\"pluginDefinition.pluginLogoBase64\"\n />\n\n <h5>{{ 'title' | pluginTranslate: pluginDefinition.key | async }}</h5>\n\n <p>{{ 'description' | pluginTranslate: pluginDefinition.key | async }}</p>\n </cds-selection-tile>\n </cds-tile-group>\n</ng-template>\n\n<ng-template #loading>\n <div class=\"plugin-definition__grid\">\n <ng-container *ngTemplateOutlet=\"loadingCard\"></ng-container>\n <ng-container *ngTemplateOutlet=\"loadingCard\"></ng-container>\n <ng-container *ngTemplateOutlet=\"loadingCard\"></ng-container>\n </div>\n</ng-template>\n\n<ng-template #loadingCard>\n <div class=\"plugin-definition__item\">\n <cds-loading size=\"sm\"></cds-loading>\n </div>\n</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 {Component, EventEmitter, Input, Output} from '@angular/core';\nimport {map, switchMap} from 'rxjs/operators';\nimport {PluginManagementStateService} from '../../services';\nimport {PluginConfigurationData} from '@valtimo/plugin';\nimport {of} from 'rxjs';\n\n@Component({\n standalone: false,\n selector: 'valtimo-plugin-configure',\n templateUrl: './plugin-configure.component.html',\n styleUrls: ['./plugin-configure.component.scss'],\n})\nexport class PluginConfigureComponent {\n @Output() valid: EventEmitter<boolean> = new EventEmitter<boolean>();\n @Output() configuration: EventEmitter<PluginConfigurationData> =\n new EventEmitter<PluginConfigurationData>();\n\n public readonly save$ = this.stateService.save$;\n\n public readonly pluginDefinitionKey$ = this.stateService.selectedPluginDefinition$.pipe(\n map(definition => definition?.key)\n );\n\n public readonly prefillConfiguration$ = of(undefined);\n\n public readonly disabled$ = this.stateService.inputDisabled$;\n\n constructor(private readonly stateService: PluginManagementStateService) {}\n\n public onValid(valid: boolean): void {\n this.valid.emit(valid);\n }\n\n public onFunctionConfiguration(configuration: PluginConfigurationData): void{\n this.configuration.emit(configuration);\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<valtimo-plugin-configuration-container\n *ngIf=\"pluginDefinitionKey$ | async as pluginDefinitionKey\"\n [cdsLayer]=\"1\"\n [pluginDefinitionKey]=\"pluginDefinitionKey\"\n [prefillConfiguration$]=\"prefillConfiguration$\"\n [save$]=\"save$\"\n [disabled$]=\"disabled$\"\n (valid)=\"onValid($event)\"\n (configuration)=\"onFunctionConfiguration($event)\"\n type=\"configuration\"\n></valtimo-plugin-configuration-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 {Component, EventEmitter, Input, Output} from '@angular/core';\nimport {PluginManagementStateService} from '../../services';\nimport {take} from 'rxjs/operators';\nimport {BehaviorSubject, Subject} from 'rxjs';\nimport {PluginConfigurationData, PluginManagementService} from '@valtimo/plugin';\nimport {NGXLogger} from 'ngx-logger';\nimport {CARBON_CONSTANTS} from '@valtimo/components';\n\n@Component({\n standalone: false,\n selector: 'valtimo-plugin-add-modal',\n templateUrl: './plugin-add-modal.component.html',\n styleUrls: ['./plugin-add-modal.component.scss'],\n})\nexport class PluginAddModalComponent {\n @Input() open = false;\n\n @Output() closeModal: EventEmitter<boolean> = new EventEmitter();\n\n public readonly inputDisabled$ = this.stateService.inputDisabled$;\n public readonly selectedPluginDefinition$ = this.stateService.selectedPluginDefinition$;\n public readonly configurationValid$ = new BehaviorSubject<boolean>(false);\n public readonly returnToFirstStepSubject$ = new Subject<boolean>();\n\n constructor(\n private readonly stateService: PluginManagementStateService,\n private readonly pluginManagementService: PluginManagementService,\n private readonly logger: NGXLogger\n ) {}\n\n public complete(): void {\n this.stateService.save();\n }\n\n public hide(): void {\n this.closeModal.emit();\n\n setTimeout(() => {\n this.returnToFirstStep();\n this.stateService.enableInput();\n this.stateService.clear();\n }, CARBON_CONSTANTS.modalAnimationMs);\n }\n\n public onValid(valid: boolean): void {\n this.configurationValid$.next(valid);\n }\n\n public onConfiguration(configuration: PluginConfigurationData): void {\n const pluginConfiguration = {...configuration};\n delete pluginConfiguration['configurationId'];\n delete pluginConfiguration['configurationTitle'];\n\n this.stateService.disableInput();\n\n this.stateService.selectedPluginDefinition$.pipe(take(1)).subscribe(selectedDefinition => {\n this.pluginManagementService\n .savePluginConfiguration({\n id: configuration.configurationId,\n definitionKey: selectedDefinition.key,\n title: configuration.configurationTitle,\n properties: pluginConfiguration,\n })\n .subscribe({\n next: () => {\n this.stateService.refresh();\n this.hide();\n },\n error: () => {\n this.logger.error('Something went wrong with saving the plugin configuration.');\n this.stateService.enableInput();\n },\n });\n });\n }\n\n private returnToFirstStep(): void {\n this.returnToFirstStepSubject$.next(true);\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<v-stepper-container\n (completeEvent)=\"complete()\"\n (cancelClickEvent)=\"hide()\"\n [disabled]=\"inputDisabled$ | async\"\n [returnToFirstStepSubject$]=\"returnToFirstStepSubject$\"\n>\n <cds-modal valtimoCdsModal #pluginAddModal [open]=\"open\" (close)=\"hide()\">\n <cds-modal-header [showCloseButton]=\"true\" (closeSelect)=\"hide()\">\n <v-stepper-header></v-stepper-header>\n </cds-modal-header>\n <section cdsModalContent>\n <v-stepper-content>\n <v-stepper-step titleTranslationKey=\"pluginManagement.addSteps.step0\">\n <valtimo-plugin-add-select></valtimo-plugin-add-select>\n </v-stepper-step>\n <v-stepper-step titleTranslationKey=\"pluginManagement.addSteps.step1\">\n <valtimo-plugin-configure\n (valid)=\"onValid($event)\"\n (configuration)=\"onConfiguration($event)\"\n ></valtimo-plugin-configure>\n </v-stepper-step>\n </v-stepper-content>\n </section>\n <cds-modal-footer>\n <v-stepper-footer class=\"stepper-footer\">\n <v-stepper-footer-step\n nextButtonTranslationKey=\"pluginManagement.addSteps.step1\"\n [nextButtonEnabled]=\"selectedPluginDefinition$ | async\"\n ></v-stepper-footer-step>\n <v-stepper-footer-step\n completeButtonTranslationKey=\"pluginManagement.addSteps.complete\"\n [completeButtonEnabled]=\"configurationValid$ | async\"\n ></v-stepper-footer-step>\n </v-stepper-footer>\n </cds-modal-footer>\n </cds-modal>\n</v-stepper-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 {Component, EventEmitter, Input, Output} from '@angular/core';\nimport {map, switchMap} from 'rxjs/operators';\nimport {PluginManagementStateService} from '../../services';\nimport {PluginConfigurationData} from '@valtimo/plugin';\n\n@Component({\n standalone: false,\n selector: 'valtimo-plugin-edit',\n templateUrl: './plugin-edit.component.html',\n styleUrls: ['./plugin-edit.component.scss'],\n})\nexport class PluginEditComponent {\n @Output() valid: EventEmitter<boolean> = new EventEmitter<boolean>();\n @Output() configuration: EventEmitter<PluginConfigurationData> =\n new EventEmitter<PluginConfigurationData>();\n\n public readonly saveEdit$ = this.stateService.saveEdit$;\n\n public readonly pluginDefinitionKey$ = this.stateService.selectedPluginConfiguration$.pipe(\n map(configuration => configuration?.pluginDefinition?.key)\n );\n\n public readonly prefillConfiguration$ = this.stateService.selectedPluginConfiguration$.pipe(\n map(configuration =>\n configuration\n ? {\n ...configuration.properties,\n configurationId: configuration.id,\n configurationTitle: configuration.title,\n }\n : undefined\n )\n );\n\n public readonly disabled$ = this.stateService.inputDisabled$;\n\n constructor(private readonly stateService: PluginManagementStateService) {}\n\n public onValid(valid: boolean): void {\n this.valid.emit(valid);\n }\n\n public onFunctionConfiguration(configuration: PluginConfigurationData): void {\n this.configuration.emit(configuration);\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<valtimo-plugin-configuration-container\n *ngIf=\"pluginDefinitionKey$ | async as pluginDefinitionKey\"\n [cdsLayer]=\"1\"\n [pluginDefinitionKey]=\"pluginDefinitionKey\"\n [prefillConfiguration$]=\"prefillConfiguration$\"\n [save$]=\"saveEdit$\"\n [disabled$]=\"disabled$\"\n (valid)=\"onValid($event)\"\n (configuration)=\"onFunctionConfiguration($event)\"\n type=\"configuration\"\n></valtimo-plugin-configuration-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 {Component, EventEmitter, Input, Output} from '@angular/core';\nimport {PluginManagementStateService} from '../../services';\nimport {take} from 'rxjs/operators';\nimport {BehaviorSubject, Observable} from 'rxjs';\nimport {\n PluginConfiguration,\n PluginConfigurationData,\n PluginManagementService,\n} from '@valtimo/plugin';\nimport {NGXLogger} from 'ngx-logger';\n\n@Component({\n standalone: false,\n selector: 'valtimo-plugin-edit-modal',\n templateUrl: './plugin-edit-modal.component.html',\n styleUrls: ['./plugin-edit-modal.component.scss'],\n})\nexport class PluginEditModalComponent {\n @Input() public readonly open = false;\n @Input() public readonly saveNewConfiguration = false;\n\n @Output() closeModal: EventEmitter<boolean> = new EventEmitter();\n\n public readonly inputDisabled$ = this.stateService.inputDisabled$;\n public readonly selectedPluginConfiguration$: Observable<PluginConfiguration> =\n this.stateService.selectedPluginConfiguration$;\n public readonly configurationValid$ = new BehaviorSubject<boolean>(false);\n\n constructor(\n private readonly stateService: PluginManagementStateService,\n private readonly pluginManagementService: PluginManagementService,\n private readonly logger: NGXLogger\n ) {}\n\n public save(): void {\n this.stateService.saveEdit();\n }\n\n public delete(): void {\n this.stateService.delete();\n this.stateService.disableInput();\n\n this.stateService.selectedPluginConfiguration$\n .pipe(take(1))\n .subscribe(selectedPluginConfiguration => {\n this.pluginManagementService\n .deletePluginConfiguration(selectedPluginConfiguration.id)\n .subscribe(\n () => {\n this.stateService.refresh();\n this.hide();\n },\n () => {\n this.logger.error('Something went wrong with deleting the plugin configuration.');\n this.stateService.enableInput();\n }\n );\n });\n }\n\n public hide(): void {\n this.closeModal.emit();\n this.stateService.enableInput();\n }\n\n public onPluginValid(valid: boolean): void {\n this.configurationValid$.next(valid);\n }\n\n public onPluginConfiguration(configuration: PluginConfigurationData): void {\n this.stateService.disableInput();\n\n if (this.saveNewConfiguration) {\n this.saveNewPluginConfiguration(configuration);\n return;\n }\n\n this.stateService.selectedPluginConfiguration$\n .pipe(take(1))\n .subscribe(selectedPluginConfiguration => {\n const configurationId = configuration.configurationId;\n const configurationTitle = configuration.configurationTitle;\n const configurationData = {...configuration};\n delete configurationData['configurationTitle'];\n\n this.pluginManagementService\n .updatePluginConfiguration(\n selectedPluginConfiguration.id,\n configurationId,\n configurationTitle,\n configurationData\n )\n .subscribe({\n next: () => {\n this.stateService.refresh();\n this.hide();\n },\n error: () => {\n this.logger.error('Something went wrong with updating the plugin configuration.');\n this.stateService.enableInput();\n },\n });\n });\n }\n\n private saveNewPluginConfiguration(configuration: PluginConfigurationData): void {\n this.stateService.selectedPluginConfiguration$\n .pipe(take(1))\n .subscribe(selectedPluginConfiguration => {\n const duplicatedConfiguration = {...selectedPluginConfiguration, properties: configuration};\n\n duplicatedConfiguration.title = duplicatedConfiguration.properties.configurationTitle;\n\n delete duplicatedConfiguration.properties.configurationTitle;\n delete duplicatedConfiguration.properties.configurationId;\n\n this.pluginManagementService.savePluginConfiguration(duplicatedConfiguration).subscribe({\n next: () => {\n this.stateService.refresh();\n this.hide();\n },\n error: () => {\n this.logger.error(\n 'Something went wrong with saving the duplicated plugin configuration.'\n );\n this.stateService.enableInput();\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\n<cds-modal\n #pluginEditModal\n valtimoCdsModal\n [open]=\"open\"\n (close)=\"hide()\"\n *ngIf=\"{selectedConfiguration: selectedPluginConfiguration$ | async} as obs\"\n>\n <cds-modal-header [showCloseButton]=\"true\" (closeSelect)=\"hide()\">\n {{\n obs.selectedConfiguration?.title +\n ' - ' +\n ('title' | pluginTranslate: obs.selectedConfiguration?.pluginDefinition?.key | async)\n }}\n </cds-modal-header>\n <section cdsModalContent>\n <valtimo-plugin-edit\n (valid)=\"onPluginValid($event)\"\n (configuration)=\"onPluginConfiguration($event)\"\n ></valtimo-plugin-edit>\n </section>\n <cds-modal-footer>\n <button cdsButton=\"danger\" (click)=\"delete()\" [disabled]=\"inputDisabled$ | async\">\n {{ 'pluginManagement.remove' | translate }}\n </button>\n <button\n cdsButton=\"primary\"\n [disabled]=\"(configurationValid$ | async) === false || (inputDisabled$ | async)\"\n (click)=\"save()\"\n >\n {{ 'pluginManagement.save' | translate }}\n </button>\n </cds-modal-footer>\n</cds-modal>\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 {Component} from '@angular/core';\nimport {TranslateService} from '@ngx-translate/core';\nimport {ActionItem, ColumnConfig, ViewType} from '@valtimo/components';\nimport {\n PluginConfiguration,\n PluginManagementService,\n PluginTranslationService,\n} from '@valtimo/plugin';\nimport {NGXLogger} from 'ngx-logger';\nimport {BehaviorSubject, combineLatest, Observable} from 'rxjs';\nimport {map, switchMap, take, tap} from 'rxjs/operators';\nimport {PluginManagementStateService} from '../../services';\nimport {cloneDeep} from 'lodash';\nimport {v4 as uuidv4} from 'uuid';\n\n@Component({\n standalone: false,\n selector: 'valtimo-plugin-management',\n templateUrl: './plugin-management.component.html',\n styleUrls: ['./plugin-management.component.scss'],\n})\nexport class PluginManagementComponent {\n public readonly fields: ColumnConfig[] = [\n {\n key: 'title',\n label: 'pluginManagement.labels.configurationName',\n viewType: ViewType.TEXT,\n },\n {\n key: 'pluginName',\n label: 'pluginManagement.labels.pluginName',\n viewType: ViewType.TEXT,\n },\n {\n key: 'definitionKey',\n label: 'pluginManagement.labels.identifier',\n viewType: ViewType.TEXT,\n },\n ];\n public readonly actionItems: ActionItem[] = [\n {\n callback: this.editConfiguration.bind(this),\n label: 'interface.edit',\n },\n {\n label: 'interface.duplicate',\n callback: this.duplicateConfiguration.bind(this),\n },\n {\n callback: this.deleteConfiguration.bind(this),\n label: 'interface.delete',\n type: 'danger',\n },\n ];\n\n public readonly loading$ = new BehaviorSubject<boolean>(true);\n public readonly showEditModal$ = new BehaviorSubject<boolean>(false);\n public readonly showAddModal$ = new BehaviorSubject<boolean>(false);\n public readonly pluginConfigurations$: Observable<PluginConfiguration[]> =\n this.stateService.refresh$.pipe(\n switchMap(() =>\n combineLatest([\n this.pluginManagementService.getAllPluginConfigurations(),\n this.translateService.stream('key'),\n ]).pipe(\n map(([pluginConfigurations]) =>\n pluginConfigurations.map(configuration => ({\n ...configuration,\n pluginName: this.pluginTranslationService.instant(\n 'title',\n configuration.pluginDefinition?.key ?? ''\n ),\n definitionKey: configuration.pluginDefinition?.key ?? '',\n }))\n ),\n tap(() => {\n this.loading$.next(false);\n })\n )\n )\n );\n\n public readonly saveNewConfiguration$ = new BehaviorSubject<boolean>(false);\n\n constructor(\n private readonly logger: NGXLogger,\n private readonly pluginManagementService: PluginManagementService,\n private readonly pluginTranslationService: PluginTranslationService,\n private readonly stateService: PluginManagementStateService,\n private readonly translateService: TranslateService\n ) {}\n\n public showAddModal(): void {\n this.showAddModal$.next(true);\n }\n\n public editConfiguration(configuration: PluginConfiguration): void {\n this.showEditModal$.next(true);\n this.saveNewConfiguration$.next(false);\n this.stateService.selectPluginConfiguration(configuration);\n }\n\n public deleteConfiguration(configuration: PluginConfiguration): void {\n if (!configuration.id) {\n return;\n }\n\n this.pluginManagementService\n .deletePluginConfiguration(configuration.id)\n .pipe(take(1))\n .subscribe({\n next: () => {\n this.stateService.refresh();\n },\n error: () => {\n this.logger.error('Something went wrong with deleting the plugin configuration.');\n },\n });\n }\n\n public closeEditModal(): void {\n this.showEditModal$.next(false);\n }\n\n public closeAddModal(): void {\n this.showAddModal$.next(false);\n }\n\n public duplicateConfiguration(configuration: PluginConfiguration): void {\n const configurationClone = cloneDeep(configuration);\n configurationClone.id = uuidv4();\n this.showEditModal$.next(true);\n this.saveNewConfiguration$.next(true);\n this.stateService.selectPluginConfiguration(configurationClone);\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<ng-container\n *ngIf=\"{\n pluginConfigurations: pluginConfigurations$ | async,\n loading: loading$ | async,\n } as obs\"\n>\n <valtimo-carbon-list\n [actionItems]=\"actionItems\"\n [loading]=\"obs.loading\"\n [items]=\"obs.pluginConfigurations\"\n [fields]=\"fields\"\n [header]=\"false\"\n (rowClicked)=\"editConfiguration($event)\"\n >\n <ng-container carbonToolbarContent [ngTemplateOutlet]=\"configurePluginButton\"></ng-container>\n\n <valtimo-no-results\n [action]=\"configurePluginButton\"\n [title]=\"'pages.plugins.noResults' | translate\"\n ></valtimo-no-results>\n </valtimo-carbon-list>\n\n <ng-template #configurePluginButton>\n <button cdsButton=\"primary\" [disabled]=\"obs.loading\" (click)=\"showAddModal()\">\n {{ 'pluginManagement.add' | translate }}\n\n <svg cdsIcon=\"add\" size=\"16\" class=\"cds--btn__icon\"></svg>\n </button>\n </ng-template>\n</ng-container>\n\n<valtimo-plugin-add-modal\n [open]=\"showAddModal$ | async\"\n (closeModal)=\"closeAddModal()\"\n></valtimo-plugin-add-modal>\n\n<valtimo-plugin-edit-modal\n [open]=\"showEditModal$ | async\"\n [saveNewConfiguration]=\"saveNewConfiguration$ | async\"\n (closeModal)=\"closeEditModal()\"\n></valtimo-plugin-edit-modal>\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 {NgModule} from '@angular/core';\nimport {RouterModule, Routes} from '@angular/router';\nimport {CommonModule} from '@angular/common';\nimport {AuthGuardService} from '@valtimo/security';\nimport {ROLE_ADMIN} from '@valtimo/shared';\nimport {PluginManagementComponent} from './components/plugin-management/plugin-management.component';\n\nconst routes: Routes = [\n {\n path: 'plugins',\n component: PluginManagementComponent,\n canActivate: [AuthGuardService],\n data: {title: 'Plugins', roles: [ROLE_ADMIN]},\n },\n];\n\n@NgModule({\n declarations: [],\n imports: [CommonModule, RouterModule.forChild(routes)],\n exports: [RouterModule],\n})\nexport class PluginManagementRoutingModule {}\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 {NgModule} from '@angular/core';\nimport {PluginManagementRoutingModule} from './plugin-management-routing';\nimport {CommonModule} from '@angular/common';\nimport {TranslateModule} from '@ngx-translate/core';\nimport {PluginManagementComponent} from './components/plugin-management/plugin-management.component';\nimport {PluginAddModalComponent} from './components/plugin-add-modal/plugin-add-modal.component';\nimport {PluginManagementStateService} from './services';\nimport {PluginAddSelectComponent} from './components/plugin-add-select/plugin-add-select.component';\nimport {PluginConfigureComponent} from './components/plugin-configure/plugin-configure.component';\nimport {PluginConfigurationContainerModule, PluginTranslatePipeModule} from '@valtimo/plugin';\nimport {PluginEditModalComponent} from './components/plugin-edit-modal/plugin-edit-modal.component';\nimport {PluginEditComponent} from './components/plugin-edit/plugin-edit.component';\nimport {\n CarbonListModule,\n ParagraphModule,\n StepperModule,\n TableModule,\n ValtimoCdsModalDirective,\n VModalModule,\n} from '@valtimo/components';\nimport {\n ButtonModule as CarbonButtonModule,\n IconModule,\n LayerModule,\n LoadingModule,\n ModalModule as CarbonModalModule,\n TilesModule,\n} from 'carbon-components-angular';\n\n@NgModule({\n providers: [PluginManagementStateService],\n declarations: [\n PluginManagementComponent,\n PluginAddModalComponent,\n PluginAddSelectComponent,\n PluginConfigureComponent,\n PluginEditModalComponent,\n PluginEditComponent,\n ],\n imports: [\n CommonModule,\n PluginManagementRoutingModule,\n TranslateModule,\n ParagraphModule,\n TableModule,\n StepperModule,\n VModalModule,\n PluginTranslatePipeModule,\n PluginConfigurationContainerModule,\n CarbonButtonModule,\n CarbonListModule,\n CarbonModalModule,\n IconModule,\n ValtimoCdsModalDirective,\n LayerModule,\n TilesModule,\n LoadingModule,\n ],\n exports: [\n PluginManagementComponent,\n PluginAddModalComponent,\n PluginAddSelectComponent,\n PluginConfigureComponent,\n PluginEditModalComponent,\n PluginEditComponent,\n ],\n})\nexport class PluginManagementModule {}\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 plugin-management\n */\n\nexport * from './lib/models';\nexport * from './lib/services';\nexport * from './lib/plugin-management.module';\nexport * from './lib/components/plugin-management/plugin-management.component';\nexport * from './lib/components/plugin-add-modal/plugin-add-modal.component';\nexport * from './lib/components/plugin-add-select/plugin-add-select.component';\nexport * from './lib/components/plugin-configure/plugin-configure.component';\nexport * from './lib/components/plugin-edit-modal/plugin-edit-modal.component';\nexport * from './lib/components/plugin-edit/plugin-edit.component';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1","i2","i2.PluginManagementStateService","i6","i1.PluginManagementStateService","i3","i4","i6.PluginAddSelectComponent","i7.PluginConfigureComponent","i8","i7.PluginEditComponent","uuidv4","i3.PluginManagementStateService","i5","i7","i8.PluginAddModalComponent","i9.PluginEditModalComponent","CarbonButtonModule","CarbonModalModule"],"mappings":"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"}
1
+ {"version":3,"file":"valtimo-plugin-management.mjs","sources":["../../../../projects/valtimo/plugin-management/src/lib/models/plugin-modal.model.ts","../../../../projects/valtimo/plugin-management/src/lib/models/index.ts","../../../../projects/valtimo/plugin-management/src/lib/services/plugin-management-state.service.ts","../../../../projects/valtimo/plugin-management/src/lib/services/index.ts","../../../../projects/valtimo/plugin-management/src/lib/components/plugin-add-select/plugin-add-select.component.ts","../../../../projects/valtimo/plugin-management/src/lib/components/plugin-add-select/plugin-add-select.component.html","../../../../projects/valtimo/plugin-management/src/lib/components/plugin-configure/plugin-configure.component.ts","../../../../projects/valtimo/plugin-management/src/lib/components/plugin-configure/plugin-configure.component.html","../../../../projects/valtimo/plugin-management/src/lib/components/plugin-add-modal/plugin-add-modal.component.ts","../../../../projects/valtimo/plugin-management/src/lib/components/plugin-add-modal/plugin-add-modal.component.html","../../../../projects/valtimo/plugin-management/src/lib/components/plugin-edit/plugin-edit.component.ts","../../../../projects/valtimo/plugin-management/src/lib/components/plugin-edit/plugin-edit.component.html","../../../../projects/valtimo/plugin-management/src/lib/components/plugin-edit-modal/plugin-edit-modal.component.ts","../../../../projects/valtimo/plugin-management/src/lib/components/plugin-edit-modal/plugin-edit-modal.component.html","../../../../projects/valtimo/plugin-management/src/lib/components/plugin-management/plugin-management.component.ts","../../../../projects/valtimo/plugin-management/src/lib/components/plugin-management/plugin-management.component.html","../../../../projects/valtimo/plugin-management/src/lib/plugin-management-routing.ts","../../../../projects/valtimo/plugin-management/src/lib/plugin-management.module.ts","../../../../projects/valtimo/plugin-management/src/public-api.ts","../../../../projects/valtimo/plugin-management/src/valtimo-plugin-management.ts"],"sourcesContent":["/*\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 PluginModal = 'add' | 'edit';\n\nexport {PluginModal};\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 './plugin-modal.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 {Injectable} from '@angular/core';\nimport {BehaviorSubject, combineLatest, Observable, Subject} from 'rxjs';\nimport {map, take} from 'rxjs/operators';\nimport {PluginModal} from '../models';\nimport {\n PluginService,\n PluginSpecification,\n PluginConfiguration,\n PluginDefinition,\n PluginDefinitionWithLogo,\n} from '@valtimo/plugin';\nimport {DomSanitizer} from '@angular/platform-browser';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class PluginManagementStateService {\n private readonly _showModal$ = new Subject<PluginModal>();\n private readonly _hideModal$ = new Subject();\n private readonly _inputDisabled$ = new BehaviorSubject<boolean>(false);\n private readonly _refresh$ = new BehaviorSubject<null>(null);\n private readonly _save$ = new Subject<null>();\n private readonly _saveEdit$ = new Subject<null>();\n private readonly _delete$ = new Subject<null>();\n private readonly _hideModalSaveButton$ = new BehaviorSubject<boolean>(false);\n private readonly _pluginDefinitions$ = new BehaviorSubject<Array<PluginDefinition> | undefined>(\n undefined\n );\n private readonly _pluginDefinitionsWithLogos$: Observable<\n Array<PluginDefinitionWithLogo> | undefined\n > = combineLatest([\n this._pluginDefinitions$,\n this.pluginService.pluginSpecifications$,\n this.pluginService.availablePluginIds$,\n ]).pipe(\n map(([pluginDefinitions, pluginSpecifications, availablePluginIds]) =>\n pluginDefinitions\n ?.filter(pluginDefinition => availablePluginIds.includes(pluginDefinition.key))\n .map(pluginDefinition => {\n const pluginSpecification = pluginSpecifications.find(\n specification => specification.pluginId === pluginDefinition.key\n );\n\n return {\n ...pluginDefinition,\n ...(pluginSpecification?.pluginLogoBase64 && {\n pluginLogoBase64: this.sanitizer.bypassSecurityTrustResourceUrl(\n pluginSpecification?.pluginLogoBase64\n ),\n }),\n };\n })\n )\n );\n private readonly _selectedPluginDefinition$ = new BehaviorSubject<PluginDefinition | undefined>(\n undefined\n );\n\n private readonly _selectedPluginConfiguration$ = new BehaviorSubject<\n PluginConfiguration | undefined\n >(undefined);\n\n constructor(\n private readonly pluginService: PluginService,\n private readonly sanitizer: DomSanitizer\n ) {}\n\n get showModal$(): Observable<PluginModal> {\n return this._showModal$.asObservable();\n }\n\n get hideModal$(): Observable<any> {\n return this._hideModal$.asObservable();\n }\n\n get inputDisabled$(): Observable<boolean> {\n return this._inputDisabled$.asObservable();\n }\n\n get refresh$(): Observable<any> {\n return this._refresh$.asObservable();\n }\n\n get pluginDefinitions$(): Observable<Array<PluginDefinition> | undefined> {\n return this._pluginDefinitions$.asObservable();\n }\n\n get pluginDefinitionsWithLogos$(): Observable<Array<PluginDefinitionWithLogo> | undefined> {\n return this._pluginDefinitionsWithLogos$;\n }\n\n get selectedPluginDefinition$(): Observable<PluginDefinition | undefined> {\n return this._selectedPluginDefinition$.asObservable();\n }\n\n get selectedPluginConfiguration$(): Observable<PluginConfiguration | undefined> {\n return this._selectedPluginConfiguration$.asObservable();\n }\n\n get save$(): Observable<any> {\n return this._save$.asObservable();\n }\n\n get saveEdit$(): Observable<any> {\n return this._saveEdit$.asObservable();\n }\n\n get delete$(): Observable<any> {\n return this._delete$.asObservable();\n }\n\n get hideModalSaveButton$(): Observable<boolean> {\n return this._hideModalSaveButton$.asObservable();\n }\n\n showModal(modalType: PluginModal): void {\n this._showModal$.next(modalType);\n }\n\n hideModal(): void {\n this._hideModal$.next(null);\n }\n\n disableInput(): void {\n this._inputDisabled$.next(true);\n }\n\n enableInput(): void {\n this._inputDisabled$.next(false);\n }\n\n refresh(): void {\n this._refresh$.next(null);\n }\n\n setPluginDefinitions(definitions: Array<PluginDefinition>): void {\n this._pluginDefinitions$.next(definitions);\n }\n\n selectPluginDefinition(definition: PluginDefinition): void {\n this._selectedPluginDefinition$.next(definition);\n }\n\n selectPluginConfiguration(configuration: PluginConfiguration): void {\n this._selectedPluginConfiguration$.next(configuration);\n }\n\n clearSelectedPluginDefinition(): void {\n this._selectedPluginDefinition$.next(undefined);\n }\n\n clearSelectedPluginConfiguration(): void {\n this._selectedPluginConfiguration$.next(undefined);\n }\n\n save(): void {\n this._save$.next(null);\n }\n\n saveEdit(): void {\n this._saveEdit$.next(null);\n }\n\n delete(): void {\n this._delete$.next(null);\n }\n\n hideModalSaveButton(): void {\n this._hideModalSaveButton$.next(true);\n }\n\n showModalSaveButton(): void {\n this._hideModalSaveButton$.next(false);\n }\n\n clear(): void {\n this.clearSelectedPluginDefinition();\n this.clearSelectedPluginConfiguration();\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 './plugin-management-state.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\nimport {Component, OnDestroy, OnInit} from '@angular/core';\nimport {combineLatest, Subscription} from 'rxjs';\nimport {PluginManagementStateService} from '../../services';\nimport {PluginDefinition, PluginManagementService} from '@valtimo/plugin';\n\n@Component({\n standalone: false,\n selector: 'valtimo-plugin-add-select',\n templateUrl: './plugin-add-select.component.html',\n styleUrls: ['./plugin-add-select.component.scss'],\n})\nexport class PluginAddSelectComponent implements OnInit, OnDestroy {\n public readonly selectedPluginDefinition$ = this.stateService.selectedPluginDefinition$;\n public readonly disabled$ = this.stateService.inputDisabled$;\n public readonly pluginDefinitionsWithLogos$ = this.stateService.pluginDefinitionsWithLogos$;\n\n private refreshSubscription!: Subscription;\n\n constructor(\n private readonly pluginManagementService: PluginManagementService,\n private readonly stateService: PluginManagementStateService\n ) {}\n\n public ngOnInit(): void {\n this.openRefreshSubscription();\n this.getPluginDefinitions();\n }\n\n public ngOnDestroy(): void {\n this.refreshSubscription?.unsubscribe();\n }\n\n public selectPluginDefinition(event: {value: PluginDefinition}): void {\n this.stateService.selectPluginDefinition(event.value);\n }\n\n public deselectPluginDefinition(): void {\n this.stateService.clearSelectedPluginDefinition();\n }\n\n private getPluginDefinitions(): void {\n this.pluginManagementService.getPluginDefinitions().subscribe(pluginDefinitions => {\n this.stateService.setPluginDefinitions(pluginDefinitions);\n });\n }\n\n private openRefreshSubscription(): void {\n this.refreshSubscription = combineLatest([\n this.stateService.showModal$,\n this.stateService.refresh$,\n ]).subscribe(() => {\n this.stateService.clearSelectedPluginDefinition();\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-container *ngIf=\"pluginDefinitionsWithLogos$ | async as pluginDefinitions; else loading\">\n <div class=\"plugin-definition__grid\">\n <ng-container\n *ngTemplateOutlet=\"pluginDefinitionsTemplate; context: {pluginDefinitions: pluginDefinitions}\"\n ></ng-container>\n <ng-container\n *ngTemplateOutlet=\"\n noPluginDefinitionsTemplate;\n context: {pluginDefinitions: pluginDefinitions}\n \"\n ></ng-container>\n </div>\n</ng-container>\n\n<ng-template #noPluginDefinitionsTemplate let-pluginDefinitions=\"pluginDefinitions\">\n <div *ngIf=\"pluginDefinitions?.length === 0\" class=\"plugin-definition__no-results\">\n <v-paragraph [center]=\"true\" [fullWidth]=\"true\">{{\n 'pluginManagement.noDefinitions' | translate\n }}</v-paragraph>\n </div>\n</ng-template>\n\n<ng-template #pluginDefinitionsTemplate let-pluginDefinitions=\"pluginDefinitions\">\n <cds-tile-group [multiple]=\"false\" (selected)=\"selectPluginDefinition($event)\" [cdsLayer]=\"1\">\n <cds-selection-tile\n *ngFor=\"let pluginDefinition of pluginDefinitions\"\n [value]=\"pluginDefinition\"\n [selected]=\"(selectedPluginDefinition$ | async)?.key === pluginDefinition.key\"\n >\n <img\n class=\"plugin-definition-logo\"\n [title]=\"'title' | pluginTranslate: pluginDefinition.key | async\"\n [src]=\"pluginDefinition.pluginLogoBase64\"\n />\n\n <h5>{{ 'title' | pluginTranslate: pluginDefinition.key | async }}</h5>\n\n <p>{{ 'description' | pluginTranslate: pluginDefinition.key | async }}</p>\n </cds-selection-tile>\n </cds-tile-group>\n</ng-template>\n\n<ng-template #loading>\n <div class=\"plugin-definition__grid\">\n <ng-container *ngTemplateOutlet=\"loadingCard\"></ng-container>\n <ng-container *ngTemplateOutlet=\"loadingCard\"></ng-container>\n <ng-container *ngTemplateOutlet=\"loadingCard\"></ng-container>\n </div>\n</ng-template>\n\n<ng-template #loadingCard>\n <div class=\"plugin-definition__item\">\n <cds-loading size=\"sm\"></cds-loading>\n </div>\n</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 {Component, EventEmitter, Input, Output} from '@angular/core';\nimport {map, switchMap} from 'rxjs/operators';\nimport {PluginManagementStateService} from '../../services';\nimport {PluginConfigurationData} from '@valtimo/plugin';\nimport {of} from 'rxjs';\n\n@Component({\n standalone: false,\n selector: 'valtimo-plugin-configure',\n templateUrl: './plugin-configure.component.html',\n styleUrls: ['./plugin-configure.component.scss'],\n})\nexport class PluginConfigureComponent {\n @Output() valid: EventEmitter<boolean> = new EventEmitter<boolean>();\n @Output() configuration: EventEmitter<PluginConfigurationData> =\n new EventEmitter<PluginConfigurationData>();\n\n public readonly save$ = this.stateService.save$;\n\n public readonly pluginDefinitionKey$ = this.stateService.selectedPluginDefinition$.pipe(\n map(definition => definition?.key)\n );\n\n public readonly prefillConfiguration$ = of(undefined);\n\n public readonly disabled$ = this.stateService.inputDisabled$;\n\n constructor(private readonly stateService: PluginManagementStateService) {}\n\n public onValid(valid: boolean): void {\n this.valid.emit(valid);\n }\n\n public onFunctionConfiguration(configuration: PluginConfigurationData): void{\n this.configuration.emit(configuration);\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<valtimo-plugin-configuration-container\n *ngIf=\"pluginDefinitionKey$ | async as pluginDefinitionKey\"\n [cdsLayer]=\"1\"\n [pluginDefinitionKey]=\"pluginDefinitionKey\"\n [prefillConfiguration$]=\"prefillConfiguration$\"\n [save$]=\"save$\"\n [disabled$]=\"disabled$\"\n (valid)=\"onValid($event)\"\n (configuration)=\"onFunctionConfiguration($event)\"\n type=\"configuration\"\n></valtimo-plugin-configuration-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 {Component, EventEmitter, Input, Output} from '@angular/core';\nimport {PluginManagementStateService} from '../../services';\nimport {take} from 'rxjs/operators';\nimport {BehaviorSubject, Subject} from 'rxjs';\nimport {PluginConfigurationData, PluginManagementService} from '@valtimo/plugin';\nimport {NGXLogger} from 'ngx-logger';\nimport {CARBON_CONSTANTS} from '@valtimo/components';\n\n@Component({\n standalone: false,\n selector: 'valtimo-plugin-add-modal',\n templateUrl: './plugin-add-modal.component.html',\n styleUrls: ['./plugin-add-modal.component.scss'],\n})\nexport class PluginAddModalComponent {\n @Input() open = false;\n\n @Output() closeModal: EventEmitter<boolean> = new EventEmitter();\n\n public readonly inputDisabled$ = this.stateService.inputDisabled$;\n public readonly selectedPluginDefinition$ = this.stateService.selectedPluginDefinition$;\n public readonly configurationValid$ = new BehaviorSubject<boolean>(false);\n public readonly returnToFirstStepSubject$ = new Subject<boolean>();\n\n constructor(\n private readonly stateService: PluginManagementStateService,\n private readonly pluginManagementService: PluginManagementService,\n private readonly logger: NGXLogger\n ) {}\n\n public complete(): void {\n this.stateService.save();\n }\n\n public hide(): void {\n this.closeModal.emit();\n\n setTimeout(() => {\n this.returnToFirstStep();\n this.stateService.enableInput();\n this.stateService.clear();\n }, CARBON_CONSTANTS.modalAnimationMs);\n }\n\n public onValid(valid: boolean): void {\n this.configurationValid$.next(valid);\n }\n\n public onConfiguration(configuration: PluginConfigurationData): void {\n const pluginConfiguration = {...configuration};\n delete pluginConfiguration['configurationId'];\n delete pluginConfiguration['configurationTitle'];\n\n this.stateService.disableInput();\n\n this.stateService.selectedPluginDefinition$.pipe(take(1)).subscribe(selectedDefinition => {\n this.pluginManagementService\n .savePluginConfiguration({\n id: configuration.configurationId,\n definitionKey: selectedDefinition.key,\n title: configuration.configurationTitle,\n properties: pluginConfiguration,\n })\n .subscribe({\n next: () => {\n this.stateService.refresh();\n this.hide();\n },\n error: () => {\n this.logger.error('Something went wrong with saving the plugin configuration.');\n this.stateService.enableInput();\n },\n });\n });\n }\n\n private returnToFirstStep(): void {\n this.returnToFirstStepSubject$.next(true);\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<v-stepper-container\n (completeEvent)=\"complete()\"\n (cancelClickEvent)=\"hide()\"\n [disabled]=\"inputDisabled$ | async\"\n [returnToFirstStepSubject$]=\"returnToFirstStepSubject$\"\n>\n <cds-modal valtimoCdsModal #pluginAddModal [open]=\"open\" (close)=\"hide()\">\n <cds-modal-header [showCloseButton]=\"true\" (closeSelect)=\"hide()\">\n <v-stepper-header></v-stepper-header>\n </cds-modal-header>\n <section cdsModalContent>\n <v-stepper-content>\n <v-stepper-step titleTranslationKey=\"pluginManagement.addSteps.step0\">\n <valtimo-plugin-add-select></valtimo-plugin-add-select>\n </v-stepper-step>\n <v-stepper-step titleTranslationKey=\"pluginManagement.addSteps.step1\">\n <valtimo-plugin-configure\n (valid)=\"onValid($event)\"\n (configuration)=\"onConfiguration($event)\"\n ></valtimo-plugin-configure>\n </v-stepper-step>\n </v-stepper-content>\n </section>\n <cds-modal-footer>\n <v-stepper-footer class=\"stepper-footer\">\n <v-stepper-footer-step\n nextButtonTranslationKey=\"pluginManagement.addSteps.step1\"\n [nextButtonEnabled]=\"selectedPluginDefinition$ | async\"\n ></v-stepper-footer-step>\n <v-stepper-footer-step\n completeButtonTranslationKey=\"pluginManagement.addSteps.complete\"\n [completeButtonEnabled]=\"configurationValid$ | async\"\n ></v-stepper-footer-step>\n </v-stepper-footer>\n </cds-modal-footer>\n </cds-modal>\n</v-stepper-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 {Component, EventEmitter, Input, Output} from '@angular/core';\nimport {map, switchMap} from 'rxjs/operators';\nimport {PluginManagementStateService} from '../../services';\nimport {PluginConfigurationData} from '@valtimo/plugin';\n\n@Component({\n standalone: false,\n selector: 'valtimo-plugin-edit',\n templateUrl: './plugin-edit.component.html',\n styleUrls: ['./plugin-edit.component.scss'],\n})\nexport class PluginEditComponent {\n @Output() valid: EventEmitter<boolean> = new EventEmitter<boolean>();\n @Output() configuration: EventEmitter<PluginConfigurationData> =\n new EventEmitter<PluginConfigurationData>();\n\n public readonly saveEdit$ = this.stateService.saveEdit$;\n\n public readonly pluginDefinitionKey$ = this.stateService.selectedPluginConfiguration$.pipe(\n map(configuration => configuration?.pluginDefinition?.key)\n );\n\n public readonly prefillConfiguration$ = this.stateService.selectedPluginConfiguration$.pipe(\n map(configuration =>\n configuration\n ? {\n ...configuration.properties,\n configurationId: configuration.id,\n configurationTitle: configuration.title,\n }\n : undefined\n )\n );\n\n public readonly disabled$ = this.stateService.inputDisabled$;\n\n constructor(private readonly stateService: PluginManagementStateService) {}\n\n public onValid(valid: boolean): void {\n this.valid.emit(valid);\n }\n\n public onFunctionConfiguration(configuration: PluginConfigurationData): void {\n this.configuration.emit(configuration);\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<valtimo-plugin-configuration-container\n *ngIf=\"pluginDefinitionKey$ | async as pluginDefinitionKey\"\n [cdsLayer]=\"1\"\n [pluginDefinitionKey]=\"pluginDefinitionKey\"\n [prefillConfiguration$]=\"prefillConfiguration$\"\n [save$]=\"saveEdit$\"\n [disabled$]=\"disabled$\"\n (valid)=\"onValid($event)\"\n (configuration)=\"onFunctionConfiguration($event)\"\n type=\"configuration\"\n></valtimo-plugin-configuration-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 {Component, EventEmitter, Input, Output} from '@angular/core';\nimport {PluginManagementStateService} from '../../services';\nimport {take} from 'rxjs/operators';\nimport {BehaviorSubject, Observable} from 'rxjs';\nimport {\n PluginConfiguration,\n PluginConfigurationData,\n PluginManagementService,\n} from '@valtimo/plugin';\nimport {NGXLogger} from 'ngx-logger';\n\n@Component({\n standalone: false,\n selector: 'valtimo-plugin-edit-modal',\n templateUrl: './plugin-edit-modal.component.html',\n styleUrls: ['./plugin-edit-modal.component.scss'],\n})\nexport class PluginEditModalComponent {\n @Input() public readonly open = false;\n @Input() public readonly saveNewConfiguration = false;\n\n @Output() closeModal: EventEmitter<boolean> = new EventEmitter();\n\n public readonly inputDisabled$ = this.stateService.inputDisabled$;\n public readonly selectedPluginConfiguration$: Observable<PluginConfiguration> =\n this.stateService.selectedPluginConfiguration$;\n public readonly configurationValid$ = new BehaviorSubject<boolean>(false);\n\n constructor(\n private readonly stateService: PluginManagementStateService,\n private readonly pluginManagementService: PluginManagementService,\n private readonly logger: NGXLogger\n ) {}\n\n public save(): void {\n this.stateService.saveEdit();\n }\n\n public delete(): void {\n this.stateService.delete();\n this.stateService.disableInput();\n\n this.stateService.selectedPluginConfiguration$\n .pipe(take(1))\n .subscribe(selectedPluginConfiguration => {\n this.pluginManagementService\n .deletePluginConfiguration(selectedPluginConfiguration.id)\n .subscribe(\n () => {\n this.stateService.refresh();\n this.hide();\n },\n () => {\n this.logger.error('Something went wrong with deleting the plugin configuration.');\n this.stateService.enableInput();\n }\n );\n });\n }\n\n public hide(): void {\n this.closeModal.emit();\n this.stateService.enableInput();\n }\n\n public onPluginValid(valid: boolean): void {\n this.configurationValid$.next(valid);\n }\n\n public onPluginConfiguration(configuration: PluginConfigurationData): void {\n this.stateService.disableInput();\n\n if (this.saveNewConfiguration) {\n this.saveNewPluginConfiguration(configuration);\n return;\n }\n\n this.stateService.selectedPluginConfiguration$\n .pipe(take(1))\n .subscribe(selectedPluginConfiguration => {\n const configurationId = configuration.configurationId;\n const configurationTitle = configuration.configurationTitle;\n const configurationData = {...configuration};\n delete configurationData['configurationTitle'];\n\n this.pluginManagementService\n .updatePluginConfiguration(\n selectedPluginConfiguration.id,\n configurationId,\n configurationTitle,\n configurationData\n )\n .subscribe({\n next: () => {\n this.stateService.refresh();\n this.hide();\n },\n error: () => {\n this.logger.error('Something went wrong with updating the plugin configuration.');\n this.stateService.enableInput();\n },\n });\n });\n }\n\n private saveNewPluginConfiguration(configuration: PluginConfigurationData): void {\n this.stateService.selectedPluginConfiguration$\n .pipe(take(1))\n .subscribe(selectedPluginConfiguration => {\n const duplicatedConfiguration = {...selectedPluginConfiguration, properties: configuration};\n\n duplicatedConfiguration.title = duplicatedConfiguration.properties.configurationTitle;\n\n delete duplicatedConfiguration.properties.configurationTitle;\n delete duplicatedConfiguration.properties.configurationId;\n\n this.pluginManagementService.savePluginConfiguration(duplicatedConfiguration).subscribe({\n next: () => {\n this.stateService.refresh();\n this.hide();\n },\n error: () => {\n this.logger.error(\n 'Something went wrong with saving the duplicated plugin configuration.'\n );\n this.stateService.enableInput();\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\n<cds-modal\n #pluginEditModal\n valtimoCdsModal\n [open]=\"open\"\n (close)=\"hide()\"\n *ngIf=\"{selectedConfiguration: selectedPluginConfiguration$ | async} as obs\"\n>\n <cds-modal-header [showCloseButton]=\"true\" (closeSelect)=\"hide()\">\n {{\n obs.selectedConfiguration?.title +\n ' - ' +\n ('title' | pluginTranslate: obs.selectedConfiguration?.pluginDefinition?.key | async)\n }}\n </cds-modal-header>\n <section cdsModalContent>\n <valtimo-plugin-edit\n (valid)=\"onPluginValid($event)\"\n (configuration)=\"onPluginConfiguration($event)\"\n ></valtimo-plugin-edit>\n </section>\n <cds-modal-footer>\n <button cdsButton=\"danger\" (click)=\"delete()\" [disabled]=\"inputDisabled$ | async\">\n {{ 'pluginManagement.remove' | translate }}\n </button>\n <button\n cdsButton=\"primary\"\n [disabled]=\"(configurationValid$ | async) === false || (inputDisabled$ | async)\"\n (click)=\"save()\"\n >\n {{ 'pluginManagement.save' | translate }}\n </button>\n </cds-modal-footer>\n</cds-modal>\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 {Component} from '@angular/core';\nimport {TranslateService} from '@ngx-translate/core';\nimport {ActionItem, ColumnConfig, ViewType} from '@valtimo/components';\nimport {\n PluginConfiguration,\n PluginManagementService,\n PluginTranslationService,\n} from '@valtimo/plugin';\nimport {NGXLogger} from 'ngx-logger';\nimport {BehaviorSubject, combineLatest, Observable} from 'rxjs';\nimport {map, switchMap, take, tap} from 'rxjs/operators';\nimport {PluginManagementStateService} from '../../services';\nimport {cloneDeep} from 'lodash';\nimport {v4 as uuidv4} from 'uuid';\n\n@Component({\n standalone: false,\n selector: 'valtimo-plugin-management',\n templateUrl: './plugin-management.component.html',\n styleUrls: ['./plugin-management.component.scss'],\n})\nexport class PluginManagementComponent {\n public readonly fields: ColumnConfig[] = [\n {\n key: 'title',\n label: 'pluginManagement.labels.configurationName',\n viewType: ViewType.TEXT,\n },\n {\n key: 'pluginName',\n label: 'pluginManagement.labels.pluginName',\n viewType: ViewType.TEXT,\n },\n {\n key: 'definitionKey',\n label: 'pluginManagement.labels.identifier',\n viewType: ViewType.TEXT,\n },\n ];\n public readonly actionItems: ActionItem[] = [\n {\n callback: this.editConfiguration.bind(this),\n label: 'interface.edit',\n },\n {\n label: 'interface.duplicate',\n callback: this.duplicateConfiguration.bind(this),\n },\n {\n callback: this.deleteConfiguration.bind(this),\n label: 'interface.delete',\n type: 'danger',\n },\n ];\n\n public readonly loading$ = new BehaviorSubject<boolean>(true);\n public readonly showEditModal$ = new BehaviorSubject<boolean>(false);\n public readonly showAddModal$ = new BehaviorSubject<boolean>(false);\n public readonly pluginConfigurations$: Observable<PluginConfiguration[]> =\n this.stateService.refresh$.pipe(\n switchMap(() =>\n combineLatest([\n this.pluginManagementService.getAllPluginConfigurations(),\n this.translateService.stream('key'),\n ]).pipe(\n map(([pluginConfigurations]) =>\n pluginConfigurations.map(configuration => ({\n ...configuration,\n pluginName: this.pluginTranslationService.instant(\n 'title',\n configuration.pluginDefinition?.key ?? ''\n ),\n definitionKey: configuration.pluginDefinition?.key ?? '',\n }))\n ),\n tap(() => {\n this.loading$.next(false);\n })\n )\n )\n );\n\n public readonly saveNewConfiguration$ = new BehaviorSubject<boolean>(false);\n\n constructor(\n private readonly logger: NGXLogger,\n private readonly pluginManagementService: PluginManagementService,\n private readonly pluginTranslationService: PluginTranslationService,\n private readonly stateService: PluginManagementStateService,\n private readonly translateService: TranslateService\n ) {}\n\n public showAddModal(): void {\n this.showAddModal$.next(true);\n }\n\n public editConfiguration(configuration: PluginConfiguration): void {\n this.showEditModal$.next(true);\n this.saveNewConfiguration$.next(false);\n this.stateService.selectPluginConfiguration(configuration);\n }\n\n public deleteConfiguration(configuration: PluginConfiguration): void {\n if (!configuration.id) {\n return;\n }\n\n this.pluginManagementService\n .deletePluginConfiguration(configuration.id)\n .pipe(take(1))\n .subscribe({\n next: () => {\n this.stateService.refresh();\n },\n error: () => {\n this.logger.error('Something went wrong with deleting the plugin configuration.');\n },\n });\n }\n\n public closeEditModal(): void {\n this.showEditModal$.next(false);\n }\n\n public closeAddModal(): void {\n this.showAddModal$.next(false);\n }\n\n public duplicateConfiguration(configuration: PluginConfiguration): void {\n const configurationClone = cloneDeep(configuration);\n configurationClone.id = uuidv4();\n this.showEditModal$.next(true);\n this.saveNewConfiguration$.next(true);\n this.stateService.selectPluginConfiguration(configurationClone);\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<ng-container\n *ngIf=\"{\n pluginConfigurations: pluginConfigurations$ | async,\n loading: loading$ | async,\n } as obs\"\n>\n <valtimo-carbon-list\n [actionItems]=\"actionItems\"\n [loading]=\"obs.loading\"\n [items]=\"obs.pluginConfigurations\"\n [fields]=\"fields\"\n [header]=\"false\"\n (rowClicked)=\"editConfiguration($event)\"\n >\n <ng-container carbonToolbarContent [ngTemplateOutlet]=\"configurePluginButton\"></ng-container>\n\n <valtimo-no-results\n [action]=\"configurePluginButton\"\n [title]=\"'pages.plugins.noResults' | translate\"\n ></valtimo-no-results>\n </valtimo-carbon-list>\n\n <ng-template #configurePluginButton>\n <button cdsButton=\"primary\" [disabled]=\"obs.loading\" (click)=\"showAddModal()\">\n {{ 'pluginManagement.add' | translate }}\n\n <svg cdsIcon=\"add\" size=\"16\" class=\"cds--btn__icon\"></svg>\n </button>\n </ng-template>\n</ng-container>\n\n<valtimo-plugin-add-modal\n [open]=\"showAddModal$ | async\"\n (closeModal)=\"closeAddModal()\"\n></valtimo-plugin-add-modal>\n\n<valtimo-plugin-edit-modal\n [open]=\"showEditModal$ | async\"\n [saveNewConfiguration]=\"saveNewConfiguration$ | async\"\n (closeModal)=\"closeEditModal()\"\n></valtimo-plugin-edit-modal>\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 {NgModule} from '@angular/core';\nimport {RouterModule, Routes} from '@angular/router';\nimport {CommonModule} from '@angular/common';\nimport {AuthGuardService} from '@valtimo/security';\nimport {ROLE_ADMIN} from '@valtimo/shared';\nimport {PluginManagementComponent} from './components/plugin-management/plugin-management.component';\n\nconst routes: Routes = [\n {\n path: 'plugins',\n component: PluginManagementComponent,\n canActivate: [AuthGuardService],\n data: {title: 'Plugins', roles: [ROLE_ADMIN]},\n },\n];\n\n@NgModule({\n declarations: [],\n imports: [CommonModule, RouterModule.forChild(routes)],\n exports: [RouterModule],\n})\nexport class PluginManagementRoutingModule {}\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 {NgModule} from '@angular/core';\nimport {PluginManagementRoutingModule} from './plugin-management-routing';\nimport {CommonModule} from '@angular/common';\nimport {TranslateModule} from '@ngx-translate/core';\nimport {PluginManagementComponent} from './components/plugin-management/plugin-management.component';\nimport {PluginAddModalComponent} from './components/plugin-add-modal/plugin-add-modal.component';\nimport {PluginManagementStateService} from './services';\nimport {PluginAddSelectComponent} from './components/plugin-add-select/plugin-add-select.component';\nimport {PluginConfigureComponent} from './components/plugin-configure/plugin-configure.component';\nimport {PluginConfigurationContainerModule, PluginTranslatePipeModule} from '@valtimo/plugin';\nimport {PluginEditModalComponent} from './components/plugin-edit-modal/plugin-edit-modal.component';\nimport {PluginEditComponent} from './components/plugin-edit/plugin-edit.component';\nimport {\n CarbonListModule,\n ParagraphModule,\n StepperModule,\n TableModule,\n ValtimoCdsModalDirective,\n VModalModule,\n} from '@valtimo/components';\nimport {\n ButtonModule as CarbonButtonModule,\n IconModule,\n LayerModule,\n LoadingModule,\n ModalModule as CarbonModalModule,\n TilesModule,\n} from 'carbon-components-angular';\n\n@NgModule({\n providers: [PluginManagementStateService],\n declarations: [\n PluginManagementComponent,\n PluginAddModalComponent,\n PluginAddSelectComponent,\n PluginConfigureComponent,\n PluginEditModalComponent,\n PluginEditComponent,\n ],\n imports: [\n CommonModule,\n PluginManagementRoutingModule,\n TranslateModule,\n ParagraphModule,\n TableModule,\n StepperModule,\n VModalModule,\n PluginTranslatePipeModule,\n PluginConfigurationContainerModule,\n CarbonButtonModule,\n CarbonListModule,\n CarbonModalModule,\n IconModule,\n ValtimoCdsModalDirective,\n LayerModule,\n TilesModule,\n LoadingModule,\n ],\n exports: [\n PluginManagementComponent,\n PluginAddModalComponent,\n PluginAddSelectComponent,\n PluginConfigureComponent,\n PluginEditModalComponent,\n PluginEditComponent,\n ],\n})\nexport class PluginManagementModule {}\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 plugin-management\n */\n\nexport * from './lib/models';\nexport * from './lib/services';\nexport * from './lib/plugin-management.module';\nexport * from './lib/components/plugin-management/plugin-management.component';\nexport * from './lib/components/plugin-add-modal/plugin-add-modal.component';\nexport * from './lib/components/plugin-add-select/plugin-add-select.component';\nexport * from './lib/components/plugin-configure/plugin-configure.component';\nexport * from './lib/components/plugin-edit-modal/plugin-edit-modal.component';\nexport * from './lib/components/plugin-edit/plugin-edit.component';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1","i2","i2.PluginManagementStateService","i6","i1.PluginManagementStateService","i3","i4","i6.PluginAddSelectComponent","i7.PluginConfigureComponent","i8","i7.PluginEditComponent","uuidv4","i3.PluginManagementStateService","i5","i7","i8.PluginAddModalComponent","i9.PluginEditModalComponent","CarbonButtonModule","CarbonModalModule"],"mappings":"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"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@valtimo/plugin-management",
3
3
  "license": "EUPL-1.2",
4
- "version": "13.11.0",
4
+ "version": "13.13.0",
5
5
  "peerDependencies": {
6
6
  "@angular/common": "^19.2.8",
7
7
  "@angular/core": "^19.2.8"