@valtimo/plugin 5.3.0 → 5.6.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.
Files changed (138) hide show
  1. package/esm2020/lib/components/plugin-configuration-container/plugin-configuration-container.component.mjs +10 -11
  2. package/esm2020/lib/components/plugin-configuration-container/plugin-configuration-container.module.mjs +5 -5
  3. package/esm2020/lib/constants/index.mjs +6 -2
  4. package/esm2020/lib/constants/injection-tokens.mjs +6 -2
  5. package/esm2020/lib/models/index.mjs +6 -2
  6. package/esm2020/lib/models/plugin.mjs +6 -2
  7. package/esm2020/lib/pipes/index.mjs +6 -2
  8. package/esm2020/lib/pipes/plugin-translate/index.mjs +6 -2
  9. package/esm2020/lib/pipes/plugin-translate/plugin-translate-pipe.module.mjs +10 -6
  10. package/esm2020/lib/pipes/plugin-translate/plugin-translate.pipe.mjs +9 -5
  11. package/esm2020/lib/plugins/documenten-api/assets/documenten-api-plugin-logo.mjs +18 -0
  12. package/esm2020/lib/plugins/documenten-api/assets/index.mjs +17 -0
  13. package/esm2020/lib/plugins/documenten-api/components/documenten-api-configuration/documenten-api-configuration.component.mjs +89 -0
  14. package/esm2020/lib/plugins/documenten-api/components/store-temp-document/store-temp-document-configuration.component.mjs +96 -0
  15. package/esm2020/lib/plugins/documenten-api/documenten-api-plugin.module.mjs +36 -0
  16. package/esm2020/lib/plugins/documenten-api/documenten-api-plugin.specification.mjs +99 -0
  17. package/esm2020/lib/plugins/documenten-api/models/config.mjs +17 -0
  18. package/esm2020/lib/plugins/documenten-api/models/index.mjs +17 -0
  19. package/esm2020/lib/plugins/open-zaak/assets/index.mjs +6 -2
  20. package/esm2020/lib/plugins/open-zaak/assets/open-zaak-plugin-logo.mjs +6 -2
  21. package/esm2020/lib/plugins/open-zaak/components/open-zaak-configuration/open-zaak-configuration.component.mjs +38 -20
  22. package/esm2020/lib/plugins/open-zaak/models/config.mjs +6 -2
  23. package/esm2020/lib/plugins/open-zaak/models/index.mjs +6 -2
  24. package/esm2020/lib/plugins/open-zaak/open-zaak-plugin.module.mjs +9 -63
  25. package/esm2020/lib/plugins/open-zaak/open-zaak-plugin.specification.mjs +12 -63
  26. package/esm2020/lib/plugins/smart-documents/assets/index.mjs +6 -2
  27. package/esm2020/lib/plugins/smart-documents/assets/smart-documents-plugin-logo.mjs +6 -2
  28. package/esm2020/lib/plugins/smart-documents/components/generate-document-configuration/generate-document-configuration.component.mjs +40 -16
  29. package/esm2020/lib/plugins/smart-documents/components/smart-documents-configuration/smart-documents-configuration.component.mjs +41 -15
  30. package/esm2020/lib/plugins/smart-documents/models/config.mjs +6 -2
  31. package/esm2020/lib/plugins/smart-documents/models/index.mjs +6 -2
  32. package/esm2020/lib/plugins/smart-documents/smart-documents-plugin.module.mjs +10 -7
  33. package/esm2020/lib/plugins/smart-documents/smart-documents-plugin.specification.mjs +18 -5
  34. package/esm2020/lib/plugins/zaken-api/assets/index.mjs +17 -0
  35. package/esm2020/lib/plugins/zaken-api/assets/zaken-api-plugin-logo.mjs +18 -0
  36. package/esm2020/lib/plugins/zaken-api/components/link-document-to-zaak/link-document-to-zaak-configuration.component.mjs +86 -0
  37. package/esm2020/lib/plugins/zaken-api/components/zaken-api-configuration/zaken-api-configuration.component.mjs +88 -0
  38. package/esm2020/lib/plugins/zaken-api/models/config.mjs +17 -0
  39. package/esm2020/lib/plugins/zaken-api/models/index.mjs +17 -0
  40. package/esm2020/lib/plugins/zaken-api/zaken-api-plugin.module.mjs +55 -0
  41. package/esm2020/lib/plugins/zaken-api/zaken-api-plugin.specification.mjs +82 -0
  42. package/esm2020/lib/services/index.mjs +7 -2
  43. package/esm2020/lib/services/plugin-management.service.mjs +79 -0
  44. package/esm2020/lib/services/plugin-translation.service.mjs +9 -5
  45. package/esm2020/lib/services/plugin.service.mjs +4 -4
  46. package/esm2020/public-api.mjs +16 -7
  47. package/fesm2015/valtimo-plugin.mjs +921 -515
  48. package/fesm2015/valtimo-plugin.mjs.map +1 -1
  49. package/fesm2020/valtimo-plugin.mjs +918 -516
  50. package/fesm2020/valtimo-plugin.mjs.map +1 -1
  51. package/lib/components/plugin-configuration-container/plugin-configuration-container.component.d.ts +5 -6
  52. package/lib/components/plugin-configuration-container/plugin-configuration-container.component.d.ts.map +1 -1
  53. package/lib/constants/index.d.ts.map +1 -1
  54. package/lib/constants/injection-tokens.d.ts.map +1 -1
  55. package/lib/models/index.d.ts.map +1 -1
  56. package/lib/models/plugin.d.ts +41 -7
  57. package/lib/models/plugin.d.ts.map +1 -1
  58. package/lib/pipes/index.d.ts.map +1 -1
  59. package/lib/pipes/plugin-translate/index.d.ts.map +1 -1
  60. package/lib/pipes/plugin-translate/plugin-translate-pipe.module.d.ts.map +1 -1
  61. package/lib/pipes/plugin-translate/plugin-translate.pipe.d.ts.map +1 -1
  62. package/lib/plugins/documenten-api/assets/documenten-api-plugin-logo.d.ts +3 -0
  63. package/lib/plugins/documenten-api/assets/documenten-api-plugin-logo.d.ts.map +1 -0
  64. package/lib/plugins/documenten-api/assets/index.d.ts +2 -0
  65. package/lib/plugins/documenten-api/assets/index.d.ts.map +1 -0
  66. package/lib/plugins/documenten-api/components/documenten-api-configuration/documenten-api-configuration.component.d.ts +34 -0
  67. package/lib/plugins/documenten-api/components/documenten-api-configuration/documenten-api-configuration.component.d.ts.map +1 -0
  68. package/lib/plugins/documenten-api/components/store-temp-document/store-temp-document-configuration.component.d.ts +39 -0
  69. package/lib/plugins/documenten-api/components/store-temp-document/store-temp-document-configuration.component.d.ts.map +1 -0
  70. package/lib/plugins/documenten-api/documenten-api-plugin.module.d.ts +12 -0
  71. package/lib/plugins/documenten-api/documenten-api-plugin.module.d.ts.map +1 -0
  72. package/lib/plugins/documenten-api/documenten-api-plugin.specification.d.ts +4 -0
  73. package/lib/plugins/documenten-api/documenten-api-plugin.specification.d.ts.map +1 -0
  74. package/lib/plugins/documenten-api/models/config.d.ts +17 -0
  75. package/lib/plugins/documenten-api/models/config.d.ts.map +1 -0
  76. package/lib/plugins/documenten-api/models/index.d.ts +2 -0
  77. package/lib/plugins/documenten-api/models/index.d.ts.map +1 -0
  78. package/lib/plugins/open-zaak/assets/index.d.ts.map +1 -1
  79. package/lib/plugins/open-zaak/assets/open-zaak-plugin-logo.d.ts.map +1 -1
  80. package/lib/plugins/open-zaak/components/open-zaak-configuration/open-zaak-configuration.component.d.ts +11 -6
  81. package/lib/plugins/open-zaak/components/open-zaak-configuration/open-zaak-configuration.component.d.ts.map +1 -1
  82. package/lib/plugins/open-zaak/models/config.d.ts +3 -7
  83. package/lib/plugins/open-zaak/models/config.d.ts.map +1 -1
  84. package/lib/plugins/open-zaak/models/index.d.ts.map +1 -1
  85. package/lib/plugins/open-zaak/open-zaak-plugin.module.d.ts +4 -9
  86. package/lib/plugins/open-zaak/open-zaak-plugin.module.d.ts.map +1 -1
  87. package/lib/plugins/open-zaak/open-zaak-plugin.specification.d.ts.map +1 -1
  88. package/lib/plugins/smart-documents/assets/index.d.ts.map +1 -1
  89. package/lib/plugins/smart-documents/assets/smart-documents-plugin-logo.d.ts.map +1 -1
  90. package/lib/plugins/smart-documents/components/generate-document-configuration/generate-document-configuration.component.d.ts +12 -7
  91. package/lib/plugins/smart-documents/components/generate-document-configuration/generate-document-configuration.component.d.ts.map +1 -1
  92. package/lib/plugins/smart-documents/components/smart-documents-configuration/smart-documents-configuration.component.d.ts +11 -6
  93. package/lib/plugins/smart-documents/components/smart-documents-configuration/smart-documents-configuration.component.d.ts.map +1 -1
  94. package/lib/plugins/smart-documents/models/config.d.ts +3 -2
  95. package/lib/plugins/smart-documents/models/config.d.ts.map +1 -1
  96. package/lib/plugins/smart-documents/models/index.d.ts.map +1 -1
  97. package/lib/plugins/smart-documents/smart-documents-plugin.module.d.ts +1 -1
  98. package/lib/plugins/smart-documents/smart-documents-plugin.module.d.ts.map +1 -1
  99. package/lib/plugins/smart-documents/smart-documents-plugin.specification.d.ts.map +1 -1
  100. package/lib/plugins/zaken-api/assets/index.d.ts +2 -0
  101. package/lib/plugins/zaken-api/assets/index.d.ts.map +1 -0
  102. package/lib/plugins/zaken-api/assets/zaken-api-plugin-logo.d.ts +3 -0
  103. package/lib/plugins/zaken-api/assets/zaken-api-plugin-logo.d.ts.map +1 -0
  104. package/lib/plugins/zaken-api/components/link-document-to-zaak/link-document-to-zaak-configuration.component.d.ts +34 -0
  105. package/lib/plugins/zaken-api/components/link-document-to-zaak/link-document-to-zaak-configuration.component.d.ts.map +1 -0
  106. package/lib/plugins/zaken-api/components/zaken-api-configuration/zaken-api-configuration.component.d.ts +34 -0
  107. package/lib/plugins/zaken-api/components/zaken-api-configuration/zaken-api-configuration.component.d.ts.map +1 -0
  108. package/lib/plugins/zaken-api/models/config.d.ts +12 -0
  109. package/lib/plugins/zaken-api/models/config.d.ts.map +1 -0
  110. package/lib/plugins/zaken-api/models/index.d.ts +2 -0
  111. package/lib/plugins/zaken-api/models/index.d.ts.map +1 -0
  112. package/lib/plugins/zaken-api/zaken-api-plugin.module.d.ts +12 -0
  113. package/lib/plugins/zaken-api/zaken-api-plugin.module.d.ts.map +1 -0
  114. package/lib/plugins/zaken-api/zaken-api-plugin.specification.d.ts +4 -0
  115. package/lib/plugins/zaken-api/zaken-api-plugin.specification.d.ts.map +1 -0
  116. package/lib/services/index.d.ts +1 -0
  117. package/lib/services/index.d.ts.map +1 -1
  118. package/lib/services/plugin-management.service.d.ts +27 -0
  119. package/lib/services/plugin-management.service.d.ts.map +1 -0
  120. package/lib/services/plugin-translation.service.d.ts.map +1 -1
  121. package/package.json +1 -1
  122. package/public-api.d.ts +8 -5
  123. package/public-api.d.ts.map +1 -1
  124. package/esm2020/lib/plugins/open-zaak/components/create-zaak-configuration/create-zaak-configuration.component.mjs +0 -65
  125. package/esm2020/lib/plugins/open-zaak/components/select-zaak-type/select-zaak-type.component.mjs +0 -61
  126. package/esm2020/lib/plugins/open-zaak/components/set-besluit-configuration/set-besluit-configuration.component.mjs +0 -85
  127. package/esm2020/lib/plugins/open-zaak/components/set-resultaat-configuration/set-resultaat-configuration.component.mjs +0 -95
  128. package/esm2020/lib/plugins/open-zaak/components/set-status-configuration/set-status-configuration.component.mjs +0 -90
  129. package/lib/plugins/open-zaak/components/create-zaak-configuration/create-zaak-configuration.component.d.ts +0 -23
  130. package/lib/plugins/open-zaak/components/create-zaak-configuration/create-zaak-configuration.component.d.ts.map +0 -1
  131. package/lib/plugins/open-zaak/components/select-zaak-type/select-zaak-type.component.d.ts +0 -23
  132. package/lib/plugins/open-zaak/components/select-zaak-type/select-zaak-type.component.d.ts.map +0 -1
  133. package/lib/plugins/open-zaak/components/set-besluit-configuration/set-besluit-configuration.component.d.ts +0 -30
  134. package/lib/plugins/open-zaak/components/set-besluit-configuration/set-besluit-configuration.component.d.ts.map +0 -1
  135. package/lib/plugins/open-zaak/components/set-resultaat-configuration/set-resultaat-configuration.component.d.ts +0 -30
  136. package/lib/plugins/open-zaak/components/set-resultaat-configuration/set-resultaat-configuration.component.d.ts.map +0 -1
  137. package/lib/plugins/open-zaak/components/set-status-configuration/set-status-configuration.component.d.ts +0 -30
  138. package/lib/plugins/open-zaak/components/set-status-configuration/set-status-configuration.component.d.ts.map +0 -1
@@ -1,14 +1,16 @@
1
1
  import * as i0 from '@angular/core';
2
2
  import { InjectionToken, Injectable, Inject, Pipe, NgModule, EventEmitter, ViewContainerRef, Component, ViewChild, Input, Output } from '@angular/core';
3
- import { BehaviorSubject, combineLatest, of, Subject } from 'rxjs';
4
- import { map, tap, switchMap } from 'rxjs/operators';
5
- import * as i1 from '@ngx-translate/core';
3
+ import { BehaviorSubject, combineLatest, take, map as map$1 } from 'rxjs';
4
+ import { map, tap } from 'rxjs/operators';
5
+ import * as i2 from '@ngx-translate/core';
6
6
  import { TranslateModule } from '@ngx-translate/core';
7
- import * as i2 from '@valtimo/user-interface';
8
- import { ParagraphModule, TitleModule, FormModule, InputModule, SelectModule, InputLabelModule, MultiInputModule } from '@valtimo/user-interface';
9
- import * as i3 from '@angular/common';
7
+ import * as i1 from '@valtimo/config';
8
+ import * as i3 from '@angular/platform-browser';
9
+ import * as i4 from '@angular/common/http';
10
+ import * as i3$1 from '@valtimo/user-interface';
11
+ import { ParagraphModule, FormModule, InputModule, SelectModule, MultiInputModule } from '@valtimo/user-interface';
12
+ import * as i4$1 from '@angular/common';
10
13
  import { CommonModule } from '@angular/common';
11
- import * as i1$1 from '@valtimo/resource';
12
14
 
13
15
  /*
14
16
  * Copyright 2015-2020 Ritense BV, the Netherlands.
@@ -19,7 +21,11 @@ import * as i1$1 from '@valtimo/resource';
19
21
  *
20
22
  * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
21
23
  *
22
- * 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.
24
+ * Unless required by applicable law or agreed to in writing, software
25
+ * distributed under the License is distributed on an "AS IS" basis,
26
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
27
+ * See the License for the specific language governing permissions and
28
+ * limitations under the License.
23
29
  */
24
30
  const PLUGINS_TOKEN = new InjectionToken('Provide plugin config; an array of plugin specifications.');
25
31
 
@@ -32,7 +38,11 @@ const PLUGINS_TOKEN = new InjectionToken('Provide plugin config; an array of plu
32
38
  *
33
39
  * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
34
40
  *
35
- * 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.
41
+ * Unless required by applicable law or agreed to in writing, software
42
+ * distributed under the License is distributed on an "AS IS" basis,
43
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
44
+ * See the License for the specific language governing permissions and
45
+ * limitations under the License.
36
46
  */
37
47
 
38
48
  /*
@@ -67,9 +77,9 @@ class PluginService {
67
77
  return this._availablePluginIds$;
68
78
  }
69
79
  }
70
- PluginService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.9", ngImport: i0, type: PluginService, deps: [{ token: PLUGINS_TOKEN }], target: i0.ɵɵFactoryTarget.Injectable });
71
- PluginService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.3.9", ngImport: i0, type: PluginService, providedIn: 'root' });
72
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.9", ngImport: i0, type: PluginService, decorators: [{
80
+ PluginService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: PluginService, deps: [{ token: PLUGINS_TOKEN }], target: i0.ɵɵFactoryTarget.Injectable });
81
+ PluginService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: PluginService, providedIn: 'root' });
82
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: PluginService, decorators: [{
73
83
  type: Injectable,
74
84
  args: [{
75
85
  providedIn: 'root',
@@ -88,7 +98,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.9", ngImpor
88
98
  *
89
99
  * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
90
100
  *
91
- * 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.
101
+ * Unless required by applicable law or agreed to in writing, software
102
+ * distributed under the License is distributed on an "AS IS" basis,
103
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
104
+ * See the License for the specific language governing permissions and
105
+ * limitations under the License.
92
106
  */
93
107
  class PluginTranslationService {
94
108
  constructor(translateService, pluginService) {
@@ -111,14 +125,85 @@ class PluginTranslationService {
111
125
  return translation || `${pluginDefinitionKey}.${translateKey}`;
112
126
  }
113
127
  }
114
- PluginTranslationService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.9", ngImport: i0, type: PluginTranslationService, deps: [{ token: i1.TranslateService }, { token: PluginService }], target: i0.ɵɵFactoryTarget.Injectable });
115
- PluginTranslationService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.3.9", ngImport: i0, type: PluginTranslationService, providedIn: 'root' });
116
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.9", ngImport: i0, type: PluginTranslationService, decorators: [{
128
+ PluginTranslationService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: PluginTranslationService, deps: [{ token: i2.TranslateService }, { token: PluginService }], target: i0.ɵɵFactoryTarget.Injectable });
129
+ PluginTranslationService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: PluginTranslationService, providedIn: 'root' });
130
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: PluginTranslationService, decorators: [{
131
+ type: Injectable,
132
+ args: [{
133
+ providedIn: 'root',
134
+ }]
135
+ }], ctorParameters: function () { return [{ type: i2.TranslateService }, { type: PluginService }]; } });
136
+
137
+ /*
138
+ * Copyright 2015-2020 Ritense BV, the Netherlands.
139
+ *
140
+ * Licensed under EUPL, Version 1.2 (the "License");
141
+ * you may not use this file except in compliance with the License.
142
+ * You may obtain a copy of the License at
143
+ *
144
+ * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
145
+ *
146
+ * Unless required by applicable law or agreed to in writing, software
147
+ * distributed under the License is distributed on an "AS IS" basis,
148
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
149
+ * See the License for the specific language governing permissions and
150
+ * limitations under the License.
151
+ */
152
+ class PluginManagementService {
153
+ constructor(configService, pluginService, sanitizer, http) {
154
+ this.configService = configService;
155
+ this.pluginService = pluginService;
156
+ this.sanitizer = sanitizer;
157
+ this.http = http;
158
+ this.VALTIMO_API_ENDPOINT_URI = this.configService.config.valtimoApi.endpointUri;
159
+ }
160
+ getPluginDefinitions() {
161
+ return this.http.get(`${this.VALTIMO_API_ENDPOINT_URI}plugin/definition`);
162
+ }
163
+ getPluginFunctions(pluginDefinitionId) {
164
+ return this.http.get(`${this.VALTIMO_API_ENDPOINT_URI}plugin/definition/${pluginDefinitionId}/action`);
165
+ }
166
+ getAllPluginConfigurations() {
167
+ return this.http.get(`${this.VALTIMO_API_ENDPOINT_URI}plugin/configuration`);
168
+ }
169
+ getPluginConfigurationsByCategory(categoryId) {
170
+ return this.http.get(`${this.VALTIMO_API_ENDPOINT_URI}plugin/configuration?category=${categoryId}`);
171
+ }
172
+ getAllPluginConfigurationsWithLogos() {
173
+ return this.returnPluginConfigurationsWithLogos(this.getAllPluginConfigurations());
174
+ }
175
+ savePluginConfiguration(pluginConfiguration) {
176
+ return this.http.post(`${this.VALTIMO_API_ENDPOINT_URI}plugin/configuration`, pluginConfiguration);
177
+ }
178
+ updatePluginConfiguration(configurationId, configurationTitle, configurationProperties) {
179
+ return this.http.put(`${this.VALTIMO_API_ENDPOINT_URI}plugin/configuration/${configurationId}`, {
180
+ title: configurationTitle,
181
+ properties: configurationProperties,
182
+ });
183
+ }
184
+ deletePluginConfiguration(configurationId) {
185
+ return this.http.delete(`${this.VALTIMO_API_ENDPOINT_URI}plugin/configuration/${configurationId}`);
186
+ }
187
+ returnPluginConfigurationsWithLogos(pluginConfigurations$) {
188
+ return combineLatest([pluginConfigurations$, this.pluginService.pluginSpecifications$]).pipe(map(([pluginConfigurations, pluginSpecifications]) => pluginConfigurations?.map(pluginConfiguration => {
189
+ const pluginSpecification = pluginSpecifications.find(specification => specification.pluginId === pluginConfiguration?.pluginDefinition?.key);
190
+ return {
191
+ ...pluginConfiguration,
192
+ ...(pluginSpecification?.pluginLogoBase64 && {
193
+ pluginLogoBase64: this.sanitizer.bypassSecurityTrustResourceUrl(pluginSpecification?.pluginLogoBase64),
194
+ }),
195
+ };
196
+ })));
197
+ }
198
+ }
199
+ PluginManagementService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: PluginManagementService, deps: [{ token: i1.ConfigService }, { token: PluginService }, { token: i3.DomSanitizer }, { token: i4.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable });
200
+ PluginManagementService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: PluginManagementService, providedIn: 'root' });
201
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: PluginManagementService, decorators: [{
117
202
  type: Injectable,
118
203
  args: [{
119
204
  providedIn: 'root',
120
205
  }]
121
- }], ctorParameters: function () { return [{ type: i1.TranslateService }, { type: PluginService }]; } });
206
+ }], ctorParameters: function () { return [{ type: i1.ConfigService }, { type: PluginService }, { type: i3.DomSanitizer }, { type: i4.HttpClient }]; } });
122
207
 
