@valtimo/dossier-management 4.15.2 → 4.16.0-next-main.19

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 (21) hide show
  1. package/bundles/valtimo-dossier-management.umd.js +33 -30
  2. package/bundles/valtimo-dossier-management.umd.js.map +1 -1
  3. package/bundles/valtimo-dossier-management.umd.min.js +1 -1
  4. package/bundles/valtimo-dossier-management.umd.min.js.map +1 -1
  5. package/esm2015/lib/dossier-management-connect-modal/dossier-management-connect-modal.component.js +10 -6
  6. package/esm2015/lib/dossier-management-detail/dossier-management-detail.component.js +5 -4
  7. package/esm2015/lib/dossier-management-list/dossier-management-list.component.js +3 -3
  8. package/esm2015/lib/dossier-management-remove-modal/dossier-management-remove-modal.component.js +3 -3
  9. package/esm2015/lib/dossier-management-routing.module.js +8 -12
  10. package/esm2015/lib/dossier-management-upload/dossier-management-upload.component.js +7 -6
  11. package/esm2015/lib/dossier-management.module.js +4 -4
  12. package/esm2015/public-api.js +1 -1
  13. package/esm2015/valtimo-dossier-management.js +1 -1
  14. package/fesm2015/valtimo-dossier-management.js +30 -28
  15. package/fesm2015/valtimo-dossier-management.js.map +1 -1
  16. package/lib/dossier-management-connect-modal/dossier-management-connect-modal.component.d.ts +2 -3
  17. package/lib/dossier-management-detail/dossier-management-detail.component.d.ts +1 -2
  18. package/lib/dossier-management-list/dossier-management-list.component.d.ts +1 -2
  19. package/lib/dossier-management-remove-modal/dossier-management-remove-modal.component.d.ts +1 -2
  20. package/package.json +1 -1
  21. package/valtimo-dossier-management.metadata.json +1 -1
@@ -1,8 +1,8 @@
1
1
  (function (global, factory) {
2
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@angular/common'), require('@angular/core'), require('@angular/forms'), require('@ngx-translate/core'), require('@valtimo/components'), require('@valtimo/config'), require('@valtimo/document'), require('@valtimo/process'), require('ngx-toastr'), require('@angular/router'), require('moment'), require('rxjs'), require('@valtimo/security'), require('@valtimo/contract'), require('rxjs/operators'), require('@ng-bootstrap/ng-bootstrap')) :
3
- typeof define === 'function' && define.amd ? define('@valtimo/dossier-management', ['exports', '@angular/common', '@angular/core', '@angular/forms', '@ngx-translate/core', '@valtimo/components', '@valtimo/config', '@valtimo/document', '@valtimo/process', 'ngx-toastr', '@angular/router', 'moment', 'rxjs', '@valtimo/security', '@valtimo/contract', 'rxjs/operators', '@ng-bootstrap/ng-bootstrap'], factory) :
4
- (global = global || self, factory((global.valtimo = global.valtimo || {}, global.valtimo['dossier-management'] = {}), global.ng.common, global.ng.core, global.ng.forms, global.core$1, global.components, global.config, global.document, global.process, global.ngxToastr, global.ng.router, global.moment, global.rxjs, global.security, global.contract, global.rxjs.operators, global.ngBootstrap));
5
- }(this, (function (exports, common, core, forms, core$1, components, config, document$1, process, ngxToastr, router, moment_, rxjs, security, contract, operators, ngBootstrap) { 'use strict';
2
+ typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@angular/common'), require('@angular/core'), require('@angular/forms'), require('@ngx-translate/core'), require('@valtimo/components'), require('@valtimo/config'), require('@valtimo/document'), require('@valtimo/process'), require('ngx-toastr'), require('@angular/router'), require('moment'), require('rxjs'), require('@valtimo/security'), require('rxjs/operators'), require('@ng-bootstrap/ng-bootstrap')) :
3
+ typeof define === 'function' && define.amd ? define('@valtimo/dossier-management', ['exports', '@angular/common', '@angular/core', '@angular/forms', '@ngx-translate/core', '@valtimo/components', '@valtimo/config', '@valtimo/document', '@valtimo/process', 'ngx-toastr', '@angular/router', 'moment', 'rxjs', '@valtimo/security', 'rxjs/operators', '@ng-bootstrap/ng-bootstrap'], factory) :
4
+ (global = global || self, factory((global.valtimo = global.valtimo || {}, global.valtimo['dossier-management'] = {}), global.ng.common, global.ng.core, global.ng.forms, global.core$1, global.components, global.config, global.document, global.process, global.ngxToastr, global.ng.router, global.moment, global.rxjs, global.security, global.rxjs.operators, global.ngBootstrap));
5
+ }(this, (function (exports, common, core, forms, core$1, components, config, document$1, process, ngxToastr, router, moment_, rxjs, security, operators, ngBootstrap) { 'use strict';
6
6
 
7
7
  /*
8
8
  * Copyright 2015-2020 Ritense BV, the Netherlands.
@@ -34,7 +34,9 @@
34
34
  DossierManagementConnectModalComponent.prototype.loadProcessDocumentDefinitions = function () {
35
35
  var _this = this;
36
36
  this.processDocumentDefinitionExists = {};
37
- this.documentService.findProcessDocumentDefinitions(this.documentDefinition.id.name).subscribe(function (processDocumentDefinitions) {
37
+ this.documentService
38
+ .findProcessDocumentDefinitions(this.documentDefinition.id.name)
39
+ .subscribe(function (processDocumentDefinitions) {
38
40
  processDocumentDefinitions.forEach(function (processDocumentDefinition) {
39
41
  _this.processDocumentDefinitionExists[processDocumentDefinition.id.processDefinitionKey] = true;
40
42
  });
@@ -42,7 +44,9 @@
42
44
  };
43
45
  DossierManagementConnectModalComponent.prototype.loadProcessDefinitions = function () {
44
46
  var _this = this;
45
- this.processService.getProcessDefinitions().subscribe(function (processDefinitions) {
47
+ this.processService
48
+ .getProcessDefinitions()
49
+ .subscribe(function (processDefinitions) {
46
50
  _this.processDefinitions = processDefinitions;
47
51
  });
48
52
  };
@@ -63,7 +67,7 @@
63
67
  canInitializeDocument: this.newDocumentProcessDefinitionInit,
64
68
  startableByUser: this.newDocumentProcessDefinitionStartableByUser,
65
69
  documentDefinitionName: this.documentDefinition.id.name,
66
- processDefinitionKey: this.newDocumentProcessDefinition.key
70
+ processDefinitionKey: this.newDocumentProcessDefinition.key,
67
71
  };
68
72
  this.documentService.createProcessDocumentDefinition(request).subscribe(function () {
69
73
  _this.toasterService.success('Successfully added new process document definition');
@@ -77,7 +81,7 @@
77
81
  DossierManagementConnectModalComponent.decorators = [
78
82
  { type: core.Component, args: [{
79
83
  selector: 'valtimo-dossier-management-connect-modal',
80
- 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-modal\n #dossierConnectModal\n elementId=\"dossierConnectModal\"\n [title]=\"documentDefinition ? documentDefinition.schema.title : 'Document definition'\"\n subtitle=\"Connect document definition to process definition\"\n showFooter=\"true\"\n>\n <div body *ngIf=\"documentDefinition\">\n <p>\n {{ 'Select process definition for document definition' | translate }} <strong>{{documentDefinition.id.name}} *</strong>\n </p>\n <div class=\"input-group mb-3 align-items-center\">\n <select class=\"form-control\" [(ngModel)]=\"newDocumentProcessDefinition\">\n <option [ngValue]=\"null\">Select process definition</option>\n <option *ngFor=\"let processDefinition of processDefinitions\"\n [disabled]=\"processDocumentDefinitionExists[processDefinition.key]\"\n [ngValue]=\"processDefinition\">{{processDefinition.name}} ({{processDefinition.key}})\n </option>\n </select>\n </div>\n <p>\n {{ 'Select options for the selected process' | translate }}\n </p>\n <div class=\"input-group mb-3 align-items-center\">\n <label class=\"custom-control custom-checkbox custom-control-inline pl-6 mb-0\">\n <input class=\"custom-control-input\" type=\"checkbox\" [(ngModel)]=\"newDocumentProcessDefinitionInit\"><span\n class=\"custom-control-label custom-control-color\">Init document?</span>\n </label>\n <label class=\"custom-control custom-checkbox custom-control-inline ml-2 pl-6 mb-0\" placement=\"right\"\n ngbTooltip=\"{{ 'Startable by user tooltip' | translate }}\">\n <input class=\"custom-control-input\" type=\"checkbox\" [(ngModel)]=\"newDocumentProcessDefinitionStartableByUser\"><span\n class=\"custom-control-label custom-control-color\">{{ 'Startable by user' | translate }}?</span>\n </label>\n </div>\n </div>\n <div footer>\n <button (click)=\"submit()\" class=\"btn btn-primary\" data-dismiss=\"modal\"\n [disabled]=\"!newDocumentProcessDefinition\"> {{ 'Save' | translate }}\n </button>\n </div>\n</valtimo-modal>\n",
84
+ 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-modal\n #dossierConnectModal\n elementId=\"dossierConnectModal\"\n [title]=\"documentDefinition ? documentDefinition.schema.title : 'Document definition'\"\n subtitle=\"Connect document definition to process definition\"\n showFooter=\"true\"\n>\n <div body *ngIf=\"documentDefinition\">\n <p>\n {{ 'Select process definition for document definition' | translate }}\n <strong>{{ documentDefinition.id.name }} *</strong>\n </p>\n <div class=\"input-group mb-3 align-items-center\">\n <select class=\"form-control\" [(ngModel)]=\"newDocumentProcessDefinition\">\n <option [ngValue]=\"null\">Select process definition</option>\n <option\n *ngFor=\"let processDefinition of processDefinitions\"\n [disabled]=\"processDocumentDefinitionExists[processDefinition.key]\"\n [ngValue]=\"processDefinition\"\n >\n {{ processDefinition.name }} ({{ processDefinition.key }})\n </option>\n </select>\n </div>\n <p>\n {{ 'Select options for the selected process' | translate }}\n </p>\n <div class=\"input-group mb-3 align-items-center\">\n <label class=\"custom-control custom-checkbox custom-control-inline pl-6 mb-0\">\n <input\n class=\"custom-control-input\"\n type=\"checkbox\"\n [(ngModel)]=\"newDocumentProcessDefinitionInit\"\n /><span class=\"custom-control-label custom-control-color\">Init document?</span>\n </label>\n <label\n class=\"custom-control custom-checkbox custom-control-inline ml-2 pl-6 mb-0\"\n placement=\"right\"\n ngbTooltip=\"{{ 'Startable by user tooltip' | translate }}\"\n >\n <input\n class=\"custom-control-input\"\n type=\"checkbox\"\n [(ngModel)]=\"newDocumentProcessDefinitionStartableByUser\"\n /><span class=\"custom-control-label custom-control-color\"\n >{{ 'Startable by user' | translate }}?</span\n >\n </label>\n </div>\n </div>\n <div footer>\n <button\n (click)=\"submit()\"\n class=\"btn btn-primary\"\n data-dismiss=\"modal\"\n [disabled]=\"!newDocumentProcessDefinition\"\n >\n {{ 'Save' | translate }}\n </button>\n </div>\n</valtimo-modal>\n",
81
85
  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 */"]
82
86
  },] }
83
87
  ];
@@ -149,7 +153,7 @@
149
153
  documentDefinitionName: processDocumentDefinition.id.documentDefinitionId.name,
150
154
  processDefinitionKey: processDocumentDefinition.id.processDefinitionKey,
151
155
  canInitializeDocument: processDocumentDefinition.canInitializeDocument,
152
- startableByUser: processDocumentDefinition.startableByUser
156
+ startableByUser: processDocumentDefinition.startableByUser,
153
157
  })
