@eo-sdk/client 11.7.0-rc.1 → 11.8.0-rc.2

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 (61) hide show
  1. package/app/eo-client/about-state/about-state.component.d.ts.map +1 -1
  2. package/app/eo-client/dashboard/dashboard.component.d.ts +3 -2
  3. package/app/eo-client/dashboard/dashboard.component.d.ts.map +1 -1
  4. package/app/eo-client/dashboard/widgets/signature-statistics-widget/signature-statistics-setup/signature-statistics-setup.component.d.ts +30 -0
  5. package/app/eo-client/dashboard/widgets/signature-statistics-widget/signature-statistics-setup/signature-statistics-setup.component.d.ts.map +1 -0
  6. package/app/eo-client/dashboard/widgets/signature-statistics-widget/signature-statistics-widget.component.d.ts +23 -0
  7. package/app/eo-client/dashboard/widgets/signature-statistics-widget/signature-statistics-widget.component.d.ts.map +1 -0
  8. package/app/eo-client/dashboard/widgets/signature-statistics-widget/signature-statistics.interface.d.ts +20 -0
  9. package/app/eo-client/dashboard/widgets/signature-statistics-widget/signature-statistics.interface.d.ts.map +1 -0
  10. package/app/eo-client/eo-client.module.d.ts +32 -29
  11. package/app/eo-client/eo-client.module.d.ts.map +1 -1
  12. package/app/eo-client/settings/settings.component.d.ts +15 -16
  13. package/app/eo-client/settings/settings.component.d.ts.map +1 -1
  14. package/app/eo-client/settings/settings.interface.d.ts +25 -0
  15. package/app/eo-client/settings/settings.interface.d.ts.map +1 -0
  16. package/app/eo-framework/app-shell/app-bar/app-search/app-search.component.d.ts +0 -1
  17. package/app/eo-framework/app-shell/app-bar/app-search/app-search.component.d.ts.map +1 -1
  18. package/app/eo-framework/form-elements/datetime-range/datetime-range.component.d.ts.map +1 -1
  19. package/app/eo-framework/form-elements/dynamic-list/dynamic-list.component.d.ts +78 -23
  20. package/app/eo-framework/form-elements/dynamic-list/dynamic-list.component.d.ts.map +1 -1
  21. package/app/eo-framework/form-elements/dynamic-list/dynamic-list.service.d.ts +24 -0
  22. package/app/eo-framework/form-elements/dynamic-list/dynamic-list.service.d.ts.map +1 -0
  23. package/app/eo-framework/grid/filters/dynamic-list-filter.component.d.ts +5 -5
  24. package/app/eo-framework/grid/filters/dynamic-list-filter.component.d.ts.map +1 -1
  25. package/app/eo-framework/inbox-details/inbox-details.component.d.ts.map +1 -1
  26. package/app/eo-framework/object-form/object-form-helper.service.d.ts +31 -11
  27. package/app/eo-framework/object-form/object-form-helper.service.d.ts.map +1 -1
  28. package/app/eo-framework/upload-overlay/upload-overlay.component.d.ts +51 -26
  29. package/app/eo-framework/upload-overlay/upload-overlay.component.d.ts.map +1 -1
  30. package/app/eo-framework-core/agent/agent.service.d.ts +7 -2
  31. package/app/eo-framework-core/agent/agent.service.d.ts.map +1 -1
  32. package/assets/_default/i18n/de.json +21 -3
  33. package/assets/_default/i18n/en.json +21 -3
  34. package/esm2022/app/eo-client/about-state/about-state.component.mjs +3 -3
  35. package/esm2022/app/eo-client/dashboard/dashboard.component.mjs +20 -6
  36. package/esm2022/app/eo-client/dashboard/widgets/signature-statistics-widget/signature-statistics-setup/signature-statistics-setup.component.mjs +114 -0
  37. package/esm2022/app/eo-client/dashboard/widgets/signature-statistics-widget/signature-statistics-widget.component.mjs +80 -0
  38. package/esm2022/app/eo-client/dashboard/widgets/signature-statistics-widget/signature-statistics.interface.mjs +2 -0
  39. package/esm2022/app/eo-client/eo-client.module.mjs +11 -1
  40. package/esm2022/app/eo-client/process-state/process-state.component.mjs +1 -1
  41. package/esm2022/app/eo-client/settings/settings.component.mjs +42 -24
  42. package/esm2022/app/eo-client/settings/settings.interface.mjs +2 -0
  43. package/esm2022/app/eo-framework/actions/actions/open-document-action/open-document-action.mjs +2 -2
  44. package/esm2022/app/eo-framework/app-shell/app-bar/app-search/app-search.component.mjs +7 -9
  45. package/esm2022/app/eo-framework/form-elements/datetime-range/datetime-range.component.mjs +3 -2
  46. package/esm2022/app/eo-framework/form-elements/dynamic-list/dynamic-list.component.mjs +215 -94
  47. package/esm2022/app/eo-framework/form-elements/dynamic-list/dynamic-list.service.mjs +39 -0
  48. package/esm2022/app/eo-framework/form-elements/string/string.component.mjs +2 -2
  49. package/esm2022/app/eo-framework/grid/filters/dynamic-list-filter.component.mjs +16 -22
  50. package/esm2022/app/eo-framework/inbox-details/inbox-details.component.mjs +8 -3
  51. package/esm2022/app/eo-framework/object-details/object-history/object-history.component.mjs +2 -2
  52. package/esm2022/app/eo-framework/object-form/object-form/form-element/form-element.component.mjs +3 -3
  53. package/esm2022/app/eo-framework/object-form/object-form/object-form-group/object-form-group.component.mjs +3 -3
  54. package/esm2022/app/eo-framework/object-form/object-form-edit/object-form-edit.component.mjs +3 -3
  55. package/esm2022/app/eo-framework/object-form/object-form-helper.service.mjs +43 -16
  56. package/esm2022/app/eo-framework/stored-query/stored-query-details/dynamic-property-switch/dynamic-property-switch.component.mjs +4 -3
  57. package/esm2022/app/eo-framework/upload-overlay/upload-overlay.component.mjs +163 -92
  58. package/esm2022/app/eo-framework-core/agent/agent.service.mjs +13 -2
  59. package/fesm2022/eo-sdk-client.mjs +727 -266
  60. package/fesm2022/eo-sdk-client.mjs.map +1 -1
  61. package/package.json +3 -2
@@ -23,6 +23,8 @@ import { TodoWidgetComponent } from './widgets/todowidget/todo-widget.component'
23
23
  import { TodoSetupComponent } from './widgets/todowidget/todo-setup/todo-setup.component';
24
24
  import { PictureWidgetSetupComponent } from './widgets/picture-widget/picture-widget-setup/picture-widget-setup.component';
25
25
  import { PictureWidgetComponent } from './widgets/picture-widget/picture-widget.component';
26
+ import { SignatureStatisticsWidgetComponent } from './widgets/signature-statistics-widget/signature-statistics-widget.component';
27
+ import { SignatureStatisticsSetupComponent } from './widgets/signature-statistics-widget/signature-statistics-setup/signature-statistics-setup.component';
26
28
  import * as i0 from "@angular/core";
27
29
  import * as i1 from "@eo-sdk/core";
28
30
  import * as i2 from "@yuuvis/widget-grid";
@@ -33,7 +35,7 @@ import * as i6 from "../../eo-framework/ui/eo-icon/eo-icon.component";
33
35
  import * as i7 from "../../eo-framework/ui/rtl-aware/rtl-aware.directive";
34
36
  import * as i8 from "@ngx-translate/core";