123
208
  /*
124
209
  * Copyright 2015-2020 Ritense BV, the Netherlands.
@@ -129,7 +214,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.9", ngImpor
129
214
  *
130
215
  * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
131
216
  *
132
- * 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.
217
+ * Unless required by applicable law or agreed to in writing, software
218
+ * distributed under the License is distributed on an "AS IS" basis,
219
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
220
+ * See the License for the specific language governing permissions and
221
+ * limitations under the License.
133
222
  */
134
223
 
135
224
  /*
@@ -141,7 +230,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.9", ngImpor
141
230
  *
142
231
  * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
143
232
  *
144
- * 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.
233
+ * Unless required by applicable law or agreed to in writing, software
234
+ * distributed under the License is distributed on an "AS IS" basis,
235
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
236
+ * See the License for the specific language governing permissions and
237
+ * limitations under the License.
145
238
  */
146
239
 
147
240
  /*
@@ -153,7 +246,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.9", ngImpor
153
246
  *
154
247
  * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
155
248
  *
156
- * 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.
249
+ * Unless required by applicable law or agreed to in writing, software
250
+ * distributed under the License is distributed on an "AS IS" basis,
251
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
252
+ * See the License for the specific language governing permissions and
253
+ * limitations under the License.
157
254
  */
158
255
 
159
256
  /*
@@ -165,7 +262,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.9", ngImpor
165
262
  *
166
263
  * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
167
264
  *
168
- * 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.
265
+ * Unless required by applicable law or agreed to in writing, software
266
+ * distributed under the License is distributed on an "AS IS" basis,
267
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
268
+ * See the License for the specific language governing permissions and
269
+ * limitations under the License.
169
270
  */
170
271
  class PluginTranslatePipe {
171
272
  constructor(pluginTranslationService, pluginService) {
@@ -176,9 +277,9 @@ class PluginTranslatePipe {
176
277
  return this.pluginTranslationService.translate(translateKey, pluginDefinitionKey);
177
278
  }
178
279
  }
179
- PluginTranslatePipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.9", ngImport: i0, type: PluginTranslatePipe, deps: [{ token: PluginTranslationService }, { token: PluginService }], target: i0.ɵɵFactoryTarget.Pipe });
180
- PluginTranslatePipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "12.0.0", version: "13.3.9", ngImport: i0, type: PluginTranslatePipe, name: "pluginTranslate" });
181
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.9", ngImport: i0, type: PluginTranslatePipe, decorators: [{
280
+ PluginTranslatePipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: PluginTranslatePipe, deps: [{ token: PluginTranslationService }, { token: PluginService }], target: i0.ɵɵFactoryTarget.Pipe });
281
+ PluginTranslatePipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: PluginTranslatePipe, name: "pluginTranslate" });
282
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: PluginTranslatePipe, decorators: [{
182
283
  type: Pipe,
183
284
  args: [{
184
285
  name: 'pluginTranslate',
@@ -194,14 +295,18 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.9", ngImpor
194
295
  *
195
296
  * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
196
297
  *
197
- * 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.
298
+ * Unless required by applicable law or agreed to in writing, software
299
+ * distributed under the License is distributed on an "AS IS" basis,
300
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
301
+ * See the License for the specific language governing permissions and
302
+ * limitations under the License.
198
303
  */
199
304
  class PluginTranslatePipeModule {
200
305
  }
201
- PluginTranslatePipeModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.9", ngImport: i0, type: PluginTranslatePipeModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
202
- PluginTranslatePipeModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.9", ngImport: i0, type: PluginTranslatePipeModule, declarations: [PluginTranslatePipe], imports: [TranslateModule], exports: [PluginTranslatePipe] });
203
- PluginTranslatePipeModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.9", ngImport: i0, type: PluginTranslatePipeModule, imports: [[TranslateModule]] });
204
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.9", ngImport: i0, type: PluginTranslatePipeModule, decorators: [{
306
+ PluginTranslatePipeModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: PluginTranslatePipeModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
307
+ PluginTranslatePipeModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: PluginTranslatePipeModule, declarations: [PluginTranslatePipe], imports: [TranslateModule], exports: [PluginTranslatePipe] });
308
+ PluginTranslatePipeModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: PluginTranslatePipeModule, imports: [[TranslateModule]] });
309
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: PluginTranslatePipeModule, decorators: [{
205
310
  type: NgModule,
206
311
  args: [{
207
312
  imports: [TranslateModule],
@@ -219,7 +324,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.9", ngImpor
219
324
  *
220
325
  * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
221
326
  *
222
- * 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.
327
+ * Unless required by applicable law or agreed to in writing, software
328
+ * distributed under the License is distributed on an "AS IS" basis,
329
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
330
+ * See the License for the specific language governing permissions and
331
+ * limitations under the License.
223
332
  */
224
333
 
225
334
  /*
@@ -231,7 +340,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.9", ngImpor
231
340
  *
232
341
  * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
233
342
  *
234
- * 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.
343
+ * Unless required by applicable law or agreed to in writing, software
344
+ * distributed under the License is distributed on an "AS IS" basis,
345
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
346
+ * See the License for the specific language governing permissions and
347
+ * limitations under the License.
235
348
  */
236
349
 
237
350
  /*
@@ -316,10 +429,11 @@ class PluginConfigurationContainerComponent {
316
429
  this.validSubscription?.unsubscribe();
317
430
  if (instance) {
318
431
  instance.save$ = this.save$;
319
- instance.clear$ = this.clear$;
320
- instance.error = this.error;
321
- instance.disabled = this.disabled;
432
+ instance.disabled$ = this.disabled$;
322
433
  instance.pluginId = pluginDefinitionKey;
434
+ if (this.prefillConfiguration$) {
435
+ instance.prefillConfiguration$ = this.prefillConfiguration$;
436
+ }
323
437
  this.validSubscription = instance.valid.subscribe(valid => {
324
438
  this.valid.emit(valid);
325
439
  });
@@ -330,9 +444,9 @@ class PluginConfigurationContainerComponent {
330
444
  });
331
445
  }
332
446
  }
333
- PluginConfigurationContainerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.9", ngImport: i0, type: PluginConfigurationContainerComponent, deps: [{ token: PluginService }], target: i0.ɵɵFactoryTarget.Component });
334
- PluginConfigurationContainerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.9", type: PluginConfigurationContainerComponent, selector: "valtimo-plugin-configuration-container", inputs: { type: "type", pluginDefinitionKey: "pluginDefinitionKey", functionKey: "functionKey", clear$: "clear$", save$: "save$", disabled: "disabled", error: "error" }, outputs: { valid: "valid", configuration: "configuration" }, viewQueries: [{ propertyName: "dynamicContainer", first: true, predicate: ["pluginConfigurationComponent"], descendants: true, read: ViewContainerRef, static: 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<ng-template #pluginConfigurationComponent></ng-template>\n<ng-container *ngIf=\"noConfigurationComponentAvailable$ | async\">\n <v-paragraph [center]=\"true\">{{ 'plugin.noConfigurationComponent' | translate }}</v-paragraph>\n</ng-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.ParagraphComponent, selector: "v-paragraph", inputs: ["center", "fullWidth"] }], directives: [{ type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], pipes: { "async": i3.AsyncPipe, "translate": i1.TranslatePipe } });
335
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.9", ngImport: i0, type: PluginConfigurationContainerComponent, decorators: [{
447
+ PluginConfigurationContainerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: PluginConfigurationContainerComponent, deps: [{ token: PluginService }], target: i0.ɵɵFactoryTarget.Component });
448
+ PluginConfigurationContainerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: PluginConfigurationContainerComponent, selector: "valtimo-plugin-configuration-container", inputs: { type: "type", pluginDefinitionKey: "pluginDefinitionKey", functionKey: "functionKey", save$: "save$", disabled$: "disabled$", prefillConfiguration$: "prefillConfiguration$" }, outputs: { valid: "valid", configuration: "configuration" }, viewQueries: [{ propertyName: "dynamicContainer", first: true, predicate: ["pluginConfigurationComponent"], descendants: true, read: ViewContainerRef, static: 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<ng-template #pluginConfigurationComponent></ng-template>\n<ng-container *ngIf=\"noConfigurationComponentAvailable$ | async\">\n <v-paragraph [center]=\"true\">{{ 'plugin.noConfigurationComponent' | translate }}</v-paragraph>\n</ng-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: i3$1.ParagraphComponent, selector: "v-paragraph", inputs: ["center", "fullWidth", "margin", "italic", "loading"] }], directives: [{ type: i4$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], pipes: { "async": i4$1.AsyncPipe, "translate": i2.TranslatePipe } });
449
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: PluginConfigurationContainerComponent, decorators: [{
336
450
  type: Component,
337
451
  args: [{ selector: 'valtimo-plugin-configuration-container', 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-template #pluginConfigurationComponent></ng-template>\n<ng-container *ngIf=\"noConfigurationComponentAvailable$ | async\">\n <v-paragraph [center]=\"true\">{{ 'plugin.noConfigurationComponent' | translate }}</v-paragraph>\n</ng-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"] }]
338
452
  }], ctorParameters: function () { return [{ type: PluginService }]; }, propDecorators: { dynamicContainer: [{
@@ -344,13 +458,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.9", ngImpor
344
458
  type: Input
345
459
  }], functionKey: [{
346
460
  type: Input
347
- }], clear$: [{
348
- type: Input
349
461
  }], save$: [{
350
462
  type: Input
351
- }], disabled: [{
463
+ }], disabled$: [{
352
464
  type: Input
353
- }], error: [{
465
+ }], prefillConfiguration$: [{
354
466
  type: Input
355
467
  }], valid: [{
356
468
  type: Output
@@ -375,10 +487,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.9", ngImpor
375
487
  */
376
488
  class PluginConfigurationContainerModule {
377
489
  }
378
- PluginConfigurationContainerModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.9", ngImport: i0, type: PluginConfigurationContainerModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
379
- PluginConfigurationContainerModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.9", ngImport: i0, type: PluginConfigurationContainerModule, declarations: [PluginConfigurationContainerComponent], imports: [CommonModule, ParagraphModule, TranslateModule], exports: [PluginConfigurationContainerComponent] });
380
- PluginConfigurationContainerModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.9", ngImport: i0, type: PluginConfigurationContainerModule, imports: [[CommonModule, ParagraphModule, TranslateModule]] });
381
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.9", ngImport: i0, type: PluginConfigurationContainerModule, decorators: [{
490
+ PluginConfigurationContainerModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: PluginConfigurationContainerModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
491
+ PluginConfigurationContainerModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: PluginConfigurationContainerModule, declarations: [PluginConfigurationContainerComponent], imports: [CommonModule, ParagraphModule, TranslateModule], exports: [PluginConfigurationContainerComponent] });
492
+ PluginConfigurationContainerModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: PluginConfigurationContainerModule, imports: [[CommonModule, ParagraphModule, TranslateModule]] });
493
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: PluginConfigurationContainerModule, decorators: [{
382
494
  type: NgModule,
383
495
  args: [{
384
496
  declarations: [PluginConfigurationContainerComponent],
@@ -396,42 +508,59 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.9", ngImpor
396
508
  *
397
509
  * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
398
510
  *
399
- * 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.
511
+ * Unless required by applicable law or agreed to in writing, software
512
+ * distributed under the License is distributed on an "AS IS" basis,
513
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
514
+ * See the License for the specific language governing permissions and
515
+ * limitations under the License.
400
516
  */
401
517
  class OpenZaakConfigurationComponent {
402
518
  constructor() {
403
519
  this.valid = new EventEmitter();
404
520
  this.configuration = new EventEmitter();
521
+ this.formValue$ = new BehaviorSubject(null);
522
+ this.valid$ = new BehaviorSubject(false);
523
+ }
524
+ ngOnInit() {
525
+ this.openSaveSubscription();
526
+ }
527
+ ngOnDestroy() {
528
+ this.saveSubscription?.unsubscribe();
405
529
  }
406
530
  formValueChange(formValue) {
407
- this.configuration.emit(formValue);
531
+ this.formValue$.next(formValue);
408
532
  this.handleValid(formValue);
409
533
  }
410
534
  handleValid(formValue) {
411
- const valid = formValue.name &&
412
- formValue.url &&
413
- formValue.catalogusUrl &&
414
- formValue.rsin &&
415
- formValue.secret &&
416
- formValue.clientId;
417
- this.valid.emit(!!valid);
535
+ const valid = !!(formValue.configurationTitle && formValue.clientId && formValue.clientSecret);
536
+ this.valid$.next(valid);
537
+ this.valid.emit(valid);
538
+ }
539
+ openSaveSubscription() {
540
+ this.saveSubscription = this.save$?.subscribe(save => {
541
+ combineLatest([this.formValue$, this.valid$])
542
+ .pipe(take(1))
543
+ .subscribe(([formValue, valid]) => {
544
+ if (valid) {
545
+ this.configuration.emit(formValue);
546
+ }
547
+ });
548
+ });
418
549
  }
419
550
  }
420
- OpenZaakConfigurationComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.9", ngImport: i0, type: OpenZaakConfigurationComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
421
- OpenZaakConfigurationComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.9", type: OpenZaakConfigurationComponent, selector: "valtimo-open-zaak-configuration", inputs: { clear$: "clear$", save$: "save$", disabled: "disabled", error: "error", pluginId: "pluginId" }, 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<v-form (valueChange)=\"formValueChange($event)\">\n <v-input\n name=\"name\"\n [title]=\"'name' | pluginTranslate: pluginId | async\"\n [fullWidth]=\"true\"\n [margin]=\"true\"\n [disabled]=\"disabled\"\n >\n </v-input>\n <v-input\n name=\"url\"\n [title]=\"'url' | pluginTranslate: pluginId | async\"\n [fullWidth]=\"true\"\n [margin]=\"true\"\n [disabled]=\"disabled\"\n >\n </v-input>\n <v-input\n name=\"clientId\"\n [title]=\"'clientId' | pluginTranslate: pluginId | async\"\n [fullWidth]=\"true\"\n [margin]=\"true\"\n [disabled]=\"disabled\"\n >\n </v-input>\n <v-input\n name=\"secret\"\n [title]=\"'secret' | pluginTranslate: pluginId | async\"\n [fullWidth]=\"true\"\n [margin]=\"true\"\n [disabled]=\"disabled\"\n >\n </v-input>\n <v-input\n name=\"rsin\"\n [title]=\"'rsin' | pluginTranslate: pluginId | async\"\n [fullWidth]=\"true\"\n [margin]=\"true\"\n [disabled]=\"disabled\"\n >\n </v-input>\n <v-input\n name=\"catalogusUrl\"\n [title]=\"'catalogusUrl' | pluginTranslate: pluginId | async\"\n [fullWidth]=\"true\"\n [margin]=\"true\"\n [disabled]=\"disabled\"\n >\n </v-input>\n</v-form>\n", styles: [""], components: [{ type: i2.FormComponent, selector: "v-form", outputs: ["valueChange"] }, { type: i2.InputComponent, selector: "v-input", inputs: ["name", "type", "title", "titleTranslationKey", "defaultValue", "widthPx", "fullWidth", "margin", "disabled", "step", "min", "maxLength"], outputs: ["valueChange"] }], pipes: { "async": i3.AsyncPipe, "pluginTranslate": PluginTranslatePipe } });
422
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.9", ngImport: i0, type: OpenZaakConfigurationComponent, decorators: [{
551
+ OpenZaakConfigurationComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: OpenZaakConfigurationComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
552
+ OpenZaakConfigurationComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: OpenZaakConfigurationComponent, selector: "valtimo-open-zaak-configuration", inputs: { save$: "save$", disabled$: "disabled$", pluginId: "pluginId", prefillConfiguration$: "prefillConfiguration$" }, 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<v-form\n (valueChange)=\"formValueChange($event)\"\n *ngIf=\"{\n disabled: disabled$ | async,\n prefill: prefillConfiguration$ ? (prefillConfiguration$ | async) : null\n } as obs\"\n>\n <v-input\n name=\"configurationTitle\"\n [title]=\"'configurationTitle' | pluginTranslate: pluginId | async\"\n [margin]=\"true\"\n [disabled]=\"obs.disabled\"\n [defaultValue]=\"obs.prefill?.configurationTitle\"\n [widthPx]=\"350\"\n [required]=\"true\"\n >\n </v-input>\n <v-input\n name=\"clientId\"\n [title]=\"'clientId' | pluginTranslate: pluginId | async\"\n [margin]=\"true\"\n [disabled]=\"obs.disabled\"\n [defaultValue]=\"obs.prefill?.clientId\"\n [widthPx]=\"350\"\n [required]=\"true\"\n >\n </v-input>\n <v-input\n name=\"clientSecret\"\n type=\"password\"\n [title]=\"'clientSecret' | pluginTranslate: pluginId | async\"\n [margin]=\"true\"\n [disabled]=\"obs.disabled\"\n [defaultValue]=\"obs.prefill?.clientSecret\"\n [widthPx]=\"350\"\n [required]=\"true\"\n >\n </v-input>\n</v-form>\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: i3$1.FormComponent, selector: "v-form", outputs: ["valueChange"] }, { type: i3$1.InputComponent, selector: "v-input", inputs: ["name", "type", "title", "titleTranslationKey", "defaultValue", "widthPx", "fullWidth", "margin", "disabled", "step", "min", "maxLength", "tooltip", "required", "hideNumberSpinBox", "digitOnly"], outputs: ["valueChange"] }], directives: [{ type: i4$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], pipes: { "async": i4$1.AsyncPipe, "pluginTranslate": PluginTranslatePipe } });
553
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: OpenZaakConfigurationComponent, decorators: [{
423
554
  type: Component,
424
- args: [{ selector: 'valtimo-open-zaak-configuration', 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-form (valueChange)=\"formValueChange($event)\">\n <v-input\n name=\"name\"\n [title]=\"'name' | pluginTranslate: pluginId | async\"\n [fullWidth]=\"true\"\n [margin]=\"true\"\n [disabled]=\"disabled\"\n >\n </v-input>\n <v-input\n name=\"url\"\n [title]=\"'url' | pluginTranslate: pluginId | async\"\n [fullWidth]=\"true\"\n [margin]=\"true\"\n [disabled]=\"disabled\"\n >\n </v-input>\n <v-input\n name=\"clientId\"\n [title]=\"'clientId' | pluginTranslate: pluginId | async\"\n [fullWidth]=\"true\"\n [margin]=\"true\"\n [disabled]=\"disabled\"\n >\n </v-input>\n <v-input\n name=\"secret\"\n [title]=\"'secret' | pluginTranslate: pluginId | async\"\n [fullWidth]=\"true\"\n [margin]=\"true\"\n [disabled]=\"disabled\"\n >\n </v-input>\n <v-input\n name=\"rsin\"\n [title]=\"'rsin' | pluginTranslate: pluginId | async\"\n [fullWidth]=\"true\"\n [margin]=\"true\"\n [disabled]=\"disabled\"\n >\n </v-input>\n <v-input\n name=\"catalogusUrl\"\n [title]=\"'catalogusUrl' | pluginTranslate: pluginId | async\"\n [fullWidth]=\"true\"\n [margin]=\"true\"\n [disabled]=\"disabled\"\n >\n </v-input>\n</v-form>\n", styles: [""] }]
425
- }], propDecorators: { clear$: [{
555
+ args: [{ selector: 'valtimo-open-zaak-configuration', 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-form\n (valueChange)=\"formValueChange($event)\"\n *ngIf=\"{\n disabled: disabled$ | async,\n prefill: prefillConfiguration$ ? (prefillConfiguration$ | async) : null\n } as obs\"\n>\n <v-input\n name=\"configurationTitle\"\n [title]=\"'configurationTitle' | pluginTranslate: pluginId | async\"\n [margin]=\"true\"\n [disabled]=\"obs.disabled\"\n [defaultValue]=\"obs.prefill?.configurationTitle\"\n [widthPx]=\"350\"\n [required]=\"true\"\n >\n </v-input>\n <v-input\n name=\"clientId\"\n [title]=\"'clientId' | pluginTranslate: pluginId | async\"\n [margin]=\"true\"\n [disabled]=\"obs.disabled\"\n [defaultValue]=\"obs.prefill?.clientId\"\n [widthPx]=\"350\"\n [required]=\"true\"\n >\n </v-input>\n <v-input\n name=\"clientSecret\"\n type=\"password\"\n [title]=\"'clientSecret' | pluginTranslate: pluginId | async\"\n [margin]=\"true\"\n [disabled]=\"obs.disabled\"\n [defaultValue]=\"obs.prefill?.clientSecret\"\n [widthPx]=\"350\"\n [required]=\"true\"\n >\n </v-input>\n</v-form>\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"] }]
556
+ }], propDecorators: { save$: [{
426
557
  type: Input
427
- }], save$: [{
428
- type: Input
429
- }], disabled: [{
430
- type: Input
431
- }], error: [{
558
+ }], disabled$: [{
432
559
  type: Input
433
560
  }], pluginId: [{
434
561
  type: Input
562
+ }], prefillConfiguration$: [{
563
+ type: Input
435
564
  }], valid: [{
436
565
  type: Output
437
566
  }], configuration: [{
@@ -447,48 +576,102 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.9", ngImpor
447
576
  *
448
577
  * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
449
578
  *
450
- * 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.
579
+ * Unless required by applicable law or agreed to in writing, software
580
+ * distributed under the License is distributed on an "AS IS" basis,
581
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
582
+ * See the License for the specific language governing permissions and
583
+ * limitations under the License.
451
584
  */
452
- class SelectZaakTypeComponent {
453
- constructor(openZaakService, modalService, pluginTranslationService) {
454
- this.openZaakService = openZaakService;
455
- this.modalService = modalService;
456
- this.pluginTranslationService = pluginTranslationService;
457
- this.zaakTypeSelected = new EventEmitter();
458
- this.zaakTypeLinks$ = this.modalService.modalData$.pipe(switchMap(modalData => {
459
- if (modalData?.processDefinitionKey) {
460
- return this.openZaakService.getZaakTypeLinkListByProcess(modalData?.processDefinitionKey);
461
- }
462
- else {
463
- return of(null);
464
- }
465
- }));
466
- this.zaakTypeLinkSelectItems$ = this.zaakTypeLinks$.pipe(map(zaakTypeLinks => zaakTypeLinks?.map(link => ({
467
- id: link.zaakTypeUrl,
468
- text: link.documentDefinitionName,
469
- }))));
470
- this.selectedZaakTypeUrl$ = new BehaviorSubject('');
471
- this.selectedZaakType$ = combineLatest([
472
- this.selectedZaakTypeUrl$,
473
- this.openZaakService.getZaakTypes(),
474
- ]).pipe(map(([selectedZaakTypeUrl, zaakTypes]) => zaakTypes.find(zaakType => zaakType.url === selectedZaakTypeUrl)), tap(selectedZaakType => this.zaakTypeSelected.emit(selectedZaakType)));
475
- }
476
- selectZaakTypeLink(zaakTypeUrl) {
477
- this.selectedZaakTypeUrl$.next(zaakTypeUrl);
478
- }
585
+ class OpenZaakPluginModule {
479
586
  }
480
- SelectZaakTypeComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.9", ngImport: i0, type: SelectZaakTypeComponent, deps: [{ token: i1$1.OpenZaakService }, { token: i2.ModalService }, { token: PluginTranslationService }], target: i0.ɵɵFactoryTarget.Component });
481
- SelectZaakTypeComponentcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.9", type: SelectZaakTypeComponent, selector: "valtimo-select-zaak-type", inputs: { pluginId: "pluginId", disabled: "disabled" }, outputs: { zaakTypeSelected: "zaakTypeSelected" }, 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\n *ngIf=\"{\n zaakTypeLinkSelectItems: zaakTypeLinkSelectItems$ | async,\n selectedZaakType: selectedZaakType$ | async\n } as obs\"\n>\n <v-select\n (selectedChange)=\"selectZaakTypeLink($event)\"\n [items]=\"obs.zaakTypeLinkSelectItems\"\n [disabled]=\"!obs.zaakTypeLinkSelectItems || disabled\"\n [notFoundText]=\"'noZaakTypeLinksFound' | pluginTranslate: pluginId | async\"\n [title]=\"'documentDefinition' | pluginTranslate: pluginId | async\"\n [margin]=\"true\"\n [widthInPx]=\"350\"\n ></v-select>\n <div class=\"selected-zaak-type\">\n <v-input-label [title]=\"'zaakType' | pluginTranslate: pluginId | async\"></v-input-label>\n <v-paragraph *ngIf=\"obs.selectedZaakType?.omschrijving; else noSelectedZaakType\">{{\n obs.selectedZaakType.omschrijving\n }}</v-paragraph>\n </div>\n</ng-container>\n\n<ng-template #noSelectedZaakType>\n <v-paragraph>{{ 'noZaakTypeSelected' | pluginTranslate: pluginId | async }}</v-paragraph>\n</ng-template>\n", styles: [".selected-zaak-type{margin-block-end:var(--v-input-margin)}\n"], components: [{ type: i2.SelectComponent, selector: "v-select", inputs: ["items", "defaultSelection", "clearable", "disabled", "multiple", "margin", "widthInPx", "notFoundText", "clearAllText", "name", "title", "titleTranslationKey", "clearSelectionSubject$"], outputs: ["selectedChange", "clear"] }, { type: i2.InputLabelComponent, selector: "v-input-label", inputs: ["name", "title", "titleTranslationKey"] }, { type: i2.ParagraphComponent, selector: "v-paragraph", inputs: ["center", "fullWidth"] }], directives: [{ type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], pipes: { "async": i3.AsyncPipe, "pluginTranslate": PluginTranslatePipe } });
482
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.9", ngImport: i0, type: SelectZaakTypeComponent, decorators: [{
483
- type: Component,
484
- args: [{ selector: 'valtimo-select-zaak-type', 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\n *ngIf=\"{\n zaakTypeLinkSelectItems: zaakTypeLinkSelectItems$ | async,\n selectedZaakType: selectedZaakType$ | async\n } as obs\"\n>\n <v-select\n (selectedChange)=\"selectZaakTypeLink($event)\"\n [items]=\"obs.zaakTypeLinkSelectItems\"\n [disabled]=\"!obs.zaakTypeLinkSelectItems || disabled\"\n [notFoundText]=\"'noZaakTypeLinksFound' | pluginTranslate: pluginId | async\"\n [title]=\"'documentDefinition' | pluginTranslate: pluginId | async\"\n [margin]=\"true\"\n [widthInPx]=\"350\"\n ></v-select>\n <div class=\"selected-zaak-type\">\n <v-input-label [title]=\"'zaakType' | pluginTranslate: pluginId | async\"></v-input-label>\n <v-paragraph *ngIf=\"obs.selectedZaakType?.omschrijving; else noSelectedZaakType\">{{\n obs.selectedZaakType.omschrijving\n }}</v-paragraph>\n </div>\n</ng-container>\n\n<ng-template #noSelectedZaakType>\n <v-paragraph>{{ 'noZaakTypeSelected' | pluginTranslate: pluginId | async }}</v-paragraph>\n</ng-template>\n", styles: [".selected-zaak-type{margin-block-end:var(--v-input-margin)}\n"] }]
485
- }], ctorParameters: function () { return [{ type: i1$1.OpenZaakService }, { type: i2.ModalService }, { type: PluginTranslationService }]; }, propDecorators: { pluginId: [{
486
- type: Input
487
- }], disabled: [{
488
- type: Input
489
- }], zaakTypeSelected: [{
490
- type: Output
491
- }] } });
587
+ OpenZaakPluginModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: OpenZaakPluginModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
588
+ OpenZaakPluginModulemod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: OpenZaakPluginModule, declarations: [OpenZaakConfigurationComponent], imports: [CommonModule, FormModule, InputModule, PluginTranslatePipeModule], exports: [OpenZaakConfigurationComponent] });
589
+ OpenZaakPluginModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: OpenZaakPluginModule, imports: [[CommonModule, FormModule, InputModule, PluginTranslatePipeModule]] });
590
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: OpenZaakPluginModule, decorators: [{
591
+ type: NgModule,
592
+ args: [{
593
+ declarations: [OpenZaakConfigurationComponent],
594
+ imports: [CommonModule, FormModule, InputModule, PluginTranslatePipeModule],
595
+ exports: [OpenZaakConfigurationComponent],
596
+ }]
597
+ }] });
598
+
599
+ /*
600
+ * Copyright 2015-2020 Ritense BV, the Netherlands.
601
+ *
602
+ * Licensed under EUPL, Version 1.2 (the "License");
603
+ * you may not use this file except in compliance with the License.
604
+ * You may obtain a copy of the License at
605
+ *
606
+ * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
607
+ *
608
+ * Unless required by applicable law or agreed to in writing, software
609
+ * distributed under the License is distributed on an "AS IS" basis,
610
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
611
+ * See the License for the specific language governing permissions and
612
+ * limitations under the License.
613
+ */
614
+ const OPEN_ZAAK_PLUGIN_LOGO_BASE64 = 'data:image/png;base64,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';
615
+
616
+ /*
617
+ * Copyright 2015-2020 Ritense BV, the Netherlands.
618
+ *
619
+ * Licensed under EUPL, Version 1.2 (the "License");
620
+ * you may not use this file except in compliance with the License.
621
+ * You may obtain a copy of the License at
622
+ *
623
+ * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
624
+ *
625
+ * Unless required by applicable law or agreed to in writing, software
626
+ * distributed under the License is distributed on an "AS IS" basis,
627
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
628
+ * See the License for the specific language governing permissions and
629
+ * limitations under the License.
630
+ */
631
+
632
+ /*
633
+ * Copyright 2015-2020 Ritense BV, the Netherlands.
634
+ *
635
+ * Licensed under EUPL, Version 1.2 (the "License");
636
+ * you may not use this file except in compliance with the License.
637
+ * You may obtain a copy of the License at
638
+ *
639
+ * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
640
+ *
641
+ * Unless required by applicable law or agreed to in writing, software
642
+ * distributed under the License is distributed on an "AS IS" basis,
643
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
644
+ * See the License for the specific language governing permissions and
645
+ * limitations under the License.
646
+ */
647
+ const openZaakPluginSpecification = {
648
+ pluginId: 'openzaak',
649
+ pluginConfigurationComponent: OpenZaakConfigurationComponent,
650
+ pluginLogoBase64: OPEN_ZAAK_PLUGIN_LOGO_BASE64,
651
+ pluginTranslations: {
652
+ nl: {
653
+ title: 'OpenZaak',
654
+ description: 'OpenZaak is een productiewaardig API platform die de API-standaard voor zaakgericht werken implementeert (de ZGW-API’s).',
655
+ configurationTitle: 'Configuratienaam',
656
+ clientId: 'Client ID',
657
+ clientSecret: 'Secret',
658
+ },
659
+ en: {
660
+ title: 'OpenZaak',
661
+ description: 'OpenZaak is a production-worthy API platform that implements the API standard for case-oriented working (the ZGW APIs).',
662
+ configurationTitle: 'Configuration name',
663
+ clientId: 'Client ID',
664
+ clientSecret: 'Secret',
665
+ },
666
+ de: {
667
+ title: 'OpenZaak',
668
+ description: 'OpenZaak ist eine produktionstaugliche API-Plattform, die den API-Standard für fallorientiertes Arbeiten (die ZGW-APIs) implementiert.',
669
+ configurationTitle: 'Konfigurationsname',
670
+ clientId: 'Client ID',
671
+ clientSecret: 'Secret',
672
+ },
673
+ },
674
+ };
492
675
 
