@valtimo/plugin-management 5.1.0 → 5.4.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.
- package/README.md +1 -1
- package/esm2020/lib/components/plugin-add-modal/plugin-add-modal.component.mjs +38 -10
- package/esm2020/lib/components/plugin-add-select/plugin-add-select.component.mjs +11 -10
- package/esm2020/lib/components/plugin-configure/plugin-configure.component.mjs +48 -0
- package/esm2020/lib/components/plugin-management/plugin-management.component.mjs +18 -15
- package/esm2020/lib/models/plugin.model.mjs +1 -1
- package/esm2020/lib/plugin-management-routing.mjs +5 -5
- package/esm2020/lib/plugin-management.module.mjs +32 -8
- package/esm2020/lib/services/index.mjs +2 -2
- package/esm2020/lib/services/plugin-management-state.service.mjs +33 -25
- package/esm2020/lib/services/plugin-management.service.mjs +114 -0
- package/esm2020/public-api.mjs +2 -1
- package/fesm2015/valtimo-plugin-management.mjs +223 -102
- package/fesm2015/valtimo-plugin-management.mjs.map +1 -1
- package/fesm2020/valtimo-plugin-management.mjs +232 -102
- package/fesm2020/valtimo-plugin-management.mjs.map +1 -1
- package/lib/components/plugin-add-modal/plugin-add-modal.component.d.ts +10 -3
- package/lib/components/plugin-add-modal/plugin-add-modal.component.d.ts.map +1 -1
- package/lib/components/plugin-add-select/plugin-add-select.component.d.ts +4 -4
- package/lib/components/plugin-add-select/plugin-add-select.component.d.ts.map +1 -1
- package/lib/components/plugin-configure/plugin-configure.component.d.ts +18 -0
- package/lib/components/plugin-configure/plugin-configure.component.d.ts.map +1 -0
- package/lib/components/plugin-management/plugin-management.component.d.ts +9 -5
- package/lib/components/plugin-management/plugin-management.component.d.ts.map +1 -1
- package/lib/models/plugin.model.d.ts +14 -3
- package/lib/models/plugin.model.d.ts.map +1 -1
- package/lib/plugin-management.module.d.ts +8 -6
- package/lib/plugin-management.module.d.ts.map +1 -1
- package/lib/services/index.d.ts +1 -1
- package/lib/services/index.d.ts.map +1 -1
- package/lib/services/plugin-management-state.service.d.ts +8 -5
- package/lib/services/plugin-management-state.service.d.ts.map +1 -1
- package/lib/services/plugin-management.service.d.ts +27 -0
- package/lib/services/plugin-management.service.d.ts.map +1 -0
- package/package.json +1 -1
- package/public-api.d.ts +1 -0
- package/public-api.d.ts.map +1 -1
- package/esm2020/lib/services/plugin.service.mjs +0 -84
- package/lib/services/plugin.service.d.ts +0 -13
- package/lib/services/plugin.service.d.ts.map +0 -1
|
@@ -1,17 +1,23 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
|
-
import { Injectable, Component, ViewChild, NgModule } from '@angular/core';
|
|
3
|
-
import { of, Subject, BehaviorSubject
|
|
4
|
-
import { delay, take,
|
|
5
|
-
import * as i1 from '@
|
|
2
|
+
import { Injectable, Component, EventEmitter, Output, ViewChild, NgModule } from '@angular/core';
|
|
3
|
+
import { of, combineLatest, Subject, BehaviorSubject } from 'rxjs';
|
|
4
|
+
import { delay, map, take, switchMap, tap } from 'rxjs/operators';
|
|
5
|
+
import * as i1 from '@valtimo/config';
|
|
6
|
+
import { ROLE_ADMIN } from '@valtimo/config';
|
|
7
|
+
import * as i2 from '@valtimo/plugin';
|
|
8
|
+
import { PluginTranslatePipeModule, PluginConfigurationContainerModule } from '@valtimo/plugin';
|
|
9
|
+
import * as i3 from '@angular/platform-browser';
|
|
10
|
+
import * as i4 from '@angular/common/http';
|
|
11
|
+
import * as i1$1 from '@angular/router';
|
|
6
12
|
import { RouterModule } from '@angular/router';
|
|
7
|
-
import * as i4 from '@angular/common';
|
|
13
|
+
import * as i4$1 from '@angular/common';
|
|
8
14
|
import { CommonModule } from '@angular/common';
|
|
9
15
|
import { AuthGuardService } from '@valtimo/security';
|
|
10
|
-
import
|
|
11
|
-
import * as i2 from '@ngx-translate/core';
|
|
16
|
+
import * as i2$1 from '@ngx-translate/core';
|
|
12
17
|
import { TranslateModule } from '@ngx-translate/core';
|
|
13
|
-
import * as
|
|
18
|
+
import * as i2$2 from '@valtimo/user-interface';
|
|
14
19
|
import { PageModule, ParagraphModule, TitleModule, TableModule, StepperModule, ModalModule, ButtonModule, CardModule } from '@valtimo/user-interface';
|
|
20
|
+
import * as i3$1 from 'ngx-logger';
|
|
15
21
|
import * as i5 from '@angular/flex-layout/flex';
|
|
16
22
|
import { FlexLayoutModule } from '@angular/flex-layout';
|
|
17
23
|
|
|
@@ -42,70 +48,93 @@ import { FlexLayoutModule } from '@angular/flex-layout';
|
|
|
42
48
|
* See the License for the specific language governing permissions and
|
|
43
49
|
* limitations under the License.
|
|
44
50
|
*/
|
|
45
|
-
class
|
|
46
|
-
constructor() {
|
|
47
|
-
this.
|
|
51
|
+
class PluginManagementService {
|
|
52
|
+
constructor(configService, pluginService, sanitizer, http) {
|
|
53
|
+
this.configService = configService;
|
|
54
|
+
this.pluginService = pluginService;
|
|
55
|
+
this.sanitizer = sanitizer;
|
|
56
|
+
this.http = http;
|
|
57
|
+
this.VALTIMO_API_ENDPOINT_URI = this.configService.config.valtimoApi.endpointUri;
|
|
58
|
+
this.CONFIGURATIONS = [
|
|
48
59
|
{
|
|
49
60
|
definitionKey: 'openzaak',
|
|
50
61
|
key: '1ebdad87-3899-4ab7-b4ad-403237b17dbd',
|
|
51
62
|
title: 'Den Haag Open Zaak 1',
|
|
63
|
+
properties: {},
|
|
52
64
|
},
|
|
53
65
|
{
|
|
54
66
|
definitionKey: 'openzaak',
|
|
55
67
|
key: '1ebdad87-3899-4ab7-b4ad-403237b17dbe',
|
|
56
68
|
title: 'Den Haag Open Zaak 2',
|
|
69
|
+
properties: {},
|
|
57
70
|
},
|
|
58
71
|
{
|
|
59
|
-
definitionKey: '
|
|
60
|
-
key: '1ebdad87-3899-4ab7-b4ad-
|
|
61
|
-
title: 'Den Haag
|
|
62
|
-
|
|
63
|
-
{
|
|
64
|
-
definitionKey: 'openzaak',
|
|
65
|
-
key: '1ebdad87-3899-4ab7-b4ad-403237b17dbg',
|
|
66
|
-
title: 'Den Haag Open Zaak 4',
|
|
72
|
+
definitionKey: 'smartdocuments',
|
|
73
|
+
key: '1ebdad87-3899-4ab7-b4ad-403237b17dbx',
|
|
74
|
+
title: 'Den Haag SmartDocuments 1',
|
|
75
|
+
properties: {},
|
|
67
76
|
},
|
|
68
77
|
{
|
|
69
|
-
definitionKey: '
|
|
70
|
-
key: '1ebdad87-3899-4ab7-b4ad-
|
|
71
|
-
title: 'Den Haag
|
|
78
|
+
definitionKey: 'smartdocuments',
|
|
79
|
+
key: '1ebdad87-3899-4ab7-b4ad-403237b17dby',
|
|
80
|
+
title: 'Den Haag SmartDocuments 2',
|
|
81
|
+
properties: {},
|
|
72
82
|
},
|
|
73
83
|
];
|
|
74
84
|
}
|
|
75
85
|
getPluginDefinitions() {
|
|
76
|
-
return
|
|
86
|
+
return this.http.get(`${this.VALTIMO_API_ENDPOINT_URI}plugin/definition`);
|
|
77
87
|
}
|
|
78
88
|
getPluginConfigurations(pluginDefinitionId) {
|
|
79
|
-
return of(this.
|
|
89
|
+
return of(this.CONFIGURATIONS).pipe(delay(1500));
|
|
90
|
+
}
|
|
91
|
+
getPluginConfigurationsWithLogos(pluginDefinitionId) {
|
|
92
|
+
return this.returnPluginConfigurationsWithLogos(this.getPluginConfigurations(pluginDefinitionId));
|
|
80
93
|
}
|
|
81
94
|
getPluginFunctions(pluginDefinitionId) {
|
|
82
|
-
return of(
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
95
|
+
return of(pluginDefinitionId === 'openzaak'
|
|
96
|
+
? [
|
|
97
|
+
{
|
|
98
|
+
key: 'create-zaak',
|
|
99
|
+
},
|
|
100
|
+
{
|
|
101
|
+
key: 'set-status',
|
|
102
|
+
},
|
|
103
|
+
{
|
|
104
|
+
key: 'set-resultaat',
|
|
105
|
+
},
|
|
106
|
+
{
|
|
107
|
+
key: 'set-besluit',
|
|
108
|
+
},
|
|
109
|
+
]
|
|
110
|
+
: [{ key: 'generate-document' }]).pipe(delay(1500));
|
|
96
111
|
}
|
|
97
112
|
getAllPluginConfigurations() {
|
|
98
|
-
return
|
|
113
|
+
return this.http.get(`${this.VALTIMO_API_ENDPOINT_URI}plugin/configuration`);
|
|
114
|
+
}
|
|
115
|
+
getAllPluginConfigurationsWithLogos() {
|
|
116
|
+
return this.returnPluginConfigurationsWithLogos(this.getAllPluginConfigurations());
|
|
117
|
+
}
|
|
118
|
+
savePluginConfiguration(pluginConfiguration) {
|
|
119
|
+
return this.http.post(`${this.VALTIMO_API_ENDPOINT_URI}plugin/configuration`, pluginConfiguration);
|
|
120
|
+
}
|
|
121
|
+
returnPluginConfigurationsWithLogos(pluginConfigurations$) {
|
|
122
|
+
return combineLatest([pluginConfigurations$, this.pluginService.pluginSpecifications$]).pipe(map(([pluginConfigurations, pluginSpecifications]) => pluginConfigurations === null || pluginConfigurations === void 0 ? void 0 : pluginConfigurations.map(pluginConfiguration => {
|
|
123
|
+
const pluginSpecification = pluginSpecifications.find(specification => specification.pluginId === pluginConfiguration.definitionKey);
|
|
124
|
+
return Object.assign(Object.assign({}, pluginConfiguration), ((pluginSpecification === null || pluginSpecification === void 0 ? void 0 : pluginSpecification.pluginLogoBase64) && {
|
|
125
|
+
pluginLogoBase64: this.sanitizer.bypassSecurityTrustResourceUrl(pluginSpecification === null || pluginSpecification === void 0 ? void 0 : pluginSpecification.pluginLogoBase64),
|
|
126
|
+
}));
|
|
127
|
+
})));
|
|
99
128
|
}
|
|
100
129
|
}
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.
|
|
130
|
+
PluginManagementService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: PluginManagementService, deps: [{ token: i1.ConfigService }, { token: i2.PluginService }, { token: i3.DomSanitizer }, { token: i4.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
131
|
+
PluginManagementService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: PluginManagementService, providedIn: 'root' });
|
|
132
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: PluginManagementService, decorators: [{
|
|
104
133
|
type: Injectable,
|
|
105
134
|
args: [{
|
|
106
135
|
providedIn: 'root',
|
|
107
136
|
}]
|
|
108
|
-
}] });
|
|
137
|
+
}], ctorParameters: function () { return [{ type: i1.ConfigService }, { type: i2.PluginService }, { type: i3.DomSanitizer }, { type: i4.HttpClient }]; } });
|
|
109
138
|
|
|
110
139
|
/*
|
|
111
140
|
* Copyright 2015-2020 Ritense BV, the Netherlands.
|
|
@@ -119,16 +148,27 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.9", ngImpor
|
|
|
119
148
|
* Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" basis, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.See the License for the specific language governing permissions and limitations under the License.
|
|
120
149
|
*/
|
|
121
150
|
class PluginManagementStateService {
|
|
122
|
-
constructor() {
|
|
151
|
+
constructor(pluginService, sanitizer) {
|
|
152
|
+
this.pluginService = pluginService;
|
|
153
|
+
this.sanitizer = sanitizer;
|
|
123
154
|
this._showModal$ = new Subject();
|
|
124
155
|
this._hideModal$ = new Subject();
|
|
125
156
|
this._inputDisabled$ = new BehaviorSubject(false);
|
|
126
|
-
this._saveButtonDisabled$ = new BehaviorSubject(true);
|
|
127
157
|
this._refresh$ = new BehaviorSubject(null);
|
|
128
158
|
this._save$ = new Subject();
|
|
129
159
|
this._delete$ = new Subject();
|
|
130
160
|
this._hideModalSaveButton$ = new BehaviorSubject(false);
|
|
131
161
|
this._pluginDefinitions$ = new BehaviorSubject(undefined);
|
|
162
|
+
this._pluginDefinitionsWithLogos$ = combineLatest([
|
|
163
|
+
this._pluginDefinitions$,
|
|
164
|
+
this.pluginService.pluginSpecifications$,
|
|
165
|
+
this.pluginService.availablePluginIds$,
|
|
166
|
+
]).pipe(map(([pluginDefinitions, pluginSpecifications, availablePluginIds]) => pluginDefinitions === null || pluginDefinitions === void 0 ? void 0 : pluginDefinitions.filter(pluginDefinition => availablePluginIds.includes(pluginDefinition.key)).map(pluginDefinition => {
|
|
167
|
+
const pluginSpecification = pluginSpecifications.find(specification => specification.pluginId === pluginDefinition.key);
|
|
168
|
+
return Object.assign(Object.assign({}, pluginDefinition), ((pluginSpecification === null || pluginSpecification === void 0 ? void 0 : pluginSpecification.pluginLogoBase64) && {
|
|
169
|
+
pluginLogoBase64: this.sanitizer.bypassSecurityTrustResourceUrl(pluginSpecification === null || pluginSpecification === void 0 ? void 0 : pluginSpecification.pluginLogoBase64),
|
|
170
|
+
}));
|
|
171
|
+
})));
|
|
132
172
|
this._selectedPluginDefinition$ = new BehaviorSubject(undefined);
|
|
133
173
|
}
|
|
134
174
|
get showModal$() {
|
|
@@ -146,12 +186,12 @@ class PluginManagementStateService {
|
|
|
146
186
|
get pluginDefinitions$() {
|
|
147
187
|
return this._pluginDefinitions$.asObservable();
|
|
148
188
|
}
|
|
189
|
+
get pluginDefinitionsWithLogos$() {
|
|
190
|
+
return this._pluginDefinitionsWithLogos$;
|
|
191
|
+
}
|
|
149
192
|
get selectedPluginDefinition$() {
|
|
150
193
|
return this._selectedPluginDefinition$.asObservable();
|
|
151
194
|
}
|
|
152
|
-
get saveButtonDisabled$() {
|
|
153
|
-
return this._saveButtonDisabled$.asObservable();
|
|
154
|
-
}
|
|
155
195
|
get save$() {
|
|
156
196
|
return this._save$.asObservable();
|
|
157
197
|
}
|
|
@@ -165,7 +205,7 @@ class PluginManagementStateService {
|
|
|
165
205
|
this._showModal$.next(modalType);
|
|
166
206
|
}
|
|
167
207
|
hideModal() {
|
|
168
|
-
this._hideModal$.next();
|
|
208
|
+
this._hideModal$.next(null);
|
|
169
209
|
}
|
|
170
210
|
disableInput() {
|
|
171
211
|
this._inputDisabled$.next(true);
|
|
@@ -185,21 +225,11 @@ class PluginManagementStateService {
|
|
|
185
225
|
clearSelectedPluginDefinition() {
|
|
186
226
|
this._selectedPluginDefinition$.next(undefined);
|
|
187
227
|
}
|
|
188
|
-
enableSaveButton() {
|
|
189
|
-
this._saveButtonDisabled$.next(false);
|
|
190
|
-
}
|
|
191
|
-
disableSaveButton() {
|
|
192
|
-
this._saveButtonDisabled$.next(true);
|
|
193
|
-
}
|
|
194
228
|
save() {
|
|
195
|
-
this.
|
|
196
|
-
if (!saveButtonDisabled) {
|
|
197
|
-
this._save$.next();
|
|
198
|
-
}
|
|
199
|
-
});
|
|
229
|
+
this._save$.next(null);
|
|
200
230
|
}
|
|
201
231
|
delete() {
|
|
202
|
-
this._delete$.next();
|
|
232
|
+
this._delete$.next(null);
|
|
203
233
|
}
|
|
204
234
|
hideModalSaveButton() {
|
|
205
235
|
this._hideModalSaveButton$.next(true);
|
|
@@ -211,14 +241,14 @@ class PluginManagementStateService {
|
|
|
211
241
|
this._selectedPluginDefinition$.next(undefined);
|
|
212
242
|
}
|
|
213
243
|
}
|
|
214
|
-
PluginManagementStateService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.
|
|
215
|
-
PluginManagementStateService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.3.
|
|
216
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.
|
|
244
|
+
PluginManagementStateService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: PluginManagementStateService, deps: [{ token: i2.PluginService }, { token: i3.DomSanitizer }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
245
|
+
PluginManagementStateService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: PluginManagementStateService, providedIn: 'root' });
|
|
246
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: PluginManagementStateService, decorators: [{
|
|
217
247
|
type: Injectable,
|
|
218
248
|
args: [{
|
|
219
249
|
providedIn: 'root',
|
|
220
250
|
}]
|
|
221
|
-
}] });
|
|
251
|
+
}], ctorParameters: function () { return [{ type: i2.PluginService }, { type: i3.DomSanitizer }]; } });
|
|
222
252
|
|
|
223
253
|
/*
|
|
224
254
|
* Copyright 2015-2020 Ritense BV, the Netherlands.
|
|
@@ -248,13 +278,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.9", ngImpor
|
|
|
248
278
|
* limitations under the License.
|
|
249
279
|
*/
|
|
250
280
|
class PluginAddSelectComponent {
|
|
251
|
-
constructor(
|
|
252
|
-
this.
|
|
281
|
+
constructor(pluginManagementService, stateService, translateService) {
|
|
282
|
+
this.pluginManagementService = pluginManagementService;
|
|
253
283
|
this.stateService = stateService;
|
|
254
284
|
this.translateService = translateService;
|
|
255
285
|
this.selectedPluginDefinition$ = this.stateService.selectedPluginDefinition$;
|
|
256
286
|
this.disabled$ = this.stateService.inputDisabled$;
|
|
257
|
-
this.
|
|
287
|
+
this.pluginDefinitionsWithLogos$ = this.stateService.pluginDefinitionsWithLogos$;
|
|
258
288
|
}
|
|
259
289
|
ngOnInit() {
|
|
260
290
|
this.openRefreshSubscription();
|
|
@@ -271,7 +301,7 @@ class PluginAddSelectComponent {
|
|
|
271
301
|
this.stateService.clearSelectedPluginDefinition();
|
|
272
302
|
}
|
|
273
303
|
getPluginDefinitions() {
|
|
274
|
-
this.
|
|
304
|
+
this.pluginManagementService.getPluginDefinitions().subscribe(pluginDefinitions => {
|
|
275
305
|
this.stateService.setPluginDefinitions(pluginDefinitions);
|
|
276
306
|
});
|
|
277
307
|
}
|
|
@@ -284,12 +314,54 @@ class PluginAddSelectComponent {
|
|
|
284
314
|
});
|
|
285
315
|
}
|
|
286
316
|
}
|
|
287
|
-
PluginAddSelectComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.
|
|
288
|
-
PluginAddSelectComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.
|
|
289
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.
|
|
317
|
+
PluginAddSelectComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: PluginAddSelectComponent, deps: [{ token: PluginManagementService }, { token: PluginManagementStateService }, { token: i2$1.TranslateService }], target: i0.ɵɵFactoryTarget.Component });
|
|
318
|
+
PluginAddSelectComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: PluginAddSelectComponent, selector: "valtimo-plugin-add-select", ngImport: i0, template: "<!--\n ~ Copyright 2015-2020 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 fxLayout=\"row wrap\" fxLayoutGap=\"22px 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 fxFlex=\"100%\" *ngIf=\"pluginDefinitions?.length === 0\">\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 <div fxFlex=\"33.3%\" *ngFor=\"let pluginDefinition of pluginDefinitions\">\n <v-card\n [title]=\"'title' | pluginTranslate: pluginDefinition.key | async\"\n [description]=\"'description' | pluginTranslate: pluginDefinition.key | async\"\n [selectable]=\"true\"\n [selected]=\"(selectedPluginDefinition$ | async)?.key === pluginDefinition.key\"\n [fullHeight]=\"true\"\n (selectEvent)=\"selectPluginDefinition(pluginDefinition)\"\n (deselectEvent)=\"deselectPluginDefinition()\"\n >\n <div *ngIf=\"pluginDefinition.pluginLogoBase64\" role=\"header\">\n <img\n class=\"plugin-definition-logo\"\n [title]=\"'title' | pluginTranslate: pluginDefinition.key | async\"\n [src]=\"pluginDefinition.pluginLogoBase64\"\n />\n </div>\n </v-card>\n </div>\n</ng-template>\n\n<ng-template #loading>\n <div fxLayout=\"row wrap\" fxLayoutGap=\"22px 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 fxFlex=\"33.3%\">\n <v-card [loading]=\"true\" [loadingDescription]=\"true\" [loadingTitle]=\"true\"></v-card>\n </div>\n</ng-template>\n", styles: ["/*!\n * Copyright 2015-2020 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 */.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%}\n"], components: [{ type: i2$2.ParagraphComponent, selector: "v-paragraph", inputs: ["center", "fullWidth"] }, { type: i2$2.CardComponent, selector: "v-card", inputs: ["titleTranslationKey", "title", "descriptionTranslationKey", "description", "selectable", "selected", "fullHeight", "loading", "loadingTitle", "loadingDescription"], outputs: ["selectEvent", "deselectEvent"] }], directives: [{ type: i4$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i5.DefaultLayoutDirective, selector: " [fxLayout], [fxLayout.xs], [fxLayout.sm], [fxLayout.md], [fxLayout.lg], [fxLayout.xl], [fxLayout.lt-sm], [fxLayout.lt-md], [fxLayout.lt-lg], [fxLayout.lt-xl], [fxLayout.gt-xs], [fxLayout.gt-sm], [fxLayout.gt-md], [fxLayout.gt-lg]", inputs: ["fxLayout", "fxLayout.xs", "fxLayout.sm", "fxLayout.md", "fxLayout.lg", "fxLayout.xl", "fxLayout.lt-sm", "fxLayout.lt-md", "fxLayout.lt-lg", "fxLayout.lt-xl", "fxLayout.gt-xs", "fxLayout.gt-sm", "fxLayout.gt-md", "fxLayout.gt-lg"] }, { type: i5.DefaultLayoutGapDirective, selector: " [fxLayoutGap], [fxLayoutGap.xs], [fxLayoutGap.sm], [fxLayoutGap.md], [fxLayoutGap.lg], [fxLayoutGap.xl], [fxLayoutGap.lt-sm], [fxLayoutGap.lt-md], [fxLayoutGap.lt-lg], [fxLayoutGap.lt-xl], [fxLayoutGap.gt-xs], [fxLayoutGap.gt-sm], [fxLayoutGap.gt-md], [fxLayoutGap.gt-lg]", inputs: ["fxLayoutGap", "fxLayoutGap.xs", "fxLayoutGap.sm", "fxLayoutGap.md", "fxLayoutGap.lg", "fxLayoutGap.xl", "fxLayoutGap.lt-sm", "fxLayoutGap.lt-md", "fxLayoutGap.lt-lg", "fxLayoutGap.lt-xl", "fxLayoutGap.gt-xs", "fxLayoutGap.gt-sm", "fxLayoutGap.gt-md", "fxLayoutGap.gt-lg"] }, { type: i4$1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i5.DefaultFlexDirective, selector: " [fxFlex], [fxFlex.xs], [fxFlex.sm], [fxFlex.md], [fxFlex.lg], [fxFlex.xl], [fxFlex.lt-sm], [fxFlex.lt-md], [fxFlex.lt-lg], [fxFlex.lt-xl], [fxFlex.gt-xs], [fxFlex.gt-sm], [fxFlex.gt-md], [fxFlex.gt-lg]", inputs: ["fxFlex", "fxFlex.xs", "fxFlex.sm", "fxFlex.md", "fxFlex.lg", "fxFlex.xl", "fxFlex.lt-sm", "fxFlex.lt-md", "fxFlex.lt-lg", "fxFlex.lt-xl", "fxFlex.gt-xs", "fxFlex.gt-sm", "fxFlex.gt-md", "fxFlex.gt-lg"] }, { type: i4$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], pipes: { "async": i4$1.AsyncPipe, "translate": i2$1.TranslatePipe, "pluginTranslate": i2.PluginTranslatePipe } });
|
|
319
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: PluginAddSelectComponent, decorators: [{
|
|
290
320
|
type: Component,
|
|
291
|
-
args: [{ selector: 'valtimo-plugin-add-select', template: "<!--\n ~ Copyright 2015-2020 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=\"
|
|
292
|
-
}], ctorParameters: function () { return [{ type:
|
|
321
|
+
args: [{ selector: 'valtimo-plugin-add-select', template: "<!--\n ~ Copyright 2015-2020 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 fxLayout=\"row wrap\" fxLayoutGap=\"22px 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 fxFlex=\"100%\" *ngIf=\"pluginDefinitions?.length === 0\">\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 <div fxFlex=\"33.3%\" *ngFor=\"let pluginDefinition of pluginDefinitions\">\n <v-card\n [title]=\"'title' | pluginTranslate: pluginDefinition.key | async\"\n [description]=\"'description' | pluginTranslate: pluginDefinition.key | async\"\n [selectable]=\"true\"\n [selected]=\"(selectedPluginDefinition$ | async)?.key === pluginDefinition.key\"\n [fullHeight]=\"true\"\n (selectEvent)=\"selectPluginDefinition(pluginDefinition)\"\n (deselectEvent)=\"deselectPluginDefinition()\"\n >\n <div *ngIf=\"pluginDefinition.pluginLogoBase64\" role=\"header\">\n <img\n class=\"plugin-definition-logo\"\n [title]=\"'title' | pluginTranslate: pluginDefinition.key | async\"\n [src]=\"pluginDefinition.pluginLogoBase64\"\n />\n </div>\n </v-card>\n </div>\n</ng-template>\n\n<ng-template #loading>\n <div fxLayout=\"row wrap\" fxLayoutGap=\"22px 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 fxFlex=\"33.3%\">\n <v-card [loading]=\"true\" [loadingDescription]=\"true\" [loadingTitle]=\"true\"></v-card>\n </div>\n</ng-template>\n", styles: ["/*!\n * Copyright 2015-2020 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 */.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%}\n"] }]
|
|
322
|
+
}], ctorParameters: function () { return [{ type: PluginManagementService }, { type: PluginManagementStateService }, { type: i2$1.TranslateService }]; } });
|
|
323
|
+
|
|
324
|
+
/*
|
|
325
|
+
* Copyright 2015-2020 Ritense BV, the Netherlands.
|
|
326
|
+
*
|
|
327
|
+
* Licensed under EUPL, Version 1.2 (the "License");
|
|
328
|
+
* you may not use this file except in compliance with the License.
|
|
329
|
+
* You may obtain a copy of the License at
|
|
330
|
+
*
|
|
331
|
+
* https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
|
|
332
|
+
*
|
|
333
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
334
|
+
* distributed under the License is distributed on an "AS IS" basis,
|
|
335
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
336
|
+
* See the License for the specific language governing permissions and
|
|
337
|
+
* limitations under the License.
|
|
338
|
+
*/
|
|
339
|
+
class PluginConfigureComponent {
|
|
340
|
+
constructor(stateService) {
|
|
341
|
+
this.stateService = stateService;
|
|
342
|
+
this.valid = new EventEmitter();
|
|
343
|
+
this.configuration = new EventEmitter();
|
|
344
|
+
this.save$ = this.stateService.save$;
|
|
345
|
+
this.pluginDefinitionKey$ = this.stateService.selectedPluginDefinition$.pipe(map(definition => definition === null || definition === void 0 ? void 0 : definition.key));
|
|
346
|
+
this.disabled$ = this.stateService.inputDisabled$;
|
|
347
|
+
}
|
|
348
|
+
onValid(valid) {
|
|
349
|
+
this.valid.emit(valid);
|
|
350
|
+
}
|
|
351
|
+
onConfiguration(configuration) {
|
|
352
|
+
this.configuration.emit(configuration);
|
|
353
|
+
}
|
|
354
|
+
}
|
|
355
|
+
PluginConfigureComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: PluginConfigureComponent, deps: [{ token: PluginManagementStateService }], target: i0.ɵɵFactoryTarget.Component });
|
|
356
|
+
PluginConfigureComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: PluginConfigureComponent, selector: "valtimo-plugin-configure", outputs: { valid: "valid", configuration: "configuration" }, ngImport: i0, template: "<!--\n ~ Copyright 2015-2020 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 [pluginDefinitionKey]=\"pluginDefinitionKey$ | async\"\n [save$]=\"save$\"\n [disabled]=\"disabled$ | async\"\n (valid)=\"onValid($event)\"\n (configuration)=\"onConfiguration($event)\"\n type=\"configuration\"\n></valtimo-plugin-configuration-container>\n", styles: ["/*!\n * Copyright 2015-2020 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"], components: [{ type: i2.PluginConfigurationContainerComponent, selector: "valtimo-plugin-configuration-container", inputs: ["type", "pluginDefinitionKey", "functionKey", "clear$", "save$", "disabled", "error"], outputs: ["valid", "configuration"] }], pipes: { "async": i4$1.AsyncPipe } });
|
|
357
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: PluginConfigureComponent, decorators: [{
|
|
358
|
+
type: Component,
|
|
359
|
+
args: [{ selector: 'valtimo-plugin-configure', template: "<!--\n ~ Copyright 2015-2020 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 [pluginDefinitionKey]=\"pluginDefinitionKey$ | async\"\n [save$]=\"save$\"\n [disabled]=\"disabled$ | async\"\n (valid)=\"onValid($event)\"\n (configuration)=\"onConfiguration($event)\"\n type=\"configuration\"\n></valtimo-plugin-configuration-container>\n", styles: ["/*!\n * Copyright 2015-2020 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"] }]
|
|
360
|
+
}], ctorParameters: function () { return [{ type: PluginManagementStateService }]; }, propDecorators: { valid: [{
|
|
361
|
+
type: Output
|
|
362
|
+
}], configuration: [{
|
|
363
|
+
type: Output
|
|
364
|
+
}] } });
|
|
293
365
|
|
|
294
366
|
/*
|
|
295
367
|
* Copyright 2015-2020 Ritense BV, the Netherlands.
|
|
@@ -307,11 +379,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.9", ngImpor
|
|
|
307
379
|
* limitations under the License.
|
|
308
380
|
*/
|
|
309
381
|
class PluginAddModalComponent {
|
|
310
|
-
constructor(stateService, modalService) {
|
|
382
|
+
constructor(stateService, modalService, pluginManagementService, logger) {
|
|
311
383
|
this.stateService = stateService;
|
|
312
384
|
this.modalService = modalService;
|
|
385
|
+
this.pluginManagementService = pluginManagementService;
|
|
386
|
+
this.logger = logger;
|
|
313
387
|
this.inputDisabled$ = this.stateService.inputDisabled$;
|
|
314
388
|
this.selectedPluginDefinition$ = this.stateService.selectedPluginDefinition$;
|
|
389
|
+
this.configurationValid$ = new BehaviorSubject(false);
|
|
315
390
|
this.returnToFirstStepSubject$ = new Subject();
|
|
316
391
|
}
|
|
317
392
|
ngOnInit() {
|
|
@@ -335,6 +410,29 @@ class PluginAddModalComponent {
|
|
|
335
410
|
}, appearingDelay);
|
|
336
411
|
});
|
|
337
412
|
}
|
|
413
|
+
onValid(valid) {
|
|
414
|
+
this.configurationValid$.next(valid);
|
|
415
|
+
}
|
|
416
|
+
onConfiguration(configuration) {
|
|
417
|
+
const pluginConfiguration = Object.assign({}, configuration);
|
|
418
|
+
delete pluginConfiguration['configurationTitle'];
|
|
419
|
+
this.stateService.disableInput();
|
|
420
|
+
this.stateService.selectedPluginDefinition$.pipe(take(1)).subscribe(selectedDefinition => {
|
|
421
|
+
this.pluginManagementService
|
|
422
|
+
.savePluginConfiguration({
|
|
423
|
+
definitionKey: selectedDefinition.key,
|
|
424
|
+
title: configuration.configurationTitle,
|
|
425
|
+
properties: pluginConfiguration,
|
|
426
|
+
})
|
|
427
|
+
.subscribe(response => {
|
|
428
|
+
this.stateService.refresh();
|
|
429
|
+
this.hide();
|
|
430
|
+
}, () => {
|
|
431
|
+
this.logger.error('Something went wrong with saving the plugin configuration.');
|
|
432
|
+
this.hide();
|
|
433
|
+
});
|
|
434
|
+
});
|
|
435
|
+
}
|
|
338
436
|
openShowSubscription() {
|
|
339
437
|
this.showSubscription = this.stateService.showModal$.subscribe(modalType => {
|
|
340
438
|
if (modalType === 'add') {
|
|
@@ -354,12 +452,12 @@ class PluginAddModalComponent {
|
|
|
354
452
|
this.modalService.openModal(this.pluginAddModal);
|
|
355
453
|
}
|
|
356
454
|
}
|
|
357
|
-
PluginAddModalComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.
|
|
358
|
-
PluginAddModalComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.
|
|
359
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.
|
|
455
|
+
PluginAddModalComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: PluginAddModalComponent, deps: [{ token: PluginManagementStateService }, { token: i2$2.ModalService }, { token: PluginManagementService }, { token: i3$1.NGXLogger }], target: i0.ɵɵFactoryTarget.Component });
|
|
456
|
+
PluginAddModalComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: PluginAddModalComponent, selector: "valtimo-plugin-add-modal", viewQueries: [{ propertyName: "pluginAddModal", first: true, predicate: ["pluginAddModal"], descendants: true }], ngImport: i0, template: "<!--\n ~ Copyright 2015-2020 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 <v-modal #pluginAddModal (closeEvent)=\"hide()\">\n <div role=\"header\">\n <v-stepper-header></v-stepper-header>\n </div>\n <div role=\"content\">\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 </div>\n <div role=\"footer\">\n <v-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 </div>\n </v-modal>\n</v-stepper-container>\n", styles: ["/*!\n * Copyright 2015-2020 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"], components: [{ type: i2$2.StepperContainerComponent, selector: "v-stepper-container", inputs: ["returnToFirstStepSubject$", "disabled"], outputs: ["cancelClickEvent", "completeEvent", "nextStepEvent"] }, { type: i2$2.ModalComponent, selector: "v-modal", inputs: ["appearingDelayMs", "maxWidthPx"], outputs: ["closeEvent"] }, { type: i2$2.StepperHeaderComponent, selector: "v-stepper-header" }, { type: i2$2.StepperContentComponent, selector: "v-stepper-content" }, { type: i2$2.StepperStepComponent, selector: "v-stepper-step", inputs: ["titleTranslationKey"] }, { type: PluginAddSelectComponent, selector: "valtimo-plugin-add-select" }, { type: PluginConfigureComponent, selector: "valtimo-plugin-configure", outputs: ["valid", "configuration"] }, { type: i2$2.StepperFooterComponent, selector: "v-stepper-footer" }, { type: i2$2.StepperFooterStepComponent, selector: "v-stepper-footer-step", inputs: ["nextButtonEnabled", "completeButtonEnabled", "nextButtonTranslationKey", "cancelButtonTranslationKey", "completeButtonTranslationKey", "completeButtonMdiIcon", "showCompleteButton"] }], pipes: { "async": i4$1.AsyncPipe } });
|
|
457
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: PluginAddModalComponent, decorators: [{
|
|
360
458
|
type: Component,
|
|
361
|
-
args: [{ selector: 'valtimo-plugin-add-modal', template: "<!--\n ~ Copyright 2015-2020 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 <v-modal #pluginAddModal (closeEvent)=\"hide()\">\n <div role=\"header\">\n <v-stepper-header></v-stepper-header>\n </div>\n <div role=\"content\">\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 configure
|
|
362
|
-
}], ctorParameters: function () { return [{ type: PluginManagementStateService }, { type:
|
|
459
|
+
args: [{ selector: 'valtimo-plugin-add-modal', template: "<!--\n ~ Copyright 2015-2020 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 <v-modal #pluginAddModal (closeEvent)=\"hide()\">\n <div role=\"header\">\n <v-stepper-header></v-stepper-header>\n </div>\n <div role=\"content\">\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 </div>\n <div role=\"footer\">\n <v-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 </div>\n </v-modal>\n</v-stepper-container>\n", styles: ["/*!\n * Copyright 2015-2020 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"] }]
|
|
460
|
+
}], ctorParameters: function () { return [{ type: PluginManagementStateService }, { type: i2$2.ModalService }, { type: PluginManagementService }, { type: i3$1.NGXLogger }]; }, propDecorators: { pluginAddModal: [{
|
|
363
461
|
type: ViewChild,
|
|
364
462
|
args: ['pluginAddModal']
|
|
365
463
|
}] } });
|
|
@@ -380,10 +478,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.9", ngImpor
|
|
|
380
478
|
* limitations under the License.
|
|
381
479
|
*/
|
|
382
480
|
class PluginManagementComponent {
|
|
383
|
-
constructor(
|
|
384
|
-
this.
|
|
481
|
+
constructor(pluginManagementService, translateService, stateService, pluginTranslationService) {
|
|
482
|
+
this.pluginManagementService = pluginManagementService;
|
|
385
483
|
this.translateService = translateService;
|
|
386
484
|
this.stateService = stateService;
|
|
485
|
+
this.pluginTranslationService = pluginTranslationService;
|
|
387
486
|
this.loading$ = new BehaviorSubject(true);
|
|
388
487
|
this.columns$ = new BehaviorSubject([
|
|
389
488
|
{
|
|
@@ -399,23 +498,23 @@ class PluginManagementComponent {
|
|
|
399
498
|
dataKey: 'title',
|
|
400
499
|
},
|
|
401
500
|
]);
|
|
402
|
-
this.pluginConfigurations$ = combineLatest([
|
|
403
|
-
this.
|
|
501
|
+
this.pluginConfigurations$ = this.stateService.refresh$.pipe(switchMap(() => combineLatest([
|
|
502
|
+
this.pluginManagementService.getAllPluginConfigurations(),
|
|
404
503
|
this.translateService.stream('key'),
|
|
405
|
-
]).pipe(map(([pluginConfigurations]) => pluginConfigurations.map(configuration => (Object.assign(Object.assign({}, configuration), { pluginName: this.
|
|
504
|
+
]).pipe(map(([pluginConfigurations]) => pluginConfigurations.map(configuration => (Object.assign(Object.assign({}, configuration), { pluginName: this.pluginTranslationService.instant('title', configuration.pluginDefinition.key), definitionKey: configuration.pluginDefinition.key })))), tap(() => {
|
|
406
505
|
this.loading$.next(false);
|
|
407
|
-
}));
|
|
506
|
+
}))));
|
|
408
507
|
}
|
|
409
508
|
showAddModal() {
|
|
410
509
|
this.stateService.showModal('add');
|
|
411
510
|
}
|
|
412
511
|
}
|
|
413
|
-
PluginManagementComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.
|
|
414
|
-
PluginManagementComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.
|
|
415
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.
|
|
512
|
+
PluginManagementComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: PluginManagementComponent, deps: [{ token: PluginManagementService }, { token: i2$1.TranslateService }, { token: PluginManagementStateService }, { token: i2.PluginTranslationService }], target: i0.ɵɵFactoryTarget.Component });
|
|
513
|
+
PluginManagementComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: PluginManagementComponent, selector: "valtimo-plugin-management", ngImport: i0, template: "<!--\n ~ Copyright 2015-2020 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-page-container\n *ngIf=\"{\n pluginConfigurations: pluginConfigurations$ | async,\n columns: columns$ | async,\n loading: loading$ | async\n } as obs\"\n>\n <v-page-header>\n <v-page-header-introduction>\n <v-title>{{ 'pages.plugins.title' | translate }}</v-title>\n <v-paragraph>{{ 'pages.plugins.description' | translate }}</v-paragraph>\n </v-page-header-introduction>\n <v-page-header-actions>\n <v-button\n (clickEvent)=\"showAddModal()\"\n type=\"primary\"\n mdiIcon=\"plus\"\n [disabled]=\"obs.loading\"\n >\n {{ 'pluginManagement.add' | translate }}\n </v-button>\n </v-page-header-actions>\n </v-page-header>\n <v-page-content>\n <v-table\n [loading]=\"obs.loading\"\n [items]=\"obs.pluginConfigurations\"\n [columns]=\"obs.columns\"\n [showEditButtons]=\"false\"\n [amountOfLoadingRows]=\"2\"\n [itemsTranslationKey]=\"'pluginManagement.tableItemsText'\"\n [showPagination]=\"false\"\n ></v-table>\n </v-page-content>\n</v-page-container>\n\n<valtimo-plugin-add-modal></valtimo-plugin-add-modal>\n", styles: ["/*!\n * Copyright 2015-2020 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"], components: [{ type: i2$2.PageContainerComponent, selector: "v-page-container" }, { type: i2$2.PageHeaderComponent, selector: "v-page-header" }, { type: i2$2.PageHeaderIntroductionComponent, selector: "v-page-header-introduction" }, { type: i2$2.TitleComponent, selector: "v-title", inputs: ["type", "margin"] }, { type: i2$2.ParagraphComponent, selector: "v-paragraph", inputs: ["center", "fullWidth"] }, { type: i2$2.PageHeaderActionsComponent, selector: "v-page-header-actions" }, { type: i2$2.ButtonComponent, selector: "v-button", inputs: ["type", "mdiIcon", "disabled", "title", "titleTranslationKey"], outputs: ["clickEvent"] }, { type: i2$2.PageContentComponent, selector: "v-page-content" }, { type: i2$2.TableComponent, selector: "v-table", inputs: ["items", "columns", "loading", "showEditButtons", "showPagination", "editButtonTranslationKey", "itemsTranslationKey", "noResultsTranslationKey", "mobileBreakpointPx", "amountOfLoadingRows", "collectionSize", "maxPaginationItemSize", "page", "size"], outputs: ["editButtonClicked", "paginationSizeSet", "paginationPageSet"] }, { type: PluginAddModalComponent, selector: "valtimo-plugin-add-modal" }], directives: [{ type: i4$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], pipes: { "async": i4$1.AsyncPipe, "translate": i2$1.TranslatePipe } });
|
|
514
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: PluginManagementComponent, decorators: [{
|
|
416
515
|
type: Component,
|
|
417
516
|
args: [{ selector: 'valtimo-plugin-management', template: "<!--\n ~ Copyright 2015-2020 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-page-container\n *ngIf=\"{\n pluginConfigurations: pluginConfigurations$ | async,\n columns: columns$ | async,\n loading: loading$ | async\n } as obs\"\n>\n <v-page-header>\n <v-page-header-introduction>\n <v-title>{{ 'pages.plugins.title' | translate }}</v-title>\n <v-paragraph>{{ 'pages.plugins.description' | translate }}</v-paragraph>\n </v-page-header-introduction>\n <v-page-header-actions>\n <v-button\n (clickEvent)=\"showAddModal()\"\n type=\"primary\"\n mdiIcon=\"plus\"\n [disabled]=\"obs.loading\"\n >\n {{ 'pluginManagement.add' | translate }}\n </v-button>\n </v-page-header-actions>\n </v-page-header>\n <v-page-content>\n <v-table\n [loading]=\"obs.loading\"\n [items]=\"obs.pluginConfigurations\"\n [columns]=\"obs.columns\"\n [showEditButtons]=\"false\"\n [amountOfLoadingRows]=\"2\"\n [itemsTranslationKey]=\"'pluginManagement.tableItemsText'\"\n [showPagination]=\"false\"\n ></v-table>\n </v-page-content>\n</v-page-container>\n\n<valtimo-plugin-add-modal></valtimo-plugin-add-modal>\n", styles: ["/*!\n * Copyright 2015-2020 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"] }]
|
|
418
|
-
}], ctorParameters: function () { return [{ type:
|
|
517
|
+
}], ctorParameters: function () { return [{ type: PluginManagementService }, { type: i2$1.TranslateService }, { type: PluginManagementStateService }, { type: i2.PluginTranslationService }]; } });
|
|
419
518
|
|
|
420
519
|
/*
|
|
421
520
|
* Copyright 2015-2020 Ritense BV, the Netherlands.
|
|
@@ -438,10 +537,10 @@ const routes = [
|
|
|
438
537
|
];
|
|
439
538
|
class PluginManagementRoutingModule {
|
|
440
539
|
}
|
|
441
|
-
PluginManagementRoutingModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.
|
|
442
|
-
PluginManagementRoutingModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.
|
|
443
|
-
PluginManagementRoutingModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.
|
|
444
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.
|
|
540
|
+
PluginManagementRoutingModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: PluginManagementRoutingModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
541
|
+
PluginManagementRoutingModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: PluginManagementRoutingModule, imports: [CommonModule, i1$1.RouterModule], exports: [RouterModule] });
|
|
542
|
+
PluginManagementRoutingModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: PluginManagementRoutingModule, imports: [[CommonModule, RouterModule.forChild(routes)], RouterModule] });
|
|
543
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: PluginManagementRoutingModule, decorators: [{
|
|
445
544
|
type: NgModule,
|
|
446
545
|
args: [{
|
|
447
546
|
declarations: [],
|
|
@@ -463,8 +562,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.9", ngImpor
|
|
|
463
562
|
*/
|
|
464
563
|
class PluginManagementModule {
|
|
465
564
|
}
|
|
466
|
-
PluginManagementModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.
|
|
467
|
-
PluginManagementModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.
|
|
565
|
+
PluginManagementModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: PluginManagementModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
566
|
+
PluginManagementModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: PluginManagementModule, declarations: [PluginManagementComponent,
|
|
567
|
+
PluginAddModalComponent,
|
|
568
|
+
PluginAddSelectComponent,
|
|
569
|
+
PluginConfigureComponent], imports: [CommonModule,
|
|
468
570
|
PluginManagementRoutingModule,
|
|
469
571
|
TranslateModule,
|
|
470
572
|
FlexLayoutModule,
|
|
@@ -475,8 +577,13 @@ PluginManagementModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0",
|
|
|
475
577
|
StepperModule,
|
|
476
578
|
ModalModule,
|
|
477
579
|
ButtonModule,
|
|
478
|
-
CardModule
|
|
479
|
-
|
|
580
|
+
CardModule,
|
|
581
|
+
PluginTranslatePipeModule,
|
|
582
|
+
PluginConfigurationContainerModule], exports: [PluginManagementComponent,
|
|
583
|
+
PluginAddModalComponent,
|
|
584
|
+
PluginAddSelectComponent,
|
|
585
|
+
PluginConfigureComponent] });
|
|
586
|
+
PluginManagementModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: PluginManagementModule, providers: [PluginManagementStateService], imports: [[
|
|
480
587
|
CommonModule,
|
|
481
588
|
PluginManagementRoutingModule,
|
|
482
589
|
TranslateModule,
|
|
@@ -489,12 +596,19 @@ PluginManagementModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0",
|
|
|
489
596
|
ModalModule,
|
|
490
597
|
ButtonModule,
|
|
491
598
|
CardModule,
|
|
599
|
+
PluginTranslatePipeModule,
|
|
600
|
+
PluginConfigurationContainerModule,
|
|
492
601
|
]] });
|
|
493
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.
|
|
602
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: PluginManagementModule, decorators: [{
|
|
494
603
|
type: NgModule,
|
|
495
604
|
args: [{
|
|
496
605
|
providers: [PluginManagementStateService],
|
|
497
|
-
declarations: [
|
|
606
|
+
declarations: [
|
|
607
|
+
PluginManagementComponent,
|
|
608
|
+
PluginAddModalComponent,
|
|
609
|
+
PluginAddSelectComponent,
|
|
610
|
+
PluginConfigureComponent,
|
|
611
|
+
],
|
|
498
612
|
imports: [
|
|
499
613
|
CommonModule,
|
|
500
614
|
PluginManagementRoutingModule,
|
|
@@ -508,8 +622,15 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.9", ngImpor
|
|
|
508
622
|
ModalModule,
|
|
509
623
|
ButtonModule,
|
|
510
624
|
CardModule,
|
|
625
|
+
PluginTranslatePipeModule,
|
|
626
|
+
PluginConfigurationContainerModule,
|
|
627
|
+
],
|
|
628
|
+
exports: [
|
|
629
|
+
PluginManagementComponent,
|
|
630
|
+
PluginAddModalComponent,
|
|
631
|
+
PluginAddSelectComponent,
|
|
632
|
+
PluginConfigureComponent,
|
|
511
633
|
],
|
|
512
|
-
exports: [PluginManagementComponent, PluginAddModalComponent, PluginAddSelectComponent],
|
|
513
634
|
}]
|
|
514
635
|
}] });
|
|
515
636
|
|
|
@@ -529,5 +650,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.9", ngImpor
|
|
|
529
650
|
* Generated bundle index. Do not edit.
|
|
530
651
|
*/
|
|
531
652
|
|
|
532
|
-
export { PluginAddModalComponent, PluginAddSelectComponent, PluginManagementComponent, PluginManagementModule,
|
|
653
|
+
export { PluginAddModalComponent, PluginAddSelectComponent, PluginConfigureComponent, PluginManagementComponent, PluginManagementModule, PluginManagementService, PluginManagementStateService };
|
|
533
654
|
//# sourceMappingURL=valtimo-plugin-management.mjs.map
|