35
37
  let DashboardComponent = class DashboardComponent {
36
- constructor(userService, widgetGridRegistry, titleService, http, config, storageService, translate, pendingChanges) {
38
+ constructor(userService, widgetGridRegistry, titleService, http, config, storageService, translate, pendingChanges, signingService) {
37
39
  this.userService = userService;
38
40
  this.widgetGridRegistry = widgetGridRegistry;
39
41
  this.titleService = titleService;
@@ -42,6 +44,7 @@ let DashboardComponent = class DashboardComponent {
42
44
  this.storageService = storageService;
43
45
  this.translate = translate;
44
46
  this.pendingChanges = pendingChanges;
47
+ this.signingService = signingService;
45
48
  this.workspaceOptions = {
46
49
  gridConfig: {
47
50
  rows: 30,
@@ -73,6 +76,7 @@ let DashboardComponent = class DashboardComponent {
73
76
  "yuv.widget.hitlist": this.translate.instant('eo.workspace.widget.hitlist.label'),
74
77
  "yuv.widget.countObjects": this.translate.instant('eo.workspace.widget.countObject.label'),
75
78
  "yuv.widget.chart": this.translate.instant('eo.workspace.widget.chart.label'),
79
+ "yuv.widget.signatureStatistics": this.translate.instant('eo.workspace.widget.signature.statistics.title'),
76
80
  });
77
81
  this.widgetGridRegistry.updateWidgetGridLabels({
78
82
  widgetPickerTitle: this.translate.instant('eo.workspace.widgetGrid.widgetPickerTitle'),
@@ -93,7 +97,7 @@ let DashboardComponent = class DashboardComponent {
93
97
  });
94
98
  }
95
99
  registerWidgets() {
96
- this.widgetGridRegistry.registerGridWidgets([
100
+ const widgets = [
97
101
  {
98
102
  name: 'yuv.widget.picture',
99
103
  label: this.translate.instant('eo.workspace.widget.picture.label'),
@@ -153,7 +157,17 @@ let DashboardComponent = class DashboardComponent {
153
157
  setupComponent: ChartsSetupComponent,
154
158
  widgetComponent: ChartsWidgetComponent,
155
159
  }
156
- ].sort(Utils.sortValues('label')));
160
+ ];
161
+ if (this.signingService.canSign() && this.userService.getCurrentUser().roles.find(role => role.name === 'Use signature statistics')) {
162
+ widgets.push({
163
+ name: 'yuv.widget.signatureStatistics',
164
+ label: this.translate.instant('eo.workspace.widget.signature.statistics.title'),
165
+ widgetComponent: SignatureStatisticsWidgetComponent,
166
+ setupComponent: SignatureStatisticsSetupComponent
167
+ });
168
+ }
169
+ widgets.sort(Utils.sortValues('label'));
170
+ this.widgetGridRegistry.registerGridWidgets(widgets);
157
171
  }
158
172
  ngOnInit() {
159
173
  this.loadWorkspacesConfig();
@@ -241,7 +255,7 @@ let DashboardComponent = class DashboardComponent {
241
255
  this.pendingChanges.finishTask(this.pendingTaskID);
242
256
  }
243
257
  }
244
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.4", ngImport: i0, type: DashboardComponent, deps: [{ token: i1.UserService }, { token: i2.WidgetGridRegistry }, { token: i3.PageTitleService }, { token: i4.HttpClient }, { token: i1.Config }, { token: i1.LocalStorageService }, { token: i1.TranslateService }, { token: i3.PendingChangesService }], target: i0.ɵɵFactoryTarget.Component }); }
258
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.4", ngImport: i0, type: DashboardComponent, deps: [{ token: i1.UserService }, { token: i2.WidgetGridRegistry }, { token: i3.PageTitleService }, { token: i4.HttpClient }, { token: i1.Config }, { token: i1.LocalStorageService }, { token: i1.TranslateService }, { token: i3.PendingChangesService }, { token: i1.SigningService }], target: i0.ɵɵFactoryTarget.Component }); }
245
259
  static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.0.4", type: DashboardComponent, selector: "eo-dashboard", ngImport: i0, template: "<ng-container>\n <div class=\"fade\"></div>\n <div class=\"dashboard\" [style.background-image]=\"backgroundImage\">\n <div class=\"footerButton\" eoRtlAware=\"full\">\n <eo-icon id=\"dashboardButton\" [iconSrc]=\"toolbarIconSrc\" [iconTitle]=\"toolbarIconTooltip | translate\"></eo-icon>\n </div>\n <yuv-widget-grid-workspaces *ngIf=\"workspaceConfig\"\n [workspaceLabelMaxLength]=\"50\"\n [workspaceConfig]=\"workspaceConfig\"\n (configChange)=\"onWorkspacesConfigChange($event)\" (editModeChange)=\"onWorkspaceEditMode($event)\" [options]=\"workspaceOptions\">\n </yuv-widget-grid-workspaces>\n </div>\n</ng-container>\n", styles: [".fade{position:absolute;opacity:.3;left:0;right:0;top:0;z-index:1;height:500px;background:linear-gradient(to bottom,rgba(var(--color-black-rgb),1) 0,transparent 100%)}.dashboard{position:absolute;inset:0;background-size:cover;background-position:center center}.footerButton{position:absolute;z-index:1000;bottom:10px;cursor:pointer;right:5px}.footerButton.rtl{left:5px;right:unset}.footerButton:hover{color:var(--list-item-hover-background)}.footerButton:hover eo-icon{background-color:var(--list-item-hover-background)}.footerButton #dashboardButton{color:var(--text-color-caption)}::ng-deep .cds--cc--title p.title,::ng-deep .yuv-widget-headline{font-size:var(--font-body);font-weight:700;color:var(--text-color-caption);font-style:italic;margin:0;padding:0}::ng-deep svg{width:24px;height:24px}::ng-deep .legend-item svg{width:11px;height:11px}::ng-deep yuv-widget-grid{top:60px;height:92%!important;--color-admin-primary: var(--color-primary)}::ng-deep yuv-widget-grid.editMode gridster-item{outline:2px dotted var(--color-admin-primary);border-radius:2px}::ng-deep yuv-widget-grid-workspaces{background-size:cover;background-position:center center;--wgw-background: transparent !important}::ng-deep yuv-widget-grid-workspaces>.confirm{align-items:center!important;justify-content:center!important}::ng-deep yuv-widget-grid-workspaces button.fab{border-radius:2.5em!important}::ng-deep yuv-widget-grid-workspaces>.toolbar{padding-inline-end:36px!important;background-color:#d3d3d380!important}::ng-deep yuv-widget-grid-workspaces>.toolbar>.workspace-edit input{position:relative;left:6px;width:230px}::ng-deep yuv-widget-grid-workspaces yuv-picture-widget{box-sizing:border-box}::ng-deep gridster{background:none!important}::ng-deep gridster .yuv-widget{border:1px solid var(--panel-divider-color)}::ng-deep gridster .gridster-row,::ng-deep gridster .gridster-column{border-color:#0003}.dark ::ng-deep gridster .gridster-row,.dark ::ng-deep gridster .gridster-column{border-color:var(--panel-divider-color)}\n"], dependencies: [{ kind: "directive", type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i6.EoIconComponent, selector: "eo-icon", inputs: ["objectType", "iconId", "iconSrc", "badge", "iconTitle"] }, { kind: "directive", type: i7.RtlAwareDirective, selector: "[eoRtlAware]", inputs: ["eoRtlAware"] }, { kind: "component", type: i2.WidgetGridWorkspacesComponent, selector: "yuv-widget-grid-workspaces", inputs: ["options", "workspaceConfig", "preventAdd", "workspaceLabelMaxLength", "buckets"], outputs: ["configChange", "gridItemEvent", "editModeChange"] }, { kind: "pipe", type: i8.TranslatePipe, name: "translate" }], animations: [
246
260
  listAnimation
247
261
  ] }); }
@@ -255,5 +269,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.4", ngImpor
255
269
  args: [{ selector: 'eo-dashboard', animations: [
256
270
  listAnimation
257
271
  ], template: "<ng-container>\n <div class=\"fade\"></div>\n <div class=\"dashboard\" [style.background-image]=\"backgroundImage\">\n <div class=\"footerButton\" eoRtlAware=\"full\">\n <eo-icon id=\"dashboardButton\" [iconSrc]=\"toolbarIconSrc\" [iconTitle]=\"toolbarIconTooltip | translate\"></eo-icon>\n </div>\n <yuv-widget-grid-workspaces *ngIf=\"workspaceConfig\"\n [workspaceLabelMaxLength]=\"50\"\n [workspaceConfig]=\"workspaceConfig\"\n (configChange)=\"onWorkspacesConfigChange($event)\" (editModeChange)=\"onWorkspaceEditMode($event)\" [options]=\"workspaceOptions\">\n </yuv-widget-grid-workspaces>\n </div>\n</ng-container>\n", styles: [".fade{position:absolute;opacity:.3;left:0;right:0;top:0;z-index:1;height:500px;background:linear-gradient(to bottom,rgba(var(--color-black-rgb),1) 0,transparent 100%)}.dashboard{position:absolute;inset:0;background-size:cover;background-position:center center}.footerButton{position:absolute;z-index:1000;bottom:10px;cursor:pointer;right:5px}.footerButton.rtl{left:5px;right:unset}.footerButton:hover{color:var(--list-item-hover-background)}.footerButton:hover eo-icon{background-color:var(--list-item-hover-background)}.footerButton #dashboardButton{color:var(--text-color-caption)}::ng-deep .cds--cc--title p.title,::ng-deep .yuv-widget-headline{font-size:var(--font-body);font-weight:700;color:var(--text-color-caption);font-style:italic;margin:0;padding:0}::ng-deep svg{width:24px;height:24px}::ng-deep .legend-item svg{width:11px;height:11px}::ng-deep yuv-widget-grid{top:60px;height:92%!important;--color-admin-primary: var(--color-primary)}::ng-deep yuv-widget-grid.editMode gridster-item{outline:2px dotted var(--color-admin-primary);border-radius:2px}::ng-deep yuv-widget-grid-workspaces{background-size:cover;background-position:center center;--wgw-background: transparent !important}::ng-deep yuv-widget-grid-workspaces>.confirm{align-items:center!important;justify-content:center!important}::ng-deep yuv-widget-grid-workspaces button.fab{border-radius:2.5em!important}::ng-deep yuv-widget-grid-workspaces>.toolbar{padding-inline-end:36px!important;background-color:#d3d3d380!important}::ng-deep yuv-widget-grid-workspaces>.toolbar>.workspace-edit input{position:relative;left:6px;width:230px}::ng-deep yuv-widget-grid-workspaces yuv-picture-widget{box-sizing:border-box}::ng-deep gridster{background:none!important}::ng-deep gridster .yuv-widget{border:1px solid var(--panel-divider-color)}::ng-deep gridster .gridster-row,::ng-deep gridster .gridster-column{border-color:#0003}.dark ::ng-deep gridster .gridster-row,.dark ::ng-deep gridster .gridster-column{border-color:var(--panel-divider-color)}\n"] }]
258
- }], ctorParameters: () => [{ type: i1.UserService }, { type: i2.WidgetGridRegistry }, { type: i3.PageTitleService }, { type: i4.HttpClient }, { type: i1.Config }, { type: i1.LocalStorageService }, { type: i1.TranslateService }, { type: i3.PendingChangesService }] });
259
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGFzaGJvYXJkLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvZW8tY2xpZW50L2Rhc2hib2FyZC9kYXNoYm9hcmQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9lby1jbGllbnQvZGFzaGJvYXJkL2Rhc2hib2FyZC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQ0EsT0FBTyxFQUFDLFNBQVMsRUFBUyxNQUFNLGVBQWUsQ0FBQztBQUNoRCxPQUFPLEVBS0wsS0FBSyxFQUNOLE1BQU0sY0FBYyxDQUFDO0FBTXRCLE9BQU8sRUFBQyxTQUFTLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUV6QyxPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0sb0JBQW9CLENBQUM7QUFDakQsT0FBTyxFQUFDLHFCQUFxQixFQUFDLE1BQU0saURBQWlELENBQUM7QUFDdEYsT0FBTyxFQUFDLG9CQUFvQixFQUFDLE1BQU0sNkRBQTZELENBQUM7QUFDakcsT0FBTyxFQUFDLDZCQUE2QixFQUFDLE1BQU0sZ0VBQWdFLENBQUM7QUFDN0csT0FBTyxFQUFDLHFCQUFxQixFQUFDLE1BQU0saURBQWlELENBQUM7QUFDdEYsT0FBTyxFQUFDLHlCQUF5QixFQUFDLE1BQU0sMkRBQTJELENBQUM7QUFDcEcsT0FBTyxFQUFDLHdCQUF3QixFQUFDLE1BQU0sNEVBQTRFLENBQUM7QUFDcEgsT0FBTyxFQUFDLHdCQUF3QixFQUFDLE1BQU0seURBQXlELENBQUM7QUFDakcsT0FBTyxFQUFDLHVCQUF1QixFQUFDLE1BQU0seUVBQXlFLENBQUM7QUFDaEgsT0FBTyxFQUFDLFlBQVksRUFBRSxjQUFjLEVBQUMsTUFBTSx1QkFBdUIsQ0FBQztBQUNuRSxPQUFPLEVBQUMscUJBQXFCLEVBQUMsTUFBTSxnRUFBZ0UsQ0FBQztBQUNyRyxPQUFPLEVBQUMsc0JBQXNCLEVBQUMs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LFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7WUFDaEYsQ0FBQztRQUNILENBQUM7SUFDSCxDQUFDO0lBRU8sb0JBQW9CLENBQUMsQ0FBNEI7UUFDdkQsK0dBQStHO1FBQy9HLElBQUksQ0FBQyxFQUFFLENBQUM7WUFDTixJQUFJLENBQUMsV0FBVyxDQUFDLG1CQUFtQixDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxJQUFJLEVBQUUsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLEVBQUUsQ0FBQztRQUNySixDQUFDO0lBQ0gsQ0FBQztJQUVELG1CQUFtQixDQUFDLE1BQWU7UUFDakMsSUFBSSxNQUFNLEVBQUUsQ0FBQztZQUNYLElBQUksQ0FBQyxhQUFhLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxTQUFTLEVBQUUsQ0FBQztRQUN2RCxDQUFDO2FBQU0sQ0FBQztZQUNOLElBQUksQ0FBQyxjQUFjLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQTtRQUNwRCxDQUFDO0lBQ0gsQ0FBQzs4R0FqT1Usa0JBQWtCO2tHQUFsQixrQkFBa0Isb0RDaEQvQixncEJBYUEseXBGRCtCYztZQUNWLGFBQWE7U0FDZDs7QUFFVSxrQkFBa0I7SUFUOUIsWUFBWSxFQUFFO0dBU0Ysa0JBQWtCLENBa085Qjs7MkZBbE9ZLGtCQUFrQjtrQkFSOUIsU0FBUzsrQkFDRSxjQUFjLGNBR1o7d0JBQ1YsYUFBYTtxQkFDZCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEh0dHBDbGllbnQgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQge0NvbXBvbmVudCwgT25Jbml0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gIENvbmZpZyxcbiAgTG9jYWxTdG9yYWdlU2VydmljZSxcbiAgVHJhbnNsYXRlU2VydmljZSxcbiAgVXNlclNlcnZpY2UsXG4gIFV0aWxzXG59IGZyb20gJ0Blby1zZGsvY29yZSc7XG5pbXBvcnQge1xuICBXaWRnZXRHcmlkUmVnaXN0cnksXG4gIFdpZGdldEdyaWRXb3Jrc3BhY2VDb25maWcsXG4gIFdpZGdldEdyaWRXb3Jrc3BhY2VPcHRpb25zXG59IGZyb20gJ0B5dXV2aXMvd2lkZ2V0LWdyaWQnO1xuaW1wb3J0IHtzd2l0Y2hNYXB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7UGFnZVRpdGxlU2VydmljZSwgUGVuZGluZ0NoYW5nZXNTZXJ2aWNlfSBmcm9tICcuLi8uLi9lby1mcmFtZXdvcmstY29yZSc7XG5pbXBvcnQge2xpc3RBbmltYXRpb259IGZyb20gJy4uLy4uL2VvLWZyYW1ld29yayc7XG5pbXBvcnQge1NlYXJjaFdpZGdldENvbXBvbmVudH0gZnJvbSAnLi93aWRnZXRzL3NlYXJjaC13aWRnZXQvc2VhcmNoLXdpZGdldC5jb21wb25lbnQnO1xuaW1wb3J0IHtJZnJhbWVTZXR1cENvbXBvbmVudH0gZnJvbSAnLi93aWRnZXRzL2lmcmFtZS13aWRnZXQvaWZyYW1lLXNldHVwL2lmcmFtZS1zZXR1cC5jb21wb25lbnQnO1xuaW1wb3J0IHtMYXN0RWRpdGVkQW5kQ3JlYXRlZENvbXBvbmVudH0gZnJvbSAnLi93aWRnZXRzL2xhc3QtZWRpdGVkLXdpZGdldC9sYXN0LWVkaXRlZC1hbmQtY3JlYXRlZC5jb21wb25lbnQnO1xuaW1wb3J0IHtJZnJhbWVXaWRnZXRDb21wb25lbnR9IGZyb20gJy4vd2lkZ2V0cy9pZnJhbWUtd2lkZ2V0L2lmcmFtZS13aWRnZXQuY29tcG9uZW50JztcbmltcG9ydCB7SW5mb0ludHJheVdpZGdldENvbXBvbmVudH0gZnJvbSAnLi93aWRnZXRzL2luZm8taW50cmF5LXdpZGdldC9pbmZvLWludHJheS13aWRnZXQuY29tcG9uZW50JztcbmltcG9ydCB7SW5mb0ludHJheVNldHVwQ29tcG9uZW50fSBmcm9tICcuL3dpZGdldHMvaW5mby1pbnRyYXktd2lkZ2V0L2luZm8taW50cmF5LXNldHVwL2luZm8taW50cmF5LXNldHVwLmNvbXBvbmVudCc7XG5pbXBvcnQge0luZm9JbmJveFdpZGdldENvbXBvbmVudH0gZnJvbSAnLi93aWRnZXRzL2luZm8taW5ib3gtd2lkZ2V0L2luZm8taW5ib3gtd2lkZ2V0LmNvbXBvbmVudCc7XG5pbXBvcnQge0luZm9JbmJveFNldHVwQ29tcG9uZW50fSBmcm9tICcuL3dpZGdldHMvaW5mby1pbmJveC13aWRnZXQvaW5mby1pbmJveC1zZXR1cC9pbmZvLWluYm94LXNldHVwLmNvbXBvbmVudCc7XG5pbXBvcnQge1VudGlsRGVzdHJveSwgdW50aWxEZXN0cm95ZWR9IGZyb20gJ0BuZ25lYXQvdW50aWwtZGVzdHJveSc7XG5pbXBvcnQge0hpdGxpc3RTZXR1cENvbXBvbmVudH0gZnJvbSAnLi93aWRnZXRzL2hpdGxpc3Qtd2lkZ2V0L2hpdGxpc3Qtc2V0dXAvaGl0bGlzdC1zZXR1cC5jb21wb25lbnQnO1xuaW1wb3J0IHtIaXRsaXN0V2lkZ2V0Q29tcG9uZW50fSBmcm9tICcuL3dpZGdldHMvaGl0bGlzdC13aWRnZXQvaGl0bGlzdC13aWRnZXQuY29tcG9uZW50JztcbmltcG9ydCB7QWZ0ZXJWaWV3SW5pdH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0NoYXJ0c1dpZGdldENvbXBvbmVudH0gZnJvbSAnLi93aWRnZXRzL2NoYXJ0cy13aWRnZXQvY2hhcnRzLXdpZGdldC5jb21wb25lbnQnO1xuaW1wb3J0IHtDaGFydHNTZXR1cENvbXBvbmVudH0gZnJvbSAnLi93aWRnZXRzL2NoYXJ0cy13aWRnZXQvY2hhcnRzLXNldHVwL2NoYXJ0cy1zZXR1cC5jb21wb25lbnQnO1xuaW1wb3J0IHtDb3VudE9iamVjdHNXaWRnZXRDb21wb25lbnR9IGZyb20gJy4vd2lkZ2V0cy9jb3VudC1vYmplY3RzLXdpZGdldC9jb3VudC1vYmplY3RzLXdpZGdldC5jb21wb25lbnQnO1xuaW1wb3J0IHtDb3VudE9iamVjdHNTZXR1cENvbXBvbmVudH0gZnJvbSAnLi93aWRnZXRzL2NvdW50LW9iamVjdHMtd2lkZ2V0L2NvdW50LW9iamVjdHMtc2V0dXAvY291bnQtb2JqZWN0cy1zZXR1cC5jb21wb25lbnQnO1xuaW1wb3J0IHtMYXN0RWRpdGVkQW5kQ3JlYXRlZFNldHVwQ29tcG9uZW50fSBmcm9tICcuL3dpZGdldHMvbGFzdC1lZGl0ZWQtd2lkZ2V0L2xhc3QtZWRpdGVkLWFuZC1jcmVhdGVkLXNldHVwL2xhc3QtZWRpdGVkLWFuZC1jcmVhdGVkLXNldHVwLmNvbXBvbmVudCc7XG5pbXBvcnQge1RvZG9XaWRnZXRDb21wb25lbnR9IGZyb20gJy4vd2lkZ2V0cy90b2Rvd2lkZ2V0L3RvZG8td2lkZ2V0LmNvbXBvbmVudCc7XG5pbXBvcnQge1RvZG9TZXR1cENvbXBvbmVudH0gZnJvbSAnLi93aWRnZXRzL3RvZG93aWRnZXQvdG9kby1zZXR1cC90b2RvLXNldHVwLmNvbXBvbmVudCc7XG5pbXBvcnQge1BpY3R1cmVXaWRnZXRTZXR1cENvbXBvbmVudH0gZnJvbSAnLi93aWRnZXRzL3BpY3R1cmUtd2lkZ2V0L3BpY3R1cmUtd2lkZ2V0LXNldHVwL3BpY3R1cmUtd2lkZ2V0LXNldHVwLmNvbXBvbmVudCc7XG5pbXBvcnQge1BpY3R1cmVXaWRnZXRDb21wb25lbnR9IGZyb20gJy4vd2lkZ2V0cy9waWN0dXJlLXdpZGdldC9waWN0dXJlLXdpZGdldC5jb21wb25lbnQnO1xuXG5AVW50aWxEZXN0cm95KClcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2VvLWRhc2hib2FyZCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9kYXNoYm9hcmQuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9kYXNoYm9hcmQuY29tcG9uZW50LnNjc3MnXSxcbiAgYW5pbWF0aW9uczogW1xuICAgIGxpc3RBbmltYXRpb25cbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBEYXNoYm9hcmRDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIEFmdGVyVmlld0luaXQge1xuXG4gIHdvcmtzcGFjZUNvbmZpZzogV2lkZ2V0R3JpZFdvcmtzcGFjZUNvbmZpZyB8IHVuZGVmaW5lZDtcbiAgd29ya3NwYWNlT3B0aW9uczogV2lkZ2V0R3JpZFdvcmtzcGFjZU9wdGlvbnMgPSB7XG4gICAgZ3JpZENvbmZpZzoge1xuICAgICAgcm93czogMzAsXG4gICAgICBuZXdJdGVtV2lkdGg6IDIsXG4gICAgICBuZXdJdGVtSGVpZ2h0OiA1XG4gICAgfVxuICB9O1xuICBiYWNrZ3JvdW5kSW1hZ2U6IHN0cmluZztcbiAgU1RPUkFHRV9LRVkgPSAnZW8uY2xpZW50LmRhc2hib2FyZC5jdXJyZW50V29ya3NwYWNlJztcbiAgdG9vbGJhclZpc2libGU6IGJvb2xlYW47XG4gIHRvb2xiYXJJY29uU3JjOiBzdHJpbmc7XG4gIHRvb2xiYXJJY29uVG9vbHRpcDogc3RyaW5nO1xuICBwZW5kaW5nVGFza0lEID0gJyc7XG5cblxuICBjb25zdHJ1Y3RvcihwdWJsaWMgdXNlclNlcnZpY2U6IFVzZXJTZXJ2aWNlLFxuICAgIHByaXZhdGUgd2lkZ2V0R3JpZFJlZ2lzdHJ5OiBXaWRnZXRHcmlkUmVnaXN0cnksXG4gICAgcHJpdmF0ZSB0aXRsZVNlcnZpY2U6IFBhZ2VUaXRsZVNlcnZpY2UsXG4gICAgcHJpdmF0ZSBodHRwOiBIdHRwQ2xpZW50LFxuICAgIHByaXZhdGUgY29uZmlnOiBDb25maWcsXG4gICAgcHJpdmF0ZSBzdG9yYWdlU2VydmljZTogTG9jYWxTdG9yYWdlU2VydmljZSxcbiAgICBwdWJsaWMgdHJhbnNsYXRlOiBUcmFuc2xhdGVTZXJ2aWNlLFxuICAgIHByaXZhdGUgcGVuZGluZ0NoYW5nZXM6IFBlbmRpbmdDaGFuZ2VzU2VydmljZSkge1xuICAgIHRoaXMudGl0bGVTZXJ2aWNlLnNldERlZmF1bHRUaXRsZSgpO1xuICAgIHRoaXMuYmFja2dyb3VuZEltYWdlID0gYHVybCgke3RoaXMuY29uZmlnLmdldERhc2hib2FyZEJhY2tncm91bmRJbWFnZSgpfSlgO1xuICAgIHRoaXMuc2V0V2lkZ2V0R3JpZExhYmVscygpO1xuICAgIHRoaXMudHJhbnNsYXRlLm9uTGFuZ0NoYW5nZS5waXBlKHVudGlsRGVzdHJveWVkKHRoaXMpKS5zdWJzY3JpYmUoKF8pID0+IHtcbiAgICAgIHRoaXMuc2V0V2lkZ2V0R3JpZExhYmVscygpO1xuICAgIH0pO1xuICB9XG5cbiAgb25Xb3Jrc3BhY2VzQ29uZmlnQ2hhbmdlKGM6IFdpZGdldEdyaWRXb3Jrc3BhY2VDb25maWcpIHtcbiAgICB0aGlzLnNhdmVXb3Jrc3BhY2VzQ29uZmlnKGMpO1xuICB9XG5cbiAgcHJpdmF0ZSBzZXRXaWRnZXRHcmlkTGFiZWxzKCkge1xuICAgIHRoaXMud2lkZ2V0R3JpZFJlZ2lzdHJ5LnVwZGF0ZVJlZ2lzdGVyZWRXaWRnZXRzTGFiZWxzKHtcbiAgICAgIFwieXV2LndpZGdldC5waWN0dXJlXCI6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ2VvLndvcmtzcGFjZS53aWRnZXQucGljdHVyZS5sYWJlbCcpLFxuICAgICAgXCJ5dXYud2lkZ2V0LnRvZG9cIjogdGhpcy50cmFuc2xhdGUuaW5zdGFudCgnZW8ud29ya3NwYWNlLndpZGdldEdyaWQud2lkZ2V0VG9kb0hlYWRsaW5lTGFiZWwnKSxcbiAgICAgIFwieXV2LndpZGdldC5MYXN0RWRpdGVkXCI6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ2VvLndvcmtzcGFjZS53aWRnZXQubGFzdEVkaXRlZE9yTGFzdENyZWF0ZWQubGFiZWwnKSxcbiAgICAgIFwieXV2LndpZGdldC5pZnJhbWVcIjogdGhpcy50cmFuc2xhdGUuaW5zdGFudCgnZW8ud29ya3NwYWNlLndpZGdldC5pZnJhbWUubGFiZWwnKSxcbiAgICAgIFwieXV2LndpZGdldC5pbmZvSW50cmF5XCI6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ2VvLndvcmtzcGFjZS53aWRnZXQuaW5mb0ludHJheS5sYWJlbCcpLFxuICAgICAgXCJ5dXYud2lkZ2V0LmluZm9JbmJveFwiOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdlby53b3Jrc3BhY2Uud2lkZ2V0LmluZm9JbmJveC5sYWJlbCcpLFxuICAgICAgXCJ5dXYud2lkZ2V0LnF1aWNrU2VhcmNoXCI6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ2VvLndvcmtzcGFjZS53aWRnZXQucXVpY2tzZWFyY2gubGFiZWwnKSxcbiAgICAgIFwieXV2LndpZGdldC5oaXRsaXN0XCI6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ2VvLndvcmtzcGFjZS53aWRnZXQuaGl0bGlzdC5sYWJlbCcpLFxuICAgICAgXCJ5dXYud2lkZ2V0LmNvdW50T2JqZWN0c1wiOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdlby53b3Jrc3BhY2Uud2lkZ2V0LmNvdW50T2JqZWN0LmxhYmVsJyksXG4gICAgICBcInl1di53aWRnZXQuY2hhcnRcIjogdGhpcy50cmFuc2xhdGUuaW5zdGFudCgnZW8ud29ya3NwYWNlLndpZGdldC5jaGFydC5sYWJlbCcpLFxuICAgIH0pO1xuXG4gICAgdGhpcy53aWRnZXRHcmlkUmVnaXN0cnkudXBkYXRlV2lkZ2V0R3JpZExhYmVscyh7XG4gICAgICB3aWRnZXRQaWNrZXJUaXRsZTogdGhpcy50cmFuc2xhdGUuaW5zdGFudCgnZW8ud29ya3NwYWNlLndpZGdldEdyaWQud2lkZ2V0UGlja2VyVGl0bGUnKSxcbiAgICAgIGFkZFdvcmtzcGFjZVRvb2x0aXA6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ2VvLndvcmtzcGFjZS53aWRnZXRHcmlkLmFkZFdvcmtzcGFjZScpLFxuICAgICAgbm9vcFdpZGdldExhYmVsOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdlby53b3Jrc3BhY2Uud2lkZ2V0R3JpZC5ub29wV2lkZ2V0TGFiZWwnKSxcbiAgICAgIHdvcmtzcGFjZXNFbXB0eU1lc3NhZ2U6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ2VvLndvcmtzcGFjZS53aWRnZXRHcmlkLndvcmtzcGFjZXNFbXB0eU1lc3NhZ2UnKSxcbiAgICAgIG5ld1dvcmtzcGFjZURlZmF1bHRMYWJlbDogdGhpcy50cmFuc2xhdGUuaW5zdGFudCgnZW8ud29ya3NwYWNlLndpZGdldEdyaWQubmV3V29ya3NwYWNlRGVmYXVsdExhYmVsJyksXG4gICAgICB3b3Jrc3BhY2VMYWJlbFBsYWNlaG9sZGVyOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdlby53b3Jrc3BhY2Uud2lkZ2V0R3JpZC5uZXdXb3Jrc3BhY2VEZWZhdWx0TGFiZWwnKSxcbiAgICAgIHdvcmtzcGFjZVJlbW92ZUNvbmZpcm1NZXNzYWdlOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdlby53b3Jrc3BhY2Uud2lkZ2V0R3JpZC53b3Jrc3BhY2VSZW1vdmVDb25maXJtTWVzc2FnZScpLFxuICAgICAgd29ya3NwYWNlRWRpdERvbmU6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ2VvLndvcmtzcGFjZS53aWRnZXRHcmlkLndvcmtzcGFjZUVkaXREb25lJyksXG4gICAgICB3b3Jrc3BhY2VFZGl0Q2FuY2VsOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdlby5jdGEuYnV0dG9uLmNhbmNlbCcpLFxuICAgICAgc2F2ZTogdGhpcy50cmFuc2xhdGUuaW5zdGFudCgnZW8ud29ya3NwYWNlLndpZGdldEdyaWQuc2F2ZScpLFxuICAgICAgY2FuY2VsOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdlby5jdGEuYnV0dG9uLmNhbmNlbCcpLFxuICAgICAgY29uZmlybTogdGhpcy50cmFuc2xhdGUuaW5zdGFudCgnZW8ud29ya3NwYWNlLndpZGdldEdyaWQuY29uZmlybScpLFxuICAgICAgd2lkZ2V0VG9kb0hlYWRsaW5lTGFiZWw6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ2VvLndvcmtzcGFjZS53aWRnZXRHcmlkLndpZGdldFRvZG9IZWFkbGluZUxhYmVsJyksXG4gICAgICB3aWRnZXRUb2RvVGFza1RpdGxlTGFiZWw6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ2VvLndvcmtzcGFjZS53aWRnZXRHcmlkLndpZGdldFRpdGxlTGFiZWwnKSxcbiAgICAgIGFkZE5ld1dpZGdldExhYmVsOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdlby53b3Jrc3BhY2Uud2lkZ2V0R3JpZC5hZGROZXdXaWRnZXRMYWJlbCcpXG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIHJlZ2lzdGVyV2lkZ2V0cygpIHtcblxuICAgIHRoaXMud2lkZ2V0R3JpZFJlZ2lzdHJ5LnJlZ2lzdGVyR3JpZFdpZGdldHMoW1xuICAgICAge1xuICAgICAgICBuYW1lOiAneXV2LndpZGdldC5waWN0dXJlJyxcbiAgICAgICAgbGFiZWw6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ2VvLndvcmtzcGFjZS53aWRnZXQucGljdHVyZS5sYWJlbCcpLFxuICAgICAgICBzZXR1cENvbXBvbmVudDogUGljdHVyZVdpZGdldFNldHVwQ29tcG9uZW50LFxuICAgICAgICB3aWRnZXRDb21wb25lbnQ6IFBpY3R1cmVXaWRnZXRDb21wb25lbnQsXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBuYW1lOiAneXV2LndpZGdldC50b2RvJyxcbiAgICAgICAgbGFiZWw6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ2VvLndvcmtzcGFjZS53aWRnZXRHcmlkLndpZGdldFRvZG9IZWFkbGluZUxhYmVsJyksXG4gICAgICAgIHNldHVwQ29tcG9uZW50OiBUb2RvU2V0dXBDb21wb25lbnQsXG4gICAgICAgIHdpZGdldENvbXBvbmVudDogVG9kb1dpZGdldENvbXBvbmVudCxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIG5hbWU6ICd5dXYud2lkZ2V0Lkxhc3RFZGl0ZWQnLFxuICAgICAgICBsYWJlbDogdGhpcy50cmFuc2xhdGUuaW5zdGFudCgnZW8ud29ya3NwYWNlLndpZGdldC5sYXN0RWRpdGVkT3JMYXN0Q3JlYXRlZC5sYWJlbCcpLFxuICAgICAgICB3aWRnZXRDb21wb25lbnQ6IExhc3RFZGl0ZWRBbmRDcmVhdGVkQ29tcG9uZW50LFxuICAgICAgICBzZXR1cENvbXBvbmVudDogTGFzdEVkaXRlZEFuZENyZWF0ZWRTZXR1cENvbXBvbmVudCxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIG5hbWU6ICd5dXYud2lkZ2V0LmlmcmFtZScsXG4gICAgICAgIGxhYmVsOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdlby53b3Jrc3BhY2Uud2lkZ2V0LmlmcmFtZS5sYWJlbCcpLFxuICAgICAgICB3aWRnZXRDb21wb25lbnQ6IElmcmFtZVdpZGdldENvbXBvbmVudCxcbiAgICAgICAgc2V0dXBDb21wb25lbnQ6IElmcmFtZVNldHVwQ29tcG9uZW50LFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ3l1di53aWRnZXQuaW5mb0ludHJheScsXG4gICAgICAgIGxhYmVsOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdlby53b3Jrc3BhY2Uud2lkZ2V0LmluZm9JbnRyYXkubGFiZWwnKSxcbiAgICAgICAgd2lkZ2V0Q29tcG9uZW50OiBJbmZvSW50cmF5V2lkZ2V0Q29tcG9uZW50LFxuICAgICAgICBzZXR1cENvbXBvbmVudDogSW5mb0ludHJheVNldHVwQ29tcG9uZW50XG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBuYW1lOiAneXV2LndpZGdldC5pbmZvSW5ib3gnLFxuICAgICAgICBsYWJlbDogdGhpcy50cmFuc2xhdGUuaW5zdGFudCgnZW8ud29ya3NwYWNlLndpZGdldC5pbmZvSW5ib3gubGFiZWwnKSxcbiAgICAgICAgd2lkZ2V0Q29tcG9uZW50OiBJbmZvSW5ib3hXaWRnZXRDb21wb25lbnQsXG4gICAgICAgIHNldHVwQ29tcG9uZW50OiBJbmZvSW5ib3hTZXR1cENvbXBvbmVudFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ3l1di53aWRnZXQucXVpY2tTZWFyY2gnLFxuICAgICAgICBsYWJlbDogdGhpcy50cmFuc2xhdGUuaW5zdGFudCgnZW8ud29ya3NwYWNlLndpZGdldC5xdWlja3NlYXJjaC5sYWJlbCcpLFxuICAgICAgICB3aWRnZXRDb21wb25lbnQ6IFNlYXJjaFdpZGdldENvbXBvbmVudCxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIG5hbWU6ICd5dXYud2lkZ2V0LmhpdGxpc3QnLFxuICAgICAgICBsYWJlbDogdGhpcy50cmFuc2xhdGUuaW5zdGFudCgnZW8ud29ya3NwYWNlLndpZGdldC5oaXRsaXN0LmxhYmVsJyksXG4gICAgICAgIHNldHVwQ29tcG9uZW50OiBIaXRsaXN0U2V0dXBDb21wb25lbnQsXG4gICAgICAgIHdpZGdldENvbXBvbmVudDogSGl0bGlzdFdpZGdldENvbXBvbmVudCxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIG5hbWU6ICd5dXYud2lkZ2V0LmNvdW50T2JqZWN0cycsXG4gICAgICAgIGxhYmVsOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdlby53b3Jrc3BhY2Uud2lkZ2V0LmNvdW50T2JqZWN0LmxhYmVsJyksXG4gICAgICAgIHNldHVwQ29tcG9uZW50OiBDb3VudE9iamVjdHNTZXR1cENvbXBvbmVudCxcbiAgICAgICAgd2lkZ2V0Q29tcG9uZW50OiBDb3VudE9iamVjdHNXaWRnZXRDb21wb25lbnQsXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBuYW1lOiAneXV2LndpZGdldC5jaGFydCcsXG4gICAgICAgIGxhYmVsOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdlby53b3Jrc3BhY2Uud2lkZ2V0LmNoYXJ0LmxhYmVsJyksXG4gICAgICAgIHNldHVwQ29tcG9uZW50OiBDaGFydHNTZXR1cENvbXBvbmVudCxcbiAgICAgICAgd2lkZ2V0Q29tcG9uZW50OiBDaGFydHNXaWRnZXRDb21wb25lbnQsXG4gICAgICB9XG4gICAgXS5zb3J0KFV0aWxzLnNvcnRWYWx1ZXMoJ2xhYmVsJykpKTtcbiAgfVxuXG5cbiAgbmdPbkluaXQoKSB7XG4gICAgdGhpcy5sb2FkV29ya3NwYWNlc0NvbmZpZygpO1xuICAgIHRoaXMucmVnaXN0ZXJXaWRnZXRzKCk7XG4gIH1cblxuICBuZ0FmdGVyVmlld0luaXQoKSB7XG4gICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICB0aGlzLnRvb2xiYXJWaXNpYmxlID0gdGhpcy51c2VyU2VydmljZS5nZXRDdXJyZW50VXNlcigpLnVzZXJTZXR0aW5ncy50b29sYmFyVmlzaWJpbGl0eTtcbiAgICAgIGNvbnN0IHRvb2xiYXIgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCcudG9vbGJhcicpIGFzIEhUTUxFbGVtZW50O1xuICAgICAgaWYgKHRvb2xiYXIpIHtcbiAgICAgICAgaWYgKHRoaXMudG9vbGJhclZpc2libGUgPT09IGZhbHNlKSB7XG4gICAgICAgICAgdGhpcy5oaWRlVG9vbGJhcih0b29sYmFyKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICB0aGlzLnNob3dUb29sYmFyKHRvb2xiYXIpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBjb25zdCBzaG93RGFzaGJvYXJkQnV0dG9uID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2Rhc2hib2FyZEJ1dHRvbicpO1xuICAgICAgc2hvd0Rhc2hib2FyZEJ1dHRvbi5hZGRFdmVudExpc3RlbmVyKCdjbGljaycsICgpID0+IHtcbiAgICAgICAgdGhpcy5oaWRlT3JTaG93T25DbGljayh0b29sYmFyKTtcbiAgICAgIH0pO1xuICAgIH0sIDUwMCk7XG5cbiAgfVxuXG4gIHByaXZhdGUgaGlkZVRvb2xiYXIodG9vbGJhcjogSFRNTEVsZW1lbnQpIHtcbiAgICB0aGlzLnRvb2xiYXJJY29uU3JjID0gJ2Fzc2V0cy9fZGVmYXVsdC9zdmcvaWNfYXJyb3dfdXAuc3ZnJztcbiAgICB0aGlzLnRvb2xiYXJJY29uVG9vbHRpcCA9ICdlby5kYXNoYm9hcmQuYnV0dG9uLnNob3cuZm9vdGVyLnRvb2x0aXAnO1xuICAgIHRvb2xiYXIuc3R5bGUuZGlzcGxheSA9ICdub25lJztcbiAgICB0aGlzLnRvb2xiYXJWaXNpYmxlID0gZmFsc2U7XG4gIH1cblxuICBwcml2YXRlIHNob3dUb29sYmFyKHRvb2xiYXI6IEhUTUxFbGVtZW50KSB7XG4gICAgdGhpcy50b29sYmFySWNvblNyYyA9ICdhc3NldHMvX2RlZmF1bHQvc3ZnL2ljX2Fycm93X2Rvd24uc3ZnJztcbiAgICB0aGlzLnRvb2xiYXJJY29uVG9vbHRpcCA9ICdlby5kYXNoYm9hcmQuYnV0dG9uLmhpZGUuZm9vdGVyLnRvb2x0aXAnO1xuICAgIHRvb2xiYXIuc3R5bGUuZGlzcGxheSA9ICdmbGV4JztcbiAgICB0aGlzLnRvb2xiYXJWaXNpYmxlID0gdHJ1ZTtcbiAgfVxuXG4gIHByaXZhdGUgaGlkZU9yU2hvd09uQ2xpY2sodG9vbGJhcjogSFRNTEVsZW1lbnQpIHtcbiAgICBpZiAodGhpcy50b29sYmFyVmlzaWJsZSkge1xuICAgICAgdGhpcy5oaWRlVG9vbGJhcih0b29sYmFyKTtcbiAgICAgIHRoaXMudXNlclNlcnZpY2Uuc2F2ZVRvb2xiYXJTdGF0ZSh0aGlzLnRvb2xiYXJWaXNpYmxlKS5zdWJzY3JpYmUoKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5zaG93VG9vbGJhcih0b29sYmFyKTtcbiAgICAgIHRoaXMudXNlclNlcnZpY2Uuc2F2ZVRvb2xiYXJTdGF0ZSh0aGlzLnRvb2xiYXJWaXNpYmxlKS5zdWJzY3JpYmUoKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGxvYWRXb3Jrc3BhY2VzQ29uZmlnKCkge1xuICAgIGlmICghdGhpcy51c2VyU2VydmljZS5nZXRDdXJyZW50VXNlcigpLnVzZXJTZXR0aW5ncy53b3Jrc3BhY2VPcHRpb25zIHx8IHRoaXMudXNlclNlcnZpY2UuZ2V0Q3VycmVudFVzZXIoKS51c2VyU2V0dGluZ3Mud29ya3NwYWNlT3B0aW9ucy53b3Jrc3BhY2VzLmxlbmd0aCA9PT0gMCkge1xuICAgICAgdGhpcy5odHRwLmdldCgnYXNzZXRzL2Rhc2hib2FyZC5qc29uJykuc3Vic2NyaWJlKHtcbiAgICAgICAgbmV4dDogKHJlczogV2lkZ2V0R3JpZFdvcmtzcGFjZUNvbmZpZykgPT4ge1xuICAgICAgICAgIHRoaXMud29ya3NwYWNlQ29uZmlnID0gcmVzO1xuICAgICAgICAgIHRoaXMud29ya3NwYWNlQ29uZmlnLndvcmtzcGFjZXNbMF0ubGFiZWwgPSB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KHRoaXMud29ya3NwYWNlQ29uZmlnLndvcmtzcGFjZXNbMF0ubGFiZWwpO1xuICAgICAgICAgIHRoaXMud29ya3NwYWNlQ29uZmlnLndvcmtzcGFjZXNbMF0uZ3JpZC5mb3JFYWNoKGdyaWQgPT4ge1xuICAgICAgICAgICAgaWYgKGdyaWQud2lkZ2V0Q29uZmlnKSB7XG4gICAgICAgICAgICAgIGdyaWQud2lkZ2V0Q29uZmlnLnRpdGxlID0gdGhpcy50cmFuc2xhdGUuaW5zdGFudChncmlkLndpZGdldENvbmZpZy50aXRsZSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSk7XG4gICAgICAgIH0sXG4gICAgICAgIGVycm9yOiAoKSA9PiB7XG4gICAgICAgICAgLy8gbm8gY29uZmlnIGZpbGUgZm91bmRcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMud29ya3NwYWNlQ29uZmlnID0gdGhpcy51c2VyU2VydmljZS5nZXRDdXJyZW50VXNlcigpLnVzZXJTZXR0aW5ncy53b3Jrc3BhY2VPcHRpb25zO1xuICAgICAgY29uc3QgY3VycmVudFdvcmtzcGFjZSA9IHRoaXMuc3RvcmFnZVNlcnZpY2UuZ2V0SXRlbSh0aGlzLlNUT1JBR0VfS0VZKTtcbiAgICAgIGlmIChjdXJyZW50V29ya3NwYWNlICYmIHRoaXMud29ya3NwYWNlQ29uZmlnLndvcmtzcGFjZXMubWFwKCh3KSA9PiB3LmlkKS5pbmNsdWRlcyhjdXJyZW50V29ya3NwYWNlKSkge1xuICAgICAgICB0aGlzLndvcmtzcGFjZUNvbmZpZy5jdXJyZW50V29ya3NwYWNlID0gY3VycmVudFdvcmtzcGFjZTtcbiAgICAgIH0gZWxzZSBpZiAoISF0aGlzLndvcmtzcGFjZUNvbmZpZy53b3Jrc3BhY2VzLmxlbmd0aCkge1xuICAgICAgICB0aGlzLndvcmtzcGFjZUNvbmZpZy5jdXJyZW50V29ya3NwYWNlID0gdGhpcy53b3Jrc3BhY2VDb25maWcud29ya3NwYWNlc1swXS5pZDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBwcml2YXRlIHNhdmVXb3Jrc3BhY2VzQ29uZmlnKGM6IFdpZGdldEdyaWRXb3Jrc3BhY2VDb25maWcpIHtcbiAgICAvLyB0aGUgc2VsZWN0ZWQgd29ya3NwYWNlIGlzIHNhdmVkIG9uIHRoZSBkZXZpY2Ugd2hpbGUgdGhlIHdvcmtzcGFjZXMgdGhlbXNlbHZlcyBhcmUgc3RvcmVkIG9uIHRoZSB1c2VyIHNlcnZpY2VcbiAgICBpZiAoYykge1xuICAgICAgdGhpcy51c2VyU2VydmljZS5zYXZlQ2hhbmdlV29ya3NwYWNlKGMpLnBpcGUoc3dpdGNoTWFwKGFzeW5jICgpID0+IHRoaXMuc3RvcmFnZVNlcnZpY2Uuc2V0SXRlbSh0aGlzLlNUT1JBR0VfS0VZLCBjLmN1cnJlbnRXb3Jrc3BhY2UpKSkuc3Vic2NyaWJlKCk7XG4gICAgfVxuICB9XG5cbiAgb25Xb3Jrc3BhY2VFZGl0TW9kZShvbkVkaXQ6IGJvb2xlYW4pIHtcbiAgICBpZiAob25FZGl0KSB7XG4gICAgICB0aGlzLnBlbmRpbmdUYXNrSUQgPSB0aGlzLnBlbmRpbmdDaGFuZ2VzLnN0YXJ0VGFzaygpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnBlbmRpbmdDaGFuZ2VzLmZpbmlzaFRhc2sodGhpcy5wZW5kaW5nVGFza0lEKVxuICAgIH1cbiAgfVxufVxuIiwiPG5nLWNvbnRhaW5lcj5cbiAgPGRpdiBjbGFzcz1cImZhZGVcIj48L2Rpdj5cbiAgPGRpdiBjbGFzcz1cImRhc2hib2FyZFwiIFtzdHlsZS5iYWNrZ3JvdW5kLWltYWdlXT1cImJhY2tncm91bmRJbWFnZVwiPlxuICAgIDxkaXYgY2xhc3M9XCJmb290ZXJCdXR0b25cIiBlb1J0bEF3YXJlPVwiZnVsbFwiPlxuICAgICAgPGVvLWljb24gaWQ9XCJkYXNoYm9hcmRCdXR0b25cIiBbaWNvblNyY109XCJ0b29sYmFySWNvblNyY1wiIFtpY29uVGl0bGVdPVwidG9vbGJhckljb25Ub29sdGlwIHwgdHJhbnNsYXRlXCI+PC9lby1pY29uPlxuICAgIDwvZGl2PlxuICAgIDx5dXYtd2lkZ2V0LWdyaWQtd29ya3NwYWNlcyAqbmdJZj1cIndvcmtzcGFjZUNvbmZpZ1wiXG4gICAgW3dvcmtzcGFjZUxhYmVsTWF4TGVuZ3RoXT1cIjUwXCJcbiAgICBbd29ya3NwYWNlQ29uZmlnXT1cIndvcmtzcGFjZUNvbmZpZ1wiXG4gICAgICAoY29uZmlnQ2hhbmdlKT1cIm9uV29ya3NwYWNlc0NvbmZpZ0NoYW5nZSgkZXZlbnQpXCIgKGVkaXRNb2RlQ2hhbmdlKT1cIm9uV29ya3NwYWNlRWRpdE1vZGUoJGV2ZW50KVwiIFtvcHRpb25zXT1cIndvcmtzcGFjZU9wdGlvbnNcIj5cbiAgICA8L3l1di13aWRnZXQtZ3JpZC13b3Jrc3BhY2VzPlxuICA8L2Rpdj5cbjwvbmctY29udGFpbmVyPlxuIl19
272
+ }], ctorParameters: () => [{ type: i1.UserService }, { type: i2.WidgetGridRegistry }, { type: i3.PageTitleService }, { type: i4.HttpClient }, { type: i1.Config }, { type: i1.LocalStorageService }, { type: i1.TranslateService }, { type: i3.PendingChangesService }, { type: i1.SigningService }] });
273
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGFzaGJvYXJkLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvZW8tY2xpZW50L2Rhc2hib2FyZC9kYXNoYm9hcmQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9lby1jbGllbnQvZGFzaGJvYXJkL2Rhc2hib2FyZC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQ0EsT0FBTyxFQUFDLFNBQVMsRUFBUyxNQUFNLGVBQWUsQ0FBQztBQUNoRCxPQUFPLEVBS0wsS0FBSyxFQUNOLE1BQU0sY0FBYyxDQUFDO0FBTXRCLE9BQU8sRUFBQyxTQUFTLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUV6QyxPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0sb0JBQW9CLENBQUM7QUFDakQsT0FBTyxFQUFDLHFCQUFxQixFQUFDLE1BQU0saURBQWlELENBQUM7QUFDdEYsT0FBTyxFQUFDLG9CQUFvQixFQUFDLE1BQU0sNkRBQTZELENBQUM7QUFDakcsT0FBTyxFQUFDLDZCQUE2QixFQUFDLE1BQU0sZ0VBQWdFLENBQUM7QUFDN0csT0FBTyxFQUFDLHFCQUFxQixFQUFDLE1BQU0saURBQWlELENBQUM7QUFDdEYsT0FBTyxFQUFDLHlCQUF5QixFQUFDLE1BQU0sMkRBQTJELENBQUM7QUFDcEcsT0FBTyxFQUFDLHdCQUF3QixFQUFDLE1BQU0sNEVBQTRFLENBQUM7QUFDcEgsT0FBTyxFQUFDLHdCQUF3QixFQUFDLE1BQU0seURBQXlELENBQUM7QUFDakcsT0FBTyxFQUFDLHVCQUF1QixFQUFDLE1BQU0seUVBQXlFLENBQUM7QUFDaEgsT0FBTyxFQUFDLFlBQVksRUFBRSxjQUFjLEVBQUMsTUFBTSx1QkFBdUIsQ0FBQztBQUNuRSxPQUFPLEVBQUMscUJBQXFCLEVBQUMsTUFBTSxnRUFBZ0UsQ0FBQztBQUNyRyxPQUFPLEVBQUMsc0JBQXNCLEVBQUMs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QUM7UUFDckosQ0FBQztJQUNILENBQUM7SUFFRCxtQkFBbUIsQ0FBQyxNQUFlO1FBQ2pDLElBQUksTUFBTSxFQUFFLENBQUM7WUFDWCxJQUFJLENBQUMsYUFBYSxHQUFHLElBQUksQ0FBQyxjQUFjLENBQUMsU0FBUyxFQUFFLENBQUM7UUFDdkQsQ0FBQzthQUFNLENBQUM7WUFDTixJQUFJLENBQUMsY0FBYyxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUE7UUFDcEQsQ0FBQztJQUNILENBQUM7OEdBNU9VLGtCQUFrQjtrR0FBbEIsa0JBQWtCLG9EQ2xEL0IsZ3BCQWFBLHlwRkRpQ2M7WUFDVixhQUFhO1NBQ2Q7O0FBRVUsa0JBQWtCO0lBVDlCLFlBQVksRUFBRTtHQVNGLGtCQUFrQixDQTZPOUI7OzJGQTdPWSxrQkFBa0I7a0JBUjlCLFNBQVM7K0JBQ0UsY0FBYyxjQUdaO3dCQUNWLGFBQWE7cUJBQ2QiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBIdHRwQ2xpZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHtDb21wb25lbnQsIE9uSW5pdH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICBDb25maWcsXG4gIExvY2FsU3RvcmFnZVNlcnZpY2UsIFNpZ25pbmdTZXJ2aWNlLFxuICBUcmFuc2xhdGVTZXJ2aWNlLFxuICBVc2VyU2VydmljZSxcbiAgVXRpbHNcbn0gZnJvbSAnQGVvLXNkay9jb3JlJztcbmltcG9ydCB7XG4gIFdpZGdldEdyaWRSZWdpc3RyeSxcbiAgV2lkZ2V0R3JpZFdvcmtzcGFjZUNvbmZpZyxcbiAgV2lkZ2V0R3JpZFdvcmtzcGFjZU9wdGlvbnNcbn0gZnJvbSAnQHl1dXZpcy93aWRnZXQtZ3JpZCc7XG5pbXBvcnQge3N3aXRjaE1hcH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHtQYWdlVGl0bGVTZXJ2aWNlLCBQZW5kaW5nQ2hhbmdlc1NlcnZpY2V9IGZyb20gJy4uLy4uL2VvLWZyYW1ld29yay1jb3JlJztcbmltcG9ydCB7bGlzdEFuaW1hdGlvbn0gZnJvbSAnLi4vLi4vZW8tZnJhbWV3b3JrJztcbmltcG9ydCB7U2VhcmNoV2lkZ2V0Q29tcG9uZW50fSBmcm9tICcuL3dpZGdldHMvc2VhcmNoLXdpZGdldC9zZWFyY2gtd2lkZ2V0LmNvbXBvbmVudCc7XG5pbXBvcnQge0lmcmFtZVNldHVwQ29tcG9uZW50fSBmcm9tICcuL3dpZGdldHMvaWZyYW1lLXdpZGdldC9pZnJhbWUtc2V0dXAvaWZyYW1lLXNldHVwLmNvbXBvbmVudCc7XG5pbXBvcnQge0xhc3RFZGl0ZWRBbmRDcmVhdGVkQ29tcG9uZW50fSBmcm9tICcuL3dpZGdldHMvbGFzdC1lZGl0ZWQtd2lkZ2V0L2xhc3QtZWRpdGVkLWFuZC1jcmVhdGVkLmNvbXBvbmVudCc7XG5pbXBvcnQge0lmcmFtZVdpZGdldENvbXBvbmVudH0gZnJvbSAnLi93aWRnZXRzL2lmcmFtZS13aWRnZXQvaWZyYW1lLXdpZGdldC5jb21wb25lbnQnO1xuaW1wb3J0IHtJbmZvSW50cmF5V2lkZ2V0Q29tcG9uZW50fSBmcm9tICcuL3dpZGdldHMvaW5mby1pbnRyYXktd2lkZ2V0L2luZm8taW50cmF5LXdpZGdldC5jb21wb25lbnQnO1xuaW1wb3J0IHtJbmZvSW50cmF5U2V0dXBDb21wb25lbnR9IGZyb20gJy4vd2lkZ2V0cy9pbmZvLWludHJheS13aWRnZXQvaW5mby1pbnRyYXktc2V0dXAvaW5mby1pbnRyYXktc2V0dXAuY29tcG9uZW50JztcbmltcG9ydCB7SW5mb0luYm94V2lkZ2V0Q29tcG9uZW50fSBmcm9tICcuL3dpZGdldHMvaW5mby1pbmJveC13aWRnZXQvaW5mby1pbmJveC13aWRnZXQuY29tcG9uZW50JztcbmltcG9ydCB7SW5mb0luYm94U2V0dXBDb21wb25lbnR9IGZyb20gJy4vd2lkZ2V0cy9pbmZvLWluYm94LXdpZGdldC9pbmZvLWluYm94LXNldHVwL2luZm8taW5ib3gtc2V0dXAuY29tcG9uZW50JztcbmltcG9ydCB7VW50aWxEZXN0cm95LCB1bnRpbERlc3Ryb3llZH0gZnJvbSAnQG5nbmVhdC91bnRpbC1kZXN0cm95JztcbmltcG9ydCB7SGl0bGlzdFNldHVwQ29tcG9uZW50fSBmcm9tICcuL3dpZGdldHMvaGl0bGlzdC13aWRnZXQvaGl0bGlzdC1zZXR1cC9oaXRsaXN0LXNldHVwLmNvbXBvbmVudCc7XG5pbXBvcnQge0hpdGxpc3RXaWRnZXRDb21wb25lbnR9IGZyb20gJy4vd2lkZ2V0cy9oaXRsaXN0LXdpZGdldC9oaXRsaXN0LXdpZGdldC5jb21wb25lbnQnO1xuaW1wb3J0IHtBZnRlclZpZXdJbml0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7Q2hhcnRzV2lkZ2V0Q29tcG9uZW50fSBmcm9tICcuL3dpZGdldHMvY2hhcnRzLXdpZGdldC9jaGFydHMtd2lkZ2V0LmNvbXBvbmVudCc7XG5pbXBvcnQge0NoYXJ0c1NldHVwQ29tcG9uZW50fSBmcm9tICcuL3dpZGdldHMvY2hhcnRzLXdpZGdldC9jaGFydHMtc2V0dXAvY2hhcnRzLXNldHVwLmNvbXBvbmVudCc7XG5pbXBvcnQge0NvdW50T2JqZWN0c1dpZGdldENvbXBvbmVudH0gZnJvbSAnLi93aWRnZXRzL2NvdW50LW9iamVjdHMtd2lkZ2V0L2NvdW50LW9iamVjdHMtd2lkZ2V0LmNvbXBvbmVudCc7XG5pbXBvcnQge0NvdW50T2JqZWN0c1NldHVwQ29tcG9uZW50fSBmcm9tICcuL3dpZGdldHMvY291bnQtb2JqZWN0cy13aWRnZXQvY291bnQtb2JqZWN0cy1zZXR1cC9jb3VudC1vYmplY3RzLXNldHVwLmNvbXBvbmVudCc7XG5pbXBvcnQge0xhc3RFZGl0ZWRBbmRDcmVhdGVkU2V0dXBDb21wb25lbnR9IGZyb20gJy4vd2lkZ2V0cy9sYXN0LWVkaXRlZC13aWRnZXQvbGFzdC1lZGl0ZWQtYW5kLWNyZWF0ZWQtc2V0dXAvbGFzdC1lZGl0ZWQtYW5kLWNyZWF0ZWQtc2V0dXAuY29tcG9uZW50JztcbmltcG9ydCB7VG9kb1dpZGdldENvbXBvbmVudH0gZnJvbSAnLi93aWRnZXRzL3RvZG93aWRnZXQvdG9kby13aWRnZXQuY29tcG9uZW50JztcbmltcG9ydCB7VG9kb1NldHVwQ29tcG9uZW50fSBmcm9tICcuL3dpZGdldHMvdG9kb3dpZGdldC90b2RvLXNldHVwL3RvZG8tc2V0dXAuY29tcG9uZW50JztcbmltcG9ydCB7UGljdHVyZVdpZGdldFNldHVwQ29tcG9uZW50fSBmcm9tICcuL3dpZGdldHMvcGljdHVyZS13aWRnZXQvcGljdHVyZS13aWRnZXQtc2V0dXAvcGljdHVyZS13aWRnZXQtc2V0dXAuY29tcG9uZW50JztcbmltcG9ydCB7UGljdHVyZVdpZGdldENvbXBvbmVudH0gZnJvbSAnLi93aWRnZXRzL3BpY3R1cmUtd2lkZ2V0L3BpY3R1cmUtd2lkZ2V0LmNvbXBvbmVudCc7XG5pbXBvcnQge1NpZ25hdHVyZVN0YXRpc3RpY3NXaWRnZXRDb21wb25lbnR9IGZyb20gJy4vd2lkZ2V0cy9zaWduYXR1cmUtc3RhdGlzdGljcy13aWRnZXQvc2lnbmF0dXJlLXN0YXRpc3RpY3Mtd2lkZ2V0LmNvbXBvbmVudCc7XG5pbXBvcnQge1NpZ25hdHVyZVN0YXRpc3RpY3NTZXR1cENvbXBvbmVudH0gZnJvbSAnLi93aWRnZXRzL3NpZ25hdHVyZS1zdGF0aXN0aWNzLXdpZGdldC9zaWduYXR1cmUtc3RhdGlzdGljcy1zZXR1cC9zaWduYXR1cmUtc3RhdGlzdGljcy1zZXR1cC5jb21wb25lbnQnO1xuXG5AVW50aWxEZXN0cm95KClcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2VvLWRhc2hib2FyZCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9kYXNoYm9hcmQuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9kYXNoYm9hcmQuY29tcG9uZW50LnNjc3MnXSxcbiAgYW5pbWF0aW9uczogW1xuICAgIGxpc3RBbmltYXRpb25cbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBEYXNoYm9hcmRDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIEFmdGVyVmlld0luaXQge1xuXG4gIHdvcmtzcGFjZUNvbmZpZzogV2lkZ2V0R3JpZFdvcmtzcGFjZUNvbmZpZyB8IHVuZGVmaW5lZDtcbiAgd29ya3NwYWNlT3B0aW9uczogV2lkZ2V0R3JpZFdvcmtzcGFjZU9wdGlvbnMgPSB7XG4gICAgZ3JpZENvbmZpZzoge1xuICAgICAgcm93czogMzAsXG4gICAgICBuZXdJdGVtV2lkdGg6IDIsXG4gICAgICBuZXdJdGVtSGVpZ2h0OiA1XG4gICAgfVxuICB9O1xuICBiYWNrZ3JvdW5kSW1hZ2U6IHN0cmluZztcbiAgU1RPUkFHRV9LRVkgPSAnZW8uY2xpZW50LmRhc2hib2FyZC5jdXJyZW50V29ya3NwYWNlJztcbiAgdG9vbGJhclZpc2libGU6IGJvb2xlYW47XG4gIHRvb2xiYXJJY29uU3JjOiBzdHJpbmc7XG4gIHRvb2xiYXJJY29uVG9vbHRpcDogc3RyaW5nO1xuICBwZW5kaW5nVGFza0lEID0gJyc7XG5cblxuICBjb25zdHJ1Y3RvcihwdWJsaWMgdXNlclNlcnZpY2U6IFVzZXJTZXJ2aWNlLFxuICAgIHByaXZhdGUgd2lkZ2V0R3JpZFJlZ2lzdHJ5OiBXaWRnZXRHcmlkUmVnaXN0cnksXG4gICAgcHJpdmF0ZSB0aXRsZVNlcnZpY2U6IFBhZ2VUaXRsZVNlcnZpY2UsXG4gICAgcHJpdmF0ZSBodHRwOiBIdHRwQ2xpZW50LFxuICAgIHByaXZhdGUgY29uZmlnOiBDb25maWcsXG4gICAgcHJpdmF0ZSBzdG9yYWdlU2VydmljZTogTG9jYWxTdG9yYWdlU2VydmljZSxcbiAgICBwdWJsaWMgdHJhbnNsYXRlOiBUcmFuc2xhdGVTZXJ2aWNlLFxuICAgIHByaXZhdGUgcGVuZGluZ0NoYW5nZXM6IFBlbmRpbmdDaGFuZ2VzU2VydmljZSxcbiAgICBwcml2YXRlIHNpZ25pbmdTZXJ2aWNlOiBTaWduaW5nU2VydmljZSkge1xuICAgIHRoaXMudGl0bGVTZXJ2aWNlLnNldERlZmF1bHRUaXRsZSgpO1xuICAgIHRoaXMuYmFja2dyb3VuZEltYWdlID0gYHVybCgke3RoaXMuY29uZmlnLmdldERhc2hib2FyZEJhY2tncm91bmRJbWFnZSgpfSlgO1xuICAgIHRoaXMuc2V0V2lkZ2V0R3JpZExhYmVscygpO1xuICAgIHRoaXMudHJhbnNsYXRlLm9uTGFuZ0NoYW5nZS5waXBlKHVudGlsRGVzdHJveWVkKHRoaXMpKS5zdWJzY3JpYmUoKF8pID0+IHtcbiAgICAgIHRoaXMuc2V0V2lkZ2V0R3JpZExhYmVscygpO1xuICAgIH0pO1xuICB9XG5cbiAgb25Xb3Jrc3BhY2VzQ29uZmlnQ2hhbmdlKGM6IFdpZGdldEdyaWRXb3Jrc3BhY2VDb25maWcpIHtcbiAgICB0aGlzLnNhdmVXb3Jrc3BhY2VzQ29uZmlnKGMpO1xuICB9XG5cbiAgcHJpdmF0ZSBzZXRXaWRnZXRHcmlkTGFiZWxzKCkge1xuICAgIHRoaXMud2lkZ2V0R3JpZFJlZ2lzdHJ5LnVwZGF0ZVJlZ2lzdGVyZWRXaWRnZXRzTGFiZWxzKHtcbiAgICAgIFwieXV2LndpZGdldC5waWN0dXJlXCI6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ2VvLndvcmtzcGFjZS53aWRnZXQucGljdHVyZS5sYWJlbCcpLFxuICAgICAgXCJ5dXYud2lkZ2V0LnRvZG9cIjogdGhpcy50cmFuc2xhdGUuaW5zdGFudCgnZW8ud29ya3NwYWNlLndpZGdldEdyaWQud2lkZ2V0VG9kb0hlYWRsaW5lTGFiZWwnKSxcbiAgICAgIFwieXV2LndpZGdldC5MYXN0RWRpdGVkXCI6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ2VvLndvcmtzcGFjZS53aWRnZXQubGFzdEVkaXRlZE9yTGFzdENyZWF0ZWQubGFiZWwnKSxcbiAgICAgIFwieXV2LndpZGdldC5pZnJhbWVcIjogdGhpcy50cmFuc2xhdGUuaW5zdGFudCgnZW8ud29ya3NwYWNlLndpZGdldC5pZnJhbWUubGFiZWwnKSxcbiAgICAgIFwieXV2LndpZGdldC5pbmZvSW50cmF5XCI6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ2VvLndvcmtzcGFjZS53aWRnZXQuaW5mb0ludHJheS5sYWJlbCcpLFxuICAgICAgXCJ5dXYud2lkZ2V0LmluZm9JbmJveFwiOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdlby53b3Jrc3BhY2Uud2lkZ2V0LmluZm9JbmJveC5sYWJlbCcpLFxuICAgICAgXCJ5dXYud2lkZ2V0LnF1aWNrU2VhcmNoXCI6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ2VvLndvcmtzcGFjZS53aWRnZXQucXVpY2tzZWFyY2gubGFiZWwnKSxcbiAgICAgIFwieXV2LndpZGdldC5oaXRsaXN0XCI6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ2VvLndvcmtzcGFjZS53aWRnZXQuaGl0bGlzdC5sYWJlbCcpLFxuICAgICAgXCJ5dXYud2lkZ2V0LmNvdW50T2JqZWN0c1wiOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdlby53b3Jrc3BhY2Uud2lkZ2V0LmNvdW50T2JqZWN0LmxhYmVsJyksXG4gICAgICBcInl1di53aWRnZXQuY2hhcnRcIjogdGhpcy50cmFuc2xhdGUuaW5zdGFudCgnZW8ud29ya3NwYWNlLndpZGdldC5jaGFydC5sYWJlbCcpLFxuICAgICAgXCJ5dXYud2lkZ2V0LnNpZ25hdHVyZVN0YXRpc3RpY3NcIjogdGhpcy50cmFuc2xhdGUuaW5zdGFudCgnZW8ud29ya3NwYWNlLndpZGdldC5zaWduYXR1cmUuc3RhdGlzdGljcy50aXRsZScpLFxuICAgIH0pO1xuXG4gICAgdGhpcy53aWRnZXRHcmlkUmVnaXN0cnkudXBkYXRlV2lkZ2V0R3JpZExhYmVscyh7XG4gICAgICB3aWRnZXRQaWNrZXJUaXRsZTogdGhpcy50cmFuc2xhdGUuaW5zdGFudCgnZW8ud29ya3NwYWNlLndpZGdldEdyaWQud2lkZ2V0UGlja2VyVGl0bGUnKSxcbiAgICAgIGFkZFdvcmtzcGFjZVRvb2x0aXA6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ2VvLndvcmtzcGFjZS53aWRnZXRHcmlkLmFkZFdvcmtzcGFjZScpLFxuICAgICAgbm9vcFdpZGdldExhYmVsOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdlby53b3Jrc3BhY2Uud2lkZ2V0R3JpZC5ub29wV2lkZ2V0TGFiZWwnKSxcbiAgICAgIHdvcmtzcGFjZXNFbXB0eU1lc3NhZ2U6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ2VvLndvcmtzcGFjZS53aWRnZXRHcmlkLndvcmtzcGFjZXNFbXB0eU1lc3NhZ2UnKSxcbiAgICAgIG5ld1dvcmtzcGFjZURlZmF1bHRMYWJlbDogdGhpcy50cmFuc2xhdGUuaW5zdGFudCgnZW8ud29ya3NwYWNlLndpZGdldEdyaWQubmV3V29ya3NwYWNlRGVmYXVsdExhYmVsJyksXG4gICAgICB3b3Jrc3BhY2VMYWJlbFBsYWNlaG9sZGVyOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdlby53b3Jrc3BhY2Uud2lkZ2V0R3JpZC5uZXdXb3Jrc3BhY2VEZWZhdWx0TGFiZWwnKSxcbiAgICAgIHdvcmtzcGFjZVJlbW92ZUNvbmZpcm1NZXNzYWdlOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdlby53b3Jrc3BhY2Uud2lkZ2V0R3JpZC53b3Jrc3BhY2VSZW1vdmVDb25maXJtTWVzc2FnZScpLFxuICAgICAgd29ya3NwYWNlRWRpdERvbmU6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ2VvLndvcmtzcGFjZS53aWRnZXRHcmlkLndvcmtzcGFjZUVkaXREb25lJyksXG4gICAgICB3b3Jrc3BhY2VFZGl0Q2FuY2VsOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdlby5jdGEuYnV0dG9uLmNhbmNlbCcpLFxuICAgICAgc2F2ZTogdGhpcy50cmFuc2xhdGUuaW5zdGFudCgnZW8ud29ya3NwYWNlLndpZGdldEdyaWQuc2F2ZScpLFxuICAgICAgY2FuY2VsOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdlby5jdGEuYnV0dG9uLmNhbmNlbCcpLFxuICAgICAgY29uZmlybTogdGhpcy50cmFuc2xhdGUuaW5zdGFudCgnZW8ud29ya3NwYWNlLndpZGdldEdyaWQuY29uZmlybScpLFxuICAgICAgd2lkZ2V0VG9kb0hlYWRsaW5lTGFiZWw6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ2VvLndvcmtzcGFjZS53aWRnZXRHcmlkLndpZGdldFRvZG9IZWFkbGluZUxhYmVsJyksXG4gICAgICB3aWRnZXRUb2RvVGFza1RpdGxlTGFiZWw6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ2VvLndvcmtzcGFjZS53aWRnZXRHcmlkLndpZGdldFRpdGxlTGFiZWwnKSxcbiAgICAgIGFkZE5ld1dpZGdldExhYmVsOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdlby53b3Jrc3BhY2Uud2lkZ2V0R3JpZC5hZGROZXdXaWRnZXRMYWJlbCcpXG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIHJlZ2lzdGVyV2lkZ2V0cygpIHtcbiAgICBjb25zdCB3aWRnZXRzOiBhbnkgPSBbXG4gICAgICB7XG4gICAgICAgIG5hbWU6ICd5dXYud2lkZ2V0LnBpY3R1cmUnLFxuICAgICAgICBsYWJlbDogdGhpcy50cmFuc2xhdGUuaW5zdGFudCgnZW8ud29ya3NwYWNlLndpZGdldC5waWN0dXJlLmxhYmVsJyksXG4gICAgICAgIHNldHVwQ29tcG9uZW50OiBQaWN0dXJlV2lkZ2V0U2V0dXBDb21wb25lbnQsXG4gICAgICAgIHdpZGdldENvbXBvbmVudDogUGljdHVyZVdpZGdldENvbXBvbmVudCxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIG5hbWU6ICd5dXYud2lkZ2V0LnRvZG8nLFxuICAgICAgICBsYWJlbDogdGhpcy50cmFuc2xhdGUuaW5zdGFudCgnZW8ud29ya3NwYWNlLndpZGdldEdyaWQud2lkZ2V0VG9kb0hlYWRsaW5lTGFiZWwnKSxcbiAgICAgICAgc2V0dXBDb21wb25lbnQ6IFRvZG9TZXR1cENvbXBvbmVudCxcbiAgICAgICAgd2lkZ2V0Q29tcG9uZW50OiBUb2RvV2lkZ2V0Q29tcG9uZW50LFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ3l1di53aWRnZXQuTGFzdEVkaXRlZCcsXG4gICAgICAgIGxhYmVsOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdlby53b3Jrc3BhY2Uud2lkZ2V0Lmxhc3RFZGl0ZWRPckxhc3RDcmVhdGVkLmxhYmVsJyksXG4gICAgICAgIHdpZGdldENvbXBvbmVudDogTGFzdEVkaXRlZEFuZENyZWF0ZWRDb21wb25lbnQsXG4gICAgICAgIHNldHVwQ29tcG9uZW50OiBMYXN0RWRpdGVkQW5kQ3JlYXRlZFNldHVwQ29tcG9uZW50LFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ3l1di53aWRnZXQuaWZyYW1lJyxcbiAgICAgICAgbGFiZWw6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ2VvLndvcmtzcGFjZS53aWRnZXQuaWZyYW1lLmxhYmVsJyksXG4gICAgICAgIHdpZGdldENvbXBvbmVudDogSWZyYW1lV2lkZ2V0Q29tcG9uZW50LFxuICAgICAgICBzZXR1cENvbXBvbmVudDogSWZyYW1lU2V0dXBDb21wb25lbnQsXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBuYW1lOiAneXV2LndpZGdldC5pbmZvSW50cmF5JyxcbiAgICAgICAgbGFiZWw6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ2VvLndvcmtzcGFjZS53aWRnZXQuaW5mb0ludHJheS5sYWJlbCcpLFxuICAgICAgICB3aWRnZXRDb21wb25lbnQ6IEluZm9JbnRyYXlXaWRnZXRDb21wb25lbnQsXG4gICAgICAgIHNldHVwQ29tcG9uZW50OiBJbmZvSW50cmF5U2V0dXBDb21wb25lbnRcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIG5hbWU6ICd5dXYud2lkZ2V0LmluZm9JbmJveCcsXG4gICAgICAgIGxhYmVsOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdlby53b3Jrc3BhY2Uud2lkZ2V0LmluZm9JbmJveC5sYWJlbCcpLFxuICAgICAgICB3aWRnZXRDb21wb25lbnQ6IEluZm9JbmJveFdpZGdldENvbXBvbmVudCxcbiAgICAgICAgc2V0dXBDb21wb25lbnQ6IEluZm9JbmJveFNldHVwQ29tcG9uZW50XG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBuYW1lOiAneXV2LndpZGdldC5xdWlja1NlYXJjaCcsXG4gICAgICAgIGxhYmVsOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdlby53b3Jrc3BhY2Uud2lkZ2V0LnF1aWNrc2VhcmNoLmxhYmVsJyksXG4gICAgICAgIHdpZGdldENvbXBvbmVudDogU2VhcmNoV2lkZ2V0Q29tcG9uZW50LFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ3l1di53aWRnZXQuaGl0bGlzdCcsXG4gICAgICAgIGxhYmVsOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdlby53b3Jrc3BhY2Uud2lkZ2V0LmhpdGxpc3QubGFiZWwnKSxcbiAgICAgICAgc2V0dXBDb21wb25lbnQ6IEhpdGxpc3RTZXR1cENvbXBvbmVudCxcbiAgICAgICAgd2lkZ2V0Q29tcG9uZW50OiBIaXRsaXN0V2lkZ2V0Q29tcG9uZW50LFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ3l1di53aWRnZXQuY291bnRPYmplY3RzJyxcbiAgICAgICAgbGFiZWw6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ2VvLndvcmtzcGFjZS53aWRnZXQuY291bnRPYmplY3QubGFiZWwnKSxcbiAgICAgICAgc2V0dXBDb21wb25lbnQ6IENvdW50T2JqZWN0c1NldHVwQ29tcG9uZW50LFxuICAgICAgICB3aWRnZXRDb21wb25lbnQ6IENvdW50T2JqZWN0c1dpZGdldENvbXBvbmVudCxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIG5hbWU6ICd5dXYud2lkZ2V0LmNoYXJ0JyxcbiAgICAgICAgbGFiZWw6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ2VvLndvcmtzcGFjZS53aWRnZXQuY2hhcnQubGFiZWwnKSxcbiAgICAgICAgc2V0dXBDb21wb25lbnQ6IENoYXJ0c1NldHVwQ29tcG9uZW50LFxuICAgICAgICB3aWRnZXRDb21wb25lbnQ6IENoYXJ0c1dpZGdldENvbXBvbmVudCxcbiAgICAgIH1cbiAgICBdO1xuICAgIGlmICh0aGlzLnNpZ25pbmdTZXJ2aWNlLmNhblNpZ24oKSAmJiB0aGlzLnVzZXJTZXJ2aWNlLmdldEN1cnJlbnRVc2VyKCkucm9sZXMuZmluZChyb2xlID0+IHJvbGUubmFtZSA9PT0gJ1VzZSBzaWduYXR1cmUgc3RhdGlzdGljcycpKSB7XG4gICAgICB3aWRnZXRzLnB1c2goe1xuICAgICAgICBuYW1lOiAneXV2LndpZGdldC5zaWduYXR1cmVTdGF0aXN0aWNzJyxcbiAgICAgICAgbGFiZWw6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ2VvLndvcmtzcGFjZS53aWRnZXQuc2lnbmF0dXJlLnN0YXRpc3RpY3MudGl0bGUnKSxcbiAgICAgICAgd2lkZ2V0Q29tcG9uZW50OiBTaWduYXR1cmVTdGF0aXN0aWNzV2lkZ2V0Q29tcG9uZW50LFxuICAgICAgICBzZXR1cENvbXBvbmVudDogU2lnbmF0dXJlU3RhdGlzdGljc1NldHVwQ29tcG9uZW50XG4gICAgICB9KTtcbiAgICB9XG4gICAgd2lkZ2V0cy5zb3J0KFV0aWxzLnNvcnRWYWx1ZXMoJ2xhYmVsJykpO1xuICAgIHRoaXMud2lkZ2V0R3JpZFJlZ2lzdHJ5LnJlZ2lzdGVyR3JpZFdpZGdldHMod2lkZ2V0cyk7XG4gIH1cblxuXG4gIG5nT25Jbml0KCkge1xuICAgIHRoaXMubG9hZFdvcmtzcGFjZXNDb25maWcoKTtcbiAgICB0aGlzLnJlZ2lzdGVyV2lkZ2V0cygpO1xuICB9XG5cbiAgbmdBZnRlclZpZXdJbml0KCkge1xuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgdGhpcy50b29sYmFyVmlzaWJsZSA9IHRoaXMudXNlclNlcnZpY2UuZ2V0Q3VycmVudFVzZXIoKS51c2VyU2V0dGluZ3MudG9vbGJhclZpc2liaWxpdHk7XG4gICAgICBjb25zdCB0b29sYmFyID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcignLnRvb2xiYXInKSBhcyBIVE1MRWxlbWVudDtcbiAgICAgIGlmICh0b29sYmFyKSB7XG4gICAgICAgIGlmICh0aGlzLnRvb2xiYXJWaXNpYmxlID09PSBmYWxzZSkge1xuICAgICAgICAgIHRoaXMuaGlkZVRvb2xiYXIodG9vbGJhcik7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgdGhpcy5zaG93VG9vbGJhcih0b29sYmFyKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgY29uc3Qgc2hvd0Rhc2hib2FyZEJ1dHRvbiA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdkYXNoYm9hcmRCdXR0b24nKTtcbiAgICAgIHNob3dEYXNoYm9hcmRCdXR0b24uYWRkRXZlbnRMaXN0ZW5lcignY2xpY2snLCAoKSA9PiB7XG4gICAgICAgIHRoaXMuaGlkZU9yU2hvd09uQ2xpY2sodG9vbGJhcik7XG4gICAgICB9KTtcbiAgICB9LCA1MDApO1xuXG4gIH1cblxuICBwcml2YXRlIGhpZGVUb29sYmFyKHRvb2xiYXI6IEhUTUxFbGVtZW50KSB7XG4gICAgdGhpcy50b29sYmFySWNvblNyYyA9ICdhc3NldHMvX2RlZmF1bHQvc3ZnL2ljX2Fycm93X3VwLnN2Zyc7XG4gICAgdGhpcy50b29sYmFySWNvblRvb2x0aXAgPSAnZW8uZGFzaGJvYXJkLmJ1dHRvbi5zaG93LmZvb3Rlci50b29sdGlwJztcbiAgICB0b29sYmFyLnN0eWxlLmRpc3BsYXkgPSAnbm9uZSc7XG4gICAgdGhpcy50b29sYmFyVmlzaWJsZSA9IGZhbHNlO1xuICB9XG5cbiAgcHJpdmF0ZSBzaG93VG9vbGJhcih0b29sYmFyOiBIVE1MRWxlbWVudCkge1xuICAgIHRoaXMudG9vbGJhckljb25TcmMgPSAnYXNzZXRzL19kZWZhdWx0L3N2Zy9pY19hcnJvd19kb3duLnN2Zyc7XG4gICAgdGhpcy50b29sYmFySWNvblRvb2x0aXAgPSAnZW8uZGFzaGJvYXJkLmJ1dHRvbi5oaWRlLmZvb3Rlci50b29sdGlwJztcbiAgICB0b29sYmFyLnN0eWxlLmRpc3BsYXkgPSAnZmxleCc7XG4gICAgdGhpcy50b29sYmFyVmlzaWJsZSA9IHRydWU7XG4gIH1cblxuICBwcml2YXRlIGhpZGVPclNob3dPbkNsaWNrKHRvb2xiYXI6IEhUTUxFbGVtZW50KSB7XG4gICAgaWYgKHRoaXMudG9vbGJhclZpc2libGUpIHtcbiAgICAgIHRoaXMuaGlkZVRvb2xiYXIodG9vbGJhcik7XG4gICAgICB0aGlzLnVzZXJTZXJ2aWNlLnNhdmVUb29sYmFyU3RhdGUodGhpcy50b29sYmFyVmlzaWJsZSkuc3Vic2NyaWJlKCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuc2hvd1Rvb2xiYXIodG9vbGJhcik7XG4gICAgICB0aGlzLnVzZXJTZXJ2aWNlLnNhdmVUb29sYmFyU3RhdGUodGhpcy50b29sYmFyVmlzaWJsZSkuc3Vic2NyaWJlKCk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBsb2FkV29ya3NwYWNlc0NvbmZpZygpIHtcbiAgICBpZiAoIXRoaXMudXNlclNlcnZpY2UuZ2V0Q3VycmVudFVzZXIoKS51c2VyU2V0dGluZ3Mud29ya3NwYWNlT3B0aW9ucyB8fCB0aGlzLnVzZXJTZXJ2aWNlLmdldEN1cnJlbnRVc2VyKCkudXNlclNldHRpbmdzLndvcmtzcGFjZU9wdGlvbnMud29ya3NwYWNlcy5sZW5ndGggPT09IDApIHtcbiAgICAgIHRoaXMuaHR0cC5nZXQoJ2Fzc2V0cy9kYXNoYm9hcmQuanNvbicpLnN1YnNjcmliZSh7XG4gICAgICAgIG5leHQ6IChyZXM6IFdpZGdldEdyaWRXb3Jrc3BhY2VDb25maWcpID0+IHtcbiAgICAgICAgICB0aGlzLndvcmtzcGFjZUNvbmZpZyA9IHJlcztcbiAgICAgICAgICB0aGlzLndvcmtzcGFjZUNvbmZpZy53b3Jrc3BhY2VzWzBdLmxhYmVsID0gdGhpcy50cmFuc2xhdGUuaW5zdGFudCh0aGlzLndvcmtzcGFjZUNvbmZpZy53b3Jrc3BhY2VzWzBdLmxhYmVsKTtcbiAgICAgICAgICB0aGlzLndvcmtzcGFjZUNvbmZpZy53b3Jrc3BhY2VzWzBdLmdyaWQuZm9yRWFjaChncmlkID0+IHtcbiAgICAgICAgICAgIGlmIChncmlkLndpZGdldENvbmZpZykge1xuICAgICAgICAgICAgICBncmlkLndpZGdldENvbmZpZy50aXRsZSA9IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoZ3JpZC53aWRnZXRDb25maWcudGl0bGUpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH0pO1xuICAgICAgICB9LFxuICAgICAgICBlcnJvcjogKCkgPT4ge1xuICAgICAgICAgIC8vIG5vIGNvbmZpZyBmaWxlIGZvdW5kXG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLndvcmtzcGFjZUNvbmZpZyA9IHRoaXMudXNlclNlcnZpY2UuZ2V0Q3VycmVudFVzZXIoKS51c2VyU2V0dGluZ3Mud29ya3NwYWNlT3B0aW9ucztcbiAgICAgIGNvbnN0IGN1cnJlbnRXb3Jrc3BhY2UgPSB0aGlzLnN0b3JhZ2VTZXJ2aWNlLmdldEl0ZW0odGhpcy5TVE9SQUdFX0tFWSk7XG4gICAgICBpZiAoY3VycmVudFdvcmtzcGFjZSAmJiB0aGlzLndvcmtzcGFjZUNvbmZpZy53b3Jrc3BhY2VzLm1hcCgodykgPT4gdy5pZCkuaW5jbHVkZXMoY3VycmVudFdvcmtzcGFjZSkpIHtcbiAgICAgICAgdGhpcy53b3Jrc3BhY2VDb25maWcuY3VycmVudFdvcmtzcGFjZSA9IGN1cnJlbnRXb3Jrc3BhY2U7XG4gICAgICB9IGVsc2UgaWYgKCEhdGhpcy53b3Jrc3BhY2VDb25maWcud29ya3NwYWNlcy5sZW5ndGgpIHtcbiAgICAgICAgdGhpcy53b3Jrc3BhY2VDb25maWcuY3VycmVudFdvcmtzcGFjZSA9IHRoaXMud29ya3NwYWNlQ29uZmlnLndvcmtzcGFjZXNbMF0uaWQ7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBzYXZlV29ya3NwYWNlc0NvbmZpZyhjOiBXaWRnZXRHcmlkV29ya3NwYWNlQ29uZmlnKSB7XG4gICAgLy8gdGhlIHNlbGVjdGVkIHdvcmtzcGFjZSBpcyBzYXZlZCBvbiB0aGUgZGV2aWNlIHdoaWxlIHRoZSB3b3Jrc3BhY2VzIHRoZW1zZWx2ZXMgYXJlIHN0b3JlZCBvbiB0aGUgdXNlciBzZXJ2aWNlXG4gICAgaWYgKGMpIHtcbiAgICAgIHRoaXMudXNlclNlcnZpY2Uuc2F2ZUNoYW5nZVdvcmtzcGFjZShjKS5waXBlKHN3aXRjaE1hcChhc3luYyAoKSA9PiB0aGlzLnN0b3JhZ2VTZXJ2aWNlLnNldEl0ZW0odGhpcy5TVE9SQUdFX0tFWSwgYy5jdXJyZW50V29ya3NwYWNlKSkpLnN1YnNjcmliZSgpO1xuICAgIH1cbiAgfVxuXG4gIG9uV29ya3NwYWNlRWRpdE1vZGUob25FZGl0OiBib29sZWFuKSB7XG4gICAgaWYgKG9uRWRpdCkge1xuICAgICAgdGhpcy5wZW5kaW5nVGFza0lEID0gdGhpcy5wZW5kaW5nQ2hhbmdlcy5zdGFydFRhc2soKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5wZW5kaW5nQ2hhbmdlcy5maW5pc2hUYXNrKHRoaXMucGVuZGluZ1Rhc2tJRClcbiAgICB9XG4gIH1cbn1cbiIsIjxuZy1jb250YWluZXI+XG4gIDxkaXYgY2xhc3M9XCJmYWRlXCI+PC9kaXY+XG4gIDxkaXYgY2xhc3M9XCJkYXNoYm9hcmRcIiBbc3R5bGUuYmFja2dyb3VuZC1pbWFnZV09XCJiYWNrZ3JvdW5kSW1hZ2VcIj5cbiAgICA8ZGl2IGNsYXNzPVwiZm9vdGVyQnV0dG9uXCIgZW9SdGxBd2FyZT1cImZ1bGxcIj5cbiAgICAgIDxlby1pY29uIGlkPVwiZGFzaGJvYXJkQnV0dG9uXCIgW2ljb25TcmNdPVwidG9vbGJhckljb25TcmNcIiBbaWNvblRpdGxlXT1cInRvb2xiYXJJY29uVG9vbHRpcCB8IHRyYW5zbGF0ZVwiPjwvZW8taWNvbj5cbiAgICA8L2Rpdj5cbiAgICA8eXV2LXdpZGdldC1ncmlkLXdvcmtzcGFjZXMgKm5nSWY9XCJ3b3Jrc3BhY2VDb25maWdcIlxuICAgIFt3b3Jrc3BhY2VMYWJlbE1heExlbmd0aF09XCI1MFwiXG4gICAgW3dvcmtzcGFjZUNvbmZpZ109XCJ3b3Jrc3BhY2VDb25maWdcIlxuICAgICAgKGNvbmZpZ0NoYW5nZSk9XCJvbldvcmtzcGFjZXNDb25maWdDaGFuZ2UoJGV2ZW50KVwiIChlZGl0TW9kZUNoYW5nZSk9XCJvbldvcmtzcGFjZUVkaXRNb2RlKCRldmVudClcIiBbb3B0aW9uc109XCJ3b3Jrc3BhY2VPcHRpb25zXCI+XG4gICAgPC95dXYtd2lkZ2V0LWdyaWQtd29ya3NwYWNlcz5cbiAgPC9kaXY+XG48L25nLWNvbnRhaW5lcj5cbiJdfQ==
@@ -0,0 +1,114 @@
1
+ import { __decorate } from "tslib";
2
+ import { Component, EventEmitter, Input, Output } from '@angular/core';
3
+ import { Validators } from '@angular/forms';
4
+ import { Utils } from '@eo-sdk/core';
5
+ import { UntilDestroy, untilDestroyed } from '@ngneat/until-destroy';
6
+ import { debounceTime } from 'rxjs';
7
+ import * as i0 from "@angular/core";
8
+ import * as i1 from "@angular/forms";
9
+ import * as i2 from "@eo-sdk/core";
10
+ import * as i3 from "@ngx-translate/core";
11
+ import * as i4 from "../../../../../eo-framework/form-elements/form-input/form-input.component";
12
+ import * as i5 from "../../../../../eo-framework/form-elements/codesystem/codesystem.component";
13
+ import * as i6 from "../../../../../eo-framework/form-elements/date/date.component";
14
+ import * as i7 from "../../../../../eo-framework/form-elements/string/string.component";
15
+ import * as i8 from "../signature-statistics-widget.component";
16
+ let SignatureStatisticsSetupComponent = class SignatureStatisticsSetupComponent {
17
+ constructor(fb, translate, systemService) {
18
+ this.fb = fb;
19
+ this.translate = translate;
20
+ this.systemService = systemService;
21
+ this.widgetConfigChange = new EventEmitter();
22
+ this.widgetConfigStateChange = new EventEmitter();
23
+ this.setupForm = this.fb.group({
24
+ title: [this.translate.instant('eo.workspace.widget.signature.statistics.title'), [Validators.maxLength(50)]],
25
+ documentTypes: [[]],
26
+ aggregationField: [''],
27
+ status: [['signed']],
28
+ type: [[]],
29
+ from: [null],
30
+ to: [null],
31
+ });
32
+ this.yuvsigtypeCodesystem = {
33
+ id: '1291BAB91B0D49D1A9A4DFCCF49A1666',
34
+ name: 'yuvsigtype',
35
+ entries: [],
36
+ title: this.translate.instant('eo.workspace.widget.signature.statistics.type')
37
+ };
38
+ this.yuvsigstatusCodesystem = {
39
+ id: '2AD7397495F64B8C927BC952C0D77276',
40
+ name: 'yuvsigstatus',
41
+ entries: [],
42
+ title: this.translate.instant('eo.workspace.widget.signature.statistics.status')
43
+ };
44
+ this.documentTypesPicker = {
45
+ title: this.translate.instant('eo.workspace.widget.signature.statistics.documentTypes.title'),
46
+ codesystem: {},
47
+ };
48
+ this._widgetConfig = {};
49
+ this.setupForm.valueChanges.pipe(debounceTime(1000), untilDestroyed(this)).subscribe((_) => {
50
+ this.setWidgetConfig();
51
+ });
52
+ this.setupForm.statusChanges.pipe(untilDestroyed(this)).subscribe((v) => {
53
+ this.widgetConfigStateChange.emit(v);
54
+ });
55
+ this.documentTypesPicker.codesystem = this.getObjectTypes();
56
+ this.yuvsigstatusCodesystem.entries = this.systemService.getCodesystem(this.yuvsigstatusCodesystem.id).entries;
57
+ this.yuvsigtypeCodesystem.entries = this.systemService.getCodesystem(this.yuvsigtypeCodesystem.id).entries;
58
+ }
59
+ get widgetConfig() {
60
+ return this._widgetConfig;
61
+ }
62
+ set widgetConfig(wc) {
63
+ this._widgetConfig = wc;
64
+ this.setupForm.patchValue({
65
+ title: wc?.title ? wc.title : '',
66
+ documentTypes: wc?.documentTypes ? wc.documentTypes : [],
67
+ aggregationField: wc?.aggregationField ? wc.aggregationField : '',
68
+ status: wc?.status ? wc.status : ['signed'],
69
+ type: wc?.type ? wc.type : [],
70
+ from: wc?.from ? new Date(wc.from) : null,
71
+ to: wc?.to ? new Date(wc.to) : null
72
+ });
73
+ }
74
+ ngOnInit() {
75
+ this.setWidgetConfig();
76
+ }
77
+ getObjectTypes() {
78
+ const filteredObjectTypes = this.systemService.getObjectTypes().filter(objectType => objectType.supertypes.includes('yuvsigning'));
79
+ return {
80
+ entries: filteredObjectTypes.map(objectType => {
81
+ return {
82
+ id: objectType.qname,
83
+ defaultrepresentation: objectType.label,
84
+ data: objectType.qname
85
+ };
86
+ }).sort(Utils.sortValues('defaultrepresentation')),
87
+ };
88
+ }
89
+ setWidgetConfig() {
90
+ if (this.setupForm.valid) {
91
+ this._widgetConfig = {
92
+ ...this.setupForm.value,
93
+ };
94
+ this.widgetConfigChange.emit(this._widgetConfig);
95
+ }
96
+ }
97
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.4", ngImport: i0, type: SignatureStatisticsSetupComponent, deps: [{ token: i1.UntypedFormBuilder }, { token: i2.TranslateService }, { token: i2.SystemService }], target: i0.ɵɵFactoryTarget.Component }); }
98
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.0.4", type: SignatureStatisticsSetupComponent, selector: "eo-signature-statistics-setup", inputs: { widgetConfig: "widgetConfig" }, outputs: { widgetConfigChange: "widgetConfigChange", widgetConfigStateChange: "widgetConfigStateChange" }, ngImport: i0, template: "<div class=\"setup\">\n <form [formGroup]=\"setupForm\">\n <eo-form-input tabindex=\"0\" [label]=\"'eo.workspace.widget.setup.title' | translate\" [skipToggle]=\"true\"\n description=\"eo.workspace.widget.signature.statistics.title\">\n <eo-string [autocomplete]=\"true\" formControlName=\"title\"></eo-string>\n </eo-form-input>\n @if (setupForm.dirty && setupForm.get('title')?.errors) {\n <div class=\"err-msg\" [translateParams]=\"{maxlength: 50}\" translate>\n eo.form.property.maxlength\n </div>\n }\n <eo-form-input [skipToggle]=\"true\" [label]=\"'eo.workspace.widget.signature.statistics.documentTypes' | translate\">\n <eo-codesystem formControlName=\"documentTypes\" [pickerTitle]=\"documentTypesPicker.title\"\n [codesystem]=\"documentTypesPicker.codesystem\" [multiselect]=\"true\"></eo-codesystem>\n </eo-form-input>\n <eo-form-input [skipToggle]=\"true\"\n [label]=\"'eo.workspace.widget.signature.statistics.aggregationField' | translate\">\n <eo-string formControlName=\"aggregationField\">\n </eo-string>\n </eo-form-input>\n <eo-form-input [skipToggle]=\"true\" [label]=\"'eo.workspace.widget.signature.statistics.status' | translate\">\n <eo-codesystem formControlName=\"status\" [pickerTitle]=\"yuvsigstatusCodesystem.title || ''\"\n [codesystem]=\"yuvsigstatusCodesystem\" [multiselect]=\"true\"></eo-codesystem>\n </eo-form-input>\n\n <eo-form-input [skipToggle]=\"true\" [label]=\"'eo.workspace.widget.signature.statistics.type' | translate\">\n <eo-codesystem formControlName=\"type\" [pickerTitle]=\"yuvsigtypeCodesystem.title || ''\"\n [codesystem]=\"yuvsigtypeCodesystem\" [multiselect]=\"true\"></eo-codesystem>\n </eo-form-input>\n <eo-form-input [skipToggle]=\"true\" [label]=\"'eo.workspace.widget.signature.statistics.from.label' | translate\"\n [description]=\"'eo.workspace.widget.signature.statistics.from.description'\">\n <eo-date formControlName=\"from\"></eo-date>\n </eo-form-input>\n <eo-form-input [skipToggle]=\"true\" [label]=\"'eo.workspace.widget.signature.statistics.to.label' | translate\"\n [description]=\"'eo.workspace.widget.signature.statistics.to.description'\">\n <eo-date formControlName=\"to\"></eo-date>\n </eo-form-input>\n </form>\n</div>\n<div class=\"preview\">\n <eo-signature-statistics-widget [widgetConfig]=\"widgetConfig\"></eo-signature-statistics-widget>\n</div>\n", styles: [":host{display:grid;grid-template-rows:1fr;grid-template-columns:minmax(200px,400px) 1fr;grid-template-areas:\"setup preview\";height:100%}:host .setup{grid-area:setup;padding:var(--app-pane-padding);border-right:1px solid var(--panel-divider-color)}:host .setup eo-form-input{display:block;margin-bottom:var(--app-pane-padding)}:host .setup .err-msg{background-color:var(--color-error);color:var(--color-white);margin:calc(var(--app-pane-padding) / 4) 0;padding:calc(var(--app-pane-padding) / 4);border:0;border-radius:2px}:host .preview{padding:var(--app-pane-padding);pointer-events:none}\n"], dependencies: [{ kind: "directive", type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: i3.TranslateDirective, selector: "[translate],[ngx-translate]", inputs: ["translate", "translateParams"] }, { kind: "component", type: i4.FormInputComponent, selector: "eo-form-input", inputs: ["label", "tag", "description", "skipToggle", "isNull", "invalid", "disabled", "required"], outputs: ["onToggleLabel"] }, { kind: "component", type: i5.CodesystemComponent, selector: "eo-codesystem", inputs: ["situation", "pickerTitle", "placeholder", "codesystem", "multiselect", "readonly", "inputStyleClass", "emptyMessage", "filterFunction", "disablingFilterFunction"] }, { kind: "component", type: i6.DateComponent, selector: "eo-date", inputs: ["withTime", "readonly", "onlyFutureDates"] }, { kind: "component", type: i7.StringComponent, selector: "eo-string", inputs: ["autocomplete", "multiselect", "multiline", "readonly", "autofocus", "classification", "situation", "regex", "qname", "size", "minLength", "maxLength"] }, { kind: "component", type: i8.SignatureStatisticsWidgetComponent, selector: "eo-signature-statistics-widget", inputs: ["widgetConfig"] }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }] }); }
99
+ };
100
+ SignatureStatisticsSetupComponent = __decorate([
101
+ UntilDestroy()
102
+ ], SignatureStatisticsSetupComponent);
103
+ export { SignatureStatisticsSetupComponent };
104
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.4", ngImport: i0, type: SignatureStatisticsSetupComponent, decorators: [{
105
+ type: Component,
106
+ args: [{ selector: 'eo-signature-statistics-setup', template: "<div class=\"setup\">\n <form [formGroup]=\"setupForm\">\n <eo-form-input tabindex=\"0\" [label]=\"'eo.workspace.widget.setup.title' | translate\" [skipToggle]=\"true\"\n description=\"eo.workspace.widget.signature.statistics.title\">\n <eo-string [autocomplete]=\"true\" formControlName=\"title\"></eo-string>\n </eo-form-input>\n @if (setupForm.dirty && setupForm.get('title')?.errors) {\n <div class=\"err-msg\" [translateParams]=\"{maxlength: 50}\" translate>\n eo.form.property.maxlength\n </div>\n }\n <eo-form-input [skipToggle]=\"true\" [label]=\"'eo.workspace.widget.signature.statistics.documentTypes' | translate\">\n <eo-codesystem formControlName=\"documentTypes\" [pickerTitle]=\"documentTypesPicker.title\"\n [codesystem]=\"documentTypesPicker.codesystem\" [multiselect]=\"true\"></eo-codesystem>\n </eo-form-input>\n <eo-form-input [skipToggle]=\"true\"\n [label]=\"'eo.workspace.widget.signature.statistics.aggregationField' | translate\">\n <eo-string formControlName=\"aggregationField\">\n </eo-string>\n </eo-form-input>\n <eo-form-input [skipToggle]=\"true\" [label]=\"'eo.workspace.widget.signature.statistics.status' | translate\">\n <eo-codesystem formControlName=\"status\" [pickerTitle]=\"yuvsigstatusCodesystem.title || ''\"\n [codesystem]=\"yuvsigstatusCodesystem\" [multiselect]=\"true\"></eo-codesystem>\n </eo-form-input>\n\n <eo-form-input [skipToggle]=\"true\" [label]=\"'eo.workspace.widget.signature.statistics.type' | translate\">\n <eo-codesystem formControlName=\"type\" [pickerTitle]=\"yuvsigtypeCodesystem.title || ''\"\n [codesystem]=\"yuvsigtypeCodesystem\" [multiselect]=\"true\"></eo-codesystem>\n </eo-form-input>\n <eo-form-input [skipToggle]=\"true\" [label]=\"'eo.workspace.widget.signature.statistics.from.label' | translate\"\n [description]=\"'eo.workspace.widget.signature.statistics.from.description'\">\n <eo-date formControlName=\"from\"></eo-date>\n </eo-form-input>\n <eo-form-input [skipToggle]=\"true\" [label]=\"'eo.workspace.widget.signature.statistics.to.label' | translate\"\n [description]=\"'eo.workspace.widget.signature.statistics.to.description'\">\n <eo-date formControlName=\"to\"></eo-date>\n </eo-form-input>\n </form>\n</div>\n<div class=\"preview\">\n <eo-signature-statistics-widget [widgetConfig]=\"widgetConfig\"></eo-signature-statistics-widget>\n</div>\n", styles: [":host{display:grid;grid-template-rows:1fr;grid-template-columns:minmax(200px,400px) 1fr;grid-template-areas:\"setup preview\";height:100%}:host .setup{grid-area:setup;padding:var(--app-pane-padding);border-right:1px solid var(--panel-divider-color)}:host .setup eo-form-input{display:block;margin-bottom:var(--app-pane-padding)}:host .setup .err-msg{background-color:var(--color-error);color:var(--color-white);margin:calc(var(--app-pane-padding) / 4) 0;padding:calc(var(--app-pane-padding) / 4);border:0;border-radius:2px}:host .preview{padding:var(--app-pane-padding);pointer-events:none}\n"] }]
107
+ }], ctorParameters: () => [{ type: i1.UntypedFormBuilder }, { type: i2.TranslateService }, { type: i2.SystemService }], propDecorators: { widgetConfigChange: [{
108
+ type: Output
109
+ }], widgetConfigStateChange: [{
110
+ type: Output
111
+ }], widgetConfig: [{
112
+ type: Input
113
+ }] } });
114
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lnbmF0dXJlLXN0YXRpc3RpY3Mtc2V0dXAuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9lby1jbGllbnQvZGFzaGJvYXJkL3dpZGdldHMvc2lnbmF0dXJlLXN0YXRpc3RpY3Mtd2lkZ2V0L3NpZ25hdHVyZS1zdGF0aXN0aWNzLXNldHVwL3NpZ25hdHVyZS1zdGF0aXN0aWNzLXNldHVwLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvZW8tY2xpZW50L2Rhc2hib2FyZC93aWRnZXRzL3NpZ25hdHVyZS1zdGF0aXN0aWNzLXdpZGdldC9zaWduYXR1cmUtc3RhdGlzdGljcy1zZXR1cC9zaWduYXR1cmUtc3RhdGlzdGljcy1zZXR1cC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFDLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFVLE1BQU0sRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUM3RSxPQUFPLEVBQTBELFVBQVUsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBQ25HLE9BQU8sRUFBb0UsS0FBSyxFQUFDLE1BQU0sY0FBYyxDQUFDO0FBQ3RHLE9BQU8sRUFBQyxZQUFZLEVBQUUsY0FBYyxFQUFDLE1BQU0sdUJBQXVCLENBQUM7QUFHbkUsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLE1BQU0sQ0FBQzs7Ozs7Ozs7OztBQVEzQixJQUFNLGlDQUFpQyxHQUF2QyxNQUFNLGlDQUFpQztJQXFDNUMsWUFDVSxFQUFzQixFQUN0QixTQUEyQixFQUMzQixhQUE0QjtRQUY1QixPQUFFLEdBQUYsRUFBRSxDQUFvQjtRQUN0QixjQUFTLEdBQVQsU0FBUyxDQUFrQjtRQUMzQixrQkFBYSxHQUFiLGFBQWEsQ0FBZTtRQXJDNUIsdUJBQWtCLEdBQUcsSUFBSSxZQUFZLEVBQTZCLENBQUM7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QUMzQixDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyx1QkFBdUIsQ0FBQyxDQUFDO1NBQ3BDLENBQUM7SUFDbkIsQ0FBQztJQUVPLGVBQWU7UUFDckIsSUFBSSxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssRUFBRSxDQUFDO1lBQ3pCLElBQUksQ0FBQyxhQUFhLEdBQUc7Z0JBQ25CLEdBQUksSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLO2FBQ3pCLENBQUM7WUFDRixJQUFJLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUNuRCxDQUFDO0lBQ0gsQ0FBQzs4R0E5RlUsaUNBQWlDO2tHQUFqQyxpQ0FBaUMsME5DZDlDLGdoRkEwQ0E7O0FENUJhLGlDQUFpQztJQU43QyxZQUFZLEVBQUU7R0FNRixpQ0FBaUMsQ0ErRjdDOzsyRkEvRlksaUNBQWlDO2tCQUw3QyxTQUFTOytCQUNFLCtCQUErQjtrSkFPL0Isa0JBQWtCO3NCQUEzQixNQUFNO2dCQUNHLHVCQUF1QjtzQkFBaEMsTUFBTTtnQkFxRE0sWUFBWTtzQkFBeEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkluaXQsIE91dHB1dH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0Zvcm1Db250cm9sU3RhdHVzLCBVbnR5cGVkRm9ybUJ1aWxkZXIsIFVudHlwZWRGb3JtR3JvdXAsIFZhbGlkYXRvcnN9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7SUNvZGVTeXN0ZW0sIElDb2RlU3lzdGVtc0VudHJpZXMsIFN5c3RlbVNlcnZpY2UsIFRyYW5zbGF0ZVNlcnZpY2UsIFV0aWxzfSBmcm9tICdAZW8tc2RrL2NvcmUnO1xuaW1wb3J0IHtVbnRpbERlc3Ryb3ksIHVudGlsRGVzdHJveWVkfSBmcm9tICdAbmduZWF0L3VudGlsLWRlc3Ryb3knO1xuaW1wb3J0IHtJV2lkZ2V0U2V0dXBDb21wb25lbnR9IGZyb20gJ0B5dXV2aXMvd2lkZ2V0LWdyaWQnO1xuaW1wb3J0IHtTaWduYXR1cmVTdGF0aXN0aWNzQ29uZmlnfSBmcm9tICcuLi9zaWduYXR1cmUtc3RhdGlzdGljcy5pbnRlcmZhY2UnO1xuaW1wb3J0IHtkZWJvdW5jZVRpbWV9IGZyb20gJ3J4anMnO1xuXG5AVW50aWxEZXN0cm95KClcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2VvLXNpZ25hdHVyZS1zdGF0aXN0aWNzLXNldHVwJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3NpZ25hdHVyZS1zdGF0aXN0aWNzLXNldHVwLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vc2lnbmF0dXJlLXN0YXRpc3RpY3Mtc2V0dXAuY29tcG9uZW50LnNjc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgU2lnbmF0dXJlU3RhdGlzdGljc1NldHVwQ29tcG9uZW50IGltcGxlbWVudHMgSVdpZGdldFNldHVwQ29tcG9uZW50LCBPbkluaXQge1xuXG5cbiAgQE91dHB1dCgpIHdpZGdldENvbmZpZ0NoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8U2lnbmF0dXJlU3RhdGlzdGljc0NvbmZpZz4oKTtcbiAgQE91dHB1dCgpIHdpZGdldENvbmZpZ1N0YXRlQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxGb3JtQ29udHJvbFN0YXR1cz4oKTtcblxuICBzZXR1cEZvcm06IFVudHlwZWRGb3JtR3JvdXAgPSB0aGlzLmZiLmdyb3VwKHtcbiAgICB0aXRsZTogW3RoaXMudHJhbnNsYXRlLmluc3RhbnQoJ2VvLndvcmtzcGFjZS53aWRnZXQuc2lnbmF0dXJlLnN0YXRpc3RpY3MudGl0bGUnKSwgW1ZhbGlkYXRvcnMubWF4TGVuZ3RoKDUwKV1dLFxuICAgIGRvY3VtZW50VHlwZXM6IFtbXV0sXG4gICAgYWdncmVnYXRpb25GaWVsZDogWycnXSxcbiAgICBzdGF0dXM6IFtbJ3NpZ25lZCddXSxcbiAgICB0eXBlOiBbW11dLFxuICAgIGZyb206IFtudWxsXSxcbiAgICB0bzogW251bGxdLFxuICB9KTtcblxuICB5dXZzaWd0eXBlQ29kZXN5c3RlbTogSUNvZGVTeXN0ZW0gPSB7XG4gICAgaWQ6ICcxMjkxQkFCOTFCMEQ0OUQxQTlBNERGQ0NGNDlBMTY2NicsXG4gICAgbmFtZTogJ3l1dnNpZ3R5cGUnLFxuICAgIGVudHJpZXM6IFtdLFxuICAgIHRpdGxlOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdlby53b3Jrc3BhY2Uud2lkZ2V0LnNpZ25hdHVyZS5zdGF0aXN0aWNzLnR5cGUnKVxuICB9IGFzIElDb2RlU3lzdGVtO1xuXG4gIHl1dnNpZ3N0YXR1c0NvZGVzeXN0ZW06IElDb2RlU3lzdGVtID0ge1xuICAgIGlkOiAnMkFENzM5NzQ5NUY2NEI4QzkyN0JDOTUyQzBENzcyNzYnLFxuICAgIG5hbWU6ICd5dXZzaWdzdGF0dXMnLFxuICAgIGVudHJpZXM6IFtdLFxuICAgIHRpdGxlOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdlby53b3Jrc3BhY2Uud2lkZ2V0LnNpZ25hdHVyZS5zdGF0aXN0aWNzLnN0YXR1cycpXG4gIH0gYXMgSUNvZGVTeXN0ZW07XG5cbiAgZG9jdW1lbnRUeXBlc1BpY2tlciA9IHtcbiAgICB0aXRsZTogdGhpcy50cmFuc2xhdGUuaW5zdGFudCgnZW8ud29ya3NwYWNlLndpZGdldC5zaWduYXR1cmUuc3RhdGlzdGljcy5kb2N1bWVudFR5cGVzLnRpdGxlJyksXG4gICAgY29kZXN5c3RlbToge30gYXMgSUNvZGVTeXN0ZW0sXG4gIH07XG5cbiAgcHJpdmF0ZSBfd2lkZ2V0Q29uZmlnOiBTaWduYXR1cmVTdGF0aXN0aWNzQ29uZmlnID0ge30gYXMgU2lnbmF0dXJlU3RhdGlzdGljc0NvbmZpZztcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGZiOiBVbnR5cGVkRm9ybUJ1aWxkZXIsXG4gICAgcHJpdmF0ZSB0cmFuc2xhdGU6IFRyYW5zbGF0ZVNlcnZpY2UsXG4gICAgcHJpdmF0ZSBzeXN0ZW1TZXJ2aWNlOiBTeXN0ZW1TZXJ2aWNlXG4gICkge1xuICAgIHRoaXMuc2V0dXBGb3JtLnZhbHVlQ2hhbmdlcy5waXBlKGRlYm91bmNlVGltZSgxMDAwKSwgdW50aWxEZXN0cm95ZWQodGhpcykpLnN1YnNjcmliZSgoXykgPT4ge1xuICAgICAgdGhpcy5zZXRXaWRnZXRDb25maWcoKTtcbiAgICB9KTtcbiAgICB0aGlzLnNldHVwRm9ybS5zdGF0dXNDaGFuZ2VzLnBpcGUodW50aWxEZXN0cm95ZWQodGhpcykpLnN1YnNjcmliZSgodikgPT4ge1xuICAgICAgdGhpcy53aWRnZXRDb25maWdTdGF0ZUNoYW5nZS5lbWl0KHYpO1xuICAgIH0pO1xuICAgIHRoaXMuZG9jdW1lbnRUeXBlc1BpY2tlci5jb2Rlc3lzdGVtID0gdGhpcy5nZXRPYmplY3RUeXBlcygpO1xuICAgIHRoaXMueXV2c2lnc3RhdHVzQ29kZXN5c3RlbS5lbnRyaWVzID0gdGhpcy5zeXN0ZW1TZXJ2aWNlLmdldENvZGVzeXN0ZW0odGhpcy55dXZzaWdzdGF0dXNDb2Rlc3lzdGVtLmlkKS5lbnRyaWVzO1xuICAgIHRoaXMueXV2c2lndHlwZUNvZGVzeXN0ZW0uZW50cmllcyA9IHRoaXMuc3lzdGVtU2VydmljZS5nZXRDb2Rlc3lzdGVtKHRoaXMueXV2c2lndHlwZUNvZGVzeXN0ZW0uaWQpLmVudHJpZXM7XG4gIH1cblxuICBnZXQgd2lkZ2V0Q29uZmlnKCk6IFNpZ25hdHVyZVN0YXRpc3RpY3NDb25maWcge1xuICAgIHJldHVybiB0aGlzLl93aWRnZXRDb25maWc7XG4gIH1cblxuICBASW5wdXQoKSBzZXQgd2lkZ2V0Q29uZmlnKHdjOiBTaWduYXR1cmVTdGF0aXN0aWNzQ29uZmlnKSB7XG4gICAgdGhpcy5fd2lkZ2V0Q29uZmlnID0gd2M7XG4gICAgdGhpcy5zZXR1cEZvcm0ucGF0Y2hWYWx1ZSh7XG4gICAgICB0aXRsZTogd2M/LnRpdGxlID8gd2MudGl0bGUgOiAnJyxcbiAgICAgIGRvY3VtZW50VHlwZXM6IHdjPy5kb2N1bWVudFR5cGVzID8gd2MuZG9jdW1lbnRUeXBlcyA6IFtdLFxuICAgICAgYWdncmVnYXRpb25GaWVsZDogd2M/LmFnZ3JlZ2F0aW9uRmllbGQgPyB3Yy5hZ2dyZWdhdGlvbkZpZWxkIDogJycsXG4gICAgICBzdGF0dXM6IHdjPy5zdGF0dXMgPyB3Yy5zdGF0dXMgOiBbJ3NpZ25lZCddLFxuICAgICAgdHlwZTogd2M/LnR5cGUgPyB3Yy50eXBlIDogW10sXG4gICAgICBmcm9tOiB3Yz8uZnJvbSA/IG5ldyBEYXRlKHdjLmZyb20pIDogbnVsbCxcbiAgICAgIHRvOiB3Yz8udG8gPyBuZXcgRGF0ZSh3Yy50bykgOiBudWxsXG4gICAgfSk7XG4gIH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLnNldFdpZGdldENvbmZpZygpO1xuICB9XG5cbiAgZ2V0T2JqZWN0VHlwZXMoKTogSUNvZGVTeXN0ZW0ge1xuICAgIGNvbnN0IGZpbHRlcmVkT2JqZWN0VHlwZXMgPSB0aGlzLnN5c3RlbVNlcnZpY2UuZ2V0T2JqZWN0VHlwZXMoKS5maWx0ZXIob2JqZWN0VHlwZSA9PiBvYmplY3RUeXBlLnN1cGVydHlwZXMuaW5jbHVkZXMoJ3l1dnNpZ25pbmcnKSk7XG4gICAgcmV0dXJuIHtcbiAgICAgIGVudHJpZXM6IGZpbHRlcmVkT2JqZWN0VHlwZXMubWFwKG9iamVjdFR5cGUgPT4ge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgIGlkOiBvYmplY3RUeXBlLnFuYW1lLFxuICAgICAgICAgIGRlZmF1bHRyZXByZXNlbnRhdGlvbjogb2JqZWN0VHlwZS5sYWJlbCxcbiAgICAgICAgICBkYXRhOiBvYmplY3RUeXBlLnFuYW1lXG4gICAgICAgIH0gYXMgSUNvZGVTeXN0ZW1zRW50cmllcztcbiAgICAgIH0pLnNvcnQoVXRpbHMuc29ydFZhbHVlcygnZGVmYXVsdHJlcHJlc2VudGF0aW9uJykpLFxuICAgIH0gYXMgSUNvZGVTeXN0ZW07XG4gIH1cblxuICBwcml2YXRlIHNldFdpZGdldENvbmZpZygpIHtcbiAgICBpZiAodGhpcy5zZXR1cEZvcm0udmFsaWQpIHtcbiAgICAgIHRoaXMuX3dpZGdldENvbmZpZyA9IHtcbiAgICAgICAgLi4uIHRoaXMuc2V0dXBGb3JtLnZhbHVlLFxuICAgICAgfTtcbiAgICAgIHRoaXMud2lkZ2V0Q29uZmlnQ2hhbmdlLmVtaXQodGhpcy5fd2lkZ2V0Q29uZmlnKTtcbiAgICB9XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJzZXR1cFwiPlxuICA8Zm9ybSBbZm9ybUdyb3VwXT1cInNldHVwRm9ybVwiPlxuICAgIDxlby1mb3JtLWlucHV0IHRhYmluZGV4PVwiMFwiIFtsYWJlbF09XCInZW8ud29ya3NwYWNlLndpZGdldC5zZXR1cC50aXRsZScgfCB0cmFuc2xhdGVcIiBbc2tpcFRvZ2dsZV09XCJ0cnVlXCJcbiAgICAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbj1cImVvLndvcmtzcGFjZS53aWRnZXQuc2lnbmF0dXJlLnN0YXRpc3RpY3MudGl0bGVcIj5cbiAgICAgIDxlby1zdHJpbmcgW2F1dG9jb21wbGV0ZV09XCJ0cnVlXCIgZm9ybUNvbnRyb2xOYW1lPVwidGl0bGVcIj48L2VvLXN0cmluZz5cbiAgICA8L2VvLWZvcm0taW5wdXQ+XG4gICAgQGlmIChzZXR1cEZvcm0uZGlydHkgJiYgc2V0dXBGb3JtLmdldCgndGl0bGUnKT8uZXJyb3JzKSB7XG4gICAgICA8ZGl2IGNsYXNzPVwiZXJyLW1zZ1wiIFt0cmFuc2xhdGVQYXJhbXNdPVwie21heGxlbmd0aDogNTB9XCIgdHJhbnNsYXRlPlxuICAgICAgICBlby5mb3JtLnByb3BlcnR5Lm1heGxlbmd0aFxuICAgICAgPC9kaXY+XG4gICAgfVxuICAgIDxlby1mb3JtLWlucHV0IFtza2lwVG9nZ2xlXT1cInRydWVcIiBbbGFiZWxdPVwiJ2VvLndvcmtzcGFjZS53aWRnZXQuc2lnbmF0dXJlLnN0YXRpc3RpY3MuZG9jdW1lbnRUeXBlcycgfCB0cmFuc2xhdGVcIj5cbiAgICAgIDxlby1jb2Rlc3lzdGVtIGZvcm1Db250cm9sTmFtZT1cImRvY3VtZW50VHlwZXNcIiBbcGlja2VyVGl0bGVdPVwiZG9jdW1lbnRUeXBlc1BpY2tlci50aXRsZVwiXG4gICAgICAgICAgICAgICAgICAgICBbY29kZXN5c3RlbV09XCJkb2N1bWVudFR5cGVzUGlja2VyLmNvZGVzeXN0ZW1cIiBbbXVsdGlzZWxlY3RdPVwidHJ1ZVwiPjwvZW8tY29kZXN5c3RlbT5cbiAgICA8L2VvLWZvcm0taW5wdXQ+XG4gICAgPGVvLWZvcm0taW5wdXQgW3NraXBUb2dnbGVdPVwidHJ1ZVwiXG4gICAgICAgICAgICAgICAgICAgW2xhYmVsXT1cIidlby53b3Jrc3BhY2Uud2lkZ2V0LnNpZ25hdHVyZS5zdGF0aXN0aWNzLmFnZ3JlZ2F0aW9uRmllbGQnIHwgdHJhbnNsYXRlXCI+XG4gICAgICA8ZW8tc3RyaW5nIGZvcm1Db250cm9sTmFtZT1cImFnZ3JlZ2F0aW9uRmllbGRcIj5cbiAgICAgIDwvZW8tc3RyaW5nPlxuICAgIDwvZW8tZm9ybS1pbnB1dD5cbiAgICA8ZW8tZm9ybS1pbnB1dCBbc2tpcFRvZ2dsZV09XCJ0cnVlXCIgW2xhYmVsXT1cIidlby53b3Jrc3BhY2Uud2lkZ2V0LnNpZ25hdHVyZS5zdGF0aXN0aWNzLnN0YXR1cycgfCB0cmFuc2xhdGVcIj5cbiAgICAgIDxlby1jb2Rlc3lzdGVtIGZvcm1Db250cm9sTmFtZT1cInN0YXR1c1wiIFtwaWNrZXJUaXRsZV09XCJ5dXZzaWdzdGF0dXNDb2Rlc3lzdGVtLnRpdGxlIHx8ICcnXCJcbiAgICAgICAgICAgICAgICAgICAgIFtjb2Rlc3lzdGVtXT1cInl1dnNpZ3N0YXR1c0NvZGVzeXN0ZW1cIiBbbXVsdGlzZWxlY3RdPVwidHJ1ZVwiPjwvZW8tY29kZXN5c3RlbT5cbiAgICA8L2VvLWZvcm0taW5wdXQ+XG5cbiAgICA8ZW8tZm9ybS1pbnB1dCBbc2tpcFRvZ2dsZV09XCJ0cnVlXCIgW2xhYmVsXT1cIidlby53b3Jrc3BhY2Uud2lkZ2V0LnNpZ25hdHVyZS5zdGF0aXN0aWNzLnR5cGUnIHwgdHJhbnNsYXRlXCI+XG4gICAgICA8ZW8tY29kZXN5c3RlbSBmb3JtQ29udHJvbE5hbWU9XCJ0eXBlXCIgW3BpY2tlclRpdGxlXT1cInl1dnNpZ3R5cGVDb2Rlc3lzdGVtLnRpdGxlIHx8ICcnXCJcbiAgICAgICAgICAgICAgICAgICAgIFtjb2Rlc3lzdGVtXT1cInl1dnNpZ3R5cGVDb2Rlc3lzdGVtXCIgW211bHRpc2VsZWN0XT1cInRydWVcIj48L2VvLWNvZGVzeXN0ZW0+XG4gICAgPC9lby1mb3JtLWlucHV0PlxuICAgIDxlby1mb3JtLWlucHV0IFtza2lwVG9nZ2xlXT1cInRydWVcIiBbbGFiZWxdPVwiJ2VvLndvcmtzcGFjZS53aWRnZXQuc2lnbmF0dXJlLnN0YXRpc3RpY3MuZnJvbS5sYWJlbCcgfCB0cmFuc2xhdGVcIlxuICAgICAgICAgICAgICAgICAgIFtkZXNjcmlwdGlvbl09XCInZW8ud29ya3NwYWNlLndpZGdldC5zaWduYXR1cmUuc3RhdGlzdGljcy5mcm9tLmRlc2NyaXB0aW9uJ1wiPlxuICAgICAgPGVvLWRhdGUgZm9ybUNvbnRyb2xOYW1lPVwiZnJvbVwiPjwvZW8tZGF0ZT5cbiAgICA8L2VvLWZvcm0taW5wdXQ+XG4gICAgPGVvLWZvcm0taW5wdXQgW3NraXBUb2dnbGVdPVwidHJ1ZVwiIFtsYWJlbF09XCInZW8ud29ya3NwYWNlLndpZGdldC5zaWduYXR1cmUuc3RhdGlzdGljcy50by5sYWJlbCcgfCB0cmFuc2xhdGVcIlxuICAgICAgICAgICAgICAgICAgIFtkZXNjcmlwdGlvbl09XCInZW8ud29ya3NwYWNlLndpZGdldC5zaWduYXR1cmUuc3RhdGlzdGljcy50by5kZXNjcmlwdGlvbidcIj5cbiAgICAgIDxlby1kYXRlIGZvcm1Db250cm9sTmFtZT1cInRvXCI+PC9lby1kYXRlPlxuICAgIDwvZW8tZm9ybS1pbnB1dD5cbiAgPC9mb3JtPlxuPC9kaXY+XG48ZGl2IGNsYXNzPVwicHJldmlld1wiPlxuICA8ZW8tc2lnbmF0dXJlLXN0YXRpc3RpY3Mtd2lkZ2V0IFt3aWRnZXRDb25maWddPVwid2lkZ2V0Q29uZmlnXCI+PC9lby1zaWduYXR1cmUtc3RhdGlzdGljcy13aWRnZXQ+XG48L2Rpdj5cbiJdfQ==
@@ -0,0 +1,80 @@
1
+ import { __decorate } from "tslib";
2
+ import { Component, Input } from '@angular/core';
3
+ import { UntilDestroy } from '@ngneat/until-destroy';
4
+ import * as i0 from "@angular/core";
5
+ import * as i1 from "@eo-sdk/core";
6
+ import * as i2 from "@angular/cdk/clipboard";
7
+ import * as i3 from "@ngx-translate/core";
8
+ import * as i4 from "../../../../eo-framework/ui/eo-icon/eo-icon.component";
9
+ import * as i5 from "../../../../eo-framework/ui/loading-spinner/loading-spinner.component";
10
+ let SignatureStatisticsWidgetComponent = class SignatureStatisticsWidgetComponent {
11
+ constructor(signingService, clipboard, translate) {
12
+ this.signingService = signingService;
13
+ this.clipboard = clipboard;
14
+ this.translate = translate;
15
+ this.statisticsResult = { signaturesAmount: null, documentsAmount: null, aggregations: [] };
16
+ this.refreshingRequest = false;
17
+ this._widgetConfig = {};
18
+ }
19
+ get widgetConfig() {
20
+ return this._widgetConfig;
21
+ }
22
+ set widgetConfig(statisticsConfig) {
23
+ if (statisticsConfig) {
24
+ this._widgetConfig = statisticsConfig;
25
+ }
26
+ this.getStatistics();
27
+ }
28
+ ngOnInit() { }
29
+ getStatistics() {
30
+ this.refreshingRequest = true;
31
+ this.statisticsResult = {};
32
+ this.signingService.getSignatureStatistics(this.widgetConfig).subscribe(data => {
33
+ this.statisticsResult.signaturesAmount = data.countSignatures;
34
+ this.statisticsResult.documentsAmount = data.countObjects;
35
+ if (data.aggregations) {
36
+ this.statisticsResult.aggregations = [];
37
+ for (const [key, value] of Object.entries(data.aggregations)) {
38
+ this.statisticsResult.aggregations.push({ key: key, value: value });
39
+ }
40
+ }
41
+ this.refreshingRequest = false;
42
+ }, err => {
43
+ this.statisticsResult = {};
44
+ this.refreshingRequest = false;
45
+ });
46
+ }
47
+ copyToClipboard() {
48
+ let table = `<table>
49
+ <tr>
50
+ <td translate>${this.translate.instant('eo.workspace.widget.signature.statistics.totalDocuments')}</td>
51
+ <td>${this.statisticsResult.documentsAmount}</td>
52
+ </tr>
53
+ <br>
54
+ <tr>
55
+ <td translate>${this.translate.instant('eo.workspace.widget.signature.statistics.totalSignatures')}</td>
56
+ <td>${this.statisticsResult.signaturesAmount}</td>
57
+ </tr>`;
58
+ for (let agg of this.statisticsResult.aggregations) {
59
+ table += `<tr>
60
+ <td>${agg.key}</td>
61
+ <td>${agg.value}</td>
62
+ </tr>`;
63
+ }
64
+ table += '</table>';
65
+ this.clipboard.copy(table);
66
+ }
67
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.4", ngImport: i0, type: SignatureStatisticsWidgetComponent, deps: [{ token: i1.SigningService }, { token: i2.Clipboard }, { token: i1.TranslateService }], target: i0.ɵɵFactoryTarget.Component }); }
68
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.0.4", type: SignatureStatisticsWidgetComponent, selector: "eo-signature-statistics-widget", inputs: { widgetConfig: "widgetConfig" }, ngImport: i0, template: "<header>\n <div class=\"header-title\">\n @if (widgetConfig.title) {\n <div class=\"title\">\n {{ widgetConfig.title }}\n </div>\n }\n <div class=\"icons-title\">\n <eo-icon class=\"button primary\" [iconSrc]=\"'assets/_default/svg/ic_content-copy.svg'\" (click)=\"copyToClipboard()\"\n [iconTitle]=\"('eo.clipboard.title'| translate)\"></eo-icon>\n <eo-icon class=\"button primary\" [iconSrc]=\"'assets/_default/svg/ic_refresh.svg'\" (click)=\"getStatistics()\"\n [iconTitle]=\"('eo.widget.hitlist.tooltip.refresh'| translate)\"></eo-icon>\n </div>\n </div>\n</header>\n\n@if (refreshingRequest) {\n <main class=\"loader-overlay__mask\">\n <eo-loading-spinner [size]=\"'large'\"></eo-loading-spinner>\n </main>\n} @else if (statisticsResult && !refreshingRequest) {\n <main class=\"info\">\n <div>\n <table>\n <tr class=\"total\">\n <td translate>eo.workspace.widget.signature.statistics.totalDocuments</td>\n <td>{{ statisticsResult.documentsAmount }}</td>\n </tr>\n <br>\n <tr class=\"total\">\n <td translate>eo.workspace.widget.signature.statistics.totalSignatures</td>\n <td>{{ statisticsResult.signaturesAmount }}</td>\n </tr>\n @for (agg of statisticsResult.aggregations; track $index) {\n <tr>\n <td>{{ agg.key }}</td>\n <td class=\"count-value\">{{ agg.value }}</td>\n </tr>\n }\n </table>\n </div>\n </main>\n}\n", styles: [":host-context(.editMode) .info:not(.visible){opacity:1}:host{height:100%;display:grid;grid-template-rows:auto 1fr;grid-template-areas:\"header\" \"main\";background-color:var(--panel-background);color:var(--text-color-body)}:host header{height:40px;display:inline-grid;color:#fff}:host header .header-title{background-color:var(--color-primary-2);display:flex;justify-content:space-between;align-items:center}:host header .title{text-align:center;flex-grow:1;justify-content:center}:host header .icons-title{justify-content:flex-end;display:flex;gap:3px;position:relative;align-items:center;right:13px}:host header .icons-title eo-icon.button.primary{color:rgba(var(--color-white-rgb),.5)}:host header .icons-title eo-icon.button.primary:hover{cursor:pointer;color:var(--color-white)}:host main{grid-area:main}:host main.loader-overlay__mask{display:flex;width:100%;height:100%;flex-flow:column;align-items:center;justify-content:center;background:rgba(var(--color-white-rgb),.8);-webkit-animation:eoFadeIn .2s;animation:eoFadeIn .2s}:host main div{display:flex;justify-content:center;padding-top:12px}:host main div table .total{font-weight:700}:host main div table .count-value{text-align:right}:host main.info{overflow-y:auto}\n"], dependencies: [{ kind: "directive", type: i3.TranslateDirective, selector: "[translate],[ngx-translate]", inputs: ["translate", "translateParams"] }, { kind: "component", type: i4.EoIconComponent, selector: "eo-icon", inputs: ["objectType", "iconId", "iconSrc", "badge", "iconTitle"] }, { kind: "component", type: i5.LoadingSpinnerComponent, selector: "eo-loading-spinner", inputs: ["size", "mode"] }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }] }); }
69
+ };
70
+ SignatureStatisticsWidgetComponent = __decorate([
71
+ UntilDestroy()
72
+ ], SignatureStatisticsWidgetComponent);
73
+ export { SignatureStatisticsWidgetComponent };
74
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.4", ngImport: i0, type: SignatureStatisticsWidgetComponent, decorators: [{
75
+ type: Component,
76
+ args: [{ selector: 'eo-signature-statistics-widget', template: "<header>\n <div class=\"header-title\">\n @if (widgetConfig.title) {\n <div class=\"title\">\n {{ widgetConfig.title }}\n </div>\n }\n <div class=\"icons-title\">\n <eo-icon class=\"button primary\" [iconSrc]=\"'assets/_default/svg/ic_content-copy.svg'\" (click)=\"copyToClipboard()\"\n [iconTitle]=\"('eo.clipboard.title'| translate)\"></eo-icon>\n <eo-icon class=\"button primary\" [iconSrc]=\"'assets/_default/svg/ic_refresh.svg'\" (click)=\"getStatistics()\"\n [iconTitle]=\"('eo.widget.hitlist.tooltip.refresh'| translate)\"></eo-icon>\n </div>\n </div>\n</header>\n\n@if (refreshingRequest) {\n <main class=\"loader-overlay__mask\">\n <eo-loading-spinner [size]=\"'large'\"></eo-loading-spinner>\n </main>\n} @else if (statisticsResult && !refreshingRequest) {\n <main class=\"info\">\n <div>\n <table>\n <tr class=\"total\">\n <td translate>eo.workspace.widget.signature.statistics.totalDocuments</td>\n <td>{{ statisticsResult.documentsAmount }}</td>\n </tr>\n <br>\n <tr class=\"total\">\n <td translate>eo.workspace.widget.signature.statistics.totalSignatures</td>\n <td>{{ statisticsResult.signaturesAmount }}</td>\n </tr>\n @for (agg of statisticsResult.aggregations; track $index) {\n <tr>\n <td>{{ agg.key }}</td>\n <td class=\"count-value\">{{ agg.value }}</td>\n </tr>\n }\n </table>\n </div>\n </main>\n}\n", styles: [":host-context(.editMode) .info:not(.visible){opacity:1}:host{height:100%;display:grid;grid-template-rows:auto 1fr;grid-template-areas:\"header\" \"main\";background-color:var(--panel-background);color:var(--text-color-body)}:host header{height:40px;display:inline-grid;color:#fff}:host header .header-title{background-color:var(--color-primary-2);display:flex;justify-content:space-between;align-items:center}:host header .title{text-align:center;flex-grow:1;justify-content:center}:host header .icons-title{justify-content:flex-end;display:flex;gap:3px;position:relative;align-items:center;right:13px}:host header .icons-title eo-icon.button.primary{color:rgba(var(--color-white-rgb),.5)}:host header .icons-title eo-icon.button.primary:hover{cursor:pointer;color:var(--color-white)}:host main{grid-area:main}:host main.loader-overlay__mask{display:flex;width:100%;height:100%;flex-flow:column;align-items:center;justify-content:center;background:rgba(var(--color-white-rgb),.8);-webkit-animation:eoFadeIn .2s;animation:eoFadeIn .2s}:host main div{display:flex;justify-content:center;padding-top:12px}:host main div table .total{font-weight:700}:host main div table .count-value{text-align:right}:host main.info{overflow-y:auto}\n"] }]
77
+ }], ctorParameters: () => [{ type: i1.SigningService }, { type: i2.Clipboard }, { type: i1.TranslateService }], propDecorators: { widgetConfig: [{
78
+ type: Input
79
+ }] } });
80
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lnbmF0dXJlLXN0YXRpc3RpY3Mtd2lkZ2V0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvZW8tY2xpZW50L2Rhc2hib2FyZC93aWRnZXRzL3NpZ25hdHVyZS1zdGF0aXN0aWNzLXdpZGdldC9zaWduYXR1cmUtc3RhdGlzdGljcy13aWRnZXQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9lby1jbGllbnQvZGFzaGJvYXJkL3dpZGdldHMvc2lnbmF0dXJlLXN0YXRpc3RpY3Mtd2lkZ2V0L3NpZ25hdHVyZS1zdGF0aXN0aWNzLXdpZGdldC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFDLFNBQVMsRUFBRSxLQUFLLEVBQVMsTUFBTSxlQUFlLENBQUM7QUFFdkQsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLHVCQUF1QixDQUFDOzs7Ozs7O0FBVzVDLElBQU0sa0NBQWtDLEdBQXhDLE1BQU0sa0NBQWtDO0lBTzdDLFlBQW9CLGNBQThCLEVBQzlCLFNBQW9CLEVBQ3BCLFNBQTJCO1FBRjNCLG1CQUFjLEdBQWQsY0FBYyxDQUFnQjtRQUM5QixjQUFTLEdBQVQsU0FBUyxDQUFXO1FBQ3BCLGNBQVMsR0FBVCxTQUFTLENBQWtCO1FBUC9DLHFCQUFnQixHQUFxQixFQUFDLGdCQUFnQixFQUFFLElBQUksRUFBRSxlQUFlLEVBQUUsSUFBSSxFQUFFLFlBQVksRUFBRSxFQUFFLEVBQUMsQ0FBQztRQUN2RyxzQkFBaUIsR0FBRyxLQUFLLENBQUM7UUFFbEIsa0JBQWEsR0FBOEIsRUFBK0IsQ0FBQztJQUtuRixDQUFDO0lBRUQsSUFBSSxZQUFZO1FBQ2QsT0FBTyxJQUFJLENBQUMsYUFBYSxDQUFDO0lBQzVCLENBQUM7SUFFRCxJQUFhLFlBQVksQ0FBQyxnQkFBdUQ7UUFDL0UsSUFBSSxnQkFBZ0IsRUFBRSxDQUFDO1lBQ3JCLElBQUksQ0FBQyxhQUFhLEdBQUcsZ0JBQWdCLENBQUM7UUFDeEMsQ0FBQztRQUNELElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztJQUN2QixDQUFDO0lBRUQsUUFBUSxLQUFXLENBQUM7SUFFcEIsYUFBYTtRQUNYLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxJQUFJLENBQUM7UUFDOUIsSUFBSSxDQUFDLGdCQUFnQixHQUFHLEVBQXNCLENBQUM7UUFDL0MsSUFBSSxDQUFDLGNBQWMsQ0FBQyxzQkFBc0IsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFO1lBQzdFLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxnQkFBZ0IsR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDO1lBQzlELElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxlQUFlLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQztZQUMxRCxJQUFJLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztnQkFDdEIsSUFBSSxDQUFDLGdCQUFnQixDQUFDLFlBQVksR0FBRyxFQUFFLENBQUM7Z0JBQ3hDLEtBQUssTUFBTSxDQUFDLEdBQUcsRUFBRSxLQUFLLENBQUMsSUFBSSxNQUFNLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsRUFBRSxDQUFDO29CQUM3RCxJQUFJLENBQUMsZ0JBQWdCLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxFQUFDLEdBQUcsRUFBRSxHQUFHLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBQyxDQUFDLENBQUM7Z0JBQ3BFLENBQUM7WUFDSCxDQUFDO1lBQ0QsSUFBSSxDQUFDLGlCQUFpQixHQUFHLEtBQUssQ0FBQztRQUNqQyxDQUFDLEVBQUUsR0FBRyxDQUFDLEVBQUU7WUFDUCxJQUFJLENBQUMsZ0JBQWdCLEdBQUcsRUFBc0IsQ0FBQztZQUMvQyxJQUFJLENBQUMsaUJBQWlCLEdBQUcsS0FBSyxDQUFDO1FBQ2pDLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELGVBQWU7UUFDYixJQUFJLEtBQUssR0FBRzs7MEJBRVUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMseURBQXlELENBQUM7Z0JBQzNGLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxlQUFlOzs7OzBCQUkzQixJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQywwREFBMEQsQ0FBQztnQkFDNUYsSUFBSSxDQUFDLGdCQUFnQixDQUFDLGdCQUFnQjtjQUN4QyxDQUFBO1FBQ1YsS0FBSyxJQUFJLEdBQUcsSUFBSSxJQUFJLENBQUMsZ0JBQWdCLENBQUMsWUFBWSxFQUFFLENBQUM7WUFDbkQsS0FBSyxJQUFJO2tCQUNHLEdBQUcsQ0FBQyxHQUFHO2tCQUNQLEdBQUcsQ0FBQyxLQUFLO2dCQUNYLENBQUE7UUFDWixDQUFDO1FBQ0QsS0FBSyxJQUFJLFVBQVUsQ0FBQztRQUNwQixJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUM3QixDQUFDOzhHQS9EVSxrQ0FBa0M7a0dBQWxDLGtDQUFrQyxnSENiL0Msc2dEQTJDQTs7QUQ5QmEsa0NBQWtDO0lBTjlDLFlBQVksRUFBRTtHQU1GLGtDQUFrQyxDQWdFOUM7OzJGQWhFWSxrQ0FBa0M7a0JBTDlDLFNBQVM7K0JBQ0UsZ0NBQWdDOzBJQW9CN0IsWUFBWTtzQkFBeEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29tcG9uZW50LCBJbnB1dCwgT25Jbml0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7SVdpZGdldENvbXBvbmVudH0gZnJvbSAnQHl1dXZpcy93aWRnZXQtZ3JpZCc7XG5pbXBvcnQge1VudGlsRGVzdHJveX0gZnJvbSAnQG5nbmVhdC91bnRpbC1kZXN0cm95JztcbmltcG9ydCB7Q2xpcGJvYXJkfSBmcm9tICdAYW5ndWxhci9jZGsvY2xpcGJvYXJkJztcbmltcG9ydCB7U2lnbmF0dXJlU3RhdGlzdGljc0NvbmZpZywgU3RhdGlzdGljc1Jlc3VsdH0gZnJvbSAnLi9zaWduYXR1cmUtc3RhdGlzdGljcy5pbnRlcmZhY2UnO1xuaW1wb3J0IHtTaWduaW5nU2VydmljZSwgVHJhbnNsYXRlU2VydmljZX0gZnJvbSAnQGVvLXNkay9jb3JlJztcblxuQFVudGlsRGVzdHJveSgpXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdlby1zaWduYXR1cmUtc3RhdGlzdGljcy13aWRnZXQnLFxuICB0ZW1wbGF0ZVVybDogJy4vc2lnbmF0dXJlLXN0YXRpc3RpY3Mtd2lkZ2V0LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vc2lnbmF0dXJlLXN0YXRpc3RpY3Mtd2lkZ2V0LmNvbXBvbmVudC5zY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgU2lnbmF0dXJlU3RhdGlzdGljc1dpZGdldENvbXBvbmVudCBpbXBsZW1lbnRzIElXaWRnZXRDb21wb25lbnQsIE9uSW5pdCB7XG5cbiAgc3RhdGlzdGljc1Jlc3VsdDogU3RhdGlzdGljc1Jlc3VsdCA9IHtzaWduYXR1cmVzQW1vdW50OiBudWxsLCBkb2N1bWVudHNBbW91bnQ6IG51bGwsIGFnZ3JlZ2F0aW9uczogW119O1xuICByZWZyZXNoaW5nUmVxdWVzdCA9IGZhbHNlO1xuXG4gIHByaXZhdGUgX3dpZGdldENvbmZpZzogU2lnbmF0dXJlU3RhdGlzdGljc0NvbmZpZyA9IHt9IGFzIFNpZ25hdHVyZVN0YXRpc3RpY3NDb25maWc7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBzaWduaW5nU2VydmljZTogU2lnbmluZ1NlcnZpY2UsXG4gICAgICAgICAgICAgIHByaXZhdGUgY2xpcGJvYXJkOiBDbGlwYm9hcmQsXG4gICAgICAgICAgICAgIHByaXZhdGUgdHJhbnNsYXRlOiBUcmFuc2xhdGVTZXJ2aWNlKSB7XG4gIH1cblxuICBnZXQgd2lkZ2V0Q29uZmlnKCk6IFNpZ25hdHVyZVN0YXRpc3RpY3NDb25maWcge1xuICAgIHJldHVybiB0aGlzLl93aWRnZXRDb25maWc7XG4gIH1cblxuICBASW5wdXQoKSBzZXQgd2lkZ2V0Q29uZmlnKHN0YXRpc3RpY3NDb25maWc6IFNpZ25hdHVyZVN0YXRpc3RpY3NDb25maWcgfCB1bmRlZmluZWQpIHtcbiAgICBpZiAoc3RhdGlzdGljc0NvbmZpZykge1xuICAgICAgdGhpcy5fd2lkZ2V0Q29uZmlnID0gc3RhdGlzdGljc0NvbmZpZztcbiAgICB9XG4gICAgdGhpcy5nZXRTdGF0aXN0aWNzKCk7XG4gIH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHsgfVxuXG4gIGdldFN0YXRpc3RpY3MoKTogdm9pZCB7XG4gICAgdGhpcy5yZWZyZXNoaW5nUmVxdWVzdCA9IHRydWU7XG4gICAgdGhpcy5zdGF0aXN0aWNzUmVzdWx0ID0ge30gYXMgU3RhdGlzdGljc1Jlc3VsdDtcbiAgICB0aGlzLnNpZ25pbmdTZXJ2aWNlLmdldFNpZ25hdHVyZVN0YXRpc3RpY3ModGhpcy53aWRnZXRDb25maWcpLnN1YnNjcmliZShkYXRhID0+IHtcbiAgICAgIHRoaXMuc3RhdGlzdGljc1Jlc3VsdC5zaWduYXR1cmVzQW1vdW50ID0gZGF0YS5jb3VudFNpZ25hdHVyZXM7XG4gICAgICB0aGlzLnN0YXRpc3RpY3NSZXN1bHQuZG9jdW1lbnRzQW1vdW50ID0gZGF0YS5jb3VudE9iamVjdHM7XG4gICAgICBpZiAoZGF0YS5hZ2dyZWdhdGlvbnMpIHtcbiAgICAgICAgdGhpcy5zdGF0aXN0aWNzUmVzdWx0LmFnZ3JlZ2F0aW9ucyA9IFtdO1xuICAgICAgICBmb3IgKGNvbnN0IFtrZXksIHZhbHVlXSBvZiBPYmplY3QuZW50cmllcyhkYXRhLmFnZ3JlZ2F0aW9ucykpIHtcbiAgICAgICAgICB0aGlzLnN0YXRpc3RpY3NSZXN1bHQuYWdncmVnYXRpb25zLnB1c2goe2tleToga2V5LCB2YWx1ZTogdmFsdWV9KTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgdGhpcy5yZWZyZXNoaW5nUmVxdWVzdCA9IGZhbHNlO1xuICAgIH0sIGVyciA9PiB7XG4gICAgICB0aGlzLnN0YXRpc3RpY3NSZXN1bHQgPSB7fSBhcyBTdGF0aXN0aWNzUmVzdWx0O1xuICAgICAgdGhpcy5yZWZyZXNoaW5nUmVxdWVzdCA9IGZhbHNlO1xuICAgIH0pO1xuICB9XG5cbiAgY29weVRvQ2xpcGJvYXJkKCk6IHZvaWQge1xuICAgIGxldCB0YWJsZSA9IGA8dGFibGU+XG4gICAgICAgIDx0cj5cbiAgICAgICAgICA8dGQgdHJhbnNsYXRlPiR7dGhpcy50cmFuc2xhdGUuaW5zdGFudCgnZW8ud29ya3NwYWNlLndpZGdldC5zaWduYXR1cmUuc3RhdGlzdGljcy50b3RhbERvY3VtZW50cycpfTwvdGQ+XG4gICAgICAgICAgPHRkPiR7dGhpcy5zdGF0aXN0aWNzUmVzdWx0LmRvY3VtZW50c0Ftb3VudH08L3RkPlxuICAgICAgICA8L3RyPlxuICAgICAgICA8YnI+XG4gICAgICAgIDx0cj5cbiAgICAgICAgICA8dGQgdHJhbnNsYXRlPiR7dGhpcy50cmFuc2xhdGUuaW5zdGFudCgnZW8ud29ya3NwYWNlLndpZGdldC5zaWduYXR1cmUuc3RhdGlzdGljcy50b3RhbFNpZ25hdHVyZXMnKX08L3RkPlxuICAgICAgICAgIDx0ZD4ke3RoaXMuc3RhdGlzdGljc1Jlc3VsdC5zaWduYXR1cmVzQW1vdW50fTwvdGQ+XG4gICAgICAgIDwvdHI+YFxuICAgIGZvciAobGV0IGFnZyBvZiB0aGlzLnN0YXRpc3RpY3NSZXN1bHQuYWdncmVnYXRpb25zKSB7XG4gICAgICB0YWJsZSArPSBgPHRyPlxuICAgICAgICAgICAgPHRkPiR7YWdnLmtleX08L3RkPlxuICAgICAgICAgICAgPHRkPiR7YWdnLnZhbHVlfTwvdGQ+XG4gICAgICAgICAgPC90cj5gXG4gICAgfVxuICAgIHRhYmxlICs9ICc8L3RhYmxlPic7XG4gICAgdGhpcy5jbGlwYm9hcmQuY29weSh0YWJsZSk7XG4gIH1cbn1cbiIsIjxoZWFkZXI+XG4gIDxkaXYgY2xhc3M9XCJoZWFkZXItdGl0bGVcIj5cbiAgICBAaWYgKHdpZGdldENvbmZpZy50aXRsZSkge1xuICAgICAgPGRpdiBjbGFzcz1cInRpdGxlXCI+XG4gICAgICAgIHt7IHdpZGdldENvbmZpZy50aXRsZSB9fVxuICAgICAgPC9kaXY+XG4gICAgfVxuICAgIDxkaXYgY2xhc3M9XCJpY29ucy10aXRsZVwiPlxuICAgICAgPGVvLWljb24gY2xhc3M9XCJidXR0b24gcHJpbWFyeVwiIFtpY29uU3JjXT1cIidhc3NldHMvX2RlZmF1bHQvc3ZnL2ljX2NvbnRlbnQtY29weS5zdmcnXCIgKGNsaWNrKT1cImNvcHlUb0NsaXBib2FyZCgpXCJcbiAgICAgICAgICAgICAgIFtpY29uVGl0bGVdPVwiKCdlby5jbGlwYm9hcmQudGl0bGUnfCB0cmFuc2xhdGUpXCI+PC9lby1pY29uPlxuICAgICAgPGVvLWljb24gY2xhc3M9XCJidXR0b24gcHJpbWFyeVwiIFtpY29uU3JjXT1cIidhc3NldHMvX2RlZmF1bHQvc3ZnL2ljX3JlZnJlc2guc3ZnJ1wiIChjbGljayk9XCJnZXRTdGF0aXN0aWNzKClcIlxuICAgICAgICAgICAgICAgW2ljb25UaXRsZV09XCIoJ2VvLndpZGdldC5oaXRsaXN0LnRvb2x0aXAucmVmcmVzaCd8IHRyYW5zbGF0ZSlcIj48L2VvLWljb24+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuPC9oZWFkZXI+XG5cbkBpZiAocmVmcmVzaGluZ1JlcXVlc3QpIHtcbiAgPG1haW4gY2xhc3M9XCJsb2FkZXItb3ZlcmxheV9fbWFza1wiPlxuICAgIDxlby1sb2FkaW5nLXNwaW5uZXIgW3NpemVdPVwiJ2xhcmdlJ1wiPjwvZW8tbG9hZGluZy1zcGlubmVyPlxuICA8L21haW4+XG59IEBlbHNlIGlmIChzdGF0aXN0aWNzUmVzdWx0ICYmICFyZWZyZXNoaW5nUmVxdWVzdCkge1xuICA8bWFpbiBjbGFzcz1cImluZm9cIj5cbiAgICA8ZGl2PlxuICAgICAgPHRhYmxlPlxuICAgICAgICA8dHIgY2xhc3M9XCJ0b3RhbFwiPlxuICAgICAgICAgIDx0ZCB0cmFuc2xhdGU+ZW8ud29ya3NwYWNlLndpZGdldC5zaWduYXR1cmUuc3RhdGlzdGljcy50b3RhbERvY3VtZW50czwvdGQ+XG4gICAgICAgICAgPHRkPnt7IHN0YXRpc3RpY3NSZXN1bHQuZG9jdW1lbnRzQW1vdW50IH19PC90ZD5cbiAgICAgICAgPC90cj5cbiAgICAgICAgPGJyPlxuICAgICAgICA8dHIgY2xhc3M9XCJ0b3RhbFwiPlxuICAgICAgICAgIDx0ZCB0cmFuc2xhdGU+ZW8ud29ya3NwYWNlLndpZGdldC5zaWduYXR1cmUuc3RhdGlzdGljcy50b3RhbFNpZ25hdHVyZXM8L3RkPlxuICAgICAgICAgIDx0ZD57eyBzdGF0aXN0aWNzUmVzdWx0LnNpZ25hdHVyZXNBbW91bnQgfX08L3RkPlxuICAgICAgICA8L3RyPlxuICAgICAgICBAZm9yIChhZ2cgb2Ygc3RhdGlzdGljc1Jlc3VsdC5hZ2dyZWdhdGlvbnM7IHRyYWNrICRpbmRleCkge1xuICAgICAgICAgIDx0cj5cbiAgICAgICAgICAgIDx0ZD57eyBhZ2cua2V5IH19PC90ZD5cbiAgICAgICAgICAgIDx0ZCBjbGFzcz1cImNvdW50LXZhbHVlXCI+e3sgYWdnLnZhbHVlIH19PC90ZD5cbiAgICAgICAgICA8L3RyPlxuICAgICAgICB9XG4gICAgICA8L3RhYmxlPlxuICAgIDwvZGl2PlxuICA8L21haW4+XG59XG4iXX0=
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lnbmF0dXJlLXN0YXRpc3RpY3MuaW50ZXJmYWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9lby1jbGllbnQvZGFzaGJvYXJkL3dpZGdldHMvc2lnbmF0dXJlLXN0YXRpc3RpY3Mtd2lkZ2V0L3NpZ25hdHVyZS1zdGF0aXN0aWNzLmludGVyZmFjZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtPYmplY3RUeXBlfSBmcm9tICdAZW8tc2RrL2NvcmUnO1xuXG5leHBvcnQgaW50ZXJmYWNlIFNpZ25hdHVyZVN0YXRpc3RpY3NDb25maWcge1xuICB0aXRsZTogc3RyaW5nO1xuICBzaG93WmVybzogYm9vbGVhbjtcbiAgZG9jdW1lbnRUeXBlczogT2JqZWN0VHlwZVtdO1xuICBhZ2dyZWdhdGlvbkZpZWxkOiBzdHJpbmc7XG4gIHN0YXR1czogc3RyaW5nW107XG4gIHR5cGU6IHN0cmluZ1tdO1xuICBmcm9tOiBEYXRlIHwgc3RyaW5nO1xuICB0bzogRGF0ZSB8IHN0cmluZztcbn1cbmV4cG9ydCBpbnRlcmZhY2UgU3RhdGlzdGljc1Jlc3VsdCB7XG4gIHNpZ25hdHVyZXNBbW91bnQ6IG51bWJlciB8IG51bGw7XG4gIGRvY3VtZW50c0Ftb3VudDogbnVtYmVyIHwgbnVsbDtcbiAgYWdncmVnYXRpb25zOiB7IGtleTogc3RyaW5nOyB2YWx1ZTogYW55IH1bXTtcbn1cbiJdfQ==