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