493
676
  /*
494
677
  * Copyright 2015-2020 Ritense BV, the Netherlands.
@@ -499,51 +682,62 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.9", ngImpor
499
682
  *
500
683
  * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
501
684
  *
502
- * 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.
685
+ * Unless required by applicable law or agreed to in writing, software
686
+ * distributed under the License is distributed on an "AS IS" basis,
687
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
688
+ * See the License for the specific language governing permissions and
689
+ * limitations under the License.
503
690
  */
504
- class CreateZaakConfigurationComponent {
691
+ class SmartDocumentsConfigurationComponent {
505
692
  constructor() {
506
693
  this.valid = new EventEmitter();
507
694
  this.configuration = new EventEmitter();
508
- this.selectedZaakType$ = new BehaviorSubject(null);
695
+ this.formValue$ = new BehaviorSubject(null);
696
+ this.valid$ = new BehaviorSubject(false);
509
697
  }
510
698
  ngOnInit() {
511
- this.openValidSubscription();
699
+ this.openSaveSubscription();
512
700
  }
513
701
  ngOnDestroy() {
514
- this.validSubscription?.unsubscribe();
702
+ this.saveSubscription?.unsubscribe();
515
703
  }
516
- selectZaakType(zaakType) {
517
- this.selectedZaakType$.next(zaakType);
704
+ formValueChange(formValue) {
705
+ this.formValue$.next(formValue);
706
+ this.handleValid(formValue);
518
707
  }
519
- openValidSubscription() {
520
- this.validSubscription = combineLatest([this.selectedZaakType$])
521
- .pipe(tap(([zaakType]) => {
522
- if (zaakType) {
523
- this.valid.emit(true);
524
- }
525
- else {
526
- this.valid.emit(false);
527
- }
528
- }))
529
- .subscribe();
708
+ handleValid(formValue) {
709
+ const valid = !!(formValue.configurationTitle &&
710
+ formValue.url &&
711
+ formValue.password &&
712
+ formValue.username);
713
+ this.valid$.next(valid);
714
+ this.valid.emit(valid);
715
+ }
716
+ openSaveSubscription() {
717
+ this.saveSubscription = this.save$?.subscribe(save => {
718
+ combineLatest([this.formValue$, this.valid$])
719
+ .pipe(take(1))
720
+ .subscribe(([formValue, valid]) => {
721
+ if (valid) {
722
+ this.configuration.emit(formValue);
723
+ }
724
+ });
725
+ });
530
726
  }
531
727
  }
532
- CreateZaakConfigurationComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.9", ngImport: i0, type: CreateZaakConfigurationComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
533
- CreateZaakConfigurationComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.9", type: CreateZaakConfigurationComponent, selector: "valtimo-create-zaak-configuration", inputs: { clear$: "clear$", save$: "save$", disabled: "disabled", error: "error", pluginId: "pluginId" }, 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-select-zaak-type\n [pluginId]=\"pluginId\"\n [disabled]=\"disabled\"\n (zaakTypeSelected)=\"selectZaakType($event)\"\n></valtimo-select-zaak-type>\n", styles: [""], components: [{ type: SelectZaakTypeComponent, selector: "valtimo-select-zaak-type", inputs: ["pluginId", "disabled"], outputs: ["zaakTypeSelected"] }] });
534
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.9", ngImport: i0, type: CreateZaakConfigurationComponent, decorators: [{
728
+ SmartDocumentsConfigurationComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: SmartDocumentsConfigurationComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
729
+ SmartDocumentsConfigurationComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: SmartDocumentsConfigurationComponent, selector: "valtimo-smart-documents-configuration", inputs: { save$: "save$", disabled$: "disabled$", pluginId: "pluginId", prefillConfiguration$: "prefillConfiguration$" }, 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<v-form\n (valueChange)=\"formValueChange($event)\"\n *ngIf=\"{\n disabled: disabled$ | async,\n prefill: prefillConfiguration$ ? (prefillConfiguration$ | async) : null\n } as obs\"\n>\n <v-input\n name=\"configurationTitle\"\n [title]=\"'configurationTitle' | pluginTranslate: pluginId | async\"\n [fullWidth]=\"true\"\n [margin]=\"true\"\n [disabled]=\"obs.disabled\"\n [defaultValue]=\"obs.prefill?.configurationTitle\"\n [required]=\"true\"\n >\n </v-input>\n <v-input\n name=\"url\"\n [title]=\"'url' | pluginTranslate: pluginId | async\"\n [fullWidth]=\"true\"\n [margin]=\"true\"\n [disabled]=\"obs.disabled\"\n [defaultValue]=\"obs.prefill?.url\"\n [required]=\"true\"\n >\n </v-input>\n <v-input\n name=\"username\"\n [title]=\"'username' | pluginTranslate: pluginId | async\"\n [fullWidth]=\"true\"\n [margin]=\"true\"\n [disabled]=\"obs.disabled\"\n [defaultValue]=\"obs.prefill?.username\"\n [required]=\"true\"\n >\n </v-input>\n <v-input\n name=\"password\"\n type=\"password\"\n [title]=\"'password' | pluginTranslate: pluginId | async\"\n [fullWidth]=\"true\"\n [margin]=\"true\"\n [disabled]=\"obs.disabled\"\n [defaultValue]=\"obs.prefill?.password\"\n [required]=\"true\"\n >\n </v-input>\n</v-form>\n", styles: [""], components: [{ type: i3$1.FormComponent, selector: "v-form", outputs: ["valueChange"] }, { type: i3$1.InputComponent, selector: "v-input", inputs: ["name", "type", "title", "titleTranslationKey", "defaultValue", "widthPx", "fullWidth", "margin", "disabled", "step", "min", "maxLength", "tooltip", "required", "hideNumberSpinBox", "digitOnly"], outputs: ["valueChange"] }], directives: [{ type: i4$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], pipes: { "async": i4$1.AsyncPipe, "pluginTranslate": PluginTranslatePipe } });
730
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: SmartDocumentsConfigurationComponent, decorators: [{
535
731
  type: Component,
536
- args: [{ selector: 'valtimo-create-zaak-configuration', 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-select-zaak-type\n [pluginId]=\"pluginId\"\n [disabled]=\"disabled\"\n (zaakTypeSelected)=\"selectZaakType($event)\"\n></valtimo-select-zaak-type>\n", styles: [""] }]
537
- }], propDecorators: { clear$: [{
538
- type: Input
539
- }], save$: [{
540
- type: Input
541
- }], disabled: [{
732
+ args: [{ selector: 'valtimo-smart-documents-configuration', 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-form\n (valueChange)=\"formValueChange($event)\"\n *ngIf=\"{\n disabled: disabled$ | async,\n prefill: prefillConfiguration$ ? (prefillConfiguration$ | async) : null\n } as obs\"\n>\n <v-input\n name=\"configurationTitle\"\n [title]=\"'configurationTitle' | pluginTranslate: pluginId | async\"\n [fullWidth]=\"true\"\n [margin]=\"true\"\n [disabled]=\"obs.disabled\"\n [defaultValue]=\"obs.prefill?.configurationTitle\"\n [required]=\"true\"\n >\n </v-input>\n <v-input\n name=\"url\"\n [title]=\"'url' | pluginTranslate: pluginId | async\"\n [fullWidth]=\"true\"\n [margin]=\"true\"\n [disabled]=\"obs.disabled\"\n [defaultValue]=\"obs.prefill?.url\"\n [required]=\"true\"\n >\n </v-input>\n <v-input\n name=\"username\"\n [title]=\"'username' | pluginTranslate: pluginId | async\"\n [fullWidth]=\"true\"\n [margin]=\"true\"\n [disabled]=\"obs.disabled\"\n [defaultValue]=\"obs.prefill?.username\"\n [required]=\"true\"\n >\n </v-input>\n <v-input\n name=\"password\"\n type=\"password\"\n [title]=\"'password' | pluginTranslate: pluginId | async\"\n [fullWidth]=\"true\"\n [margin]=\"true\"\n [disabled]=\"obs.disabled\"\n [defaultValue]=\"obs.prefill?.password\"\n [required]=\"true\"\n >\n </v-input>\n</v-form>\n", styles: [""] }]
733
+ }], propDecorators: { save$: [{
542
734
  type: Input
543
- }], error: [{
735
+ }], disabled$: [{
544
736
  type: Input
545
737
  }], pluginId: [{
546
738
  type: Input
739
+ }], prefillConfiguration$: [{
740
+ type: Input
547
741
  }], valid: [{
548
742
  type: Output
549
743
  }], configuration: [{
@@ -559,68 +753,68 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.9", ngImpor
559
753
  *
560
754
  * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
561
755
  *
562
- * 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.
756
+ * Unless required by applicable law or agreed to in writing, software
757
+ * distributed under the License is distributed on an "AS IS" basis,
758
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
759
+ * See the License for the specific language governing permissions and
760
+ * limitations under the License.
563
761
  */
564
- class SetBesluitConfigurationComponent {
762
+ class GenerateDocumentConfigurationComponent {
565
763
  constructor() {
566
764
  this.valid = new EventEmitter();
567
765
  this.configuration = new EventEmitter();
568
- this.selectedBesluit$ = new BehaviorSubject('');
569
- this.selectedZaakType$ = new BehaviorSubject(null);
570
- this.BESLUITEN = ['test besluit', 'test besluit met document'];
571
- this.besluitSelectItems = this.BESLUITEN.map(besluit => ({
572
- id: besluit,
573
- text: besluit,
766
+ this.FORMATS = ['DOCX', 'HTML', 'PDF', 'XML'];
767
+ this.FORMAT_SELECT_ITEMS = this.FORMATS.map(format => ({
768
+ id: format,
769
+ text: format,
574
770
  }));
575
- this.clearSubject$ = new Subject();
771
+ this.formValue$ = new BehaviorSubject(null);
772
+ this.valid$ = new BehaviorSubject(false);
576
773
  }
577
774
  ngOnInit() {
578
- this.openValidSubscription();
775
+ this.openSaveSubscription();
579
776
  }
580
777
  ngOnDestroy() {
581
- this.validSubscription?.unsubscribe();
582
- }
583
- selectZaakType(zaakType) {
584
- this.selectedZaakType$.next(zaakType);
585
- if (!zaakType) {
586
- this.clearBesluit();
587
- }
588
- }
589
- clearBesluit() {
590
- this.selectedBesluit$.next('');
591
- this.clearSubject$.next(null);
592
- }
593
- selectBesluit(besluit) {
594
- this.selectedBesluit$.next(besluit);
595
- }
596
- openValidSubscription() {
597
- this.validSubscription = combineLatest([this.selectedBesluit$, this.selectedZaakType$])
598
- .pipe(tap(([besluit, zaakType]) => {
599
- if (besluit && zaakType) {
600
- this.valid.emit(true);
601
- }
602
- else {
603
- this.valid.emit(false);
604
- }
605
- }))
606
- .subscribe();
778
+ this.saveSubscription?.unsubscribe();
779
+ }
780
+ formValueChange(formValue) {
781
+ this.formValue$.next(formValue);
782
+ this.handleValid(formValue);
783
+ }
784
+ handleValid(formValue) {
785
+ const valid = !!(formValue.templateGroup &&
786
+ formValue.templateName &&
787
+ formValue.format &&
788
+ formValue.resultingDocumentProcessVariableName &&
789
+ formValue.templateData?.length > 0);
790
+ this.valid$.next(valid);
791
+ this.valid.emit(valid);
792
+ }
793
+ openSaveSubscription() {
794
+ this.saveSubscription = this.save$?.subscribe(save => {
795
+ combineLatest([this.formValue$, this.valid$])
796
+ .pipe(take(1))
797
+ .subscribe(([formValue, valid]) => {
798
+ if (valid) {
799
+ this.configuration.emit(formValue);
800
+ }
801
+ });
802
+ });
607
803
  }
608
804
  }
609
- SetBesluitConfigurationComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.9", ngImport: i0, type: SetBesluitConfigurationComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
610
- SetBesluitConfigurationComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.9", type: SetBesluitConfigurationComponent, selector: "valtimo-set-besluit-configuration", inputs: { clear$: "clear$", save$: "save$", disabled: "disabled", error: "error", pluginId: "pluginId" }, 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-select-zaak-type\n [pluginId]=\"pluginId\"\n [disabled]=\"disabled\"\n (zaakTypeSelected)=\"selectZaakType($event)\"\n></valtimo-select-zaak-type>\n<v-select\n [items]=\"besluitSelectItems\"\n [margin]=\"true\"\n [widthInPx]=\"350\"\n [title]=\"'besluit' | pluginTranslate: pluginId | async\"\n [disabled]=\"(selectedZaakType$ | async) === null || disabled\"\n [clearSelectionSubject$]=\"clearSubject$\"\n (selectedChange)=\"selectBesluit($event)\"\n></v-select>\n", styles: [""], components: [{ type: SelectZaakTypeComponent, selector: "valtimo-select-zaak-type", inputs: ["pluginId", "disabled"], outputs: ["zaakTypeSelected"] }, { type: i2.SelectComponent, selector: "v-select", inputs: ["items", "defaultSelection", "clearable", "disabled", "multiple", "margin", "widthInPx", "notFoundText", "clearAllText", "name", "title", "titleTranslationKey", "clearSelectionSubject$"], outputs: ["selectedChange", "clear"] }], pipes: { "async": i3.AsyncPipe, "pluginTranslate": PluginTranslatePipe } });
611
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.9", ngImport: i0, type: SetBesluitConfigurationComponent, decorators: [{
805
+ GenerateDocumentConfigurationComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: GenerateDocumentConfigurationComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
806
+ GenerateDocumentConfigurationComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: GenerateDocumentConfigurationComponent, selector: "valtimo-generate-document-configuration", inputs: { save$: "save$", disabled$: "disabled$", pluginId: "pluginId", prefillConfiguration$: "prefillConfiguration$" }, 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<v-paragraph [margin]=\"true\" [italic]=\"true\">\n {{ 'generateDocumentWarning' | pluginTranslate: pluginId | async }}\n</v-paragraph>\n<v-form\n (valueChange)=\"formValueChange($event)\"\n *ngIf=\"{\n disabled: disabled$ | async,\n prefill: prefillConfiguration$ ? (prefillConfiguration$ | async) : null\n } as obs\"\n>\n <v-input\n name=\"templateGroup\"\n [title]=\"'templateGroup' | pluginTranslate: pluginId | async\"\n [margin]=\"true\"\n [defaultValue]=\"obs.prefill?.templateGroup\"\n [disabled]=\"obs.disabled\"\n [required]=\"true\"\n >\n </v-input>\n <v-input\n name=\"templateName\"\n [title]=\"'templateName' | pluginTranslate: pluginId | async\"\n [margin]=\"true\"\n [defaultValue]=\"obs.prefill?.templateName\"\n [disabled]=\"obs.disabled\"\n [required]=\"true\"\n >\n </v-input>\n <v-input\n name=\"resultingDocumentProcessVariableName\"\n [title]=\"'resultingDocumentProcessVariableName' | pluginTranslate: pluginId | async\"\n [margin]=\"true\"\n [defaultValue]=\"obs.prefill?.resultingDocumentProcessVariableName\"\n [disabled]=\"obs.disabled\"\n [tooltip]=\"'resultingDocumentProcessVariableNameTooltip' | pluginTranslate: pluginId | async\"\n [required]=\"true\"\n >\n </v-input>\n <v-select\n [items]=\"FORMAT_SELECT_ITEMS\"\n [margin]=\"true\"\n [widthInPx]=\"150\"\n name=\"format\"\n [title]=\"'format' | pluginTranslate: pluginId | async\"\n [disabled]=\"obs.disabled\"\n [defaultSelectionId]=\"obs.prefill?.format\"\n [required]=\"true\"\n ></v-select>\n <v-multi-input\n name=\"templateData\"\n [title]=\"'templateData' | pluginTranslate: pluginId | async\"\n type=\"keyValue\"\n [disabled]=\"obs.disabled\"\n [defaultValues]=\"obs.prefill?.templateData\"\n [margin]=\"true\"\n [required]=\"true\"\n ></v-multi-input>\n</v-form>\n", styles: [""], components: [{ type: i3$1.ParagraphComponent, selector: "v-paragraph", inputs: ["center", "fullWidth", "margin", "italic", "loading"] }, { type: i3$1.FormComponent, selector: "v-form", outputs: ["valueChange"] }, { type: i3$1.InputComponent, selector: "v-input", inputs: ["name", "type", "title", "titleTranslationKey", "defaultValue", "widthPx", "fullWidth", "margin", "disabled", "step", "min", "maxLength", "tooltip", "required", "hideNumberSpinBox", "digitOnly"], outputs: ["valueChange"] }, { type: i3$1.SelectComponent, selector: "v-select", inputs: ["items", "defaultSelection", "defaultSelectionId", "clearable", "disabled", "multiple", "margin", "widthInPx", "notFoundText", "clearAllText", "name", "title", "titleTranslationKey", "clearSelectionSubject$", "tooltip", "required"], outputs: ["selectedChange", "clear"] }, { type: i3$1.MultiInputComponent, selector: "v-multi-input", inputs: ["name", "title", "titleTranslationKey", "type", "initialAmountOfRows", "minimumAmountOfRows", "maxRows", "addRowText", "addRowTranslationKey", "deleteRowText", "deleteRowTranslationKey", "disabled", "defaultValues", "margin", "tooltip", "required"], outputs: ["valueChange"] }], directives: [{ type: i4$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], pipes: { "async": i4$1.AsyncPipe, "pluginTranslate": PluginTranslatePipe } });
807
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: GenerateDocumentConfigurationComponent, decorators: [{
612
808
  type: Component,
613
- args: [{ selector: 'valtimo-set-besluit-configuration', 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-select-zaak-type\n [pluginId]=\"pluginId\"\n [disabled]=\"disabled\"\n (zaakTypeSelected)=\"selectZaakType($event)\"\n></valtimo-select-zaak-type>\n<v-select\n [items]=\"besluitSelectItems\"\n [margin]=\"true\"\n [widthInPx]=\"350\"\n [title]=\"'besluit' | pluginTranslate: pluginId | async\"\n [disabled]=\"(selectedZaakType$ | async) === null || disabled\"\n [clearSelectionSubject$]=\"clearSubject$\"\n (selectedChange)=\"selectBesluit($event)\"\n></v-select>\n", styles: [""] }]
614
- }], propDecorators: { clear$: [{
615
- type: Input
616
- }], save$: [{
617
- type: Input
618
- }], disabled: [{
809
+ args: [{ selector: 'valtimo-generate-document-configuration', 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-paragraph [margin]=\"true\" [italic]=\"true\">\n {{ 'generateDocumentWarning' | pluginTranslate: pluginId | async }}\n</v-paragraph>\n<v-form\n (valueChange)=\"formValueChange($event)\"\n *ngIf=\"{\n disabled: disabled$ | async,\n prefill: prefillConfiguration$ ? (prefillConfiguration$ | async) : null\n } as obs\"\n>\n <v-input\n name=\"templateGroup\"\n [title]=\"'templateGroup' | pluginTranslate: pluginId | async\"\n [margin]=\"true\"\n [defaultValue]=\"obs.prefill?.templateGroup\"\n [disabled]=\"obs.disabled\"\n [required]=\"true\"\n >\n </v-input>\n <v-input\n name=\"templateName\"\n [title]=\"'templateName' | pluginTranslate: pluginId | async\"\n [margin]=\"true\"\n [defaultValue]=\"obs.prefill?.templateName\"\n [disabled]=\"obs.disabled\"\n [required]=\"true\"\n >\n </v-input>\n <v-input\n name=\"resultingDocumentProcessVariableName\"\n [title]=\"'resultingDocumentProcessVariableName' | pluginTranslate: pluginId | async\"\n [margin]=\"true\"\n [defaultValue]=\"obs.prefill?.resultingDocumentProcessVariableName\"\n [disabled]=\"obs.disabled\"\n [tooltip]=\"'resultingDocumentProcessVariableNameTooltip' | pluginTranslate: pluginId | async\"\n [required]=\"true\"\n >\n </v-input>\n <v-select\n [items]=\"FORMAT_SELECT_ITEMS\"\n [margin]=\"true\"\n [widthInPx]=\"150\"\n name=\"format\"\n [title]=\"'format' | pluginTranslate: pluginId | async\"\n [disabled]=\"obs.disabled\"\n [defaultSelectionId]=\"obs.prefill?.format\"\n [required]=\"true\"\n ></v-select>\n <v-multi-input\n name=\"templateData\"\n [title]=\"'templateData' | pluginTranslate: pluginId | async\"\n type=\"keyValue\"\n [disabled]=\"obs.disabled\"\n [defaultValues]=\"obs.prefill?.templateData\"\n [margin]=\"true\"\n [required]=\"true\"\n ></v-multi-input>\n</v-form>\n", styles: [""] }]
810
+ }], propDecorators: { save$: [{
619
811
  type: Input
620
- }], error: [{
812
+ }], disabled$: [{
621
813
  type: Input
622
814
  }], pluginId: [{
623
815
  type: Input
816
+ }], prefillConfiguration$: [{
817
+ type: Input
624
818
  }], valid: [{
625
819
  type: Output
626
820
  }], configuration: [{
@@ -636,78 +830,230 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.9", ngImpor
636
830
  *
637
831
  * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
638
832
  *
639
- * 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.
833
+ * Unless required by applicable law or agreed to in writing, software
834
+ * distributed under the License is distributed on an "AS IS" basis,
835
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
836
+ * See the License for the specific language governing permissions and
837
+ * limitations under the License.
640
838
  */
641
- class SetResultaatConfigurationComponent {
642
- constructor() {
643
- this.valid = new EventEmitter();
644
- this.configuration = new EventEmitter();
645
- this.selectedResultaat$ = new BehaviorSubject('');
646
- this.selectedZaakType$ = new BehaviorSubject(null);
647
- this.RESULTATEN = [
648
- 'Ingetrokken',
649
- 'Ongegrond met financ',
650
- 'Gegrond met financië',
651
- 'Informeel afgehandel',
652
- 'Niet ontvankelijk ve',
653
- 'Gegrond met invloed',
654
- 'Ongegrond',
655
- 'Afgebroken',
656
- 'Gegrond',
657
- ];
658
- this.resultaatSelectItems = this.RESULTATEN.map(resultaat => ({
659
- id: resultaat,
660
- text: resultaat,
661
- }));
662
- this.clearSubject$ = new Subject();
663
- }
664
- ngOnInit() {
665
- this.openValidSubscription();
666
- }
839
+ class SmartDocumentsPluginModule {
840
+ }
841
+ SmartDocumentsPluginModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: SmartDocumentsPluginModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
842
+ SmartDocumentsPluginModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: SmartDocumentsPluginModule, declarations: [SmartDocumentsConfigurationComponent, GenerateDocumentConfigurationComponent], imports: [CommonModule,
843
+ PluginTranslatePipeModule,
844
+ FormModule,
845
+ InputModule,
846
+ SelectModule,
847
+ MultiInputModule,
848
+ ParagraphModule], exports: [SmartDocumentsConfigurationComponent, GenerateDocumentConfigurationComponent] });
849
+ SmartDocumentsPluginModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: SmartDocumentsPluginModule, imports: [[
850
+ CommonModule,
851
+ PluginTranslatePipeModule,
852
+ FormModule,
853
+ InputModule,
854
+ SelectModule,
855
+ MultiInputModule,
856
+ ParagraphModule,
857
+ ]] });
858
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: SmartDocumentsPluginModule, decorators: [{
859
+ type: NgModule,
860
+ args: [{
861
+ declarations: [SmartDocumentsConfigurationComponent, GenerateDocumentConfigurationComponent],
862
+ imports: [
863
+ CommonModule,
864
+ PluginTranslatePipeModule,
865
+ FormModule,
866
+ InputModule,
867
+ SelectModule,
868
+ MultiInputModule,
869
+ ParagraphModule,
870
+ ],
871
+ exports: [SmartDocumentsConfigurationComponent, GenerateDocumentConfigurationComponent],
872
+ }]
873
+ }] });
874
+
875
+ /*
876
+ * Copyright 2015-2020 Ritense BV, the Netherlands.
877
+ *
878
+ * Licensed under EUPL, Version 1.2 (the "License");
879
+ * you may not use this file except in compliance with the License.
880
+ * You may obtain a copy of the License at
881
+ *
882
+ * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
883
+ *
884
+ * Unless required by applicable law or agreed to in writing, software
885
+ * distributed under the License is distributed on an "AS IS" basis,
886
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
887
+ * See the License for the specific language governing permissions and
888
+ * limitations under the License.
889
+ */
890
+ const SMART_DOCUMENTS_PLUGIN_LOGO_BASE64 = 'data:image/png;base64,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';
891
+
892
+ /*
893
+ * Copyright 2015-2020 Ritense BV, the Netherlands.
894
+ *
895
+ * Licensed under EUPL, Version 1.2 (the "License");
896
+ * you may not use this file except in compliance with the License.
897
+ * You may obtain a copy of the License at
898
+ *
899
+ * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
900
+ *
901
+ * Unless required by applicable law or agreed to in writing, software
902
+ * distributed under the License is distributed on an "AS IS" basis,
903
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
904
+ * See the License for the specific language governing permissions and
905
+ * limitations under the License.
906
+ */
907
+
908
+ /*
909
+ * Copyright 2015-2020 Ritense BV, the Netherlands.
910
+ *
911
+ * Licensed under EUPL, Version 1.2 (the "License");
912
+ * you may not use this file except in compliance with the License.
913
+ * You may obtain a copy of the License at
914
+ *
915
+ * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
916
+ *
917
+ * Unless required by applicable law or agreed to in writing, software
918
+ * distributed under the License is distributed on an "AS IS" basis,
919
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
920
+ * See the License for the specific language governing permissions and
921
+ * limitations under the License.
922
+ */
923
+ const smartDocumentsPluginSpecification = {
924
+ pluginId: 'smartdocuments',
925
+ pluginConfigurationComponent: SmartDocumentsConfigurationComponent,
926
+ pluginLogoBase64: SMART_DOCUMENTS_PLUGIN_LOGO_BASE64,
927
+ functionConfigurationComponents: {
928
+ 'generate-document': GenerateDocumentConfigurationComponent,
929
+ },
930
+ pluginTranslations: {
931
+ nl: {
932
+ title: 'SmartDocuments',
933
+ description: 'Automatiseer documenten met slimme templates.',
934
+ configurationTitle: 'Configuratienaam',
935
+ url: 'SmartDocuments URL',
936
+ username: 'Gebruikersnaam',
937
+ password: 'Wachtwoord',
938
+ 'generate-document': 'Document genereren',
939
+ templateGroup: 'Template-groep',
940
+ templateName: 'Template-naam',
941
+ format: 'Documentformaat',
942
+ templateData: 'Template-data',
943
+ resultingDocumentProcessVariableName: 'Naam procesvariabele voor opslag document',
944
+ resultingDocumentProcessVariableNameTooltip: 'De locatie van het gegenereerde document wordt opgeslagen in een procesvariabele. Deze procesvariabele kan gebruikt worden om het document te verwerken in een andere BPMN-taak.',
945
+ generateDocumentWarning: 'Deze actie genereert een tijdelijk bestand. Het verwerken hiervan moet door een andere actie worden gedaan.',
946
+ },
947
+ en: {
948
+ title: 'SmartDocuments',
949
+ description: 'Automate documents with smart templates.',
950
+ configurationTitle: 'Configuration name',
951
+ url: 'SmartDocuments URL',
952
+ username: 'Username',
953
+ password: 'Password',
954
+ 'generate-document': 'Generate document',
955
+ templateGroup: 'Template group',
956
+ templateName: 'Template name',
957
+ format: 'Document format',
958
+ templateData: 'Template data',
959
+ resultingDocumentProcessVariableName: 'Process variable name for storing document',
960
+ resultingDocumentProcessVariableNameTooltip: 'The location of the generated document is stored in a process variable. This process variable can be used to access the document in another BPMN task.',
961
+ generateDocumentWarning: 'This action generates a temporary file. It needs to be stored in a following task.',
962
+ },
963
+ de: {
964
+ title: 'SmartDocuments',
965
+ description: 'Automatisieren Sie Dokumente mit intelligenten Templates.',
966
+ configurationTitle: 'Konfigurationsname',
967
+ url: 'SmartDocuments URL',
968
+ username: 'Nutzername',
969
+ password: 'Passwort',
970
+ 'generate-document': 'Dokument generieren',
971
+ templateGroup: 'Templategruppe',
972
+ templateName: 'Templatename',
973
+ format: 'Dokumentformat',
974
+ templateData: 'Templatedaten',
975
+ resultingDocumentProcessVariableName: 'Prozessvariablenname zum Speichern des Dokuments',
976
+ resultingDocumentProcessVariableNameTooltip: 'Der Ort des generierten Dokuments wird in einer Prozessvariablen gespeichert. Diese Prozessvariable wird verwendet, um in einer anderen BPMN-Aufgabe auf das Dokument zuzugreifen.',
977
+ generateDocumentWarning: 'Diese Aktion erzeugt eine temporäre Datei. Die Verarbeitung muss durch eine andere Aktion erfolgen.',
978
+ },
979
+ },
980
+ };
981
+
982
+ /*
983
+ * Copyright 2015-2020 Ritense BV, the Netherlands.
984
+ *
985
+ * Licensed under EUPL, Version 1.2 (the "License");
986
+ * you may not use this file except in compliance with the License.
987
+ * You may obtain a copy of the License at
988
+ *
989
+ * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
990
+ *
991
+ * Unless required by applicable law or agreed to in writing, software
992
+ * distributed under the License is distributed on an "AS IS" basis,
993
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
994
+ * See the License for the specific language governing permissions and
995
+ * limitations under the License.
996
+ */
997
+ class DocumentenApiConfigurationComponent {
998
+ constructor(pluginManagementService, translateService, pluginTranslationService) {
999
+ this.pluginManagementService = pluginManagementService;
1000
+ this.translateService = translateService;
1001
+ this.pluginTranslationService = pluginTranslationService;
1002
+ this.valid = new EventEmitter();
1003
+ this.configuration = new EventEmitter();
1004
+ this.formValue$ = new BehaviorSubject(null);
1005
+ this.valid$ = new BehaviorSubject(false);
1006
+ this.authenticationPluginSelectItems$ = combineLatest([
1007
+ this.pluginManagementService.getPluginConfigurationsByCategory('documenten-api-authentication'),
1008
+ this.translateService.stream('key'),
1009
+ ]).pipe(map$1(([configurations]) => configurations.map(configuration => ({
1010
+ id: configuration.id,
1011
+ text: `${configuration.title} - ${this.pluginTranslationService.instant('title', configuration.pluginDefinition.key)}`,
1012
+ }))));
1013
+ }
1014
+ ngOnInit() {
1015
+ this.openSaveSubscription();
1016
+ }
667
1017
  ngOnDestroy() {
668
- this.validSubscription?.unsubscribe();
669
- }
670
- selectZaakType(zaakType) {
671
- this.selectedZaakType$.next(zaakType);
672
- if (!zaakType) {
673
- this.clearResultaat();
674
- }
675
- }
676
- clearResultaat() {
677
- this.selectedResultaat$.next('');
678
- this.clearSubject$.next(null);
679
- }
680
- selectResultaat(resultaat) {
681
- this.selectedResultaat$.next(resultaat);
682
- }
683
- openValidSubscription() {
684
- this.validSubscription = combineLatest([this.selectedResultaat$, this.selectedZaakType$])
685
- .pipe(tap(([resultaat, zaakType]) => {
686
- if (resultaat && zaakType) {
687
- this.valid.emit(true);
688
- }
689
- else {
690
- this.valid.emit(false);
691
- }
692
- }))
693
- .subscribe();
1018
+ this.saveSubscription?.unsubscribe();
1019
+ }
1020
+ formValueChange(formValue) {
1021
+ this.formValue$.next(formValue);
1022
+ this.handleValid(formValue);
1023
+ }
1024
+ handleValid(formValue) {
1025
+ const valid = !!(formValue.configurationTitle &&
1026
+ formValue.url &&
1027
+ formValue.bronorganisatie &&
1028
+ formValue.authenticationPluginConfiguration);
1029
+ this.valid$.next(valid);
1030
+ this.valid.emit(valid);
1031
+ }
1032
+ openSaveSubscription() {
1033
+ this.saveSubscription = this.save$?.subscribe(save => {
1034
+ combineLatest([this.formValue$, this.valid$])
1035
+ .pipe(take(1))
1036
+ .subscribe(([formValue, valid]) => {
1037
+ if (valid) {
1038
+ this.configuration.emit(formValue);
1039
+ }
1040
+ });
1041
+ });
694
1042
  }
695
1043
  }
696
- SetResultaatConfigurationComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.9", ngImport: i0, type: SetResultaatConfigurationComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
697
- SetResultaatConfigurationComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.9", type: SetResultaatConfigurationComponent, selector: "valtimo-set-resultaat-configuration", inputs: { clear$: "clear$", save$: "save$", disabled: "disabled", error: "error", pluginId: "pluginId" }, 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-select-zaak-type\n [pluginId]=\"pluginId\"\n [disabled]=\"disabled\"\n (zaakTypeSelected)=\"selectZaakType($event)\"\n></valtimo-select-zaak-type>\n<v-select\n [items]=\"resultaatSelectItems\"\n [margin]=\"true\"\n [widthInPx]=\"350\"\n [title]=\"'zaakResultaat' | pluginTranslate: pluginId | async\"\n [disabled]=\"(selectedZaakType$ | async) === null || disabled\"\n [clearSelectionSubject$]=\"clearSubject$\"\n (selectedChange)=\"selectResultaat($event)\"\n></v-select>\n", styles: [""], components: [{ type: SelectZaakTypeComponent, selector: "valtimo-select-zaak-type", inputs: ["pluginId", "disabled"], outputs: ["zaakTypeSelected"] }, { type: i2.SelectComponent, selector: "v-select", inputs: ["items", "defaultSelection", "clearable", "disabled", "multiple", "margin", "widthInPx", "notFoundText", "clearAllText", "name", "title", "titleTranslationKey", "clearSelectionSubject$"], outputs: ["selectedChange", "clear"] }], pipes: { "async": i3.AsyncPipe, "pluginTranslate": PluginTranslatePipe } });
698
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.9", ngImport: i0, type: SetResultaatConfigurationComponent, decorators: [{
1044
+ DocumentenApiConfigurationComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DocumentenApiConfigurationComponent, deps: [{ token: PluginManagementService }, { token: i2.TranslateService }, { token: PluginTranslationService }], target: i0.ɵɵFactoryTarget.Component });
1045
+ DocumentenApiConfigurationComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DocumentenApiConfigurationComponent, selector: "valtimo-documenten-api-configuration", inputs: { save$: "save$", disabled$: "disabled$", pluginId: "pluginId", prefillConfiguration$: "prefillConfiguration$" }, 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<v-form\n (valueChange)=\"formValueChange($event)\"\n *ngIf=\"{\n disabled: disabled$ | async,\n prefill: prefillConfiguration$ ? (prefillConfiguration$ | async) : null\n } as obs\"\n>\n <v-input\n name=\"configurationTitle\"\n [title]=\"'configurationTitle' | pluginTranslate: pluginId | async\"\n [fullWidth]=\"true\"\n [margin]=\"true\"\n [disabled]=\"obs.disabled\"\n [defaultValue]=\"obs.prefill?.configurationTitle\"\n [required]=\"true\"\n [tooltip]=\"'configurationTitleTooltip' | pluginTranslate: pluginId | async\"\n >\n </v-input>\n <v-input\n name=\"url\"\n [title]=\"'url' | pluginTranslate: pluginId | async\"\n [fullWidth]=\"true\"\n [margin]=\"true\"\n [disabled]=\"obs.disabled\"\n [defaultValue]=\"obs.prefill?.url\"\n [required]=\"true\"\n [tooltip]=\"'urlTooltip' | pluginTranslate: pluginId | async\"\n >\n </v-input>\n <v-input\n name=\"bronorganisatie\"\n type=\"number\"\n [hideNumberSpinBox]=\"true\"\n [digitOnly]=\"true\"\n [min]=\"0\"\n [step]=\"1\"\n [title]=\"'bronorganisatie' | pluginTranslate: pluginId | async\"\n [fullWidth]=\"true\"\n [margin]=\"true\"\n [disabled]=\"obs.disabled\"\n [defaultValue]=\"obs.prefill?.bronorganisatie\"\n [required]=\"true\"\n >\n </v-input>\n <v-select\n *ngIf=\"\n authenticationPluginSelectItems$ | async as authenticationPluginSelectItems;\n else authenticationPluginConfigurationLoading\n \"\n [items]=\"authenticationPluginSelectItems\"\n [margin]=\"true\"\n [widthInPx]=\"350\"\n name=\"authenticationPluginConfiguration\"\n [title]=\"'authenticationPluginConfiguration' | pluginTranslate: pluginId | async\"\n [disabled]=\"obs.disabled\"\n [defaultSelectionId]=\"obs.prefill?.authenticationPluginConfiguration\"\n [required]=\"true\"\n ></v-select>\n</v-form>\n\n<ng-template #authenticationPluginConfigurationLoading>\n <v-select\n [items]=\"[]\"\n [margin]=\"true\"\n [widthInPx]=\"350\"\n name=\"authenticationPluginConfiguration\"\n [title]=\"'authenticationPluginConfiguration' | pluginTranslate: pluginId | async\"\n [disabled]=\"true\"\n [required]=\"true\"\n ></v-select>\n</ng-template>\n", styles: [""], components: [{ type: i3$1.FormComponent, selector: "v-form", outputs: ["valueChange"] }, { type: i3$1.InputComponent, selector: "v-input", inputs: ["name", "type", "title", "titleTranslationKey", "defaultValue", "widthPx", "fullWidth", "margin", "disabled", "step", "min", "maxLength", "tooltip", "required", "hideNumberSpinBox", "digitOnly"], outputs: ["valueChange"] }, { type: i3$1.SelectComponent, selector: "v-select", inputs: ["items", "defaultSelection", "defaultSelectionId", "clearable", "disabled", "multiple", "margin", "widthInPx", "notFoundText", "clearAllText", "name", "title", "titleTranslationKey", "clearSelectionSubject$", "tooltip", "required"], outputs: ["selectedChange", "clear"] }], directives: [{ type: i4$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], pipes: { "async": i4$1.AsyncPipe, "pluginTranslate": PluginTranslatePipe } });
1046
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DocumentenApiConfigurationComponent, decorators: [{
699
1047
  type: Component,
700
- args: [{ selector: 'valtimo-set-resultaat-configuration', 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-select-zaak-type\n [pluginId]=\"pluginId\"\n [disabled]=\"disabled\"\n (zaakTypeSelected)=\"selectZaakType($event)\"\n></valtimo-select-zaak-type>\n<v-select\n [items]=\"resultaatSelectItems\"\n [margin]=\"true\"\n [widthInPx]=\"350\"\n [title]=\"'zaakResultaat' | pluginTranslate: pluginId | async\"\n [disabled]=\"(selectedZaakType$ | async) === null || disabled\"\n [clearSelectionSubject$]=\"clearSubject$\"\n (selectedChange)=\"selectResultaat($event)\"\n></v-select>\n", styles: [""] }]
701
- }], propDecorators: { clear$: [{
1048
+ args: [{ selector: 'valtimo-documenten-api-configuration', 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-form\n (valueChange)=\"formValueChange($event)\"\n *ngIf=\"{\n disabled: disabled$ | async,\n prefill: prefillConfiguration$ ? (prefillConfiguration$ | async) : null\n } as obs\"\n>\n <v-input\n name=\"configurationTitle\"\n [title]=\"'configurationTitle' | pluginTranslate: pluginId | async\"\n [fullWidth]=\"true\"\n [margin]=\"true\"\n [disabled]=\"obs.disabled\"\n [defaultValue]=\"obs.prefill?.configurationTitle\"\n [required]=\"true\"\n [tooltip]=\"'configurationTitleTooltip' | pluginTranslate: pluginId | async\"\n >\n </v-input>\n <v-input\n name=\"url\"\n [title]=\"'url' | pluginTranslate: pluginId | async\"\n [fullWidth]=\"true\"\n [margin]=\"true\"\n [disabled]=\"obs.disabled\"\n [defaultValue]=\"obs.prefill?.url\"\n [required]=\"true\"\n [tooltip]=\"'urlTooltip' | pluginTranslate: pluginId | async\"\n >\n </v-input>\n <v-input\n name=\"bronorganisatie\"\n type=\"number\"\n [hideNumberSpinBox]=\"true\"\n [digitOnly]=\"true\"\n [min]=\"0\"\n [step]=\"1\"\n [title]=\"'bronorganisatie' | pluginTranslate: pluginId | async\"\n [fullWidth]=\"true\"\n [margin]=\"true\"\n [disabled]=\"obs.disabled\"\n [defaultValue]=\"obs.prefill?.bronorganisatie\"\n [required]=\"true\"\n >\n </v-input>\n <v-select\n *ngIf=\"\n authenticationPluginSelectItems$ | async as authenticationPluginSelectItems;\n else authenticationPluginConfigurationLoading\n \"\n [items]=\"authenticationPluginSelectItems\"\n [margin]=\"true\"\n [widthInPx]=\"350\"\n name=\"authenticationPluginConfiguration\"\n [title]=\"'authenticationPluginConfiguration' | pluginTranslate: pluginId | async\"\n [disabled]=\"obs.disabled\"\n [defaultSelectionId]=\"obs.prefill?.authenticationPluginConfiguration\"\n [required]=\"true\"\n ></v-select>\n</v-form>\n\n<ng-template #authenticationPluginConfigurationLoading>\n <v-select\n [items]=\"[]\"\n [margin]=\"true\"\n [widthInPx]=\"350\"\n name=\"authenticationPluginConfiguration\"\n [title]=\"'authenticationPluginConfiguration' | pluginTranslate: pluginId | async\"\n [disabled]=\"true\"\n [required]=\"true\"\n ></v-select>\n</ng-template>\n", styles: [""] }]
1049
+ }], ctorParameters: function () { return [{ type: PluginManagementService }, { type: i2.TranslateService }, { type: PluginTranslationService }]; }, propDecorators: { save$: [{
702
1050
  type: Input
703
- }], save$: [{
704
- type: Input
705
- }], disabled: [{
706
- type: Input
707
- }], error: [{
1051
+ }], disabled$: [{
708
1052
  type: Input
709
1053
  }], pluginId: [{
710
1054
  type: Input
1055
+ }], prefillConfiguration$: [{
1056
+ type: Input
711
1057
  }], valid: [{
712
1058
  type: Output
713
1059
  }], configuration: [{
@@ -723,73 +1069,79 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.9", ngImpor
723
1069
  *
724
1070
  * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
725
1071
  *
726
- * 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.
1072
+ * Unless required by applicable law or agreed to in writing, software
1073
+ * distributed under the License is distributed on an "AS IS" basis,
1074
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1075
+ * See the License for the specific language governing permissions and
1076
+ * limitations under the License.
727
1077
  */
728
- class SetStatusConfigurationComponent {
729
- constructor() {
1078
+ class StoreTempDocumentConfigurationComponent {
1079
+ constructor(translateService, pluginTranslationService) {
1080
+ this.translateService = translateService;
1081
+ this.pluginTranslationService = pluginTranslationService;
730
1082
  this.valid = new EventEmitter();
731
1083
  this.configuration = new EventEmitter();
732
- this.selectedStatus = new BehaviorSubject('');
733
- this.selectedZaakType$ = new BehaviorSubject(null);
734
- this.STATUSES = [
735
- 'Geregistreerd',
736
- 'Geaccepteerd',
737
- 'In behandeling genomen',
738
- 'Afgehandeld',
1084
+ this.LANGUAGE_ITEMS = ['nld'];
1085
+ this.languageSelectItems$ = this.translateService.stream('key').pipe(map$1(() => this.LANGUAGE_ITEMS.map(item => ({
1086
+ id: item,
1087
+ text: this.pluginTranslationService.instant(item, this.pluginId),
1088
+ }))));
1089
+ this.STATUS_ITEMS = [
1090
+ 'in_bewerking',
1091
+ 'ter_vaststelling',
1092
+ 'definitief',
1093
+ 'gearchiveerd',
739
1094
  ];
740
- this.statusesSelectItems = this.STATUSES.map(status => ({
741
- id: status,
742
- text: status,
743
- }));
744
- this.clearSubject$ = new Subject();
1095
+ this.statusSelectItems$ = this.translateService.stream('key').pipe(map$1(() => this.STATUS_ITEMS.map(item => ({
1096
+ id: item,
1097
+ text: this.pluginTranslationService.instant(item, this.pluginId),
1098
+ }))));
1099
+ this.formValue$ = new BehaviorSubject(null);
1100
+ this.valid$ = new BehaviorSubject(false);
745
1101
  }
746
1102
  ngOnInit() {
747
- this.openValidSubscription();
1103
+ this.openSaveSubscription();
748
1104
  }
749
1105
  ngOnDestroy() {
750
- this.validSubscription?.unsubscribe();
751
- }
752
- selectZaakType(zaakType) {
753
- this.selectedZaakType$.next(zaakType);
754
- if (!zaakType) {
755
- this.clearStatus();
756
- }
757
- }
758
- clearStatus() {
759
- this.selectedStatus.next('');
760
- this.clearSubject$.next(null);
761
- }
762
- selectStatus(status) {
763
- this.selectedStatus.next(status);
764
- }
765
- openValidSubscription() {
766
- this.validSubscription = combineLatest([this.selectedStatus, this.selectedZaakType$])
767
- .pipe(tap(([status, zaakType]) => {
768
- if (status && zaakType) {
769
- this.valid.emit(true);
770
- }
771
- else {
772
- this.valid.emit(false);
773
- }
774
- }))
775
- .subscribe();
1106
+ this.saveSubscription?.unsubscribe();
1107
+ }
1108
+ formValueChange(formValue) {
1109
+ this.formValue$.next(formValue);
1110
+ this.handleValid(formValue);
1111
+ }
1112
+ handleValid(formValue) {
1113
+ const valid = !!(formValue.localDocumentLocation &&
1114
+ formValue.taal &&
1115
+ formValue.status &&
1116
+ formValue.informatieobjecttype);
1117
+ this.valid$.next(valid);
1118
+ this.valid.emit(valid);
1119
+ }
1120
+ openSaveSubscription() {
1121
+ this.saveSubscription = this.save$?.subscribe(save => {
1122
+ combineLatest([this.formValue$, this.valid$])
1123
+ .pipe(take(1))
1124
+ .subscribe(([formValue, valid]) => {
1125
+ if (valid) {
1126
+ this.configuration.emit(formValue);
1127
+ }
1128
+ });
1129
+ });
776
1130
  }
777
1131
  }
778
- SetStatusConfigurationComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.9", ngImport: i0, type: SetStatusConfigurationComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
779
- SetStatusConfigurationComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.9", type: SetStatusConfigurationComponent, selector: "valtimo-set-status-configuration", inputs: { clear$: "clear$", save$: "save$", disabled: "disabled", error: "error", pluginId: "pluginId" }, 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-select-zaak-type\n [pluginId]=\"pluginId\"\n [disabled]=\"disabled\"\n (zaakTypeSelected)=\"selectZaakType($event)\"\n></valtimo-select-zaak-type>\n<v-select\n [items]=\"statusesSelectItems\"\n [margin]=\"true\"\n [widthInPx]=\"350\"\n [title]=\"'zaakStatus' | pluginTranslate: pluginId | async\"\n [disabled]=\"(selectedZaakType$ | async) === null || disabled\"\n [clearSelectionSubject$]=\"clearSubject$\"\n (selectedChange)=\"selectStatus($event)\"\n></v-select>\n", styles: [""], components: [{ type: SelectZaakTypeComponent, selector: "valtimo-select-zaak-type", inputs: ["pluginId", "disabled"], outputs: ["zaakTypeSelected"] }, { type: i2.SelectComponent, selector: "v-select", inputs: ["items", "defaultSelection", "clearable", "disabled", "multiple", "margin", "widthInPx", "notFoundText", "clearAllText", "name", "title", "titleTranslationKey", "clearSelectionSubject$"], outputs: ["selectedChange", "clear"] }], pipes: { "async": i3.AsyncPipe, "pluginTranslate": PluginTranslatePipe } });
780
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.9", ngImport: i0, type: SetStatusConfigurationComponent, decorators: [{
1132
+ StoreTempDocumentConfigurationComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: StoreTempDocumentConfigurationComponent, deps: [{ token: i2.TranslateService }, { token: PluginTranslationService }], target: i0.ɵɵFactoryTarget.Component });
1133
+ StoreTempDocumentConfigurationComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: StoreTempDocumentConfigurationComponent, selector: "valtimo-store-temp-document-configuration", inputs: { save$: "save$", disabled$: "disabled$", pluginId: "pluginId", prefillConfiguration$: "prefillConfiguration$" }, 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<v-form\n (valueChange)=\"formValueChange($event)\"\n *ngIf=\"{\n disabled: disabled$ | async,\n prefill: prefillConfiguration$ ? (prefillConfiguration$ | async) : null\n } as obs\"\n>\n <v-input\n name=\"localDocumentLocation\"\n [title]=\"'localDocumentLocation' | pluginTranslate: pluginId | async\"\n [margin]=\"true\"\n [defaultValue]=\"obs.prefill?.localDocumentLocation\"\n [disabled]=\"obs.disabled\"\n [required]=\"true\"\n >\n </v-input>\n <v-input\n name=\"storedDocumentUrl\"\n [title]=\"'storedDocumentUrl' | pluginTranslate: pluginId | async\"\n [margin]=\"true\"\n [defaultValue]=\"obs.prefill?.storedDocumentUrl\"\n [disabled]=\"obs.disabled\"\n [tooltip]=\"'storeDocumentUrlTooltip' | pluginTranslate: pluginId | async\"\n >\n </v-input>\n <v-select\n [items]=\"languageSelectItems$ | async\"\n [margin]=\"true\"\n [widthInPx]=\"200\"\n name=\"taal\"\n [title]=\"'taal' | pluginTranslate: pluginId | async\"\n [disabled]=\"obs.disabled\"\n [defaultSelectionId]=\"obs.prefill?.taal || LANGUAGE_ITEMS[0]\"\n [required]=\"true\"\n ></v-select>\n <v-select\n [items]=\"statusSelectItems$ | async\"\n [margin]=\"true\"\n [widthInPx]=\"200\"\n name=\"status\"\n [title]=\"'status' | pluginTranslate: pluginId | async\"\n [disabled]=\"obs.disabled\"\n [defaultSelectionId]=\"obs.prefill?.status || STATUS_ITEMS[2]\"\n [required]=\"true\"\n ></v-select>\n <v-input\n name=\"informatieobjecttype\"\n [title]=\"'informatieobjecttype' | pluginTranslate: pluginId | async\"\n [margin]=\"true\"\n [defaultValue]=\"obs.prefill?.informatieobjecttype\"\n [disabled]=\"obs.disabled\"\n [required]=\"true\"\n [tooltip]=\"'informatieobjecttypeTooltip' | pluginTranslate: pluginId | async\"\n >\n </v-input>\n</v-form>\n", styles: [""], components: [{ type: i3$1.FormComponent, selector: "v-form", outputs: ["valueChange"] }, { type: i3$1.InputComponent, selector: "v-input", inputs: ["name", "type", "title", "titleTranslationKey", "defaultValue", "widthPx", "fullWidth", "margin", "disabled", "step", "min", "maxLength", "tooltip", "required", "hideNumberSpinBox", "digitOnly"], outputs: ["valueChange"] }, { type: i3$1.SelectComponent, selector: "v-select", inputs: ["items", "defaultSelection", "defaultSelectionId", "clearable", "disabled", "multiple", "margin", "widthInPx", "notFoundText", "clearAllText", "name", "title", "titleTranslationKey", "clearSelectionSubject$", "tooltip", "required"], outputs: ["selectedChange", "clear"] }], directives: [{ type: i4$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], pipes: { "async": i4$1.AsyncPipe, "pluginTranslate": PluginTranslatePipe } });
1134
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: StoreTempDocumentConfigurationComponent, decorators: [{
781
1135
  type: Component,
782
- args: [{ selector: 'valtimo-set-status-configuration', 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-select-zaak-type\n [pluginId]=\"pluginId\"\n [disabled]=\"disabled\"\n (zaakTypeSelected)=\"selectZaakType($event)\"\n></valtimo-select-zaak-type>\n<v-select\n [items]=\"statusesSelectItems\"\n [margin]=\"true\"\n [widthInPx]=\"350\"\n [title]=\"'zaakStatus' | pluginTranslate: pluginId | async\"\n [disabled]=\"(selectedZaakType$ | async) === null || disabled\"\n [clearSelectionSubject$]=\"clearSubject$\"\n (selectedChange)=\"selectStatus($event)\"\n></v-select>\n", styles: [""] }]
783
- }], propDecorators: { clear$: [{
784
- type: Input
785
- }], save$: [{
1136
+ args: [{ selector: 'valtimo-store-temp-document-configuration', 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-form\n (valueChange)=\"formValueChange($event)\"\n *ngIf=\"{\n disabled: disabled$ | async,\n prefill: prefillConfiguration$ ? (prefillConfiguration$ | async) : null\n } as obs\"\n>\n <v-input\n name=\"localDocumentLocation\"\n [title]=\"'localDocumentLocation' | pluginTranslate: pluginId | async\"\n [margin]=\"true\"\n [defaultValue]=\"obs.prefill?.localDocumentLocation\"\n [disabled]=\"obs.disabled\"\n [required]=\"true\"\n >\n </v-input>\n <v-input\n name=\"storedDocumentUrl\"\n [title]=\"'storedDocumentUrl' | pluginTranslate: pluginId | async\"\n [margin]=\"true\"\n [defaultValue]=\"obs.prefill?.storedDocumentUrl\"\n [disabled]=\"obs.disabled\"\n [tooltip]=\"'storeDocumentUrlTooltip' | pluginTranslate: pluginId | async\"\n >\n </v-input>\n <v-select\n [items]=\"languageSelectItems$ | async\"\n [margin]=\"true\"\n [widthInPx]=\"200\"\n name=\"taal\"\n [title]=\"'taal' | pluginTranslate: pluginId | async\"\n [disabled]=\"obs.disabled\"\n [defaultSelectionId]=\"obs.prefill?.taal || LANGUAGE_ITEMS[0]\"\n [required]=\"true\"\n ></v-select>\n <v-select\n [items]=\"statusSelectItems$ | async\"\n [margin]=\"true\"\n [widthInPx]=\"200\"\n name=\"status\"\n [title]=\"'status' | pluginTranslate: pluginId | async\"\n [disabled]=\"obs.disabled\"\n [defaultSelectionId]=\"obs.prefill?.status || STATUS_ITEMS[2]\"\n [required]=\"true\"\n ></v-select>\n <v-input\n name=\"informatieobjecttype\"\n [title]=\"'informatieobjecttype' | pluginTranslate: pluginId | async\"\n [margin]=\"true\"\n [defaultValue]=\"obs.prefill?.informatieobjecttype\"\n [disabled]=\"obs.disabled\"\n [required]=\"true\"\n [tooltip]=\"'informatieobjecttypeTooltip' | pluginTranslate: pluginId | async\"\n >\n </v-input>\n</v-form>\n", styles: [""] }]
1137
+ }], ctorParameters: function () { return [{ type: i2.TranslateService }, { type: PluginTranslationService }]; }, propDecorators: { save$: [{
786
1138
  type: Input
787
- }], disabled: [{
788
- type: Input
789
- }], error: [{
1139
+ }], disabled$: [{
790
1140
  type: Input
791
1141
  }], pluginId: [{
792
1142
  type: Input
1143
+ }], prefillConfiguration$: [{
1144
+ type: Input
793
1145
  }], valid: [{
794
1146
  type: Output
795
1147
  }], configuration: [{
@@ -811,66 +1163,17 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.9", ngImpor
811
1163
  * See the License for the specific language governing permissions and
812
1164
  * limitations under the License.
813
1165
  */
814
- class OpenZaakPluginModule {
1166
+ class DocumentenApiPluginModule {
815
1167
  }
816
- OpenZaakPluginModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.9", ngImport: i0, type: OpenZaakPluginModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
817
- OpenZaakPluginModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.9", ngImport: i0, type: OpenZaakPluginModule, declarations: [OpenZaakConfigurationComponent,
818
- CreateZaakConfigurationComponent,
819
- SetBesluitConfigurationComponent,
820
- SetResultaatConfigurationComponent,
821
- SetStatusConfigurationComponent,
822
- SelectZaakTypeComponent], imports: [CommonModule,
823
- TitleModule,
824
- FormModule,
825
- InputModule,
826
- PluginTranslatePipeModule,
827
- SelectModule,
828
- InputLabelModule,
829
- ParagraphModule], exports: [OpenZaakConfigurationComponent,
830
- CreateZaakConfigurationComponent,
831
- SetBesluitConfigurationComponent,
832
- SetResultaatConfigurationComponent,
833
- SetStatusConfigurationComponent,
834
- SelectZaakTypeComponent] });
835
- OpenZaakPluginModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.9", ngImport: i0, type: OpenZaakPluginModule, imports: [[
836
- CommonModule,
837
- TitleModule,
838
- FormModule,
839
- InputModule,
840
- PluginTranslatePipeModule,
841
- SelectModule,
842
- InputLabelModule,
843
- ParagraphModule,
844
- ]] });
845
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.9", ngImport: i0, type: OpenZaakPluginModule, decorators: [{
1168
+ DocumentenApiPluginModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DocumentenApiPluginModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
1169
+ DocumentenApiPluginModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DocumentenApiPluginModule, declarations: [DocumentenApiConfigurationComponent, StoreTempDocumentConfigurationComponent], imports: [CommonModule, PluginTranslatePipeModule, FormModule, InputModule, SelectModule], exports: [DocumentenApiConfigurationComponent, StoreTempDocumentConfigurationComponent] });
1170
+ DocumentenApiPluginModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DocumentenApiPluginModule, imports: [[CommonModule, PluginTranslatePipeModule, FormModule, InputModule, SelectModule]] });
1171
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DocumentenApiPluginModule, decorators: [{
846
1172
  type: NgModule,
847
1173
  args: [{
848
- declarations: [
849
- OpenZaakConfigurationComponent,
850
- CreateZaakConfigurationComponent,
851
- SetBesluitConfigurationComponent,
852
- SetResultaatConfigurationComponent,
853
- SetStatusConfigurationComponent,
854
- SelectZaakTypeComponent,
855
- ],
856
- imports: [
857
- CommonModule,
858
- TitleModule,
859
- FormModule,
860
- InputModule,
861
- PluginTranslatePipeModule,
862
- SelectModule,
863
- InputLabelModule,
864
- ParagraphModule,
865
- ],
866
- exports: [
867
- OpenZaakConfigurationComponent,
868
- CreateZaakConfigurationComponent,
869
- SetBesluitConfigurationComponent,
870
- SetResultaatConfigurationComponent,
871
- SetStatusConfigurationComponent,
872
- SelectZaakTypeComponent,
873
- ],
1174
+ declarations: [DocumentenApiConfigurationComponent, StoreTempDocumentConfigurationComponent],
1175
+ imports: [CommonModule, PluginTranslatePipeModule, FormModule, InputModule, SelectModule],
1176
+ exports: [DocumentenApiConfigurationComponent, StoreTempDocumentConfigurationComponent],
874
1177
  }]
875
1178
  }] });
