@eo-sdk/client 8.16.0-rc.1 → 8.16.0-rc.3

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 (41) hide show
  1. package/app/eo-client/inbox-state/inbox-state/inbox-state.component.d.ts +4 -5
  2. package/app/eo-framework/app-shell/app-bar/app-process/app-process.component.d.ts +7 -1
  3. package/app/eo-framework/inbox-details/inbox-details.component.d.ts +6 -5
  4. package/app/eo-framework/prepare-details/prepare-details.component.d.ts +4 -2
  5. package/app/eo-framework/process-form/process-form.component.d.ts +2 -0
  6. package/assets/_default/i18n/de.json +3 -3
  7. package/assets/_default/i18n/en.json +2 -2
  8. package/bundles/eo-sdk-client-projects-eo-sdk-core.umd.js +6 -6
  9. package/bundles/eo-sdk-client-projects-eo-sdk-core.umd.js.map +1 -1
  10. package/bundles/eo-sdk-client-projects-eo-sdk-core.umd.min.js +1 -1
  11. package/bundles/eo-sdk-client-projects-eo-sdk-core.umd.min.js.map +1 -1
  12. package/bundles/eo-sdk-client.umd.js +74 -33
  13. package/bundles/eo-sdk-client.umd.js.map +1 -1
  14. package/bundles/eo-sdk-client.umd.min.js +1 -1
  15. package/bundles/eo-sdk-client.umd.min.js.map +1 -1
  16. package/eo-sdk-client.d.ts +3 -3
  17. package/eo-sdk-client.metadata.json +1 -1
  18. package/esm2015/app/eo-client/about-state/about-state.component.js +3 -3
  19. package/esm2015/app/eo-client/inbox-state/inbox-state/inbox-state.component.js +16 -8
  20. package/esm2015/app/eo-framework/actions/actions/add-resubmission-action/add-resubmission-action.js +2 -2
  21. package/esm2015/app/eo-framework/actions/actions/add-subscription-action/add-subscription-action.js +2 -2
  22. package/esm2015/app/eo-framework/app-shell/app-bar/app-process/app-process.component.js +26 -4
  23. package/esm2015/app/eo-framework/form-elements/datetime/datepicker/datepicker.component.js +2 -2
  24. package/esm2015/app/eo-framework/inbox-details/inbox-details.component.js +13 -11
  25. package/esm2015/app/eo-framework/media/media.component.js +4 -3
  26. package/esm2015/app/eo-framework/prepare-details/prepare-details.component.js +10 -5
  27. package/esm2015/app/eo-framework/process-form/process-form.component.js +5 -2
  28. package/esm2015/app/eo-framework/ui/eo-dialog/eo-dialog.component.js +2 -2
  29. package/esm2015/app/eo-framework/ui/outside-click/outside-click.directive.js +3 -2
  30. package/esm2015/eo-sdk-client.js +4 -4
  31. package/esm2015/projects/eo-sdk/core/lib/service/capabilities/capabilities.model.js +1 -1
  32. package/esm2015/projects/eo-sdk/core/lib/service/capabilities/capabilities.service.js +2 -1
  33. package/esm2015/projects/eo-sdk/core/lib/service/dms/dms.service.js +5 -6
  34. package/fesm2015/eo-sdk-client-projects-eo-sdk-core.js +5 -5
  35. package/fesm2015/eo-sdk-client-projects-eo-sdk-core.js.map +1 -1
  36. package/fesm2015/eo-sdk-client.js +72 -31
  37. package/fesm2015/eo-sdk-client.js.map +1 -1
  38. package/package.json +2 -2
  39. package/projects/eo-sdk/core/lib/service/capabilities/capabilities.model.d.ts +4 -0
  40. package/projects/eo-sdk/core/lib/service/dms/dms.service.d.ts +2 -2
  41. package/projects/eo-sdk/core/package.json +1 -1