154
158
  .subscribe(function () {
155
159
  _this.alertService.success('Successfully deleted process document definition');
@@ -160,7 +164,8 @@
160
164
  };
161
165
  DossierManagementDetailComponent.prototype.downloadDefinition = function () {
162
166
  var definition = this.documentDefinition;
163
- var dataString = 'data:text/json;charset=utf-8,' + encodeURIComponent(JSON.stringify(definition.schema, null, 2));
167
+ var dataString = 'data:text/json;charset=utf-8,' +
168
+ encodeURIComponent(JSON.stringify(definition.schema, null, 2));
164
169
  var downloadAnchorElement = document.getElementById('downloadAnchorElement');
165
170
  downloadAnchorElement.setAttribute('href', dataString);
166
171
  downloadAnchorElement.setAttribute('download', definition.id.name + "-v" + definition.id.version + ".json");
@@ -171,7 +176,7 @@
171
176
  DossierManagementDetailComponent.decorators = [
172
177
  { type: core.Component, args: [{
173
178
  selector: 'valtimo-dossier-management-detail',
174
- 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<div class=\"main-content pt-0\">\n <div class=\"container-fluid\">\n <div *ngIf=\"documentDefinition\" class=\"btn-group mt-m3px mb-3 float-right\">\n <button class=\"btn btn-primary btn-space\" (click)=\"downloadDefinition()\">\n <i class=\"icon mdi mdi-download\"></i>&nbsp;\n {{ 'Download document definition' | translate }}\n </button>\n <a id=\"downloadAnchorElement\" style=\"display: none\"></a>\n <button *ngIf=\"!this.documentDefinition.readOnly\" class=\"btn btn-secondary btn-space mr-0\"\n (click)=\"openDossierRemoveModal()\">\n <i class=\"icon mdi mdi-delete\"></i>&nbsp;\n {{ 'Remove document definition' | translate }}\n </button>\n </div>\n <div class=\"clearfix\"></div>\n <valtimo-widget *ngIf=\"documentDefinition\">\n <div class=\"bg-light dossier-header\">\n <h3 class=\"dossier-title\">{{ documentDefinition.schema.title }}\n <div *ngIf=\"documentDefinition.readOnly\" class=\"pull-right\">\n <span class=\"badge badge-pill badge-info increase-size\">Read-only</span>\n </div>\n </h3>\n </div>\n <div class=\"row bg-white mt-5 mb-2 pl-2 pr-2\">\n <div class=\"col-5\">\n <h2>{{ 'document definition' | translate }}</h2>\n </div>\n <div class=\"col-5 offset-2\">\n <h2>Connected processes</h2>\n </div>\n </div>\n <div class=\"row bg-white mb-5 pb-4 pl-2 pr-2\">\n <div class=\"col-5 bg-red\">\n <textarea class=\"w-100 dossier-schema\" rows=\"25\" disabled>{{ documentDefinition | json }}\n </textarea>\n </div>\n <div class=\"col-5 offset-2 bg-blue\">\n <div class=\"input-group mb-5\"\n *ngFor=\"let processDocumentDefinition of processDocumentDefinitions\">\n <div class=\"input-group-prepend w-75\">\n <button class=\"btn btn-danger\" (click)=\"deleteProcessDocumentDefinition(processDocumentDefinition)\"\n data-toggle=\"tooltip\" data-placement=\"left\" title=\"Delete this connected process\">\n <i class=\"fa fa-trash\"></i>\n </button>\n <input class=\"form-control\"\n [value]=\"processDocumentDefinition.processName ? processDocumentDefinition.processName\n : '' + ' (' + processDocumentDefinition.id.processDefinitionKey + ')'\"\n type=\"text\"\n disabled\n />\n </div>\n <div class=\"row mb-2 mt-2\">\n <label class=\"custom-control custom-checkbox custom-control-inline pl-6 mr-5\">\n <input\n class=\"custom-control-input\"\n type=\"checkbox\"\n [checked]=\"processDocumentDefinition.canInitializeDocument\"\n disabled\n /><span class=\"custom-control-label custom-control-color\">Init document?</span>\n </label>\n <label class=\"custom-control custom-checkbox custom-control-inline pl-6\">\n <input\n class=\"custom-control-input\"\n type=\"checkbox\"\n [checked]=\"processDocumentDefinition.startableByUser\"\n disabled\n /><span class=\"custom-control-label custom-control-color\">{{ 'Startable by user' | translate }}?</span>\n </label>\n </div>\n </div>\n <div class=\"text-right mt-5 mb-5\">\n <button class=\"btn btn-primary\" (click)=\"openDossierConnectModal()\">\n <i class=\"icon mdi mdi-plus\"></i> &nbsp; Connect process\n </button>\n </div>\n <valtimo-extension\n module=\"dossier-management\"\n page=\"dossier\"\n section=\"openzaak-zaaktype-link\"\n ></valtimo-extension>\n <valtimo-extension\n module=\"dossier-management\"\n page=\"dossier\"\n section=\"connector-link\"\n ></valtimo-extension>\n </div>\n </div>\n </valtimo-widget>\n\n <valtimo-dossier-management-connect-modal\n #dossierConnectModal\n (reloadProcessDocumentDefinitions)=\"loadProcessDocumentDefinitions()\"\n ></valtimo-dossier-management-connect-modal>\n <valtimo-dossier-management-remove-modal #dossierRemoveModal></valtimo-dossier-management-remove-modal>\n </div>\n\n</div>\n",
179
+ 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<div class=\"main-content pt-0\">\n <div class=\"container-fluid\">\n <div *ngIf=\"documentDefinition\" class=\"btn-group mt-m3px mb-3 float-right\">\n <button class=\"btn btn-primary btn-space\" (click)=\"downloadDefinition()\">\n <i class=\"icon mdi mdi-download\"></i>&nbsp;\n {{ 'Download document definition' | translate }}\n </button>\n <a id=\"downloadAnchorElement\" style=\"display: none\"></a>\n <button\n *ngIf=\"!this.documentDefinition.readOnly\"\n class=\"btn btn-secondary btn-space mr-0\"\n (click)=\"openDossierRemoveModal()\"\n >\n <i class=\"icon mdi mdi-delete\"></i>&nbsp;\n {{ 'Remove document definition' | translate }}\n </button>\n </div>\n <div class=\"clearfix\"></div>\n <valtimo-widget *ngIf=\"documentDefinition\">\n <div class=\"bg-light dossier-header\">\n <h3 class=\"dossier-title\">\n {{ documentDefinition.schema.title }}\n <div *ngIf=\"documentDefinition.readOnly\" class=\"pull-right\">\n <span class=\"badge badge-pill badge-info increase-size\">Read-only</span>\n </div>\n </h3>\n </div>\n <div class=\"row bg-white mt-5 mb-2 pl-2 pr-2\">\n <div class=\"col-5\">\n <h2>{{ 'document definition' | translate }}</h2>\n </div>\n <div class=\"col-5 offset-2\">\n <h2>Connected processes</h2>\n </div>\n </div>\n <div class=\"row bg-white mb-5 pb-4 pl-2 pr-2\">\n <div class=\"col-5 bg-red\">\n <textarea class=\"w-100 dossier-schema\" rows=\"25\" disabled\n >{{ documentDefinition | json }}\n </textarea>\n </div>\n <div class=\"col-5 offset-2 bg-blue\">\n <div\n class=\"input-group mb-5\"\n *ngFor=\"let processDocumentDefinition of processDocumentDefinitions\"\n >\n <div class=\"input-group-prepend w-75\">\n <button\n class=\"btn btn-danger\"\n (click)=\"deleteProcessDocumentDefinition(processDocumentDefinition)\"\n data-toggle=\"tooltip\"\n data-placement=\"left\"\n title=\"Delete this connected process\"\n >\n <i class=\"fa fa-trash\"></i>\n </button>\n <input\n class=\"form-control\"\n [value]=\"\n processDocumentDefinition.processName\n ? processDocumentDefinition.processName\n : '' + ' (' + processDocumentDefinition.id.processDefinitionKey + ')'\n \"\n type=\"text\"\n disabled\n />\n </div>\n <div class=\"row mb-2 mt-2\">\n <label class=\"custom-control custom-checkbox custom-control-inline pl-6 mr-5\">\n <input\n class=\"custom-control-input\"\n type=\"checkbox\"\n [checked]=\"processDocumentDefinition.canInitializeDocument\"\n disabled\n /><span class=\"custom-control-label custom-control-color\">Init document?</span>\n </label>\n <label class=\"custom-control custom-checkbox custom-control-inline pl-6\">\n <input\n class=\"custom-control-input\"\n type=\"checkbox\"\n [checked]=\"processDocumentDefinition.startableByUser\"\n disabled\n /><span class=\"custom-control-label custom-control-color\"\n >{{ 'Startable by user' | translate }}?</span\n >\n </label>\n </div>\n </div>\n <div class=\"text-right mt-5 mb-5\">\n <button class=\"btn btn-primary\" (click)=\"openDossierConnectModal()\">\n <i class=\"icon mdi mdi-plus\"></i> &nbsp; Connect process\n </button>\n </div>\n <valtimo-extension\n module=\"dossier-management\"\n page=\"dossier\"\n section=\"right-panel\"\n ></valtimo-extension>\n </div>\n </div>\n </valtimo-widget>\n\n <valtimo-dossier-management-connect-modal\n #dossierConnectModal\n (reloadProcessDocumentDefinitions)=\"loadProcessDocumentDefinitions()\"\n ></valtimo-dossier-management-connect-modal>\n <valtimo-dossier-management-remove-modal\n #dossierRemoveModal\n ></valtimo-dossier-management-remove-modal>\n </div>\n</div>\n",
175
180
  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 */.dossier-header{border-bottom:1px solid #dee2e6;height:80px;padding-left:18px;padding-right:18px;padding-top:21px}.dossier-title{margin-bottom:7px;margin-top:0}.row{margin:0}.dossier-schema{resize:none}"]
176
181
  },] }
177
182
  ];
@@ -211,13 +216,13 @@
211
216
  collectionSize: 0,
212
217
  page: 1,
213
218
  size: 10,
214
- maxPaginationItemSize: 5
219
+ maxPaginationItemSize: 5,
215
220
  };
216
221
  this.pageParam = 0;
217
222
  this.dossierFields = [
218
223
  { key: 'schema.title', label: 'Title' },
219
224
  { key: 'createdOn', label: 'Created On' },
220
- { key: 'readOnly', label: 'Read-only' }
225
+ { key: 'readOnly', label: 'Read-only' },
221
226
  ];
222
227
  this.showModal$ = new rxjs.BehaviorSubject(false);
223
228
  }
@@ -275,20 +280,20 @@
275
280
  * See the License for the specific language governing permissions and
276
281
  * limitations under the License.
277
282
  */
278
- var ɵ0 = { title: 'Dossiers', roles: [contract.ROLE_ADMIN] }, ɵ1 = { title: 'Dossier details', roles: [contract.ROLE_ADMIN] };
283
+ var ɵ0 = { title: 'Dossiers', roles: [config.ROLE_ADMIN] }, ɵ1 = { title: 'Dossier details', roles: [config.ROLE_ADMIN] };
279
284
  var routes = [
280
285
  {
281
286
  path: 'dossier-management',
282
287
  component: DossierManagementListComponent,
283
288
  canActivate: [security.AuthGuardService],
284
- data: ɵ0
289
+ data: ɵ0,
285
290
  },
286
291
  {
287
292
  path: 'dossier-management/dossier/:name',
288
293
  component: DossierManagementDetailComponent,
289
294
  canActivate: [security.AuthGuardService],
290
- data: ɵ1
291
- }
295
+ data: ɵ1,
296
+ },
292
297
  ];