876
1179
 
@@ -883,9 +1186,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.9", ngImpor
883
1186
  *
884
1187
  * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
885
1188
  *
886
- * 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.
1189
+ * Unless required by applicable law or agreed to in writing, software
1190
+ * distributed under the License is distributed on an "AS IS" basis,
1191
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1192
+ * See the License for the specific language governing permissions and
1193
+ * limitations under the License.
887
1194
  */
888
- const OPEN_ZAAK_PLUGIN_LOGO_BASE64 = 'data:image/png;base64,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';
1195
+ const DOCUMENTEN_API_PLUGIN_LOGO_BASE64 = 'data:image/png;base64,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';
889
1196
 
890
1197
  /*
891
1198
  * Copyright 2015-2020 Ritense BV, the Netherlands.
@@ -896,7 +1203,11 @@ const OPEN_ZAAK_PLUGIN_LOGO_BASE64 = 'data:image/png;base64,iVBORw0KGgoAAAANSUhE
896
1203
  *
897
1204
  * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
898
1205
  *
899
- * 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.
1206
+ * Unless required by applicable law or agreed to in writing, software
1207
+ * distributed under the License is distributed on an "AS IS" basis,
1208
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1209
+ * See the License for the specific language governing permissions and
1210
+ * limitations under the License.
900
1211
  */