@@ -6,10 +6,10 @@ export class AboutStateComponent {
6
6
  this.http = http;
7
7
  this.userService = userService;
8
8
  this.config = config;
9
- this.__libraries__ = [{ "name": "@ag-grid-community/angular", "version": "22.1.2", "license": "MIT" }, { "name": "@ag-grid-community/client-side-row-model", "version": "22.1.1", "license": "MIT" }, { "name": "@ag-grid-community/core", "version": "22.1.1", "license": "MIT" }, { "name": "@ag-grid-community/csv-export", "version": "22.1.1", "license": "MIT" }, { "name": "@angular/animations", "version": "11.2.0", "license": "MIT" }, { "name": "@angular/cdk", "version": "11.2.0", "license": "MIT" }, { "name": "@angular/common", "version": "11.2.0", "license": "MIT" }, { "name": "@angular/compiler", "version": "11.2.0", "license": "MIT" }, { "name": "@angular/core", "version": "11.2.0", "license": "MIT" }, { "name": "@angular/forms", "version": "11.2.0", "license": "MIT" }, { "name": "@angular/platform-browser", "version": "11.2.0", "license": "MIT" }, { "name": "@angular/platform-browser-dynamic", "version": "11.2.0", "license": "MIT" }, { "name": "@angular/router", "version": "11.2.0", "license": "MIT" }, { "name": "@eo-sdk/core", "version": "8.16.0-rc.1", "license": "MIT" }, { "name": "@ngx-pwa/local-storage", "version": "11.1.0", "license": "MIT" }, { "name": "@ngx-translate/core", "version": "13.0.0", "license": "MIT" }, { "name": "@types/lodash", "version": "4.14.88", "license": "MIT" }, { "name": "core-js", "version": "2.5.7", "license": "MIT" }, { "name": "file-saver", "version": "2.0.5", "license": "MIT" }, { "name": "font-awesome", "version": "4.7.0", "license": "(OFL-1.1 AND MIT)" }, { "name": "keyboardevent-key-polyfill", "version": "1.1.0", "license": "CC0-1.0" }, { "name": "keycode-js", "version": "0.0.4", "license": "MIT" }, { "name": "mobile-drag-drop", "version": "2.2.0", "license": "MIT" }, { "name": "moment", "version": "2.22.2", "license": "MIT" }, { "name": "ngx-toastr", "version": "13.2.0", "license": "MIT" }, { "name": "primeicons", "version": "1.0.0-beta.6", "license": "MIT" }, { "name": "primeng", "version": "7.0.1", "license": "MIT" }, { "name": "reflect-metadata", "version": "0.1.10", "license": "Apache-2.0" }, { "name": "rxjs", "version": "6.6.3", "license": "Apache-2.0" }, { "name": "tslib", "version": "2.1.0", "license": "0BSD" }, { "name": "zone.js", "version": "0.10.3", "license": "MIT" }];
9
+ this.__libraries__ = [{ "name": "@ag-grid-community/angular", "version": "22.1.2", "license": "MIT" }, { "name": "@ag-grid-community/client-side-row-model", "version": "22.1.1", "license": "MIT" }, { "name": "@ag-grid-community/core", "version": "22.1.1", "license": "MIT" }, { "name": "@ag-grid-community/csv-export", "version": "22.1.1", "license": "MIT" }, { "name": "@angular/animations", "version": "11.2.0", "license": "MIT" }, { "name": "@angular/cdk", "version": "11.2.0", "license": "MIT" }, { "name": "@angular/common", "version": "11.2.0", "license": "MIT" }, { "name": "@angular/compiler", "version": "11.2.0", "license": "MIT" }, { "name": "@angular/core", "version": "11.2.0", "license": "MIT" }, { "name": "@angular/forms", "version": "11.2.0", "license": "MIT" }, { "name": "@angular/platform-browser", "version": "11.2.0", "license": "MIT" }, { "name": "@angular/platform-browser-dynamic", "version": "11.2.0", "license": "MIT" }, { "name": "@angular/router", "version": "11.2.0", "license": "MIT" }, { "name": "@eo-sdk/core", "version": "8.16.0-rc.3", "license": "MIT" }, { "name": "@ngx-pwa/local-storage", "version": "11.1.0", "license": "MIT" }, { "name": "@ngx-translate/core", "version": "13.0.0", "license": "MIT" }, { "name": "@types/lodash", "version": "4.14.88", "license": "MIT" }, { "name": "core-js", "version": "2.5.7", "license": "MIT" }, { "name": "file-saver", "version": "2.0.5", "license": "MIT" }, { "name": "font-awesome", "version": "4.7.0", "license": "(OFL-1.1 AND MIT)" }, { "name": "keyboardevent-key-polyfill", "version": "1.1.0", "license": "CC0-1.0" }, { "name": "keycode-js", "version": "0.0.4", "license": "MIT" }, { "name": "mobile-drag-drop", "version": "2.2.0", "license": "MIT" }, { "name": "moment", "version": "2.22.2", "license": "MIT" }, { "name": "ngx-toastr", "version": "13.2.0", "license": "MIT" }, { "name": "primeicons", "version": "1.0.0-beta.6", "license": "MIT" }, { "name": "primeng", "version": "7.0.1", "license": "MIT" }, { "name": "reflect-metadata", "version": "0.1.10", "license": "Apache-2.0" }, { "name": "rxjs", "version": "6.6.3", "license": "Apache-2.0" }, { "name": "tslib", "version": "2.1.0", "license": "0BSD" }, { "name": "zone.js", "version": "0.10.3", "license": "MIT" }];
10
10
  this.ctrl = {
11
11
  productName: 'yuuvis® RAD client',
12
- clientVersion: '8.16.0-rc.1'
12
+ clientVersion: '8.16.0-rc.3'
13
13
  };
14
14
  this.licenses = {
15
15
  'MIT': {
@@ -79,4 +79,4 @@ AboutStateComponent.ctorParameters = () => [
79
79
  { type: UserService },
80
80
  { type: Config }
81
81
  ];
82
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJvdXQtc3RhdGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9lby1jbGllbnQvYWJvdXQtc3RhdGUvYWJvdXQtc3RhdGUuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDeEMsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLHNCQUFzQixDQUFDO0FBQ2hELE9BQU8sRUFBQyxXQUFXLEVBQUUsTUFBTSxFQUFDLE1BQU0sY0FBYyxDQUFDO0FBT2pELE1BQU0sT0FBTyxtQkFBbUI7SUFxRDlCLFlBQW9CLElBQWdCLEVBQVUsV0FBd0IsRUFBVSxNQUFjO1FBQTFFLFNBQUksR0FBSixJQUFJLENBQVk7UUFBVSxnQkFBVyxHQUFYLFdBQVcsQ0FBYTtRQUFVLFdBQU0sR0FBTixNQUFNLENBQVE7UUFoRDlGLGtCQUFhLEdBQUcsQ0FBQyxFQUFDLE1BQU0sRUFBQyw0QkFBNEIsRUFBQyxTQUFTLEVBQUMsUUFBUSxFQUFDLFNBQVMsRUFBQyxLQUFLLEVBQUMsRUFBQyxFQUFDLE1BQU0sRUFBQywwQ0FBMEMsRUFBQyxTQUFTLEVBQUMsUUFBUSxFQUFDLFNBQVMsRUFBQyxLQUFLLEVBQUMsRUFBQyxFQUFDLE1BQU0sRUFBQyx5QkFBeUIsRUFBQyxTQUFTLEVBQUMsUUFBUSxFQUFDLFNBQVMsRUFBQyxLQUFLLEVBQUMsRUFBQyxFQUFDLE1BQU0sRUFBQywrQkFBK0IsRUFBQyxTQUFTLEVBQUMsUUFBUSxFQUFDLFNBQVMsRUFBQyxLQUFLLEVBQUMsRUFBQyxFQUFDLE1BQU0sRUFBQyxxQkFBcUIsRUFBQyxTQUFTLEVBQUMsUUFBUSxFQUFDLFNBQVMsRUFBQyxLQUFLLEVBQUMsRUFBQyxFQUFDLE1BQU0sRUFBQyxjQUFjLEVBQUMsU0FBUyxFQUFDLFFBQVEsRUFBQyxTQUFTLEVBQUMsS0FBSyxFQUFDLEVBQUMsRUFBQyxNQUFNLEVBQUMsaUJBQWlCLEVBQUMsU0FBUyxFQUFDLFFBQVEsRUFBQyxTQUFTLEVBQUMsS0FBSyxFQUFDLEVBQUMsRUFBQyxNQUFNLEVBQUMsbUJBQW1CLEVBQUMsU0FBUyxFQUFDLFFBQVEsRUFBQyxTQUFTLEVBQUMsS0FBSyxFQUFDLEVBQUMsRUFBQyxNQUFNLEVBQUMsZUFBZSxFQUFDLFNBQVMsRUFBQyxRQUFRLEVBQUMsU0FBUyxFQUFDLEtBQUssRUFBQyxFQUFDLEVBQUMsTUFBTSxFQUFDLGdCQUFnQixFQUFDLFNBQVMsRUFBQyxRQUFRLEVBQUMsU0FBUyxFQUFDLEtBQUssRUFBQyxFQUFDLEVBQUMsTUFBTSxFQUFDLDJCQUEyQixFQUFDLFNBQVMsRUFBQyxRQUFRLEVBQUMsU0FBUyxFQUFDLEtBQUssRUFBQyxFQUFDLEVBQUMsTUFBTSxFQUFDLG1DQUFtQyxFQUFDLFNBQVMsRUFBQyxRQUFRLEVBQUMsU0FBUyxFQUFDLEtBQUssRUFBQyxFQUFDLEVBQUMsTUFBTSxFQUFDLGlCQUFpQixFQUFDLFNBQVMsRUFBQyxRQUFRLEVBQUMsU0FBUyxFQUFDLEtBQUssRUFBQyxFQUFDLEVBQUMsTUFBTSxFQUFDLGNBQWMsRUFBQyxTQUFTLEVBQUMsYUFBYSxFQUFDLFNBQVMsRUFBQyxLQUFLLEVBQUMsRUFBQyxFQUFDLE1BQU0sRUFBQyx3QkFBd0IsRUFBQyxTQUFTLEVBQUMsUUFBUSxFQUFDLFNBQVMsRUFBQyxLQUFLLEVBQUMsRUFBQyxFQUFDLE1BQU0sRUFBQyxxQkFBcUIsRUFBQyxTQUFTLEVBQUMsUUFBUSxFQUFDLFNBQVMsRUFBQyxLQUFLLEVBQUMsRUFBQyxFQUFDLE1BQU0sRUFBQyxlQUFlLEVBQUMsU0FBUyxFQUFDLFNBQVMsRUFBQyxTQUFTLEVBQUMsS0FBSyxFQUFDLEVBQUMsRUFBQyxNQUFNLEVBQUMsU0FBUyxFQUFDLFNBQVMsRUFBQyxPQUFPLEVBQUMsU0FBUyxFQUFDLEtBQUssRUFBQyxFQUFDLEVBQUMsTUFBTSxFQUFDLFlBQVksRUFBQyxTQUFTLEVBQUMsT0FBTyxFQUFDLFNBQVMsRUFBQyxLQUFLLEVBQUMsRUFBQyxFQUFDLE1BQU0sRUFBQyxjQUFjLEVBQUMsU0FBUyxFQUFDLE9BQU8sRUFBQyxTQUFTLEVBQUMsbUJBQW1CLEVBQUMsRUFBQyxFQUFDLE1BQU0sRUFBQyw0QkFBNEIsRUFBQyxTQUFTLEVBQUMsT0FBTyxFQUFDLFNBQVMsRUFBQyxTQUFTLEVBQUMsRUFBQyxFQUFDLE1BQU0sRUFBQyxZQUFZLEVBQUMsU0FBUyxFQUFDLE9BQU8sRUFBQyxTQUFTLEVBQUMsS0FBSyxFQUFDLEVBQUMsRUFBQyxNQUFNLEVBQUMsa0JBQWtCLEVBQUMsU0FBUyxFQUFDLE9BQU8sRUFBQyxTQUFTLEVBQUMsS0FBSyxFQUFDLEVBQUMsRUFBQyxNQUFNLEVBQUMsUUFBUSxFQUFDLFNBQVMsRUFBQyxRQUFRLEVBQUMsU0FBUyxFQUFDLEtBQUssRUFBQyxFQUFDLEVBQUMsTUFBTSxFQUFDLFlBQVksRUFBQyxTQUFTLEVBQUMsUUFBUSxFQUFDLFNBQVMsRUFBQyxLQUFLLEVBQUMsRUFBQyxFQUFDLE1BQU0sRUFBQyxZQUFZLEVBQUMsU0FBUyxFQUFDLGNBQWMsRUFBQyxTQUFTLEVBQUMsS0FBSyxFQUFDLEVBQUMsRUFBQyxNQUFNLEVBQUMsU0FBUyxFQUFDLFNBQVMsRUFBQyxPQUFPLEVBQUMsU0FBUyxFQUFDLEtBQUssRUFBQyxFQUFDLEVBQUMsTUFBTSxFQUFDLGtCQUFrQixFQUFDLFNBQVMsRUFBQyxRQUFRLEVBQUMsU0FBUyxFQUFDLFlBQVksRUFBQyxFQUFDLEVBQUMsTUFBTSxFQUFDLE1BQU0sRUFBQyxTQUFTLEVBQUMsT0FBTyxFQUFDLFNBQVMsRUFBQyxZQUFZLEVBQUMsRUFBQyxFQUFDLE1BQU0sRUFBQyxPQUFPLEVBQUMsU0FBUyxFQUFDLE9BQU8sRUFBQyxTQUFTLEVBQUMsTUFBTSxFQUFDLEVBQUMsRUFBQyxNQUFNLEVBQUMsU0FBUyxFQUFDLFNBQVMsRUFBQyxRQUFRLEVBQUMsU0FBUyxFQUFDLEtBQUssRUFBQyxDQUFDLENBQUM7UUFJcDlELFNBQUksR0FBRztZQUNMLFdBQVcsRUFBRSxvQkFBb0I7WUFDakMsYUFBYSxFQUFFLGFBQWE7U0FDN0IsQ0FBQztRQUVGLGFBQVEsR0FBRztZQUNULEtBQUssRUFBRTtnQkFDTCxPQUFPLEVBQUUsS0FBSztnQkFDZCxLQUFLLEVBQUUsb0NBQW9DO2FBQzVDO1lBQ0QsWUFBWSxFQUFFO2dCQUNaLE9BQU8sRUFBRSxZQUFZO2dCQUNyQixLQUFLLEVBQUUsNENBQTRDO2FBQ3BEO1lBQ0Qsb0JBQW9CLEVBQUU7Z0JBQ3BCLE9BQU8sRUFBRSxjQUFjO2dCQUN2QixLQUFLLEVBQUUsNkNBQTZDO2FBQ3JEO1lBQ0QsU0FBUyxFQUFFO2dCQUNULE9BQU8sRUFBRSxTQUFTO2dCQUNsQixLQUFLLEVBQUUsb0RBQW9EO2FBQzVEO1lBQ0QsbUJBQW1CLEVBQUU7Z0JBQ25CLE9BQU8sRUFBRSxLQUFLO2dCQUNkLEtBQUssRUFBRSxvQ0FBb0M7YUFDNUM7WUFDRCxZQUFZLEVBQUU7Z0JBQ1osT0FBTyxFQUFFLDJCQUEyQjtnQkFDcEMsS0FBSyxFQUFFLGdDQUFnQzthQUN4QztZQUNELFlBQVksRUFBRTtnQkFDWixPQUFPLEVBQUUsWUFBWTthQUN0QjtZQUNELFNBQVMsRUFBRTtnQkFDVCxPQUFPLEVBQUUsMkRBQTJEO2dCQUNwRSxLQUFLLEVBQUUsc0VBQXNFO2FBQzlFO1lBQ0QsTUFBTSxFQUFFO2dCQUNOLE9BQU8sRUFBRSxpQkFBaUI7Z0JBQzFCLEtBQUssRUFBRSxxQ0FBcUM7YUFDN0M7U0FDRixDQUFDO1FBSUEsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBQ25CLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO1FBQ3hCLElBQUksQ0FBQyxlQUFlLEdBQUcsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLDJCQUEyQixFQUFFLEdBQUcsQ0FBQztRQUMzRSxJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLGtCQUFrQixDQUFDLENBQUM7SUFDM0QsQ0FBQztJQUVELGdCQUFnQjtRQUNkLE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLFlBQVksQ0FBQyxDQUFDO1FBQzlDLE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLGdCQUFnQixFQUFFLElBQUksQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ2hGLElBQUksQ0FBQyxJQUFJLG1DQUFPLElBQUksS0FBRSxJQUFJLEdBQUMsQ0FBQztJQUM5QixDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxXQUFXO2FBQ2IsS0FBSzthQUNMLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxZQUFZLENBQUMsQ0FBQztJQUN2RSxDQUFDO0lBRUQsU0FBUyxDQUFDLEtBQUssRUFBRSxJQUFJO1FBQ25CLE9BQU8sS0FBSyxDQUFDO0lBQ2YsQ0FBQzs7O1lBL0VGLFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUsZ0JBQWdCO2dCQUMxQiw2NkRBQTJDOzthQUU1Qzs7O1lBUE8sVUFBVTtZQUNWLFdBQVc7WUFBRSxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21wb25lbnR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQge0h0dHBDbGllbnR9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcclxuaW1wb3J0IHtVc2VyU2VydmljZSwgQ29uZmlnfSBmcm9tICdAZW8tc2RrL2NvcmUnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdlby1hYm91dC1zdGF0ZScsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2Fib3V0LXN0YXRlLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9hYm91dC1zdGF0ZS5jb21wb25lbnQuc2NzcyddXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBBYm91dFN0YXRlQ29tcG9uZW50IHtcclxuXHJcbiAgYmFja2dyb3VuZEltYWdlOiBzdHJpbmc7XHJcbiAgaGVhZGVyTG9nbzogc3RyaW5nO1xyXG4gIGxpY2Vuc2VTaG93OiBib29sZWFuO1xyXG4gIF9fbGlicmFyaWVzX18gPSBbe1wibmFtZVwiOlwiQGFnLWdyaWQtY29tbXVuaXR5L2FuZ3VsYXJcIixcInZlcnNpb25cIjpcIjIyLjEuMlwiLFwibGljZW5zZVwiOlwiTUlUXCJ9LHtcIm5hbWVcIjpcIkBhZy1ncmlkLWNvbW11bml0eS9jbGllbnQtc2lkZS1yb3ctbW9kZWxcIixcInZlcnNpb25cIjpcIjIyLjEuMVwiLFwibGljZW5zZVwiOlwiTUlUXCJ9LHtcIm5hbWVcIjpcIkBhZy1ncmlkLWNvbW11bml0eS9jb3JlXCIsXCJ2ZXJzaW9uXCI6XCIyMi4xLjFcIixcImxpY2Vuc2VcIjpcIk1JVFwifSx7XCJuYW1lXCI6XCJAYWctZ3JpZC1jb21tdW5pdHkvY3N2LWV4cG9ydFwiLFwidmVyc2lvblwiOlwiMjIuMS4xXCIsXCJsaWNlbnNlXCI6XCJNSVRcIn0se1wibmFtZVwiOlwiQGFuZ3VsYXIvYW5pbWF0aW9uc1wiLFwidmVyc2lvblwiOlwiMTEuMi4wXCIsXCJsaWNlbnNlXCI6XCJNSVRcIn0se1wibmFtZVwiOlwiQGFuZ3VsYXIvY2RrXCIsXCJ2ZXJzaW9uXCI6XCIxMS4yLjBcIixcImxpY2Vuc2VcIjpcIk1JVFwifSx7XCJuYW1lXCI6XCJAYW5ndWxhci9jb21tb25cIixcInZlcnNpb25cIjpcIjExLjIuMFwiLFwibGljZW5zZVwiOlwiTUlUXCJ9LHtcIm5hbWVcIjpcIkBhbmd1bGFyL2NvbXBpbGVyXCIsXCJ2ZXJzaW9uXCI6XCIxMS4yLjBcIixcImxpY2Vuc2VcIjpcIk1JVFwifSx7XCJuYW1lXCI6XCJAYW5ndWxhci9jb3JlXCIsXCJ2ZXJzaW9uXCI6XCIxMS4yLjBcIixcImxpY2Vuc2VcIjpcIk1JVFwifSx7XCJuYW1lXCI6XCJAYW5ndWxhci9mb3Jtc1wiLFwidmVyc2lvblwiOlwiMTEuMi4wXCIsXCJsaWNlbnNlXCI6XCJNSVRcIn0se1wibmFtZVwiOlwiQGFuZ3VsYXIvcGxhdGZvcm0tYnJvd3NlclwiLFwidmVyc2lvblwiOlwiMTEuMi4wXCIsXCJsaWNlbnNlXCI6XCJNSVRcIn0se1wibmFtZVwiOlwiQGFuZ3VsYXIvcGxhdGZvcm0tYnJvd3Nlci1keW5hbWljXCIsXCJ2ZXJzaW9uXCI6XCIxMS4yLjBcIixcImxpY2Vuc2VcIjpcIk1JVFwifSx7XCJuYW1lXCI6XCJAYW5ndWxhci9yb3V0ZXJcIixcInZlcnNpb25cIjpcIjExLjIuMFwiLFwibGljZW5zZVwiOlwiTUlUXCJ9LHtcIm5hbWVcIjpcIkBlby1zZGsvY29yZVwiLFwidmVyc2lvblwiOlwiOC4xNi4wLXJjLjFcIixcImxpY2Vuc2VcIjpcIk1JVFwifSx7XCJuYW1lXCI6XCJAbmd4LXB3YS9sb2NhbC1zdG9yYWdlXCIsXCJ2ZXJzaW9uXCI6XCIxMS4xLjBcIixcImxpY2Vuc2VcIjpcIk1JVFwifSx7XCJuYW1lXCI6XCJAbmd4LXRyYW5zbGF0ZS9jb3JlXCIsXCJ2ZXJzaW9uXCI6XCIxMy4wLjBcIixcImxpY2Vuc2VcIjpcIk1JVFwifSx7XCJuYW1lXCI6XCJAdHlwZXMvbG9kYXNoXCIsXCJ2ZXJzaW9uXCI6XCI0LjE0Ljg4XCIsXCJsaWNlbnNlXCI6XCJNSVRcIn0se1wibmFtZVwiOlwiY29yZS1qc1wiLFwidmVyc2lvblwiOlwiMi41LjdcIixcImxpY2Vuc2VcIjpcIk1JVFwifSx7XCJuYW1lXCI6XCJmaWxlLXNhdmVyXCIsXCJ2ZXJzaW9uXCI6XCIyLjAuNVwiLFwibGljZW5zZVwiOlwiTUlUXCJ9LHtcIm5hbWVcIjpcImZvbnQtYXdlc29tZVwiLFwidmVyc2lvblwiOlwiNC43LjBcIixcImxpY2Vuc2VcIjpcIihPRkwtMS4xIEFORCBNSVQpXCJ9LHtcIm5hbWVcIjpcImtleWJvYXJkZXZlbnQta2V5LXBvbHlmaWxsXCIsXCJ2ZXJzaW9uXCI6XCIxLjEuMFwiLFwibGljZW5zZVwiOlwiQ0MwLTEuMFwifSx7XCJuYW1lXCI6XCJrZXljb2RlLWpzXCIsXCJ2ZXJzaW9uXCI6XCIwLjAuNFwiLFwibGljZW5zZVwiOlwiTUlUXCJ9LHtcIm5hbWVcIjpcIm1vYmlsZS1kcmFnLWRyb3BcIixcInZlcnNpb25cIjpcIjIuMi4wXCIsXCJsaWNlbnNlXCI6XCJNSVRcIn0se1wibmFtZVwiOlwibW9tZW50XCIsXCJ2ZXJzaW9uXCI6XCIyLjIyLjJcIixcImxpY2Vuc2VcIjpcIk1JVFwifSx7XCJuYW1lXCI6XCJuZ3gtdG9hc3RyXCIsXCJ2ZXJzaW9uXCI6XCIxMy4yLjBcIixcImxpY2Vuc2VcIjpcIk1JVFwifSx7XCJuYW1lXCI6XCJwcmltZWljb25zXCIsXCJ2ZXJzaW9uXCI6XCIxLjAuMC1iZXRhLjZcIixcImxpY2Vuc2VcIjpcIk1JVFwifSx7XCJuYW1lXCI6XCJwcmltZW5nXCIsXCJ2ZXJzaW9uXCI6XCI3LjAuMVwiLFwibGljZW5zZVwiOlwiTUlUXCJ9LHtcIm5hbWVcIjpcInJlZmxlY3QtbWV0YWRhdGFcIixcInZlcnNpb25cIjpcIjAuMS4xMFwiLFwibGljZW5zZVwiOlwiQXBhY2hlLTIuMFwifSx7XCJuYW1lXCI6XCJyeGpzXCIsXCJ2ZXJzaW9uXCI6XCI2LjYuM1wiLFwibGljZW5zZVwiOlwiQXBhY2hlLTIuMFwifSx7XCJuYW1lXCI6XCJ0c2xpYlwiLFwidmVyc2lvblwiOlwiMi4xLjBcIixcImxpY2Vuc2VcIjpcIjBCU0RcIn0se1wibmFtZVwiOlwiem9uZS5qc1wiLFwidmVyc2lvblwiOlwiMC4xMC4zXCIsXCJsaWNlbnNlXCI6XCJNSVRcIn1dO1xyXG4gIHVzZXJMYW5nOiBzdHJpbmc7XHJcbiAgZG9jdTogeyBsaW5rOiBzdHJpbmcsIGxhYmVsOiBzdHJpbmcgfTtcclxuXHJcbiAgY3RybCA9IHtcclxuICAgIHByb2R1Y3ROYW1lOiAneXV1dmlzwq4gUkFEIGNsaWVudCcsXHJcbiAgICBjbGllbnRWZXJzaW9uOiAnOC4xNi4wLXJjLjEnXHJcbiAgfTtcclxuXHJcbiAgbGljZW5zZXMgPSB7XHJcbiAgICAnTUlUJzoge1xyXG4gICAgICAnbGFiZWwnOiAnTUlUJyxcclxuICAgICAgJ3VybCc6ICdodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUJ1xyXG4gICAgfSxcclxuICAgICdBcGFjaGUtMi4wJzoge1xyXG4gICAgICAnbGFiZWwnOiAnQXBhY2hlIDIuMCcsXHJcbiAgICAgICd1cmwnOiAnaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wJ1xyXG4gICAgfSxcclxuICAgICdCU0QtMy1DbGF1c2UtQ2xlYXInOiB7XHJcbiAgICAgICdsYWJlbCc6ICdCU0QgMy1DbGF1c2UnLFxyXG4gICAgICAndXJsJzogJ2h0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9CU0QtMy1DbGF1c2UnXHJcbiAgICB9LFxyXG4gICAgJ0NDMC0xLjAnOiB7XHJcbiAgICAgICdsYWJlbCc6ICdDQzAgMS4wJyxcclxuICAgICAgJ3VybCc6ICdodHRwczovL2NyZWF0aXZlY29tbW9ucy5vcmcvcHVibGljZG9tYWluL3plcm8vMS4wLydcclxuICAgIH0sXHJcbiAgICAnKE9GTC0xLjEgQU5EIE1JVCknOiB7XHJcbiAgICAgICdsYWJlbCc6ICdNSVQnLFxyXG4gICAgICAndXJsJzogJ2h0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVQnXHJcbiAgICB9LFxyXG4gICAgJ1NJTE9GTC0xLjEnOiB7XHJcbiAgICAgICdsYWJlbCc6ICdTSUwgT3BlbiBGb250IExpY2Vuc2UgMS4xJyxcclxuICAgICAgJ3VybCc6ICdodHRwOi8vc2NyaXB0cy5zaWwub3JnL09GTF93ZWInXHJcbiAgICB9LFxyXG4gICAgJ0NvbW1lcmNpYWwnOiB7XHJcbiAgICAgICdsYWJlbCc6ICdDb21tZXJjaWFsJ1xyXG4gICAgfSxcclxuICAgICdhZy1ncmlkJzoge1xyXG4gICAgICAnbGFiZWwnOiAnYWctR3JpZC1FbnRlcnByaXNlIFNvZnR3YXJlIExpY2VuY2UgQWdyZWVtZW50IFZlcnNpb24gMS43JyxcclxuICAgICAgJ3VybCc6ICdodHRwczovL2dpdGh1Yi5jb20vY2VvbHRlci9hZy1ncmlkLWVudGVycHJpc2UvYmxvYi9tYXN0ZXIvTElDRU5TRS5tZCdcclxuICAgIH0sXHJcbiAgICAnMEJTRCc6IHtcclxuICAgICAgJ2xhYmVsJzogJ1plcm8tQ2xhdXNlIEJTRCcsXHJcbiAgICAgICd1cmwnOiAnaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzLzBCU0QnXHJcbiAgICB9XHJcbiAgfTtcclxuXHJcblxyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgaHR0cDogSHR0cENsaWVudCwgcHJpdmF0ZSB1c2VyU2VydmljZTogVXNlclNlcnZpY2UsIHByaXZhdGUgY29uZmlnOiBDb25maWcpIHtcclxuICAgIHRoaXMuZ2V0VXNlckxhbmcoKTtcclxuICAgIHRoaXMuZ2V0RG9jdW1lbnRhdGlvbigpO1xyXG4gICAgdGhpcy5iYWNrZ3JvdW5kSW1hZ2UgPSBgdXJsKCR7dGhpcy5jb25maWcuZ2V0RGFzaGJvYXJkQmFja2dyb3VuZEltYWdlKCl9KWA7XHJcbiAgICB0aGlzLmhlYWRlckxvZ28gPSB0aGlzLmNvbmZpZy5nZXRSYXcoXCJhYm91dC5oZWFkZXJMb2dvXCIpO1xyXG4gIH1cclxuXHJcbiAgZ2V0RG9jdW1lbnRhdGlvbigpIHtcclxuICAgIGNvbnN0IGRvY3UgPSB0aGlzLmNvbmZpZy5nZXRSYXcoJ2Fib3V0LmRvY3UnKTtcclxuICAgIGNvbnN0IGxpbmsgPSBkb2N1LmxpbmsucmVwbGFjZSgnIyMjdXNlckxhbmcjIyMnLCB0aGlzLnVzZXJMYW5nLnN1YnN0cmluZygwLCAyKSk7XHJcbiAgICB0aGlzLmRvY3UgPSB7Li4uZG9jdSwgbGlua307XHJcbiAgfVxyXG5cclxuICBnZXRVc2VyTGFuZygpIHtcclxuICAgIHRoaXMudXNlclNlcnZpY2VcclxuICAgICAgLnVzZXIkXHJcbiAgICAgIC5zdWJzY3JpYmUoZGF0YSA9PiB0aGlzLnVzZXJMYW5nID0gZGF0YS51c2VyU2V0dGluZ3MuY2xpZW50bG9jYWxlKTtcclxuICB9XHJcblxyXG4gIHRyYWNrQnlGbihpbmRleCwgaXRlbSk6IG51bWJlciB7XHJcbiAgICByZXR1cm4gaW5kZXg7XHJcbiAgfVxyXG59XHJcbiJdfQ==
82
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJvdXQtc3RhdGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9lby1jbGllbnQvYWJvdXQtc3RhdGUvYWJvdXQtc3RhdGUuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDeEMsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLHNCQUFzQixDQUFDO0FBQ2hELE9BQU8sRUFBQyxXQUFXLEVBQUUsTUFBTSxFQUFDLE1BQU0sY0FBYyxDQUFDO0FBT2pELE1BQU0sT0FBTyxtQkFBbUI7SUFxRDlCLFlBQW9CLElBQWdCLEVBQVUsV0FBd0IsRUFBVSxNQUFjO1FBQTFFLFNBQUksR0FBSixJQUFJLENBQVk7UUFBVSxnQkFBVyxHQUFYLFdBQVcsQ0FBYTtRQUFVLFdBQU0sR0FBTixNQUFNLENBQVE7UUFoRDlGLGtCQUFhLEdBQUcsQ0FBQyxFQUFDLE1BQU0sRUFBQyw0QkFBNEIsRUFBQyxTQUFTLEVBQUMsUUFBUSxFQUFDLFNBQVMsRUFBQyxLQUFLLEVBQUMsRUFBQyxFQUFDLE1BQU0sRUFBQywwQ0FBMEMsRUFBQyxTQUFTLEVBQUMsUUFBUSxFQUFDLFNBQVMsRUFBQyxLQUFLLEVBQUMsRUFBQyxFQUFDLE1BQU0sRUFBQyx5QkFBeUIsRUFBQyxTQUFTLEVBQUMsUUFBUSxFQUFDLFNBQVMsRUFBQyxLQUFLLEVBQUMsRUFBQyxFQUFDLE1BQU0sRUFBQywrQkFBK0IsRUFBQyxTQUFTLEVBQUMsUUFBUSxFQUFDLFNBQVMsRUFBQyxLQUFLLEVBQUMsRUFBQyxFQUFDLE1BQU0sRUFBQyxxQkFBcUIsRUFBQyxTQUFTLEVBQUMsUUFBUSxFQUFDLFNBQVMsRUFBQyxLQUFLLEVBQUMsRUFBQyxFQUFDLE1BQU0sRUFBQyxjQUFjLEVBQUMsU0FBUyxFQUFDLFFBQVEsRUFBQyxTQUFTLEVBQUMsS0FBSyxFQUFDLEVBQUMsRUFBQyxNQUFNLEVBQUMsaUJBQWlCLEVBQUMsU0FBUyxFQUFDLFFBQVEsRUFBQyxTQUFTLEVBQUMsS0FBSyxFQUFDLEVBQUMsRUFBQyxNQUFNLEVBQUMsbUJBQW1CLEVBQUMsU0FBUyxFQUFDLFFBQVEsRUFBQyxTQUFTLEVBQUMsS0FBSyxFQUFDLEVBQUMsRUFBQyxNQUFNLEVBQUMsZUFBZSxFQUFDLFNBQVMsRUFBQyxRQUFRLEVBQUMsU0FBUyxFQUFDLEtBQUssRUFBQyxFQUFDLEVBQUMsTUFBTSxFQUFDLGdCQUFnQixFQUFDLFNBQVMsRUFBQyxRQUFRLEVBQUMsU0FBUyxFQUFDLEtBQUssRUFBQyxFQUFDLEVBQUMsTUFBTSxFQUFDLDJCQUEyQixFQUFDLFNBQVMsRUFBQyxRQUFRLEVBQUMsU0FBUyxFQUFDLEtBQUssRUFBQyxFQUFDLEVBQUMsTUFBTSxFQUFDLG1DQUFtQyxFQUFDLFNBQVMsRUFBQyxRQUFRLEVBQUMsU0FBUyxFQUFDLEtBQUssRUFBQyxFQUFDLEVBQUMsTUFBTSxFQUFDLGlCQUFpQixFQUFDLFNBQVMsRUFBQyxRQUFRLEVBQUMsU0FBUyxFQUFDLEtBQUssRUFBQyxFQUFDLEVBQUMsTUFBTSxFQUFDLGNBQWMsRUFBQyxTQUFTLEVBQUMsYUFBYSxFQUFDLFNBQVMsRUFBQyxLQUFLLEVBQUMsRUFBQyxFQUFDLE1BQU0sRUFBQyx3QkFBd0IsRUFBQyxTQUFTLEVBQUMsUUFBUSxFQUFDLFNBQVMsRUFBQyxLQUFLLEVBQUMsRUFBQyxFQUFDLE1BQU0sRUFBQyxxQkFBcUIsRUFBQyxTQUFTLEVBQUMsUUFBUSxFQUFDLFNBQVMsRUFBQyxLQUFLLEVBQUMsRUFBQyxFQUFDLE1BQU0sRUFBQyxlQUFlLEVBQUMsU0FBUyxFQUFDLFNBQVMsRUFBQyxTQUFTLEVBQUMsS0FBSyxFQUFDLEVBQUMsRUFBQyxNQUFNLEVBQUMsU0FBUyxFQUFDLFNBQVMsRUFBQyxPQUFPLEVBQUMsU0FBUyxFQUFDLEtBQUssRUFBQyxFQUFDLEVBQUMsTUFBTSxFQUFDLFlBQVksRUFBQyxTQUFTLEVBQUMsT0FBTyxFQUFDLFNBQVMsRUFBQyxLQUFLLEVBQUMsRUFBQyxFQUFDLE1BQU0sRUFBQyxjQUFjLEVBQUMsU0FBUyxFQUFDLE9BQU8sRUFBQyxTQUFTLEVBQUMsbUJBQW1CLEVBQUMsRUFBQyxFQUFDLE1BQU0sRUFBQyw0QkFBNEIsRUFBQyxTQUFTLEVBQUMsT0FBTyxFQUFDLFNBQVMsRUFBQyxTQUFTLEVBQUMsRUFBQyxFQUFDLE1BQU0sRUFBQyxZQUFZLEVBQUMsU0FBUyxFQUFDLE9BQU8sRUFBQyxTQUFTLEVBQUMsS0FBSyxFQUFDLEVBQUMsRUFBQyxNQUFNLEVBQUMsa0JBQWtCLEVBQUMsU0FBUyxFQUFDLE9BQU8sRUFBQyxTQUFTLEVBQUMsS0FBSyxFQUFDLEVBQUMsRUFBQyxNQUFNLEVBQUMsUUFBUSxFQUFDLFNBQVMsRUFBQyxRQUFRLEVBQUMsU0FBUyxFQUFDLEtBQUssRUFBQyxFQUFDLEVBQUMsTUFBTSxFQUFDLFlBQVksRUFBQyxTQUFTLEVBQUMsUUFBUSxFQUFDLFNBQVMsRUFBQyxLQUFLLEVBQUMsRUFBQyxFQUFDLE1BQU0sRUFBQyxZQUFZLEVBQUMsU0FBUyxFQUFDLGNBQWMsRUFBQyxTQUFTLEVBQUMsS0FBSyxFQUFDLEVBQUMsRUFBQyxNQUFNLEVBQUMsU0FBUyxFQUFDLFNBQVMsRUFBQyxPQUFPLEVBQUMsU0FBUyxFQUFDLEtBQUssRUFBQyxFQUFDLEVBQUMsTUFBTSxFQUFDLGtCQUFrQixFQUFDLFNBQVMsRUFBQyxRQUFRLEVBQUMsU0FBUyxFQUFDLFlBQVksRUFBQyxFQUFDLEVBQUMsTUFBTSxFQUFDLE1BQU0sRUFBQyxTQUFTLEVBQUMsT0FBTyxFQUFDLFNBQVMsRUFBQyxZQUFZLEVBQUMsRUFBQyxFQUFDLE1BQU0sRUFBQyxPQUFPLEVBQUMsU0FBUyxFQUFDLE9BQU8sRUFBQyxTQUFTLEVBQUMsTUFBTSxFQUFDLEVBQUMsRUFBQyxNQUFNLEVBQUMsU0FBUyxFQUFDLFNBQVMsRUFBQyxRQUFRLEVBQUMsU0FBUyxFQUFDLEtBQUssRUFBQyxDQUFDLENBQUM7UUFJcDlELFNBQUksR0FBRztZQUNMLFdBQVcsRUFBRSxvQkFBb0I7WUFDakMsYUFBYSxFQUFFLGFBQWE7U0FDN0IsQ0FBQztRQUVGLGFBQVEsR0FBRztZQUNULEtBQUssRUFBRTtnQkFDTCxPQUFPLEVBQUUsS0FBSztnQkFDZCxLQUFLLEVBQUUsb0NBQW9DO2FBQzVDO1lBQ0QsWUFBWSxFQUFFO2dCQUNaLE9BQU8sRUFBRSxZQUFZO2dCQUNyQixLQUFLLEVBQUUsNENBQTRDO2FBQ3BEO1lBQ0Qsb0JBQW9CLEVBQUU7Z0JBQ3BCLE9BQU8sRUFBRSxjQUFjO2dCQUN2QixLQUFLLEVBQUUsNkNBQTZDO2FBQ3JEO1lBQ0QsU0FBUyxFQUFFO2dCQUNULE9BQU8sRUFBRSxTQUFTO2dCQUNsQixLQUFLLEVBQUUsb0RBQW9EO2FBQzVEO1lBQ0QsbUJBQW1CLEVBQUU7Z0JBQ25CLE9BQU8sRUFBRSxLQUFLO2dCQUNkLEtBQUssRUFBRSxvQ0FBb0M7YUFDNUM7WUFDRCxZQUFZLEVBQUU7Z0JBQ1osT0FBTyxFQUFFLDJCQUEyQjtnQkFDcEMsS0FBSyxFQUFFLGdDQUFnQzthQUN4QztZQUNELFlBQVksRUFBRTtnQkFDWixPQUFPLEVBQUUsWUFBWTthQUN0QjtZQUNELFNBQVMsRUFBRTtnQkFDVCxPQUFPLEVBQUUsMkRBQTJEO2dCQUNwRSxLQUFLLEVBQUUsc0VBQXNFO2FBQzlFO1lBQ0QsTUFBTSxFQUFFO2dCQUNOLE9BQU8sRUFBRSxpQkFBaUI7Z0JBQzFCLEtBQUssRUFBRSxxQ0FBcUM7YUFDN0M7U0FDRixDQUFDO1FBSUEsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBQ25CLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO1FBQ3hCLElBQUksQ0FBQyxlQUFlLEdBQUcsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLDJCQUEyQixFQUFFLEdBQUcsQ0FBQztRQUMzRSxJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLGtCQUFrQixDQUFDLENBQUM7SUFDM0QsQ0FBQztJQUVELGdCQUFnQjtRQUNkLE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLFlBQVksQ0FBQyxDQUFDO1FBQzlDLE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLGdCQUFnQixFQUFFLElBQUksQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ2hGLElBQUksQ0FBQyxJQUFJLG1DQUFPLElBQUksS0FBRSxJQUFJLEdBQUMsQ0FBQztJQUM5QixDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxXQUFXO2FBQ2IsS0FBSzthQUNMLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxZQUFZLENBQUMsQ0FBQztJQUN2RSxDQUFDO0lBRUQsU0FBUyxDQUFDLEtBQUssRUFBRSxJQUFJO1FBQ25CLE9BQU8sS0FBSyxDQUFDO0lBQ2YsQ0FBQzs7O1lBL0VGLFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUsZ0JBQWdCO2dCQUMxQiw2NkRBQTJDOzthQUU1Qzs7O1lBUE8sVUFBVTtZQUNWLFdBQVc7WUFBRSxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21wb25lbnR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQge0h0dHBDbGllbnR9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcclxuaW1wb3J0IHtVc2VyU2VydmljZSwgQ29uZmlnfSBmcm9tICdAZW8tc2RrL2NvcmUnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdlby1hYm91dC1zdGF0ZScsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2Fib3V0LXN0YXRlLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9hYm91dC1zdGF0ZS5jb21wb25lbnQuc2NzcyddXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBBYm91dFN0YXRlQ29tcG9uZW50IHtcclxuXHJcbiAgYmFja2dyb3VuZEltYWdlOiBzdHJpbmc7XHJcbiAgaGVhZGVyTG9nbzogc3RyaW5nO1xyXG4gIGxpY2Vuc2VTaG93OiBib29sZWFuO1xyXG4gIF9fbGlicmFyaWVzX18gPSBbe1wibmFtZVwiOlwiQGFnLWdyaWQtY29tbXVuaXR5L2FuZ3VsYXJcIixcInZlcnNpb25cIjpcIjIyLjEuMlwiLFwibGljZW5zZVwiOlwiTUlUXCJ9LHtcIm5hbWVcIjpcIkBhZy1ncmlkLWNvbW11bml0eS9jbGllbnQtc2lkZS1yb3ctbW9kZWxcIixcInZlcnNpb25cIjpcIjIyLjEuMVwiLFwibGljZW5zZVwiOlwiTUlUXCJ9LHtcIm5hbWVcIjpcIkBhZy1ncmlkLWNvbW11bml0eS9jb3JlXCIsXCJ2ZXJzaW9uXCI6XCIyMi4xLjFcIixcImxpY2Vuc2VcIjpcIk1JVFwifSx7XCJuYW1lXCI6XCJAYWctZ3JpZC1jb21tdW5pdHkvY3N2LWV4cG9ydFwiLFwidmVyc2lvblwiOlwiMjIuMS4xXCIsXCJsaWNlbnNlXCI6XCJNSVRcIn0se1wibmFtZVwiOlwiQGFuZ3VsYXIvYW5pbWF0aW9uc1wiLFwidmVyc2lvblwiOlwiMTEuMi4wXCIsXCJsaWNlbnNlXCI6XCJNSVRcIn0se1wibmFtZVwiOlwiQGFuZ3VsYXIvY2RrXCIsXCJ2ZXJzaW9uXCI6XCIxMS4yLjBcIixcImxpY2Vuc2VcIjpcIk1JVFwifSx7XCJuYW1lXCI6XCJAYW5ndWxhci9jb21tb25cIixcInZlcnNpb25cIjpcIjExLjIuMFwiLFwibGljZW5zZVwiOlwiTUlUXCJ9LHtcIm5hbWVcIjpcIkBhbmd1bGFyL2NvbXBpbGVyXCIsXCJ2ZXJzaW9uXCI6XCIxMS4yLjBcIixcImxpY2Vuc2VcIjpcIk1JVFwifSx7XCJuYW1lXCI6XCJAYW5ndWxhci9jb3JlXCIsXCJ2ZXJzaW9uXCI6XCIxMS4yLjBcIixcImxpY2Vuc2VcIjpcIk1JVFwifSx7XCJuYW1lXCI6XCJAYW5ndWxhci9mb3Jtc1wiLFwidmVyc2lvblwiOlwiMTEuMi4wXCIsXCJsaWNlbnNlXCI6XCJNSVRcIn0se1wibmFtZVwiOlwiQGFuZ3VsYXIvcGxhdGZvcm0tYnJvd3NlclwiLFwidmVyc2lvblwiOlwiMTEuMi4wXCIsXCJsaWNlbnNlXCI6XCJNSVRcIn0se1wibmFtZVwiOlwiQGFuZ3VsYXIvcGxhdGZvcm0tYnJvd3Nlci1keW5hbWljXCIsXCJ2ZXJzaW9uXCI6XCIxMS4yLjBcIixcImxpY2Vuc2VcIjpcIk1JVFwifSx7XCJuYW1lXCI6XCJAYW5ndWxhci9yb3V0ZXJcIixcInZlcnNpb25cIjpcIjExLjIuMFwiLFwibGljZW5zZVwiOlwiTUlUXCJ9LHtcIm5hbWVcIjpcIkBlby1zZGsvY29yZVwiLFwidmVyc2lvblwiOlwiOC4xNi4wLXJjLjNcIixcImxpY2Vuc2VcIjpcIk1JVFwifSx7XCJuYW1lXCI6XCJAbmd4LXB3YS9sb2NhbC1zdG9yYWdlXCIsXCJ2ZXJzaW9uXCI6XCIxMS4xLjBcIixcImxpY2Vuc2VcIjpcIk1JVFwifSx7XCJuYW1lXCI6XCJAbmd4LXRyYW5zbGF0ZS9jb3JlXCIsXCJ2ZXJzaW9uXCI6XCIxMy4wLjBcIixcImxpY2Vuc2VcIjpcIk1JVFwifSx7XCJuYW1lXCI6XCJAdHlwZXMvbG9kYXNoXCIsXCJ2ZXJzaW9uXCI6XCI0LjE0Ljg4XCIsXCJsaWNlbnNlXCI6XCJNSVRcIn0se1wibmFtZVwiOlwiY29yZS1qc1wiLFwidmVyc2lvblwiOlwiMi41LjdcIixcImxpY2Vuc2VcIjpcIk1JVFwifSx7XCJuYW1lXCI6XCJmaWxlLXNhdmVyXCIsXCJ2ZXJzaW9uXCI6XCIyLjAuNVwiLFwibGljZW5zZVwiOlwiTUlUXCJ9LHtcIm5hbWVcIjpcImZvbnQtYXdlc29tZVwiLFwidmVyc2lvblwiOlwiNC43LjBcIixcImxpY2Vuc2VcIjpcIihPRkwtMS4xIEFORCBNSVQpXCJ9LHtcIm5hbWVcIjpcImtleWJvYXJkZXZlbnQta2V5LXBvbHlmaWxsXCIsXCJ2ZXJzaW9uXCI6XCIxLjEuMFwiLFwibGljZW5zZVwiOlwiQ0MwLTEuMFwifSx7XCJuYW1lXCI6XCJrZXljb2RlLWpzXCIsXCJ2ZXJzaW9uXCI6XCIwLjAuNFwiLFwibGljZW5zZVwiOlwiTUlUXCJ9LHtcIm5hbWVcIjpcIm1vYmlsZS1kcmFnLWRyb3BcIixcInZlcnNpb25cIjpcIjIuMi4wXCIsXCJsaWNlbnNlXCI6XCJNSVRcIn0se1wibmFtZVwiOlwibW9tZW50XCIsXCJ2ZXJzaW9uXCI6XCIyLjIyLjJcIixcImxpY2Vuc2VcIjpcIk1JVFwifSx7XCJuYW1lXCI6XCJuZ3gtdG9hc3RyXCIsXCJ2ZXJzaW9uXCI6XCIxMy4yLjBcIixcImxpY2Vuc2VcIjpcIk1JVFwifSx7XCJuYW1lXCI6XCJwcmltZWljb25zXCIsXCJ2ZXJzaW9uXCI6XCIxLjAuMC1iZXRhLjZcIixcImxpY2Vuc2VcIjpcIk1JVFwifSx7XCJuYW1lXCI6XCJwcmltZW5nXCIsXCJ2ZXJzaW9uXCI6XCI3LjAuMVwiLFwibGljZW5zZVwiOlwiTUlUXCJ9LHtcIm5hbWVcIjpcInJlZmxlY3QtbWV0YWRhdGFcIixcInZlcnNpb25cIjpcIjAuMS4xMFwiLFwibGljZW5zZVwiOlwiQXBhY2hlLTIuMFwifSx7XCJuYW1lXCI6XCJyeGpzXCIsXCJ2ZXJzaW9uXCI6XCI2LjYuM1wiLFwibGljZW5zZVwiOlwiQXBhY2hlLTIuMFwifSx7XCJuYW1lXCI6XCJ0c2xpYlwiLFwidmVyc2lvblwiOlwiMi4xLjBcIixcImxpY2Vuc2VcIjpcIjBCU0RcIn0se1wibmFtZVwiOlwiem9uZS5qc1wiLFwidmVyc2lvblwiOlwiMC4xMC4zXCIsXCJsaWNlbnNlXCI6XCJNSVRcIn1dO1xyXG4gIHVzZXJMYW5nOiBzdHJpbmc7XHJcbiAgZG9jdTogeyBsaW5rOiBzdHJpbmcsIGxhYmVsOiBzdHJpbmcgfTtcclxuXHJcbiAgY3RybCA9IHtcclxuICAgIHByb2R1Y3ROYW1lOiAneXV1dmlzwq4gUkFEIGNsaWVudCcsXHJcbiAgICBjbGllbnRWZXJzaW9uOiAnOC4xNi4wLXJjLjMnXHJcbiAgfTtcclxuXHJcbiAgbGljZW5zZXMgPSB7XHJcbiAgICAnTUlUJzoge1xyXG4gICAgICAnbGFiZWwnOiAnTUlUJyxcclxuICAgICAgJ3VybCc6ICdodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUJ1xyXG4gICAgfSxcclxuICAgICdBcGFjaGUtMi4wJzoge1xyXG4gICAgICAnbGFiZWwnOiAnQXBhY2hlIDIuMCcsXHJcbiAgICAgICd1cmwnOiAnaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wJ1xyXG4gICAgfSxcclxuICAgICdCU0QtMy1DbGF1c2UtQ2xlYXInOiB7XHJcbiAgICAgICdsYWJlbCc6ICdCU0QgMy1DbGF1c2UnLFxyXG4gICAgICAndXJsJzogJ2h0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9CU0QtMy1DbGF1c2UnXHJcbiAgICB9LFxyXG4gICAgJ0NDMC0xLjAnOiB7XHJcbiAgICAgICdsYWJlbCc6ICdDQzAgMS4wJyxcclxuICAgICAgJ3VybCc6ICdodHRwczovL2NyZWF0aXZlY29tbW9ucy5vcmcvcHVibGljZG9tYWluL3plcm8vMS4wLydcclxuICAgIH0sXHJcbiAgICAnKE9GTC0xLjEgQU5EIE1JVCknOiB7XHJcbiAgICAgICdsYWJlbCc6ICdNSVQnLFxyXG4gICAgICAndXJsJzogJ2h0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVQnXHJcbiAgICB9LFxyXG4gICAgJ1NJTE9GTC0xLjEnOiB7XHJcbiAgICAgICdsYWJlbCc6ICdTSUwgT3BlbiBGb250IExpY2Vuc2UgMS4xJyxcclxuICAgICAgJ3VybCc6ICdodHRwOi8vc2NyaXB0cy5zaWwub3JnL09GTF93ZWInXHJcbiAgICB9LFxyXG4gICAgJ0NvbW1lcmNpYWwnOiB7XHJcbiAgICAgICdsYWJlbCc6ICdDb21tZXJjaWFsJ1xyXG4gICAgfSxcclxuICAgICdhZy1ncmlkJzoge1xyXG4gICAgICAnbGFiZWwnOiAnYWctR3JpZC1FbnRlcnByaXNlIFNvZnR3YXJlIExpY2VuY2UgQWdyZWVtZW50IFZlcnNpb24gMS43JyxcclxuICAgICAgJ3VybCc6ICdodHRwczovL2dpdGh1Yi5jb20vY2VvbHRlci9hZy1ncmlkLWVudGVycHJpc2UvYmxvYi9tYXN0ZXIvTElDRU5TRS5tZCdcclxuICAgIH0sXHJcbiAgICAnMEJTRCc6IHtcclxuICAgICAgJ2xhYmVsJzogJ1plcm8tQ2xhdXNlIEJTRCcsXHJcbiAgICAgICd1cmwnOiAnaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzLzBCU0QnXHJcbiAgICB9XHJcbiAgfTtcclxuXHJcblxyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgaHR0cDogSHR0cENsaWVudCwgcHJpdmF0ZSB1c2VyU2VydmljZTogVXNlclNlcnZpY2UsIHByaXZhdGUgY29uZmlnOiBDb25maWcpIHtcclxuICAgIHRoaXMuZ2V0VXNlckxhbmcoKTtcclxuICAgIHRoaXMuZ2V0RG9jdW1lbnRhdGlvbigpO1xyXG4gICAgdGhpcy5iYWNrZ3JvdW5kSW1hZ2UgPSBgdXJsKCR7dGhpcy5jb25maWcuZ2V0RGFzaGJvYXJkQmFja2dyb3VuZEltYWdlKCl9KWA7XHJcbiAgICB0aGlzLmhlYWRlckxvZ28gPSB0aGlzLmNvbmZpZy5nZXRSYXcoXCJhYm91dC5oZWFkZXJMb2dvXCIpO1xyXG4gIH1cclxuXHJcbiAgZ2V0RG9jdW1lbnRhdGlvbigpIHtcclxuICAgIGNvbnN0IGRvY3UgPSB0aGlzLmNvbmZpZy5nZXRSYXcoJ2Fib3V0LmRvY3UnKTtcclxuICAgIGNvbnN0IGxpbmsgPSBkb2N1LmxpbmsucmVwbGFjZSgnIyMjdXNlckxhbmcjIyMnLCB0aGlzLnVzZXJMYW5nLnN1YnN0cmluZygwLCAyKSk7XHJcbiAgICB0aGlzLmRvY3UgPSB7Li4uZG9jdSwgbGlua307XHJcbiAgfVxyXG5cclxuICBnZXRVc2VyTGFuZygpIHtcclxuICAgIHRoaXMudXNlclNlcnZpY2VcclxuICAgICAgLnVzZXIkXHJcbiAgICAgIC5zdWJzY3JpYmUoZGF0YSA9PiB0aGlzLnVzZXJMYW5nID0gZGF0YS51c2VyU2V0dGluZ3MuY2xpZW50bG9jYWxlKTtcclxuICB9XHJcblxyXG4gIHRyYWNrQnlGbihpbmRleCwgaXRlbSk6IG51bWJlciB7XHJcbiAgICByZXR1cm4gaW5kZXg7XHJcbiAgfVxyXG59XHJcbiJdfQ==
@@ -1,6 +1,6 @@
1
1
  import { takeUntil } from 'rxjs/operators';
2
2
  import { Component, ViewChild } from '@angular/core';
3
- import { EventService, TranslateService } from '@eo-sdk/core';
3
+ import { EventService, LocalStorageService, TranslateService } from '@eo-sdk/core';
4
4
  import { InboxService } from '@eo-sdk/core';
5
5
  import { ActivatedRoute } from '@angular/router';
6
6
  import { CustomSortComponent } from '../../../eo-framework/grid/extensions/custom-sort/custom-sort.component';
@@ -11,7 +11,7 @@ import { EmptyStateService } from '../../../eo-framework-core/empty-state/empty-
11
11
  import { InboxTypes, InboxTypesFilter } from './inbox.types.enum';
12
12
  import { PageTitleService } from '../../../eo-framework-core/title/page-title.service';
13
13
  export class InboxStateComponent extends UnsubscribeOnDestroy {
14
- constructor(translate, selection, titleService, inboxService, pendingChanges, empty, eventService, route) {
14
+ constructor(translate, selection, titleService, inboxService, pendingChanges, empty, eventService, route, storageService) {
15
15
  super();
16
16
  this.translate = translate;
17
17
  this.selection = selection;
@@ -21,6 +21,7 @@ export class InboxStateComponent extends UnsubscribeOnDestroy {
21
21
  this.empty = empty;
22
22
  this.eventService = eventService;
23
23
  this.route = route;
24
+ this.storageService = storageService;
24
25
  this.inboxFilterFields = [];
25
26
  this.typeFilterFields = [];
26
27
  this.inboxSelectionId = 'inbox';
@@ -30,6 +31,7 @@ export class InboxStateComponent extends UnsubscribeOnDestroy {
30
31
  this.defaultFilterParams = {};
31
32
  this.emptyState = { icon: 'ic_no-file.svg', text: '', className: '' };
32
33
  this.inboxChanged = false;
34
+ this.storageKeyLastItemID = 'eo.inbox.lastItemID';
33
35
  this.titleService.setBaseTitle(this.translate.instant('eo.inbox.list.title'));
34
36
  //secondary selection instance for inbox items
35
37
  this.inboxSelection = this.selection.createNew(this.inboxSelectionId);
@@ -65,9 +67,6 @@ export class InboxStateComponent extends UnsubscribeOnDestroy {
65
67
  hasPendingChanges() {
66
68
  return this.pendingChanges.hasPendingTask();
67
69
  }
68
- onDmsItemSelected(data) {
69
- this.selectedDmsParams = data;
70
- }
71
70
  refreshGrid() {
72
71
  this.inboxChanged = false;
73
72
  this.inboxSelection.disable(false);
@@ -170,6 +169,14 @@ export class InboxStateComponent extends UnsubscribeOnDestroy {
170
169
  this.gridData = data;
171
170
  this.updateGrid(this.gridData);
172
171
  });
172
+ const lastInboxItemID = this.storageService.getItem(this.storageKeyLastItemID);
173
+ if (lastInboxItemID) {
174
+ const item = this.gridData.find(i => i.id === lastInboxItemID);
175
+ if (item) {
176
+ this.selectFirst = false;
177
+ setTimeout(() => this.eoGrid.selectRow(item), 500);
178
+ }
179
+ }
173
180
  }
174
181
  ngOnDestroy() {
175
182
  this.selection.clear();
@@ -178,7 +185,7 @@ export class InboxStateComponent extends UnsubscribeOnDestroy {
178
185
  InboxStateComponent.decorators = [
179
186
  { type: Component, args: [{
180
187
  selector: 'eo-inbox-state',
181
- template: "<eo-undock-split>\r\n <eo-split [gutterSize]=\"16\" [visibleTransition]=\"true\" [cacheLayout]=\"'inbox.state'\">\r\n <eo-split-area [size]=\"30\" [minSizePixel]=\"300\">\r\n <ng-template pTemplate=\"content\">\r\n <eo-list-container #eoList [applySelection]=\"{out: inboxSelectionId}\">\r\n <div class=\"eo-header\">\r\n\r\n <eo-icon class=\"eo-header-icon\" [iconSrc]=\"'assets/_default/svg/ic_inbox.svg'\"></eo-icon>\r\n <div class=\"eo-header-info\">\r\n <div class=\"eo-header-title\" translate>eo.inbox.list.title</div>\r\n </div>\r\n <div class=\"eo-header-actions\">\r\n <eo-icon class=\"button primary refresh-button\"\r\n [ngClass]=\"{inboxChanged: inboxChanged}\"\r\n (click)=\"cFilter.resetFilter(); refreshGrid()\"\r\n [iconSrc]=\"'assets/_default/svg/ic_refresh.svg'\"\r\n [iconTitle]=\"('eo.list.refresh' | translate)\"></eo-icon>\r\n\r\n <eo-overlay #oFilter class=\"overlay-filter\"\r\n [iconSrc]=\"'assets/_default/svg/ic_filter.svg'\"\r\n [iconClass]=\"'primary'\"\r\n [iconTitle]=\"'eo.list.filter' | translate\">\r\n <eo-custom-filter #cFilter\r\n (change)=\"cFilter.updateGrid(eoList.eoGridSubject, $event)\"\r\n (active)=\"oFilter.onActiveChanged($event)\">\r\n <eo-text-filter [title]=\"'eo.inbox.filter.title' | translate\"\r\n [filterParams]=\"defaultFilterParams\" [id]=\"'inbox.text'\" \r\n [matchFields]=\"['title','description','id']\"></eo-text-filter>\r\n <eo-set-filter [operator]=\"'AND'\" [id]=\"'inbox.set'\" [filterParams]=\"defaultFilterParams\" [options]=\"inboxFilterFields\"></eo-set-filter>\r\n <eo-set-filter [operator]=\"'OR'\" [id]=\"'inbox.type'\" [filterParams]=\"defaultFilterParams\" [options]=\"typeFilterFields\"\r\n [title]=\"'eo.inbox.filter.section.type' | translate\"></eo-set-filter>\r\n </eo-custom-filter>\r\n </eo-overlay>\r\n\r\n <eo-overlay #oSort class=\"overlay-sort\"\r\n [iconSrc]=\"'assets/_default/svg/ic_sort.svg'\"\r\n [iconTitle]=\"'eo.list.sort' | translate\"\r\n [iconClass]=\"'primary'\">\r\n <eo-custom-sort #cSort [id]=\"'inbox.sort'\"\r\n (change)=\"cSort.updateGrid(eoList.eoGrid, $event)\"\r\n (active)=\"oSort.onActiveChanged($event)\"\r\n [sortFields]=\"sortFields\"></eo-custom-sort>\r\n </eo-overlay>\r\n\r\n </div>\r\n </div>\r\n <div class=\"eo-body\">\r\n <eo-grid #eoGrid\r\n *ngIf=\"gridOptions?.rowData\"\r\n [gridOptions]=\"gridOptions\"\r\n [fullWidth]=\"true\"\r\n [showHeader]=\"true\"\r\n [showFooter]=\"true\"\r\n [selectFirst]=\"selectFirst\"\r\n [options]=\"{filterActive: oFilter.active}\"\r\n (eoGridCountChanged)=\"eoList.onCountChanged($event);onCountChanged($event)\"\r\n (eoGridSelectionChanged)=\"eoList.onSelectionChanged($event)\"\r\n (eoGridFocusChanged)=\"eoList.onFocusChanged($event)\">\r\n <div class=\"header\">\r\n </div>\r\n\r\n <div class=\"footer\">\r\n <eo-total-count [gridCount]=\"eoList.gridCount\" [outsideGrid]=\"false\" class=\"flex-row\"></eo-total-count>\r\n </div>\r\n\r\n <div class=\"empty\">\r\n <eo-error-message\r\n [emptyState]=\"{icon: 'ic_inbox.svg', text: oFilter.active ? 'eo.no.filter.result' : 'eo.inbox.list.empty'}\"></eo-error-message>\r\n <eo-reset-filter [isFilterActive]=\"oFilter.active\" (click)=\"cFilter.resetFilter();cSort.reset();refreshGrid()\"></eo-reset-filter>\r\n </div>\r\n\r\n </eo-grid>\r\n </div>\r\n </eo-list-container>\r\n </ng-template>\r\n </eo-split-area>\r\n <eo-split-area [size]=\"30\" [minSizePixel]=\"400\">\r\n <ng-template pTemplate=\"content\">\r\n <eo-inbox-details [applySelection]=\"{in: inboxSelectionId, out: inboxDmsObjectSelectionId}\" [emptyState]=\"emptyState\">\r\n <eo-tab-plugin [type]=\"'inbox-details-tab.inbox'\"></eo-tab-plugin>\r\n </eo-inbox-details>\r\n </ng-template>\r\n </eo-split-area>\r\n <eo-split-area [size]=\"40\" [minSizePixel]=\"400\" [cache]=\"false\">\r\n <ng-template pTemplate=\"content\">\r\n\r\n <eo-object-details [applySelection]=\"{in: inboxDmsObjectSelectionId}\" [cacheLayout]=\"'inbox.state.object-details'\">\r\n <eo-tab-plugin [type]=\"'object-details-tab.inbox'\"></eo-tab-plugin>\r\n </eo-object-details>\r\n </ng-template>\r\n </eo-split-area>\r\n </eo-split>\r\n</eo-undock-split>\r\n",
188
+ template: "<eo-undock-split>\r\n <eo-split [gutterSize]=\"16\" [visibleTransition]=\"true\" [cacheLayout]=\"'inbox.state'\">\r\n <eo-split-area [size]=\"30\" [minSizePixel]=\"300\">\r\n <ng-template pTemplate=\"content\">\r\n <eo-list-container #eoList [applySelection]=\"{out: inboxSelectionId}\">\r\n <div class=\"eo-header\">\r\n\r\n <eo-icon class=\"eo-header-icon\" [iconSrc]=\"'assets/_default/svg/ic_inbox.svg'\"></eo-icon>\r\n <div class=\"eo-header-info\">\r\n <div class=\"eo-header-title\" translate>eo.inbox.list.title</div>\r\n </div>\r\n <div class=\"eo-header-actions\">\r\n <eo-icon class=\"button primary refresh-button\"\r\n [ngClass]=\"{inboxChanged: inboxChanged}\"\r\n (click)=\"cFilter.resetFilter(); refreshGrid()\"\r\n [iconSrc]=\"'assets/_default/svg/ic_refresh.svg'\"\r\n [iconTitle]=\"('eo.list.refresh' | translate)\"></eo-icon>\r\n\r\n <eo-overlay #oFilter class=\"overlay-filter\"\r\n [iconSrc]=\"'assets/_default/svg/ic_filter.svg'\"\r\n [iconClass]=\"'primary'\"\r\n [iconTitle]=\"'eo.list.filter' | translate\">\r\n <eo-custom-filter #cFilter\r\n (change)=\"cFilter.updateGrid(eoList.eoGridSubject, $event)\"\r\n (active)=\"oFilter.onActiveChanged($event)\">\r\n <eo-text-filter [title]=\"'eo.inbox.filter.title' | translate\"\r\n [filterParams]=\"defaultFilterParams\" [id]=\"'inbox.text'\"\r\n [matchFields]=\"['title','description','id']\"></eo-text-filter>\r\n <eo-set-filter [operator]=\"'AND'\" [id]=\"'inbox.set'\" [filterParams]=\"defaultFilterParams\" [options]=\"inboxFilterFields\"></eo-set-filter>\r\n <eo-set-filter [operator]=\"'OR'\" [id]=\"'inbox.type'\" [filterParams]=\"defaultFilterParams\" [options]=\"typeFilterFields\"\r\n [title]=\"'eo.inbox.filter.section.type' | translate\"></eo-set-filter>\r\n </eo-custom-filter>\r\n </eo-overlay>\r\n\r\n <eo-overlay #oSort class=\"overlay-sort\"\r\n [iconSrc]=\"'assets/_default/svg/ic_sort.svg'\"\r\n [iconTitle]=\"'eo.list.sort' | translate\"\r\n [iconClass]=\"'primary'\">\r\n <eo-custom-sort #cSort [id]=\"'inbox.sort'\"\r\n (change)=\"cSort.updateGrid(eoList.eoGrid, $event)\"\r\n (active)=\"oSort.onActiveChanged($event)\"\r\n [sortFields]=\"sortFields\"></eo-custom-sort>\r\n </eo-overlay>\r\n\r\n </div>\r\n </div>\r\n <div class=\"eo-body\">\r\n <eo-grid #eoGrid\r\n *ngIf=\"gridOptions?.rowData\"\r\n [gridOptions]=\"gridOptions\"\r\n [fullWidth]=\"true\"\r\n [showHeader]=\"true\"\r\n [showFooter]=\"true\"\r\n [selectFirst]=\"selectFirst\"\r\n [options]=\"{filterActive: oFilter.active}\"\r\n (eoGridCountChanged)=\"eoList.onCountChanged($event);onCountChanged($event)\"\r\n (eoGridSelectionChanged)=\"eoList.onSelectionChanged($event)\"\r\n (eoGridFocusChanged)=\"eoList.onFocusChanged($event)\">\r\n <div class=\"header\">\r\n </div>\r\n\r\n <div class=\"footer\">\r\n <eo-total-count [gridCount]=\"eoList.gridCount\" [outsideGrid]=\"false\" class=\"flex-row\"></eo-total-count>\r\n </div>\r\n\r\n <div class=\"empty\">\r\n <eo-error-message\r\n [emptyState]=\"{icon: 'ic_inbox.svg', text: oFilter.active ? 'eo.no.filter.result' : 'eo.inbox.list.empty'}\"></eo-error-message>\r\n <eo-reset-filter [isFilterActive]=\"oFilter.active\" (click)=\"cFilter.resetFilter();cSort.reset();refreshGrid()\"></eo-reset-filter>\r\n </div>\r\n\r\n </eo-grid>\r\n </div>\r\n </eo-list-container>\r\n </ng-template>\r\n </eo-split-area>\r\n <eo-split-area [size]=\"30\" [minSizePixel]=\"400\">\r\n <ng-template pTemplate=\"content\">\r\n <eo-inbox-details [applySelection]=\"{in: inboxSelectionId, out: inboxDmsObjectSelectionId}\" [emptyState]=\"emptyState\">\r\n <eo-tab-plugin [type]=\"'inbox-details-tab.inbox'\"></eo-tab-plugin>\r\n </eo-inbox-details>\r\n </ng-template>\r\n </eo-split-area>\r\n <eo-split-area [size]=\"40\" [minSizePixel]=\"400\" [cache]=\"false\">\r\n <ng-template pTemplate=\"content\">\r\n\r\n <eo-object-details [applySelection]=\"{in: inboxDmsObjectSelectionId}\" [cacheLayout]=\"'inbox.state.object-details'\">\r\n <eo-tab-plugin [type]=\"'object-details-tab.inbox'\"></eo-tab-plugin>\r\n </eo-object-details>\r\n </ng-template>\r\n </eo-split-area>\r\n </eo-split>\r\n</eo-undock-split>\r\n",
182
189
  styles: [":host{bottom:var(--app-pane-padding);left:var(--app-pane-padding);position:absolute;right:var(--app-pane-padding);top:var(--app-pane-padding)}:host eo-split-area{background-color:var(--panel-background-grey);box-shadow:0 2px 5px 0 rgba(0,0,0,.2)}:host .inboxChanged,:host .inboxChanged:hover{background:var(--color-success);color:#fff}:host ::ng-deep .ag-cell .list-item{align-items:center;display:flex;flex:1;flex-direction:row;height:80px;min-height:0;min-width:0}:host ::ng-deep .ag-cell .list-item[unselectable]{-moz-user-select:none;-webkit-user-select:none;user-select:none}:host ::ng-deep .ag-cell .list-item .content{display:inline-block;flex:1;max-width:none;overflow:hidden;padding:var(--app-pane-padding);text-overflow:ellipsis;white-space:nowrap}:host ::ng-deep .ag-cell .list-item .content .notes>span{-webkit-border-radius:2px;background-color:var(--color-primary-4);border-radius:2px;color:var(--color-white);font-size:var(--font-hint);padding:1px calc(var(--app-pane-padding)/4) 0 calc(var(--app-pane-padding)/4)}:host ::ng-deep .ag-cell .list-item .content .notes.pastDue span.period{background-color:var(--color-error)}:host ::ng-deep .ag-cell .list-item .content .title{font-size:var(--font-body);font-weight:var(--font-weight-bold)}:host ::ng-deep .ag-cell .list-item .content .description{color:var(--text-color-caption);font-size:var(--font-caption)}:host ::ng-deep .ag-cell .list-item.read .title{font-weight:var(--font-weight-normal)}:host ::ng-deep .ag-cell .list-item .meta{align-items:flex-end;display:flex;flex-flow:column;padding:0 calc(var(--app-pane-padding)/2)}:host ::ng-deep .ag-cell .list-item .meta .date{color:rgba(var(--color-black-rgb),.4)}"]
183
190
  },] }
184
191
  ];
@@ -190,9 +197,10 @@ InboxStateComponent.ctorParameters = () => [
190
197
  { type: PendingChangesService },
191
198
  { type: EmptyStateService },
192
199
  { type: EventService },
193
- { type: ActivatedRoute }
200
+ { type: ActivatedRoute },
201
+ { type: LocalStorageService }
194
202
  ];
195
203
  InboxStateComponent.propDecorators = {
196
204
  eoGrid: [{ type: ViewChild, args: ['eoGrid',] }]
197
205
  };
198
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5ib3gtc3RhdGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9lby1jbGllbnQvaW5ib3gtc3RhdGUvaW5ib3gtc3RhdGUvaW5ib3gtc3RhdGUuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUN6QyxPQUFPLEVBQUMsU0FBUyxFQUFxQixTQUFTLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDdEUsT0FBTyxFQUFDLFlBQVksRUFBYyxnQkFBZ0IsRUFBQyxNQUFNLGNBQWMsQ0FBQztBQUV4RSxPQUFPLEVBQVksWUFBWSxFQUFDLE1BQU0sY0FBYyxDQUFDO0FBQ3JELE9BQU8sRUFBQyxjQUFjLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUMsbUJBQW1CLEVBQUMsTUFBTSx5RUFBeUUsQ0FBQztBQUM1RyxPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSx3REFBd0QsQ0FBQztBQUN4RixPQUFPLEVBQUMsb0JBQW9CLEVBQUMsTUFBTSw4REFBOEQsQ0FBQztBQUdsRyxPQUFPLEVBQUMscUJBQXFCLEVBQUMsTUFBTSxvRUFBb0UsQ0FBQztBQUV6RyxPQUFPLEVBQUMsaUJBQWlCLEVBQUMsTUFBTSw0REFBNEQsQ0FBQztBQUU3RixPQUFPLEVBQUMsVUFBVSxFQUFFLGdCQUFnQixFQUFDLE1BQU0sb0JBQW9CLENBQUM7QUFDaEUsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0scURBQXFELENBQUM7QUFPckYsTUFBTSxPQUFPLG1CQUFvQixTQUFRLG9CQUFvQjtJQW9CM0QsWUFBbUIsU0FBMkIsRUFDckMsU0FBMkIsRUFDMUIsWUFBOEIsRUFDL0IsWUFBMEIsRUFDekIsY0FBcUMsRUFDckMsS0FBd0IsRUFDeEIsWUFBMEIsRUFDMUIsS0FBcUI7UUFDN0IsS0FBSyxFQUFF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QztRQUNqQyxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUN6QixDQUFDOzs7WUF6TUYsU0FBUyxTQUFDO2dCQUNULFFBQVEsRUFBRSxnQkFBZ0I7Z0JBQzFCLG91S0FBMkM7O2FBRTVDOzs7WUFwQmlDLGdCQUFnQjtZQUsxQyxnQkFBZ0I7WUFTaEIsZ0JBQWdCO1lBWkwsWUFBWTtZQU92QixxQkFBcUI7WUFFckIsaUJBQWlCO1lBWGpCLFlBQVk7WUFHWixjQUFjOzs7cUJBb0NuQixTQUFTLFNBQUMsUUFBUSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7dGFrZVVudGlsfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcbmltcG9ydCB7Q29tcG9uZW50LCBPbkRlc3Ryb3ksIE9uSW5pdCwgVmlld0NoaWxkfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtFdmVudFNlcnZpY2UsIEluYm94U3RhdGUsIFRyYW5zbGF0ZVNlcnZpY2V9IGZyb20gJ0Blby1zZGsvY29yZSc7XHJcbmltcG9ydCB7Q29sRGVmLCBHcmlkT3B0aW9uc30gZnJvbSAnQGFnLWdyaWQtY29tbXVuaXR5L2NvcmUnO1xyXG5pbXBvcnQge0luYm94SXRlbSwgSW5ib3hTZXJ2aWNlfSBmcm9tICdAZW8tc2RrL2NvcmUnO1xyXG5pbXBvcnQge0FjdGl2YXRlZFJvdXRlfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xyXG5pbXBvcnQge0N1c3RvbVNvcnRDb21wb25lbnR9IGZyb20gJy4uLy4uLy4uL2VvLWZyYW1ld29yay9ncmlkL2V4dGVuc2lvbnMvY3VzdG9tLXNvcnQvY3VzdG9tLXNvcnQuY29tcG9uZW50JztcclxuaW1wb3J0IHtTZWxlY3Rpb25TZXJ2aWNlfSBmcm9tICcuLi8uLi8uLi9lby1mcmFtZXdvcmstY29yZS9zZWxlY3Rpb24vc2VsZWN0aW9uLnNlcnZpY2UnO1xyXG5pbXBvcnQge1Vuc3Vic2NyaWJlT25EZXN0cm95fSBmcm9tICcuLi8uLi8uLi9lby1mcmFtZXdvcmsvdXRpbC91bnN1YnNjcmliZS91bnN1YnNjcmliZS5jb21wb25lbnQnO1xyXG5pbXBvcnQge0dyaWRDb21wb25lbnR9IGZyb20gJy4uLy4uLy4uL2VvLWZyYW1ld29yay9ncmlkL2dyaWQuY29tcG9uZW50JztcclxuaW1wb3J0IHtQZW5kaW5nQ2hhbmdlc0NvbXBvbmVudH0gZnJvbSAnLi4vLi4vLi4vZW8tZnJhbWV3b3JrLWNvcmUvcGVuZGluZy1jaGFuZ2VzL3BlbmRpbmctY2hhbmdlcy1jb21wb25lbnQuaW50ZXJmYWNlJztcclxuaW1wb3J0IHtQZW5kaW5nQ2hhbmdlc1NlcnZpY2V9IGZyb20gJy4uLy4uLy4uL2VvLWZyYW1ld29yay1jb3JlL3BlbmRpbmctY2hhbmdlcy9wZW5kaW5nLWNoYW5nZXMuc2VydmljZSc7XHJcbmltcG9ydCB7RW1wdHlTdGF0ZX0gZnJvbSAnLi4vLi4vLi4vZW8tZnJhbWV3b3JrLWNvcmUvZW1wdHktc3RhdGUvZW1wdHktc3RhdGUuaW50ZXJmYWNlJztcclxuaW1wb3J0IHtFbXB0eVN0YXRlU2VydmljZX0gZnJvbSAnLi4vLi4vLi4vZW8tZnJhbWV3b3JrLWNvcmUvZW1wdHktc3RhdGUvZW1wdHktc3RhdGUuc2VydmljZSc7XHJcbmltcG9ydCB7SVNldEZpbHRlcn0gZnJvbSAnLi4vLi4vLi4vZW8tZnJhbWV3b3JrL2dyaWQvZXh0ZW5zaW9ucy9maWx0ZXIvc2V0RmlsdGVycy9zZXQtZmlsdGVycy5pbnRlcmZhY2UnO1xyXG5pbXBvcnQge0luYm94VHlwZXMsIEluYm94VHlwZXNGaWx0ZXJ9IGZyb20gJy4vaW5ib3gudHlwZXMuZW51bSc7XHJcbmltcG9ydCB7UGFnZVRpdGxlU2VydmljZX0gZnJvbSAnLi4vLi4vLi4vZW8tZnJhbWV3b3JrLWNvcmUvdGl0bGUvcGFnZS10aXRsZS5zZXJ2aWNlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnZW8taW5ib3gtc3RhdGUnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9pbmJveC1zdGF0ZS5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vaW5ib3gtc3RhdGUuY29tcG9uZW50LnNjc3MnXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgSW5ib3hTdGF0ZUNvbXBvbmVudCBleHRlbmRzIFVuc3Vic2NyaWJlT25EZXN0cm95IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3ksIFBlbmRpbmdDaGFuZ2VzQ29tcG9uZW50IHtcclxuXHJcbiAgZ3JpZE9wdGlvbnM6IEdyaWRPcHRpb25zO1xyXG4gIHNvcnRGaWVsZHM6IENvbERlZltdO1xyXG4gIGluYm94RmlsdGVyRmllbGRzOiBJU2V0RmlsdGVyW10gPSBbXTtcclxuICB0eXBlRmlsdGVyRmllbGRzOiBJU2V0RmlsdGVyW10gPSBbXTtcclxuICBpbmJveFNlbGVjdGlvbklkID0gJ2luYm94JztcclxuICBpbmJveERtc09iamVjdFNlbGVjdGlvbklkID0gJ2luYm94X2Rtcyc7XHJcbiAgaW5ib3hTZWxlY3Rpb246IFNlbGVjdGlvblNlcnZpY2U7XHJcbiAgc2VsZWN0ZWRJdGVtOiBhbnk7XHJcbiAgc2VsZWN0ZWREbXNQYXJhbXM6IGFueTtcclxuICBzZWxlY3RGaXJzdCA9IHRydWU7XHJcbiAgaWRNYXRjaCA9IHRydWU7XHJcbiAgZ3JpZERhdGE7XHJcbiAgZGVmYXVsdEZpbHRlclBhcmFtczogYW55ID0ge307XHJcbiAgZW1wdHlTdGF0ZTogRW1wdHlTdGF0ZSA9IHtpY29uOiAnaWNfbm8tZmlsZS5zdmcnLCB0ZXh0OiAnJywgY2xhc3NOYW1lOiAnJ307XHJcbiAgaW5ib3hDaGFuZ2VkID0gZmFsc2U7XHJcblxyXG4gIEBWaWV3Q2hpbGQoJ2VvR3JpZCcpIGVvR3JpZDogR3JpZENvbXBvbmVudDtcclxuXHJcbiAgY29uc3RydWN0b3IocHVibGljIHRyYW5zbGF0ZTogVHJhbnNsYXRlU2VydmljZSxcclxuICAgIHB1YmxpYyBzZWxlY3Rpb246IFNlbGVjdGlvblNlcnZpY2UsXHJcbiAgICBwcml2YXRlIHRpdGxlU2VydmljZTogUGFnZVRpdGxlU2VydmljZSxcclxuICAgIHB1YmxpYyBpbmJveFNlcnZpY2U6IEluYm94U2VydmljZSxcclxuICAgIHByaXZhdGUgcGVuZGluZ0NoYW5nZXM6IFBlbmRpbmdDaGFuZ2VzU2VydmljZSxcclxuICAgIHByaXZhdGUgZW1wdHk6IEVtcHR5U3RhdGVTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBldmVudFNlcnZpY2U6IEV2ZW50U2VydmljZSxcclxuICAgIHByaXZhdGUgcm91dGU6IEFjdGl2YXRlZFJvdXRlKSB7XHJcbiAgICBzdXBlcigpO1xyXG4gICAgdGhpcy50aXRsZVNlcnZpY2Uuc2V0QmFzZVRpdGxlKHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ2VvLmluYm94Lmxpc3QudGl0bGUnKSk7XHJcbiAgICAvL3NlY29uZGFyeSBzZWxlY3Rpb24gaW5zdGFuY2UgZm9yIGluYm94IGl0ZW1zXHJcbiAgICB0aGlzLmluYm94U2VsZWN0aW9uID0gdGhpcy5zZWxlY3Rpb24uY3JlYXRlTmV3KHRoaXMuaW5ib3hTZWxlY3Rpb25JZCk7XHJcbiAgICB0aGlzLnNlbGVjdGlvbi5jcmVhdGVOZXcodGhpcy5pbmJveERtc09iamVjdFNlbGVjdGlvbklkKTtcclxuXHJcbiAgICB0aGlzLnJvdXRlLnF1ZXJ5UGFyYW1zXHJcbiAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLmNvbXBvbmVudERlc3Ryb3llZCQpKVxyXG4gICAgICAuc3Vic2NyaWJlKChwYXJhbXM6IGFueSkgPT4ge1xyXG4gICAgICAgIHRoaXMuZGVmYXVsdEZpbHRlclBhcmFtcyA9IHtjb250ZXh0OiB7ZGVmYXVsdFZhbHVlOiBwYXJhbXMuaWR9fTtcclxuICAgICAgfSk7XHJcblxyXG4gICAgdGhpcy5pbmJveFNlcnZpY2UuaW5ib3hTdGF0ZSRcclxuICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuY29tcG9uZW50RGVzdHJveWVkJCkpXHJcbiAgICAgIC5zdWJzY3JpYmUoKHN0YXRlOiBJbmJveFN0YXRlKSA9PiB7XHJcbiAgICAgICAgaWYgKHRoaXMuZW9HcmlkKSB7XHJcbiAgICAgICAgICAvLyB0b2RvOiB0ZW1wb3JhcnkgZml4IHVudGlsIHN0YXR1cyBzZXJ2aWNlIHVwZGF0ZVxyXG4gICAgICAgICAgLy8gdGhpcy5pbmJveENoYW5nZWQgPSB0aGlzLmVvR3JpZC5jb250ZXh0Q291bnQgIT09IHN0YXRlLnRvdGFsbWVzc2FnZXM7XHJcbiAgICAgICAgfVxyXG4gICAgICB9KTtcclxuICB9XHJcblxyXG4gIG9uQ291bnRDaGFuZ2VkKGV2dDogYW55KSB7XHJcbiAgICBpZiAodGhpcy5kZWZhdWx0RmlsdGVyUGFyYW1zLmNvbnRleHQgJiYgdGhpcy5kZWZhdWx0RmlsdGVyUGFyYW1zLmNvbnRleHQuZGVmYXVsdFZhbHVlKSB7XHJcbiAgICAgIGlmIChldnQucm93Q291bnQgPT09IDApIHtcclxuICAgICAgICB0aGlzLmlkTWF0Y2ggPSBmYWxzZTtcclxuICAgICAgICB0aGlzLmRlZmF1bHRGaWx0ZXJQYXJhbXMuY29udGV4dC5kZWZhdWx0VmFsdWUgPSAnJztcclxuICAgICAgICB0aGlzLmluYm94U2VsZWN0aW9uLmNsZWFyKCk7XHJcbiAgICAgICAgdGhpcy5pbmJveFNlbGVjdGlvbi5kaXNhYmxlKCk7XHJcbiAgICAgICAgdGhpcy5lb0dyaWQuZ3JpZE9wdGlvbnMuY29udGV4dC5jb3VudCA9IDA7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgdGhpcy5kZWZhdWx0RmlsdGVyUGFyYW1zLmNvbnRleHQuZGVmYXVsdFZhbHVlID0gJyc7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIGhhc1BlbmRpbmdDaGFuZ2VzKCkge1xyXG4gICAgcmV0dXJuIHRoaXMucGVuZGluZ0NoYW5nZXMuaGFzUGVuZGluZ1Rhc2soKTtcclxuICB9XHJcblxyXG4gIG9uRG1zSXRlbVNlbGVjdGVkKGRhdGE6IGFueSkge1xyXG4gICAgdGhpcy5zZWxlY3RlZERtc1BhcmFtcyA9IGRhdGE7XHJcbiAgfVxyXG5cclxuICByZWZyZXNoR3JpZCgpIHtcclxuICAgIHRoaXMuaW5ib3hDaGFuZ2VkID0gZmFsc2U7XHJcbiAgICB0aGlzLmluYm94U2VsZWN0aW9uLmRpc2FibGUoZmFsc2UpO1xyXG4gICAgdGhpcy5pbmJveFNlcnZpY2UuZ2V0SXRlbXMoKS5zdWJzY3JpYmUoKTtcclxuICAgIHRoaXMuaW5ib3hTZXJ2aWNlLnJlZnJlc2hJbmJveFN0YXRlKCk7XHJcbiAgfVxyXG5cclxuICBpdGVtRmlsdGVyRmllbGRzKG5vZGUsIGl0ZW0pIHtcclxuICAgIGNvbnN0IHZhbHVlID0gbm9kZS5kYXRhW0luYm94VHlwZXNGaWx0ZXJbaXRlbV1dO1xyXG5cclxuICAgIHN3aXRjaCAoSW5ib3hUeXBlc0ZpbHRlcltpdGVtXSkge1xyXG4gICAgICBjYXNlIEluYm94VHlwZXNGaWx0ZXIub3ZlcmR1ZTpcclxuICAgICAgICByZXR1cm4gbm9kZS5kYXRhLmlzT3ZlcmR1ZSgpO1xyXG4gICAgICBjYXNlIEluYm94VHlwZXNGaWx0ZXIuYWJzZW50OlxyXG4gICAgICAgIHJldHVybiAhIXZhbHVlO1xyXG4gICAgICBjYXNlIEluYm94VHlwZXNGaWx0ZXIubXl0YXNrczpcclxuICAgICAgICByZXR1cm4gIShub2RlLmRhdGEudHlwZSA9PT0gJ0JQTScgJiYgIW5vZGUuZGF0YS5yZWFkKTtcclxuICAgICAgY2FzZSBJbmJveFR5cGVzRmlsdGVyLm9wZW50YXNrczpcclxuICAgICAgICByZXR1cm4gKG5vZGUuZGF0YS50eXBlID09PSAnQlBNJyAmJiAhbm9kZS5kYXRhLnJlYWQpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgZmllbGRGaWx0ZXJzKCkge1xyXG4gICAgdGhpcy50eXBlRmlsdGVyRmllbGRzID0gT2JqZWN0LmtleXMoSW5ib3hUeXBlcykubWFwKGl0ZW0gPT4gKHtcclxuICAgICAgbGFiZWw6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoYGVvLmluYm94LiR7aXRlbX1gKSxcclxuICAgICAgZmlsdGVyOiAobm9kZSkgPT4gbm9kZS5kYXRhLnR5cGUgPT09IGl0ZW0sXHJcbiAgICAgIHZhbHVlOiB0cnVlLFxyXG4gICAgICBpZDogaXRlbVxyXG4gICAgfSkpO1xyXG5cclxuICAgIHRoaXMuaW5ib3hGaWx0ZXJGaWVsZHMgPSBPYmplY3Qua2V5cyhJbmJveFR5cGVzRmlsdGVyKS5tYXAoaXRlbSA9PiAoe1xyXG4gICAgICBsYWJlbDogdGhpcy50cmFuc2xhdGUuaW5zdGFudChgZW8uaW5ib3guZmlsdGVyLiR7aXRlbX1gKSxcclxuICAgICAgZmlsdGVyOiAobm9kZSkgPT4gdGhpcy5pdGVtRmlsdGVyRmllbGRzKG5vZGUsIGl0ZW0pLFxyXG4gICAgICB2YWx1ZTogZmFsc2UsXHJcbiAgICAgIGlkOiBpdGVtXHJcbiAgICB9KSk7XHJcbiAgfVxyXG5cclxuICByZXNldEZpbHRlcnMoKSB7XHJcbiAgICB0aGlzLmZpZWxkRmlsdGVycygpO1xyXG4gIH1cclxuXHJcbiAgdXBkYXRlR3JpZChkYXRhOiBJbmJveEl0ZW1bXSk6IHZvaWQge1xyXG4gICAgdGhpcy5lbXB0eVN0YXRlID0gdGhpcy5lbXB0eS5nZXRFbXB0eVN0YXRlKGRhdGEgPyBkYXRhLmxlbmd0aCA6IC0xLCB1bmRlZmluZWQsICdpY19uby1maWxlLnN2ZycpO1xyXG5cclxuICAgIGlmICh0aGlzLmVvR3JpZCAmJiB0aGlzLmVvR3JpZC5pc1JlYWR5KSB7XHJcbiAgICAgIHJldHVybiB0aGlzLmVvR3JpZC51cGRhdGVSb3dEYXRhKGRhdGEpO1xyXG4gICAgfVxyXG5cclxuICAgIHRoaXMucmVzZXRGaWx0ZXJzKCk7XHJcblxyXG4gICAgbGV0IGNvbERlZnM6IENvbERlZltdID0gW3tcclxuICAgICAgaGVhZGVyTmFtZTogJycsXHJcbiAgICAgIGZpZWxkOiAnX19jdXN0b20nLFxyXG4gICAgICBjZWxsUmVuZGVyZXI6IHRoaXMuY2VsbFJlbmRlcmVyLFxyXG4gICAgICBmaWx0ZXI6IGZhbHNlXHJcbiAgICAgIC8vIGNlbGxSZW5kZXJlckZyYW1ld29yazogSW5ib3hSZW5kZXJlckNvbXBvbmVudFxyXG4gICAgfV07XHJcblxyXG4gICAgdGhpcy5zb3J0RmllbGRzID0gW1xyXG4gICAgICB7ZmllbGQ6ICd0aXRsZScsIGhlYWRlck5hbWU6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ2VvLmluYm94LnNvcnQudGl0bGUnKSwgc29ydDogJyd9LFxyXG4gICAgICB7XHJcbiAgICAgICAgZmllbGQ6ICdyZWNlaXZlZCcsIGhlYWRlck5hbWU6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ2VvLmluYm94LnNvcnQuZGF0ZScpLCBzb3J0OiAnJyxcclxuICAgICAgICB2YWx1ZUdldHRlcjogKHApID0+IChwLmRhdGFbcC5jb2xEZWYuZmllbGRdIHx8ICcnKS5tYXRjaCgvXFwrXFxkXFxkOlxcZFxcZC8pID8gbmV3IERhdGUocC5kYXRhW3AuY29sRGVmLmZpZWxkXSkudG9JU09TdHJpbmcoKSA6IHAuZGF0YVtwLmNvbERlZi5maWVsZF1cclxuICAgICAgfVxyXG4gICAgXTtcclxuXHJcbiAgICBsZXQgc29ydENvbERlZnMgPSBDdXN0b21Tb3J0Q29tcG9uZW50LnNvcnRDb2xEZWZzKHRoaXMuc29ydEZpZWxkcyk7XHJcblxyXG4gICAgdGhpcy5ncmlkT3B0aW9ucyA9IHtcclxuICAgICAgY29udGV4dDoge2NvdW50OiBkYXRhLmxlbmd0aH0sXHJcbiAgICAgIHJvd0RhdGE6IGRhdGEsXHJcbiAgICAgIGNvbHVtbkRlZnM6IGNvbERlZnMuY29uY2F0KHNvcnRDb2xEZWZzKSxcclxuICAgICAgcm93QnVmZmVyOiAyMCxcclxuICAgICAgcm93SGVpZ2h0OiA4MCxcclxuICAgICAgcm93U2VsZWN0aW9uOiAnc2luZ2xlJ1xyXG4gICAgfTtcclxuICB9XHJcblxyXG4gIGNlbGxSZW5kZXJlcihwYXJhbXMpIHtcclxuXHJcbiAgICBsZXQgbGFiZWwgPSAnJztcclxuICAgIGlmIChPYmplY3Qua2V5cyhJbmJveFR5cGVzKS5pbmNsdWRlcyhwYXJhbXMuZGF0YS50eXBlKSkge1xyXG4gICAgICBsYWJlbCA9IHBhcmFtcy5jb250ZXh0LnRyYW5zbGF0ZS5pbnN0YW50KGBlby5pbmJveC4ke3BhcmFtcy5kYXRhLnR5cGV9YCk7XHJcbiAgICB9XHJcblxyXG4gICAgY29uc3QgdXJsID0gYGFzc2V0cy9fZGVmYXVsdC9zdmcvaWNfJHtJbmJveFR5cGVzW3BhcmFtcy5kYXRhLnR5cGVdfS5zdmdgO1xyXG5cclxuICAgIGxldCBpY29uID0gcGFyYW1zLmNvbnRleHQuY3IucmVuZGVyKCdpY29uJywgcGFyYW1zLCB7dmFsdWU6IHt1cmwsIGxhYmVsfX0pO1xyXG4gICAgbGV0IHNob3J0RGF0ZSA9IHBhcmFtcy5jb250ZXh0LmNyLnJlbmRlcignZGF0ZVRpbWUnLCBwYXJhbXMsIHt2YWx1ZTogcGFyYW1zLmRhdGEucmVjZWl2ZWQsIHBhdHRlcm46ICdlb1Nob3J0RGF0ZSd9KTtcclxuICAgIGxldCBzaG9ydFRpbWUgPSBwYXJhbXMuY29udGV4dC5jci5yZW5kZXIoJ2RhdGVUaW1lJywgcGFyYW1zLCB7dmFsdWU6IHBhcmFtcy5kYXRhLnJlY2VpdmVkLCBwYXR0ZXJuOiAnZW9TaG9ydFRpbWUnfSk7XHJcbiAgICBsZXQgZHVldGltZSA9IHBhcmFtcy5jb250ZXh0LmNyLnJlbmRlcignZGF0ZVRpbWUnLCBwYXJhbXMsIHt2YWx1ZTogcGFyYW1zLmRhdGEuZHVldGltZX0pO1xyXG5cclxuICAgIHJldHVybiBgPGRpdiBjbGFzcz1cImxpc3QtaXRlbSR7cGFyYW1zLmRhdGEuZm9sZGVyID8gJyBmb2xkZXInIDogJyd9XCIgdW5zZWxlY3RhYmxlPlxyXG4gICAgICAgICAgICAgICR7aWNvbn1cclxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSdjb250ZW50Jz5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9J3RpdGxlJz4ke3BhcmFtcy5kYXRhLnRpdGxlIHx8ICcnfTwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0nZGVzY3JpcHRpb24nPiR7cGFyYW1zLmRhdGEuZGVzY3JpcHRpb24gfHwgJyd9PC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSdub3RlcyR7cGFyYW1zLmRhdGEuaXNPdmVyZHVlKCkgPyAnIHBhc3REdWUnIDogJyd9Jz5cclxuICAgICAgICAgICAgICAgICAgJHtwYXJhbXMuZGF0YS5kdWV0aW1lID8gJzxzcGFuIGNsYXNzPVwicGVyaW9kXCI+JyArIGR1ZXRpbWUgKyAnPC9zcGFuPicgOiAnJ31cclxuICAgICAgICAgICAgICAgICAgJHtwYXJhbXMuZGF0YS5pc2RlcHV0eSA/ICc8c3Bhbj4nICsgcGFyYW1zLmNvbnRleHQudHJhbnNsYXRlLmluc3RhbnQoJ2VvLmluYm94Lml0ZW0ubm90ZS5hYnNlbmNlJykgKyAnPC9zcGFuPicgOiAnJ31cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJtZXRhXCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZGF0ZVwiPiR7c2hvcnREYXRlfTwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImRhdGVcIj4ke3Nob3J0VGltZX08L2Rpdj5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgIGA7XHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpIHtcclxuICAgIHRoaXMucmVmcmVzaEdyaWQoKTtcclxuICAgIHRoaXMuaW5ib3hTZXJ2aWNlXHJcbiAgICAgIC5pbmJveEl0ZW1zR3JpZERhdGEkXHJcbiAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLmNvbXBvbmVudERlc3Ryb3llZCQpKVxyXG4gICAgICAuc3Vic2NyaWJlKChkYXRhOiBJbmJveEl0ZW1bXSkgPT4ge1xyXG4gICAgICAgIHRoaXMuZ3JpZERhdGEgPSBkYXRhO1xyXG4gICAgICAgIHRoaXMudXBkYXRlR3JpZCh0aGlzLmdyaWREYXRhKTtcclxuICAgICAgfSk7XHJcbiAgfVxyXG5cclxuICBuZ09uRGVzdHJveSgpIHtcclxuICAgIHRoaXMuc2VsZWN0aW9uLmNsZWFyKCk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
206
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5ib3gtc3RhdGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9lby1jbGllbnQvaW5ib3gtc3RhdGUvaW5ib3gtc3RhdGUvaW5ib3gtc3RhdGUuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBWSxTQUFTLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUNwRCxPQUFPLEVBQUMsU0FBUyxFQUFxQixTQUFTLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDdEUsT0FBTyxFQUFDLFlBQVksRUFBYyxtQkFBbUIsRUFBRSxnQkFBZ0IsRUFBQyxNQUFNLGNBQWMsQ0FBQztBQUU3RixPQUFPLEVBQVksWUFBWSxFQUFDLE1BQU0sY0FBYyxDQUFDO0FBQ3JELE9BQU8sRUFBQyxjQUFjLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUMsbUJBQW1CLEVBQUMsTUFBTSx5RUFBeUUsQ0FBQztBQUM1RyxPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSx3REFBd0QsQ0FBQztBQUN4RixPQUFPLEVBQUMsb0JBQW9CLEVBQUMsTUFBTSw4REFBOEQsQ0FBQztBQUdsRyxPQUFPLEVBQUMscUJBQXFCLEVBQUMsTUFBTSxvRUFBb0UsQ0FBQztBQUV6RyxPQUFPLEVBQUMsaUJBQWlCLEVBQUMsTUFBTSw0REFBNEQsQ0FBQztBQUU3RixPQUFPLEVBQUMsVUFBVSxFQUFFLGdCQUFnQixFQUFDLE1BQU0sb0JBQW9CLENBQUM7QUFDaEUsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0scURBQXFELENBQUM7QUFPckYsTUFBTSxPQUFPLG1CQUFvQixTQUFRLG9CQUFvQjtJQW1CM0QsWUFBbUIsU0FBMkIsRUFDckMsU0FBMkIsRUFDMUIsWUFBOEIsRUFDL0IsWUFBMEIsRUFDekIsY0FBcUMsRUFDckMsS0FBd0IsRUFDeEIsWUFBMEIsRUFDMUIsS0FBcUIsRUFD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QVEsQ0FBQyxDQUFDO1FBQ2pDLENBQUMsQ0FBQyxDQUFDO1FBRUwsTUFBTSxlQUFlLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLG9CQUFvQixDQUFDLENBQUM7UUFDL0UsSUFBSSxlQUFlLEVBQUU7WUFDbkIsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxLQUFLLGVBQWUsQ0FBQyxDQUFDO1lBQy9ELElBQUksSUFBSSxFQUFFO2dCQUNSLElBQUksQ0FBQyxXQUFXLEdBQUcsS0FBSyxDQUFDO2dCQUN6QixVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsR0FBRyxDQUFDLENBQUM7YUFDcEQ7U0FDRjtJQUNILENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUN6QixDQUFDOzs7WUE5TUYsU0FBUyxTQUFDO2dCQUNULFFBQVEsRUFBRSxnQkFBZ0I7Z0JBQzFCLG11S0FBMkM7O2FBRTVDOzs7WUFwQnNELGdCQUFnQjtZQUsvRCxnQkFBZ0I7WUFTaEIsZ0JBQWdCO1lBWkwsWUFBWTtZQU92QixxQkFBcUI7WUFFckIsaUJBQWlCO1lBWGpCLFlBQVk7WUFHWixjQUFjO1lBSFksbUJBQW1COzs7cUJBc0NsRCxTQUFTLFNBQUMsUUFBUSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7bWFwLCB0YWtlLCB0YWtlVW50aWx9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuaW1wb3J0IHtDb21wb25lbnQsIE9uRGVzdHJveSwgT25Jbml0LCBWaWV3Q2hpbGR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQge0V2ZW50U2VydmljZSwgSW5ib3hTdGF0ZSwgTG9jYWxTdG9yYWdlU2VydmljZSwgVHJhbnNsYXRlU2VydmljZX0gZnJvbSAnQGVvLXNkay9jb3JlJztcclxuaW1wb3J0IHtDb2xEZWYsIEdyaWRPcHRpb25zfSBmcm9tICdAYWctZ3JpZC1jb21tdW5pdHkvY29yZSc7XHJcbmltcG9ydCB7SW5ib3hJdGVtLCBJbmJveFNlcnZpY2V9IGZyb20gJ0Blby1zZGsvY29yZSc7XHJcbmltcG9ydCB7QWN0aXZhdGVkUm91dGV9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XHJcbmltcG9ydCB7Q3VzdG9tU29ydENvbXBvbmVudH0gZnJvbSAnLi4vLi4vLi4vZW8tZnJhbWV3b3JrL2dyaWQvZXh0ZW5zaW9ucy9jdXN0b20tc29ydC9jdXN0b20tc29ydC5jb21wb25lbnQnO1xyXG5pbXBvcnQge1NlbGVjdGlvblNlcnZpY2V9IGZyb20gJy4uLy4uLy4uL2VvLWZyYW1ld29yay1jb3JlL3NlbGVjdGlvbi9zZWxlY3Rpb24uc2VydmljZSc7XHJcbmltcG9ydCB7VW5zdWJzY3JpYmVPbkRlc3Ryb3l9IGZyb20gJy4uLy4uLy4uL2VvLWZyYW1ld29yay91dGlsL3Vuc3Vic2NyaWJlL3Vuc3Vic2NyaWJlLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7R3JpZENvbXBvbmVudH0gZnJvbSAnLi4vLi4vLi4vZW8tZnJhbWV3b3JrL2dyaWQvZ3JpZC5jb21wb25lbnQnO1xyXG5pbXBvcnQge1BlbmRpbmdDaGFuZ2VzQ29tcG9uZW50fSBmcm9tICcuLi8uLi8uLi9lby1mcmFtZXdvcmstY29yZS9wZW5kaW5nLWNoYW5nZXMvcGVuZGluZy1jaGFuZ2VzLWNvbXBvbmVudC5pbnRlcmZhY2UnO1xyXG5pbXBvcnQge1BlbmRpbmdDaGFuZ2VzU2VydmljZX0gZnJvbSAnLi4vLi4vLi4vZW8tZnJhbWV3b3JrLWNvcmUvcGVuZGluZy1jaGFuZ2VzL3BlbmRpbmctY2hhbmdlcy5zZXJ2aWNlJztcclxuaW1wb3J0IHtFbXB0eVN0YXRlfSBmcm9tICcuLi8uLi8uLi9lby1mcmFtZXdvcmstY29yZS9lbXB0eS1zdGF0ZS9lbXB0eS1zdGF0ZS5pbnRlcmZhY2UnO1xyXG5pbXBvcnQge0VtcHR5U3RhdGVTZXJ2aWNlfSBmcm9tICcuLi8uLi8uLi9lby1mcmFtZXdvcmstY29yZS9lbXB0eS1zdGF0ZS9lbXB0eS1zdGF0ZS5zZXJ2aWNlJztcclxuaW1wb3J0IHtJU2V0RmlsdGVyfSBmcm9tICcuLi8uLi8uLi9lby1mcmFtZXdvcmsvZ3JpZC9leHRlbnNpb25zL2ZpbHRlci9zZXRGaWx0ZXJzL3NldC1maWx0ZXJzLmludGVyZmFjZSc7XHJcbmltcG9ydCB7SW5ib3hUeXBlcywgSW5ib3hUeXBlc0ZpbHRlcn0gZnJvbSAnLi9pbmJveC50eXBlcy5lbnVtJztcclxuaW1wb3J0IHtQYWdlVGl0bGVTZXJ2aWNlfSBmcm9tICcuLi8uLi8uLi9lby1mcmFtZXdvcmstY29yZS90aXRsZS9wYWdlLXRpdGxlLnNlcnZpY2UnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdlby1pbmJveC1zdGF0ZScsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2luYm94LXN0YXRlLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9pbmJveC1zdGF0ZS5jb21wb25lbnQuc2NzcyddXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBJbmJveFN0YXRlQ29tcG9uZW50IGV4dGVuZHMgVW5zdWJzY3JpYmVPbkRlc3Ryb3kgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSwgUGVuZGluZ0NoYW5nZXNDb21wb25lbnQge1xyXG5cclxuICBncmlkT3B0aW9uczogR3JpZE9wdGlvbnM7XHJcbiAgc29ydEZpZWxkczogQ29sRGVmW107XHJcbiAgaW5ib3hGaWx0ZXJGaWVsZHM6IElTZXRGaWx0ZXJbXSA9IFtdO1xyXG4gIHR5cGVGaWx0ZXJGaWVsZHM6IElTZXRGaWx0ZXJbXSA9IFtdO1xyXG4gIGluYm94U2VsZWN0aW9uSWQgPSAnaW5ib3gnO1xyXG4gIGluYm94RG1zT2JqZWN0U2VsZWN0aW9uSWQgPSAnaW5ib3hfZG1zJztcclxuICBpbmJveFNlbGVjdGlvbjogU2VsZWN0aW9uU2VydmljZTtcclxuICBzZWxlY3RGaXJzdCA9IHRydWU7XHJcbiAgaWRNYXRjaCA9IHRydWU7XHJcbiAgZ3JpZERhdGE7XHJcbiAgZGVmYXVsdEZpbHRlclBhcmFtczogYW55ID0ge307XHJcbiAgZW1wdHlTdGF0ZTogRW1wdHlTdGF0ZSA9IHtpY29uOiAnaWNfbm8tZmlsZS5zdmcnLCB0ZXh0OiAnJywgY2xhc3NOYW1lOiAnJ307XHJcbiAgaW5ib3hDaGFuZ2VkID0gZmFsc2U7XHJcbiAgc3RvcmFnZUtleUxhc3RJdGVtSUQgPSAnZW8uaW5ib3gubGFzdEl0ZW1JRCc7XHJcblxyXG4gIEBWaWV3Q2hpbGQoJ2VvR3JpZCcpIGVvR3JpZDogR3JpZENvbXBvbmVudDtcclxuXHJcbiAgY29uc3RydWN0b3IocHVibGljIHRyYW5zbGF0ZTogVHJhbnNsYXRlU2VydmljZSxcclxuICAgIHB1YmxpYyBzZWxlY3Rpb246IFNlbGVjdGlvblNlcnZpY2UsXHJcbiAgICBwcml2YXRlIHRpdGxlU2VydmljZTogUGFnZVRpdGxlU2VydmljZSxcclxuICAgIHB1YmxpYyBpbmJveFNlcnZpY2U6IEluYm94U2VydmljZSxcclxuICAgIHByaXZhdGUgcGVuZGluZ0NoYW5nZXM6IFBlbmRpbmdDaGFuZ2VzU2VydmljZSxcclxuICAgIHByaXZhdGUgZW1wdHk6IEVtcHR5U3RhdGVTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBldmVudFNlcnZpY2U6IEV2ZW50U2VydmljZSxcclxuICAgIHByaXZhdGUgcm91dGU6IEFjdGl2YXRlZFJvdXRlLFxyXG4gICAgcHJpdmF0ZSBzdG9yYWdlU2VydmljZTogTG9jYWxTdG9yYWdlU2VydmljZSkge1xyXG4gICAgc3VwZXIoKTtcclxuICAgIHRoaXMudGl0bGVTZXJ2aWNlLnNldEJhc2VUaXRsZSh0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdlby5pbmJveC5saXN0LnRpdGxlJykpO1xyXG4gICAgLy9zZWNvbmRhcnkgc2VsZWN0aW9uIGluc3RhbmNlIGZvciBpbmJveCBpdGVtc1xyXG4gICAgdGhpcy5pbmJveFNlbGVjdGlvbiA9IHRoaXMuc2VsZWN0aW9uLmNyZWF0ZU5ldyh0aGlzLmluYm94U2VsZWN0aW9uSWQpO1xyXG4gICAgdGhpcy5zZWxlY3Rpb24uY3JlYXRlTmV3KHRoaXMuaW5ib3hEbXNPYmplY3RTZWxlY3Rpb25JZCk7XHJcblxyXG4gICAgdGhpcy5yb3V0ZS5xdWVyeVBhcmFtc1xyXG4gICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5jb21wb25lbnREZXN0cm95ZWQkKSlcclxuICAgICAgLnN1YnNjcmliZSgocGFyYW1zOiBhbnkpID0+IHtcclxuICAgICAgICB0aGlzLmRlZmF1bHRGaWx0ZXJQYXJhbXMgPSB7Y29udGV4dDoge2RlZmF1bHRWYWx1ZTogcGFyYW1zLmlkfX07XHJcbiAgICAgIH0pO1xyXG5cclxuICAgIHRoaXMuaW5ib3hTZXJ2aWNlLmluYm94U3RhdGUkXHJcbiAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLmNvbXBvbmVudERlc3Ryb3llZCQpKVxyXG4gICAgICAuc3Vic2NyaWJlKChzdGF0ZTogSW5ib3hTdGF0ZSkgPT4ge1xyXG4gICAgICAgIGlmICh0aGlzLmVvR3JpZCkge1xyXG4gICAgICAgICAgLy8gdG9kbzogdGVtcG9yYXJ5IGZpeCB1bnRpbCBzdGF0dXMgc2VydmljZSB1cGRhdGVcclxuICAgICAgICAgIC8vIHRoaXMuaW5ib3hDaGFuZ2VkID0gdGhpcy5lb0dyaWQuY29udGV4dENvdW50ICE9PSBzdGF0ZS50b3RhbG1lc3NhZ2VzO1xyXG4gICAgICAgIH1cclxuICAgICAgfSk7XHJcbiAgfVxyXG5cclxuICBvbkNvdW50Q2hhbmdlZChldnQ6IGFueSkge1xyXG4gICAgaWYgKHRoaXMuZGVmYXVsdEZpbHRlclBhcmFtcy5jb250ZXh0ICYmIHRoaXMuZGVmYXVsdEZpbHRlclBhcmFtcy5jb250ZXh0LmRlZmF1bHRWYWx1ZSkge1xyXG4gICAgICBpZiAoZXZ0LnJvd0NvdW50ID09PSAwKSB7XHJcbiAgICAgICAgdGhpcy5pZE1hdGNoID0gZmFsc2U7XHJcbiAgICAgICAgdGhpcy5kZWZhdWx0RmlsdGVyUGFyYW1zLmNvbnRleHQuZGVmYXVsdFZhbHVlID0gJyc7XHJcbiAgICAgICAgdGhpcy5pbmJveFNlbGVjdGlvbi5jbGVhcigpO1xyXG4gICAgICAgIHRoaXMuaW5ib3hTZWxlY3Rpb24uZGlzYWJsZSgpO1xyXG4gICAgICAgIHRoaXMuZW9HcmlkLmdyaWRPcHRpb25zLmNvbnRleHQuY291bnQgPSAwO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHRoaXMuZGVmYXVsdEZpbHRlclBhcmFtcy5jb250ZXh0LmRlZmF1bHRWYWx1ZSA9ICcnO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBoYXNQZW5kaW5nQ2hhbmdlcygpIHtcclxuICAgIHJldHVybiB0aGlzLnBlbmRpbmdDaGFuZ2VzLmhhc1BlbmRpbmdUYXNrKCk7XHJcbiAgfVxyXG5cclxuICByZWZyZXNoR3JpZCgpIHtcclxuICAgIHRoaXMuaW5ib3hDaGFuZ2VkID0gZmFsc2U7XHJcbiAgICB0aGlzLmluYm94U2VsZWN0aW9uLmRpc2FibGUoZmFsc2UpO1xyXG4gICAgdGhpcy5pbmJveFNlcnZpY2UuZ2V0SXRlbXMoKS5zdWJzY3JpYmUoKTtcclxuICAgIHRoaXMuaW5ib3hTZXJ2aWNlLnJlZnJlc2hJbmJveFN0YXRlKCk7XHJcbiAgfVxyXG5cclxuICBpdGVtRmlsdGVyRmllbGRzKG5vZGUsIGl0ZW0pIHtcclxuICAgIGNvbnN0IHZhbHVlID0gbm9kZS5kYXRhW0luYm94VHlwZXNGaWx0ZXJbaXRlbV1dO1xyXG5cclxuICAgIHN3aXRjaCAoSW5ib3hUeXBlc0ZpbHRlcltpdGVtXSkge1xyXG4gICAgICBjYXNlIEluYm94VHlwZXNGaWx0ZXIub3ZlcmR1ZTpcclxuICAgICAgICByZXR1cm4gbm9kZS5kYXRhLmlzT3ZlcmR1ZSgpO1xyXG4gICAgICBjYXNlIEluYm94VHlwZXNGaWx0ZXIuYWJzZW50OlxyXG4gICAgICAgIHJldHVybiAhIXZhbHVlO1xyXG4gICAgICBjYXNlIEluYm94VHlwZXNGaWx0ZXIubXl0YXNrczpcclxuICAgICAgICByZXR1cm4gIShub2RlLmRhdGEudHlwZSA9PT0gJ0JQTScgJiYgIW5vZGUuZGF0YS5yZWFkKTtcclxuICAgICAgY2FzZSBJbmJveFR5cGVzRmlsdGVyLm9wZW50YXNrczpcclxuICAgICAgICByZXR1cm4gKG5vZGUuZGF0YS50eXBlID09PSAnQlBNJyAmJiAhbm9kZS5kYXRhLnJlYWQpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgZmllbGRGaWx0ZXJzKCkge1xyXG4gICAgdGhpcy50eXBlRmlsdGVyRmllbGRzID0gT2JqZWN0LmtleXMoSW5ib3hUeXBlcykubWFwKGl0ZW0gPT4gKHtcclxuICAgICAgbGFiZWw6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoYGVvLmluYm94LiR7aXRlbX1gKSxcclxuICAgICAgZmlsdGVyOiAobm9kZSkgPT4gbm9kZS5kYXRhLnR5cGUgPT09IGl0ZW0sXHJcbiAgICAgIHZhbHVlOiB0cnVlLFxyXG4gICAgICBpZDogaXRlbVxyXG4gICAgfSkpO1xyXG5cclxuICAgIHRoaXMuaW5ib3hGaWx0ZXJGaWVsZHMgPSBPYmplY3Qua2V5cyhJbmJveFR5cGVzRmlsdGVyKS5tYXAoaXRlbSA9PiAoe1xyXG4gICAgICBsYWJlbDogdGhpcy50cmFuc2xhdGUuaW5zdGFudChgZW8uaW5ib3guZmlsdGVyLiR7aXRlbX1gKSxcclxuICAgICAgZmlsdGVyOiAobm9kZSkgPT4gdGhpcy5pdGVtRmlsdGVyRmllbGRzKG5vZGUsIGl0ZW0pLFxyXG4gICAgICB2YWx1ZTogZmFsc2UsXHJcbiAgICAgIGlkOiBpdGVtXHJcbiAgICB9KSk7XHJcbiAgfVxyXG5cclxuICByZXNldEZpbHRlcnMoKSB7XHJcbiAgICB0aGlzLmZpZWxkRmlsdGVycygpO1xyXG4gIH1cclxuXHJcbiAgdXBkYXRlR3JpZChkYXRhOiBJbmJveEl0ZW1bXSk6IHZvaWQge1xyXG4gICAgdGhpcy5lbXB0eVN0YXRlID0gdGhpcy5lbXB0eS5nZXRFbXB0eVN0YXRlKGRhdGEgPyBkYXRhLmxlbmd0aCA6IC0xLCB1bmRlZmluZWQsICdpY19uby1maWxlLnN2ZycpO1xyXG5cclxuICAgIGlmICh0aGlzLmVvR3JpZCAmJiB0aGlzLmVvR3JpZC5pc1JlYWR5KSB7XHJcbiAgICAgIHJldHVybiB0aGlzLmVvR3JpZC51cGRhdGVSb3dEYXRhKGRhdGEpO1xyXG4gICAgfVxyXG5cclxuICAgIHRoaXMucmVzZXRGaWx0ZXJzKCk7XHJcblxyXG4gICAgbGV0IGNvbERlZnM6IENvbERlZltdID0gW3tcclxuICAgICAgaGVhZGVyTmFtZTogJycsXHJcbiAgICAgIGZpZWxkOiAnX19jdXN0b20nLFxyXG4gICAgICBjZWxsUmVuZGVyZXI6IHRoaXMuY2VsbFJlbmRlcmVyLFxyXG4gICAgICBmaWx0ZXI6IGZhbHNlXHJcbiAgICAgIC8vIGNlbGxSZW5kZXJlckZyYW1ld29yazogSW5ib3hSZW5kZXJlckNvbXBvbmVudFxyXG4gICAgfV07XHJcblxyXG4gICAgdGhpcy5zb3J0RmllbGRzID0gW1xyXG4gICAgICB7ZmllbGQ6ICd0aXRsZScsIGhlYWRlck5hbWU6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ2VvLmluYm94LnNvcnQudGl0bGUnKSwgc29ydDogJyd9LFxyXG4gICAgICB7XHJcbiAgICAgICAgZmllbGQ6ICdyZWNlaXZlZCcsIGhlYWRlck5hbWU6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ2VvLmluYm94LnNvcnQuZGF0ZScpLCBzb3J0OiAnJyxcclxuICAgICAgICB2YWx1ZUdldHRlcjogKHApID0+IChwLmRhdGFbcC5jb2xEZWYuZmllbGRdIHx8ICcnKS5tYXRjaCgvXFwrXFxkXFxkOlxcZFxcZC8pID8gbmV3IERhdGUocC5kYXRhW3AuY29sRGVmLmZpZWxkXSkudG9JU09TdHJpbmcoKSA6IHAuZGF0YVtwLmNvbERlZi5maWVsZF1cclxuICAgICAgfVxyXG4gICAgXTtcclxuXHJcbiAgICBsZXQgc29ydENvbERlZnMgPSBDdXN0b21Tb3J0Q29tcG9uZW50LnNvcnRDb2xEZWZzKHRoaXMuc29ydEZpZWxkcyk7XHJcblxyXG4gICAgdGhpcy5ncmlkT3B0aW9ucyA9IHtcclxuICAgICAgY29udGV4dDoge2NvdW50OiBkYXRhLmxlbmd0aH0sXHJcbiAgICAgIHJvd0RhdGE6IGRhdGEsXHJcbiAgICAgIGNvbHVtbkRlZnM6IGNvbERlZnMuY29uY2F0KHNvcnRDb2xEZWZzKSxcclxuICAgICAgcm93QnVmZmVyOiAyMCxcclxuICAgICAgcm93SGVpZ2h0OiA4MCxcclxuICAgICAgcm93U2VsZWN0aW9uOiAnc2luZ2xlJ1xyXG4gICAgfTtcclxuICB9XHJcblxyXG4gIGNlbGxSZW5kZXJlcihwYXJhbXMpIHtcclxuXHJcbiAgICBsZXQgbGFiZWwgPSAnJztcclxuICAgIGlmIChPYmplY3Qua2V5cyhJbmJveFR5cGVzKS5pbmNsdWRlcyhwYXJhbXMuZGF0YS50eXBlKSkge1xyXG4gICAgICBsYWJlbCA9IHBhcmFtcy5jb250ZXh0LnRyYW5zbGF0ZS5pbnN0YW50KGBlby5pbmJveC4ke3BhcmFtcy5kYXRhLnR5cGV9YCk7XHJcbiAgICB9XHJcblxyXG4gICAgY29uc3QgdXJsID0gYGFzc2V0cy9fZGVmYXVsdC9zdmcvaWNfJHtJbmJveFR5cGVzW3BhcmFtcy5kYXRhLnR5cGVdfS5zdmdgO1xyXG5cclxuICAgIGxldCBpY29uID0gcGFyYW1zLmNvbnRleHQuY3IucmVuZGVyKCdpY29uJywgcGFyYW1zLCB7dmFsdWU6IHt1cmwsIGxhYmVsfX0pO1xyXG4gICAgbGV0IHNob3J0RGF0ZSA9IHBhcmFtcy5jb250ZXh0LmNyLnJlbmRlcignZGF0ZVRpbWUnLCBwYXJhbXMsIHt2YWx1ZTogcGFyYW1zLmRhdGEucmVjZWl2ZWQsIHBhdHRlcm46ICdlb1Nob3J0RGF0ZSd9KTtcclxuICAgIGxldCBzaG9ydFRpbWUgPSBwYXJhbXMuY29udGV4dC5jci5yZW5kZXIoJ2RhdGVUaW1lJywgcGFyYW1zLCB7dmFsdWU6IHBhcmFtcy5kYXRhLnJlY2VpdmVkLCBwYXR0ZXJuOiAnZW9TaG9ydFRpbWUnfSk7XHJcbiAgICBsZXQgZHVldGltZSA9IHBhcmFtcy5jb250ZXh0LmNyLnJlbmRlcignZGF0ZVRpbWUnLCBwYXJhbXMsIHt2YWx1ZTogcGFyYW1zLmRhdGEuZHVldGltZX0pO1xyXG5cclxuICAgIHJldHVybiBgPGRpdiBjbGFzcz1cImxpc3QtaXRlbSR7cGFyYW1zLmRhdGEuZm9sZGVyID8gJyBmb2xkZXInIDogJyd9XCIgdW5zZWxlY3RhYmxlPlxyXG4gICAgICAgICAgICAgICR7aWNvbn1cclxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSdjb250ZW50Jz5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9J3RpdGxlJz4ke3BhcmFtcy5kYXRhLnRpdGxlIHx8ICcnfTwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0nZGVzY3JpcHRpb24nPiR7cGFyYW1zLmRhdGEuZGVzY3JpcHRpb24gfHwgJyd9PC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSdub3RlcyR7cGFyYW1zLmRhdGEuaXNPdmVyZHVlKCkgPyAnIHBhc3REdWUnIDogJyd9Jz5cclxuICAgICAgICAgICAgICAgICAgJHtwYXJhbXMuZGF0YS5kdWV0aW1lID8gJzxzcGFuIGNsYXNzPVwicGVyaW9kXCI+JyArIGR1ZXRpbWUgKyAnPC9zcGFuPicgOiAnJ31cclxuICAgICAgICAgICAgICAgICAgJHtwYXJhbXMuZGF0YS5pc2RlcHV0eSA/ICc8c3Bhbj4nICsgcGFyYW1zLmNvbnRleHQudHJhbnNsYXRlLmluc3RhbnQoJ2VvLmluYm94Lml0ZW0ubm90ZS5hYnNlbmNlJykgKyAnPC9zcGFuPicgOiAnJ31cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJtZXRhXCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZGF0ZVwiPiR7c2hvcnREYXRlfTwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImRhdGVcIj4ke3Nob3J0VGltZX08L2Rpdj5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgIGA7XHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpIHtcclxuICAgIHRoaXMucmVmcmVzaEdyaWQoKTtcclxuICAgIHRoaXMuaW5ib3hTZXJ2aWNlXHJcbiAgICAgIC5pbmJveEl0ZW1zR3JpZERhdGEkXHJcbiAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLmNvbXBvbmVudERlc3Ryb3llZCQpKVxyXG4gICAgICAuc3Vic2NyaWJlKChkYXRhOiBJbmJveEl0ZW1bXSkgPT4ge1xyXG4gICAgICAgIHRoaXMuZ3JpZERhdGEgPSBkYXRhO1xyXG4gICAgICAgIHRoaXMudXBkYXRlR3JpZCh0aGlzLmdyaWREYXRhKTtcclxuICAgICAgfSk7XHJcblxyXG4gICAgY29uc3QgbGFzdEluYm94SXRlbUlEID0gdGhpcy5zdG9yYWdlU2VydmljZS5nZXRJdGVtKHRoaXMuc3RvcmFnZUtleUxhc3RJdGVtSUQpO1xyXG4gICAgaWYgKGxhc3RJbmJveEl0ZW1JRCkge1xyXG4gICAgICBjb25zdCBpdGVtID0gdGhpcy5ncmlkRGF0YS5maW5kKGkgPT4gaS5pZCA9PT0gbGFzdEluYm94SXRlbUlEKTtcclxuICAgICAgaWYgKGl0ZW0pIHtcclxuICAgICAgICB0aGlzLnNlbGVjdEZpcnN0ID0gZmFsc2U7XHJcbiAgICAgICAgc2V0VGltZW91dCgoKSA9PiB0aGlzLmVvR3JpZC5zZWxlY3RSb3coaXRlbSksIDUwMCk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIG5nT25EZXN0cm95KCkge1xyXG4gICAgdGhpcy5zZWxlY3Rpb24uY2xlYXIoKTtcclxuICB9XHJcbn1cclxuIl19
@@ -25,7 +25,7 @@ export class AddResubmissionActionComponent extends DmsObjectTarget {
25
25
  isExecutable(element) {
26
26
  const hasPrivilege = this.userService.getCurrentUser().hasPrivilege('MANAGE_RESUBMISSIONS');
27
27
  const isAllowedType = this.actionService.isAllowedType([element], ['sysemail']);
28
- if (hasPrivilege && this.isAllowedState() && isAllowedType) {
28
+ if (hasPrivilege && this.isAllowedState() && isAllowedType && !element.isFinalized) {
29
29
  return observableOf(!element.resubmissions.length);
30
30
  }
31
31
  else {
@@ -50,4 +50,4 @@ AddResubmissionActionComponent.ctorParameters = () => [
50
50
  { type: Router },
51
51
  { type: ActionService }
52
52
  ];
53
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRkLXJlc3VibWlzc2lvbi1hY3Rpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL2VvLWZyYW1ld29yay9hY3Rpb25zL2FjdGlvbnMvYWRkLXJlc3VibWlzc2lvbi1hY3Rpb24vYWRkLXJlc3VibWlzc2lvbi1hY3Rpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFDLEVBQUUsSUFBSSxZQUFZLEVBQWEsTUFBTSxNQUFNLENBQUM7QUFDcEQsT0FBTyxFQUFDLE1BQU0sRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBQ3ZDLE9BQU8sRUFBQyxTQUFTLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDeEMsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0sY0FBYyxDQUFDO0FBQzlDLE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSxxQkFBcUIsQ0FBQztBQUNwRCxPQUFPLEVBQUMsY0FBYyxFQUFDLE1BQU0sNEJBQTRCLENBQUM7QUFFMUQsT0FBTyxFQUFDLHdCQUF3QixFQUFDLE1BQU0sK0NBQStDLENBQUM7QUFDdkYsT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLHFDQUFxQyxDQUFDO0FBQ2xFLE9BQU8sRUFBWSxXQUFXLEVBQUMsTUFBTSxjQUFjLENBQUM7QUFNcEQsTUFBTSxPQUFPLDhCQUErQixTQUFRLGVBQWU7SUFTakUsWUFBb0IsU0FBMkIsRUFDM0IsV0FBd0IsRUFDeEIsTUFBYyxFQUNkLGFBQTRCO1FBQzlDLEtBQUssRUFBRSxDQUFDO1FBSlUsY0FBUyxHQUFULFNBQVMsQ0FBa0I7UUFDM0IsZ0JBQVcsR0FBWCxXQUFXLENBQWE7UUFDeEIsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUNkLGtCQUFhLEdBQWIsYUFBYSxDQUFlO1FBWGhELGNBQVMsR0FBRyx3QkFBd0IsQ0FBQztRQUdyQyxhQUFRLEdBQUcsQ0FBQyxDQUFDO1FBQ2IsWUFBTyxHQUFHLHlDQUF5QyxDQUFDO1FBQ3BELFVBQUssR0FBRyxRQUFRLENBQUM7UUFDakIsVUFBSyxHQUFHLGNBQWMsQ0FBQyxZQUFZLENBQUM7UUFRbEMsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxxQ0FBcUMsQ0FBQyxDQUFDO1FBQzNFLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsMkNBQTJDLENBQUMsQ0FBQztJQUN6RixDQUFDO0lBRUQsWUFBWSxDQUFDLE9BQWtCO1FBQzdCLE1BQU0sWUFBWSxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsY0FBYyxFQUFFLENBQUMsWUFBWSxDQUFDLHNCQUFzQixDQUFDLENBQUM7UUFDNUYsTUFBTSxhQUFhLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxhQUFhLENBQUMsQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUM7UUFDaEYsSUFBSSxZQUFZLElBQUksSUFBSSxDQUFDLGNBQWMsRUFBRSxJQUFJLGFBQWEsRUFBRTtZQUMxRCxPQUFPLFlBQVksQ0FBQyxDQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUMsTUFBTSxDQUFDLENBQUM7U0FDcEQ7YUFBTTtZQUNMLE9BQU8sWUFBWSxDQUFDLEtBQUssQ0FBQyxDQUFDO1NBQzVCO0lBQ0gsQ0FBQztJQUFBLENBQUM7SUFFRixjQUFjO1FBQ1osTUFBTSxjQUFjLEdBQUcsQ0FBQyxXQUFXLEVBQUUsZ0JBQWdCLENBQUMsQ0FBQztRQUN2RCxPQUFPLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ2xFLENBQUM7OztZQXBDRixTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLDRCQUE0QjtnQkFDdEMsUUFBUSxFQUFFLEVBQUU7YUFDYjs7O1lBWE8sZ0JBQWdCO1lBTUwsV0FBVztZQVJ0QixNQUFNO1lBT04sYUFBYSIsInNvdXJjZXNDb250ZW50IjpbIlxyXG5pbXBvcnQge29mIGFzIG9ic2VydmFibGVPZiwgT2JzZXJ2YWJsZX0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7Um91dGVyfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xyXG5pbXBvcnQge0NvbXBvbmVudH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7VHJhbnNsYXRlU2VydmljZX0gZnJvbSAnQGVvLXNkay9jb3JlJztcclxuaW1wb3J0IHtEbXNPYmplY3RUYXJnZXR9IGZyb20gJy4uLy4uL2FjdGlvbi10YXJnZXQnO1xyXG5pbXBvcnQge1NlbGVjdGlvblJhbmdlfSBmcm9tICcuLi8uLi9zZWxlY3Rpb24tcmFuZ2UuZW51bSc7XHJcbmltcG9ydCB7Q29tcG9uZW50QWN0aW9ufSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzL2FjdGlvbi5pbnRlcmZhY2UnO1xyXG5pbXBvcnQge0FkZFJlc3VibWlzc2lvbkNvbXBvbmVudH0gZnJvbSAnLi9hZGQtcmVzdWJtaXNzaW9uL2FkZC1yZXN1Ym1pc3Npb24uY29tcG9uZW50JztcclxuaW1wb3J0IHtBY3Rpb25TZXJ2aWNlfSBmcm9tICcuLi8uLi9hY3Rpb24tc2VydmljZS9hY3Rpb24uc2VydmljZSc7XHJcbmltcG9ydCB7RG1zT2JqZWN0LCBVc2VyU2VydmljZX0gZnJvbSAnQGVvLXNkay9jb3JlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnZW8tYWRkLXJlc3VibWlzc2lvbi1hY3Rpb24nLFxyXG4gIHRlbXBsYXRlOiBgYFxyXG59KVxyXG5leHBvcnQgY2xhc3MgQWRkUmVzdWJtaXNzaW9uQWN0aW9uQ29tcG9uZW50IGV4dGVuZHMgRG1zT2JqZWN0VGFyZ2V0IGltcGxlbWVudHMgQ29tcG9uZW50QWN0aW9uIHtcclxuICBjb21wb25lbnQgPSBBZGRSZXN1Ym1pc3Npb25Db21wb25lbnQ7XHJcbiAgbGFiZWw6IHN0cmluZztcclxuICBkZXNjcmlwdGlvbjogc3RyaW5nO1xyXG4gIHByaW9yaXR5ID0gNTtcclxuICBpY29uU3JjID0gJ2Fzc2V0cy9fZGVmYXVsdC9zdmcvaWNfcmVzdWJtaXNzaW9uLnN2Zyc7XHJcbiAgZ3JvdXAgPSAnY29tbW9uJztcclxuICByYW5nZSA9IFNlbGVjdGlvblJhbmdlLk1VTFRJX1NFTEVDVDtcclxuXHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSB0cmFuc2xhdGU6IFRyYW5zbGF0ZVNlcnZpY2UsXHJcbiAgICAgICAgICAgICAgcHJpdmF0ZSB1c2VyU2VydmljZTogVXNlclNlcnZpY2UsXHJcbiAgICAgICAgICAgICAgcHJpdmF0ZSByb3V0ZXI6IFJvdXRlcixcclxuICAgICAgICAgICAgICBwcml2YXRlIGFjdGlvblNlcnZpY2U6IEFjdGlvblNlcnZpY2UpIHtcclxuICAgIHN1cGVyKCk7XHJcblxyXG4gICAgdGhpcy5sYWJlbCA9IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ2VvLmFjdGlvbi5jcmVhdGUucmVzdWJtaXNzaW9uLmxhYmVsJyk7XHJcbiAgICB0aGlzLmRlc2NyaXB0aW9uID0gdGhpcy50cmFuc2xhdGUuaW5zdGFudCgnZW8uYWN0aW9uLmNyZWF0ZS5yZXN1Ym1pc3Npb24uZGVzY3JpcHRpb24nKTtcclxuICB9XHJcblxyXG4gIGlzRXhlY3V0YWJsZShlbGVtZW50OiBEbXNPYmplY3QpOiBPYnNlcnZhYmxlPGJvb2xlYW4+IHtcclxuICAgIGNvbnN0IGhhc1ByaXZpbGVnZSA9IHRoaXMudXNlclNlcnZpY2UuZ2V0Q3VycmVudFVzZXIoKS5oYXNQcml2aWxlZ2UoJ01BTkFHRV9SRVNVQk1JU1NJT05TJyk7XHJcbiAgICBjb25zdCBpc0FsbG93ZWRUeXBlID0gdGhpcy5hY3Rpb25TZXJ2aWNlLmlzQWxsb3dlZFR5cGUoW2VsZW1lbnRdLCBbJ3N5c2VtYWlsJ10pO1xyXG4gICAgaWYgKGhhc1ByaXZpbGVnZSAmJiB0aGlzLmlzQWxsb3dlZFN0YXRlKCkgJiYgaXNBbGxvd2VkVHlwZSkge1xyXG4gICAgICByZXR1cm4gb2JzZXJ2YWJsZU9mKCFlbGVtZW50LnJlc3VibWlzc2lvbnMubGVuZ3RoKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHJldHVybiBvYnNlcnZhYmxlT2YoZmFsc2UpO1xyXG4gICAgfVxyXG4gIH07XHJcblxyXG4gIGlzQWxsb3dlZFN0YXRlKCk6IGJvb2xlYW4ge1xyXG4gICAgY29uc3QgZGlzYWJsZWRTdGF0ZXMgPSBbJy92ZXJzaW9ucycsICcvbm90aWZpY2F0aW9ucyddO1xyXG4gICAgcmV0dXJuICFkaXNhYmxlZFN0YXRlcy5zb21lKHMgPT4gdGhpcy5yb3V0ZXIudXJsLnN0YXJ0c1dpdGgocykpO1xyXG4gIH1cclxufVxyXG4iXX0=
53
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRkLXJlc3VibWlzc2lvbi1hY3Rpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL2VvLWZyYW1ld29yay9hY3Rpb25zL2FjdGlvbnMvYWRkLXJlc3VibWlzc2lvbi1hY3Rpb24vYWRkLXJlc3VibWlzc2lvbi1hY3Rpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFDLEVBQUUsSUFBSSxZQUFZLEVBQWEsTUFBTSxNQUFNLENBQUM7QUFDcEQsT0FBTyxFQUFDLE1BQU0sRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBQ3ZDLE9BQU8sRUFBQyxTQUFTLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDeEMsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0sY0FBYyxDQUFDO0FBQzlDLE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSxxQkFBcUIsQ0FBQztBQUNwRCxPQUFPLEVBQUMsY0FBYyxFQUFDLE1BQU0sNEJBQTRCLENBQUM7QUFFMUQsT0FBTyxFQUFDLHdCQUF3QixFQUFDLE1BQU0sK0NBQStDLENBQUM7QUFDdkYsT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLHFDQUFxQyxDQUFDO0FBQ2xFLE9BQU8sRUFBWSxXQUFXLEVBQUMsTUFBTSxjQUFjLENBQUM7QUFNcEQsTUFBTSxPQUFPLDhCQUErQixTQUFRLGVBQWU7SUFTakUsWUFBb0IsU0FBMkIsRUFDM0IsV0FBd0IsRUFDeEIsTUFBYyxFQUNkLGFBQTRCO1FBQzlDLEtBQUssRUFBRSxDQUFDO1FBSlUsY0FBUyxHQUFULFNBQVMsQ0FBa0I7UUFDM0IsZ0JBQVcsR0FBWCxXQUFXLENBQWE7UUFDeEIsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUNkLGtCQUFhLEdBQWIsYUFBYSxDQUFlO1FBWGhELGNBQVMsR0FBRyx3QkFBd0IsQ0FBQztRQUdyQyxhQUFRLEdBQUcsQ0FBQyxDQUFDO1FBQ2IsWUFBTyxHQUFHLHlDQUF5QyxDQUFDO1FBQ3BELFVBQUssR0FBRyxRQUFRLENBQUM7UUFDakIsVUFBSyxHQUFHLGNBQWMsQ0FBQyxZQUFZLENBQUM7UUFRbEMsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxxQ0FBcUMsQ0FBQyxDQUFDO1FBQzNFLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsMkNBQTJDLENBQUMsQ0FBQztJQUN6RixDQUFDO0lBRUQsWUFBWSxDQUFDLE9BQWtCO1FBQzdCLE1BQU0sWUFBWSxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsY0FBYyxFQUFFLENBQUMsWUFBWSxDQUFDLHNCQUFzQixDQUFDLENBQUM7UUFDNUYsTUFBTSxhQUFhLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxhQUFhLENBQUMsQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUM7UUFDaEYsSUFBSSxZQUFZLElBQUksSUFBSSxDQUFDLGNBQWMsRUFBRSxJQUFJLGFBQWEsSUFBSSxDQUFDLE9BQU8sQ0FBQyxXQUFXLEVBQUU7WUFDbEYsT0FBTyxZQUFZLENBQUMsQ0FBQyxPQUFPLENBQUMsYUFBYSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1NBQ3BEO2FBQU07WUFDTCxPQUFPLFlBQVksQ0FBQyxLQUFLLENBQUMsQ0FBQztTQUM1QjtJQUNILENBQUM7SUFBQSxDQUFDO0lBRUYsY0FBYztRQUNaLE1BQU0sY0FBYyxHQUFHLENBQUMsV0FBVyxFQUFFLGdCQUFnQixDQUFDLENBQUM7UUFDdkQsT0FBTyxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNsRSxDQUFDOzs7WUFwQ0YsU0FBUyxTQUFDO2dCQUNULFFBQVEsRUFBRSw0QkFBNEI7Z0JBQ3RDLFFBQVEsRUFBRSxFQUFFO2FBQ2I7OztZQVhPLGdCQUFnQjtZQU1MLFdBQVc7WUFSdEIsTUFBTTtZQU9OLGFBQWEiLCJzb3VyY2VzQ29udGVudCI6WyJcclxuaW1wb3J0IHtvZiBhcyBvYnNlcnZhYmxlT2YsIE9ic2VydmFibGV9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQge1JvdXRlcn0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcclxuaW1wb3J0IHtDb21wb25lbnR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQge1RyYW5zbGF0ZVNlcnZpY2V9IGZyb20gJ0Blby1zZGsvY29yZSc7XHJcbmltcG9ydCB7RG1zT2JqZWN0VGFyZ2V0fSBmcm9tICcuLi8uLi9hY3Rpb24tdGFyZ2V0JztcclxuaW1wb3J0IHtTZWxlY3Rpb25SYW5nZX0gZnJvbSAnLi4vLi4vc2VsZWN0aW9uLXJhbmdlLmVudW0nO1xyXG5pbXBvcnQge0NvbXBvbmVudEFjdGlvbn0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcy9hY3Rpb24uaW50ZXJmYWNlJztcclxuaW1wb3J0IHtBZGRSZXN1Ym1pc3Npb25Db21wb25lbnR9IGZyb20gJy4vYWRkLXJlc3VibWlzc2lvbi9hZGQtcmVzdWJtaXNzaW9uLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7QWN0aW9uU2VydmljZX0gZnJvbSAnLi4vLi4vYWN0aW9uLXNlcnZpY2UvYWN0aW9uLnNlcnZpY2UnO1xyXG5pbXBvcnQge0Rtc09iamVjdCwgVXNlclNlcnZpY2V9IGZyb20gJ0Blby1zZGsvY29yZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2VvLWFkZC1yZXN1Ym1pc3Npb24tYWN0aW9uJyxcclxuICB0ZW1wbGF0ZTogYGBcclxufSlcclxuZXhwb3J0IGNsYXNzIEFkZFJlc3VibWlzc2lvbkFjdGlvbkNvbXBvbmVudCBleHRlbmRzIERtc09iamVjdFRhcmdldCBpbXBsZW1lbnRzIENvbXBvbmVudEFjdGlvbiB7XHJcbiAgY29tcG9uZW50ID0gQWRkUmVzdWJtaXNzaW9uQ29tcG9uZW50O1xyXG4gIGxhYmVsOiBzdHJpbmc7XHJcbiAgZGVzY3JpcHRpb246IHN0cmluZztcclxuICBwcmlvcml0eSA9IDU7XHJcbiAgaWNvblNyYyA9ICdhc3NldHMvX2RlZmF1bHQvc3ZnL2ljX3Jlc3VibWlzc2lvbi5zdmcnO1xyXG4gIGdyb3VwID0gJ2NvbW1vbic7XHJcbiAgcmFuZ2UgPSBTZWxlY3Rpb25SYW5nZS5NVUxUSV9TRUxFQ1Q7XHJcblxyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgdHJhbnNsYXRlOiBUcmFuc2xhdGVTZXJ2aWNlLFxyXG4gICAgICAgICAgICAgIHByaXZhdGUgdXNlclNlcnZpY2U6IFVzZXJTZXJ2aWNlLFxyXG4gICAgICAgICAgICAgIHByaXZhdGUgcm91dGVyOiBSb3V0ZXIsXHJcbiAgICAgICAgICAgICAgcHJpdmF0ZSBhY3Rpb25TZXJ2aWNlOiBBY3Rpb25TZXJ2aWNlKSB7XHJcbiAgICBzdXBlcigpO1xyXG5cclxuICAgIHRoaXMubGFiZWwgPSB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdlby5hY3Rpb24uY3JlYXRlLnJlc3VibWlzc2lvbi5sYWJlbCcpO1xyXG4gICAgdGhpcy5kZXNjcmlwdGlvbiA9IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ2VvLmFjdGlvbi5jcmVhdGUucmVzdWJtaXNzaW9uLmRlc2NyaXB0aW9uJyk7XHJcbiAgfVxyXG5cclxuICBpc0V4ZWN1dGFibGUoZWxlbWVudDogRG1zT2JqZWN0KTogT2JzZXJ2YWJsZTxib29sZWFuPiB7XHJcbiAgICBjb25zdCBoYXNQcml2aWxlZ2UgPSB0aGlzLnVzZXJTZXJ2aWNlLmdldEN1cnJlbnRVc2VyKCkuaGFzUHJpdmlsZWdlKCdNQU5BR0VfUkVTVUJNSVNTSU9OUycpO1xyXG4gICAgY29uc3QgaXNBbGxvd2VkVHlwZSA9IHRoaXMuYWN0aW9uU2VydmljZS5pc0FsbG93ZWRUeXBlKFtlbGVtZW50XSwgWydzeXNlbWFpbCddKTtcclxuICAgIGlmIChoYXNQcml2aWxlZ2UgJiYgdGhpcy5pc0FsbG93ZWRTdGF0ZSgpICYmIGlzQWxsb3dlZFR5cGUgJiYgIWVsZW1lbnQuaXNGaW5hbGl6ZWQpIHtcclxuICAgICAgcmV0dXJuIG9ic2VydmFibGVPZighZWxlbWVudC5yZXN1Ym1pc3Npb25zLmxlbmd0aCk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICByZXR1cm4gb2JzZXJ2YWJsZU9mKGZhbHNlKTtcclxuICAgIH1cclxuICB9O1xyXG5cclxuICBpc0FsbG93ZWRTdGF0ZSgpOiBib29sZWFuIHtcclxuICAgIGNvbnN0IGRpc2FibGVkU3RhdGVzID0gWycvdmVyc2lvbnMnLCAnL25vdGlmaWNhdGlvbnMnXTtcclxuICAgIHJldHVybiAhZGlzYWJsZWRTdGF0ZXMuc29tZShzID0+IHRoaXMucm91dGVyLnVybC5zdGFydHNXaXRoKHMpKTtcclxuICB9XHJcbn1cclxuIl19
@@ -25,7 +25,7 @@ export class AddSubscriptionActionComponent extends DmsObjectTarget {
25
25
  isExecutable(element) {
26
26
  const hasPrivilege = this.userService.getCurrentUser().hasPrivilege('MANAGE_SUBSCRIPTIONS');
27
27
  const isAllowedType = this.actionService.isAllowedType([element], ['sysemail']);
28
- if (hasPrivilege && this.isAllowedState() && isAllowedType) {
28
+ if (hasPrivilege && this.isAllowedState() && isAllowedType && !element.isFinalized) {
29
29
  return observableOf(!element.subscriptions.length);
30
30
  }
31
31
  else {
@@ -50,4 +50,4 @@ AddSubscriptionActionComponent.ctorParameters = () => [
50
50
  { type: Router },
51
51
  { type: ActionService }
52
52
  ];
53
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRkLXN1YnNjcmlwdGlvbi1hY3Rpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL2VvLWZyYW1ld29yay9hY3Rpb25zL2FjdGlvbnMvYWRkLXN1YnNjcmlwdGlvbi1hY3Rpb24vYWRkLXN1YnNjcmlwdGlvbi1hY3Rpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFDLEVBQUUsSUFBSSxZQUFZLEVBQWEsTUFBTSxNQUFNLENBQUM7QUFDcEQsT0FBTyxFQUFDLE1BQU0sRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBQ3ZDLE9BQU8sRUFBQyxTQUFTLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDeEMsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0sY0FBYyxDQUFDO0FBQzlDLE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSxxQkFBcUIsQ0FBQztBQUNwRCxPQUFPLEVBQUMsY0FBYyxFQUFDLE1BQU0sNEJBQTRCLENBQUM7QUFFMUQsT0FBTyxFQUFDLHdCQUF3QixFQUFDLE1BQU0sK0NBQStDLENBQUM7QUFDdkYsT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLHFDQUFxQyxDQUFDO0FBQ2xFLE9BQU8sRUFBWSxXQUFXLEVBQUMsTUFBTSxjQUFjLENBQUM7QUFPcEQsTUFBTSxPQUFPLDhCQUErQixTQUFRLGVBQWU7SUFTakUsWUFBb0IsU0FBMkIsRUFDM0IsV0FBd0IsRUFDeEIsTUFBYyxFQUNkLGFBQTRCO1FBQzlDLEtBQUssRUFBRSxDQUFDO1FBSlUsY0FBUyxHQUFULFNBQVMsQ0FBa0I7UUFDM0IsZ0JBQVcsR0FBWCxXQUFXLENBQWE7UUFDeEIsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUNkLGtCQUFhLEdBQWIsYUFBYSxDQUFlO1FBWGhELGNBQVMsR0FBRyx3QkFBd0IsQ0FBQztRQUdyQyxhQUFRLEdBQUcsQ0FBQyxDQUFDO1FBQ2IsWUFBTyxHQUFHLHlDQUF5QyxDQUFDO1FBQ3BELFVBQUssR0FBRyxRQUFRLENBQUM7UUFDakIsVUFBSyxHQUFHLGNBQWMsQ0FBQyxZQUFZLENBQUM7UUFPbEMsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxxQ0FBcUMsQ0FBQyxDQUFDO1FBQzNFLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsMkNBQTJDLENBQUMsQ0FBQztJQUN6RixDQUFDO0lBRUQsWUFBWSxDQUFDLE9BQWtCO1FBQzdCLE1BQU0sWUFBWSxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsY0FBYyxFQUFFLENBQUMsWUFBWSxDQUFDLHNCQUFzQixDQUFDLENBQUM7UUFDNUYsTUFBTSxhQUFhLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxhQUFhLENBQUMsQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUM7UUFDaEYsSUFBSSxZQUFZLElBQUksSUFBSSxDQUFDLGNBQWMsRUFBRSxJQUFJLGFBQWEsRUFBRTtZQUMxRCxPQUFPLFlBQVksQ0FBQyxDQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUMsTUFBTSxDQUFDLENBQUM7U0FDcEQ7YUFBTTtZQUNMLE9BQU8sWUFBWSxDQUFDLEtBQUssQ0FBQyxDQUFDO1NBQzVCO0lBQ0gsQ0FBQztJQUFBLENBQUM7SUFFRixjQUFjO1FBQ1osTUFBTSxjQUFjLEdBQUcsQ0FBQyxXQUFXLEVBQUUsZ0JBQWdCLENBQUMsQ0FBQztRQUN2RCxPQUFPLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ2xFLENBQUM7OztZQW5DRixTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLDRCQUE0QjtnQkFDdEMsUUFBUSxFQUFFLEVBQUU7YUFDYjs7O1lBWk8sZ0JBQWdCO1lBTUwsV0FBVztZQVJ0QixNQUFNO1lBT04sYUFBYSIsInNvdXJjZXNDb250ZW50IjpbIlxyXG5pbXBvcnQge29mIGFzIG9ic2VydmFibGVPZiwgT2JzZXJ2YWJsZX0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7Um91dGVyfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xyXG5pbXBvcnQge0NvbXBvbmVudH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7VHJhbnNsYXRlU2VydmljZX0gZnJvbSAnQGVvLXNkay9jb3JlJztcclxuaW1wb3J0IHtEbXNPYmplY3RUYXJnZXR9IGZyb20gJy4uLy4uL2FjdGlvbi10YXJnZXQnO1xyXG5pbXBvcnQge1NlbGVjdGlvblJhbmdlfSBmcm9tICcuLi8uLi9zZWxlY3Rpb24tcmFuZ2UuZW51bSc7XHJcbmltcG9ydCB7Q29tcG9uZW50QWN0aW9ufSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzL2FjdGlvbi5pbnRlcmZhY2UnO1xyXG5pbXBvcnQge0FkZFN1YnNjcmlwdGlvbkNvbXBvbmVudH0gZnJvbSAnLi9hZGQtc3Vic2NyaXB0aW9uL2FkZC1zdWJzY3JpcHRpb24uY29tcG9uZW50JztcclxuaW1wb3J0IHtBY3Rpb25TZXJ2aWNlfSBmcm9tICcuLi8uLi9hY3Rpb24tc2VydmljZS9hY3Rpb24uc2VydmljZSc7XHJcbmltcG9ydCB7RG1zT2JqZWN0LCBVc2VyU2VydmljZX0gZnJvbSAnQGVvLXNkay9jb3JlJztcclxuXHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2VvLWFkZC1zdWJzY3JpcHRpb24tYWN0aW9uJyxcclxuICB0ZW1wbGF0ZTogYGBcclxufSlcclxuZXhwb3J0IGNsYXNzIEFkZFN1YnNjcmlwdGlvbkFjdGlvbkNvbXBvbmVudCBleHRlbmRzIERtc09iamVjdFRhcmdldCBpbXBsZW1lbnRzIENvbXBvbmVudEFjdGlvbiB7XHJcbiAgY29tcG9uZW50ID0gQWRkU3Vic2NyaXB0aW9uQ29tcG9uZW50O1xyXG4gIGxhYmVsOiBzdHJpbmc7XHJcbiAgZGVzY3JpcHRpb246IHN0cmluZztcclxuICBwcmlvcml0eSA9IDQ7XHJcbiAgaWNvblNyYyA9ICdhc3NldHMvX2RlZmF1bHQvc3ZnL2ljX3N1YnNjcmlwdGlvbi5zdmcnO1xyXG4gIGdyb3VwID0gJ2NvbW1vbic7XHJcbiAgcmFuZ2UgPSBTZWxlY3Rpb25SYW5nZS5NVUxUSV9TRUxFQ1Q7XHJcblxyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgdHJhbnNsYXRlOiBUcmFuc2xhdGVTZXJ2aWNlLFxyXG4gICAgICAgICAgICAgIHByaXZhdGUgdXNlclNlcnZpY2U6IFVzZXJTZXJ2aWNlLFxyXG4gICAgICAgICAgICAgIHByaXZhdGUgcm91dGVyOiBSb3V0ZXIsXHJcbiAgICAgICAgICAgICAgcHJpdmF0ZSBhY3Rpb25TZXJ2aWNlOiBBY3Rpb25TZXJ2aWNlKSB7XHJcbiAgICBzdXBlcigpO1xyXG4gICAgdGhpcy5sYWJlbCA9IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ2VvLmFjdGlvbi5jcmVhdGUuc3Vic2NyaXB0aW9uLmxhYmVsJyk7XHJcbiAgICB0aGlzLmRlc2NyaXB0aW9uID0gdGhpcy50cmFuc2xhdGUuaW5zdGFudCgnZW8uYWN0aW9uLmNyZWF0ZS5zdWJzY3JpcHRpb24uZGVzY3JpcHRpb24nKTtcclxuICB9XHJcblxyXG4gIGlzRXhlY3V0YWJsZShlbGVtZW50OiBEbXNPYmplY3QpOiBPYnNlcnZhYmxlPGJvb2xlYW4+IHtcclxuICAgIGNvbnN0IGhhc1ByaXZpbGVnZSA9IHRoaXMudXNlclNlcnZpY2UuZ2V0Q3VycmVudFVzZXIoKS5oYXNQcml2aWxlZ2UoJ01BTkFHRV9TVUJTQ1JJUFRJT05TJyk7XHJcbiAgICBjb25zdCBpc0FsbG93ZWRUeXBlID0gdGhpcy5hY3Rpb25TZXJ2aWNlLmlzQWxsb3dlZFR5cGUoW2VsZW1lbnRdLCBbJ3N5c2VtYWlsJ10pO1xyXG4gICAgaWYgKGhhc1ByaXZpbGVnZSAmJiB0aGlzLmlzQWxsb3dlZFN0YXRlKCkgJiYgaXNBbGxvd2VkVHlwZSkge1xyXG4gICAgICByZXR1cm4gb2JzZXJ2YWJsZU9mKCFlbGVtZW50LnN1YnNjcmlwdGlvbnMubGVuZ3RoKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHJldHVybiBvYnNlcnZhYmxlT2YoZmFsc2UpO1xyXG4gICAgfVxyXG4gIH07XHJcblxyXG4gIGlzQWxsb3dlZFN0YXRlKCk6IGJvb2xlYW4ge1xyXG4gICAgY29uc3QgZGlzYWJsZWRTdGF0ZXMgPSBbJy92ZXJzaW9ucycsICcvbm90aWZpY2F0aW9ucyddO1xyXG4gICAgcmV0dXJuICFkaXNhYmxlZFN0YXRlcy5zb21lKHMgPT4gdGhpcy5yb3V0ZXIudXJsLnN0YXJ0c1dpdGgocykpO1xyXG4gIH1cclxufVxyXG4iXX0=
53
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRkLXN1YnNjcmlwdGlvbi1hY3Rpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL2VvLWZyYW1ld29yay9hY3Rpb25zL2FjdGlvbnMvYWRkLXN1YnNjcmlwdGlvbi1hY3Rpb24vYWRkLXN1YnNjcmlwdGlvbi1hY3Rpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFDLEVBQUUsSUFBSSxZQUFZLEVBQWEsTUFBTSxNQUFNLENBQUM7QUFDcEQsT0FBTyxFQUFDLE1BQU0sRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBQ3ZDLE9BQU8sRUFBQyxTQUFTLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDeEMsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0sY0FBYyxDQUFDO0FBQzlDLE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSxxQkFBcUIsQ0FBQztBQUNwRCxPQUFPLEVBQUMsY0FBYyxFQUFDLE1BQU0sNEJBQTRCLENBQUM7QUFFMUQsT0FBTyxFQUFDLHdCQUF3QixFQUFDLE1BQU0sK0NBQStDLENBQUM7QUFDdkYsT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLHFDQUFxQyxDQUFDO0FBQ2xFLE9BQU8sRUFBWSxXQUFXLEVBQUMsTUFBTSxjQUFjLENBQUM7QUFPcEQsTUFBTSxPQUFPLDhCQUErQixTQUFRLGVBQWU7SUFTakUsWUFBb0IsU0FBMkIsRUFDM0IsV0FBd0IsRUFDeEIsTUFBYyxFQUNkLGFBQTRCO1FBQzlDLEtBQUssRUFBRSxDQUFDO1FBSlUsY0FBUyxHQUFULFNBQVMsQ0FBa0I7UUFDM0IsZ0JBQVcsR0FBWCxXQUFXLENBQWE7UUFDeEIsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUNkLGtCQUFhLEdBQWIsYUFBYSxDQUFlO1FBWGhELGNBQVMsR0FBRyx3QkFBd0IsQ0FBQztRQUdyQyxhQUFRLEdBQUcsQ0FBQyxDQUFDO1FBQ2IsWUFBTyxHQUFHLHlDQUF5QyxDQUFDO1FBQ3BELFVBQUssR0FBRyxRQUFRLENBQUM7UUFDakIsVUFBSyxHQUFHLGNBQWMsQ0FBQyxZQUFZLENBQUM7UUFPbEMsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxxQ0FBcUMsQ0FBQyxDQUFDO1FBQzNFLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsMkNBQTJDLENBQUMsQ0FBQztJQUN6RixDQUFDO0lBRUQsWUFBWSxDQUFDLE9BQWtCO1FBQzdCLE1BQU0sWUFBWSxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsY0FBYyxFQUFFLENBQUMsWUFBWSxDQUFDLHNCQUFzQixDQUFDLENBQUM7UUFDNUYsTUFBTSxhQUFhLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxhQUFhLENBQUMsQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUM7UUFDaEYsSUFBSSxZQUFZLElBQUksSUFBSSxDQUFDLGNBQWMsRUFBRSxJQUFJLGFBQWEsSUFBSSxDQUFDLE9BQU8sQ0FBQyxXQUFXLEVBQUU7WUFDbEYsT0FBTyxZQUFZLENBQUMsQ0FBQyxPQUFPLENBQUMsYUFBYSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1NBQ3BEO2FBQU07WUFDTCxPQUFPLFlBQVksQ0FBQyxLQUFLLENBQUMsQ0FBQztTQUM1QjtJQUNILENBQUM7SUFBQSxDQUFDO0lBRUYsY0FBYztRQUNaLE1BQU0sY0FBYyxHQUFHLENBQUMsV0FBVyxFQUFFLGdCQUFnQixDQUFDLENBQUM7UUFDdkQsT0FBTyxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNsRSxDQUFDOzs7WUFuQ0YsU0FBUyxTQUFDO2dCQUNULFFBQVEsRUFBRSw0QkFBNEI7Z0JBQ3RDLFFBQVEsRUFBRSxFQUFFO2FBQ2I7OztZQVpPLGdCQUFnQjtZQU1MLFdBQVc7WUFSdEIsTUFBTTtZQU9OLGFBQWEiLCJzb3VyY2VzQ29udGVudCI6WyJcclxuaW1wb3J0IHtvZiBhcyBvYnNlcnZhYmxlT2YsIE9ic2VydmFibGV9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQge1JvdXRlcn0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcclxuaW1wb3J0IHtDb21wb25lbnR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQge1RyYW5zbGF0ZVNlcnZpY2V9IGZyb20gJ0Blby1zZGsvY29yZSc7XHJcbmltcG9ydCB7RG1zT2JqZWN0VGFyZ2V0fSBmcm9tICcuLi8uLi9hY3Rpb24tdGFyZ2V0JztcclxuaW1wb3J0IHtTZWxlY3Rpb25SYW5nZX0gZnJvbSAnLi4vLi4vc2VsZWN0aW9uLXJhbmdlLmVudW0nO1xyXG5pbXBvcnQge0NvbXBvbmVudEFjdGlvbn0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcy9hY3Rpb24uaW50ZXJmYWNlJztcclxuaW1wb3J0IHtBZGRTdWJzY3JpcHRpb25Db21wb25lbnR9IGZyb20gJy4vYWRkLXN1YnNjcmlwdGlvbi9hZGQtc3Vic2NyaXB0aW9uLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7QWN0aW9uU2VydmljZX0gZnJvbSAnLi4vLi4vYWN0aW9uLXNlcnZpY2UvYWN0aW9uLnNlcnZpY2UnO1xyXG5pbXBvcnQge0Rtc09iamVjdCwgVXNlclNlcnZpY2V9IGZyb20gJ0Blby1zZGsvY29yZSc7XHJcblxyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdlby1hZGQtc3Vic2NyaXB0aW9uLWFjdGlvbicsXHJcbiAgdGVtcGxhdGU6IGBgXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBBZGRTdWJzY3JpcHRpb25BY3Rpb25Db21wb25lbnQgZXh0ZW5kcyBEbXNPYmplY3RUYXJnZXQgaW1wbGVtZW50cyBDb21wb25lbnRBY3Rpb24ge1xyXG4gIGNvbXBvbmVudCA9IEFkZFN1YnNjcmlwdGlvbkNvbXBvbmVudDtcclxuICBsYWJlbDogc3RyaW5nO1xyXG4gIGRlc2NyaXB0aW9uOiBzdHJpbmc7XHJcbiAgcHJpb3JpdHkgPSA0O1xyXG4gIGljb25TcmMgPSAnYXNzZXRzL19kZWZhdWx0L3N2Zy9pY19zdWJzY3JpcHRpb24uc3ZnJztcclxuICBncm91cCA9ICdjb21tb24nO1xyXG4gIHJhbmdlID0gU2VsZWN0aW9uUmFuZ2UuTVVMVElfU0VMRUNUO1xyXG5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHRyYW5zbGF0ZTogVHJhbnNsYXRlU2VydmljZSxcclxuICAgICAgICAgICAgICBwcml2YXRlIHVzZXJTZXJ2aWNlOiBVc2VyU2VydmljZSxcclxuICAgICAgICAgICAgICBwcml2YXRlIHJvdXRlcjogUm91dGVyLFxyXG4gICAgICAgICAgICAgIHByaXZhdGUgYWN0aW9uU2VydmljZTogQWN0aW9uU2VydmljZSkge1xyXG4gICAgc3VwZXIoKTtcclxuICAgIHRoaXMubGFiZWwgPSB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdlby5hY3Rpb24uY3JlYXRlLnN1YnNjcmlwdGlvbi5sYWJlbCcpO1xyXG4gICAgdGhpcy5kZXNjcmlwdGlvbiA9IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ2VvLmFjdGlvbi5jcmVhdGUuc3Vic2NyaXB0aW9uLmRlc2NyaXB0aW9uJyk7XHJcbiAgfVxyXG5cclxuICBpc0V4ZWN1dGFibGUoZWxlbWVudDogRG1zT2JqZWN0KTogT2JzZXJ2YWJsZTxib29sZWFuPiB7XHJcbiAgICBjb25zdCBoYXNQcml2aWxlZ2UgPSB0aGlzLnVzZXJTZXJ2aWNlLmdldEN1cnJlbnRVc2VyKCkuaGFzUHJpdmlsZWdlKCdNQU5BR0VfU1VCU0NSSVBUSU9OUycpO1xyXG4gICAgY29uc3QgaXNBbGxvd2VkVHlwZSA9IHRoaXMuYWN0aW9uU2VydmljZS5pc0FsbG93ZWRUeXBlKFtlbGVtZW50XSwgWydzeXNlbWFpbCddKTtcclxuICAgIGlmIChoYXNQcml2aWxlZ2UgJiYgdGhpcy5pc0FsbG93ZWRTdGF0ZSgpICYmIGlzQWxsb3dlZFR5cGUgJiYgIWVsZW1lbnQuaXNGaW5hbGl6ZWQpIHtcclxuICAgICAgcmV0dXJuIG9ic2VydmFibGVPZighZWxlbWVudC5zdWJzY3JpcHRpb25zLmxlbmd0aCk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICByZXR1cm4gb2JzZXJ2YWJsZU9mKGZhbHNlKTtcclxuICAgIH1cclxuICB9O1xyXG5cclxuICBpc0FsbG93ZWRTdGF0ZSgpOiBib29sZWFuIHtcclxuICAgIGNvbnN0IGRpc2FibGVkU3RhdGVzID0gWycvdmVyc2lvbnMnLCAnL25vdGlmaWNhdGlvbnMnXTtcclxuICAgIHJldHVybiAhZGlzYWJsZWRTdGF0ZXMuc29tZShzID0+IHRoaXMucm91dGVyLnVybC5zdGFydHNXaXRoKHMpKTtcclxuICB9XHJcbn1cclxuIl19
@@ -1,15 +1,18 @@
1
1
  import { Component } from '@angular/core';
2
2
  import { BpmService, NotificationsService, TranslateService, Utils } from '@eo-sdk/core';
3
3
  import { Router } from '@angular/router';
4
+ import { PendingChangesService } from '../../../../eo-framework-core';
4
5
  /**
5
6
  * Component rendering the app-bar action of starting executable processes.
6
7
  */
7
8
  export class AppProcessComponent {
8
- constructor(router, toaster, translate, bpmService) {
9
+ constructor(router, toaster, translate, bpmService, pendingChanges) {
9
10
  this.router = router;
10
11
  this.toaster = toaster;
11
12
  this.translate = translate;
12
13
  this.bpmService = bpmService;
14
+ this.pendingChanges = pendingChanges;
15
+ this.pendingTaskIds = [];
13
16
  }
14
17
  close(evt) {
15
18
  this.router.navigate([{ outlets: { modal: null } }], { replaceUrl: true });
@@ -62,6 +65,24 @@ export class AppProcessComponent {
62
65
  cancelDialog() {
63
66
  this.processForm = null;
64
67
  }
68
+ startPending() {
69
+ // because this method will be called every time the form status changes,
70
+ // pending task will only be started once until it was finished
71
+ if (!this.pendingChanges.hasPendingTask(this.pendingTaskIds[0] || ' ')) {
72
+ this.pendingTaskIds = [this.pendingChanges.startTask()];
73
+ }
74
+ }
75
+ finishPending() {
76
+ this.pendingChanges.finishTask(this.pendingTaskIds[0]);
77
+ }
78
+ onIndexDataChanged(event) {
79
+ if (event.dirty) {
80
+ this.startPending();
81
+ }
82
+ else {
83
+ this.finishPending();
84
+ }
85
+ }
65
86
  ngOnInit() {
66
87
  this.bpmService.getExecutableProcesses(null, true)
67
88
  .subscribe(res => this.processes = res.sort(Utils.sortValues('title')));
@@ -70,7 +91,7 @@ export class AppProcessComponent {
70
91
  AppProcessComponent.decorators = [
71
92
  { type: Component, args: [{
72
93
  selector: 'eo-app-process',
73
- template: "<eo-dialog [title]=\"'eo.bar.button.execute.actions.tooltip' | translate\"\r\n [visible]=\"true\"\r\n [minWidth]=\"400\"\r\n [styleClass]=\"'more-actions'\"\r\n (hide)=\"close($event)\">\r\n\r\n <section *ngIf=\"processes?.length; else loading\">\r\n\r\n <div class=\"process-item\" *ngFor=\"let process of processes\" (click)=\"selectProcess(process)\">\r\n <eo-icon [iconId]=\"process.iconid\" *ngIf=\"process.iconid; else defaulticon\"></eo-icon>\r\n <ng-template #defaulticon><eo-icon [iconSrc]=\"'assets/_default/svg/ic_bpm.svg'\"></eo-icon></ng-template>\r\n <div class=\"pi-content\">\r\n <div class=\"title\">{{process.title}}</div>\r\n <div class=\"description\">{{process.description}}</div>\r\n </div>\r\n </div>\r\n\r\n </section>\r\n\r\n <ng-container *ngIf=\"!processForm; else tplProcessForm\" class=\"select-process\"></ng-container>\r\n\r\n <ng-template #loading>\r\n <eo-loading-spinner [size]=\"'medium'\"></eo-loading-spinner>\r\n </ng-template>\r\n\r\n\r\n <ng-template #tplProcessForm>\r\n\r\n <eo-dialog [title]=\"selectedProcess?.title\"\r\n [subtitle]=\"selectedProcess?.description\"\r\n [visible]=\"true\"\r\n [minWidth]=\"1000\"\r\n [minHeight]=\"630\"\r\n [styleClass]=\"'process-form-dialog'\"\r\n (hide)=\"cancelDialog()\" #dialog>\r\n\r\n <eo-process-form [formOptions]=\"processForm\"\r\n (onResetForm)=\"formReset($event)\"\r\n (onCancel)=\"(dialog.visible = false)\"\r\n (onSaveForm)=\"startProcessWithFormData($event)\">\r\n </eo-process-form>\r\n </eo-dialog>\r\n </ng-template>\r\n\r\n</eo-dialog>\r\n",
94
+ template: "<eo-dialog [title]=\"'eo.bar.button.execute.actions.tooltip' | translate\"\r\n [visible]=\"true\"\r\n [minWidth]=\"400\"\r\n [styleClass]=\"'more-actions'\"\r\n (hide)=\"close($event)\">\r\n\r\n <section *ngIf=\"processes?.length; else loading\">\r\n\r\n <div class=\"process-item\" *ngFor=\"let process of processes\" (click)=\"selectProcess(process)\">\r\n <eo-icon [iconId]=\"process.iconid\" *ngIf=\"process.iconid; else defaulticon\"></eo-icon>\r\n <ng-template #defaulticon><eo-icon [iconSrc]=\"'assets/_default/svg/ic_bpm.svg'\"></eo-icon></ng-template>\r\n <div class=\"pi-content\">\r\n <div class=\"title\">{{process.title}}</div>\r\n <div class=\"description\">{{process.description}}</div>\r\n </div>\r\n </div>\r\n\r\n </section>\r\n\r\n <ng-container *ngIf=\"!processForm; else tplProcessForm\" class=\"select-process\"></ng-container>\r\n\r\n <ng-template #loading>\r\n <eo-loading-spinner [size]=\"'medium'\"></eo-loading-spinner>\r\n </ng-template>\r\n\r\n\r\n <ng-template #tplProcessForm>\r\n\r\n <eo-dialog [title]=\"selectedProcess?.title\"\r\n [subtitle]=\"selectedProcess?.description\"\r\n [visible]=\"true\"\r\n [dirtyCheck]=\"pendingTaskIds\"\r\n [minWidth]=\"1000\"\r\n [minHeight]=\"630\"\r\n [styleClass]=\"'process-form-dialog'\"\r\n (hide)=\"cancelDialog()\" #dialog>\r\n\r\n <eo-process-form [formOptions]=\"processForm\"\r\n (onResetForm)=\"formReset($event)\"\r\n (onCancel)=\"(dialog.visible = false)\"\r\n (onSaveForm)=\"startProcessWithFormData($event)\"\r\n (statusChanged)=\"onIndexDataChanged($event)\">\r\n </eo-process-form>\r\n </eo-dialog>\r\n </ng-template>\r\n\r\n</eo-dialog>\r\n",
74
95
  styles: [".process-item{align-items:center;border-bottom:1px solid var(--list-item-border-color);cursor:pointer;display:flex;padding:var(--app-pane-padding)}.process-item:hover{background-color:var(--list-item-hover-background)}.process-item eo-icon{opacity:.7}.process-item .pi-content{padding:0 var(--app-pane-padding)}.process-item .pi-content .description{color:var(--text-color-caption)}eo-loading-spinner{display:flex;justify-content:center;padding:var(--app-pane-padding)}"]
75
96
  },] }
76
97
  ];
@@ -78,6 +99,7 @@ AppProcessComponent.ctorParameters = () => [
78
99
  { type: Router },
79
100
  { type: NotificationsService },
80
101
  { type: TranslateService },
81
- { type: BpmService }
102
+ { type: BpmService },
103
+ { type: PendingChangesService }
82
104
  ];
83
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwLXByb2Nlc3MuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9lby1mcmFtZXdvcmsvYXBwLXNoZWxsL2FwcC1iYXIvYXBwLXByb2Nlc3MvYXBwLXByb2Nlc3MuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQVMsTUFBTSxlQUFlLENBQUM7QUFDaEQsT0FBTyxFQUFDLFVBQVUsRUFBcUIsb0JBQW9CLEVBQUUsZ0JBQWdCLEVBQUUsS0FBSyxFQUFDLE1BQU0sY0FBYyxDQUFDO0FBQzFHLE9BQU8sRUFBQyxNQUFNLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUd2Qzs7R0FFRztBQU9ILE1BQU0sT0FBTyxtQkFBbUI7SUFTOUIsWUFBb0IsTUFBYyxFQUNkLE9BQTZCLEVBQzdCLFNBQTJCLEVBQzNCLFVBQXNCO1FBSHRCLFdBQU0sR0FBTixNQUFNLENBQVE7UUFDZCxZQUFPLEdBQVAsT0FBTyxDQUFzQjtRQUM3QixjQUFTLEdBQVQsU0FBUyxDQUFrQjtRQUMzQixlQUFVLEdBQVYsVUFBVSxDQUFZO0lBQzFDLENBQUM7SUFFRCxLQUFLLENBQUMsR0FBSTtRQUNSLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsRUFBQyxPQUFPLEVBQUUsRUFBQyxLQUFLLEVBQUUsSUFBSSxFQUFDLEVBQUMsQ0FBQyxFQUFFLEVBQUMsVUFBVSxFQUFFLElBQUksRUFBQyxDQUFDLENBQUM7SUFDdkUsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0gsYUFBYSxDQUFDLGlCQUFvQztRQUNoRCxJQUFJLENBQUMsVUFBVSxDQUFDLHNCQUFzQixDQUFDLElBQUksRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLGlCQUFpQixDQUFDLEVBQUUsQ0FBQyxDQUFDLFNBQVMsQ0FDdkYsR0FBRyxDQUFDLEVBQUU7WUFDSixpQkFBaUIsR0FBRyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDM0IsSUFBSSxDQUFDLGVBQWUsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsaUJBQWlCLENBQUMsQ0FBQyxDQUFDLENBQUMsa0RBQWtEO1lBQ3hILElBQUksSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLEVBQUU7Z0JBQzdCLCtGQUErRjtnQkFDL0YsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsU0FBUyxHQUFHLFFBQVEsQ0FBQztnQkFDL0MsSUFBSSxDQUFDLFdBQVcsR0FBRztvQkFDakIsU0FBUyxFQUFFLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSTtvQkFDcEMsSUFBSSxFQUFFLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxJQUFJLEVBQUU7aUJBQ3RDLENBQUM7YUFDSDtpQkFBTTtnQkFDTCwyQkFBMkI7Z0JBQzNCLElBQUksQ0FBQyxjQUFjLENBQ2pCLElBQUksQ0FBQyxlQUFlLEVBQ3BCLEVBQUUsRUFDRixJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxvQkFBb0IsRUFBRSxFQUFDLFdBQVcsRUFBRSxJQUFJLENBQUMsZUFBZSxDQUFDLEtBQUssRUFBQyxDQUFDLENBQ3hGLENBQUM7YUFDSDtRQUNILENBQUMsQ0FDRixDQUFDO0lBQ0osQ0FBQztJQUVEOzs7O09BSUc7SUFDSCx3QkFBd0IsQ0FBQyxRQUFhO1FBQ3BDLElBQUksQ0FBQyxjQUFjLENBQ2pCLElBQUksQ0FBQyxlQUFlLEVBQ3BCLFFBQVEsRUFDUixJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxvQkFBb0IsRUFBRSxFQUFDLFdBQVcsRUFBRSxJQUFJLENBQUMsZUFBZSxDQUFDLEtBQUssRUFBQyxDQUFDLENBQ3hGLENBQUM7SUFDSixDQUFDO0lBRU8sY0FBYyxDQUFDLGlCQUFvQyxFQUFFLElBQVMsRUFBRSxjQUFjLEdBQUcsRUFBRTtRQUN6RixJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7UUFDcEIsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO1FBRWIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxZQUFZLENBQUMsaUJBQWlCLENBQUMsRUFBRSxFQUFFLElBQUksRUFBRSxFQUFFLENBQUM7YUFDekQsU0FBUyxDQUFDLEdBQUcsRUFBRTtZQUNkLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLGNBQWMsQ0FBQyxDQUFDO1FBQ3ZDLENBQUMsRUFBRSxLQUFLLENBQUMsS0FBSyxDQUFDLEdBQUcsRUFBRTtZQUNoQixJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FDdkMseUJBQXlCLEVBQ3pCLEVBQUMsV0FBVyxFQUFFLGlCQUFpQixDQUFDLEtBQUssRUFBQyxDQUFDLENBQ3hDLENBQUM7UUFDSixDQUFDLENBQ0YsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVELFNBQVMsQ0FBQyxLQUFLO1FBQ2IsSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUM7SUFDMUIsQ0FBQztJQUVELFlBQVk7UUFDVixJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQztJQUMxQixDQUFDO0lBRUQsUUFBUTtRQUNOLElBQUksQ0FBQyxVQUFVLENBQUMsc0JBQXNCLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQzthQUMvQyxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsU0FBUyxHQUFHLEdBQUcsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDNUUsQ0FBQzs7O1lBOUZGLFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUsZ0JBQWdCO2dCQUMxQiw0d0RBQTJDOzthQUU1Qzs7O1lBWE8sTUFBTTtZQUR5QixvQkFBb0I7WUFBRSxnQkFBZ0I7WUFBckUsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29tcG9uZW50LCBPbkluaXR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQge0JwbVNlcnZpY2UsIEV4ZWN1dGFibGVQcm9jZXNzLCBOb3RpZmljYXRpb25zU2VydmljZSwgVHJhbnNsYXRlU2VydmljZSwgVXRpbHN9IGZyb20gJ0Blby1zZGsvY29yZSc7XHJcbmltcG9ydCB7Um91dGVyfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xyXG5pbXBvcnQge09iamVjdEZvcm1PcHRpb25zfSBmcm9tICcuLi8uLi8uLi9vYmplY3QtZm9ybSc7XHJcblxyXG4vKipcclxuICogQ29tcG9uZW50IHJlbmRlcmluZyB0aGUgYXBwLWJhciBhY3Rpb24gb2Ygc3RhcnRpbmcgZXhlY3V0YWJsZSBwcm9jZXNzZXMuXHJcbiAqL1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdlby1hcHAtcHJvY2VzcycsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2FwcC1wcm9jZXNzLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9hcHAtcHJvY2Vzcy5jb21wb25lbnQuc2NzcyddXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBBcHBQcm9jZXNzQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuXHJcbiAgcHJvY2Vzc2VzOiBFeGVjdXRhYmxlUHJvY2Vzc1tdO1xyXG4gIHNlbGVjdGVkUHJvY2VzczogRXhlY3V0YWJsZVByb2Nlc3M7XHJcblxyXG4gIHByb2Nlc3NGb3JtOiBPYmplY3RGb3JtT3B0aW9ucztcclxuICB0aXRsZTogc3RyaW5nO1xyXG4gIHN1YnRpdGxlOiBzdHJpbmc7XHJcblxyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcm91dGVyOiBSb3V0ZXIsXHJcbiAgICAgICAgICAgICAgcHJpdmF0ZSB0b2FzdGVyOiBOb3RpZmljYXRpb25zU2VydmljZSxcclxuICAgICAgICAgICAgICBwcml2YXRlIHRyYW5zbGF0ZTogVHJhbnNsYXRlU2VydmljZSxcclxuICAgICAgICAgICAgICBwcml2YXRlIGJwbVNlcnZpY2U6IEJwbVNlcnZpY2UpIHtcclxuICB9XHJcblxyXG4gIGNsb3NlKGV2dD8pOiB2b2lkIHtcclxuICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFt7b3V0bGV0czoge21vZGFsOiBudWxsfX1dLCB7cmVwbGFjZVVybDogdHJ1ZX0pO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogU2VsZWN0IGFuIGV4ZWN1dGFibGUgcHJvY2VzcyBmcm9tIHRoZSBjdXJyZW50IGxpc3Qgb2YgcHJvY2Vzc2VzLlxyXG4gICAqIElmIHRoZSBwcm9jZXNzIHJlcXVpcmVzIHNvbWUgdXNlciBpbnB1dCwgdGhpcyB3aWxsIHJlbmRlciB0aGUgaW5wdXQgZm9ybSBvclxyXG4gICAqIG90aGVyd2lzZSBzdGFydCB0aGUgcHJvY2VzcyByaWdodCBhd2F5LlxyXG4gICAqIEBwYXJhbSBleGVjdXRhYmxlUHJvY2VzcyBQcm9jZXNzIHRvIGJlIHNlbGVjdGVkL3N0YXJ0ZWRcclxuICAgKi9cclxuICBzZWxlY3RQcm9jZXNzKGV4ZWN1dGFibGVQcm9jZXNzOiBFeGVjdXRhYmxlUHJvY2Vzcyk6IHZvaWQge1xyXG4gICAgdGhpcy5icG1TZXJ2aWNlLmdldEV4ZWN1dGFibGVQcm9jZXNzZXMobnVsbCwgZmFsc2UsIHRydWUsIGV4ZWN1dGFibGVQcm9jZXNzLmlkKS5zdWJzY3JpYmUoXHJcbiAgICAgIHJlcyA9PiB7XHJcbiAgICAgICAgZXhlY3V0YWJsZVByb2Nlc3MgPSByZXNbMF07XHJcbiAgICAgICAgdGhpcy5zZWxlY3RlZFByb2Nlc3MgPSBKU09OLnBhcnNlKEpTT04uc3RyaW5naWZ5KGV4ZWN1dGFibGVQcm9jZXNzKSk7IC8vIE9ubHkgY29waWVzIG9mIHRoZSBvcmlnaW5hbCBwcm9jZXNzZXMgYXJlIHVzZWQuXHJcbiAgICAgICAgaWYgKHRoaXMuc2VsZWN0ZWRQcm9jZXNzLmZvcm0pIHtcclxuICAgICAgICAgIC8vIGNyZWF0ZSBmb3JtIG9wdGlvbnMgZnJvbSB0aGUgZXhlY2l0YWJsZSBwcm9jZXNzIHRvIGJlIHBhc3NlZCB0byB0aGUgcmVuZGVyaW5nIGZvcm0gY29tcG9uZW50XHJcbiAgICAgICAgICB0aGlzLnNlbGVjdGVkUHJvY2Vzcy5mb3JtLnNpdHVhdGlvbiA9ICdDUkVBVEUnO1xyXG4gICAgICAgICAgdGhpcy5wcm9jZXNzRm9ybSA9IHtcclxuICAgICAgICAgICAgZm9ybU1vZGVsOiB0aGlzLnNlbGVjdGVkUHJvY2Vzcy5mb3JtLFxyXG4gICAgICAgICAgICBkYXRhOiB0aGlzLnNlbGVjdGVkUHJvY2Vzcy5kYXRhIHx8IHt9XHJcbiAgICAgICAgICB9O1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAvLyBzdGFydCBwcm9jZXNzIHJpZ2h0IGF3YXlcclxuICAgICAgICAgIHRoaXMuZXhlY3V0ZVByb2Nlc3MoXHJcbiAgICAgICAgICAgIHRoaXMuc2VsZWN0ZWRQcm9jZXNzLFxyXG4gICAgICAgICAgICB7fSxcclxuICAgICAgICAgICAgdGhpcy50cmFuc2xhdGUuaW5zdGFudCgnZW8ucHJvY2Vzcy5zdGFydGVkJywge3Byb2Nlc3NOYW1lOiB0aGlzLnNlbGVjdGVkUHJvY2Vzcy50aXRsZX0pXHJcbiAgICAgICAgICApO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFN0YXJ0cyB0aGUgY3VycmVudGx5IHNlbGVjdGVkIGV4ZWN1dGFibGUgcHJvY2VzcyB3aXRoIGRhdGEgcHJvdmlkZWQgYnlcclxuICAgKiB0aGUgaW5wdXQgZm9ybS5cclxuICAgKiBAcGFyYW0gZm9ybURhdGEgRGF0YSB0byBiZSBwYXNzZWQgdG8gdGhlIHByb2Nlc3MgdG8gYmUgY3JlYXRlZFxyXG4gICAqL1xyXG4gIHN0YXJ0UHJvY2Vzc1dpdGhGb3JtRGF0YShmb3JtRGF0YTogYW55KTogdm9pZCB7XHJcbiAgICB0aGlzLmV4ZWN1dGVQcm9jZXNzKFxyXG4gICAgICB0aGlzLnNlbGVjdGVkUHJvY2VzcyxcclxuICAgICAgZm9ybURhdGEsXHJcbiAgICAgIHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ2VvLnByb2Nlc3Muc3RhcnRlZCcsIHtwcm9jZXNzTmFtZTogdGhpcy5zZWxlY3RlZFByb2Nlc3MudGl0bGV9KVxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgZXhlY3V0ZVByb2Nlc3MoZXhlY3V0YWJsZVByb2Nlc3M6IEV4ZWN1dGFibGVQcm9jZXNzLCBkYXRhOiBhbnksIHN1Y2Nlc3NNZXNzYWdlID0gJycpOiB2b2lkIHtcclxuICAgIHRoaXMuY2FuY2VsRGlhbG9nKCk7XHJcbiAgICB0aGlzLmNsb3NlKCk7XHJcblxyXG4gICAgdGhpcy5icG1TZXJ2aWNlLnN0YXJ0UHJvY2VzcyhleGVjdXRhYmxlUHJvY2Vzcy5pZCwgZGF0YSwgW10pXHJcbiAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xyXG4gICAgICAgIHRoaXMudG9hc3Rlci5zdWNjZXNzKHN1Y2Nlc3NNZXNzYWdlKTtcclxuICAgICAgfSwgVXRpbHMudGhyb3coKCkgPT4ge1xyXG4gICAgICAgICAgdGhpcy50b2FzdGVyLmVycm9yKHRoaXMudHJhbnNsYXRlLmluc3RhbnQoXHJcbiAgICAgICAgICAgICdlby5wcm9jZXNzLnN0YXJ0ZWQuZmFpbCcsXHJcbiAgICAgICAgICAgIHtwcm9jZXNzTmFtZTogZXhlY3V0YWJsZVByb2Nlc3MudGl0bGV9KVxyXG4gICAgICAgICAgKTtcclxuICAgICAgICB9XHJcbiAgICAgICkpO1xyXG4gIH1cclxuXHJcbiAgZm9ybVJlc2V0KGV2ZW50KTogdm9pZCB7XHJcbiAgICB0aGlzLnByb2Nlc3NGb3JtID0gbnVsbDtcclxuICB9XHJcblxyXG4gIGNhbmNlbERpYWxvZygpOiB2b2lkIHtcclxuICAgIHRoaXMucHJvY2Vzc0Zvcm0gPSBudWxsO1xyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKSB7XHJcbiAgICB0aGlzLmJwbVNlcnZpY2UuZ2V0RXhlY3V0YWJsZVByb2Nlc3NlcyhudWxsLCB0cnVlKVxyXG4gICAgICAuc3Vic2NyaWJlKHJlcyA9PiB0aGlzLnByb2Nlc3NlcyA9IHJlcy5zb3J0KFV0aWxzLnNvcnRWYWx1ZXMoJ3RpdGxlJykpKTtcclxuICB9XHJcbn1cclxuIl19
105
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwLXByb2Nlc3MuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9lby1mcmFtZXdvcmsvYXBwLXNoZWxsL2FwcC1iYXIvYXBwLXByb2Nlc3MvYXBwLXByb2Nlc3MuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQVMsTUFBTSxlQUFlLENBQUM7QUFDaEQsT0FBTyxFQUFDLFVBQVUsRUFBcUIsb0JBQW9CLEVBQUUsZ0JBQWdCLEVBQUUsS0FBSyxFQUFDLE1BQU0sY0FBYyxDQUFDO0FBQzFHLE9BQU8sRUFBQyxNQUFNLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUV2QyxPQUFPLEVBQUMscUJBQXFCLEVBQUMsTUFBTSwrQkFBK0IsQ0FBQztBQUVwRTs7R0FFRztBQU9ILE1BQU0sT0FBTyxtQkFBbUI7SUFVOUIsWUFBb0IsTUFBYyxFQUNkLE9BQTZCLEVBQzdCLFNBQTJCLEVBQzNCLFVBQXNCLEVBQ3RCLGNBQXFDO1FBSnJDLFdBQU0sR0FBTixNQUFNLENBQVE7UUFDZCxZQUFPLEdBQVAsT0FBTyxDQUFzQjtRQUM3QixjQUFTLEdBQVQsU0FBUyxDQUFrQjtRQUMzQixlQUFVLEdBQVYsVUFBVSxDQUFZO1FBQ3RCLG1CQUFjLEdBQWQsY0FBYyxDQUF1QjtRQU56RCxtQkFBYyxHQUFhLEVBQUUsQ0FBQztJQU85QixDQUFDO0lBRUQsS0FBSyxDQUFDLEdBQUk7UUFDUixJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDLEVBQUMsT0FBTyxFQUFFLEVBQUMsS0FBSyxFQUFFLElBQUksRUFBQyxFQUFDLENBQUMsRUFBRSxFQUFDLFVBQVUsRUFBRSxJQUFJLEVBQUMsQ0FBQyxDQUFDO0lBQ3ZFLENBQUM7SUFFRDs7Ozs7T0FLRztJQUNILGFBQWEsQ0FBQyxpQkFBb0M7UUFDaEQsSUFBSSxDQUFDLFVBQVUsQ0FBQyxz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LENBQUMsQ0FBQyxDQUFDO0lBQ3pELENBQUM7SUFFRCxrQkFBa0IsQ0FBQyxLQUFLO1FBQ3RCLElBQUksS0FBSyxDQUFDLEtBQUssRUFBRTtZQUNmLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztTQUNyQjthQUFNO1lBQ0wsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO1NBQ3RCO0lBQ0gsQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLENBQUMsVUFBVSxDQUFDLHNCQUFzQixDQUFDLElBQUksRUFBRSxJQUFJLENBQUM7YUFDL0MsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLFNBQVMsR0FBRyxHQUFHLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQzVFLENBQUM7OztZQXBIRixTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLGdCQUFnQjtnQkFDMUIsczREQUEyQzs7YUFFNUM7OztZQVpPLE1BQU07WUFEeUIsb0JBQW9CO1lBQUUsZ0JBQWdCO1lBQXJFLFVBQVU7WUFHVixxQkFBcUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbXBvbmVudCwgT25Jbml0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtCcG1TZXJ2aWNlLCBFeGVjdXRhYmxlUHJvY2VzcywgTm90aWZpY2F0aW9uc1NlcnZpY2UsIFRyYW5zbGF0ZVNlcnZpY2UsIFV0aWxzfSBmcm9tICdAZW8tc2RrL2NvcmUnO1xyXG5pbXBvcnQge1JvdXRlcn0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcclxuaW1wb3J0IHtPYmplY3RGb3JtT3B0aW9uc30gZnJvbSAnLi4vLi4vLi4vb2JqZWN0LWZvcm0nO1xyXG5pbXBvcnQge1BlbmRpbmdDaGFuZ2VzU2VydmljZX0gZnJvbSAnLi4vLi4vLi4vLi4vZW8tZnJhbWV3b3JrLWNvcmUnO1xyXG5cclxuLyoqXHJcbiAqIENvbXBvbmVudCByZW5kZXJpbmcgdGhlIGFwcC1iYXIgYWN0aW9uIG9mIHN0YXJ0aW5nIGV4ZWN1dGFibGUgcHJvY2Vzc2VzLlxyXG4gKi9cclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnZW8tYXBwLXByb2Nlc3MnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9hcHAtcHJvY2Vzcy5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vYXBwLXByb2Nlc3MuY29tcG9uZW50LnNjc3MnXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgQXBwUHJvY2Vzc0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcblxyXG4gIHByb2Nlc3NlczogRXhlY3V0YWJsZVByb2Nlc3NbXTtcclxuICBzZWxlY3RlZFByb2Nlc3M6IEV4ZWN1dGFibGVQcm9jZXNzO1xyXG5cclxuICBwcm9jZXNzRm9ybTogT2JqZWN0Rm9ybU9wdGlvbnM7XHJcbiAgdGl0bGU6IHN0cmluZztcclxuICBzdWJ0aXRsZTogc3RyaW5nO1xyXG4gIHBlbmRpbmdUYXNrSWRzOiBzdHJpbmdbXSA9IFtdO1xyXG5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJvdXRlcjogUm91dGVyLFxyXG4gICAgICAgICAgICAgIHByaXZhdGUgdG9hc3RlcjogTm90aWZpY2F0aW9uc1NlcnZpY2UsXHJcbiAgICAgICAgICAgICAgcHJpdmF0ZSB0cmFuc2xhdGU6IFRyYW5zbGF0ZVNlcnZpY2UsXHJcbiAgICAgICAgICAgICAgcHJpdmF0ZSBicG1TZXJ2aWNlOiBCcG1TZXJ2aWNlLFxyXG4gICAgICAgICAgICAgIHByaXZhdGUgcGVuZGluZ0NoYW5nZXM6IFBlbmRpbmdDaGFuZ2VzU2VydmljZSkge1xyXG4gIH1cclxuXHJcbiAgY2xvc2UoZXZ0Pyk6IHZvaWQge1xyXG4gICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoW3tvdXRsZXRzOiB7bW9kYWw6IG51bGx9fV0sIHtyZXBsYWNlVXJsOiB0cnVlfSk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBTZWxlY3QgYW4gZXhlY3V0YWJsZSBwcm9jZXNzIGZyb20gdGhlIGN1cnJlbnQgbGlzdCBvZiBwcm9jZXNzZXMuXHJcbiAgICogSWYgdGhlIHByb2Nlc3MgcmVxdWlyZXMgc29tZSB1c2VyIGlucHV0LCB0aGlzIHdpbGwgcmVuZGVyIHRoZSBpbnB1dCBmb3JtIG9yXHJcbiAgICogb3RoZXJ3aXNlIHN0YXJ0IHRoZSBwcm9jZXNzIHJpZ2h0IGF3YXkuXHJcbiAgICogQHBhcmFtIGV4ZWN1dGFibGVQcm9jZXNzIFByb2Nlc3MgdG8gYmUgc2VsZWN0ZWQvc3RhcnRlZFxyXG4gICAqL1xyXG4gIHNlbGVjdFByb2Nlc3MoZXhlY3V0YWJsZVByb2Nlc3M6IEV4ZWN1dGFibGVQcm9jZXNzKTogdm9pZCB7XHJcbiAgICB0aGlzLmJwbVNlcnZpY2UuZ2V0RXhlY3V0YWJsZVByb2Nlc3NlcyhudWxsLCBmYWxzZSwgdHJ1ZSwgZXhlY3V0YWJsZVByb2Nlc3MuaWQpLnN1YnNjcmliZShcclxuICAgICAgcmVzID0+IHtcclxuICAgICAgICBleGVjdXRhYmxlUHJvY2VzcyA9IHJlc1swXTtcclxuICAgICAgICB0aGlzLnNlbGVjdGVkUHJvY2VzcyA9IEpTT04ucGFyc2UoSlNPTi5zdHJpbmdpZnkoZXhlY3V0YWJsZVByb2Nlc3MpKTsgLy8gT25seSBjb3BpZXMgb2YgdGhlIG9yaWdpbmFsIHByb2Nlc3NlcyBhcmUgdXNlZC5cclxuICAgICAgICBpZiAodGhpcy5zZWxlY3RlZFByb2Nlc3MuZm9ybSkge1xyXG4gICAgICAgICAgLy8gY3JlYXRlIGZvcm0gb3B0aW9ucyBmcm9tIHRoZSBleGVjaXRhYmxlIHByb2Nlc3MgdG8gYmUgcGFzc2VkIHRvIHRoZSByZW5kZXJpbmcgZm9ybSBjb21wb25lbnRcclxuICAgICAgICAgIHRoaXMuc2VsZWN0ZWRQcm9jZXNzLmZvcm0uc2l0dWF0aW9uID0gJ0NSRUFURSc7XHJcbiAgICAgICAgICB0aGlzLnByb2Nlc3NGb3JtID0ge1xyXG4gICAgICAgICAgICBmb3JtTW9kZWw6IHRoaXMuc2VsZWN0ZWRQcm9jZXNzLmZvcm0sXHJcbiAgICAgICAgICAgIGRhdGE6IHRoaXMuc2VsZWN0ZWRQcm9jZXNzLmRhdGEgfHwge31cclxuICAgICAgICAgIH07XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIC8vIHN0YXJ0IHByb2Nlc3MgcmlnaHQgYXdheVxyXG4gICAgICAgICAgdGhpcy5leGVjdXRlUHJvY2VzcyhcclxuICAgICAgICAgICAgdGhpcy5zZWxlY3RlZFByb2Nlc3MsXHJcbiAgICAgICAgICAgIHt9LFxyXG4gICAgICAgICAgICB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdlby5wcm9jZXNzLnN0YXJ0ZWQnLCB7cHJvY2Vzc05hbWU6IHRoaXMuc2VsZWN0ZWRQcm9jZXNzLnRpdGxlfSlcclxuICAgICAgICAgICk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogU3RhcnRzIHRoZSBjdXJyZW50bHkgc2VsZWN0ZWQgZXhlY3V0YWJsZSBwcm9jZXNzIHdpdGggZGF0YSBwcm92aWRlZCBieVxyXG4gICAqIHRoZSBpbnB1dCBmb3JtLlxyXG4gICAqIEBwYXJhbSBmb3JtRGF0YSBEYXRhIHRvIGJlIHBhc3NlZCB0byB0aGUgcHJvY2VzcyB0byBiZSBjcmVhdGVkXHJcbiAgICovXHJcbiAgc3RhcnRQcm9jZXNzV2l0aEZvcm1EYXRhKGZvcm1EYXRhOiBhbnkpOiB2b2lkIHtcclxuICAgIHRoaXMuZXhlY3V0ZVByb2Nlc3MoXHJcbiAgICAgIHRoaXMuc2VsZWN0ZWRQcm9jZXNzLFxyXG4gICAgICBmb3JtRGF0YSxcclxuICAgICAgdGhpcy50cmFuc2xhdGUuaW5zdGFudCgnZW8ucHJvY2Vzcy5zdGFydGVkJywge3Byb2Nlc3NOYW1lOiB0aGlzLnNlbGVjdGVkUHJvY2Vzcy50aXRsZX0pXHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBleGVjdXRlUHJvY2VzcyhleGVjdXRhYmxlUHJvY2VzczogRXhlY3V0YWJsZVByb2Nlc3MsIGRhdGE6IGFueSwgc3VjY2Vzc01lc3NhZ2UgPSAnJyk6IHZvaWQge1xyXG4gICAgdGhpcy5jYW5jZWxEaWFsb2coKTtcclxuICAgIHRoaXMuY2xvc2UoKTtcclxuXHJcbiAgICB0aGlzLmJwbVNlcnZpY2Uuc3RhcnRQcm9jZXNzKGV4ZWN1dGFibGVQcm9jZXNzLmlkLCBkYXRhLCBbXSlcclxuICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XHJcbiAgICAgICAgdGhpcy50b2FzdGVyLnN1Y2Nlc3Moc3VjY2Vzc01lc3NhZ2UpO1xyXG4gICAgICB9LCBVdGlscy50aHJvdygoKSA9PiB7XHJcbiAgICAgICAgICB0aGlzLnRvYXN0ZXIuZXJyb3IodGhpcy50cmFuc2xhdGUuaW5zdGFudChcclxuICAgICAgICAgICAgJ2VvLnByb2Nlc3Muc3RhcnRlZC5mYWlsJyxcclxuICAgICAgICAgICAge3Byb2Nlc3NOYW1lOiBleGVjdXRhYmxlUHJvY2Vzcy50aXRsZX0pXHJcbiAgICAgICAgICApO1xyXG4gICAgICAgIH1cclxuICAgICAgKSk7XHJcbiAgfVxyXG5cclxuICBmb3JtUmVzZXQoZXZlbnQpOiB2b2lkIHtcclxuICAgIHRoaXMucHJvY2Vzc0Zvcm0gPSBudWxsO1xyXG4gIH1cclxuXHJcbiAgY2FuY2VsRGlhbG9nKCk6IHZvaWQge1xyXG4gICAgdGhpcy5wcm9jZXNzRm9ybSA9IG51bGw7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHN0YXJ0UGVuZGluZygpIHtcclxuICAgIC8vIGJlY2F1c2UgdGhpcyBtZXRob2Qgd2lsbCBiZSBjYWxsZWQgZXZlcnkgdGltZSB0aGUgZm9ybSBzdGF0dXMgY2hhbmdlcyxcclxuICAgIC8vIHBlbmRpbmcgdGFzayB3aWxsIG9ubHkgYmUgc3RhcnRlZCBvbmNlIHVudGlsIGl0IHdhcyBmaW5pc2hlZFxyXG4gICAgaWYgKCF0aGlzLnBlbmRpbmdDaGFuZ2VzLmhhc1BlbmRpbmdUYXNrKHRoaXMucGVuZGluZ1Rhc2tJZHNbMF0gfHwgJyAnKSkge1xyXG4gICAgICB0aGlzLnBlbmRpbmdUYXNrSWRzID0gW3RoaXMucGVuZGluZ0NoYW5nZXMuc3RhcnRUYXNrKCldO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBmaW5pc2hQZW5kaW5nKCkge1xyXG4gICAgdGhpcy5wZW5kaW5nQ2hhbmdlcy5maW5pc2hUYXNrKHRoaXMucGVuZGluZ1Rhc2tJZHNbMF0pO1xyXG4gIH1cclxuXHJcbiAgb25JbmRleERhdGFDaGFuZ2VkKGV2ZW50KSB7XHJcbiAgICBpZiAoZXZlbnQuZGlydHkpIHtcclxuICAgICAgdGhpcy5zdGFydFBlbmRpbmcoKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMuZmluaXNoUGVuZGluZygpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKSB7XHJcbiAgICB0aGlzLmJwbVNlcnZpY2UuZ2V0RXhlY3V0YWJsZVByb2Nlc3NlcyhudWxsLCB0cnVlKVxyXG4gICAgICAuc3Vic2NyaWJlKHJlcyA9PiB0aGlzLnByb2Nlc3NlcyA9IHJlcy5zb3J0KFV0aWxzLnNvcnRWYWx1ZXMoJ3RpdGxlJykpKTtcclxuICB9XHJcbn1cclxuIl19
@@ -7,7 +7,7 @@ const moment = moment_;
7
7
  export class DatepickerComponent {
8
8
  constructor(translate, datepickerService) {
9
9
  this.datepickerService = datepickerService;
10
- this.maxYear = 99999;
10
+ this.maxYear = 9999;
11
11
  this.minYear = 0;
12
12
  // ngModel for the year input
13
13
  // ngModel for the time inputs
@@ -227,4 +227,4 @@ DatepickerComponent.propDecorators = {
227
227
  useDatabaseMinimumTime: [{ type: Input }],
228
228
  onKeydownHandler: [{ type: HostListener, args: ['document:keydown', ['$event'],] }]
229
229
  };
230
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZXBpY2tlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL2VvLWZyYW1ld29yay9mb3JtLWVsZW1lbnRzL2RhdGV0aW1lL2RhdGVwaWNrZXIvZGF0ZXBpY2tlci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBRSxLQUFLLEVBQUUsWUFBWSxFQUFFLE1BQU0sRUFBVSxZQUFZLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDM0YsT0FBTyxLQUFLLE9BQU8sTUFBTSxRQUFRLENBQUM7QUFDbEMsT0FBTyxvQkFBb0IsQ0FBQztBQUM1QixPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSxjQUFjLENBQUM7QUFFOUMsT0FBTyxFQUFDLGlCQUFpQixFQUFDLE1BQU0sOEJBQThCLENBQUM7QUFHL0QsTUFBTSxNQUFNLEdBQUcsT0FBTyxDQUFDO0FBU3ZCLE1BQU0sT0FBTyxtQkFBbUI7SUFvSDlCLFlBQVksU0FBMkIsRUFBVSxpQkFBb0M7UUFBcEMsc0JBQWlCLEdBQWpCLGlCQUFpQixDQUFtQjtRQWhIckYsWUFBTyxHQUFHLEtBQUssQ0FBQztRQUNoQixZQUFPLEdBQUcsQ0FBQyxDQUFDO1FBK0JaLDZCQUE2QjtRQUU3Qiw4QkFBOEI7UUFDOUIsU0FBSSxHQUFHO1lBQ0wsQ0FBQyxFQUFFLENBQUM7WUFDSixDQUFDLEVBQUUsQ0FBQztTQUNMLENBQUM7UUFFRiw2QkFBNkI7UUFFN0IsY0FBUyxHQUFHO1lBQ1YsS0FBSyxFQUFFLElBQUk7WUFDWCxJQUFJLEVBQUUsSUFBSTtTQUNYLENBQUM7UUFLRixnREFBZ0Q7UUFDdEMsa0JBQWEsR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBQ25DLGVBQVUsR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBNkR4QyxNQUFNLE1BQU0sR0FBRyxDQUFDLFNBQVMsQ0FBQyxXQUFXLElB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RyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7SUFDdEMsQ0FBQztJQUVELFVBQVU7UUFDUixJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxVQUFVLEVBQUUsQ0FBQztJQUN2RCxDQUFDO0lBRUQsUUFBUTtRQUNOLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFO1lBQ2YsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDLENBQUMsTUFBTSxFQUFFLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDLFdBQVcsRUFBRSxDQUFDO1NBQzdGO1FBQ0QsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxDQUFDO1FBQ3ZDLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDO0lBQzFCLENBQUM7SUFFTSxTQUFTLENBQUMsS0FBSyxFQUFFLElBQUk7UUFDMUIsT0FBTyxLQUFLLENBQUM7SUFDZixDQUFDOzs7WUFwUEYsU0FBUyxTQUFDO2dCQUNULFFBQVEsRUFBRSxlQUFlO2dCQUN6QixpNEhBQTBDO2dCQUUxQyxTQUFTLEVBQUUsQ0FBQyxpQkFBaUIsQ0FBQzs7YUFDL0I7OztZQWJPLGdCQUFnQjtZQUVoQixpQkFBaUI7Ozs0QkFtRXRCLE1BQU07eUJBQ04sTUFBTTt1QkFFTixLQUFLO3VCQUNMLEtBQUs7OEJBRUwsS0FBSzttQkFTTCxLQUFLLFNBQUMsTUFBTTtxQ0FXWixLQUFLOytCQUtMLFlBQVksU0FBQyxrQkFBa0IsRUFBRSxDQUFDLFFBQVEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29tcG9uZW50LCBJbnB1dCwgRXZlbnRFbWl0dGVyLCBPdXRwdXQsIE9uSW5pdCwgSG9zdExpc3RlbmVyfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0ICogYXMgbW9tZW50XyBmcm9tICdtb21lbnQnO1xyXG5pbXBvcnQgJ21vbWVudC9taW4vbG9jYWxlcyc7XHJcbmltcG9ydCB7VHJhbnNsYXRlU2VydmljZX0gZnJvbSAnQGVvLXNkay9jb3JlJztcclxuaW1wb3J0IHtNb21lbnR9IGZyb20gJ21vbWVudCc7XHJcbmltcG9ydCB7RGF0ZXBpY2tlclNlcnZpY2V9IGZyb20gJy4vc2VydmljZS9kYXRlcGlja2VyLnNlcnZpY2UnO1xyXG5pbXBvcnQge1RpbWUsIFdlZWtzfSBmcm9tICcuL2RhdGVwaWNrZXIuaW50ZXJmYWNlJztcclxuXHJcbmNvbnN0IG1vbWVudCA9IG1vbWVudF87XHJcblxyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdlby1kYXRlcGlja2VyJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vZGF0ZXBpY2tlci5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vZGF0ZXBpY2tlci5jb21wb25lbnQuc2NzcyddLFxyXG4gIHByb3ZpZGVyczogW0RhdGVwaWNrZXJTZXJ2aWNlXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgRGF0ZXBpY2tlckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcblxyXG4gIG1vbnRoc1Nob3J0OiBzdHJpbmdbXTtcclxuICB3ZWVrZGF5c1Nob3J0OiBzdHJpbmdbXTtcclxuICBtYXhZZWFyID0gOTk5OTk7XHJcbiAgbWluWWVhciA9IDA7XHJcblxyXG4gIC8vIGN1cnJlbnQgbW9udGggc2hvd24gaW4gdGhlIHBpY2tlclxyXG4gIHNldCBtb250aChtb250aDogTW9tZW50KSB7XHJcbiAgICB0aGlzLmRhdGVwaWNrZXJTZXJ2aWNlLm1vbnRoID0gbW9udGg7XHJcbiAgfTtcclxuXHJcbiAgZ2V0IG1vbnRoKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuZGF0ZXBpY2tlclNlcnZpY2UubW9udGg7XHJcbiAgfVxyXG5cclxuICBzZXQgd2Vla3Mod2Vla3M6IFdlZWtzW10pIHtcclxuICAgIHRoaXMuZGF0ZXBpY2tlclNlcnZpY2Uud2Vla3MgPSB3ZWVrcztcclxuICB9O1xyXG5cclxuICBnZXQgd2Vla3MoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5kYXRlcGlja2VyU2VydmljZS53ZWVrcztcclxuICB9XHJcblxyXG4vLyBuZ01vZGVsIGZvciB0aGUgeWVhciBpbnB1dFxyXG4gIHNldCB5ZWFyKHllYXI6IG51bWJlcikge1xyXG4gICAgdGhpcy5kYXRlcGlja2VyU2VydmljZS55ZWFyID0geWVhcjtcclxuICB9O1xyXG5cclxuICBnZXQgeWVhcigpIHtcclxuICAgIHJldHVybiB0aGlzLmRhdGVwaWNrZXJTZXJ2aWNlLnllYXI7XHJcbiAgfVxyXG5cclxuICAvLyBzZWxlY3RlZCBkYXRlXHJcbiAgc2VsZWN0ZWQ6IE1vbWVudDtcclxuXHJcbiAgLy8gbmdNb2RlbCBmb3IgdGhlIHllYXIgaW5wdXRcclxuXHJcbiAgLy8gbmdNb2RlbCBmb3IgdGhlIHRpbWUgaW5wdXRzXHJcbiAgdGltZSA9IHtcclxuICAgIGg6IDAsXHJcbiAgICBtOiAwXHJcbiAgfTtcclxuXHJcbiAgLy8gd2Vla3Mgb2YgdGhlIGN1cnJlbnQgbW9udGhcclxuXHJcbiAgbW9udGhJbmZvID0ge1xyXG4gICAgbW9udGg6IG51bGwsXHJcbiAgICB5ZWFyOiBudWxsXHJcbiAgfTtcclxuXHJcbiAgLy8gSVNPIHN0cmluZyBvZiB0aGUgZGF0ZSBzZXQgYnkgdGhlIGNvbXBvbmVudHMgZGF0ZSBwcm9wZXJ0eSAodXNlZCBmb3IgY29tcGFyaW5nIGVxdWFsaXR5KVxyXG4gIHByaXZhdGUgX2RhdGU6IHN0cmluZztcclxuICBwcml2YXRlIGluaXRpYWxpemVkOiBib29sZWFuO1xyXG4gIC8vIGVtaXR0ZWQgd2hlbiBhIG5ldyB2YWx1ZSBpcyBzZXQgYnkgdGhlIHBpY2tlclxyXG4gIEBPdXRwdXQoKSBvbkRhdGVDaGFuZ2VkID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG4gIEBPdXRwdXQoKSBvbkNhbmNlbGVkID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG5cclxuICBASW5wdXQoKSB3aXRoVGltZTogYm9vbGVhbjtcclxuICBASW5wdXQoKSB3aXRoQW1QbTogYm9vbGVhbjtcclxuXHJcbiAgQElucHV0KClcclxuICBzZXQgb25seUZ1dHVyZURhdGVzKGVuYWJsZWQ6IGJvb2xlYW4pIHtcclxuICAgIHRoaXMuZGF0ZXBpY2tlclNlcnZpY2UuZnV0dXJlT25seSA9IGVuYWJsZWQgPyBlbmFibGVkIDogZmFsc2U7XHJcbiAgfVxyXG5cclxuICBnZXQgZnV0dXJlT25seSgpIHtcclxuICAgIHJldHVybiB0aGlzLmRhdGVwaWNrZXJTZXJ2aWNlLmZ1dHVyZU9ubHk7XHJcbiAgfVxyXG5cclxuICBASW5wdXQoJ2RhdGUnKVxyXG4gIHNldCBkYXRlKGRhdGU6IGFueSkge1xyXG4gICAgbGV0IG1Jc28gPSBtb21lbnQoZGF0ZSkudG9JU09TdHJpbmcoKTtcclxuICAgIGlmICh0aGlzLl9kYXRlICE9PSBtSXNvKSB7XHJcbiAgICAgIHRoaXMuX2RhdGUgPSBtSXNvO1xyXG4gICAgICBpZiAodGhpcy5pbml0aWFsaXplZCkge1xyXG4gICAgICAgIHRoaXMuc2V0Q2FsZW5kZXJEYXRlKGRhdGUsIHRydWUpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBASW5wdXQoKVxyXG4gIHNldCB1c2VEYXRhYmFzZU1pbmltdW1UaW1lKGVuYWJsZWQ6IGJvb2xlYW4pIHtcclxuICAgIHRoaXMubWluWWVhciA9IGVuYWJsZWQgPyAxNzUzIDogMDtcclxuICB9XHJcblxyXG4gIEBIb3N0TGlzdGVuZXIoJ2RvY3VtZW50OmtleWRvd24nLCBbJyRldmVudCddKSBvbktleWRvd25IYW5kbGVyKGV2ZW50OiBLZXlib2FyZEV2ZW50KSB7XHJcbiAgICBsZXQgbmV3RGF0ZTtcclxuICAgIGlmIChldmVudC5rZXlDb2RlID09PSAxMykge1xyXG4gICAgICB0aGlzLnNlbGVjdFZhbHVlKCk7XHJcbiAgICB9IGVsc2UgaWYgKGV2ZW50LmtleUNvZGUgPT09IDI3KSB7XHJcbiAgICAgIHRoaXMuY2FuY2VsKCk7XHJcbiAgICB9IGVsc2UgaWYgKGV2ZW50LmtleUNvZGUgPT09IDM3KSB7XHJcbiAgICAgIG5ld0RhdGUgPSBtb21lbnQodGhpcy5zZWxlY3RlZCkuYWRkKC0xLCAnZCcpO1xyXG4gICAgfSBlbHNlIGlmIChldmVudC5rZXlDb2RlID09PSAzOCkge1xyXG4gICAgICBuZXdEYXRlID0gbW9tZW50KHRoaXMuc2VsZWN0ZWQpLmFkZCgtNywgJ2QnKTtcclxuICAgIH0gZWxzZSBpZiAoZXZlbnQua2V5Q29kZSA9PT0gMzkpIHtcclxuICAgICAgbmV3RGF0ZSA9IG1vbWVudCh0aGlzLnNlbGVjdGVkKS5hZGQoMSwgJ2QnKTtcclxuICAgIH0gZWxzZSBpZiAoZXZlbnQua2V5Q29kZSA9PT0gNDApIHtcclxuICAgICAgbmV3RGF0ZSA9IG1vbWVudCh0aGlzLnNlbGVjdGVkKS5hZGQoNywgJ2QnKTtcclxuICAgIH1cclxuICAgIGlmIChuZXdEYXRlICYmICF0aGlzLmRhdGVwaWNrZXJTZXJ2aWNlLmlzRGlzYWJsZWREYXRlKG5ld0RhdGUpKSB7XHJcbiAgICAgIHRoaXMuc2VsZWN0KG5ld0RhdGUpO1xyXG4gICAgfVxyXG4gICAgaWYgKGV2ZW50LmtleUNvZGUgPT09IDEzIHx8IGV2ZW50LmtleUNvZGUgPT09IDI3KSB7XHJcbiAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XHJcbiAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgb25JbnB1dEtleWRvd24oZXZlbnQ6IEtleWJvYXJkRXZlbnQpIHtcclxuICAgIGlmIChldmVudC5rZXlDb2RlICE9PSAyNyAmJiBldmVudC5rZXlDb2RlICE9PSAxMykge1xyXG4gICAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGNvbnN0cnVjdG9yKHRyYW5zbGF0ZTogVHJhbnNsYXRlU2VydmljZSwgcHJpdmF0ZSBkYXRlcGlja2VyU2VydmljZTogRGF0ZXBpY2tlclNlcnZpY2UpIHtcclxuICAgIGNvbnN0IGxvY2FsZSA9ICh0cmFuc2xhdGUuY3VycmVudExhbmcgfHwgdHJhbnNsYXRlLmRlZmF1bHRMYW5nKS5yZXBsYWNlKCd6aCcsICd6aC1jbicpOyAvLyBCVUc6IG1vbWVudCBkb2VzIG5vdCBzdXBwb3J0ICd6aCdcclxuICAgIG1vbWVudC5sb2NhbGUobG9jYWxlKTtcclxuICAgIGxldCBzdGFydERheSA9IG1vbWVudCgpLnN0YXJ0T2YoJ3dlZWsnKS5kYXkoKTtcclxuICAgIHRoaXMubW9udGhzU2hvcnQgPSBtb21lbnQubW9udGhzU2hvcnQoKTtcclxuICAgIHRoaXMud2Vla2RheXNTaG9ydCA9IG1vbWVudC53ZWVrZGF5c1Nob3J0KCkuc2xpY2Uoc3RhcnREYXkpLmNvbmNhdChtb21lbnQud2Vla2RheXNTaG9ydCgpLnNsaWNlKDAsIHN0YXJ0RGF5KSk7XHJcbiAgfVxyXG5cclxuICBzZWxlY3RWYWx1ZSgpIHtcclxuICAgIHRoaXMub25EYXRlQ2hhbmdlZC5lbWl0KHtcclxuICAgICAgZGF0ZTogdGhpcy5zZWxlY3RlZC50b0RhdGUoKVxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBjYW5jZWwoKSB7XHJcbiAgICB0aGlzLm9uQ2FuY2VsZWQuZW1pdCh7fSk7XHJcbiAgfVxyXG5cclxuICBzZWxlY3QoZGF0ZSkge1xyXG4gICAgdGhpcy5zZWxlY3RlZCA9IGRhdGU7XHJcbiAgICBpZiAodGhpcy53aXRoVGltZSkge1xyXG4gICAgICB0aGlzLnNlbGVjdGVkLmhvdXIodGhpcy50aW1lLmgpO1xyXG4gICAgICB0aGlzLnNlbGVjdGVkLm1pbnV0ZSh0aGlzLnRpbWUubSk7XHJcbiAgICB9XHJcbiAgICBpZiAodGhpcy5zZWxlY3RlZC5tb250aCgpICE9PSB0aGlzLm1vbnRoLm1vbnRoKCkpIHtcclxuICAgICAgdGhpcy5zZXRNb250aCh0aGlzLnNlbGVjdGVkLm1vbnRoKCkpO1xyXG4gICAgfVxyXG4gICAgaWYgKHRoaXMuc2VsZWN0ZWQueWVhcigpICE9PSB0aGlzLnllYXIpIHtcclxuICAgICAgdGhpcy5zZXRZZWFyKHRoaXMuc2VsZWN0ZWQueWVhcigpKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGZvY3VzU2VsZWN0aW9uKCkge1xyXG4gICAgdGhpcy5tb250aC5tb250aCh0aGlzLnNlbGVjdGVkLm1vbnRoKCkpO1xyXG4gICAgdGhpcy5tb250aC55ZWFyKHRoaXMuc2VsZWN0ZWQueWVhcigpKTtcclxuICAgIHRoaXMuZGF0ZXBpY2tlclNlcnZpY2UuYnVpbGRNb250aCgpO1xyXG4gICAgdGhpcy5jcmVhdGVJbmZvKCk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBTZXQgdGhlIHBpY2tlcnMgc2VsZWN0ZWQgZGF0ZVxyXG4gICAqXHJcbiAgICogQHBhcmFtIERhdGUgfCBzdHJpbmcgZGF0ZVxyXG4gICAqIEBwYXJhbSBib29sZWFuIHNlbGVjdCAtIGlmIHNldCB0byB0cnVlIHRoZSBnaXZlbiBkYXkgd2lsbCBiZSBzZXQgc2VsZWN0ZWRcclxuICAgKi9cclxuICBzZXRDYWxlbmRlckRhdGUoZGF0ZTogRGF0ZSB8IHN0cmluZywgc2VsZWN0PzogYm9vbGVhbikge1xyXG5cclxuICAgIGxldCBtID0gbW9tZW50KGRhdGUpO1xyXG5cclxuICAgIGlmIChtLmlzVmFsaWQoKSkge1xyXG4gICAgICB0aGlzLm1vbnRoID0gbTtcclxuICAgICAgLy8gbGV0IHN0YXJ0ID0gbW9tZW50O1xyXG4gICAgICAvLyBzdGFydC5kYXRlKDEpO1xyXG4gICAgICAvLyB0aGlzLnJlbW92ZVRpbWUoc3RhcnQuZGF5KDApKTtcclxuICAgICAgaWYgKHNlbGVjdCkge1xyXG4gICAgICAgIHRoaXMuc2VsZWN0ZWQgPSBtb21lbnQoZGF0ZSk7XHJcbiAgICAgIH1cclxuICAgICAgaWYgKHRoaXMud2l0aFRpbWUpIHtcclxuICAgICAgICB0aGlzLnRpbWUgPSB7XHJcbiAgICAgICAgICBoOiBtLmhvdXIoKSxcclxuICAgICAgICAgIG06IG0ubWludXRlKClcclxuICAgICAgICB9O1xyXG4gICAgICB9XHJcbiAgICAgIHRoaXMuZGF0ZXBpY2tlclNlcnZpY2UuYnVpbGRNb250aCgpO1xyXG4gICAgICB0aGlzLmNyZWF0ZUluZm8oKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHB1YmxpYyBpbmNyZW1lbnQoeWVhcjogbnVtYmVyKSB7XHJcbiAgICB0aGlzLnNldFllYXIoeWVhciArIDEpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGRlY3JlbWVudCh5ZWFyOiBudW1iZXIpIHtcclxuICAgIHRoaXMuc2V0WWVhcih5ZWFyIC0gMSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgc2V0WWVhcih5ZWFyOiBudW1iZXIpIHtcclxuICAgIHRoaXMueWVhciA9IHRoaXMuZGF0ZXBpY2tlclNlcnZpY2Uuc2V0WWVhcih5ZWFyLCB0aGlzLm1pblllYXIsIHRoaXMubWF4WWVhcik7XHJcbiAgICB0aGlzLm1vbnRoLnllYXIodGhpcy55ZWFyKTtcclxuICAgIHRoaXMuZGF0ZXBpY2tlclNlcnZpY2UuYnVpbGRNb250aCgpO1xyXG4gICAgdGhpcy5jcmVhdGVJbmZvKCk7XHJcbiAgICB0aGlzLnNlbGVjdGVkLnllYXIodGhpcy55ZWFyKTtcclxuICB9O1xyXG5cclxuICBwdWJsaWMgdGltZVRvU3RyaW5nKHRpbWU6IG51bWJlcik6IHN0cmluZyB7XHJcbiAgICByZXR1cm4gKCcwJyArIE1hdGguYWJzKHRpbWUpKS5zbGljZSgtMik7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgc2V0VGltZSh0aW1lOiBUaW1lKSB7XHJcbiAgICB0aGlzLnRpbWUgPSB0aGlzLmRhdGVwaWNrZXJTZXJ2aWNlLnNldFRpbWUodGltZSk7XHJcbiAgICB0aGlzLnNlbGVjdGVkLmhvdXIodGhpcy50aW1lLmgpO1xyXG4gICAgdGhpcy5zZWxlY3RlZC5taW51dGUodGhpcy50aW1lLm0pO1xyXG4gIH07XHJcblxyXG4gIHB1YmxpYyBzZXRNb250aChpbmRleDogbnVtYmVyKSB7XHJcbiAgICB0aGlzLm1vbnRoLm1vbnRoKGluZGV4KTtcclxuICAgIHRoaXMuZGF0ZXBpY2tlclNlcnZpY2UuYnVpbGRNb250aCgpO1xyXG4gICAgdGhpcy5jcmVhdGVJbmZvKCk7XHJcbiAgfTtcclxuXHJcbiAgcHVibGljIGlzU2VsZWN0ZWREYXkoZGF5OiBNb21lbnQpIHtcclxuICAgIHJldHVybiBkYXkuaXNTYW1lKHRoaXMuc2VsZWN0ZWQsICdkYXknKTtcclxuICB9XHJcblxyXG4gIGluUmFuZ2UoeCwgbWluID0gMCwgbWF4ID0gMTEpIHtcclxuICAgIHJldHVybiAoKHggLSBtaW4pICogKHggLSBtYXgpIDw9IDApO1xyXG4gIH1cclxuXHJcbiAgY3JlYXRlSW5mbygpIHtcclxuICAgIHRoaXMubW9udGhJbmZvID0gdGhpcy5kYXRlcGlja2VyU2VydmljZS5jcmVhdGVJbmZvKCk7XHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpIHtcclxuICAgIGlmICghdGhpcy5fZGF0ZSkge1xyXG4gICAgICB0aGlzLl9kYXRlID0gdGhpcy53aXRoVGltZSA/IG1vbWVudCgpLnRvSVNPU3RyaW5nKCkgOiBtb21lbnQoKS5zdGFydE9mKCdkYXknKS50b0lTT1N0cmluZygpO1xyXG4gICAgfVxyXG4gICAgdGhpcy5zZXRDYWxlbmRlckRhdGUodGhpcy5fZGF0ZSwgdHJ1ZSk7XHJcbiAgICB0aGlzLmluaXRpYWxpemVkID0gdHJ1ZTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyB0cmFja0J5Rm4oaW5kZXgsIGl0ZW0pIHtcclxuICAgIHJldHVybiBpbmRleDtcclxuICB9XHJcbn1cclxuIl19
230
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZXBpY2tlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL2VvLWZyYW1ld29yay9mb3JtLWVsZW1lbnRzL2RhdGV0aW1lL2RhdGVwaWNrZXIvZGF0ZXBpY2tlci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBRSxLQUFLLEVBQUUsWUFBWSxFQUFFLE1BQU0sRUFBVSxZQUFZLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDM0YsT0FBTyxLQUFLLE9BQU8sTUFBTSxRQUFRLENBQUM7QUFDbEMsT0FBTyxvQkFBb0IsQ0FBQztBQUM1QixPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSxjQUFjLENBQUM7QUFFOUMsT0FBTyxFQUFDLGlCQUFpQixFQUFDLE1BQU0sOEJBQThCLENBQUM7QUFHL0QsTUFBTSxNQUFNLEdBQUcsT0FBTyxDQUFDO0FBU3ZCLE1BQU0sT0FBTyxtQkFBbUI7SUFvSDlCLFlBQVksU0FBMkIsRUFBVSxpQkFBb0M7UUFBcEMsc0JBQWlCLEdBQWpCLGlCQUFpQixDQUFtQjtRQWhIckYsWUFBTyxHQUFHLElBQUksQ0FBQztRQUNmLFlBQU8sR0FBRyxDQUFDLENBQUM7UUErQlosNkJBQTZCO1FBRTdCLDhCQUE4QjtRQUM5QixTQUFJLEdBQUc7WUFDTCxDQUFDLEVBQUUsQ0FBQztZQUNKLENBQUMsRUFBRSxDQUFDO1NBQ0wsQ0FBQztRQUVGLDZCQUE2QjtRQUU3QixjQUFTLEdBQUc7WUFDVixLQUFLLEVBQUUsSUFBSTtZQUNYLElBQUksRUFBRSxJQUFJO1NBQ1gsQ0FBQztRQUtGLGdEQUFnRDtRQUN0QyxrQkFBYSxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFDbkMsZUFBVSxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUE2RHhDLE1BQU0sTUFBTSxHQUFHLENBQUMsU0FBUyxDQUFDLFdBQVcsSUFBSSxTQUFTLENBQUMsV0FBVyxDQUFDLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRSxPQUFPLENBQUMsQ0FBQyxDQUFDLG9DQUFvQztRQUM1SCxNQUFNLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ3RCLElBQUksUUFBUSxHQUFHLE1BQU0sRUFBRSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQyxHQUFHLEVBQUUsQ0FBQztRQUM5QyxJQUFJLENBQUMsV0FBVyxHQUFHLE1BQU0sQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUN4QyxJQUFJLENBQUMsYUFBYSxHQUFHLE1BQU0sQ0FBQyxhQUFhLEVBQUUsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxhQUFhLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLFFBQVEsQ0FBQyxDQUFDLENBQUM7SUFDaEgsQ0FBQztJQW5IRCxvQ0FBb0M7SUFDcEMsSUFBSSxLQUFLLENBQUMsS0FBYTtRQUNyQixJQUFJLENBQUMsaUJBQWlCLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztJQUN2QyxDQUFDO0lBQUEsQ0FBQztJQUVGLElBQUksS0FBSztRQUNQLE9BQU8sSUFBSSxDQUFDLGlCQUFpQixDQUFDLEtBQUssQ0FBQztJQUN0QyxDQUFDO0lBRUQsSUFBSSxLQUFLLENBQUMsS0FBYztRQUN0QixJQUFJLENBQUMsaUJBQWlCLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztJQUN2QyxDQUFDO0lBQUEsQ0FBQztJQUVGLElBQUksS0FBSztRQUNQLE9BQU8sSUFBSSxDQUFDLGlCQUFpQixDQUFDLEtBQUssQ0FBQztJQUN0QyxDQUFDO0lBRUgsNkJBQTZCO0lBQzNCLElBQUksSUFBSSxDQUFDLElBQVk7UUFDbkIsSUFBSSxDQUFDLGlCQUFpQixDQUFDLElBQUksR0FBRyxJQUFJLENBQUM7SUFDckMsQ0FBQztJQUFBLENBQUM7SUFFRixJQUFJLElBQUk7UUFDTixPQUFPLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUM7SUFDckMsQ0FBQztJQThCRCxJQUNJLGVBQWUsQ0FBQyxPQUFnQjtRQUNsQyxJQUFJLENBQUMsaUJBQWlCLENBQUMsVUFBVSxHQUFHLE9BQU8sQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUM7SUFDaEUsQ0FBQztJQUVELElBQUksVUFBVTtRQUNaLE9BQU8sSUFBSSxDQUFDLGlCQUFpQixDQUFDLFVBQVUsQ0FBQztJQUMzQyxDQUFDO0lBRUQsSUFDSSxJQUFJLENBQUMsSUFBUztRQUNoQixJQUFJLElBQUksR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDdEMsSUFBSSxJQUFJLENBQUMsS0FBSyxLQUFLLElBQUksRUFBRTtZQUN2QixJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQztZQUNsQixJQUFJLElBQUksQ0FBQyxXQUFXLEVBQUU7Z0JBQ3BCLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDO2FBQ2xDO1NBQ0Y7SUFDSCxDQUFDO0lBRUQsSUFDSSxzQkFBc0IsQ0FBQyxPQUFnQjtRQUN6QyxJQUFJLENBQUMsT0FBTyxHQUFHLE9BQU8sQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDcEMsQ0FBQztJQUU2QyxnQkFBZ0IsQ0FBQyxLQUFvQjtRQUNqRixJQUFJLE9BQU8sQ0FBQztRQUNaLElBQUksS0FBSyxDQUFDLE9BQU8sS0FBSyxFQUFFLEVBQUU7WUFDeEIsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1NBQ3BCO2FBQU0sSUFBSSxLQUFLLENBQUMsT0FBTyxLQUFLLEVBQUUsRUFBRTtZQUMvQixJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7U0FDZjthQUFNLElBQUksS0FBSyxDQUFDLE9BQU8sS0FBSyxFQUFFLEVBQUU7WUFDL0IsT0FBTyxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxDQUFDO1NBQzlDO2FBQU0sSUFBSSxLQUFLLENBQUMsT0FBTyxLQUFLLEVBQUUsRUFBRTtZQUMvQixPQUFPLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsR0FBRyxDQUFDLENBQUM7U0FDOUM7YUFBTSxJQUFJLEtBQUssQ0FBQyxPQUFPLEtBQUssRUFBRSxFQUFFO1lBQy9CLE9BQU8sR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQUUsR0FBRyxDQUFDLENBQUM7U0FDN0M7YUFBTSxJQUFJLEtBQUssQ0FBQyxPQUFPLEtBQUssRUFBRSxFQUFFO1lBQy9CLE9BQU8sR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQUUsR0FBRyxDQUFDLENBQUM7U0FDN0M7UUFDRCxJQUFJLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxjQUFjLENBQUMsT0FBTyxDQUFDLEVBQUU7WUFDOUQsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQztTQUN0QjtRQUNELElBQUksS0FBSyxDQUFDLE9BQU8sS0FBSyxFQUFFLElBQUksS0FBSyxDQUFDLE9BQU8sS0FBSyxFQUFFLEVBQUU7WUFDaEQsS0FBSyxDQUFDLGNBQWMsRUFBRSxDQUFDO1lBQ3ZCLEtBQUssQ0FBQyxlQUFlLEVBQUUsQ0FBQztTQUN6QjtJQUNILENBQUM7SUFFRCxjQUFjLENBQUMsS0FBb0I7UUFDakMsSUFBSSxLQUFLLENBQUMsT0FBTyxLQUFLLEVBQUUsSUFBSSxLQUFLLENBQUMsT0FBTyxLQUFLLEVBQUUsRUFBRTtZQUNoRCxLQUFLLENBQUMsZUFBZSxFQUFFLENBQUM7U0FDekI7SUFDSCxDQUFDO0lBVUQsV0FBVztRQUNULElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDO1lBQ3RCLElBQUksRUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLE1BQU0sRUFBRTtTQUM3QixDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsTUFBTTtRQUNKLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQzNCLENBQUM7SUFFRCxNQUFNLENBQUMsSUFBSTtRQUNULElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDO1FBQ3JCLElBQUksSUFBSSxDQUFDLFFBQVEsRUFBRTtZQUNqQixJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ2hDLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7U0FDbkM7UUFDRCxJQUFJLElBQUksQ0FBQyxRQUFRLENBQUMsS0FBSyxFQUFFLEtBQUssSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLEVBQUUsRUFBRTtZQUNoRCxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQztTQUN0QztRQUNELElBQUksSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsS0FBSyxJQUFJLENBQUMsSUFBSSxFQUFFO1lBQ3RDLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDO1NBQ3BDO0lBQ0gsQ0FBQztJQUVELGNBQWM7UUFDWixJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUM7UUFDeEMsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBQ3RDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxVQUFVLEVBQUUsQ0FBQztRQUNwQyxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7SUFDcEIsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0gsZUFBZSxDQUFDLElBQW1CLEVBQUUsTUFBZ0I7UUFFbkQsSUFBSSxDQUFDLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBRXJCLElBQUksQ0FBQyxDQUFDLE9BQU8sRUFBRSxFQUFFO1lBQ2YsSUFBSSxDQUFDLEtBQUssR0FBRyxDQUFDLENBQUM7WUFDZixzQkFBc0I7WUFDdEIsaUJBQWlCO1lBQ2pCLGlDQUFpQztZQUNqQyxJQUFJLE1BQU0sRUFBRTtnQkFDVixJQUFJLENBQUMsUUFBUSxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQzthQUM5QjtZQUNELElBQUksSUFBSSxDQUFDLFFBQVEsRUFBRTtnQkFDakIsSUFBSSxDQUFDLElBQUksR0FBRztvQkFDVixDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksRUFBRTtvQkFDWCxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sRUFBRTtpQkFDZCxDQUFDO2FBQ0g7WUFDRCxJQUFJLENBQUMsaUJBQWlCLENBQUMsVUFBVSxFQUFFLENBQUM7WUFDcEMsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO1NBQ25CO0lBQ0gsQ0FBQztJQUVNLFNBQVMsQ0FBQyxJQUFZO1FBQzNCLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxHQUFHLENBQUMsQ0FBQyxDQUFDO0lBQ3pCLENBQUM7SUFFTSxTQUFTLENBQUMsSUFBWTtRQUMzQixJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksR0FBRyxDQUFDLENBQUMsQ0FBQztJQUN6QixDQUFDO0lBRU0sT0FBTyxDQUFDLElBQVk7UUFDekIsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsaUJBQWlCLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUM3RSxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDM0IsSUFBSSxDQUFDLGlCQUFpQixDQUFDLFVBQVUsRUFBRSxDQUFDO1FBQ3BDLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztRQUNsQixJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDaEMsQ0FBQztJQUFBLENBQUM7SUFFSyxZQUFZLENBQUMsSUFBWTtRQUM5QixPQUFPLENBQUMsR0FBRyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUMxQyxDQUFDO0lBRU0sT0FBTyxDQUFDLElBQVU7UUFDdkIsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsaUJBQWlCLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ2pELElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDaEMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNwQyxDQUFDO0lBQUEsQ0FBQztJQUVLLFFBQVEsQ0FBQyxLQUFhO1FBQzNCLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3hCLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxVQUFVLEVBQUUsQ0FBQztRQUNwQyxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7SUFDcEIsQ0FBQztJQUFBLENBQUM7SUFFSyxhQUFhLENBQUMsR0FBVztRQUM5QixPQUFPLEdBQUcsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxLQUFLLENBQUMsQ0FBQztJQUMxQyxDQUFDO0lBRUQsT0FBTyxDQUFDLENBQUMsRUFBRSxHQUFHLEdBQUcsQ0FBQyxFQUFFLEdBQUcsR0FBRyxFQUFFO1FBQzFCLE9BQU8sQ0FBQyxDQUFDLENBQUMsR0FBRyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBRyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztJQUN0QyxDQUFDO0lBRUQsVUFBVTtRQUNSLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixDQUFDLFVBQVUsRUFBRSxDQUFDO0lBQ3ZELENBQUM7SUFFRCxRQUFRO1FBQ04sSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUU7WUFDZixJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUMsV0FBVyxFQUFFLENBQUM7U0FDN0Y7UUFDRCxJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLENBQUM7UUFDdkMsSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUM7SUFDMUIsQ0FBQztJQUVNLFNBQVMsQ0FBQyxLQUFLLEVBQUUsSUFBSTtRQUMxQixPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7OztZQXBQRixTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLGVBQWU7Z0JBQ3pCLGk0SEFBMEM7Z0JBRTFDLFNBQVMsRUFBRSxDQUFDLGlCQUFpQixDQUFDOzthQUMvQjs7O1lBYk8sZ0JBQWdCO1lBRWhCLGlCQUFpQjs7OzRCQW1FdEIsTUFBTTt5QkFDTixNQUFNO3VCQUVOLEtBQUs7dUJBQ0wsS0FBSzs4QkFFTCxLQUFLO21CQVNMLEtBQUssU0FBQyxNQUFNO3FDQVdaLEtBQUs7K0JBS0wsWUFBWSxTQUFDLGtCQUFrQixFQUFFLENBQUMsUUFBUSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21wb25lbnQsIElucHV0LCBFdmVudEVtaXR0ZXIsIE91dHB1dCwgT25Jbml0LCBIb3N0TGlzdGVuZXJ9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgKiBhcyBtb21lbnRfIGZyb20gJ21vbWVudCc7XHJcbmltcG9ydCAnbW9tZW50L21pbi9sb2NhbGVzJztcclxuaW1wb3J0IHtUcmFuc2xhdGVTZXJ2aWNlfSBmcm9tICdAZW8tc2RrL2NvcmUnO1xyXG5pbXBvcnQge01vbWVudH0gZnJvbSAnbW9tZW50JztcclxuaW1wb3J0IHtEYXRlcGlja2VyU2VydmljZX0gZnJvbSAnLi9zZXJ2aWNlL2RhdGVwaWNrZXIuc2VydmljZSc7XHJcbmltcG9ydCB7VGltZSwgV2Vla3N9IGZyb20gJy4vZGF0ZXBpY2tlci5pbnRlcmZhY2UnO1xyXG5cclxuY29uc3QgbW9tZW50ID0gbW9tZW50XztcclxuXHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2VvLWRhdGVwaWNrZXInLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9kYXRlcGlja2VyLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9kYXRlcGlja2VyLmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgcHJvdmlkZXJzOiBbRGF0ZXBpY2tlclNlcnZpY2VdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBEYXRlcGlja2VyQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuXHJcbiAgbW9udGhzU2hvcnQ6IHN0cmluZ1tdO1xyXG4gIHdlZWtkYXlzU2hvcnQ6IHN0cmluZ1tdO1xyXG4gIG1heFllYXIgPSA5OTk5O1xyXG4gIG1pblllYXIgPSAwO1xyXG5cclxuICAvLyBjdXJyZW50IG1vbnRoIHNob3duIGluIHRoZSBwaWNrZXJcclxuICBzZXQgbW9udGgobW9udGg6IE1vbWVudCkge1xyXG4gICAgdGhpcy5kYXRlcGlja2VyU2VydmljZS5tb250aCA9IG1vbnRoO1xyXG4gIH07XHJcblxyXG4gIGdldCBtb250aCgpIHtcclxuICAgIHJldHVybiB0aGlzLmRhdGVwaWNrZXJTZXJ2aWNlLm1vbnRoO1xyXG4gIH1cclxuXHJcbiAgc2V0IHdlZWtzKHdlZWtzOiBXZWVrc1tdKSB7XHJcbiAgICB0aGlzLmRhdGVwaWNrZXJTZXJ2aWNlLndlZWtzID0gd2Vla3M7XHJcbiAgfTtcclxuXHJcbiAgZ2V0IHdlZWtzKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuZGF0ZXBpY2tlclNlcnZpY2Uud2Vla3M7XHJcbiAgfVxyXG5cclxuLy8gbmdNb2RlbCBmb3IgdGhlIHllYXIgaW5wdXRcclxuICBzZXQgeWVhcih5ZWFyOiBudW1iZXIpIHtcclxuICAgIHRoaXMuZGF0ZXBpY2tlclNlcnZpY2UueWVhciA9IHllYXI7XHJcbiAgfTtcclxuXHJcbiAgZ2V0IHllYXIoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5kYXRlcGlja2VyU2VydmljZS55ZWFyO1xyXG4gIH1cclxuXHJcbiAgLy8gc2VsZWN0ZWQgZGF0ZVxyXG4gIHNlbGVjdGVkOiBNb21lbnQ7XHJcblxyXG4gIC8vIG5nTW9kZWwgZm9yIHRoZSB5ZWFyIGlucHV0XHJcblxyXG4gIC8vIG5nTW9kZWwgZm9yIHRoZSB0aW1lIGlucHV0c1xyXG4gIHRpbWUgPSB7XHJcbiAgICBoOiAwLFxyXG4gICAgbTogMFxyXG4gIH07XHJcblxyXG4gIC8vIHdlZWtzIG9mIHRoZSBjdXJyZW50IG1vbnRoXHJcblxyXG4gIG1vbnRoSW5mbyA9IHtcclxuICAgIG1vbnRoOiBudWxsLFxyXG4gICAgeWVhcjogbnVsbFxyXG4gIH07XHJcblxyXG4gIC8vIElTTyBzdHJpbmcgb2YgdGhlIGRhdGUgc2V0IGJ5IHRoZSBjb21wb25lbnRzIGRhdGUgcHJvcGVydHkgKHVzZWQgZm9yIGNvbXBhcmluZyBlcXVhbGl0eSlcclxuICBwcml2YXRlIF9kYXRlOiBzdHJpbmc7XHJcbiAgcHJpdmF0ZSBpbml0aWFsaXplZDogYm9vbGVhbjtcclxuICAvLyBlbWl0dGVkIHdoZW4gYSBuZXcgdmFsdWUgaXMgc2V0IGJ5IHRoZSBwaWNrZXJcclxuICBAT3V0cHV0KCkgb25EYXRlQ2hhbmdlZCA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuICBAT3V0cHV0KCkgb25DYW5jZWxlZCA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuXHJcbiAgQElucHV0KCkgd2l0aFRpbWU6IGJvb2xlYW47XHJcbiAgQElucHV0KCkgd2l0aEFtUG06IGJvb2xlYW47XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgc2V0IG9ubHlGdXR1cmVEYXRlcyhlbmFibGVkOiBib29sZWFuKSB7XHJcbiAgICB0aGlzLmRhdGVwaWNrZXJTZXJ2aWNlLmZ1dHVyZU9ubHkgPSBlbmFibGVkID8gZW5hYmxlZCA6IGZhbHNlO1xyXG4gIH1cclxuXHJcbiAgZ2V0IGZ1dHVyZU9ubHkoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5kYXRlcGlja2VyU2VydmljZS5mdXR1cmVPbmx5O1xyXG4gIH1cclxuXHJcbiAgQElucHV0KCdkYXRlJylcclxuICBzZXQgZGF0ZShkYXRlOiBhbnkpIHtcclxuICAgIGxldCBtSXNvID0gbW9tZW50KGRhdGUpLnRvSVNPU3RyaW5nKCk7XHJcbiAgICBpZiAodGhpcy5fZGF0ZSAhPT0gbUlzbykge1xyXG4gICAgICB0aGlzLl9kYXRlID0gbUlzbztcclxuICAgICAgaWYgKHRoaXMuaW5pdGlhbGl6ZWQpIHtcclxuICAgICAgICB0aGlzLnNldENhbGVuZGVyRGF0ZShkYXRlLCB0cnVlKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgQElucHV0KClcclxuICBzZXQgdXNlRGF0YWJhc2VNaW5pbXVtVGltZShlbmFibGVkOiBib29sZWFuKSB7XHJcbiAgICB0aGlzLm1pblllYXIgPSBlbmFibGVkID8gMTc1MyA6IDA7XHJcbiAgfVxyXG5cclxuICBASG9zdExpc3RlbmVyKCdkb2N1bWVudDprZXlkb3duJywgWyckZXZlbnQnXSkgb25LZXlkb3duSGFuZGxlcihldmVudDogS2V5Ym9hcmRFdmVudCkge1xyXG4gICAgbGV0IG5ld0RhdGU7XHJcbiAgICBpZiAoZXZlbnQua2V5Q29kZSA9PT0gMTMpIHtcclxuICAgICAgdGhpcy5zZWxlY3RWYWx1ZSgpO1xyXG4gICAgfSBlbHNlIGlmIChldmVudC5rZXlDb2RlID09PSAyNykge1xyXG4gICAgICB0aGlzLmNhbmNlbCgpO1xyXG4gICAgfSBlbHNlIGlmIChldmVudC5rZXlDb2RlID09PSAzNykge1xyXG4gICAgICBuZXdEYXRlID0gbW9tZW50KHRoaXMuc2VsZWN0ZWQpLmFkZCgtMSwgJ2QnKTtcclxuICAgIH0gZWxzZSBpZiAoZXZlbnQua2V5Q29kZSA9PT0gMzgpIHtcclxuICAgICAgbmV3RGF0ZSA9IG1vbWVudCh0aGlzLnNlbGVjdGVkKS5hZGQoLTcsICdkJyk7XHJcbiAgICB9IGVsc2UgaWYgKGV2ZW50LmtleUNvZGUgPT09IDM5KSB7XHJcbiAgICAgIG5ld0RhdGUgPSBtb21lbnQodGhpcy5zZWxlY3RlZCkuYWRkKDEsICdkJyk7XHJcbiAgICB9IGVsc2UgaWYgKGV2ZW50LmtleUNvZGUgPT09IDQwKSB7XHJcbiAgICAgIG5ld0RhdGUgPSBtb21lbnQodGhpcy5zZWxlY3RlZCkuYWRkKDcsICdkJyk7XHJcbiAgICB9XHJcbiAgICBpZiAobmV3RGF0ZSAmJiAhdGhpcy5kYXRlcGlja2VyU2VydmljZS5pc0Rpc2FibGVkRGF0ZShuZXdEYXRlKSkge1xyXG4gICAgICB0aGlzLnNlbGVjdChuZXdEYXRlKTtcclxuICAgIH1cclxuICAgIGlmIChldmVudC5rZXlDb2RlID09PSAxMyB8fCBldmVudC5rZXlDb2RlID09PSAyNykge1xyXG4gICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xyXG4gICAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIG9uSW5wdXRLZXlkb3duKGV2ZW50OiBLZXlib2FyZEV2ZW50KSB7XHJcbiAgICBpZiAoZXZlbnQua2V5Q29kZSAhPT0gMjcgJiYgZXZlbnQua2V5Q29kZSAhPT0gMTMpIHtcclxuICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBjb25zdHJ1Y3Rvcih0cmFuc2xhdGU6IFRyYW5zbGF0ZVNlcnZpY2UsIHByaXZhdGUgZGF0ZXBpY2tlclNlcnZpY2U6IERhdGVwaWNrZXJTZXJ2aWNlKSB7XHJcbiAgICBjb25zdCBsb2NhbGUgPSAodHJhbnNsYXRlLmN1cnJlbnRMYW5nIHx8IHRyYW5zbGF0ZS5kZWZhdWx0TGFuZykucmVwbGFjZSgnemgnLCAnemgtY24nKTsgLy8gQlVHOiBtb21lbnQgZG9lcyBub3Qgc3VwcG9ydCAnemgnXHJcbiAgICBtb21lbnQubG9jYWxlKGxvY2FsZSk7XHJcbiAgICBsZXQgc3RhcnREYXkgPSBtb21lbnQoKS5zdGFydE9mKCd3ZWVrJykuZGF5KCk7XHJcbiAgICB0aGlzLm1vbnRoc1Nob3J0ID0gbW9tZW50Lm1vbnRoc1Nob3J0KCk7XHJcbiAgICB0aGlzLndlZWtkYXlzU2hvcnQgPSBtb21lbnQud2Vla2RheXNTaG9ydCgpLnNsaWNlKHN0YXJ0RGF5KS5jb25jYXQobW9tZW50LndlZWtkYXlzU2hvcnQoKS5zbGljZSgwLCBzdGFydERheSkpO1xyXG4gIH1cclxuXHJcbiAgc2VsZWN0VmFsdWUoKSB7XHJcbiAgICB0aGlzLm9uRGF0ZUNoYW5nZWQuZW1pdCh7XHJcbiAgICAgIGRhdGU6IHRoaXMuc2VsZWN0ZWQudG9EYXRlKClcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgY2FuY2VsKCkge1xyXG4gICAgdGhpcy5vbkNhbmNlbGVkLmVtaXQoe30pO1xyXG4gIH1cclxuXHJcbiAgc2VsZWN0KGRhdGUpIHtcclxuICAgIHRoaXMuc2VsZWN0ZWQgPSBkYXRlO1xyXG4gICAgaWYgKHRoaXMud2l0aFRpbWUpIHtcclxuICAgICAgdGhpcy5zZWxlY3RlZC5ob3VyKHRoaXMudGltZS5oKTtcclxuICAgICAgdGhpcy5zZWxlY3RlZC5taW51dGUodGhpcy50aW1lLm0pO1xyXG4gICAgfVxyXG4gICAgaWYgKHRoaXMuc2VsZWN0ZWQubW9udGgoKSAhPT0gdGhpcy5tb250aC5tb250aCgpKSB7XHJcbiAgICAgIHRoaXMuc2V0TW9udGgodGhpcy5zZWxlY3RlZC5tb250aCgpKTtcclxuICAgIH1cclxuICAgIGlmICh0aGlzLnNlbGVjdGVkLnllYXIoKSAhPT0gdGhpcy55ZWFyKSB7XHJcbiAgICAgIHRoaXMuc2V0WWVhcih0aGlzLnNlbGVjdGVkLnllYXIoKSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBmb2N1c1NlbGVjdGlvbigpIHtcclxuICAgIHRoaXMubW9udGgubW9udGgodGhpcy5zZWxlY3RlZC5tb250aCgpKTtcclxuICAgIHRoaXMubW9udGgueWVhcih0aGlzLnNlbGVjdGVkLnllYXIoKSk7XHJcbiAgICB0aGlzLmRhdGVwaWNrZXJTZXJ2aWNlLmJ1aWxkTW9udGgoKTtcclxuICAgIHRoaXMuY3JlYXRlSW5mbygpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogU2V0IHRoZSBwaWNrZXJzIHNlbGVjdGVkIGRhdGVcclxuICAgKlxyXG4gICAqIEBwYXJhbSBEYXRlIHwgc3RyaW5nIGRhdGVcclxuICAgKiBAcGFyYW0gYm9vbGVhbiBzZWxlY3QgLSBpZiBzZXQgdG8gdHJ1ZSB0aGUgZ2l2ZW4gZGF5IHdpbGwgYmUgc2V0IHNlbGVjdGVkXHJcbiAgICovXHJcbiAgc2V0Q2FsZW5kZXJEYXRlKGRhdGU6IERhdGUgfCBzdHJpbmcsIHNlbGVjdD86IGJvb2xlYW4pIHtcclxuXHJcbiAgICBsZXQgbSA9IG1vbWVudChkYXRlKTtcclxuXHJcbiAgICBpZiAobS5pc1ZhbGlkKCkpIHtcclxuICAgICAgdGhpcy5tb250aCA9IG07XHJcbiAgICAgIC8vIGxldCBzdGFydCA9IG1vbWVudDtcclxuICAgICAgLy8gc3RhcnQuZGF0ZSgxKTtcclxuICAgICAgLy8gdGhpcy5yZW1vdmVUaW1lKHN0YXJ0LmRheSgwKSk7XHJcbiAgICAgIGlmIChzZWxlY3QpIHtcclxuICAgICAgICB0aGlzLnNlbGVjdGVkID0gbW9tZW50KGRhdGUpO1xyXG4gICAgICB9XHJcbiAgICAgIGlmICh0aGlzLndpdGhUaW1lKSB7XHJcbiAgICAgICAgdGhpcy50aW1lID0ge1xyXG4gICAgICAgICAgaDogbS5ob3VyKCksXHJcbiAgICAgICAgICBtOiBtLm1pbnV0ZSgpXHJcbiAgICAgICAgfTtcclxuICAgICAgfVxyXG4gICAgICB0aGlzLmRhdGVwaWNrZXJTZXJ2aWNlLmJ1aWxkTW9udGgoKTtcclxuICAgICAgdGhpcy5jcmVhdGVJbmZvKCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgaW5jcmVtZW50KHllYXI6IG51bWJlcikge1xyXG4gICAgdGhpcy5zZXRZZWFyKHllYXIgKyAxKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBkZWNyZW1lbnQoeWVhcjogbnVtYmVyKSB7XHJcbiAgICB0aGlzLnNldFllYXIoeWVhciAtIDEpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHNldFllYXIoeWVhcjogbnVtYmVyKSB7XHJcbiAgICB0aGlzLnllYXIgPSB0aGlzLmRhdGVwaWNrZXJTZXJ2aWNlLnNldFllYXIoeWVhciwgdGhpcy5taW5ZZWFyLCB0aGlzLm1heFllYXIpO1xyXG4gICAgdGhpcy5tb250aC55ZWFyKHRoaXMueWVhcik7XHJcbiAgICB0aGlzLmRhdGVwaWNrZXJTZXJ2aWNlLmJ1aWxkTW9udGgoKTtcclxuICAgIHRoaXMuY3JlYXRlSW5mbygpO1xyXG4gICAgdGhpcy5zZWxlY3RlZC55ZWFyKHRoaXMueWVhcik7XHJcbiAgfTtcclxuXHJcbiAgcHVibGljIHRpbWVUb1N0cmluZyh0aW1lOiBudW1iZXIpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuICgnMCcgKyBNYXRoLmFicyh0aW1lKSkuc2xpY2UoLTIpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHNldFRpbWUodGltZTogVGltZSkge1xyXG4gICAgdGhpcy50aW1lID0gdGhpcy5kYXRlcGlja2VyU2VydmljZS5zZXRUaW1lKHRpbWUpO1xyXG4gICAgdGhpcy5zZWxlY3RlZC5ob3VyKHRoaXMudGltZS5oKTtcclxuICAgIHRoaXMuc2VsZWN0ZWQubWludXRlKHRoaXMudGltZS5tKTtcclxuICB9O1xyXG5cclxuICBwdWJsaWMgc2V0TW9udGgoaW5kZXg6IG51bWJlcikge1xyXG4gICAgdGhpcy5tb250aC5tb250aChpbmRleCk7XHJcbiAgICB0aGlzLmRhdGVwaWNrZXJTZXJ2aWNlLmJ1aWxkTW9udGgoKTtcclxuICAgIHRoaXMuY3JlYXRlSW5mbygpO1xyXG4gIH07XHJcblxyXG4gIHB1YmxpYyBpc1NlbGVjdGVkRGF5KGRheTogTW9tZW50KSB7XHJcbiAgICByZXR1cm4gZGF5LmlzU2FtZSh0aGlzLnNlbGVjdGVkLCAnZGF5Jyk7XHJcbiAgfVxyXG5cclxuICBpblJhbmdlKHgsIG1pbiA9IDAsIG1heCA9IDExKSB7XHJcbiAgICByZXR1cm4gKCh4IC0gbWluKSAqICh4IC0gbWF4KSA8PSAwKTtcclxuICB9XHJcblxyXG4gIGNyZWF0ZUluZm8oKSB7XHJcbiAgICB0aGlzLm1vbnRoSW5mbyA9IHRoaXMuZGF0ZXBpY2tlclNlcnZpY2UuY3JlYXRlSW5mbygpO1xyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKSB7XHJcbiAgICBpZiAoIXRoaXMuX2RhdGUpIHtcclxuICAgICAgdGhpcy5fZGF0ZSA9IHRoaXMud2l0aFRpbWUgPyBtb21lbnQoKS50b0lTT1N0cmluZygpIDogbW9tZW50KCkuc3RhcnRPZignZGF5JykudG9JU09TdHJpbmcoKTtcclxuICAgIH1cclxuICAgIHRoaXMuc2V0Q2FsZW5kZXJEYXRlKHRoaXMuX2RhdGUsIHRydWUpO1xyXG4gICAgdGhpcy5pbml0aWFsaXplZCA9IHRydWU7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgdHJhY2tCeUZuKGluZGV4LCBpdGVtKSB7XHJcbiAgICByZXR1cm4gaW5kZXg7XHJcbiAgfVxyXG59XHJcbiJdfQ==