293
298
  var DossierManagementRoutingModule = /** @class */ (function () {
294
299
  function DossierManagementRoutingModule() {
@@ -297,13 +302,9 @@
297
302
  }());
298
303
  DossierManagementRoutingModule.decorators = [
299
304
  { type: core.NgModule, args: [{
300
- imports: [
301
- router.RouterModule.forRoot(routes)
302
- ],
303
- exports: [
304
- router.RouterModule
305
- ],
306
- declarations: []
305
+ imports: [router.RouterModule.forRoot(routes)],
306
+ exports: [router.RouterModule],
307
+ declarations: [],
307
308
  },] }
308
309
  ];
309
310
 
@@ -351,7 +352,9 @@
351
352
  var _this = this;
352
353
  this.disable();
353
354
  this.jsonString$
354
- .pipe(operators.switchMap(function (jsonString) { return _this.documentService.createDocumentDefinition(new contract.DocumentDefinitionCreateRequest(jsonString)).pipe(operators.tap(
355
+ .pipe(operators.switchMap(function (jsonString) { return _this.documentService
356
+ .createDocumentDefinition(new document$1.DocumentDefinitionCreateRequest(jsonString))
357
+ .pipe(operators.tap(
355
358
  // success
356
359
  function () {
357
360
  _this.closeErrorSubscription();
@@ -447,7 +450,7 @@
447
450
  DossierManagementUploadComponent.decorators = [
448
451
  { type: core.Component, args: [{
449
452
  selector: 'valtimo-dossier-management-upload',
450
- template: "<valtimo-modal #uploadDefinitionModal [title]=\"'Upload document definition' | translate\" showFooter=\"true\">\n <div class=\"mt-2\" body>\n <valtimo-dropzone\n [clear$]=\"clear$\"\n (fileSelected)=\"setFile($event)\"\n [disabled]=\"disabled$ | async\"\n [subtitle]=\"'dropzone.jsonDocDef' | translate\"\n [externalError$]=\"error$\"\n ></valtimo-dropzone>\n </div>\n <div footer>\n <ng-container *ngIf=\"(jsonString$ | async) && !(error$ | async); else pleaseSelect\">\n <button [disabled]=\"disabled$ | async\" class=\"btn btn-primary\" (click)=\"uploadDefinition()\">\n {{ 'Upload' | translate }}\n </button>\n </ng-container>\n </div>\n</valtimo-modal>\n\n<ng-template #pleaseSelect>\n <button class=\"btn btn-primary\" [disabled]=\"true\">\n {{ 'Select a document definition' | translate }}\n </button>\n</ng-template>\n",
453
+ template: "<valtimo-modal\n #uploadDefinitionModal\n [title]=\"'Upload document definition' | translate\"\n showFooter=\"true\"\n>\n <div class=\"mt-2\" body>\n <valtimo-dropzone\n [clear$]=\"clear$\"\n (fileSelected)=\"setFile($event)\"\n [disabled]=\"disabled$ | async\"\n [subtitle]=\"'dropzone.jsonDocDef' | translate\"\n [externalError$]=\"error$\"\n ></valtimo-dropzone>\n </div>\n <div footer>\n <ng-container *ngIf=\"(jsonString$ | async) && !(error$ | async); else pleaseSelect\">\n <button [disabled]=\"disabled$ | async\" class=\"btn btn-primary\" (click)=\"uploadDefinition()\">\n {{ 'Upload' | translate }}\n </button>\n </ng-container>\n </div>\n</valtimo-modal>\n\n<ng-template #pleaseSelect>\n <button class=\"btn btn-primary\" [disabled]=\"true\">\n {{ 'Select a document definition' | translate }}\n </button>\n</ng-template>\n",
451
454
  styles: [""]
452
455
  },] }
453
456
  ];
@@ -506,7 +509,7 @@
506
509
  DossierManagementRemoveModalComponent.decorators = [
507
510
  { type: core.Component, args: [{
508
511
  selector: 'valtimo-dossier-management-remove-modal',
509
- 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-modal\n #documentDefinitionRemoveModal\n elementId=\"documentDefinitionRemoveModal\"\n [title]=\"documentDefinition ? documentDefinition.schema.title : 'Document definition'\"\n subtitle=\"{{ 'Remove document definition' | translate }}\"\n showFooter=\"true\"\n>\n <div body *ngIf=\"documentDefinition\">\n\n <div class=\"alert alert-contrast alert-danger mt-2\" role=\"alert\">\n <div class=\"icon\"><span class=\"mdi mdi-alert-triangle\"></span></div>\n <div class=\"message\" [innerHTML]=\"'remove-document-definition-confirmation' | translate\">\n </div>\n </div>\n <div *ngIf=\"errors.length > 0\" class=\"alert alert-danger pt-5 pb-5 mb-2\">\n <ol>\n <li *ngFor=\"let error of errors\">\n {{error}}\n </li>\n </ol>\n </div>\n </div>\n <div footer>\n <button (click)=\"removeDocumentDefinition()\" class=\"btn btn-primary\" data-dismiss=\"modal\">\n {{ 'remove-document-definition-confirmation-button' | translate }}\n </button>\n </div>\n</valtimo-modal>\n",
512
+ 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-modal\n #documentDefinitionRemoveModal\n elementId=\"documentDefinitionRemoveModal\"\n [title]=\"documentDefinition ? documentDefinition.schema.title : 'Document definition'\"\n subtitle=\"{{ 'Remove document definition' | translate }}\"\n showFooter=\"true\"\n>\n <div body *ngIf=\"documentDefinition\">\n <div class=\"alert alert-contrast alert-danger mt-2\" role=\"alert\">\n <div class=\"icon\"><span class=\"mdi mdi-alert-triangle\"></span></div>\n <div\n class=\"message\"\n [innerHTML]=\"'remove-document-definition-confirmation' | translate\"\n ></div>\n </div>\n <div *ngIf=\"errors.length > 0\" class=\"alert alert-danger pt-5 pb-5 mb-2\">\n <ol>\n <li *ngFor=\"let error of errors\">\n {{ error }}\n </li>\n </ol>\n </div>\n </div>\n <div footer>\n <button (click)=\"removeDocumentDefinition()\" class=\"btn btn-primary\" data-dismiss=\"modal\">\n {{ 'remove-document-definition-confirmation-button' | translate }}\n </button>\n </div>\n</valtimo-modal>\n",
510
513
  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 */"]
511
514
  },] }
512
515
  ];
@@ -548,7 +551,7 @@
548
551
  DossierManagementDetailComponent,
549
552
  DossierManagementConnectModalComponent,
550
553
  DossierManagementRemoveModalComponent,
551
- DossierManagementUploadComponent
554
+ DossierManagementUploadComponent,
552
555
  ],
553
556
  imports: [
554
557
  common.CommonModule,
@@ -560,10 +563,10 @@
560
563
  core$1.TranslateModule,
561
564
  components.ModalModule,
562
565
  config.ConfigModule,
563
- ngBootstrap.NgbTooltipModule
566
+ ngBootstrap.NgbTooltipModule,
564
567
  ],
565
568
  exports: [],
566
- entryComponents: [config.ExtensionComponent]
569
+ entryComponents: [config.ExtensionComponent],
567
570
  },] }
568
571
  ];
569
572
 
@@ -1 +1 @@
1
- {"version":3,"file":"valtimo-dossier-management.umd.js","sources":["../../../../projects/valtimo/dossier-management/src/lib/dossier-management-connect-modal/dossier-management-connect-modal.component.ts","../../../../projects/valtimo/dossier-management/src/lib/dossier-management-detail/dossier-management-detail.component.ts","../../../../projects/valtimo/dossier-management/src/lib/dossier-management-list/dossier-management-list.component.ts","../../../../projects/valtimo/dossier-management/src/lib/dossier-management-routing.module.ts","../../../../projects/valtimo/dossier-management/src/lib/dossier-management-upload/dossier-management-upload.component.ts","../../../../projects/valtimo/dossier-management/src/lib/dossier-management-remove-modal/dossier-management-remove-modal.component.ts","../../../../projects/valtimo/dossier-management/src/lib/dossier-management.module.ts","../../../../projects/valtimo/dossier-management/src/public-api.ts","../../../../projects/valtimo/dossier-management/src/valtimo-dossier-management.ts"],"sourcesContent":["/*\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\nimport {Component, EventEmitter, OnInit, Output, ViewChild} from '@angular/core';\nimport {DocumentService} from '@valtimo/document';\nimport {ProcessDocumentDefinitionRequest, ProcessDocumentDefinition, DocumentDefinition, ProcessDefinition} from '@valtimo/contract';\nimport {ProcessService} from '@valtimo/process';\nimport {ToastrService} from 'ngx-toastr';\nimport {ModalComponent} from '@valtimo/components';\n\n@Component({\n selector: 'valtimo-dossier-management-connect-modal',\n templateUrl: './dossier-management-connect-modal.component.html',\n styleUrls: ['./dossier-management-connect-modal.component.scss']\n})\nexport class DossierManagementConnectModalComponent implements OnInit {\n public documentDefinition: DocumentDefinition | null = null;\n public processDefinitions: ProcessDefinition[];\n public newDocumentProcessDefinition: ProcessDefinition | null = null;\n public newDocumentProcessDefinitionInit = true;\n public newDocumentProcessDefinitionStartableByUser = false;\n public processDocumentDefinitionExists: any = {};\n @Output() public reloadProcessDocumentDefinitions = new EventEmitter<any>();\n @ViewChild('dossierConnectModal') modal: ModalComponent;\n\n constructor(\n private processService: ProcessService,\n private documentService: DocumentService,\n private toasterService: ToastrService\n ) {\n }\n\n loadProcessDocumentDefinitions() {\n this.processDocumentDefinitionExists = {};\n this.documentService.findProcessDocumentDefinitions(this.documentDefinition.id.name).subscribe(\n (processDocumentDefinitions: ProcessDocumentDefinition[]) => {\n processDocumentDefinitions.forEach((processDocumentDefinition: ProcessDocumentDefinition) => {\n this.processDocumentDefinitionExists[processDocumentDefinition.id.processDefinitionKey] = true;\n });\n });\n }\n\n loadProcessDefinitions() {\n this.processService.getProcessDefinitions().subscribe((processDefinitions: ProcessDefinition[]) => {\n this.processDefinitions = processDefinitions;\n });\n }\n\n ngOnInit() {\n this.loadProcessDefinitions();\n }\n\n openModal(dossier: DocumentDefinition) {\n this.documentDefinition = dossier;\n this.newDocumentProcessDefinition = null;\n this.newDocumentProcessDefinitionInit = true;\n this.newDocumentProcessDefinitionStartableByUser = false;\n this.loadProcessDocumentDefinitions();\n this.modal.show();\n }\n\n submit() {\n const request: ProcessDocumentDefinitionRequest = {\n canInitializeDocument: this.newDocumentProcessDefinitionInit,\n startableByUser: this.newDocumentProcessDefinitionStartableByUser,\n documentDefinitionName: this.documentDefinition.id.name,\n processDefinitionKey: this.newDocumentProcessDefinition.key\n };\n this.documentService.createProcessDocumentDefinition(request).subscribe(() => {\n this.toasterService.success('Successfully added new process document definition');\n this.reloadProcessDocumentDefinitions.emit();\n }, err => {\n this.toasterService.error('Failed to add new process document definition');\n });\n }\n}\n","/*\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\nimport {Component, OnInit, ViewChild} from '@angular/core';\nimport {DocumentService} from '@valtimo/document';\nimport {DocumentDefinition, ProcessDocumentDefinition} from '@valtimo/contract';\nimport {ActivatedRoute} from '@angular/router';\nimport {DossierManagementConnectModalComponent} from '../dossier-management-connect-modal/dossier-management-connect-modal.component';\nimport {AlertService} from '@valtimo/components';\nimport {DossierManagementRemoveModalComponent} from '../dossier-management-remove-modal/dossier-management-remove-modal.component';\n\n@Component({\n selector: 'valtimo-dossier-management-detail',\n templateUrl: './dossier-management-detail.component.html',\n styleUrls: ['./dossier-management-detail.component.scss']\n})\nexport class DossierManagementDetailComponent implements OnInit {\n private documentDefinitionName: string | null = null;\n public documentDefinition: DocumentDefinition | null = null;\n public processDocumentDefinitions: ProcessDocumentDefinition[] = [];\n\n @ViewChild('dossierConnectModal') dossierConnectModal: DossierManagementConnectModalComponent;\n @ViewChild('dossierRemoveModal') dossierRemoveModal: DossierManagementRemoveModalComponent;\n\n constructor(\n private documentService: DocumentService,\n private route: ActivatedRoute,\n private alertService: AlertService\n ) {\n this.documentDefinitionName = this.route.snapshot.paramMap.get('name');\n }\n\n ngOnInit() {\n this.loadDocumentDefinition();\n this.loadProcessDocumentDefinitions();\n }\n\n loadProcessDocumentDefinitions() {\n this.documentService\n .findProcessDocumentDefinitions(this.documentDefinitionName)\n .subscribe((processDocumentDefinitions: ProcessDocumentDefinition[]) => {\n this.processDocumentDefinitions = processDocumentDefinitions;\n });\n }\n\n loadDocumentDefinition() {\n this.documentService\n .getDocumentDefinition(this.documentDefinitionName)\n .subscribe((documentDefinition: DocumentDefinition) => {\n this.documentDefinition = documentDefinition;\n });\n }\n\n openDossierConnectModal() {\n this.dossierConnectModal.openModal(this.documentDefinition);\n }\n\n openDossierRemoveModal() {\n this.dossierRemoveModal.openModal(this.documentDefinition);\n }\n\n deleteProcessDocumentDefinition(processDocumentDefinition: ProcessDocumentDefinition) {\n this.documentService\n .deleteProcessDocumentDefinition({\n documentDefinitionName: processDocumentDefinition.id.documentDefinitionId.name,\n processDefinitionKey: processDocumentDefinition.id.processDefinitionKey,\n canInitializeDocument: processDocumentDefinition.canInitializeDocument,\n startableByUser: processDocumentDefinition.startableByUser\n })\n .subscribe(\n () => {\n this.alertService.success('Successfully deleted process document definition');\n this.loadProcessDocumentDefinitions();\n },\n () => {\n this.alertService.error('Failed to delete process document definition');\n }\n );\n }\n\n downloadDefinition(): void {\n const definition = this.documentDefinition;\n const dataString = 'data:text/json;charset=utf-8,' + encodeURIComponent(JSON.stringify(definition.schema, null, 2));\n const downloadAnchorElement = document.getElementById('downloadAnchorElement');\n downloadAnchorElement.setAttribute('href', dataString);\n downloadAnchorElement.setAttribute('download', `${definition.id.name}-v${definition.id.version}.json`);\n downloadAnchorElement.click();\n }\n\n}\n","/*\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\nimport {Component} from '@angular/core';\nimport {DocumentService} from '@valtimo/document';\nimport {DocumentDefinition, Page} from '@valtimo/contract';\nimport {Router} from '@angular/router';\nimport * as moment_ from 'moment';\nimport {BehaviorSubject} from 'rxjs';\n\nconst moment = moment_;\nmoment.locale(localStorage.getItem('langKey') || '');\n\n@Component({\n selector: 'valtimo-dossier-management-list',\n templateUrl: './dossier-management-list.component.html',\n styleUrls: ['./dossier-management-list.component.scss']\n})\nexport class DossierManagementListComponent {\n public dossiers: DocumentDefinition[] = [];\n public pagination = {\n collectionSize: 0,\n page: 1,\n size: 10,\n maxPaginationItemSize: 5\n };\n public pageParam = 0;\n public dossierFields = [\n {key: 'schema.title', label: 'Title'},\n {key: 'createdOn', label: 'Created On'},\n {key: 'readOnly', label: 'Read-only'}\n ];\n\n readonly showModal$ = new BehaviorSubject<boolean>(false);\n\n constructor(\n private documentService: DocumentService,\n private router: Router\n ) {\n\n }\n\n public paginationClicked(page) {\n this.pageParam = page - 1;\n this.getDocumentDefinitions();\n }\n\n paginationSet() {\n this.getDocumentDefinitions();\n }\n\n redirectToDetails(documentDefinition: DocumentDefinition) {\n this.router.navigate(['/dossier-management/dossier', documentDefinition.id.name]);\n }\n\n private getDocumentDefinitions() {\n this.documentService\n .queryDefinitions({page: this.pageParam, size: this.pagination.size})\n .subscribe((documentDefinitionPage: Page<DocumentDefinition>) => {\n this.pagination.collectionSize = documentDefinitionPage.totalElements;\n this.dossiers = documentDefinitionPage.content;\n this.dossiers.map((dossier: DocumentDefinition) => {\n dossier.createdOn = moment(dossier.createdOn).format('DD MMM YYYY HH:mm');\n });\n });\n }\n\n showModal() {\n this.showModal$.next(true);\n }\n\n}\n","/*\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\nimport {NgModule} from '@angular/core';\nimport {RouterModule, Routes} from '@angular/router';\nimport {AuthGuardService} from '@valtimo/security';\nimport {DossierManagementDetailComponent} from './dossier-management-detail/dossier-management-detail.component';\nimport {DossierManagementListComponent} from './dossier-management-list/dossier-management-list.component';\nimport {ROLE_ADMIN} from '@valtimo/contract';\n\nconst routes: Routes = [\n {\n path: 'dossier-management',\n component: DossierManagementListComponent,\n canActivate: [AuthGuardService],\n data: {title: 'Dossiers', roles: [ROLE_ADMIN]}\n },\n {\n path: 'dossier-management/dossier/:name',\n component: DossierManagementDetailComponent,\n canActivate: [AuthGuardService],\n data: {title: 'Dossier details', roles: [ROLE_ADMIN]}\n }\n];\n\n@NgModule({\n imports: [\n RouterModule.forRoot(routes)\n ],\n exports: [\n RouterModule\n ],\n declarations: []\n})\nexport class DossierManagementRoutingModule {\n}\n","/*\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\nimport {AfterViewInit, Component, EventEmitter, Input, OnDestroy, Output, ViewChild} from '@angular/core';\nimport {TranslateService} from '@ngx-translate/core';\nimport {MenuService, ModalComponent} from '@valtimo/components';\nimport {DocumentDefinitionCreateRequest} from '@valtimo/contract';\nimport {DocumentService} from '@valtimo/document';\nimport {BehaviorSubject, Observable, Subject, Subscription} from 'rxjs';\nimport {switchMap, take, tap} from 'rxjs/operators';\n\n@Component({\n selector: 'valtimo-dossier-management-upload',\n templateUrl: './dossier-management-upload.component.html',\n styleUrls: ['./dossier-management-upload.component.scss']\n})\nexport class DossierManagementUploadComponent implements AfterViewInit, OnDestroy {\n @Input() show$: Observable<boolean>;\n @Output() definitionUploaded: EventEmitter<any> = new EventEmitter();\n\n @ViewChild('uploadDefinitionModal') modal: ModalComponent;\n\n readonly clear$ = new Subject();\n\n readonly jsonString$ = new BehaviorSubject<string>('');\n\n readonly error$ = new BehaviorSubject<string>('');\n\n readonly disabled$ = new BehaviorSubject<boolean>(false);\n\n private showSubscription: Subscription;\n\n private fileSubscription: Subscription;\n\n private errorSubscription: Subscription;\n\n private readonly file$ = new BehaviorSubject<File>(undefined);\n\n constructor(\n private readonly documentService: DocumentService,\n private readonly translateService: TranslateService,\n private readonly menuService: MenuService\n ) {}\n\n ngAfterViewInit(): void {\n this.openShowSubscription();\n this.openFileSubscription();\n }\n\n ngOnDestroy(): void {\n this.showSubscription.unsubscribe();\n this.fileSubscription.unsubscribe();\n this.closeErrorSubscription();\n }\n\n setFile(file: File): void {\n this.clearError();\n this.file$.next(file);\n }\n\n uploadDefinition(): void {\n this.disable();\n\n this.jsonString$\n .pipe(\n switchMap(jsonString =>\n this.documentService.createDocumentDefinition(new DocumentDefinitionCreateRequest(jsonString)).pipe(\n tap(\n // success\n () => {\n this.closeErrorSubscription();\n this.clearError();\n this.enable();\n this.hideModal();\n this.menuService.reload();\n this.definitionUploaded.emit();\n },\n // error\n () => {\n this.openErrorSubscription('dropzone.error.invalidDocDef');\n this.enable();\n }\n )\n )\n ),\n take(1)\n )\n .subscribe();\n }\n\n private openErrorSubscription(errorCode: string): void {\n this.closeErrorSubscription();\n this.errorSubscription = this.translateService.stream(errorCode).subscribe(error => {\n this.error$.next(error);\n });\n }\n\n private closeErrorSubscription(): void {\n if (this.errorSubscription) {\n this.errorSubscription.unsubscribe();\n }\n }\n\n private clearError(): void {\n this.error$.next('');\n }\n\n private openFileSubscription(): void {\n this.fileSubscription = this.file$.subscribe(file => {\n if (file) {\n const reader = new FileReader();\n\n reader.onloadend = () => {\n const result = reader.result.toString();\n if (this.stringIsValidJson(result)) {\n this.jsonString$.next(result);\n }\n };\n\n reader.readAsText(file);\n } else {\n this.clearJsonString();\n }\n });\n }\n\n private openShowSubscription(): void {\n this.showSubscription = this.show$.subscribe(show => {\n if (show) {\n this.showModal();\n } else {\n this.hideModal();\n }\n\n this.clearJsonString();\n this.clearError();\n this.clearDropzone();\n });\n }\n\n private clearJsonString(): void {\n this.jsonString$.next('');\n }\n\n private clearDropzone(): void {\n this.clear$.next();\n }\n\n private showModal(): void {\n this.modal.show();\n }\n\n private hideModal(): void {\n this.modal.hide();\n }\n\n private stringIsValidJson(string: string) {\n try {\n JSON.parse(string);\n } catch (e) {\n return false;\n }\n return true;\n }\n\n private disable(): void {\n this.disabled$.next(true);\n }\n\n private enable(): void {\n this.disabled$.next(false);\n }\n}\n","/*\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\nimport {Component, ViewChild} from '@angular/core';\nimport {DocumentService} from '@valtimo/document';\nimport {DocumentDefinition, UndeployDocumentDefinitionResult} from '@valtimo/contract';\nimport {MenuService, ModalComponent} from '@valtimo/components';\nimport {ToastrService} from 'ngx-toastr';\nimport {Router} from '@angular/router';\nimport {TranslateService} from '@ngx-translate/core';\n\n@Component({\n selector: 'valtimo-dossier-management-remove-modal',\n templateUrl: './dossier-management-remove-modal.component.html',\n styleUrls: ['./dossier-management-remove-modal.component.scss']\n})\nexport class DossierManagementRemoveModalComponent {\n public documentDefinition: DocumentDefinition | null = null;\n public errors: string[] = [];\n @ViewChild('documentDefinitionRemoveModal') modal: ModalComponent;\n\n constructor(\n private documentService: DocumentService,\n private toasterService: ToastrService,\n private router: Router,\n private translateService: TranslateService,\n private menuService: MenuService\n ) {\n }\n\n openModal(documentDefinition: DocumentDefinition) {\n this.documentDefinition = documentDefinition;\n this.modal.show();\n }\n\n removeDocumentDefinition() {\n this.documentService.removeDocumentDefinition(this.documentDefinition.id.name).subscribe(\n () => {\n this.menuService.reload();\n this.router.navigate(['/dossier-management']);\n this.toasterService.success(this.translateService.instant('remove-document-definition-success'));\n }, (result: UndeployDocumentDefinitionResult) => {\n this.errors = result.errors;\n });\n }\n\n}\n","/*\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\nimport {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {FormsModule} from '@angular/forms';\nimport {TranslateModule} from '@ngx-translate/core';\nimport {DropzoneModule, ListModule, ModalModule, WidgetModule} from '@valtimo/components';\nimport {ConfigModule, ExtensionComponent} from '@valtimo/config';\nimport {DossierManagementConnectModalComponent} from './dossier-management-connect-modal/dossier-management-connect-modal.component';\nimport {DossierManagementDetailComponent} from './dossier-management-detail/dossier-management-detail.component';\nimport {DossierManagementListComponent} from './dossier-management-list/dossier-management-list.component';\nimport {DossierManagementRoutingModule} from './dossier-management-routing.module';\nimport {DossierManagementUploadComponent} from './dossier-management-upload/dossier-management-upload.component';\nimport {DossierManagementRemoveModalComponent} from './dossier-management-remove-modal/dossier-management-remove-modal.component';\nimport { NgbTooltipModule } from '@ng-bootstrap/ng-bootstrap';\n\n@NgModule({\n declarations: [\n DossierManagementListComponent,\n DossierManagementDetailComponent,\n DossierManagementConnectModalComponent,\n DossierManagementRemoveModalComponent,\n DossierManagementUploadComponent\n ],\n imports: [\n CommonModule,\n WidgetModule,\n DropzoneModule,\n ListModule,\n DossierManagementRoutingModule,\n FormsModule,\n TranslateModule,\n ModalModule,\n ConfigModule,\n NgbTooltipModule\n ],\n exports: [],\n entryComponents: [ExtensionComponent]\n})\nexport class DossierManagementModule {\n}\n","/*\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/*\n * Public API Surface of dossier-management\n */\n\nexport * from './lib/dossier-management.module';\nexport * from './lib/dossier-management-list/dossier-management-list.component';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n\nexport {DossierManagementConnectModalComponent as ɵb} from './lib/dossier-management-connect-modal/dossier-management-connect-modal.component';\nexport {DossierManagementDetailComponent as ɵa} from './lib/dossier-management-detail/dossier-management-detail.component';\nexport {DossierManagementRemoveModalComponent as ɵc} from './lib/dossier-management-remove-modal/dossier-management-remove-modal.component';\nexport {DossierManagementRoutingModule as ɵe} from './lib/dossier-management-routing.module';\nexport {DossierManagementUploadComponent as ɵd} from './lib/dossier-management-upload/dossier-management-upload.component';"],"names":["EventEmitter","Component","ProcessService","DocumentService","ToastrService","Output","ViewChild","ActivatedRoute","AlertService","BehaviorSubject","Router","ROLE_ADMIN","AuthGuardService","NgModule","RouterModule","Subject","switchMap","DocumentDefinitionCreateRequest","tap","take","TranslateService","MenuService","Input","CommonModule","WidgetModule","DropzoneModule","ListModule","FormsModule","TranslateModule","ModalModule","ConfigModule","NgbTooltipModule","ExtensionComponent"],"mappings":"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"}
1
+ {"version":3,"file":"valtimo-dossier-management.umd.js","sources":["../../../../projects/valtimo/dossier-management/src/lib/dossier-management-connect-modal/dossier-management-connect-modal.component.ts","../../../../projects/valtimo/dossier-management/src/lib/dossier-management-detail/dossier-management-detail.component.ts","../../../../projects/valtimo/dossier-management/src/lib/dossier-management-list/dossier-management-list.component.ts","../../../../projects/valtimo/dossier-management/src/lib/dossier-management-routing.module.ts","../../../../projects/valtimo/dossier-management/src/lib/dossier-management-upload/dossier-management-upload.component.ts","../../../../projects/valtimo/dossier-management/src/lib/dossier-management-remove-modal/dossier-management-remove-modal.component.ts","../../../../projects/valtimo/dossier-management/src/lib/dossier-management.module.ts","../../../../projects/valtimo/dossier-management/src/public-api.ts","../../../../projects/valtimo/dossier-management/src/valtimo-dossier-management.ts"],"sourcesContent":["/*\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\nimport {Component, EventEmitter, OnInit, Output, ViewChild} from '@angular/core';\nimport {\n DocumentService,\n ProcessDocumentDefinitionRequest,\n ProcessDocumentDefinition,\n DocumentDefinition,\n} from '@valtimo/document';\nimport {ProcessService, ProcessDefinition} from '@valtimo/process';\nimport {ToastrService} from 'ngx-toastr';\nimport {ModalComponent} from '@valtimo/components';\n\n@Component({\n selector: 'valtimo-dossier-management-connect-modal',\n templateUrl: './dossier-management-connect-modal.component.html',\n styleUrls: ['./dossier-management-connect-modal.component.scss'],\n})\nexport class DossierManagementConnectModalComponent implements OnInit {\n public documentDefinition: DocumentDefinition | null = null;\n public processDefinitions: ProcessDefinition[];\n public newDocumentProcessDefinition: ProcessDefinition | null = null;\n public newDocumentProcessDefinitionInit = true;\n public newDocumentProcessDefinitionStartableByUser = false;\n public processDocumentDefinitionExists: any = {};\n @Output() public reloadProcessDocumentDefinitions = new EventEmitter<any>();\n @ViewChild('dossierConnectModal') modal: ModalComponent;\n\n constructor(\n private processService: ProcessService,\n private documentService: DocumentService,\n private toasterService: ToastrService\n ) {}\n\n loadProcessDocumentDefinitions() {\n this.processDocumentDefinitionExists = {};\n this.documentService\n .findProcessDocumentDefinitions(this.documentDefinition.id.name)\n .subscribe((processDocumentDefinitions: ProcessDocumentDefinition[]) => {\n processDocumentDefinitions.forEach(\n (processDocumentDefinition: ProcessDocumentDefinition) => {\n this.processDocumentDefinitionExists[\n processDocumentDefinition.id.processDefinitionKey\n ] = true;\n }\n );\n });\n }\n\n loadProcessDefinitions() {\n this.processService\n .getProcessDefinitions()\n .subscribe((processDefinitions: ProcessDefinition[]) => {\n this.processDefinitions = processDefinitions;\n });\n }\n\n ngOnInit() {\n this.loadProcessDefinitions();\n }\n\n openModal(dossier: DocumentDefinition) {\n this.documentDefinition = dossier;\n this.newDocumentProcessDefinition = null;\n this.newDocumentProcessDefinitionInit = true;\n this.newDocumentProcessDefinitionStartableByUser = false;\n this.loadProcessDocumentDefinitions();\n this.modal.show();\n }\n\n submit() {\n const request: ProcessDocumentDefinitionRequest = {\n canInitializeDocument: this.newDocumentProcessDefinitionInit,\n startableByUser: this.newDocumentProcessDefinitionStartableByUser,\n documentDefinitionName: this.documentDefinition.id.name,\n processDefinitionKey: this.newDocumentProcessDefinition.key,\n };\n this.documentService.createProcessDocumentDefinition(request).subscribe(\n () => {\n this.toasterService.success('Successfully added new process document definition');\n this.reloadProcessDocumentDefinitions.emit();\n },\n err => {\n this.toasterService.error('Failed to add new process document definition');\n }\n );\n }\n}\n","/*\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\nimport {Component, OnInit, ViewChild} from '@angular/core';\nimport {DocumentService, DocumentDefinition, ProcessDocumentDefinition} from '@valtimo/document';\nimport {ActivatedRoute} from '@angular/router';\nimport {DossierManagementConnectModalComponent} from '../dossier-management-connect-modal/dossier-management-connect-modal.component';\nimport {AlertService} from '@valtimo/components';\nimport {DossierManagementRemoveModalComponent} from '../dossier-management-remove-modal/dossier-management-remove-modal.component';\n\n@Component({\n selector: 'valtimo-dossier-management-detail',\n templateUrl: './dossier-management-detail.component.html',\n styleUrls: ['./dossier-management-detail.component.scss'],\n})\nexport class DossierManagementDetailComponent implements OnInit {\n private documentDefinitionName: string | null = null;\n public documentDefinition: DocumentDefinition | null = null;\n public processDocumentDefinitions: ProcessDocumentDefinition[] = [];\n\n @ViewChild('dossierConnectModal') dossierConnectModal: DossierManagementConnectModalComponent;\n @ViewChild('dossierRemoveModal') dossierRemoveModal: DossierManagementRemoveModalComponent;\n\n constructor(\n private documentService: DocumentService,\n private route: ActivatedRoute,\n private alertService: AlertService\n ) {\n this.documentDefinitionName = this.route.snapshot.paramMap.get('name');\n }\n\n ngOnInit() {\n this.loadDocumentDefinition();\n this.loadProcessDocumentDefinitions();\n }\n\n loadProcessDocumentDefinitions() {\n this.documentService\n .findProcessDocumentDefinitions(this.documentDefinitionName)\n .subscribe((processDocumentDefinitions: ProcessDocumentDefinition[]) => {\n this.processDocumentDefinitions = processDocumentDefinitions;\n });\n }\n\n loadDocumentDefinition() {\n this.documentService\n .getDocumentDefinition(this.documentDefinitionName)\n .subscribe((documentDefinition: DocumentDefinition) => {\n this.documentDefinition = documentDefinition;\n });\n }\n\n openDossierConnectModal() {\n this.dossierConnectModal.openModal(this.documentDefinition);\n }\n\n openDossierRemoveModal() {\n this.dossierRemoveModal.openModal(this.documentDefinition);\n }\n\n deleteProcessDocumentDefinition(processDocumentDefinition: ProcessDocumentDefinition) {\n this.documentService\n .deleteProcessDocumentDefinition({\n documentDefinitionName: processDocumentDefinition.id.documentDefinitionId.name,\n processDefinitionKey: processDocumentDefinition.id.processDefinitionKey,\n canInitializeDocument: processDocumentDefinition.canInitializeDocument,\n startableByUser: processDocumentDefinition.startableByUser,\n })\n .subscribe(\n () => {\n this.alertService.success('Successfully deleted process document definition');\n this.loadProcessDocumentDefinitions();\n },\n () => {\n this.alertService.error('Failed to delete process document definition');\n }\n );\n }\n\n downloadDefinition(): void {\n const definition = this.documentDefinition;\n const dataString =\n 'data:text/json;charset=utf-8,' +\n encodeURIComponent(JSON.stringify(definition.schema, null, 2));\n const downloadAnchorElement = document.getElementById('downloadAnchorElement');\n downloadAnchorElement.setAttribute('href', dataString);\n downloadAnchorElement.setAttribute(\n 'download',\n `${definition.id.name}-v${definition.id.version}.json`\n );\n downloadAnchorElement.click();\n }\n}\n","/*\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\nimport {Component} from '@angular/core';\nimport {DocumentService, DocumentDefinition, Page} from '@valtimo/document';\nimport {Router} from '@angular/router';\nimport * as moment_ from 'moment';\nimport {BehaviorSubject} from 'rxjs';\n\nconst moment = moment_;\nmoment.locale(localStorage.getItem('langKey') || '');\n\n@Component({\n selector: 'valtimo-dossier-management-list',\n templateUrl: './dossier-management-list.component.html',\n styleUrls: ['./dossier-management-list.component.scss'],\n})\nexport class DossierManagementListComponent {\n public dossiers: DocumentDefinition[] = [];\n public pagination = {\n collectionSize: 0,\n page: 1,\n size: 10,\n maxPaginationItemSize: 5,\n };\n public pageParam = 0;\n public dossierFields = [\n {key: 'schema.title', label: 'Title'},\n {key: 'createdOn', label: 'Created On'},\n {key: 'readOnly', label: 'Read-only'},\n ];\n\n readonly showModal$ = new BehaviorSubject<boolean>(false);\n\n constructor(private documentService: DocumentService, private router: Router) {}\n\n public paginationClicked(page) {\n this.pageParam = page - 1;\n this.getDocumentDefinitions();\n }\n\n paginationSet() {\n this.getDocumentDefinitions();\n }\n\n redirectToDetails(documentDefinition: DocumentDefinition) {\n this.router.navigate(['/dossier-management/dossier', documentDefinition.id.name]);\n }\n\n private getDocumentDefinitions() {\n this.documentService\n .queryDefinitions({page: this.pageParam, size: this.pagination.size})\n .subscribe((documentDefinitionPage: Page<DocumentDefinition>) => {\n this.pagination.collectionSize = documentDefinitionPage.totalElements;\n this.dossiers = documentDefinitionPage.content;\n this.dossiers.map((dossier: DocumentDefinition) => {\n dossier.createdOn = moment(dossier.createdOn).format('DD MMM YYYY HH:mm');\n });\n });\n }\n\n showModal() {\n this.showModal$.next(true);\n }\n}\n","/*\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\nimport {NgModule} from '@angular/core';\nimport {RouterModule, Routes} from '@angular/router';\nimport {AuthGuardService} from '@valtimo/security';\nimport {DossierManagementDetailComponent} from './dossier-management-detail/dossier-management-detail.component';\nimport {DossierManagementListComponent} from './dossier-management-list/dossier-management-list.component';\nimport {ROLE_ADMIN} from '@valtimo/config';\n\nconst routes: Routes = [\n {\n path: 'dossier-management',\n component: DossierManagementListComponent,\n canActivate: [AuthGuardService],\n data: {title: 'Dossiers', roles: [ROLE_ADMIN]},\n },\n {\n path: 'dossier-management/dossier/:name',\n component: DossierManagementDetailComponent,\n canActivate: [AuthGuardService],\n data: {title: 'Dossier details', roles: [ROLE_ADMIN]},\n },\n];\n\n@NgModule({\n imports: [RouterModule.forRoot(routes)],\n exports: [RouterModule],\n declarations: [],\n})\nexport class DossierManagementRoutingModule {}\n","/*\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\nimport {\n AfterViewInit,\n Component,\n EventEmitter,\n Input,\n OnDestroy,\n Output,\n ViewChild,\n} from '@angular/core';\nimport {TranslateService} from '@ngx-translate/core';\nimport {MenuService, ModalComponent} from '@valtimo/components';\nimport {DocumentService, DocumentDefinitionCreateRequest} from '@valtimo/document';\nimport {BehaviorSubject, Observable, Subject, Subscription} from 'rxjs';\nimport {switchMap, take, tap} from 'rxjs/operators';\n\n@Component({\n selector: 'valtimo-dossier-management-upload',\n templateUrl: './dossier-management-upload.component.html',\n styleUrls: ['./dossier-management-upload.component.scss'],\n})\nexport class DossierManagementUploadComponent implements AfterViewInit, OnDestroy {\n @Input() show$: Observable<boolean>;\n @Output() definitionUploaded: EventEmitter<any> = new EventEmitter();\n\n @ViewChild('uploadDefinitionModal') modal: ModalComponent;\n\n readonly clear$ = new Subject();\n\n readonly jsonString$ = new BehaviorSubject<string>('');\n\n readonly error$ = new BehaviorSubject<string>('');\n\n readonly disabled$ = new BehaviorSubject<boolean>(false);\n\n private showSubscription: Subscription;\n\n private fileSubscription: Subscription;\n\n private errorSubscription: Subscription;\n\n private readonly file$ = new BehaviorSubject<File>(undefined);\n\n constructor(\n private readonly documentService: DocumentService,\n private readonly translateService: TranslateService,\n private readonly menuService: MenuService\n ) {}\n\n ngAfterViewInit(): void {\n this.openShowSubscription();\n this.openFileSubscription();\n }\n\n ngOnDestroy(): void {\n this.showSubscription.unsubscribe();\n this.fileSubscription.unsubscribe();\n this.closeErrorSubscription();\n }\n\n setFile(file: File): void {\n this.clearError();\n this.file$.next(file);\n }\n\n uploadDefinition(): void {\n this.disable();\n\n this.jsonString$\n .pipe(\n switchMap(jsonString =>\n this.documentService\n .createDocumentDefinition(new DocumentDefinitionCreateRequest(jsonString))\n .pipe(\n tap(\n // success\n () => {\n this.closeErrorSubscription();\n this.clearError();\n this.enable();\n this.hideModal();\n this.menuService.reload();\n this.definitionUploaded.emit();\n },\n // error\n () => {\n this.openErrorSubscription('dropzone.error.invalidDocDef');\n this.enable();\n }\n )\n )\n ),\n take(1)\n )\n .subscribe();\n }\n\n private openErrorSubscription(errorCode: string): void {\n this.closeErrorSubscription();\n this.errorSubscription = this.translateService.stream(errorCode).subscribe(error => {\n this.error$.next(error);\n });\n }\n\n private closeErrorSubscription(): void {\n if (this.errorSubscription) {\n this.errorSubscription.unsubscribe();\n }\n }\n\n private clearError(): void {\n this.error$.next('');\n }\n\n private openFileSubscription(): void {\n this.fileSubscription = this.file$.subscribe(file => {\n if (file) {\n const reader = new FileReader();\n\n reader.onloadend = () => {\n const result = reader.result.toString();\n if (this.stringIsValidJson(result)) {\n this.jsonString$.next(result);\n }\n };\n\n reader.readAsText(file);\n } else {\n this.clearJsonString();\n }\n });\n }\n\n private openShowSubscription(): void {\n this.showSubscription = this.show$.subscribe(show => {\n if (show) {\n this.showModal();\n } else {\n this.hideModal();\n }\n\n this.clearJsonString();\n this.clearError();\n this.clearDropzone();\n });\n }\n\n private clearJsonString(): void {\n this.jsonString$.next('');\n }\n\n private clearDropzone(): void {\n this.clear$.next();\n }\n\n private showModal(): void {\n this.modal.show();\n }\n\n private hideModal(): void {\n this.modal.hide();\n }\n\n private stringIsValidJson(string: string) {\n try {\n JSON.parse(string);\n } catch (e) {\n return false;\n }\n return true;\n }\n\n private disable(): void {\n this.disabled$.next(true);\n }\n\n private enable(): void {\n this.disabled$.next(false);\n }\n}\n","/*\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\nimport {Component, ViewChild} from '@angular/core';\nimport {\n DocumentService,\n DocumentDefinition,\n UndeployDocumentDefinitionResult,\n} from '@valtimo/document';\nimport {MenuService, ModalComponent} from '@valtimo/components';\nimport {ToastrService} from 'ngx-toastr';\nimport {Router} from '@angular/router';\nimport {TranslateService} from '@ngx-translate/core';\n\n@Component({\n selector: 'valtimo-dossier-management-remove-modal',\n templateUrl: './dossier-management-remove-modal.component.html',\n styleUrls: ['./dossier-management-remove-modal.component.scss'],\n})\nexport class DossierManagementRemoveModalComponent {\n public documentDefinition: DocumentDefinition | null = null;\n public errors: string[] = [];\n @ViewChild('documentDefinitionRemoveModal') modal: ModalComponent;\n\n constructor(\n private documentService: DocumentService,\n private toasterService: ToastrService,\n private router: Router,\n private translateService: TranslateService,\n private menuService: MenuService\n ) {}\n\n openModal(documentDefinition: DocumentDefinition) {\n this.documentDefinition = documentDefinition;\n this.modal.show();\n }\n\n removeDocumentDefinition() {\n this.documentService.removeDocumentDefinition(this.documentDefinition.id.name).subscribe(\n () => {\n this.menuService.reload();\n this.router.navigate(['/dossier-management']);\n this.toasterService.success(\n this.translateService.instant('remove-document-definition-success')\n );\n },\n (result: UndeployDocumentDefinitionResult) => {\n this.errors = result.errors;\n }\n );\n }\n}\n","/*\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\nimport {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {FormsModule} from '@angular/forms';\nimport {TranslateModule} from '@ngx-translate/core';\nimport {DropzoneModule, ListModule, ModalModule, WidgetModule} from '@valtimo/components';\nimport {ConfigModule, ExtensionComponent} from '@valtimo/config';\nimport {DossierManagementConnectModalComponent} from './dossier-management-connect-modal/dossier-management-connect-modal.component';\nimport {DossierManagementDetailComponent} from './dossier-management-detail/dossier-management-detail.component';\nimport {DossierManagementListComponent} from './dossier-management-list/dossier-management-list.component';\nimport {DossierManagementRoutingModule} from './dossier-management-routing.module';\nimport {DossierManagementUploadComponent} from './dossier-management-upload/dossier-management-upload.component';\nimport {DossierManagementRemoveModalComponent} from './dossier-management-remove-modal/dossier-management-remove-modal.component';\nimport {NgbTooltipModule} from '@ng-bootstrap/ng-bootstrap';\n\n@NgModule({\n declarations: [\n DossierManagementListComponent,\n DossierManagementDetailComponent,\n DossierManagementConnectModalComponent,\n DossierManagementRemoveModalComponent,\n DossierManagementUploadComponent,\n ],\n imports: [\n CommonModule,\n WidgetModule,\n DropzoneModule,\n ListModule,\n DossierManagementRoutingModule,\n FormsModule,\n TranslateModule,\n ModalModule,\n ConfigModule,\n NgbTooltipModule,\n ],\n exports: [],\n entryComponents: [ExtensionComponent],\n})\nexport class DossierManagementModule {}\n","/*\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/*\n * Public API Surface of dossier-management\n */\n\nexport * from './lib/dossier-management.module';\nexport * from './lib/dossier-management-list/dossier-management-list.component';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n\nexport {DossierManagementConnectModalComponent as ɵb} from './lib/dossier-management-connect-modal/dossier-management-connect-modal.component';\nexport {DossierManagementDetailComponent as ɵa} from './lib/dossier-management-detail/dossier-management-detail.component';\nexport {DossierManagementRemoveModalComponent as ɵc} from './lib/dossier-management-remove-modal/dossier-management-remove-modal.component';\nexport {DossierManagementRoutingModule as ɵe} from './lib/dossier-management-routing.module';\nexport {DossierManagementUploadComponent as ɵd} from './lib/dossier-management-upload/dossier-management-upload.component';"],"names":["EventEmitter","Component","ProcessService","DocumentService","ToastrService","Output","ViewChild","ActivatedRoute","AlertService","BehaviorSubject","Router","ROLE_ADMIN","AuthGuardService","NgModule","RouterModule","Subject","switchMap","DocumentDefinitionCreateRequest","tap","take","TranslateService","MenuService","Input","CommonModule","WidgetModule","DropzoneModule","ListModule","FormsModule","TranslateModule","ModalModule","ConfigModule","NgbTooltipModule","ExtensionComponent"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- !function(e,n){"object"==typeof exports&&"undefined"!=typeof module?n(exports,require("@angular/common"),require("@angular/core"),require("@angular/forms"),require("@ngx-translate/core"),require("@valtimo/components"),require("@valtimo/config"),require("@valtimo/document"),require("@valtimo/process"),require("ngx-toastr"),require("@angular/router"),require("moment"),require("rxjs"),require("@valtimo/security"),require("@valtimo/contract"),require("rxjs/operators"),require("@ng-bootstrap/ng-bootstrap")):"function"==typeof define&&define.amd?define("@valtimo/dossier-management",["exports","@angular/common","@angular/core","@angular/forms","@ngx-translate/core","@valtimo/components","@valtimo/config","@valtimo/document","@valtimo/process","ngx-toastr","@angular/router","moment","rxjs","@valtimo/security","@valtimo/contract","rxjs/operators","@ng-bootstrap/ng-bootstrap"],n):n(((e=e||self).valtimo=e.valtimo||{},e.valtimo["dossier-management"]={}),e.ng.common,e.ng.core,e.ng.forms,e.core$1,e.components,e.config,e.document,e.process,e.ngxToastr,e.ng.router,e.moment,e.rxjs,e.security,e.contract,e.rxjs.operators,e.ngBootstrap)}(this,(function(e,n,t,i,o,s,r,a,c,l,d,u,p,m,h,f,b){"use strict";var g=function(){function e(e,n,i){this.processService=e,this.documentService=n,this.toasterService=i,this.documentDefinition=null,this.newDocumentProcessDefinition=null,this.newDocumentProcessDefinitionInit=!0,this.newDocumentProcessDefinitionStartableByUser=!1,this.processDocumentDefinitionExists={},this.reloadProcessDocumentDefinitions=new t.EventEmitter}return e.prototype.loadProcessDocumentDefinitions=function(){var e=this;this.processDocumentDefinitionExists={},this.documentService.findProcessDocumentDefinitions(this.documentDefinition.id.name).subscribe((function(n){n.forEach((function(n){e.processDocumentDefinitionExists[n.id.processDefinitionKey]=!0}))}))},e.prototype.loadProcessDefinitions=function(){var e=this;this.processService.getProcessDefinitions().subscribe((function(n){e.processDefinitions=n}))},e.prototype.ngOnInit=function(){this.loadProcessDefinitions()},e.prototype.openModal=function(e){this.documentDefinition=e,this.newDocumentProcessDefinition=null,this.newDocumentProcessDefinitionInit=!0,this.newDocumentProcessDefinitionStartableByUser=!1,this.loadProcessDocumentDefinitions(),this.modal.show()},e.prototype.submit=function(){var e=this,n={canInitializeDocument:this.newDocumentProcessDefinitionInit,startableByUser:this.newDocumentProcessDefinitionStartableByUser,documentDefinitionName:this.documentDefinition.id.name,processDefinitionKey:this.newDocumentProcessDefinition.key};this.documentService.createProcessDocumentDefinition(n).subscribe((function(){e.toasterService.success("Successfully added new process document definition"),e.reloadProcessDocumentDefinitions.emit()}),(function(n){e.toasterService.error("Failed to add new process document definition")}))},e}();g.decorators=[{type:t.Component,args:[{selector:"valtimo-dossier-management-connect-modal",template:'\x3c!--\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 --\x3e\n\n<valtimo-modal\n #dossierConnectModal\n elementId="dossierConnectModal"\n [title]="documentDefinition ? documentDefinition.schema.title : \'Document definition\'"\n subtitle="Connect document definition to process definition"\n showFooter="true"\n>\n <div body *ngIf="documentDefinition">\n <p>\n {{ \'Select process definition for document definition\' | translate }} <strong>{{documentDefinition.id.name}} *</strong>\n </p>\n <div class="input-group mb-3 align-items-center">\n <select class="form-control" [(ngModel)]="newDocumentProcessDefinition">\n <option [ngValue]="null">Select process definition</option>\n <option *ngFor="let processDefinition of processDefinitions"\n [disabled]="processDocumentDefinitionExists[processDefinition.key]"\n [ngValue]="processDefinition">{{processDefinition.name}} ({{processDefinition.key}})\n </option>\n </select>\n </div>\n <p>\n {{ \'Select options for the selected process\' | translate }}\n </p>\n <div class="input-group mb-3 align-items-center">\n <label class="custom-control custom-checkbox custom-control-inline pl-6 mb-0">\n <input class="custom-control-input" type="checkbox" [(ngModel)]="newDocumentProcessDefinitionInit"><span\n class="custom-control-label custom-control-color">Init document?</span>\n </label>\n <label class="custom-control custom-checkbox custom-control-inline ml-2 pl-6 mb-0" placement="right"\n ngbTooltip="{{ \'Startable by user tooltip\' | translate }}">\n <input class="custom-control-input" type="checkbox" [(ngModel)]="newDocumentProcessDefinitionStartableByUser"><span\n class="custom-control-label custom-control-color">{{ \'Startable by user\' | translate }}?</span>\n </label>\n </div>\n </div>\n <div footer>\n <button (click)="submit()" class="btn btn-primary" data-dismiss="modal"\n [disabled]="!newDocumentProcessDefinition"> {{ \'Save\' | translate }}\n </button>\n </div>\n</valtimo-modal>\n',styles:['/*!\n * Copyright 2015-2020 Ritense BV, the Netherlands.\n *\n * Licensed under EUPL, Version 1.2 (the "License");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an "AS IS" basis,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */']}]}],g.ctorParameters=function(){return[{type:c.ProcessService},{type:a.DocumentService},{type:l.ToastrService}]},g.propDecorators={reloadProcessDocumentDefinitions:[{type:t.Output}],modal:[{type:t.ViewChild,args:["dossierConnectModal"]}]};var v=function(){function e(e,n,t){this.documentService=e,this.route=n,this.alertService=t,this.documentDefinitionName=null,this.documentDefinition=null,this.processDocumentDefinitions=[],this.documentDefinitionName=this.route.snapshot.paramMap.get("name")}return e.prototype.ngOnInit=function(){this.loadDocumentDefinition(),this.loadProcessDocumentDefinitions()},e.prototype.loadProcessDocumentDefinitions=function(){var e=this;this.documentService.findProcessDocumentDefinitions(this.documentDefinitionName).subscribe((function(n){e.processDocumentDefinitions=n}))},e.prototype.loadDocumentDefinition=function(){var e=this;this.documentService.getDocumentDefinition(this.documentDefinitionName).subscribe((function(n){e.documentDefinition=n}))},e.prototype.openDossierConnectModal=function(){this.dossierConnectModal.openModal(this.documentDefinition)},e.prototype.openDossierRemoveModal=function(){this.dossierRemoveModal.openModal(this.documentDefinition)},e.prototype.deleteProcessDocumentDefinition=function(e){var n=this;this.documentService.deleteProcessDocumentDefinition({documentDefinitionName:e.id.documentDefinitionId.name,processDefinitionKey:e.id.processDefinitionKey,canInitializeDocument:e.canInitializeDocument,startableByUser:e.startableByUser}).subscribe((function(){n.alertService.success("Successfully deleted process document definition"),n.loadProcessDocumentDefinitions()}),(function(){n.alertService.error("Failed to delete process document definition")}))},e.prototype.downloadDefinition=function(){var e=this.documentDefinition,n="data:text/json;charset=utf-8,"+encodeURIComponent(JSON.stringify(e.schema,null,2)),t=document.getElementById("downloadAnchorElement");t.setAttribute("href",n),t.setAttribute("download",e.id.name+"-v"+e.id.version+".json"),t.click()},e}();v.decorators=[{type:t.Component,args:[{selector:"valtimo-dossier-management-detail",template:'\x3c!--\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 --\x3e\n\n<div class="main-content pt-0">\n <div class="container-fluid">\n <div *ngIf="documentDefinition" class="btn-group mt-m3px mb-3 float-right">\n <button class="btn btn-primary btn-space" (click)="downloadDefinition()">\n <i class="icon mdi mdi-download"></i>&nbsp;\n {{ \'Download document definition\' | translate }}\n </button>\n <a id="downloadAnchorElement" style="display: none"></a>\n <button *ngIf="!this.documentDefinition.readOnly" class="btn btn-secondary btn-space mr-0"\n (click)="openDossierRemoveModal()">\n <i class="icon mdi mdi-delete"></i>&nbsp;\n {{ \'Remove document definition\' | translate }}\n </button>\n </div>\n <div class="clearfix"></div>\n <valtimo-widget *ngIf="documentDefinition">\n <div class="bg-light dossier-header">\n <h3 class="dossier-title">{{ documentDefinition.schema.title }}\n <div *ngIf="documentDefinition.readOnly" class="pull-right">\n <span class="badge badge-pill badge-info increase-size">Read-only</span>\n </div>\n </h3>\n </div>\n <div class="row bg-white mt-5 mb-2 pl-2 pr-2">\n <div class="col-5">\n <h2>{{ \'document definition\' | translate }}</h2>\n </div>\n <div class="col-5 offset-2">\n <h2>Connected processes</h2>\n </div>\n </div>\n <div class="row bg-white mb-5 pb-4 pl-2 pr-2">\n <div class="col-5 bg-red">\n <textarea class="w-100 dossier-schema" rows="25" disabled>{{ documentDefinition | json }}\n </textarea>\n </div>\n <div class="col-5 offset-2 bg-blue">\n <div class="input-group mb-5"\n *ngFor="let processDocumentDefinition of processDocumentDefinitions">\n <div class="input-group-prepend w-75">\n <button class="btn btn-danger" (click)="deleteProcessDocumentDefinition(processDocumentDefinition)"\n data-toggle="tooltip" data-placement="left" title="Delete this connected process">\n <i class="fa fa-trash"></i>\n </button>\n <input class="form-control"\n [value]="processDocumentDefinition.processName ? processDocumentDefinition.processName\n : \'\' + \' (\' + processDocumentDefinition.id.processDefinitionKey + \')\'"\n type="text"\n disabled\n />\n </div>\n <div class="row mb-2 mt-2">\n <label class="custom-control custom-checkbox custom-control-inline pl-6 mr-5">\n <input\n class="custom-control-input"\n type="checkbox"\n [checked]="processDocumentDefinition.canInitializeDocument"\n disabled\n /><span class="custom-control-label custom-control-color">Init document?</span>\n </label>\n <label class="custom-control custom-checkbox custom-control-inline pl-6">\n <input\n class="custom-control-input"\n type="checkbox"\n [checked]="processDocumentDefinition.startableByUser"\n disabled\n /><span class="custom-control-label custom-control-color">{{ \'Startable by user\' | translate }}?</span>\n </label>\n </div>\n </div>\n <div class="text-right mt-5 mb-5">\n <button class="btn btn-primary" (click)="openDossierConnectModal()">\n <i class="icon mdi mdi-plus"></i> &nbsp; Connect process\n </button>\n </div>\n <valtimo-extension\n module="dossier-management"\n page="dossier"\n section="openzaak-zaaktype-link"\n ></valtimo-extension>\n <valtimo-extension\n module="dossier-management"\n page="dossier"\n section="connector-link"\n ></valtimo-extension>\n </div>\n </div>\n </valtimo-widget>\n\n <valtimo-dossier-management-connect-modal\n #dossierConnectModal\n (reloadProcessDocumentDefinitions)="loadProcessDocumentDefinitions()"\n ></valtimo-dossier-management-connect-modal>\n <valtimo-dossier-management-remove-modal #dossierRemoveModal></valtimo-dossier-management-remove-modal>\n </div>\n\n</div>\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 */.dossier-header{border-bottom:1px solid #dee2e6;height:80px;padding-left:18px;padding-right:18px;padding-top:21px}.dossier-title{margin-bottom:7px;margin-top:0}.row{margin:0}.dossier-schema{resize:none}']}]}],v.ctorParameters=function(){return[{type:a.DocumentService},{type:d.ActivatedRoute},{type:s.AlertService}]},v.propDecorators={dossierConnectModal:[{type:t.ViewChild,args:["dossierConnectModal"]}],dossierRemoveModal:[{type:t.ViewChild,args:["dossierRemoveModal"]}]};var D=u;D.locale(localStorage.getItem("langKey")||"");var y=function(){function e(e,n){this.documentService=e,this.router=n,this.dossiers=[],this.pagination={collectionSize:0,page:1,size:10,maxPaginationItemSize:5},this.pageParam=0,this.dossierFields=[{key:"schema.title",label:"Title"},{key:"createdOn",label:"Created On"},{key:"readOnly",label:"Read-only"}],this.showModal$=new p.BehaviorSubject(!1)}return e.prototype.paginationClicked=function(e){this.pageParam=e-1,this.getDocumentDefinitions()},e.prototype.paginationSet=function(){this.getDocumentDefinitions()},e.prototype.redirectToDetails=function(e){this.router.navigate(["/dossier-management/dossier",e.id.name])},e.prototype.getDocumentDefinitions=function(){var e=this;this.documentService.queryDefinitions({page:this.pageParam,size:this.pagination.size}).subscribe((function(n){e.pagination.collectionSize=n.totalElements,e.dossiers=n.content,e.dossiers.map((function(e){e.createdOn=D(e.createdOn).format("DD MMM YYYY HH:mm")}))}))},e.prototype.showModal=function(){this.showModal$.next(!0)},e}();y.decorators=[{type:t.Component,args:[{selector:"valtimo-dossier-management-list",template:'\x3c!--\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 --\x3e\n\n<div class="main-content pt-0">\n <div class="container-fluid">\n <div class="btn-group mt-m3px mb-3 float-right">\n <button class="btn btn-secondary btn-space mr-0" (click)="showModal()">\n <i class="icon mdi mdi-upload"></i>&nbsp;\n {{ \'Upload document definition\' | translate }}\n </button>\n </div>\n <div class="clearfix"></div>\n <valtimo-widget>\n <valtimo-list\n [items]="dossiers"\n [fields]="dossierFields"\n [header]="true"\n [viewMode]="true"\n [isSearchable]="true"\n [pagination]="pagination"\n paginationIdentifier="dossierManagementList"\n (paginationClicked)="paginationClicked($event)"\n (paginationSet)="paginationSet()"\n (rowClicked)="redirectToDetails($event)"\n >\n <div header>\n <h3 class="list-header-title">{{ \'Dossiers\' | translate }}</h3>\n <h5 class="list-header-description">{{ \'Overview of all Dossiers\' | translate }}</h5>\n </div>\n </valtimo-list>\n </valtimo-widget>\n </div>\n</div>\n\n<valtimo-dossier-management-upload\n [show$]="showModal$"\n (definitionUploaded)="paginationSet()"\n></valtimo-dossier-management-upload>\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 */']}]}],y.ctorParameters=function(){return[{type:a.DocumentService},{type:d.Router}]};var S={title:"Dossiers",roles:[h.ROLE_ADMIN]},w={title:"Dossier details",roles:[h.ROLE_ADMIN]},x=[{path:"dossier-management",component:y,canActivate:[m.AuthGuardService],data:S},{path:"dossier-management/dossier/:name",component:v,canActivate:[m.AuthGuardService],data:w}],I=function(){};I.decorators=[{type:t.NgModule,args:[{imports:[d.RouterModule.forRoot(x)],exports:[d.RouterModule],declarations:[]}]}];var L=function(){function e(e,n,i){this.documentService=e,this.translateService=n,this.menuService=i,this.definitionUploaded=new t.EventEmitter,this.clear$=new p.Subject,this.jsonString$=new p.BehaviorSubject(""),this.error$=new p.BehaviorSubject(""),this.disabled$=new p.BehaviorSubject(!1),this.file$=new p.BehaviorSubject(void 0)}return e.prototype.ngAfterViewInit=function(){this.openShowSubscription(),this.openFileSubscription()},e.prototype.ngOnDestroy=function(){this.showSubscription.unsubscribe(),this.fileSubscription.unsubscribe(),this.closeErrorSubscription()},e.prototype.setFile=function(e){this.clearError(),this.file$.next(e)},e.prototype.uploadDefinition=function(){var e=this;this.disable(),this.jsonString$.pipe(f.switchMap((function(n){return e.documentService.createDocumentDefinition(new h.DocumentDefinitionCreateRequest(n)).pipe(f.tap((function(){e.closeErrorSubscription(),e.clearError(),e.enable(),e.hideModal(),e.menuService.reload(),e.definitionUploaded.emit()}),(function(){e.openErrorSubscription("dropzone.error.invalidDocDef"),e.enable()})))})),f.take(1)).subscribe()},e.prototype.openErrorSubscription=function(e){var n=this;this.closeErrorSubscription(),this.errorSubscription=this.translateService.stream(e).subscribe((function(e){n.error$.next(e)}))},e.prototype.closeErrorSubscription=function(){this.errorSubscription&&this.errorSubscription.unsubscribe()},e.prototype.clearError=function(){this.error$.next("")},e.prototype.openFileSubscription=function(){var e=this;this.fileSubscription=this.file$.subscribe((function(n){if(n){var t=new FileReader;t.onloadend=function(){var n=t.result.toString();e.stringIsValidJson(n)&&e.jsonString$.next(n)},t.readAsText(n)}else e.clearJsonString()}))},e.prototype.openShowSubscription=function(){var e=this;this.showSubscription=this.show$.subscribe((function(n){n?e.showModal():e.hideModal(),e.clearJsonString(),e.clearError(),e.clearDropzone()}))},e.prototype.clearJsonString=function(){this.jsonString$.next("")},e.prototype.clearDropzone=function(){this.clear$.next()},e.prototype.showModal=function(){this.modal.show()},e.prototype.hideModal=function(){this.modal.hide()},e.prototype.stringIsValidJson=function(e){try{JSON.parse(e)}catch(e){return!1}return!0},e.prototype.disable=function(){this.disabled$.next(!0)},e.prototype.enable=function(){this.disabled$.next(!1)},e}();L.decorators=[{type:t.Component,args:[{selector:"valtimo-dossier-management-upload",template:'<valtimo-modal #uploadDefinitionModal [title]="\'Upload document definition\' | translate" showFooter="true">\n <div class="mt-2" body>\n <valtimo-dropzone\n [clear$]="clear$"\n (fileSelected)="setFile($event)"\n [disabled]="disabled$ | async"\n [subtitle]="\'dropzone.jsonDocDef\' | translate"\n [externalError$]="error$"\n ></valtimo-dropzone>\n </div>\n <div footer>\n <ng-container *ngIf="(jsonString$ | async) && !(error$ | async); else pleaseSelect">\n <button [disabled]="disabled$ | async" class="btn btn-primary" (click)="uploadDefinition()">\n {{ \'Upload\' | translate }}\n </button>\n </ng-container>\n </div>\n</valtimo-modal>\n\n<ng-template #pleaseSelect>\n <button class="btn btn-primary" [disabled]="true">\n {{ \'Select a document definition\' | translate }}\n </button>\n</ng-template>\n',styles:[""]}]}],L.ctorParameters=function(){return[{type:a.DocumentService},{type:o.TranslateService},{type:s.MenuService}]},L.propDecorators={show$:[{type:t.Input}],definitionUploaded:[{type:t.Output}],modal:[{type:t.ViewChild,args:["uploadDefinitionModal"]}]};var M=function(){function e(e,n,t,i,o){this.documentService=e,this.toasterService=n,this.router=t,this.translateService=i,this.menuService=o,this.documentDefinition=null,this.errors=[]}return e.prototype.openModal=function(e){this.documentDefinition=e,this.modal.show()},e.prototype.removeDocumentDefinition=function(){var e=this;this.documentService.removeDocumentDefinition(this.documentDefinition.id.name).subscribe((function(){e.menuService.reload(),e.router.navigate(["/dossier-management"]),e.toasterService.success(e.translateService.instant("remove-document-definition-success"))}),(function(n){e.errors=n.errors}))},e}();M.decorators=[{type:t.Component,args:[{selector:"valtimo-dossier-management-remove-modal",template:'\x3c!--\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 --\x3e\n\n<valtimo-modal\n #documentDefinitionRemoveModal\n elementId="documentDefinitionRemoveModal"\n [title]="documentDefinition ? documentDefinition.schema.title : \'Document definition\'"\n subtitle="{{ \'Remove document definition\' | translate }}"\n showFooter="true"\n>\n <div body *ngIf="documentDefinition">\n\n <div class="alert alert-contrast alert-danger mt-2" role="alert">\n <div class="icon"><span class="mdi mdi-alert-triangle"></span></div>\n <div class="message" [innerHTML]="\'remove-document-definition-confirmation\' | translate">\n </div>\n </div>\n <div *ngIf="errors.length > 0" class="alert alert-danger pt-5 pb-5 mb-2">\n <ol>\n <li *ngFor="let error of errors">\n {{error}}\n </li>\n </ol>\n </div>\n </div>\n <div footer>\n <button (click)="removeDocumentDefinition()" class="btn btn-primary" data-dismiss="modal">\n {{ \'remove-document-definition-confirmation-button\' | translate }}\n </button>\n </div>\n</valtimo-modal>\n',styles:['/*!\n * Copyright 2015-2020 Ritense BV, the Netherlands.\n *\n * Licensed under EUPL, Version 1.2 (the "License");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an "AS IS" basis,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */']}]}],M.ctorParameters=function(){return[{type:a.DocumentService},{type:l.ToastrService},{type:d.Router},{type:o.TranslateService},{type:s.MenuService}]},M.propDecorators={modal:[{type:t.ViewChild,args:["documentDefinitionRemoveModal"]}]};var N=function(){};N.decorators=[{type:t.NgModule,args:[{declarations:[y,v,g,M,L],imports:[n.CommonModule,s.WidgetModule,s.DropzoneModule,s.ListModule,I,i.FormsModule,o.TranslateModule,s.ModalModule,r.ConfigModule,b.NgbTooltipModule],exports:[],entryComponents:[r.ExtensionComponent]}]}],e.DossierManagementListComponent=y,e.DossierManagementModule=N,e.ɵa=v,e.ɵb=g,e.ɵc=M,e.ɵd=L,e.ɵe=I,Object.defineProperty(e,"__esModule",{value:!0})}));
1
+ !function(e,n){"object"==typeof exports&&"undefined"!=typeof module?n(exports,require("@angular/common"),require("@angular/core"),require("@angular/forms"),require("@ngx-translate/core"),require("@valtimo/components"),require("@valtimo/config"),require("@valtimo/document"),require("@valtimo/process"),require("ngx-toastr"),require("@angular/router"),require("moment"),require("rxjs"),require("@valtimo/security"),require("rxjs/operators"),require("@ng-bootstrap/ng-bootstrap")):"function"==typeof define&&define.amd?define("@valtimo/dossier-management",["exports","@angular/common","@angular/core","@angular/forms","@ngx-translate/core","@valtimo/components","@valtimo/config","@valtimo/document","@valtimo/process","ngx-toastr","@angular/router","moment","rxjs","@valtimo/security","rxjs/operators","@ng-bootstrap/ng-bootstrap"],n):n(((e=e||self).valtimo=e.valtimo||{},e.valtimo["dossier-management"]={}),e.ng.common,e.ng.core,e.ng.forms,e.core$1,e.components,e.config,e.document,e.process,e.ngxToastr,e.ng.router,e.moment,e.rxjs,e.security,e.rxjs.operators,e.ngBootstrap)}(this,(function(e,n,t,i,o,s,r,a,c,l,d,u,p,m,h,f){"use strict";var b=function(){function e(e,n,i){this.processService=e,this.documentService=n,this.toasterService=i,this.documentDefinition=null,this.newDocumentProcessDefinition=null,this.newDocumentProcessDefinitionInit=!0,this.newDocumentProcessDefinitionStartableByUser=!1,this.processDocumentDefinitionExists={},this.reloadProcessDocumentDefinitions=new t.EventEmitter}return e.prototype.loadProcessDocumentDefinitions=function(){var e=this;this.processDocumentDefinitionExists={},this.documentService.findProcessDocumentDefinitions(this.documentDefinition.id.name).subscribe((function(n){n.forEach((function(n){e.processDocumentDefinitionExists[n.id.processDefinitionKey]=!0}))}))},e.prototype.loadProcessDefinitions=function(){var e=this;this.processService.getProcessDefinitions().subscribe((function(n){e.processDefinitions=n}))},e.prototype.ngOnInit=function(){this.loadProcessDefinitions()},e.prototype.openModal=function(e){this.documentDefinition=e,this.newDocumentProcessDefinition=null,this.newDocumentProcessDefinitionInit=!0,this.newDocumentProcessDefinitionStartableByUser=!1,this.loadProcessDocumentDefinitions(),this.modal.show()},e.prototype.submit=function(){var e=this,n={canInitializeDocument:this.newDocumentProcessDefinitionInit,startableByUser:this.newDocumentProcessDefinitionStartableByUser,documentDefinitionName:this.documentDefinition.id.name,processDefinitionKey:this.newDocumentProcessDefinition.key};this.documentService.createProcessDocumentDefinition(n).subscribe((function(){e.toasterService.success("Successfully added new process document definition"),e.reloadProcessDocumentDefinitions.emit()}),(function(n){e.toasterService.error("Failed to add new process document definition")}))},e}();b.decorators=[{type:t.Component,args:[{selector:"valtimo-dossier-management-connect-modal",template:'\x3c!--\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 --\x3e\n\n<valtimo-modal\n #dossierConnectModal\n elementId="dossierConnectModal"\n [title]="documentDefinition ? documentDefinition.schema.title : \'Document definition\'"\n subtitle="Connect document definition to process definition"\n showFooter="true"\n>\n <div body *ngIf="documentDefinition">\n <p>\n {{ \'Select process definition for document definition\' | translate }}\n <strong>{{ documentDefinition.id.name }} *</strong>\n </p>\n <div class="input-group mb-3 align-items-center">\n <select class="form-control" [(ngModel)]="newDocumentProcessDefinition">\n <option [ngValue]="null">Select process definition</option>\n <option\n *ngFor="let processDefinition of processDefinitions"\n [disabled]="processDocumentDefinitionExists[processDefinition.key]"\n [ngValue]="processDefinition"\n >\n {{ processDefinition.name }} ({{ processDefinition.key }})\n </option>\n </select>\n </div>\n <p>\n {{ \'Select options for the selected process\' | translate }}\n </p>\n <div class="input-group mb-3 align-items-center">\n <label class="custom-control custom-checkbox custom-control-inline pl-6 mb-0">\n <input\n class="custom-control-input"\n type="checkbox"\n [(ngModel)]="newDocumentProcessDefinitionInit"\n /><span class="custom-control-label custom-control-color">Init document?</span>\n </label>\n <label\n class="custom-control custom-checkbox custom-control-inline ml-2 pl-6 mb-0"\n placement="right"\n ngbTooltip="{{ \'Startable by user tooltip\' | translate }}"\n >\n <input\n class="custom-control-input"\n type="checkbox"\n [(ngModel)]="newDocumentProcessDefinitionStartableByUser"\n /><span class="custom-control-label custom-control-color"\n >{{ \'Startable by user\' | translate }}?</span\n >\n </label>\n </div>\n </div>\n <div footer>\n <button\n (click)="submit()"\n class="btn btn-primary"\n data-dismiss="modal"\n [disabled]="!newDocumentProcessDefinition"\n >\n {{ \'Save\' | translate }}\n </button>\n </div>\n</valtimo-modal>\n',styles:['/*!\n * Copyright 2015-2020 Ritense BV, the Netherlands.\n *\n * Licensed under EUPL, Version 1.2 (the "License");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an "AS IS" basis,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */']}]}],b.ctorParameters=function(){return[{type:c.ProcessService},{type:a.DocumentService},{type:l.ToastrService}]},b.propDecorators={reloadProcessDocumentDefinitions:[{type:t.Output}],modal:[{type:t.ViewChild,args:["dossierConnectModal"]}]};var g=function(){function e(e,n,t){this.documentService=e,this.route=n,this.alertService=t,this.documentDefinitionName=null,this.documentDefinition=null,this.processDocumentDefinitions=[],this.documentDefinitionName=this.route.snapshot.paramMap.get("name")}return e.prototype.ngOnInit=function(){this.loadDocumentDefinition(),this.loadProcessDocumentDefinitions()},e.prototype.loadProcessDocumentDefinitions=function(){var e=this;this.documentService.findProcessDocumentDefinitions(this.documentDefinitionName).subscribe((function(n){e.processDocumentDefinitions=n}))},e.prototype.loadDocumentDefinition=function(){var e=this;this.documentService.getDocumentDefinition(this.documentDefinitionName).subscribe((function(n){e.documentDefinition=n}))},e.prototype.openDossierConnectModal=function(){this.dossierConnectModal.openModal(this.documentDefinition)},e.prototype.openDossierRemoveModal=function(){this.dossierRemoveModal.openModal(this.documentDefinition)},e.prototype.deleteProcessDocumentDefinition=function(e){var n=this;this.documentService.deleteProcessDocumentDefinition({documentDefinitionName:e.id.documentDefinitionId.name,processDefinitionKey:e.id.processDefinitionKey,canInitializeDocument:e.canInitializeDocument,startableByUser:e.startableByUser}).subscribe((function(){n.alertService.success("Successfully deleted process document definition"),n.loadProcessDocumentDefinitions()}),(function(){n.alertService.error("Failed to delete process document definition")}))},e.prototype.downloadDefinition=function(){var e=this.documentDefinition,n="data:text/json;charset=utf-8,"+encodeURIComponent(JSON.stringify(e.schema,null,2)),t=document.getElementById("downloadAnchorElement");t.setAttribute("href",n),t.setAttribute("download",e.id.name+"-v"+e.id.version+".json"),t.click()},e}();g.decorators=[{type:t.Component,args:[{selector:"valtimo-dossier-management-detail",template:'\x3c!--\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 --\x3e\n\n<div class="main-content pt-0">\n <div class="container-fluid">\n <div *ngIf="documentDefinition" class="btn-group mt-m3px mb-3 float-right">\n <button class="btn btn-primary btn-space" (click)="downloadDefinition()">\n <i class="icon mdi mdi-download"></i>&nbsp;\n {{ \'Download document definition\' | translate }}\n </button>\n <a id="downloadAnchorElement" style="display: none"></a>\n <button\n *ngIf="!this.documentDefinition.readOnly"\n class="btn btn-secondary btn-space mr-0"\n (click)="openDossierRemoveModal()"\n >\n <i class="icon mdi mdi-delete"></i>&nbsp;\n {{ \'Remove document definition\' | translate }}\n </button>\n </div>\n <div class="clearfix"></div>\n <valtimo-widget *ngIf="documentDefinition">\n <div class="bg-light dossier-header">\n <h3 class="dossier-title">\n {{ documentDefinition.schema.title }}\n <div *ngIf="documentDefinition.readOnly" class="pull-right">\n <span class="badge badge-pill badge-info increase-size">Read-only</span>\n </div>\n </h3>\n </div>\n <div class="row bg-white mt-5 mb-2 pl-2 pr-2">\n <div class="col-5">\n <h2>{{ \'document definition\' | translate }}</h2>\n </div>\n <div class="col-5 offset-2">\n <h2>Connected processes</h2>\n </div>\n </div>\n <div class="row bg-white mb-5 pb-4 pl-2 pr-2">\n <div class="col-5 bg-red">\n <textarea class="w-100 dossier-schema" rows="25" disabled\n >{{ documentDefinition | json }}\n </textarea>\n </div>\n <div class="col-5 offset-2 bg-blue">\n <div\n class="input-group mb-5"\n *ngFor="let processDocumentDefinition of processDocumentDefinitions"\n >\n <div class="input-group-prepend w-75">\n <button\n class="btn btn-danger"\n (click)="deleteProcessDocumentDefinition(processDocumentDefinition)"\n data-toggle="tooltip"\n data-placement="left"\n title="Delete this connected process"\n >\n <i class="fa fa-trash"></i>\n </button>\n <input\n class="form-control"\n [value]="\n processDocumentDefinition.processName\n ? processDocumentDefinition.processName\n : \'\' + \' (\' + processDocumentDefinition.id.processDefinitionKey + \')\'\n "\n type="text"\n disabled\n />\n </div>\n <div class="row mb-2 mt-2">\n <label class="custom-control custom-checkbox custom-control-inline pl-6 mr-5">\n <input\n class="custom-control-input"\n type="checkbox"\n [checked]="processDocumentDefinition.canInitializeDocument"\n disabled\n /><span class="custom-control-label custom-control-color">Init document?</span>\n </label>\n <label class="custom-control custom-checkbox custom-control-inline pl-6">\n <input\n class="custom-control-input"\n type="checkbox"\n [checked]="processDocumentDefinition.startableByUser"\n disabled\n /><span class="custom-control-label custom-control-color"\n >{{ \'Startable by user\' | translate }}?</span\n >\n </label>\n </div>\n </div>\n <div class="text-right mt-5 mb-5">\n <button class="btn btn-primary" (click)="openDossierConnectModal()">\n <i class="icon mdi mdi-plus"></i> &nbsp; Connect process\n </button>\n </div>\n <valtimo-extension\n module="dossier-management"\n page="dossier"\n section="right-panel"\n ></valtimo-extension>\n </div>\n </div>\n </valtimo-widget>\n\n <valtimo-dossier-management-connect-modal\n #dossierConnectModal\n (reloadProcessDocumentDefinitions)="loadProcessDocumentDefinitions()"\n ></valtimo-dossier-management-connect-modal>\n <valtimo-dossier-management-remove-modal\n #dossierRemoveModal\n ></valtimo-dossier-management-remove-modal>\n </div>\n</div>\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 */.dossier-header{border-bottom:1px solid #dee2e6;height:80px;padding-left:18px;padding-right:18px;padding-top:21px}.dossier-title{margin-bottom:7px;margin-top:0}.row{margin:0}.dossier-schema{resize:none}']}]}],g.ctorParameters=function(){return[{type:a.DocumentService},{type:d.ActivatedRoute},{type:s.AlertService}]},g.propDecorators={dossierConnectModal:[{type:t.ViewChild,args:["dossierConnectModal"]}],dossierRemoveModal:[{type:t.ViewChild,args:["dossierRemoveModal"]}]};var v=u;v.locale(localStorage.getItem("langKey")||"");var D=function(){function e(e,n){this.documentService=e,this.router=n,this.dossiers=[],this.pagination={collectionSize:0,page:1,size:10,maxPaginationItemSize:5},this.pageParam=0,this.dossierFields=[{key:"schema.title",label:"Title"},{key:"createdOn",label:"Created On"},{key:"readOnly",label:"Read-only"}],this.showModal$=new p.BehaviorSubject(!1)}return e.prototype.paginationClicked=function(e){this.pageParam=e-1,this.getDocumentDefinitions()},e.prototype.paginationSet=function(){this.getDocumentDefinitions()},e.prototype.redirectToDetails=function(e){this.router.navigate(["/dossier-management/dossier",e.id.name])},e.prototype.getDocumentDefinitions=function(){var e=this;this.documentService.queryDefinitions({page:this.pageParam,size:this.pagination.size}).subscribe((function(n){e.pagination.collectionSize=n.totalElements,e.dossiers=n.content,e.dossiers.map((function(e){e.createdOn=v(e.createdOn).format("DD MMM YYYY HH:mm")}))}))},e.prototype.showModal=function(){this.showModal$.next(!0)},e}();D.decorators=[{type:t.Component,args:[{selector:"valtimo-dossier-management-list",template:'\x3c!--\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 --\x3e\n\n<div class="main-content pt-0">\n <div class="container-fluid">\n <div class="btn-group mt-m3px mb-3 float-right">\n <button class="btn btn-secondary btn-space mr-0" (click)="showModal()">\n <i class="icon mdi mdi-upload"></i>&nbsp;\n {{ \'Upload document definition\' | translate }}\n </button>\n </div>\n <div class="clearfix"></div>\n <valtimo-widget>\n <valtimo-list\n [items]="dossiers"\n [fields]="dossierFields"\n [header]="true"\n [viewMode]="true"\n [isSearchable]="true"\n [pagination]="pagination"\n paginationIdentifier="dossierManagementList"\n (paginationClicked)="paginationClicked($event)"\n (paginationSet)="paginationSet()"\n (rowClicked)="redirectToDetails($event)"\n >\n <div header>\n <h3 class="list-header-title">{{ \'Dossiers\' | translate }}</h3>\n <h5 class="list-header-description">{{ \'Overview of all Dossiers\' | translate }}</h5>\n </div>\n </valtimo-list>\n </valtimo-widget>\n </div>\n</div>\n\n<valtimo-dossier-management-upload\n [show$]="showModal$"\n (definitionUploaded)="paginationSet()"\n></valtimo-dossier-management-upload>\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 */']}]}],D.ctorParameters=function(){return[{type:a.DocumentService},{type:d.Router}]};var y={title:"Dossiers",roles:[r.ROLE_ADMIN]},S={title:"Dossier details",roles:[r.ROLE_ADMIN]},w=[{path:"dossier-management",component:D,canActivate:[m.AuthGuardService],data:y},{path:"dossier-management/dossier/:name",component:g,canActivate:[m.AuthGuardService],data:S}],x=function(){};x.decorators=[{type:t.NgModule,args:[{imports:[d.RouterModule.forRoot(w)],exports:[d.RouterModule],declarations:[]}]}];var I=function(){function e(e,n,i){this.documentService=e,this.translateService=n,this.menuService=i,this.definitionUploaded=new t.EventEmitter,this.clear$=new p.Subject,this.jsonString$=new p.BehaviorSubject(""),this.error$=new p.BehaviorSubject(""),this.disabled$=new p.BehaviorSubject(!1),this.file$=new p.BehaviorSubject(void 0)}return e.prototype.ngAfterViewInit=function(){this.openShowSubscription(),this.openFileSubscription()},e.prototype.ngOnDestroy=function(){this.showSubscription.unsubscribe(),this.fileSubscription.unsubscribe(),this.closeErrorSubscription()},e.prototype.setFile=function(e){this.clearError(),this.file$.next(e)},e.prototype.uploadDefinition=function(){var e=this;this.disable(),this.jsonString$.pipe(h.switchMap((function(n){return e.documentService.createDocumentDefinition(new a.DocumentDefinitionCreateRequest(n)).pipe(h.tap((function(){e.closeErrorSubscription(),e.clearError(),e.enable(),e.hideModal(),e.menuService.reload(),e.definitionUploaded.emit()}),(function(){e.openErrorSubscription("dropzone.error.invalidDocDef"),e.enable()})))})),h.take(1)).subscribe()},e.prototype.openErrorSubscription=function(e){var n=this;this.closeErrorSubscription(),this.errorSubscription=this.translateService.stream(e).subscribe((function(e){n.error$.next(e)}))},e.prototype.closeErrorSubscription=function(){this.errorSubscription&&this.errorSubscription.unsubscribe()},e.prototype.clearError=function(){this.error$.next("")},e.prototype.openFileSubscription=function(){var e=this;this.fileSubscription=this.file$.subscribe((function(n){if(n){var t=new FileReader;t.onloadend=function(){var n=t.result.toString();e.stringIsValidJson(n)&&e.jsonString$.next(n)},t.readAsText(n)}else e.clearJsonString()}))},e.prototype.openShowSubscription=function(){var e=this;this.showSubscription=this.show$.subscribe((function(n){n?e.showModal():e.hideModal(),e.clearJsonString(),e.clearError(),e.clearDropzone()}))},e.prototype.clearJsonString=function(){this.jsonString$.next("")},e.prototype.clearDropzone=function(){this.clear$.next()},e.prototype.showModal=function(){this.modal.show()},e.prototype.hideModal=function(){this.modal.hide()},e.prototype.stringIsValidJson=function(e){try{JSON.parse(e)}catch(e){return!1}return!0},e.prototype.disable=function(){this.disabled$.next(!0)},e.prototype.enable=function(){this.disabled$.next(!1)},e}();I.decorators=[{type:t.Component,args:[{selector:"valtimo-dossier-management-upload",template:'<valtimo-modal\n #uploadDefinitionModal\n [title]="\'Upload document definition\' | translate"\n showFooter="true"\n>\n <div class="mt-2" body>\n <valtimo-dropzone\n [clear$]="clear$"\n (fileSelected)="setFile($event)"\n [disabled]="disabled$ | async"\n [subtitle]="\'dropzone.jsonDocDef\' | translate"\n [externalError$]="error$"\n ></valtimo-dropzone>\n </div>\n <div footer>\n <ng-container *ngIf="(jsonString$ | async) && !(error$ | async); else pleaseSelect">\n <button [disabled]="disabled$ | async" class="btn btn-primary" (click)="uploadDefinition()">\n {{ \'Upload\' | translate }}\n </button>\n </ng-container>\n </div>\n</valtimo-modal>\n\n<ng-template #pleaseSelect>\n <button class="btn btn-primary" [disabled]="true">\n {{ \'Select a document definition\' | translate }}\n </button>\n</ng-template>\n',styles:[""]}]}],I.ctorParameters=function(){return[{type:a.DocumentService},{type:o.TranslateService},{type:s.MenuService}]},I.propDecorators={show$:[{type:t.Input}],definitionUploaded:[{type:t.Output}],modal:[{type:t.ViewChild,args:["uploadDefinitionModal"]}]};var L=function(){function e(e,n,t,i,o){this.documentService=e,this.toasterService=n,this.router=t,this.translateService=i,this.menuService=o,this.documentDefinition=null,this.errors=[]}return e.prototype.openModal=function(e){this.documentDefinition=e,this.modal.show()},e.prototype.removeDocumentDefinition=function(){var e=this;this.documentService.removeDocumentDefinition(this.documentDefinition.id.name).subscribe((function(){e.menuService.reload(),e.router.navigate(["/dossier-management"]),e.toasterService.success(e.translateService.instant("remove-document-definition-success"))}),(function(n){e.errors=n.errors}))},e}();L.decorators=[{type:t.Component,args:[{selector:"valtimo-dossier-management-remove-modal",template:'\x3c!--\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 --\x3e\n\n<valtimo-modal\n #documentDefinitionRemoveModal\n elementId="documentDefinitionRemoveModal"\n [title]="documentDefinition ? documentDefinition.schema.title : \'Document definition\'"\n subtitle="{{ \'Remove document definition\' | translate }}"\n showFooter="true"\n>\n <div body *ngIf="documentDefinition">\n <div class="alert alert-contrast alert-danger mt-2" role="alert">\n <div class="icon"><span class="mdi mdi-alert-triangle"></span></div>\n <div\n class="message"\n [innerHTML]="\'remove-document-definition-confirmation\' | translate"\n ></div>\n </div>\n <div *ngIf="errors.length > 0" class="alert alert-danger pt-5 pb-5 mb-2">\n <ol>\n <li *ngFor="let error of errors">\n {{ error }}\n </li>\n </ol>\n </div>\n </div>\n <div footer>\n <button (click)="removeDocumentDefinition()" class="btn btn-primary" data-dismiss="modal">\n {{ \'remove-document-definition-confirmation-button\' | translate }}\n </button>\n </div>\n</valtimo-modal>\n',styles:['/*!\n * Copyright 2015-2020 Ritense BV, the Netherlands.\n *\n * Licensed under EUPL, Version 1.2 (the "License");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an "AS IS" basis,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */']}]}],L.ctorParameters=function(){return[{type:a.DocumentService},{type:l.ToastrService},{type:d.Router},{type:o.TranslateService},{type:s.MenuService}]},L.propDecorators={modal:[{type:t.ViewChild,args:["documentDefinitionRemoveModal"]}]};var M=function(){};M.decorators=[{type:t.NgModule,args:[{declarations:[D,g,b,L,I],imports:[n.CommonModule,s.WidgetModule,s.DropzoneModule,s.ListModule,x,i.FormsModule,o.TranslateModule,s.ModalModule,r.ConfigModule,f.NgbTooltipModule],exports:[],entryComponents:[r.ExtensionComponent]}]}],e.DossierManagementListComponent=D,e.DossierManagementModule=M,e.ɵa=g,e.ɵb=b,e.ɵc=L,e.ɵd=I,e.ɵe=x,Object.defineProperty(e,"__esModule",{value:!0})}));
2
2
  //# sourceMappingURL=valtimo-dossier-management.umd.min.js.map