901
1212
 
902
1213
  /*
@@ -908,84 +1219,88 @@ const OPEN_ZAAK_PLUGIN_LOGO_BASE64 = 'data:image/png;base64,iVBORw0KGgoAAAANSUhE
908
1219
  *
909
1220
  * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
910
1221
  *
911
- * 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.
1222
+ * Unless required by applicable law or agreed to in writing, software
1223
+ * distributed under the License is distributed on an "AS IS" basis,
1224
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1225
+ * See the License for the specific language governing permissions and
1226
+ * limitations under the License.
912
1227
  */
913
- const openZaakPluginSpecification = {
914
- pluginId: 'openzaak',
915
- pluginConfigurationComponent: OpenZaakConfigurationComponent,
916
- pluginLogoBase64: OPEN_ZAAK_PLUGIN_LOGO_BASE64,
1228
+ const documentenApiPluginSpecification = {
1229
+ pluginId: 'documentenapi',
1230
+ pluginConfigurationComponent: DocumentenApiConfigurationComponent,
1231
+ pluginLogoBase64: DOCUMENTEN_API_PLUGIN_LOGO_BASE64,
917
1232
  functionConfigurationComponents: {
918
- 'create-zaak': CreateZaakConfigurationComponent,
919
- 'set-status': SetStatusConfigurationComponent,
920
- 'set-resultaat': SetResultaatConfigurationComponent,
921
- 'set-besluit': SetBesluitConfigurationComponent,
1233
+ 'store-temp-document': StoreTempDocumentConfigurationComponent,
922
1234
  },
923
1235
  pluginTranslations: {
924
1236
  nl: {
925
- title: 'OpenZaak',
926
- description: 'OpenZaak is een productiewaardig API platform die de API-standaard voor zaakgericht werken implementeert (de ZGW-API’s).',
927
- 'create-zaak': 'Zaak aanmaken',
928
- 'set-status': 'Status instellen',
929
- 'set-resultaat': 'Resultaat instellen',
930
- 'set-besluit': 'Besluit instellen',
931
- name: 'Configuratienaam',
932
- url: 'OpenZaak URL',
933
- clientId: 'Client ID',
934
- secret: 'Secret',
935
- rsin: 'Rsin',
936
- catalogusUrl: 'Catalogus URL',
937
- zaakType: 'Zaaktype',
938
- zaakStatus: 'Zaakstatus',
939
- zaakResultaat: 'Resultaat',
940
- besluit: 'Besluit',
941
- documentDefinition: 'Documentdefinitie',
942
- noZaakTypeSelected: 'Geen zaaktype geselecteerd',
943
- noZaakTypeLinksFound: "Geen gelinkte zaaktype's gevonden",
944
- noProcessDefinition: 'Er is geen procesdefinitie geselecteerd',
1237
+ title: 'Documenten API',
1238
+ description: 'API voor opslag en ontsluiting van documenten en daarbij behorende metadata.',
1239
+ 'store-temp-document': 'Document opslaan',
1240
+ configurationTitle: 'Configuratienaam',
1241
+ configurationTitleTooltip: 'Hier kunt u een eigen naam verzinnen. Onder deze naam zal de plugin te herkennen zijn in de rest van de applicatie',
1242
+ url: 'Documenten API URL',
1243
+ urlTooltip: 'In dit veld moet de verwijzing komen naar de REST API van Documenten. Deze url moet dus eindigen op /documenten/api/v1/',
1244
+ bronorganisatie: 'Bronorganisatie RSIN',
1245
+ localDocumentLocation: 'Naam procesvariabele met document',
1246
+ storedDocumentUrl: 'Naam procesvariabele voor opslag document-URL',
1247
+ storeDocumentUrlTooltip: 'Nadat het document geupload is naar de Documenten API zal de applicatie in deze procesvariabele de URL naar het document opslaan.',
1248
+ taal: 'Taal',
1249
+ status: 'Status',
1250
+ informatieobjecttype: 'URL naar het informatieobjecttype',
1251
+ informatieobjecttypeTooltip: 'Vul in dit veld de volledige URL naar een informatieobjecttype van een Zaak catalogus. Deze URL moet dus eindigen op /catalogi/api/v1/informatieobjecttypen/{uuid}',
1252
+ nld: 'Nederlands',
1253
+ in_bewerking: 'In bewerking',
1254
+ ter_vaststelling: 'Ter vaststelling',
1255
+ definitief: 'Definitief',
1256
+ gearchiveerd: 'Gearchiveerd',
1257
+ authenticationPluginConfiguration: 'Configuratie authenticatie-plug-in',
945
1258
  },
946
1259
  en: {
947
- title: 'OpenZaak',
948
- description: 'OpenZaak is a production-worthy API platform that implements the API standard for case-oriented working (the ZGW APIs).',
949
- 'create-zaak': 'Create zaak',
950
- 'set-status': 'Set status',
951
- 'set-resultaat': 'Set result',
952
- 'set-besluit': 'Set besluit',
953
- name: 'Configuration name',
954
- url: 'OpenZaak URL',
955
- clientId: 'Client ID',
956
- secret: 'Secret',
957
- rsin: 'Rsin',
958
- catalogusUrl: 'Catalog URL',
959
- zaakType: 'Zaaktype',
960
- zaakStatus: 'Zaakstatus',
961
- zaakResultaat: 'Result',
962
- besluit: 'Besluit',
963
- documentDefinition: 'Document definition',
964
- noZaakTypeSelected: 'No zaaktype selected',
965
- noZaakTypeLinksFound: 'No linked zaaktypes found',
966
- noProcessDefinition: 'No process definition is selected',
1260
+ title: 'Documenten API',
1261
+ description: 'API for storing and accessing documents and associated metadata.',
1262
+ 'store-temp-document': 'Save document',
1263
+ configurationTitle: 'Configuration name',
1264
+ configurationTitleTooltip: 'Here you can enter a name for the plugin. This name will be used to recognize the plugin throughout the rest of the application',
1265
+ url: 'Documenten API URL',
1266
+ urlTooltip: 'This field must contain the URL to the rest API of Documenten, therefore this URL should end with /documenten/api/v1/',
1267
+ bronorganisatie: 'Organisation RSIN',
1268
+ localDocumentLocation: 'Name of process variable with document',
1269
+ storedDocumentUrl: 'Process variable name for storing document URL',
1270
+ storeDocumentUrlTooltip: 'After the document has been uploaded to the Documenten API, the application will store the URL to the document in this process variable.',
1271
+ taal: 'Language',
1272
+ status: 'Status',
1273
+ informatieobjecttype: 'URL to the informationobjecttype',
1274
+ informatieobjecttypeTooltip: 'Enter the full URL to an information object type of a Zaak catalog in this field. So this URL must end with /catalogi/api/v1/informatieobjecttypen/{uuid}',
1275
+ nld: 'Dutch',
1276
+ in_bewerking: 'Editing',
1277
+ ter_vaststelling: 'To be confirmed',
1278
+ definitief: 'Final',
1279
+ gearchiveerd: 'Archived',
1280
+ authenticationPluginConfiguration: 'Authentication plugin configuration',
967
1281
  },
968
1282
  de: {
969
- title: 'OpenZaak',
970
- description: 'OpenZaak ist eine produktionstaugliche API-Plattform, die den API-Standard für fallorientiertes Arbeiten (die ZGW-APIs) implementiert.',
971
- 'create-zaak': 'Zaak erstellen',
972
- 'set-status': 'Status festlegen',
973
- 'set-resultaat': 'Ergebnis einstellen',
974
- 'set-besluit': 'Besluit setzen',
975
- name: 'Konfigurationsname',
976
- url: 'OpenZaak URL',
977
- clientId: 'Client ID',
978
- secret: 'Secret',
979
- rsin: 'Rsin',
980
- catalogusUrl: 'Katalog URL',
981
- zaakType: 'Zaaktype',
982
- zaakStatus: 'Zaakstatus',
983
- zaakResultaat: 'Resultat',
984
- besluit: 'Besluit',
985
- documentDefinition: 'Dokumentendefinition',
986
- noZaakTypeSelected: 'Kein Zaaktype ausgewählt',
987
- noZaakTypeLinksFound: 'Keine verknüpften Zaaktypen gefunden',
988
- noProcessDefinition: 'Es ist keine Prozessdefinition ausgewählt',
1283
+ title: 'Documenten API',
1284
+ description: 'API zum Speichern und Zugreifen auf Dokumente und zugehörige Metadaten.',
1285
+ 'store-temp-document': 'Dokument speichern',
1286
+ configurationTitle: 'Konfigurationsname',
1287
+ configurationTitleTooltip: 'Hier können Sie einen Namen für das Plugin eingeben. Dieser Name wird verwendet, um das Plugin im Rest der Anwendung zu erkennen',
1288
+ url: 'Documenten API URL',
1289
+ urlTooltip: 'Dieses Feld muss die URL zur rest API von Documenten enthalten, daher sollte diese URL mit enden /documenten/api/v1/',
1290
+ bronorganisatie: 'Organisation RSIN',
1291
+ localDocumentLocation: 'Name Prozessvariable mit Dokument',
1292
+ storedDocumentUrl: 'Name der Prozessvariablen zum Speichern der Dokument-URL',
1293
+ storeDocumentUrlTooltip: 'Nachdem das Dokument in die Dokumenten-API hochgeladen wurde, speichert die Anwendung die URL zum Dokument in dieser Prozessvariablen.',
1294
+ taal: 'Sprache',
1295
+ status: 'Status',
1296
+ informatieobjecttype: 'URL zum Informationsobjekttyp',
1297
+ informatieobjecttypeTooltip: 'Geben Sie in diesem Feld die vollständige URL zu einem Informationsobjekttyp eines Case Katalogs. Diese URL muss daher mit enden /catalogi/api/v1/informatieobjecttypen/{uuid}',
1298
+ nld: 'Niederländisch',
1299
+ in_bewerking: 'In Bearbeitung',
1300
+ ter_vaststelling: 'Zu bestimmen',
1301
+ definitief: 'Endgültig',
1302
+ gearchiveerd: 'Archiviert',
1303
+ authenticationPluginConfiguration: 'Authentifizierungs-Plugin-Konfiguration',
989
1304
  },
990
1305
  },
991
1306
  };
@@ -999,37 +1314,71 @@ const openZaakPluginSpecification = {
999
1314
  *
1000
1315
  * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
1001
1316
  *
1002
- * 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.
1317
+ * Unless required by applicable law or agreed to in writing, software
1318
+ * distributed under the License is distributed on an "AS IS" basis,
1319
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1320
+ * See the License for the specific language governing permissions and
1321
+ * limitations under the License.
1003
1322
  */
1004
- class SmartDocumentsConfigurationComponent {
1005
- constructor() {
1323
+ class ZakenApiConfigurationComponent {
1324
+ constructor(pluginManagementService, translateService, pluginTranslationService) {
1325
+ this.pluginManagementService = pluginManagementService;
1326
+ this.translateService = translateService;
1327
+ this.pluginTranslationService = pluginTranslationService;
1006
1328
  this.valid = new EventEmitter();
1007
1329
  this.configuration = new EventEmitter();
1330
+ this.formValue$ = new BehaviorSubject(null);
1331
+ this.valid$ = new BehaviorSubject(false);
1332
+ this.authenticationPluginSelectItems$ = combineLatest([
1333
+ this.pluginManagementService.getPluginConfigurationsByCategory('zaken-api-authentication'),
1334
+ this.translateService.stream('key'),
1335
+ ]).pipe(map$1(([configurations]) => configurations.map(configuration => ({
1336
+ id: configuration.id,
1337
+ text: `${configuration.title} - ${this.pluginTranslationService.instant('title', configuration.pluginDefinition.key)}`,
1338
+ }))));
1339
+ }
1340
+ ngOnInit() {
1341
+ this.openSaveSubscription();
1342
+ }
1343
+ ngOnDestroy() {
1344
+ this.saveSubscription?.unsubscribe();
1008
1345
  }
1009
1346
  formValueChange(formValue) {
1010
- this.configuration.emit(formValue);
1347
+ this.formValue$.next(formValue);
1011
1348
  this.handleValid(formValue);
1012
1349
  }
1013
1350
  handleValid(formValue) {
1014
- const valid = formValue.name && formValue.url && formValue.password && formValue.username;
1015
- this.valid.emit(!!valid);
1351
+ const valid = !!(formValue.configurationTitle &&
1352
+ formValue.url &&
1353
+ formValue.authenticationPluginConfiguration);
1354
+ this.valid$.next(valid);
1355
+ this.valid.emit(valid);
1356
+ }
1357
+ openSaveSubscription() {
1358
+ this.saveSubscription = this.save$?.subscribe(save => {
1359
+ combineLatest([this.formValue$, this.valid$])
1360
+ .pipe(take(1))
1361
+ .subscribe(([formValue, valid]) => {
1362
+ if (valid) {
1363
+ this.configuration.emit(formValue);
1364
+ }
1365
+ });
1366
+ });
1016
1367
  }
1017
1368
  }
1018
- SmartDocumentsConfigurationComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.9", ngImport: i0, type: SmartDocumentsConfigurationComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
1019
- SmartDocumentsConfigurationComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.9", type: SmartDocumentsConfigurationComponent, selector: "valtimo-smart-documents-configuration", inputs: { clear$: "clear$", save$: "save$", disabled: "disabled", error: "error", pluginId: "pluginId" }, 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<v-form (valueChange)=\"formValueChange($event)\">\n <v-input\n name=\"name\"\n [title]=\"'name' | pluginTranslate: pluginId | async\"\n [fullWidth]=\"true\"\n [margin]=\"true\"\n [disabled]=\"disabled\"\n >\n </v-input>\n <v-input\n name=\"url\"\n [title]=\"'url' | pluginTranslate: pluginId | async\"\n [fullWidth]=\"true\"\n [margin]=\"true\"\n [disabled]=\"disabled\"\n >\n </v-input>\n <v-input\n name=\"username\"\n [title]=\"'username' | pluginTranslate: pluginId | async\"\n [fullWidth]=\"true\"\n [margin]=\"true\"\n [disabled]=\"disabled\"\n >\n </v-input>\n <v-input\n name=\"password\"\n [title]=\"'password' | pluginTranslate: pluginId | async\"\n [fullWidth]=\"true\"\n [margin]=\"true\"\n [disabled]=\"disabled\"\n >\n </v-input>\n</v-form>\n", styles: [""], components: [{ type: i2.FormComponent, selector: "v-form", outputs: ["valueChange"] }, { type: i2.InputComponent, selector: "v-input", inputs: ["name", "type", "title", "titleTranslationKey", "defaultValue", "widthPx", "fullWidth", "margin", "disabled", "step", "min", "maxLength"], outputs: ["valueChange"] }], pipes: { "async": i3.AsyncPipe, "pluginTranslate": PluginTranslatePipe } });
1020
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.9", ngImport: i0, type: SmartDocumentsConfigurationComponent, decorators: [{
1369
+ ZakenApiConfigurationComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ZakenApiConfigurationComponent, deps: [{ token: PluginManagementService }, { token: i2.TranslateService }, { token: PluginTranslationService }], target: i0.ɵɵFactoryTarget.Component });
1370
+ ZakenApiConfigurationComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: ZakenApiConfigurationComponent, selector: "valtimo-zaken-api-configuration", inputs: { save$: "save$", disabled$: "disabled$", pluginId: "pluginId", prefillConfiguration$: "prefillConfiguration$" }, 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<v-form\n (valueChange)=\"formValueChange($event)\"\n *ngIf=\"{\n disabled: disabled$ | async,\n prefill: prefillConfiguration$ ? (prefillConfiguration$ | async) : null\n } as obs\"\n>\n <v-input\n name=\"configurationTitle\"\n [title]=\"'configurationTitle' | pluginTranslate: pluginId | async\"\n [fullWidth]=\"true\"\n [margin]=\"true\"\n [disabled]=\"obs.disabled\"\n [defaultValue]=\"obs.prefill?.configurationTitle\"\n [required]=\"true\"\n [tooltip]=\"'configurationTitleTooltip' | pluginTranslate: pluginId | async\"\n >\n </v-input>\n <v-input\n name=\"url\"\n [title]=\"'url' | pluginTranslate: pluginId | async\"\n [fullWidth]=\"true\"\n [margin]=\"true\"\n [disabled]=\"obs.disabled\"\n [defaultValue]=\"obs.prefill?.url\"\n [required]=\"true\"\n [tooltip]=\"'urlTooltip' | pluginTranslate: pluginId | async\"\n >\n </v-input>\n <v-select\n *ngIf=\"\n authenticationPluginSelectItems$ | async as authenticationPluginSelectItems;\n else authenticationPluginConfigurationLoading\n \"\n [items]=\"authenticationPluginSelectItems\"\n [margin]=\"true\"\n [widthInPx]=\"350\"\n name=\"authenticationPluginConfiguration\"\n [title]=\"'authenticationPluginConfiguration' | pluginTranslate: pluginId | async\"\n [disabled]=\"obs.disabled\"\n [defaultSelectionId]=\"obs.prefill?.authenticationPluginConfiguration\"\n [required]=\"true\"\n ></v-select>\n</v-form>\n\n<ng-template #authenticationPluginConfigurationLoading>\n <v-select\n [items]=\"[]\"\n [margin]=\"true\"\n [widthInPx]=\"350\"\n name=\"authenticationPluginConfiguration\"\n [title]=\"'authenticationPluginConfiguration' | pluginTranslate: pluginId | async\"\n [disabled]=\"true\"\n [required]=\"true\"\n ></v-select>\n</ng-template>\n", styles: [""], components: [{ type: i3$1.FormComponent, selector: "v-form", outputs: ["valueChange"] }, { type: i3$1.InputComponent, selector: "v-input", inputs: ["name", "type", "title", "titleTranslationKey", "defaultValue", "widthPx", "fullWidth", "margin", "disabled", "step", "min", "maxLength", "tooltip", "required", "hideNumberSpinBox", "digitOnly"], outputs: ["valueChange"] }, { type: i3$1.SelectComponent, selector: "v-select", inputs: ["items", "defaultSelection", "defaultSelectionId", "clearable", "disabled", "multiple", "margin", "widthInPx", "notFoundText", "clearAllText", "name", "title", "titleTranslationKey", "clearSelectionSubject$", "tooltip", "required"], outputs: ["selectedChange", "clear"] }], directives: [{ type: i4$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], pipes: { "async": i4$1.AsyncPipe, "pluginTranslate": PluginTranslatePipe } });
1371
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ZakenApiConfigurationComponent, decorators: [{
1021
1372
  type: Component,
1022
- args: [{ selector: 'valtimo-smart-documents-configuration', 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-form (valueChange)=\"formValueChange($event)\">\n <v-input\n name=\"name\"\n [title]=\"'name' | pluginTranslate: pluginId | async\"\n [fullWidth]=\"true\"\n [margin]=\"true\"\n [disabled]=\"disabled\"\n >\n </v-input>\n <v-input\n name=\"url\"\n [title]=\"'url' | pluginTranslate: pluginId | async\"\n [fullWidth]=\"true\"\n [margin]=\"true\"\n [disabled]=\"disabled\"\n >\n </v-input>\n <v-input\n name=\"username\"\n [title]=\"'username' | pluginTranslate: pluginId | async\"\n [fullWidth]=\"true\"\n [margin]=\"true\"\n [disabled]=\"disabled\"\n >\n </v-input>\n <v-input\n name=\"password\"\n [title]=\"'password' | pluginTranslate: pluginId | async\"\n [fullWidth]=\"true\"\n [margin]=\"true\"\n [disabled]=\"disabled\"\n >\n </v-input>\n</v-form>\n", styles: [""] }]
1023
- }], propDecorators: { clear$: [{
1373
+ args: [{ selector: 'valtimo-zaken-api-configuration', 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-form\n (valueChange)=\"formValueChange($event)\"\n *ngIf=\"{\n disabled: disabled$ | async,\n prefill: prefillConfiguration$ ? (prefillConfiguration$ | async) : null\n } as obs\"\n>\n <v-input\n name=\"configurationTitle\"\n [title]=\"'configurationTitle' | pluginTranslate: pluginId | async\"\n [fullWidth]=\"true\"\n [margin]=\"true\"\n [disabled]=\"obs.disabled\"\n [defaultValue]=\"obs.prefill?.configurationTitle\"\n [required]=\"true\"\n [tooltip]=\"'configurationTitleTooltip' | pluginTranslate: pluginId | async\"\n >\n </v-input>\n <v-input\n name=\"url\"\n [title]=\"'url' | pluginTranslate: pluginId | async\"\n [fullWidth]=\"true\"\n [margin]=\"true\"\n [disabled]=\"obs.disabled\"\n [defaultValue]=\"obs.prefill?.url\"\n [required]=\"true\"\n [tooltip]=\"'urlTooltip' | pluginTranslate: pluginId | async\"\n >\n </v-input>\n <v-select\n *ngIf=\"\n authenticationPluginSelectItems$ | async as authenticationPluginSelectItems;\n else authenticationPluginConfigurationLoading\n \"\n [items]=\"authenticationPluginSelectItems\"\n [margin]=\"true\"\n [widthInPx]=\"350\"\n name=\"authenticationPluginConfiguration\"\n [title]=\"'authenticationPluginConfiguration' | pluginTranslate: pluginId | async\"\n [disabled]=\"obs.disabled\"\n [defaultSelectionId]=\"obs.prefill?.authenticationPluginConfiguration\"\n [required]=\"true\"\n ></v-select>\n</v-form>\n\n<ng-template #authenticationPluginConfigurationLoading>\n <v-select\n [items]=\"[]\"\n [margin]=\"true\"\n [widthInPx]=\"350\"\n name=\"authenticationPluginConfiguration\"\n [title]=\"'authenticationPluginConfiguration' | pluginTranslate: pluginId | async\"\n [disabled]=\"true\"\n [required]=\"true\"\n ></v-select>\n</ng-template>\n", styles: [""] }]
1374
+ }], ctorParameters: function () { return [{ type: PluginManagementService }, { type: i2.TranslateService }, { type: PluginTranslationService }]; }, propDecorators: { save$: [{
1024
1375
  type: Input
1025
- }], save$: [{
1026
- type: Input
1027
- }], disabled: [{
1028
- type: Input
1029
- }], error: [{
1376
+ }], disabled$: [{
1030
1377
  type: Input
1031
1378
  }], pluginId: [{
1032
1379
  type: Input
1380
+ }], prefillConfiguration$: [{
1381
+ type: Input
1033
1382
  }], valid: [{
1034
1383
  type: Output
1035
1384
  }], configuration: [{
@@ -1045,45 +1394,69 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.9", ngImpor
1045
1394
  *
1046
1395
  * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
1047
1396
  *
1048
- * 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.
1397
+ * Unless required by applicable law or agreed to in writing, software
1398
+ * distributed under the License is distributed on an "AS IS" basis,
1399
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1400
+ * See the License for the specific language governing permissions and
1401
+ * limitations under the License.
1049
1402
  */
1050
- class GenerateDocumentConfigurationComponent {
1051
- constructor() {
1403
+ class LinkDocumentToZaakConfigurationComponent {
1404
+ constructor(pluginManagementService, translateService, pluginTranslationService) {
1405
+ this.pluginManagementService = pluginManagementService;
1406
+ this.translateService = translateService;
1407
+ this.pluginTranslationService = pluginTranslationService;
1052
1408
  this.valid = new EventEmitter();
1053
1409
  this.configuration = new EventEmitter();
1054
- this.FORMATS = ['DOCX', 'HTML', 'PDF', 'XML'];
1055
- this.FORMAT_SELECT_ITEMS = this.FORMATS.map(format => ({
1056
- id: format,
1057
- text: format,
1058
- }));
1410
+ this.formValue$ = new BehaviorSubject(null);
1411
+ this.valid$ = new BehaviorSubject(false);
1412
+ this.authenticationPluginSelectItems$ = combineLatest([
1413
+ this.pluginManagementService.getPluginConfigurationsByCategory('link-document-to-zaak'),
1414
+ this.translateService.stream('key'),
1415
+ ]).pipe(map$1(([configurations]) => configurations.map(configuration => ({
1416
+ id: configuration.id,
1417
+ text: `${configuration.title} - ${this.pluginTranslationService.instant('title', configuration.pluginDefinition.key)}`,
1418
+ }))));
1419
+ }
1420
+ ngOnInit() {
1421
+ this.openSaveSubscription();
1422
+ }
1423
+ ngOnDestroy() {
1424
+ this.saveSubscription?.unsubscribe();
1059
1425
  }
1060
1426
  formValueChange(formValue) {
1061
- this.configuration.emit(formValue);
1427
+ this.formValue$.next(formValue);
1062
1428
  this.handleValid(formValue);
1063
1429
  }
1064
1430
  handleValid(formValue) {
1065
- const valid = formValue.templateGroup &&
1066
- formValue.templateName &&
1067
- formValue.format &&
1068
- formValue.templateData.length > 0;
1069
- this.valid.emit(!!valid);
1431
+ const valid = !!formValue.documentUrl;
1432
+ this.valid$.next(valid);
1433
+ this.valid.emit(valid);
1434
+ }
1435
+ openSaveSubscription() {
1436
+ this.saveSubscription = this.save$?.subscribe(save => {
1437
+ combineLatest([this.formValue$, this.valid$])
1438
+ .pipe(take(1))
1439
+ .subscribe(([formValue, valid]) => {
1440
+ if (valid) {
1441
+ this.configuration.emit(formValue);
1442
+ }
1443
+ });
1444
+ });
1070
1445
  }
1071
1446
  }
1072
- GenerateDocumentConfigurationComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.9", ngImport: i0, type: GenerateDocumentConfigurationComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
1073
- GenerateDocumentConfigurationComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.9", type: GenerateDocumentConfigurationComponent, selector: "valtimo-generate-document-configuration", inputs: { clear$: "clear$", save$: "save$", disabled: "disabled", error: "error", pluginId: "pluginId" }, 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<v-form (valueChange)=\"formValueChange($event)\">\n <v-input\n name=\"templateGroup\"\n [title]=\"'templateGroup' | pluginTranslate: pluginId | async\"\n [fullWidth]=\"true\"\n [margin]=\"true\"\n [disabled]=\"disabled\"\n >\n </v-input>\n <v-input\n name=\"templateName\"\n [title]=\"'templateName' | pluginTranslate: pluginId | async\"\n [fullWidth]=\"true\"\n [margin]=\"true\"\n [disabled]=\"disabled\"\n >\n </v-input>\n <v-select\n [items]=\"FORMAT_SELECT_ITEMS\"\n [margin]=\"true\"\n [widthInPx]=\"150\"\n name=\"format\"\n [title]=\"'format' | pluginTranslate: pluginId | async\"\n [disabled]=\"disabled\"\n ></v-select>\n <v-multi-input\n name=\"templateData\"\n [title]=\"'templateData' | pluginTranslate: pluginId | async\"\n type=\"keyValue\"\n ></v-multi-input>\n</v-form>\n", styles: [""], components: [{ type: i2.FormComponent, selector: "v-form", outputs: ["valueChange"] }, { type: i2.InputComponent, selector: "v-input", inputs: ["name", "type", "title", "titleTranslationKey", "defaultValue", "widthPx", "fullWidth", "margin", "disabled", "step", "min", "maxLength"], outputs: ["valueChange"] }, { type: i2.SelectComponent, selector: "v-select", inputs: ["items", "defaultSelection", "clearable", "disabled", "multiple", "margin", "widthInPx", "notFoundText", "clearAllText", "name", "title", "titleTranslationKey", "clearSelectionSubject$"], outputs: ["selectedChange", "clear"] }, { type: i2.MultiInputComponent, selector: "v-multi-input", inputs: ["name", "title", "titleTranslationKey", "type", "initialAmountOfRows", "minimumAmountOfRows", "maxRows", "addRowText", "addRowTranslationKey", "deleteRowText", "deleteRowTranslationKey"], outputs: ["valueChange"] }], pipes: { "async": i3.AsyncPipe, "pluginTranslate": PluginTranslatePipe } });
1074
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.9", ngImport: i0, type: GenerateDocumentConfigurationComponent, decorators: [{
1447
+ LinkDocumentToZaakConfigurationComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: LinkDocumentToZaakConfigurationComponent, deps: [{ token: PluginManagementService }, { token: i2.TranslateService }, { token: PluginTranslationService }], target: i0.ɵɵFactoryTarget.Component });
1448
+ LinkDocumentToZaakConfigurationComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: LinkDocumentToZaakConfigurationComponent, selector: "valtimo-link-document-to-zaak-configuration", inputs: { save$: "save$", disabled$: "disabled$", pluginId: "pluginId", prefillConfiguration$: "prefillConfiguration$" }, 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<v-paragraph [margin]=\"true\" [italic]=\"true\">\n {{ 'linkDocumentInformation' | pluginTranslate: pluginId | async }}\n</v-paragraph>\n<v-form\n (valueChange)=\"formValueChange($event)\"\n *ngIf=\"{\n disabled: disabled$ | async,\n prefill: prefillConfiguration$ ? (prefillConfiguration$ | async) : null\n } as obs\"\n>\n <v-input\n name=\"documentUrl\"\n [title]=\"'documentUrl' | pluginTranslate: pluginId | async\"\n [margin]=\"true\"\n [defaultValue]=\"obs.prefill?.documentUrl\"\n [disabled]=\"obs.disabled\"\n [required]=\"true\"\n [tooltip]=\"'documentUrlTooltip' | pluginTranslate: pluginId | async\"\n >\n </v-input>\n <v-input\n name=\"titel\"\n [title]=\"'titel' | pluginTranslate: pluginId | async\"\n [margin]=\"true\"\n [defaultValue]=\"obs.prefill?.titel\"\n [disabled]=\"obs.disabled\"\n [required]=\"false\"\n [tooltip]=\"'titelTooltip' | pluginTranslate: pluginId | async\"\n >\n </v-input>\n <v-input\n name=\"beschrijving\"\n [title]=\"'beschrijving' | pluginTranslate: pluginId | async\"\n [margin]=\"true\"\n [defaultValue]=\"obs.prefill?.beschrijving\"\n [disabled]=\"obs.disabled\"\n [required]=\"false\"\n [tooltip]=\"'beschrijvingTooltip' | pluginTranslate: pluginId | async\"\n >\n </v-input>\n</v-form>\n", styles: [""], components: [{ type: i3$1.ParagraphComponent, selector: "v-paragraph", inputs: ["center", "fullWidth", "margin", "italic", "loading"] }, { type: i3$1.FormComponent, selector: "v-form", outputs: ["valueChange"] }, { type: i3$1.InputComponent, selector: "v-input", inputs: ["name", "type", "title", "titleTranslationKey", "defaultValue", "widthPx", "fullWidth", "margin", "disabled", "step", "min", "maxLength", "tooltip", "required", "hideNumberSpinBox", "digitOnly"], outputs: ["valueChange"] }], directives: [{ type: i4$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], pipes: { "async": i4$1.AsyncPipe, "pluginTranslate": PluginTranslatePipe } });
1449
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: LinkDocumentToZaakConfigurationComponent, decorators: [{
1075
1450
  type: Component,
1076
- args: [{ selector: 'valtimo-generate-document-configuration', 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-form (valueChange)=\"formValueChange($event)\">\n <v-input\n name=\"templateGroup\"\n [title]=\"'templateGroup' | pluginTranslate: pluginId | async\"\n [fullWidth]=\"true\"\n [margin]=\"true\"\n [disabled]=\"disabled\"\n >\n </v-input>\n <v-input\n name=\"templateName\"\n [title]=\"'templateName' | pluginTranslate: pluginId | async\"\n [fullWidth]=\"true\"\n [margin]=\"true\"\n [disabled]=\"disabled\"\n >\n </v-input>\n <v-select\n [items]=\"FORMAT_SELECT_ITEMS\"\n [margin]=\"true\"\n [widthInPx]=\"150\"\n name=\"format\"\n [title]=\"'format' | pluginTranslate: pluginId | async\"\n [disabled]=\"disabled\"\n ></v-select>\n <v-multi-input\n name=\"templateData\"\n [title]=\"'templateData' | pluginTranslate: pluginId | async\"\n type=\"keyValue\"\n ></v-multi-input>\n</v-form>\n", styles: [""] }]
1077
- }], propDecorators: { clear$: [{
1451
+ args: [{ selector: 'valtimo-link-document-to-zaak-configuration', 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-paragraph [margin]=\"true\" [italic]=\"true\">\n {{ 'linkDocumentInformation' | pluginTranslate: pluginId | async }}\n</v-paragraph>\n<v-form\n (valueChange)=\"formValueChange($event)\"\n *ngIf=\"{\n disabled: disabled$ | async,\n prefill: prefillConfiguration$ ? (prefillConfiguration$ | async) : null\n } as obs\"\n>\n <v-input\n name=\"documentUrl\"\n [title]=\"'documentUrl' | pluginTranslate: pluginId | async\"\n [margin]=\"true\"\n [defaultValue]=\"obs.prefill?.documentUrl\"\n [disabled]=\"obs.disabled\"\n [required]=\"true\"\n [tooltip]=\"'documentUrlTooltip' | pluginTranslate: pluginId | async\"\n >\n </v-input>\n <v-input\n name=\"titel\"\n [title]=\"'titel' | pluginTranslate: pluginId | async\"\n [margin]=\"true\"\n [defaultValue]=\"obs.prefill?.titel\"\n [disabled]=\"obs.disabled\"\n [required]=\"false\"\n [tooltip]=\"'titelTooltip' | pluginTranslate: pluginId | async\"\n >\n </v-input>\n <v-input\n name=\"beschrijving\"\n [title]=\"'beschrijving' | pluginTranslate: pluginId | async\"\n [margin]=\"true\"\n [defaultValue]=\"obs.prefill?.beschrijving\"\n [disabled]=\"obs.disabled\"\n [required]=\"false\"\n [tooltip]=\"'beschrijvingTooltip' | pluginTranslate: pluginId | async\"\n >\n </v-input>\n</v-form>\n", styles: [""] }]
1452
+ }], ctorParameters: function () { return [{ type: PluginManagementService }, { type: i2.TranslateService }, { type: PluginTranslationService }]; }, propDecorators: { save$: [{
1078
1453
  type: Input
1079
- }], save$: [{
1080
- type: Input
1081
- }], disabled: [{
1082
- type: Input
1083
- }], error: [{
1454
+ }], disabled$: [{
1084
1455
  type: Input
1085
1456
  }], pluginId: [{
1086
1457
  type: Input
1458
+ }], prefillConfiguration$: [{
1459
+ type: Input
1087
1460
  }], valid: [{
1088
1461
  type: Output
1089
1462
  }], configuration: [{
@@ -1105,36 +1478,36 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.9", ngImpor
1105
1478
  * See the License for the specific language governing permissions and
1106
1479
  * limitations under the License.
1107
1480
  */
1108
- class SmartDocumentsPluginModule {
1481
+ class ZakenApiPluginModule {
1109
1482
  }
1110
- SmartDocumentsPluginModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.9", ngImport: i0, type: SmartDocumentsPluginModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
1111
- SmartDocumentsPluginModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.9", ngImport: i0, type: SmartDocumentsPluginModule, declarations: [SmartDocumentsConfigurationComponent, GenerateDocumentConfigurationComponent], imports: [CommonModule,
1483
+ ZakenApiPluginModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ZakenApiPluginModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
1484
+ ZakenApiPluginModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ZakenApiPluginModule, declarations: [ZakenApiConfigurationComponent, LinkDocumentToZaakConfigurationComponent], imports: [CommonModule,
1112
1485
  PluginTranslatePipeModule,
1113
1486
  FormModule,
1114
1487
  InputModule,
1115
1488
  SelectModule,
1116
- MultiInputModule], exports: [SmartDocumentsConfigurationComponent, GenerateDocumentConfigurationComponent] });
1117
- SmartDocumentsPluginModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.9", ngImport: i0, type: SmartDocumentsPluginModule, imports: [[
1489
+ ParagraphModule], exports: [ZakenApiConfigurationComponent, LinkDocumentToZaakConfigurationComponent] });
1490
+ ZakenApiPluginModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ZakenApiPluginModule, imports: [[
1118
1491
  CommonModule,
1119
1492
  PluginTranslatePipeModule,
1120
1493
  FormModule,
1121
1494
  InputModule,
1122
1495
  SelectModule,
1123
- MultiInputModule,
1496
+ ParagraphModule,
1124
1497
  ]] });
1125
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.9", ngImport: i0, type: SmartDocumentsPluginModule, decorators: [{
1498
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ZakenApiPluginModule, decorators: [{
1126
1499
  type: NgModule,
1127
1500
  args: [{
1128
- declarations: [SmartDocumentsConfigurationComponent, GenerateDocumentConfigurationComponent],
1501
+ declarations: [ZakenApiConfigurationComponent, LinkDocumentToZaakConfigurationComponent],
1129
1502
  imports: [
1130
1503
  CommonModule,
1131
1504
  PluginTranslatePipeModule,
1132
1505
  FormModule,
1133
1506
  InputModule,
1134
1507
  SelectModule,
1135
- MultiInputModule,
1508
+ ParagraphModule,
1136
1509
  ],
1137
- exports: [SmartDocumentsConfigurationComponent, GenerateDocumentConfigurationComponent],
1510
+ exports: [ZakenApiConfigurationComponent, LinkDocumentToZaakConfigurationComponent],
1138
1511
  }]
1139
1512
  }] });
1140
1513
 
@@ -1147,9 +1520,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.9", ngImpor
1147
1520
  *
1148
1521
  * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
1149
1522
  *
1150
- * 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.
1523
+ * Unless required by applicable law or agreed to in writing, software
1524
+ * distributed under the License is distributed on an "AS IS" basis,
1525
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1526
+ * See the License for the specific language governing permissions and
1527
+ * limitations under the License.
1151
1528
  */
1152
- const SMART_DOCUMENTS_PLUGIN_LOGO_BASE64 = 'data:image/png;base64,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';
1529
+ const ZAKEN_API_PLUGIN_LOGO_BASE64 = 'data:image/png;base64,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';
1153
1530
 
1154
1531
  /*
1155
1532
  * Copyright 2015-2020 Ritense BV, the Netherlands.
@@ -1160,7 +1537,11 @@ const SMART_DOCUMENTS_PLUGIN_LOGO_BASE64 = 'data:image/png;base64,iVBORw0KGgoAAA
1160
1537
  *
1161
1538
  * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
1162
1539
  *
1163
- * 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.
1540
+ * Unless required by applicable law or agreed to in writing, software
1541
+ * distributed under the License is distributed on an "AS IS" basis,
1542
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1543
+ * See the License for the specific language governing permissions and
1544
+ * limitations under the License.
1164
1545
  */
1165
1546
 
1166
1547
  /*
@@ -1172,54 +1553,71 @@ const SMART_DOCUMENTS_PLUGIN_LOGO_BASE64 = 'data:image/png;base64,iVBORw0KGgoAAA
1172
1553
  *
1173
1554
  * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
1174
1555
  *
1175
- * 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.
1556
+ * Unless required by applicable law or agreed to in writing, software
1557
+ * distributed under the License is distributed on an "AS IS" basis,
1558
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1559
+ * See the License for the specific language governing permissions and
1560
+ * limitations under the License.
1176
1561
  */
1177
- const smartDocumentsPluginSpecification = {
1178
- pluginId: 'smartdocuments',
1179
- pluginConfigurationComponent: SmartDocumentsConfigurationComponent,
1180
- pluginLogoBase64: SMART_DOCUMENTS_PLUGIN_LOGO_BASE64,
1562
+ const zakenApiPluginSpecification = {
1563
+ pluginId: 'zakenapi',
1564
+ /*
1565
+ A component of the interface PluginConfigurationComponent, used to configure the plugin itself.
1566
+ */
1567
+ pluginConfigurationComponent: ZakenApiConfigurationComponent,
1568
+ pluginLogoBase64: ZAKEN_API_PLUGIN_LOGO_BASE64,
1181
1569
  functionConfigurationComponents: {
1182
- 'generate-document': GenerateDocumentConfigurationComponent,
1570
+ 'link-document-to-zaak': LinkDocumentToZaakConfigurationComponent,
1183
1571
  },
1184
1572
  pluginTranslations: {
1185
1573
  nl: {
1186
- title: 'SmartDocuments',
1187
- description: 'Automatiseer documenten met slimme templates.',
1188
- name: 'Configuratienaam',
1189
- url: 'SmartDocuments URL',
1190
- username: 'Gebruikersnaam',
1191
- password: 'Wachtwoord',
1192
- 'generate-document': 'Document genereren',
1193
- templateGroup: 'Template-groep',
1194
- templateName: 'Template-naam',
1195
- format: 'Documentformaat',
1196
- templateData: 'Template-data',
1574
+ title: 'Zaken API',
1575
+ url: 'Zaken API URL',
1576
+ urlTooltip: 'In dit veld moet de verwijzing komen naar de REST api van Open zaak. Deze url moet dus eindigen op /zaken/api/v1/',
1577
+ description: 'De API ondersteunt het opslaan en het naar andere applicaties ontsluiten van gegevens over alle gemeentelijke zaken, van elk type.',
1578
+ 'link-document-to-zaak': 'Koppel document aan zaak',
1579
+ configurationTitle: 'Configuratienaam',
1580
+ configurationTitleTooltip: 'Hier kunt u een eigen naam verzinnen. Onder deze naam zal de plugin te herkennen zijn in de rest van de applicatie',
1581
+ documentUrl: 'URL naar het document',
1582
+ titel: 'Documenttitel',
1583
+ titelTooltip: '(Optioneel) Vult het titel veld in de metadata van de link tussen de Zaak en het Document',
1584
+ beschrijving: 'Documentbeschrijving',
1585
+ beschrijvingTooltip: '(Optioneel) Vult het beschrijving veld in de metadata van de link tussen de Zaak en het Document',
1586
+ authenticationPluginConfiguration: 'Configuratie authenticatie-plug-in',
1587
+ linkDocumentInformation: 'Deze actie koppelt een document uit de Documenten API aan de zaak die bij het dossier hoort.',
1588
+ documentUrlTooltip: 'Dit veld ondersteunt URLs en proces variabelen. Gebruik pv:variable om een proces variabele uit te lezen',
1197
1589
  },
1198
1590
  en: {
1199
- title: 'SmartDocuments',
1200
- description: 'Automate documents with smart templates.',
1201
- name: 'Configuration name',
1202
- url: 'SmartDocuments URL',
1203
- username: 'Username',
1204
- password: 'Password',
1205
- 'generate-document': 'Generate document',
1206
- templateGroup: 'Template group',
1207
- templateName: 'Template name',
1208
- format: 'Document format',
1209
- templateData: 'Template data',
1591
+ title: 'Zaken API',
1592
+ url: 'URL',
1593
+ urlTooltip: 'This field must contain the URL to the rest API of Open Zaak, therefore this URL should end with /zaken/api/v1/',
1594
+ description: 'The API supports the storage and disclosure of data on all municipal matters to other applications, of all types.',
1595
+ 'link-document-to-zaak': 'Link document to zaak',
1596
+ configurationTitle: 'Configuration name',
1597
+ documentUrl: 'URL to the document',
1598
+ titel: 'Document title',
1599
+ titelTooltip: '(Optional) Fills the title field in the metadata of the link between the Zaak and the Document',
1600
+ beschrijving: 'Document description',
1601
+ beschrijvingTooltip: '(Optional) Fills the description field in the metadata of the link between the Zaak and the Document',
1602
+ authenticationPluginConfiguration: 'Authentication plugin configuration',
1603
+ linkDocumentInformation: 'This action links a document from the Documents API to the zaak associated with the case.',
1604
+ documentUrlTooltip: 'This field supports URLs and process variables. Use pv:variable to read a process variable',
1210
1605
  },
1211
1606
  de: {
1212
- title: 'SmartDocuments',
1213
- description: 'Automatisieren Sie Dokumente mit intelligenten Templates.',
1214
- name: 'Konfigurationsname',
1215
- url: 'SmartDocuments URL',
1216
- username: 'Nutzername',
1217
- password: 'Passwort',
1218
- 'generate-document': 'Dokument generieren',
1219
- templateGroup: 'Templategruppe',
1220
- templateName: 'Templatename',
1221
- format: 'Dokumentformat',
1222
- templateData: 'Templatedaten',
1607
+ title: 'Zaken API',
1608
+ url: 'URL',
1609
+ urlTooltip: 'Dieses Feld muss die URL zur rest API von Open Zaak enthalten, daher sollte diese URL mit enden /zaken/api/v1/',
1610
+ description: 'Die API unterstützt die Speicherung und Weitergabe von Daten zu allen kommunalen Belangen an andere Anwendungen.',
1611
+ 'link-document-to-zaak': 'Dokument mit Zaak verknüpfen',
1612
+ configurationTitle: 'Konfigurationsname',
1613
+ documentUrl: 'URL zum Dokument',
1614
+ titel: 'Dokumenttitel',
1615
+ titelTooltip: '(Optional) Füllt das Titelfeld in den Metadaten des Links zwischen dem Zaak und dem Dokument aus',
1616
+ beschrijving: 'Dokumentbeschreibung',
1617
+ beschrijvingTooltip: '(Optional) Füllt das Beschreibungsfeld in den Metadaten des Links zwischen dem Zaak und dem Dokument aus',
1618
+ authenticationPluginConfiguration: 'Authentifizierungs-Plugin-Konfiguration',
1619
+ linkDocumentInformation: 'Diese Aktion verknüpft ein Dokument aus der Dokumenten-API mit dem mit dem Fall verknüpften Zaak.',
1620
+ documentUrlTooltip: 'Dieses Feld unterstützt URLs und Prozessvariablen. Verwenden Sie pv:Variablen, um eine Prozessvariable zu lesen',
1223
1621
  },
1224
1622
  },
1225
1623
  };
@@ -1233,12 +1631,16 @@ const smartDocumentsPluginSpecification = {
1233
1631
  *
1234
1632
  * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
1235
1633
  *
1236
- * 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.
1634
+ * Unless required by applicable law or agreed to in writing, software
1635
+ * distributed under the License is distributed on an "AS IS" basis,
1636
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1637
+ * See the License for the specific language governing permissions and
1638
+ * limitations under the License.
1237
1639
  */
1238
1640
 
1239
1641
  /**
1240
1642
  * Generated bundle index. Do not edit.
1241
1643
  */
1242
1644
 
1243
- export { CreateZaakConfigurationComponent, GenerateDocumentConfigurationComponent, OpenZaakConfigurationComponent, OpenZaakPluginModule, PLUGINS_TOKEN, PluginConfigurationContainerComponent, PluginConfigurationContainerModule, PluginService, PluginTranslatePipe, PluginTranslatePipeModule, PluginTranslationService, SelectZaakTypeComponent, SetBesluitConfigurationComponent, SetResultaatConfigurationComponent, SetStatusConfigurationComponent, SmartDocumentsConfigurationComponent, SmartDocumentsPluginModule, openZaakPluginSpecification, smartDocumentsPluginSpecification };
1645
+ export { DocumentenApiConfigurationComponent, DocumentenApiPluginModule, GenerateDocumentConfigurationComponent, LinkDocumentToZaakConfigurationComponent, OpenZaakConfigurationComponent, OpenZaakPluginModule, PLUGINS_TOKEN, PluginConfigurationContainerComponent, PluginConfigurationContainerModule, PluginManagementService, PluginService, PluginTranslatePipe, PluginTranslatePipeModule, PluginTranslationService, SmartDocumentsConfigurationComponent, SmartDocumentsPluginModule, StoreTempDocumentConfigurationComponent, ZakenApiConfigurationComponent, ZakenApiPluginModule, documentenApiPluginSpecification, openZaakPluginSpecification, smartDocumentsPluginSpecification, zakenApiPluginSpecification };
1244
1646
  //# sourceMappingURL=valtimo-plugin.mjs.map