@eo-sdk/client 10.4.0 → 10.5.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 (78) hide show
  1. package/README.md +2 -2
  2. package/app/eo-client/about-state/about-state.component.d.ts.map +1 -1
  3. package/app/eo-client/dashboard/dashboard.component.d.ts.map +1 -1
  4. package/app/eo-client/dashboard/widgets/charts-widget/charts-setup/charts-setup.component.d.ts +57 -0
  5. package/app/eo-client/dashboard/widgets/charts-widget/charts-setup/charts-setup.component.d.ts.map +1 -0
  6. package/app/eo-client/dashboard/widgets/charts-widget/charts-widget.component.d.ts +62 -0
  7. package/app/eo-client/dashboard/widgets/charts-widget/charts-widget.component.d.ts.map +1 -0
  8. package/app/eo-client/dashboard/widgets/charts-widget/icharts.d.ts +11 -0
  9. package/app/eo-client/dashboard/widgets/charts-widget/icharts.d.ts.map +1 -0
  10. package/app/eo-client/dashboard/widgets/hitlist-widget/hitlist-setup/hitlist-setup.component.d.ts.map +1 -1
  11. package/app/eo-client/dashboard/widgets/hitlist-widget/hitlist-widget.component.d.ts +4 -2
  12. package/app/eo-client/dashboard/widgets/hitlist-widget/hitlist-widget.component.d.ts.map +1 -1
  13. package/app/eo-client/eo-client.module.d.ts +19 -16
  14. package/app/eo-client/eo-client.module.d.ts.map +1 -1
  15. package/app/eo-client/settings/settings.component.d.ts +2 -0
  16. package/app/eo-client/settings/settings.component.d.ts.map +1 -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/codesystem/codesystem.component.d.ts +2 -1
  19. package/app/eo-framework/form-elements/codesystem/codesystem.component.d.ts.map +1 -1
  20. package/app/eo-framework/object-form/object-form/form-element-table/row-edit/row-edit.component.d.ts.map +1 -1
  21. package/app/eo-framework/prepare-details/prepare-details.component.d.ts +1 -0
  22. package/app/eo-framework/prepare-details/prepare-details.component.d.ts.map +1 -1
  23. package/app/eo-framework/tree/tree.component.d.ts +2 -1
  24. package/app/eo-framework/tree/tree.component.d.ts.map +1 -1
  25. package/app/eo-framework-core/empty-state/empty-state.interface.d.ts +3 -3
  26. package/app/eo-framework-core/empty-state/empty-state.interface.d.ts.map +1 -1
  27. package/assets/_default/i18n/de.json +19 -2
  28. package/assets/_default/i18n/en.json +18 -1
  29. package/esm2020/app/eo-client/about-state/about-state.component.mjs +3 -3
  30. package/esm2020/app/eo-client/dashboard/dashboard.component.mjs +11 -3
  31. package/esm2020/app/eo-client/dashboard/widgets/charts-widget/charts-setup/charts-setup.component.mjs +200 -0
  32. package/esm2020/app/eo-client/dashboard/widgets/charts-widget/charts-widget.component.mjs +187 -0
  33. package/esm2020/app/eo-client/dashboard/widgets/charts-widget/icharts.mjs +2 -0
  34. package/esm2020/app/eo-client/dashboard/widgets/hitlist-widget/hitlist-setup/hitlist-setup.component.mjs +9 -4
  35. package/esm2020/app/eo-client/dashboard/widgets/hitlist-widget/hitlist-widget.component.mjs +22 -23
  36. package/esm2020/app/eo-client/dashboard/widgets/search-widget/search-widget.component.mjs +3 -3
  37. package/esm2020/app/eo-client/eo-client.module.mjs +16 -6
  38. package/esm2020/app/eo-client/object-state/object-state/object-state.component.mjs +2 -2
  39. package/esm2020/app/eo-client/settings/settings.component.mjs +16 -4
  40. package/esm2020/app/eo-client/stored-queries-state/stored-queries-state.component.mjs +3 -3
  41. package/esm2020/app/eo-framework/actions/actions/add-subscription-action/add-subscription/add-subscription.component.mjs +1 -1
  42. package/esm2020/app/eo-framework/actions/actions/signature-action/signature/signature.component.mjs +1 -1
  43. package/esm2020/app/eo-framework/app-shell/app-bar/app-search/app-search.component.mjs +5 -4
  44. package/esm2020/app/eo-framework/form-elements/codesystem/codesystem.component.mjs +7 -4
  45. package/esm2020/app/eo-framework/form-elements/dynamic-list/dynamic-list.component.mjs +1 -1
  46. package/esm2020/app/eo-framework/form-elements/reference/reference.component.mjs +3 -3
  47. package/esm2020/app/eo-framework/form-elements/string/string.component.mjs +3 -3
  48. package/esm2020/app/eo-framework/frame/frame.component.mjs +2 -2
  49. package/esm2020/app/eo-framework/grid/filters/codesystem-filter.component.mjs +3 -3
  50. package/esm2020/app/eo-framework/grid/filters/dynamic-list-filter.component.mjs +1 -1
  51. package/esm2020/app/eo-framework/object-form/object-form/form-element/form-element.component.mjs +1 -1
  52. package/esm2020/app/eo-framework/object-form/object-form/form-element-table/row-edit/row-edit.component.mjs +1 -1
  53. package/esm2020/app/eo-framework/prepare-details/prepare-details.component.mjs +13 -6
  54. package/esm2020/app/eo-framework/stored-query/stored-query-details/stored-query-details.component.mjs +3 -3
  55. package/esm2020/app/eo-framework/tree/tree.component.mjs +15 -4
  56. package/esm2020/app/eo-framework-core/empty-state/empty-state.interface.mjs +1 -1
  57. package/esm2020/projects/eo-sdk/core/lib/service/cache/app-cache.service.mjs +6 -1
  58. package/esm2020/projects/eo-sdk/core/lib/service/storage/local-storage.service.mjs +12 -1
  59. package/esm2020/projects/eo-sdk/core/lib/service/stored-queries/stored-queries.service.mjs +1 -1
  60. package/esm2020/projects/eo-sdk/core/lib/service/user/user.service.mjs +18 -1
  61. package/fesm2015/eo-sdk-client-projects-eo-sdk-core.mjs +33 -0
  62. package/fesm2015/eo-sdk-client-projects-eo-sdk-core.mjs.map +1 -1
  63. package/fesm2015/eo-sdk-client.mjs +480 -63
  64. package/fesm2015/eo-sdk-client.mjs.map +1 -1
  65. package/fesm2020/eo-sdk-client-projects-eo-sdk-core.mjs +33 -0
  66. package/fesm2020/eo-sdk-client-projects-eo-sdk-core.mjs.map +1 -1
  67. package/fesm2020/eo-sdk-client.mjs +468 -62
  68. package/fesm2020/eo-sdk-client.mjs.map +1 -1
  69. package/package.json +3 -2
  70. package/projects/eo-sdk/core/lib/service/cache/app-cache.service.d.ts +1 -0
  71. package/projects/eo-sdk/core/lib/service/cache/app-cache.service.d.ts.map +1 -1
  72. package/projects/eo-sdk/core/lib/service/storage/local-storage.service.d.ts +3 -0
  73. package/projects/eo-sdk/core/lib/service/storage/local-storage.service.d.ts.map +1 -1
  74. package/projects/eo-sdk/core/lib/service/stored-queries/stored-queries.service.d.ts.map +1 -1
  75. package/projects/eo-sdk/core/lib/service/user/user.service.d.ts +11 -0
  76. package/projects/eo-sdk/core/lib/service/user/user.service.d.ts.map +1 -1
  77. package/styles.css +1 -0
  78. package/styles.scss +1 -0
@@ -0,0 +1,187 @@
1
+ import { __decorate } from "tslib";
2
+ import { Component, Input } from '@angular/core';
3
+ import { Utils } from '@eo-sdk/core';
4
+ import { UntilDestroy, untilDestroyed } from '@ngneat/until-destroy';
5
+ import { tap } from 'rxjs';
6
+ import * as i0 from "@angular/core";
7
+ import * as i1 from "@angular/router";
8
+ import * as i2 from "@eo-sdk/core";
9
+ import * as i3 from "../../../../eo-framework-core";
10
+ import * as i4 from "@angular/common";
11
+ import * as i5 from "../../../../eo-framework/ui/eo-icon/eo-icon.component";
12
+ import * as i6 from "../../../../eo-framework/ui/loading-spinner/loading-spinner.component";
13
+ import * as i7 from "../../../../eo-framework/ui/error-message/error-message.component";
14
+ import * as i8 from "@carbon/charts-angular";
15
+ import * as i9 from "@ngx-translate/core";
16
+ let ChartsWidgetComponent = class ChartsWidgetComponent {
17
+ set widgetConfig(c) {
18
+ this._widgetConfig = c;
19
+ if (this._widgetConfig?.storedQuery && this._widgetConfig?.formValue?.aggregation) {
20
+ this.getStoredQuery(this._widgetConfig.storedQuery).subscribe(() => {
21
+ this._query = this.searchService.buildQuery(this.storedQuery);
22
+ this._widgetConfig.formValue.storedQuery = this.storedQuery.name;
23
+ if (this._widgetConfig?.formValue?.aggregation) {
24
+ this.generateChartData(this._widgetConfig?.formValue?.aggregation, this._widgetConfig?.aggregationType);
25
+ }
26
+ });
27
+ }
28
+ }
29
+ get widgetConfig() {
30
+ return this._widgetConfig;
31
+ }
32
+ constructor(router, searchService, appSearchService, storedQueriesService, translate, systemService) {
33
+ this.router = router;
34
+ this.searchService = searchService;
35
+ this.appSearchService = appSearchService;
36
+ this.storedQueriesService = storedQueriesService;
37
+ this.translate = translate;
38
+ this.systemService = systemService;
39
+ this.chartOptions = {
40
+ color: {
41
+ text: '#925699',
42
+ label: '#925699'
43
+ },
44
+ legend: {
45
+ 'alignment': 'center'
46
+ },
47
+ resizable: true,
48
+ donut: {
49
+ 'alignment': 'center'
50
+ },
51
+ toolbar: {
52
+ enabled: false,
53
+ },
54
+ axes: {
55
+ left: {
56
+ mapsTo: 'value',
57
+ },
58
+ bottom: {
59
+ mapsTo: 'group',
60
+ scaleType: 'labels',
61
+ },
62
+ },
63
+ height: '400px',
64
+ };
65
+ this.isThereData = [];
66
+ this.chartData = [];
67
+ this.empty = false;
68
+ this.editMode = false;
69
+ }
70
+ getStoredQuery(id) {
71
+ return this.storedQueriesService.getStoredQuery(id).pipe(untilDestroyed(this), tap(storedQuery => {
72
+ this.storedQuery = storedQuery;
73
+ }));
74
+ }
75
+ generateChartData(field, type) {
76
+ this.refreshingRequest = true;
77
+ const queryName = this._query.name;
78
+ delete this._query.name;
79
+ this._query = this.searchService.buildQuery(this._query);
80
+ this.searchService.executeQuery({ aggs: { [field]: { size: this._widgetConfig?.formValue?.size } }, ...this._query.getQueryJson() }, true)
81
+ .subscribe((res) => {
82
+ this.refreshingRequest = false;
83
+ this.isThereData = res.aggregations[Object.keys(res.aggregations)[0]].buckets;
84
+ this._query.name = queryName;
85
+ if (this.isThereData.length > 0) {
86
+ this.chartData = res.aggregations[Object.keys(res.aggregations)[0]].buckets.map((e) => {
87
+ if (type === 'DATETIME') {
88
+ return {
89
+ group: this.translate.instant('eo.search.agg.time.' + e.key),
90
+ value: e.doc_count,
91
+ };
92
+ }
93
+ else if (type === 'BOOLEAN') {
94
+ return {
95
+ group: e.key === 0 ? '\u2610' : '\u2611',
96
+ value: e.doc_count,
97
+ };
98
+ }
99
+ else {
100
+ return {
101
+ group: e.key,
102
+ value: e.doc_count,
103
+ };
104
+ }
105
+ });
106
+ }
107
+ if (this._widgetConfig?.formValue?.aggregation === 'sysobject.modified') {
108
+ this.chartData = res.aggregations.modified.buckets.map((e) => {
109
+ return {
110
+ group: this.translate.instant('eo.search.agg.time.' + e.key),
111
+ value: e.doc_count,
112
+ };
113
+ });
114
+ }
115
+ if (this._widgetConfig?.formValue?.aggregation === 'sysobject.created') {
116
+ this.chartData = res.aggregations.created.buckets.map((e) => {
117
+ return {
118
+ group: this.translate.instant('eo.search.agg.time.' + e.key),
119
+ value: e.doc_count,
120
+ };
121
+ });
122
+ }
123
+ if (this._widgetConfig?.formValue?.aggregation === 'sysdocument.mimetypegroup') {
124
+ this.chartData = res.aggregations.mimetypegroup.buckets.map((e) => {
125
+ return {
126
+ group: e.key,
127
+ value: e.doc_count,
128
+ };
129
+ });
130
+ }
131
+ if (this._widgetConfig?.formValue?.aggregation === 'sysobject.type') {
132
+ this.chartData = res.aggregations.type.buckets.map((e) => {
133
+ return {
134
+ group: this.systemService.getObjectType(e.key).label,
135
+ value: e.doc_count,
136
+ };
137
+ });
138
+ }
139
+ if (this._widgetConfig?.formValue?.aggregation === 'sysdocument.filesize') {
140
+ this.chartData = res.aggregations.filesize.buckets.map((e) => {
141
+ return {
142
+ group: this.translate.instant('eo.search.agg.filesize.' + e.key),
143
+ value: e.doc_count,
144
+ };
145
+ });
146
+ }
147
+ }, (error) => {
148
+ this.empty = true;
149
+ });
150
+ }
151
+ setQueryToAppSearch() {
152
+ this.appSearchService.setQuery(this.storedQuery);
153
+ this.router.navigate([{ outlets: { modal: 'search' } }]);
154
+ }
155
+ refresh() {
156
+ this.getStoredQuery(this._widgetConfig.storedQuery).subscribe(() => {
157
+ this._query = this.searchService.buildQuery(this.storedQuery);
158
+ this._widgetConfig.formValue.storedQuery = this.storedQuery.name;
159
+ if (this._widgetConfig?.formValue?.aggregation) {
160
+ this.generateChartData(this._widgetConfig?.formValue?.aggregation, this._widgetConfig?.aggregationType);
161
+ }
162
+ });
163
+ }
164
+ onEmitQueryClick(event) {
165
+ delete this._query.fields;
166
+ const uriParam = encodeURIComponent(Utils.formDataStringify(this._query.getQueryJson()));
167
+ const uriParamQuery = { queryParams: { 'query': uriParam } };
168
+ const queryParams = new URLSearchParams(uriParamQuery.queryParams).toString();
169
+ const url = window.location.href.split('/dashboard')[0] + '/result?' + queryParams;
170
+ window.open(url, event?.ctrlKey || this.editMode ? '_blank' : '_self');
171
+ }
172
+ };
173
+ ChartsWidgetComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: ChartsWidgetComponent, deps: [{ token: i1.Router }, { token: i2.SearchService }, { token: i3.AppSearchService }, { token: i2.StoredQueriesService }, { token: i2.TranslateService }, { token: i2.SystemService }], target: i0.ɵɵFactoryTarget.Component });
174
+ ChartsWidgetComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.2", type: ChartsWidgetComponent, selector: "eo-charts-widget", inputs: { editMode: "editMode", widgetConfig: "widgetConfig" }, ngImport: i0, template: "<header>\n <div class=\"header-title\">\n <div class=\"title\" *ngIf=\"widgetConfig?.formValue?.storedQuery\">\n {{widgetConfig?.formValue?.storedQuery}}</div>\n <div class=\"icons-title\" *ngIf=\"this.widgetConfig?.storedQuery\">\n <eo-icon class=\"button primary\" [iconSrc]=\"'assets/_default/svg/ic_saved_search.svg'\" (click)=\"setQueryToAppSearch()\"\n [iconTitle]=\"('eo.widget.hitlist.tooltip.savedSearchIcon'| translate)\"></eo-icon>\n <eo-icon class=\"button primary\" [iconSrc]=\"'assets/_default/svg/ic_open_tab.svg'\"\n (click)=\"onEmitQueryClick($event)\"\n [iconTitle]=\"('eo.widget.hitlist.tooltip.openinresultlist'| translate)\"></eo-icon>\n <eo-icon class=\"button primary\" [iconSrc]=\"'assets/_default/svg/ic_refresh.svg'\" (click)=\"refresh()\"\n [iconTitle]=\"('eo.widget.hitlist.tooltip.refresh'| translate)\"></eo-icon>\n </div>\n </div>\n</header>\n\n<main class=\"loader-overlay__mask\" *ngIf=\"refreshingRequest && !empty\">\n <eo-loading-spinner [size]=\"'large'\"></eo-loading-spinner>\n</main>\n\n<main class=\"chart\" *ngIf=\"(chartData.length > 0 && !refreshingRequest) || !empty ; else tplEmpty\">\n <div class=\"item\" [ngSwitch]=\"widgetConfig!.formValue.chartType\">\n <ibm-simple-bar-chart *ngSwitchCase=\"'bar'\" [data]=\"chartData\" [options]=\"chartOptions\"></ibm-simple-bar-chart>\n <ibm-pie-chart *ngSwitchCase=\"'pie'\" [data]=\"chartData\" [options]=\"chartOptions\"></ibm-pie-chart>\n <ibm-donut-chart *ngSwitchCase=\"'donut'\" [data]=\"chartData\" [options]=\"chartOptions\"></ibm-donut-chart>\n </div>\n</main>\n<ng-template #tplEmpty>\n <div class=\"empty\" *ngIf=\"(!refreshingRequest) || empty\">\n <eo-error-message\n [emptyState]=\"{icon: 'ic_saved_search.svg', text: 'eo.workspace.widget.list.empty'}\"></eo-error-message>\n </div>\n</ng-template>\n", styles: [":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);animation:eoFadeIn .2s}:host main.chart{overflow-y:auto}:host main.chart .item{padding:calc(var(--app-pane-padding) / 2)}:host .empty{display:contents}::ng-deep .cds--cc--chart-wrapper text{fill:#000}::ng-deep .cds--cc--chart-wrapper p{color:#000}::ng-deep .cds--cc--axes g.axis g.tick text{fill:#000}\n"], dependencies: [{ kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i4.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "component", type: i5.EoIconComponent, selector: "eo-icon", inputs: ["objectType", "iconId", "iconSrc", "badge", "iconTitle"] }, { kind: "component", type: i6.LoadingSpinnerComponent, selector: "eo-loading-spinner", inputs: ["size", "mode"] }, { kind: "component", type: i7.ErrorMessageComponent, selector: "eo-error-message", inputs: ["emptyState"] }, { kind: "component", type: i8.SimpleBarChartComponent, selector: "ibm-simple-bar-chart" }, { kind: "component", type: i8.DonutChartComponent, selector: "ibm-donut-chart" }, { kind: "component", type: i8.PieChartComponent, selector: "ibm-pie-chart" }, { kind: "pipe", type: i9.TranslatePipe, name: "translate" }] });
175
+ ChartsWidgetComponent = __decorate([
176
+ UntilDestroy()
177
+ ], ChartsWidgetComponent);
178
+ export { ChartsWidgetComponent };
179
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: ChartsWidgetComponent, decorators: [{
180
+ type: Component,
181
+ args: [{ selector: 'eo-charts-widget', template: "<header>\n <div class=\"header-title\">\n <div class=\"title\" *ngIf=\"widgetConfig?.formValue?.storedQuery\">\n {{widgetConfig?.formValue?.storedQuery}}</div>\n <div class=\"icons-title\" *ngIf=\"this.widgetConfig?.storedQuery\">\n <eo-icon class=\"button primary\" [iconSrc]=\"'assets/_default/svg/ic_saved_search.svg'\" (click)=\"setQueryToAppSearch()\"\n [iconTitle]=\"('eo.widget.hitlist.tooltip.savedSearchIcon'| translate)\"></eo-icon>\n <eo-icon class=\"button primary\" [iconSrc]=\"'assets/_default/svg/ic_open_tab.svg'\"\n (click)=\"onEmitQueryClick($event)\"\n [iconTitle]=\"('eo.widget.hitlist.tooltip.openinresultlist'| translate)\"></eo-icon>\n <eo-icon class=\"button primary\" [iconSrc]=\"'assets/_default/svg/ic_refresh.svg'\" (click)=\"refresh()\"\n [iconTitle]=\"('eo.widget.hitlist.tooltip.refresh'| translate)\"></eo-icon>\n </div>\n </div>\n</header>\n\n<main class=\"loader-overlay__mask\" *ngIf=\"refreshingRequest && !empty\">\n <eo-loading-spinner [size]=\"'large'\"></eo-loading-spinner>\n</main>\n\n<main class=\"chart\" *ngIf=\"(chartData.length > 0 && !refreshingRequest) || !empty ; else tplEmpty\">\n <div class=\"item\" [ngSwitch]=\"widgetConfig!.formValue.chartType\">\n <ibm-simple-bar-chart *ngSwitchCase=\"'bar'\" [data]=\"chartData\" [options]=\"chartOptions\"></ibm-simple-bar-chart>\n <ibm-pie-chart *ngSwitchCase=\"'pie'\" [data]=\"chartData\" [options]=\"chartOptions\"></ibm-pie-chart>\n <ibm-donut-chart *ngSwitchCase=\"'donut'\" [data]=\"chartData\" [options]=\"chartOptions\"></ibm-donut-chart>\n </div>\n</main>\n<ng-template #tplEmpty>\n <div class=\"empty\" *ngIf=\"(!refreshingRequest) || empty\">\n <eo-error-message\n [emptyState]=\"{icon: 'ic_saved_search.svg', text: 'eo.workspace.widget.list.empty'}\"></eo-error-message>\n </div>\n</ng-template>\n", styles: [":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);animation:eoFadeIn .2s}:host main.chart{overflow-y:auto}:host main.chart .item{padding:calc(var(--app-pane-padding) / 2)}:host .empty{display:contents}::ng-deep .cds--cc--chart-wrapper text{fill:#000}::ng-deep .cds--cc--chart-wrapper p{color:#000}::ng-deep .cds--cc--axes g.axis g.tick text{fill:#000}\n"] }]
182
+ }], ctorParameters: function () { return [{ type: i1.Router }, { type: i2.SearchService }, { type: i3.AppSearchService }, { type: i2.StoredQueriesService }, { type: i2.TranslateService }, { type: i2.SystemService }]; }, propDecorators: { editMode: [{
183
+ type: Input
184
+ }], widgetConfig: [{
185
+ type: Input
186
+ }] } });
187
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhcnRzLXdpZGdldC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL2VvLWNsaWVudC9kYXNoYm9hcmQvd2lkZ2V0cy9jaGFydHMtd2lkZ2V0L2NoYXJ0cy13aWRnZXQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9lby1jbGllbnQvZGFzaGJvYXJkL3dpZGdldHMvY2hhcnRzLXdpZGdldC9jaGFydHMtd2lkZ2V0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLEtBQUssRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUMvQyxPQUFPLEVBQWlHLEtBQUssRUFBQyxNQUFNLGNBQWMsQ0FBQztBQUluSSxPQUFPLEVBQUMsWUFBWSxFQUFFLGNBQWMsRUFBQyxNQUFNLHVCQUF1QixDQUFDO0FBRW5FLE9BQU8sRUFBQyxHQUFHLEVBQUMsTUFBTSxNQUFNLENBQUM7Ozs7Ozs7Ozs7O0FBUWxCLElBQU0scUJBQXFCLEdBQTNCLE1BQU0scUJBQXFCO0lBeUNoQyxJQUFhLFlBQVksQ0FBQyxDQUFzQjtRQUM5QyxJQUFJLENBQUMsYUFBYSxHQUFHLENBQUMsQ0FBQztRQUN2QixJQUFJLElBQUksQ0FBQyxhQUFhLEVBQUUsV0FBVyxJQUFJLElBQUksQ0FBQyxhQUFhLEVBQUUsU0FBUyxFQUFFLFdBQVcsRUFBRTtZQUNqRixJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsV0FBVyxDQUFDLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRTtnQkFDakUsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7Z0JBQzlELElBQUksQ0FBQyxhQUFhLENBQUMsU0FBUyxDQUFDLFdBQVcsR0FB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TyxDQUFDLENBQUM7SUFDekUsQ0FBQzs7a0hBbExVLHFCQUFxQjtzR0FBckIscUJBQXFCLHdIQ2ZsQyxrOERBaUNBO0FEbEJhLHFCQUFxQjtJQU5qQyxZQUFZLEVBQUU7R0FNRixxQkFBcUIsQ0FvTGpDO1NBcExZLHFCQUFxQjsyRkFBckIscUJBQXFCO2tCQUxqQyxTQUFTOytCQUNFLGtCQUFrQjtzUEEyQ25CLFFBQVE7c0JBQWhCLEtBQUs7Z0JBRU8sWUFBWTtzQkFBeEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29tcG9uZW50LCBJbnB1dH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1NlYXJjaFF1ZXJ5LCBTZWFyY2hTZXJ2aWNlLCBTdG9yZWRRdWVyaWVzU2VydmljZSwgU3RvcmVkUXVlcnksIFN5c3RlbVNlcnZpY2UsIFRyYW5zbGF0ZVNlcnZpY2UsIFV0aWxzfSBmcm9tICdAZW8tc2RrL2NvcmUnO1xuaW1wb3J0IHtJV2lkZ2V0Q29tcG9uZW50fSBmcm9tICdAeXV1dmlzL3dpZGdldC1ncmlkJztcbmltcG9ydCB7SWNoYXJ0c30gZnJvbSAnLi9pY2hhcnRzJztcbmltcG9ydCB7QXBwU2VhcmNoU2VydmljZX0gZnJvbSAnLi4vLi4vLi4vLi4vZW8tZnJhbWV3b3JrLWNvcmUnO1xuaW1wb3J0IHtVbnRpbERlc3Ryb3ksIHVudGlsRGVzdHJveWVkfSBmcm9tICdAbmduZWF0L3VudGlsLWRlc3Ryb3knO1xuaW1wb3J0IHtOYXZpZ2F0aW9uRXh0cmFzLCBSb3V0ZXJ9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQge3RhcH0gZnJvbSAncnhqcyc7XG5cbkBVbnRpbERlc3Ryb3koKVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZW8tY2hhcnRzLXdpZGdldCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9jaGFydHMtd2lkZ2V0LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vY2hhcnRzLXdpZGdldC5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIENoYXJ0c1dpZGdldENvbXBvbmVudCBpbXBsZW1lbnRzIElXaWRnZXRDb21wb25lbnQge1xuXG4gIGNoYXJ0T3B0aW9ucyA9IHtcblxuICAgIGNvbG9yOiB7XG4gICAgICB0ZXh0OiAnIzkyNTY5OScsXG4gICAgICBsYWJlbDogJyM5MjU2OTknXG4gICAgfSxcbiAgICBsZWdlbmQ6IHtcbiAgICAgICdhbGlnbm1lbnQnOiAnY2VudGVyJ1xuICAgIH0sXG4gICAgcmVzaXphYmxlOiB0cnVlLFxuICAgIGRvbnV0OiB7XG4gICAgICAnYWxpZ25tZW50JzogJ2NlbnRlcidcbiAgICB9LFxuXG4gICAgdG9vbGJhcjoge1xuICAgICAgZW5hYmxlZDogZmFsc2UsXG4gICAgfSxcbiAgICBheGVzOiB7XG4gICAgICBsZWZ0OiB7XG4gICAgICAgIG1hcHNUbzogJ3ZhbHVlJyxcbiAgICAgIH0sXG4gICAgICBib3R0b206IHtcbiAgICAgICAgbWFwc1RvOiAnZ3JvdXAnLFxuICAgICAgICBzY2FsZVR5cGU6ICdsYWJlbHMnLFxuICAgICAgfSxcbiAgICB9LFxuICAgIGhlaWdodDogJzQwMHB4JyxcbiAgfTtcblxuICBpc1RoZXJlRGF0YSA9IFtdO1xuICBjaGFydERhdGE6IHtncm91cDogc3RyaW5nOyB2YWx1ZTogYW55fVtdID0gW107XG4gIHByaXZhdGUgX3F1ZXJ5OiBTZWFyY2hRdWVyeTtcbiAgZW1wdHkgPSBmYWxzZTtcbiAgcmVmcmVzaGluZ1JlcXVlc3Q6IGJvb2xlYW47XG4gIHN0b3JlZFF1ZXJ5OiBTdG9yZWRRdWVyeTtcbiAgcHJpdmF0ZSBfd2lkZ2V0Q29uZmlnOiBJY2hhcnRzIHwgdW5kZWZpbmVkO1xuXG4gIEBJbnB1dCgpIGVkaXRNb2RlID0gZmFsc2U7XG5cbiAgQElucHV0KCkgc2V0IHdpZGdldENvbmZpZyhjOiBJY2hhcnRzIHwgdW5kZWZpbmVkKSB7XG4gICAgdGhpcy5fd2lkZ2V0Q29uZmlnID0gYztcbiAgICBpZiAodGhpcy5fd2lkZ2V0Q29uZmlnPy5zdG9yZWRRdWVyeSAmJiB0aGlzLl93aWRnZXRDb25maWc/LmZvcm1WYWx1ZT8uYWdncmVnYXRpb24pIHtcbiAgICAgIHRoaXMuZ2V0U3RvcmVkUXVlcnkodGhpcy5fd2lkZ2V0Q29uZmlnLnN0b3JlZFF1ZXJ5KS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICB0aGlzLl9xdWVyeSA9IHRoaXMuc2VhcmNoU2VydmljZS5idWlsZFF1ZXJ5KHRoaXMuc3RvcmVkUXVlcnkpO1xuICAgICAgICB0aGlzLl93aWRnZXRDb25maWcuZm9ybVZhbHVlLnN0b3JlZFF1ZXJ5ID0gdGhpcy5zdG9yZWRRdWVyeS5uYW1lO1xuICAgICAgICBpZiAodGhpcy5fd2lkZ2V0Q29uZmlnPy5mb3JtVmFsdWU/LmFnZ3JlZ2F0aW9uKSB7XG4gICAgICAgICAgdGhpcy5nZW5lcmF0ZUNoYXJ0RGF0YSh0aGlzLl93aWRnZXRDb25maWc/LmZvcm1WYWx1ZT8uYWdncmVnYXRpb24sIHRoaXMuX3dpZGdldENvbmZpZz8uYWdncmVnYXRpb25UeXBlKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfVxuXG4gIH1cblxuICBnZXQgd2lkZ2V0Q29uZmlnKCkge1xuICAgIHJldHVybiB0aGlzLl93aWRnZXRDb25maWc7XG4gIH1cblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJvdXRlcjogUm91dGVyLFxuICAgIHByaXZhdGUgc2VhcmNoU2VydmljZTogU2VhcmNoU2VydmljZSxcbiAgICBwcml2YXRlIGFwcFNlYXJjaFNlcnZpY2U6IEFwcFNlYXJjaFNlcnZpY2UsXG4gICAgcHJpdmF0ZSBzdG9yZWRRdWVyaWVzU2VydmljZTogU3RvcmVkUXVlcmllc1NlcnZpY2UsXG4gICAgcHJpdmF0ZSB0cmFuc2xhdGU6IFRyYW5zbGF0ZVNlcnZpY2UsXG4gICAgcHJpdmF0ZSBzeXN0ZW1TZXJ2aWNlOiBTeXN0ZW1TZXJ2aWNlXG4gICkge31cblxuXG4gIGdldFN0b3JlZFF1ZXJ5KGlkOiBzdHJpbmcpIHtcbiAgICByZXR1cm4gdGhpcy5zdG9yZWRRdWVyaWVzU2VydmljZS5nZXRTdG9yZWRRdWVyeShpZCkucGlwZShcbiAgICAgICAgdW50aWxEZXN0cm95ZWQodGhpcyksXG4gICAgICAgIHRhcChzdG9yZWRRdWVyeSA9PiB7XG4gICAgICAgICAgdGhpcy5zdG9yZWRRdWVyeSA9IHN0b3JlZFF1ZXJ5O1xuICAgICAgICB9KVxuICAgICk7XG4gIH1cblxuICBwcml2YXRlIGdlbmVyYXRlQ2hhcnREYXRhKGZpZWxkLCB0eXBlKSB7XG4gICAgdGhpcy5yZWZyZXNoaW5nUmVxdWVzdCA9IHRydWU7XG4gICAgY29uc3QgcXVlcnlOYW1lID0gdGhpcy5fcXVlcnkubmFtZTtcbiAgICBkZWxldGUgdGhpcy5fcXVlcnkubmFtZTtcbiAgICB0aGlzLl9xdWVyeSA9IHRoaXMuc2VhcmNoU2VydmljZS5idWlsZFF1ZXJ5KHRoaXMuX3F1ZXJ5KTtcbiAgICB0aGlzLnNlYXJjaFNlcnZpY2UuZXhlY3V0ZVF1ZXJ5KHthZ2dzOiB7W2ZpZWxkXToge3NpemU6IHRoaXMuX3dpZGdldENvbmZpZz8uZm9ybVZhbHVlPy5zaXplfX0sIC4uLnRoaXMuX3F1ZXJ5LmdldFF1ZXJ5SnNvbigpfSwgdHJ1ZSlcbiAgICAgIC5zdWJzY3JpYmUoKHJlcykgPT4ge1xuICAgICAgICB0aGlzLnJlZnJlc2hpbmdSZXF1ZXN0ID0gZmFsc2U7XG4gICAgICAgIHRoaXMuaXNUaGVyZURhdGEgPSByZXMuYWdncmVnYXRpb25zW09iamVjdC5rZXlzKHJlcy5hZ2dyZWdhdGlvbnMpWzBdXS5idWNrZXRzO1xuICAgICAgICB0aGlzLl9xdWVyeS5uYW1lID0gcXVlcnlOYW1lO1xuICAgICAgICBpZiAodGhpcy5pc1RoZXJlRGF0YS5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgdGhpcy5jaGFydERhdGEgPSByZXMuYWdncmVnYXRpb25zW09iamVjdC5rZXlzKHJlcy5hZ2dyZWdhdGlvbnMpWzBdXS5idWNrZXRzLm1hcCgoZSkgPT4ge1xuICAgICAgICAgICAgaWYgKHR5cGUgPT09ICdEQVRFVElNRScpIHtcbiAgICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICBncm91cDogdGhpcy50cmFuc2xhdGUuaW5zdGFudCgnZW8uc2VhcmNoLmFnZy50aW1lLicgKyBlLmtleSksXG4gICAgICAgICAgICAgICAgdmFsdWU6IGUuZG9jX2NvdW50LFxuICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgfSBlbHNlIGlmICh0eXBlID09PSAnQk9PTEVBTicpIHtcbiAgICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICBncm91cDogZS5rZXkgPT09IDAgPyAnXFx1MjYxMCcgOiAnXFx1MjYxMScsXG4gICAgICAgICAgICAgICAgdmFsdWU6IGUuZG9jX2NvdW50LFxuICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICBncm91cDogZS5rZXksXG4gICAgICAgICAgICAgICAgdmFsdWU6IGUuZG9jX2NvdW50LFxuICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH0sICk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHRoaXMuX3dpZGdldENvbmZpZz8uZm9ybVZhbHVlPy5hZ2dyZWdhdGlvbiA9PT0gJ3N5c29iamVjdC5tb2RpZmllZCcpIHtcbiAgICAgICAgICB0aGlzLmNoYXJ0RGF0YSA9IHJlcy5hZ2dyZWdhdGlvbnMubW9kaWZpZWQuYnVja2V0cy5tYXAoKGUpID0+IHtcbiAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgIGdyb3VwOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdlby5zZWFyY2guYWdnLnRpbWUuJyArIGUua2V5KSxcbiAgICAgICAgICAgICAgdmFsdWU6IGUuZG9jX2NvdW50LFxuICAgICAgICAgICAgfTtcbiAgICAgICAgICB9LCApO1xuICAgICAgICB9XG4gICAgICAgIGlmICh0aGlzLl93aWRnZXRDb25maWc/LmZvcm1WYWx1ZT8uYWdncmVnYXRpb24gPT09ICdzeXNvYmplY3QuY3JlYXRlZCcpIHtcbiAgICAgICAgICB0aGlzLmNoYXJ0RGF0YSA9IHJlcy5hZ2dyZWdhdGlvbnMuY3JlYXRlZC5idWNrZXRzLm1hcCgoZSkgPT4ge1xuICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgZ3JvdXA6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ2VvLnNlYXJjaC5hZ2cudGltZS4nICsgZS5rZXkpLFxuICAgICAgICAgICAgICB2YWx1ZTogZS5kb2NfY291bnQsXG4gICAgICAgICAgICB9O1xuICAgICAgICAgIH0sICk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHRoaXMuX3dpZGdldENvbmZpZz8uZm9ybVZhbHVlPy5hZ2dyZWdhdGlvbiA9PT0gJ3N5c2RvY3VtZW50Lm1pbWV0eXBlZ3JvdXAnKSB7XG4gICAgICAgICAgdGhpcy5jaGFydERhdGEgPSByZXMuYWdncmVnYXRpb25zLm1pbWV0eXBlZ3JvdXAuYnVja2V0cy5tYXAoKGUpID0+IHtcbiAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgIGdyb3VwOiBlLmtleSxcbiAgICAgICAgICAgICAgdmFsdWU6IGUuZG9jX2NvdW50LFxuICAgICAgICAgICAgfTtcbiAgICAgICAgICB9LCApO1xuICAgICAgICB9XG4gICAgICAgIGlmICh0aGlzLl93aWRnZXRDb25maWc/LmZvcm1WYWx1ZT8uYWdncmVnYXRpb24gPT09ICdzeXNvYmplY3QudHlwZScpIHtcblxuICAgICAgICAgIHRoaXMuY2hhcnREYXRhID0gcmVzLmFnZ3JlZ2F0aW9ucy50eXBlLmJ1Y2tldHMubWFwKChlKSA9PiB7XG4gICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICBncm91cDogdGhpcy5zeXN0ZW1TZXJ2aWNlLmdldE9iamVjdFR5cGUoZS5rZXkpLmxhYmVsLFxuICAgICAgICAgICAgICB2YWx1ZTogZS5kb2NfY291bnQsXG4gICAgICAgICAgICB9O1xuICAgICAgICAgIH0sICk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAodGhpcy5fd2lkZ2V0Q29uZmlnPy5mb3JtVmFsdWU/LmFnZ3JlZ2F0aW9uID09PSAnc3lzZG9jdW1lbnQuZmlsZXNpemUnKSB7XG4gICAgICAgICAgdGhpcy5jaGFydERhdGEgPSByZXMuYWdncmVnYXRpb25zLmZpbGVzaXplLmJ1Y2tldHMubWFwKChlKSA9PiB7XG4gICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICBncm91cDogdGhpcy50cmFuc2xhdGUuaW5zdGFudCgnZW8uc2VhcmNoLmFnZy5maWxlc2l6ZS4nICsgZS5rZXkpLFxuICAgICAgICAgICAgICB2YWx1ZTogZS5kb2NfY291bnQsXG4gICAgICAgICAgICB9O1xuICAgICAgICAgIH0sICk7XG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgICAoZXJyb3IpID0+IHtcbiAgICAgICAgdGhpcy5lbXB0eSA9IHRydWU7XG4gICAgICB9KTtcbiAgfVxuXG4gIHNldFF1ZXJ5VG9BcHBTZWFyY2goKSB7XG4gICAgdGhpcy5hcHBTZWFyY2hTZXJ2aWNlLnNldFF1ZXJ5KHRoaXMuc3RvcmVkUXVlcnkpO1xuICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFt7b3V0bGV0czoge21vZGFsOiAnc2VhcmNoJ319XSk7XG59XG5cbiAgcmVmcmVzaCgpIHtcbiAgICB0aGlzLmdldFN0b3JlZFF1ZXJ5KHRoaXMuX3dpZGdldENvbmZpZy5zdG9yZWRRdWVyeSkuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgIHRoaXMuX3F1ZXJ5ID0gdGhpcy5zZWFyY2hTZXJ2aWNlLmJ1aWxkUXVlcnkodGhpcy5zdG9yZWRRdWVyeSk7XG4gICAgICB0aGlzLl93aWRnZXRDb25maWcuZm9ybVZhbHVlLnN0b3JlZFF1ZXJ5ID0gdGhpcy5zdG9yZWRRdWVyeS5uYW1lO1xuICAgICAgaWYgKHRoaXMuX3dpZGdldENvbmZpZz8uZm9ybVZhbHVlPy5hZ2dyZWdhdGlvbikge1xuICAgICAgICB0aGlzLmdlbmVyYXRlQ2hhcnREYXRhKHRoaXMuX3dpZGdldENvbmZpZz8uZm9ybVZhbHVlPy5hZ2dyZWdhdGlvbiwgdGhpcy5fd2lkZ2V0Q29uZmlnPy5hZ2dyZWdhdGlvblR5cGUpO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgb25FbWl0UXVlcnlDbGljayhldmVudCkge1xuICAgIGRlbGV0ZSB0aGlzLl9xdWVyeS5maWVsZHM7XG4gICAgY29uc3QgdXJpUGFyYW0gPSBlbmNvZGVVUklDb21wb25lbnQoVXRpbHMuZm9ybURhdGFTdHJpbmdpZnkodGhpcy5fcXVlcnkuZ2V0UXVlcnlKc29uKCkpKTtcbiAgICBjb25zdCB1cmlQYXJhbVF1ZXJ5OiBOYXZpZ2F0aW9uRXh0cmFzID0ge3F1ZXJ5UGFyYW1zOiB7J3F1ZXJ5JzogdXJpUGFyYW19fTtcbiAgICBjb25zdCBxdWVyeVBhcmFtcyA9IG5ldyBVUkxTZWFyY2hQYXJhbXModXJpUGFyYW1RdWVyeS5xdWVyeVBhcmFtcykudG9TdHJpbmcoKTtcbiAgICBjb25zdCB1cmwgPSB3aW5kb3cubG9jYXRpb24uaHJlZi5zcGxpdCgnL2Rhc2hib2FyZCcpWzBdICsgJy9yZXN1bHQ/JyArIHF1ZXJ5UGFyYW1zO1xuICAgIHdpbmRvdy5vcGVuKHVybCwgZXZlbnQ/LmN0cmxLZXkgfHwgdGhpcy5lZGl0TW9kZSA/ICdfYmxhbmsnIDogJ19zZWxmJyk7XG4gIH1cblxufVxuIiwiPGhlYWRlcj5cbiAgICA8ZGl2IGNsYXNzPVwiaGVhZGVyLXRpdGxlXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJ0aXRsZVwiICpuZ0lmPVwid2lkZ2V0Q29uZmlnPy5mb3JtVmFsdWU/LnN0b3JlZFF1ZXJ5XCI+XG4gICAgICAgICAgICB7e3dpZGdldENvbmZpZz8uZm9ybVZhbHVlPy5zdG9yZWRRdWVyeX19PC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJpY29ucy10aXRsZVwiICpuZ0lmPVwidGhpcy53aWRnZXRDb25maWc/LnN0b3JlZFF1ZXJ5XCI+XG4gICAgICAgICAgICA8ZW8taWNvbiBjbGFzcz1cImJ1dHRvbiBwcmltYXJ5XCIgW2ljb25TcmNdPVwiJ2Fzc2V0cy9fZGVmYXVsdC9zdmcvaWNfc2F2ZWRfc2VhcmNoLnN2ZydcIiAoY2xpY2spPVwic2V0UXVlcnlUb0FwcFNlYXJjaCgpXCJcbiAgICAgICAgICAgIFtpY29uVGl0bGVdPVwiKCdlby53aWRnZXQuaGl0bGlzdC50b29sdGlwLnNhdmVkU2VhcmNoSWNvbid8IHRyYW5zbGF0ZSlcIj48L2VvLWljb24+XG4gICAgICAgICAgICA8ZW8taWNvbiBjbGFzcz1cImJ1dHRvbiBwcmltYXJ5XCIgW2ljb25TcmNdPVwiJ2Fzc2V0cy9fZGVmYXVsdC9zdmcvaWNfb3Blbl90YWIuc3ZnJ1wiXG4gICAgICAgICAgICAgICAgKGNsaWNrKT1cIm9uRW1pdFF1ZXJ5Q2xpY2soJGV2ZW50KVwiXG4gICAgICAgICAgICAgICAgW2ljb25UaXRsZV09XCIoJ2VvLndpZGdldC5oaXRsaXN0LnRvb2x0aXAub3BlbmlucmVzdWx0bGlzdCd8IHRyYW5zbGF0ZSlcIj48L2VvLWljb24+XG4gICAgICAgICAgICA8ZW8taWNvbiBjbGFzcz1cImJ1dHRvbiBwcmltYXJ5XCIgW2ljb25TcmNdPVwiJ2Fzc2V0cy9fZGVmYXVsdC9zdmcvaWNfcmVmcmVzaC5zdmcnXCIgKGNsaWNrKT1cInJlZnJlc2goKVwiXG4gICAgICAgICAgICAgICAgW2ljb25UaXRsZV09XCIoJ2VvLndpZGdldC5oaXRsaXN0LnRvb2x0aXAucmVmcmVzaCd8IHRyYW5zbGF0ZSlcIj48L2VvLWljb24+XG4gICAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuPC9oZWFkZXI+XG5cbjxtYWluIGNsYXNzPVwibG9hZGVyLW92ZXJsYXlfX21hc2tcIiAqbmdJZj1cInJlZnJlc2hpbmdSZXF1ZXN0ICYmICFlbXB0eVwiPlxuICAgIDxlby1sb2FkaW5nLXNwaW5uZXIgW3NpemVdPVwiJ2xhcmdlJ1wiPjwvZW8tbG9hZGluZy1zcGlubmVyPlxuPC9tYWluPlxuXG48bWFpbiBjbGFzcz1cImNoYXJ0XCIgKm5nSWY9XCIoY2hhcnREYXRhLmxlbmd0aCA+IDAgJiYgIXJlZnJlc2hpbmdSZXF1ZXN0KSB8fCAhZW1wdHkgOyBlbHNlIHRwbEVtcHR5XCI+XG4gICAgPGRpdiBjbGFzcz1cIml0ZW1cIiBbbmdTd2l0Y2hdPVwid2lkZ2V0Q29uZmlnIS5mb3JtVmFsdWUuY2hhcnRUeXBlXCI+XG4gICAgICAgIDxpYm0tc2ltcGxlLWJhci1jaGFydCAqbmdTd2l0Y2hDYXNlPVwiJ2JhcidcIiBbZGF0YV09XCJjaGFydERhdGFcIiBbb3B0aW9uc109XCJjaGFydE9wdGlvbnNcIj48L2libS1zaW1wbGUtYmFyLWNoYXJ0PlxuICAgICAgICA8aWJtLXBpZS1jaGFydCAqbmdTd2l0Y2hDYXNlPVwiJ3BpZSdcIiBbZGF0YV09XCJjaGFydERhdGFcIiBbb3B0aW9uc109XCJjaGFydE9wdGlvbnNcIj48L2libS1waWUtY2hhcnQ+XG4gICAgICAgIDxpYm0tZG9udXQtY2hhcnQgKm5nU3dpdGNoQ2FzZT1cIidkb251dCdcIiBbZGF0YV09XCJjaGFydERhdGFcIiBbb3B0aW9uc109XCJjaGFydE9wdGlvbnNcIj48L2libS1kb251dC1jaGFydD5cbiAgICA8L2Rpdj5cbjwvbWFpbj5cbjxuZy10ZW1wbGF0ZSAjdHBsRW1wdHk+XG4gICAgPGRpdiBjbGFzcz1cImVtcHR5XCIgKm5nSWY9XCIoIXJlZnJlc2hpbmdSZXF1ZXN0KSB8fCBlbXB0eVwiPlxuICAgICAgICA8ZW8tZXJyb3ItbWVzc2FnZVxuICAgICAgICAgICAgW2VtcHR5U3RhdGVdPVwie2ljb246ICdpY19zYXZlZF9zZWFyY2guc3ZnJywgdGV4dDogJ2VvLndvcmtzcGFjZS53aWRnZXQubGlzdC5lbXB0eSd9XCI+PC9lby1lcnJvci1tZXNzYWdlPlxuICAgIDwvZGl2PlxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWNoYXJ0cy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvZW8tY2xpZW50L2Rhc2hib2FyZC93aWRnZXRzL2NoYXJ0cy13aWRnZXQvaWNoYXJ0cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGludGVyZmFjZSBJY2hhcnRzIHtcbiAgICBzdG9yZWRRdWVyeTogc3RyaW5nO1xuICAgIGZvcm1WYWx1ZToge1xuICAgICAgICBjaGFydFR5cGU6ICBzdHJpbmc7XG4gICAgICAgIC8vIG51bWJlciBvZiBpdGVtcyB0byBiZSBmZXRjaGVkXG4gICAgICAgIHNpemU6IG51bWJlcjtcbiAgICAgICAgYWdncmVnYXRpb246IHN0cmluZztcbiAgICAgICAgc3RvcmVkUXVlcnk6IHN0cmluZztcbiAgICB9O1xuICAgIGFnZ3JlZ2F0aW9uVHlwZTogc3RyaW5nO1xufVxuXG4iXX0=
@@ -118,7 +118,12 @@ let HitlistSetupComponent = class HitlistSetupComponent {
118
118
  countTile: this._widgetConfig ? this._widgetConfig.formValue.countTile : '',
119
119
  sortRevert: this._widgetConfig ? this._widgetConfig.formValue.sortRevert : '',
120
120
  });
121
- this.getSortFields(this.storedQuery?.types[0].qname);
121
+ if (this.storedQuery.types.length !== 1) {
122
+ this.getSortFields('sysdocument');
123
+ }
124
+ else {
125
+ this.getSortFields(this.storedQuery.types[0].qname);
126
+ }
122
127
  setTimeout(() => {
123
128
  this.setupForm.patchValue({
124
129
  sortField: this._widgetConfig ? this._widgetConfig.formValue.sortField : '',
@@ -135,17 +140,17 @@ let HitlistSetupComponent = class HitlistSetupComponent {
135
140
  }
136
141
  };
137
142
  HitlistSetupComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: HitlistSetupComponent, deps: [{ token: i1.UntypedFormBuilder }, { token: i2.StoredQueriesService }, { token: i2.TranslateService }, { token: i2.UserService }], target: i0.ɵɵFactoryTarget.Component });
138
- HitlistSetupComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.2", type: HitlistSetupComponent, selector: "eo-hitlist-setup", inputs: { widgetConfig: "widgetConfig" }, outputs: { widgetConfigChange: "widgetConfigChange" }, ngImport: i0, template: "<div class=\"setup\">\n <form [formGroup]=\"setupForm\">\n\n <eo-form-input *ngIf=\"storedQueriesPicker?.codesystem?.entries\" [skipToggle]=\"true\"\n [label]=\"'eo.search.title.storedqueries' | translate\" [required]=\"true\">\n <eo-codesystem formControlName=\"storedQuery\" [pickerTitle]=\"storedQueriesPicker.title\"\n [codesystem]=\"storedQueriesPicker.codesystem\"></eo-codesystem>\n </eo-form-input>\n\n\n <div class=\"checkboxCountTitle\">\n <eo-form-input *ngIf=\"this.widgetConfig?.storedQuery\" class=\"label checkbox\"\n [label]=\"'eo.workspace.widget.form.label.countType' | translate\" [skipToggle]=\"true\">\n <eo-checkbox formControlName=\"countTile\" [tristate]=\"false\"></eo-checkbox>\n </eo-form-input>\n </div>\n\n <div class=\"listOptions\" *ngIf=\"this.widgetConfig?.storedQuery && !setupForm.value.countTile\">\n\n <eo-form-input [skipToggle]=\"true\" [label]=\"'eo.workspace.widget.form.label.size' | translate\">\n <eo-number [scale]=\"0\" formControlName=\"size\"></eo-number>\n </eo-form-input>\n\n <eo-form-input [skipToggle]=\"true\" *ngIf=\"sortFiledPicker?.codesystem?.entries\"\n [label]=\"'eo.workspace.widget.form.label.sortField'|translate\">\n <eo-codesystem formControlName=\"sortField\" [pickerTitle]=\"sortFiledPicker.title\"\n [codesystem]=\"sortFiledPicker.codesystem\"></eo-codesystem>\n </eo-form-input>\n\n <eo-form-input class=\"label checkbox\" [label]=\"'eo.workspace.widget.form.label.sortRevert'|translate\"\n [skipToggle]=\"true\">\n <eo-checkbox formControlName=\"sortRevert\" [tristate]=\"false\"></eo-checkbox>\n </eo-form-input>\n </div>\n </form>\n\n</div>\n\n<div class=\"preview\" *ngIf=\"this.widgetConfig?.storedQuery; else tplEmpty\">\n <eo-hitlist-widget [widgetConfig]=\"widgetConfig\" [editMode]=\"true\"></eo-hitlist-widget>\n</div>\n\n<ng-template #tplEmpty>\n <div class=\"empty\">\n <eo-error-message\n [emptyState]=\"{icon: 'ic_saved_search.svg', text: 'eo.workspace.widget.stored.queries.list.empty'}\"></eo-error-message>\n </div>\n</ng-template>\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 .checkboxCountTitle{padding-bottom:30px;padding-top:30px}: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{grid-area:preview;overflow-y:auto;background-color:var(--main-background);padding:var(--app-pane-padding)}:host .preview eo-hitlist-widget{border:1px solid var(--panel-divider-color)}\n"], dependencies: [{ kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { 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: "component", type: i4.ErrorMessageComponent, selector: "eo-error-message", inputs: ["emptyState"] }, { kind: "component", type: i5.FormInputComponent, selector: "eo-form-input", inputs: ["label", "tag", "description", "skipToggle", "isNull", "invalid", "disabled", "required"], outputs: ["onToggleLabel"] }, { kind: "component", type: i6.CodesystemComponent, selector: "eo-codesystem", inputs: ["situation", "pickerTitle", "placeholder", "codesystem", "multiselect", "readonly", "inputStyleClass", "filterFunction", "disablingFilterFunction"] }, { kind: "component", type: i7.NumberComponent, selector: "eo-number", inputs: ["scale", "precision", "grouping", "pattern", "readonly"] }, { kind: "component", type: i8.CheckboxComponent, selector: "eo-checkbox", inputs: ["required", "tristate", "readonly"] }, { kind: "component", type: i9.HitlistWidgetComponent, selector: "eo-hitlist-widget", inputs: ["editMode", "widgetConfig"] }, { kind: "pipe", type: i10.TranslatePipe, name: "translate" }] });
143
+ HitlistSetupComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.2", type: HitlistSetupComponent, selector: "eo-hitlist-setup", inputs: { widgetConfig: "widgetConfig" }, outputs: { widgetConfigChange: "widgetConfigChange" }, ngImport: i0, template: "<div class=\"setup\">\n <form [formGroup]=\"setupForm\">\n\n <eo-form-input *ngIf=\"storedQueriesPicker?.codesystem?.entries\" [skipToggle]=\"true\"\n [label]=\"'eo.search.title.storedqueries' | translate\" [required]=\"true\">\n <eo-codesystem formControlName=\"storedQuery\" [pickerTitle]=\"storedQueriesPicker.title\"\n [codesystem]=\"storedQueriesPicker.codesystem\" [emptyMessage]=\"'eo.workspace.widget.stored.queries.list.notAvailable'\"></eo-codesystem>\n </eo-form-input>\n\n\n <div class=\"checkboxCountTitle\">\n <eo-form-input *ngIf=\"this.widgetConfig?.storedQuery\" class=\"label checkbox\"\n [label]=\"'eo.workspace.widget.form.label.countType' | translate\" [skipToggle]=\"true\">\n <eo-checkbox formControlName=\"countTile\" [tristate]=\"false\"></eo-checkbox>\n </eo-form-input>\n </div>\n\n <div class=\"listOptions\" *ngIf=\"this.widgetConfig?.storedQuery && !setupForm.value.countTile\">\n\n <eo-form-input [skipToggle]=\"true\" [label]=\"'eo.workspace.widget.form.label.size' | translate\">\n <eo-number [scale]=\"0\" formControlName=\"size\"></eo-number>\n </eo-form-input>\n\n <eo-form-input [skipToggle]=\"true\" *ngIf=\"sortFiledPicker?.codesystem?.entries\"\n [label]=\"'eo.workspace.widget.form.label.sortField'|translate\">\n <eo-codesystem formControlName=\"sortField\" [pickerTitle]=\"sortFiledPicker.title\"\n [codesystem]=\"sortFiledPicker.codesystem\"></eo-codesystem>\n </eo-form-input>\n\n <eo-form-input class=\"label checkbox\" [label]=\"'eo.workspace.widget.form.label.sortRevert'|translate\"\n [skipToggle]=\"true\">\n <eo-checkbox formControlName=\"sortRevert\" [tristate]=\"false\"></eo-checkbox>\n </eo-form-input>\n </div>\n </form>\n\n</div>\n\n<div class=\"preview\" *ngIf=\"this.widgetConfig?.storedQuery; else tplEmpty\">\n <eo-hitlist-widget [widgetConfig]=\"widgetConfig\" [editMode]=\"true\"></eo-hitlist-widget>\n</div>\n\n<ng-template #tplEmpty>\n <div class=\"empty\">\n <eo-error-message\n [emptyState]=\"{icon: 'ic_saved_search.svg', text: 'eo.workspace.widget.stored.queries.list.empty'}\"></eo-error-message>\n </div>\n</ng-template>\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 .checkboxCountTitle{padding-bottom:30px;padding-top:30px}: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{grid-area:preview;overflow-y:auto;background-color:var(--main-background);padding:var(--app-pane-padding)}:host .preview eo-hitlist-widget{border:1px solid var(--panel-divider-color)}\n"], dependencies: [{ kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { 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: "component", type: i4.ErrorMessageComponent, selector: "eo-error-message", inputs: ["emptyState"] }, { kind: "component", type: i5.FormInputComponent, selector: "eo-form-input", inputs: ["label", "tag", "description", "skipToggle", "isNull", "invalid", "disabled", "required"], outputs: ["onToggleLabel"] }, { kind: "component", type: i6.CodesystemComponent, selector: "eo-codesystem", inputs: ["situation", "pickerTitle", "placeholder", "codesystem", "multiselect", "readonly", "inputStyleClass", "emptyMessage", "filterFunction", "disablingFilterFunction"] }, { kind: "component", type: i7.NumberComponent, selector: "eo-number", inputs: ["scale", "precision", "grouping", "pattern", "readonly"] }, { kind: "component", type: i8.CheckboxComponent, selector: "eo-checkbox", inputs: ["required", "tristate", "readonly"] }, { kind: "component", type: i9.HitlistWidgetComponent, selector: "eo-hitlist-widget", inputs: ["editMode", "widgetConfig"] }, { kind: "pipe", type: i10.TranslatePipe, name: "translate" }] });
139
144
  HitlistSetupComponent = __decorate([
140
145
  UntilDestroy()
141
146
  ], HitlistSetupComponent);
142
147
  export { HitlistSetupComponent };
143
148
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: HitlistSetupComponent, decorators: [{
144
149
  type: Component,
145
- args: [{ selector: 'eo-hitlist-setup', template: "<div class=\"setup\">\n <form [formGroup]=\"setupForm\">\n\n <eo-form-input *ngIf=\"storedQueriesPicker?.codesystem?.entries\" [skipToggle]=\"true\"\n [label]=\"'eo.search.title.storedqueries' | translate\" [required]=\"true\">\n <eo-codesystem formControlName=\"storedQuery\" [pickerTitle]=\"storedQueriesPicker.title\"\n [codesystem]=\"storedQueriesPicker.codesystem\"></eo-codesystem>\n </eo-form-input>\n\n\n <div class=\"checkboxCountTitle\">\n <eo-form-input *ngIf=\"this.widgetConfig?.storedQuery\" class=\"label checkbox\"\n [label]=\"'eo.workspace.widget.form.label.countType' | translate\" [skipToggle]=\"true\">\n <eo-checkbox formControlName=\"countTile\" [tristate]=\"false\"></eo-checkbox>\n </eo-form-input>\n </div>\n\n <div class=\"listOptions\" *ngIf=\"this.widgetConfig?.storedQuery && !setupForm.value.countTile\">\n\n <eo-form-input [skipToggle]=\"true\" [label]=\"'eo.workspace.widget.form.label.size' | translate\">\n <eo-number [scale]=\"0\" formControlName=\"size\"></eo-number>\n </eo-form-input>\n\n <eo-form-input [skipToggle]=\"true\" *ngIf=\"sortFiledPicker?.codesystem?.entries\"\n [label]=\"'eo.workspace.widget.form.label.sortField'|translate\">\n <eo-codesystem formControlName=\"sortField\" [pickerTitle]=\"sortFiledPicker.title\"\n [codesystem]=\"sortFiledPicker.codesystem\"></eo-codesystem>\n </eo-form-input>\n\n <eo-form-input class=\"label checkbox\" [label]=\"'eo.workspace.widget.form.label.sortRevert'|translate\"\n [skipToggle]=\"true\">\n <eo-checkbox formControlName=\"sortRevert\" [tristate]=\"false\"></eo-checkbox>\n </eo-form-input>\n </div>\n </form>\n\n</div>\n\n<div class=\"preview\" *ngIf=\"this.widgetConfig?.storedQuery; else tplEmpty\">\n <eo-hitlist-widget [widgetConfig]=\"widgetConfig\" [editMode]=\"true\"></eo-hitlist-widget>\n</div>\n\n<ng-template #tplEmpty>\n <div class=\"empty\">\n <eo-error-message\n [emptyState]=\"{icon: 'ic_saved_search.svg', text: 'eo.workspace.widget.stored.queries.list.empty'}\"></eo-error-message>\n </div>\n</ng-template>\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 .checkboxCountTitle{padding-bottom:30px;padding-top:30px}: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{grid-area:preview;overflow-y:auto;background-color:var(--main-background);padding:var(--app-pane-padding)}:host .preview eo-hitlist-widget{border:1px solid var(--panel-divider-color)}\n"] }]
150
+ args: [{ selector: 'eo-hitlist-setup', template: "<div class=\"setup\">\n <form [formGroup]=\"setupForm\">\n\n <eo-form-input *ngIf=\"storedQueriesPicker?.codesystem?.entries\" [skipToggle]=\"true\"\n [label]=\"'eo.search.title.storedqueries' | translate\" [required]=\"true\">\n <eo-codesystem formControlName=\"storedQuery\" [pickerTitle]=\"storedQueriesPicker.title\"\n [codesystem]=\"storedQueriesPicker.codesystem\" [emptyMessage]=\"'eo.workspace.widget.stored.queries.list.notAvailable'\"></eo-codesystem>\n </eo-form-input>\n\n\n <div class=\"checkboxCountTitle\">\n <eo-form-input *ngIf=\"this.widgetConfig?.storedQuery\" class=\"label checkbox\"\n [label]=\"'eo.workspace.widget.form.label.countType' | translate\" [skipToggle]=\"true\">\n <eo-checkbox formControlName=\"countTile\" [tristate]=\"false\"></eo-checkbox>\n </eo-form-input>\n </div>\n\n <div class=\"listOptions\" *ngIf=\"this.widgetConfig?.storedQuery && !setupForm.value.countTile\">\n\n <eo-form-input [skipToggle]=\"true\" [label]=\"'eo.workspace.widget.form.label.size' | translate\">\n <eo-number [scale]=\"0\" formControlName=\"size\"></eo-number>\n </eo-form-input>\n\n <eo-form-input [skipToggle]=\"true\" *ngIf=\"sortFiledPicker?.codesystem?.entries\"\n [label]=\"'eo.workspace.widget.form.label.sortField'|translate\">\n <eo-codesystem formControlName=\"sortField\" [pickerTitle]=\"sortFiledPicker.title\"\n [codesystem]=\"sortFiledPicker.codesystem\"></eo-codesystem>\n </eo-form-input>\n\n <eo-form-input class=\"label checkbox\" [label]=\"'eo.workspace.widget.form.label.sortRevert'|translate\"\n [skipToggle]=\"true\">\n <eo-checkbox formControlName=\"sortRevert\" [tristate]=\"false\"></eo-checkbox>\n </eo-form-input>\n </div>\n </form>\n\n</div>\n\n<div class=\"preview\" *ngIf=\"this.widgetConfig?.storedQuery; else tplEmpty\">\n <eo-hitlist-widget [widgetConfig]=\"widgetConfig\" [editMode]=\"true\"></eo-hitlist-widget>\n</div>\n\n<ng-template #tplEmpty>\n <div class=\"empty\">\n <eo-error-message\n [emptyState]=\"{icon: 'ic_saved_search.svg', text: 'eo.workspace.widget.stored.queries.list.empty'}\"></eo-error-message>\n </div>\n</ng-template>\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 .checkboxCountTitle{padding-bottom:30px;padding-top:30px}: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{grid-area:preview;overflow-y:auto;background-color:var(--main-background);padding:var(--app-pane-padding)}:host .preview eo-hitlist-widget{border:1px solid var(--panel-divider-color)}\n"] }]
146
151
  }], ctorParameters: function () { return [{ type: i1.UntypedFormBuilder }, { type: i2.StoredQueriesService }, { type: i2.TranslateService }, { type: i2.UserService }]; }, propDecorators: { widgetConfigChange: [{
147
152
  type: Output
148
153
  }], widgetConfig: [{
149
154
  type: Input
150
155
  }] } });
151
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGl0bGlzdC1zZXR1cC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL2VvLWNsaWVudC9kYXNoYm9hcmQvd2lkZ2V0cy9oaXRsaXN0LXdpZGdldC9oaXRsaXN0LXNldHVwL2hpdGxpc3Qtc2V0dXAuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9lby1jbGllbnQvZGFzaGJvYXJkL3dpZGdldHMvaGl0bGlzdC13aWRnZXQvaGl0bGlzdC1zZXR1cC9oaXRsaXN0LXNldHVwLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQVUsTUFBTSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBRzdFLE9BQU8sRUFBQyxZQUFZLEVBQUUsY0FBYyxFQUFDLE1BQU0sdUJBQXVCLENBQUM7QUFFbkUsT0FBTyxFQUFtRSxLQUFLLEVBQUMsTUFBTSxjQUFjLENBQUM7QUFDckcsT0FBTyxFQUFDLElBQUksRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUMxQixPQUFPLEVBQUMsR0FBRyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7Ozs7Ozs7Ozs7OztBQVE1QixJQUFNLHFCQUFxQixHQUEzQixNQUFNLHFCQUFxQjtJQStCaEMsSUFBYSxZQUFZLENBQUMsRUFBWTtRQUNwQyxJQUFJLENBQUMsYUFBYSxHQUFHLEVBQUUsQ0FBQztJQUMxQixDQUFDO0lBRUQsSUFBSSxZQUFZO1FBQ2QsT0FBTyxJQUFJLENBQUMsYUFBYSxDQUFDO0lBQzVCLENBQUM7SUFFRCxZQUNVLEVBQXNCLEVBQ3RCLG9CQUEwQyxFQUMxQyxTQUEyQixFQUMzQixXQUF3QjtRQUh4QixPQUFFLEdBQUYsRUFBRSxDQUFvQjtRQUN0Qix5QkFBb0IsR0FBcEIsb0JBQW9CLENBQXNCO1FBQzFDLGNBQVMs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Q0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxTQUFTLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxFQUFFO2lCQUM5RSxDQUFDLENBQUM7Z0JBQ0gsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQztnQkFDckQsVUFBVSxDQUFDLEdBQUcsRUFBRTtvQkFDZCxJQUFJLENBQUMsU0FBUyxDQUFDLFVBQVUsQ0FBQzt3QkFDeEIsU0FBUyxFQUFFLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsU0FBUyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRTtxQkFDNUUsQ0FBQyxDQUFDO2dCQUNMLENBQUMsRUFBRSxHQUFHLENBQUMsQ0FBQztZQUNWLENBQUMsQ0FBQyxDQUFDO1NBQ0o7YUFBTTtZQUNMLElBQUksQ0FBQyxTQUFTLENBQUMsVUFBVSxDQUFDO2dCQUN4QixXQUFXLEVBQUUsRUFBRTtnQkFDZixJQUFJLEVBQUUsR0FBRzthQUNWLENBQUMsQ0FBQztTQUNKO0lBQ0gsQ0FBQzs7a0hBdklVLHFCQUFxQjtzR0FBckIscUJBQXFCLHlKQ2ZsQyx1bkVBZ0RBO0FEakNhLHFCQUFxQjtJQU5qQyxZQUFZLEVBQUU7R0FNRixxQkFBcUIsQ0F3SWpDO1NBeElZLHFCQUFxQjsyRkFBckIscUJBQXFCO2tCQUxqQyxTQUFTOytCQUNFLGtCQUFrQjtxTUFNbEIsa0JBQWtCO3NCQUEzQixNQUFNO2dCQTZCTSxZQUFZO3NCQUF4QixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uSW5pdCwgT3V0cHV0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7SVdpZGdldENvbXBvbmVudH0gZnJvbSAnQHl1dXZpcy93aWRnZXQtZ3JpZCc7XG5pbXBvcnQge1VudHlwZWRGb3JtR3JvdXAsIFVudHlwZWRGb3JtQnVpbGRlciwgVmFsaWRhdG9yc30gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHtVbnRpbERlc3Ryb3ksIHVudGlsRGVzdHJveWVkfSBmcm9tICdAbmduZWF0L3VudGlsLWRlc3Ryb3knO1xuaW1wb3J0IHtJSGl0bGlzdH0gZnJvbSAnLi4vSUhpdGxpc3QnO1xuaW1wb3J0IHtTdG9yZWRRdWVyaWVzU2VydmljZSwgU3RvcmVkUXVlcnksIFRyYW5zbGF0ZVNlcnZpY2UsIFVzZXJTZXJ2aWNlLCBVdGlsc30gZnJvbSAnQGVvLXNkay9jb3JlJztcbmltcG9ydCB7c2tpcH0gZnJvbSAncnhqcyc7XG5pbXBvcnQge3RhcH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5AVW50aWxEZXN0cm95KClcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2VvLWhpdGxpc3Qtc2V0dXAnLFxuICB0ZW1wbGF0ZVVybDogJy4vaGl0bGlzdC1zZXR1cC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2hpdGxpc3Qtc2V0dXAuY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBIaXRsaXN0U2V0dXBDb21wb25lbnQgaW1wbGVtZW50cyBJV2lkZ2V0Q29tcG9uZW50LCBPbkluaXQge1xuICBwcml2YXRlIF93aWRnZXRDb25maWc6IElIaXRsaXN0O1xuICBAT3V0cHV0KCkgd2lkZ2V0Q29uZmlnQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxJSGl0bGlzdD4oKTtcbiAgc3RvcmVkUXVlcmllczogU3RvcmVkUXVlcnlbXTtcblxuICBzZXR1cEZvcm06IFVudHlwZWRGb3JtR3JvdXAgPSB0aGlzLmZiLmdyb3VwKHtcbiAgICBzdG9yZWRRdWVyeTogW251bGxdLFxuICAgIHNpemU6IFtdLFxuICAgIGNvdW50VGlsZTogW2ZhbHNlXSxcbiAgICBzb3J0RmllbGQ6IFtdLFxuICAgIHNvcnRSZXZlcnQ6IFtdLFxuICB9KTtcblxuICBzdG9yZWRRdWVyaWVzUGlja2VyID0ge1xuICAgIHRpdGxlOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdlby5zZWFyY2gudGl0bGUuc3RvcmVkcXVlcmllcycpLFxuICAgIGNvZGVzeXN0ZW06IG51bGwsXG4gICAgdmFsdWU6IG51bGwsXG4gICAgcGFyYW1ldGVyOiBudWxsLFxuICAgIHR5cGVzOiBudWxsXG4gIH07XG5cbiAgc29ydEZpbGVkUGlja2VyID0ge1xuICAgIHRpdGxlOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdlby53b3Jrc3BhY2Uud2lkZ2V0LmZvcm0uc29ydEZpZWxkJyksXG4gICAgY29kZXN5c3RlbTogbnVsbCxcbiAgICB2YWx1ZTogbnVsbCxcbiAgICBwYXJhbWV0ZXI6IG51bGwsXG4gICAgdHlwZXM6IG51bGxcbiAgfTtcbiAgc2VsZWN0ZWRTYXZlZFNlYXJjaE5hbWUgPSAnJztcbiAgc3RvcmVkUXVlcnk6IFN0b3JlZFF1ZXJ5O1xuXG4gIEBJbnB1dCgpIHNldCB3aWRnZXRDb25maWcod2M6IElIaXRsaXN0KSB7XG4gICAgdGhpcy5fd2lkZ2V0Q29uZmlnID0gd2M7XG4gIH1cblxuICBnZXQgd2lkZ2V0Q29uZmlnKCkge1xuICAgIHJldHVybiB0aGlzLl93aWRnZXRDb25maWc7XG4gIH1cblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGZiOiBVbnR5cGVkRm9ybUJ1aWxkZXIsXG4gICAgcHJpdmF0ZSBzdG9yZWRRdWVyaWVzU2VydmljZTogU3RvcmVkUXVlcmllc1NlcnZpY2UsXG4gICAgcHJpdmF0ZSB0cmFuc2xhdGU6IFRyYW5zbGF0ZVNlcnZpY2UsXG4gICAgcHJpdmF0ZSB1c2VyU2VydmljZTogVXNlclNlcnZpY2VcbiAgKSB7XG4gICAgdGhpcy5zZXR1cEZvcm0udmFsdWVDaGFuZ2VzLnBpcGUoc2tpcCgxKSwgdW50aWxEZXN0cm95ZWQodGhpcykpLnN1YnNjcmliZSgoXykgPT4ge1xuICAgICAgdGhpcy5zZXRXaWRnZXRDb25maWcoKTtcbiAgICB9KTtcbiAgICB0aGlzLmdldFN0b3JlZFF1ZXJ5cygpO1xuICB9XG5cbiAgcHJpdmF0ZSBzZXRXaWRnZXRDb25maWcoKSB7XG4gICAgaWYgKHRoaXMuc2V0dXBGb3JtLnZhbGlkICYmIHRoaXMuc3RvcmVkUXVlcmllcykge1xuICAgICAgdGhpcy5zdG9yZWRRdWVyeSA9IHRoaXMuc3RvcmVkUXVlcmllcy5maW5kKChzcSkgPT4gc3EubmFtZSA9PT0gdGhpcy5zZXR1cEZvcm0uZ2V0KCdzdG9yZWRRdWVyeScpLnZhbHVlKTtcbiAgICAgIHRoaXMud2lkZ2V0Q29uZmlnID0ge1xuICAgICAgICBzdG9yZWRRdWVyeTogdGhpcy5zdG9yZWRRdWVyeT8uaWQsXG4gICAgICAgIGZvcm1WYWx1ZTogdGhpcy5zZXR1cEZvcm0udmFsdWUsXG4gICAgICB9O1xuICAgICAgaWYgKHRoaXMuc2V0dXBGb3JtLmdldCgnc3RvcmVkUXVlcnknKS52YWx1ZSAhPT0gdGhpcy5zZWxlY3RlZFNhdmVkU2VhcmNoTmFtZSkge1xuICAgICAgICB0aGlzLnNlbGVjdGVkU2F2ZWRTZWFyY2hOYW1lID0gdGhpcy5zZXR1cEZvcm0uZ2V0KCdzdG9yZWRRdWVyeScpLnZhbHVlO1xuICAgICAgICBpZiAodGhpcy53aWRnZXRDb25maWc/LnN0b3JlZFF1ZXJ5KSB7XG4gICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLnNvcnRGaWxlZFBpY2tlci5jb2Rlc3lzdGVtID0gbnVsbDtcbiAgICAgICAgICAgIGlmICh0aGlzLnN0b3JlZFF1ZXJ5LnR5cGVzLmxlbmd0aCAhPT0gMSkge1xuICAgICAgICAgICAgICB0aGlzLmdldFNvcnRGaWVsZHMoJ3N5c2RvY3VtZW50Jyk7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICB0aGlzLmdldFNvcnRGaWVsZHModGhpcy5zdG9yZWRRdWVyeS50eXBlc1swXS5xbmFtZSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSwgMTAwKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgdGhpcy53aWRnZXRDb25maWdDaGFuZ2UuZW1pdCh0aGlzLl93aWRnZXRDb25maWcpO1xuICAgIH1cbiAgfVxuXG4gIGdldFN0b3JlZFF1ZXJ5cygpIHtcbiAgICB0aGlzLnN0b3JlZFF1ZXJpZXNTZXJ2aWNlXG4gICAgICAuZmV0Y2hTdG9yZWRRdWVyaWVzKCkucGlwZShcbiAgICAgIHVudGlsRGVzdHJveWVkKHRoaXMpLFxuICAgICkuc3Vic2NyaWJlKHN0b3JlZFF1ZXJpZXMgPT4ge1xuICAgICAgdGhpcy5zdG9yZWRRdWVyaWVzID0gc3RvcmVkUXVlcmllcztcbiAgICAgIHRoaXMuc3RvcmVkUXVlcmllc1BpY2tlci5jb2Rlc3lzdGVtID0ge1xuICAgICAgICBlbnRyaWVzOiB0aGlzLnN0b3JlZFF1ZXJpZXMubWFwKHN0b3JlZFF1ZXJ5ID0+ICh7XG4gICAgICAgICAgaWQ6IHN0b3JlZFF1ZXJ5LmlkLFxuICAgICAgICAgIGxhYmVsOiBzdG9yZWRRdWVyeS5uYW1lLFxuICAgICAgICAgIGRlZmF1bHRyZXByZXNlbnRhdGlvbjogc3RvcmVkUXVlcnkubmFtZSxcbiAgICAgICAgICBkYXRhOiBzdG9yZWRRdWVyeS5uYW1lXG4gICAgICAgIH0pKS5zb3J0KFV0aWxzLnNvcnRWYWx1ZXMoJ2xhYmVsJykpLFxuICAgICAgfTtcbiAgICB9KTtcbiAgfVxuXG4gIGdldFN0b3JlZFF1ZXJ5KGlkOiBzdHJpbmcpIHtcbiAgICByZXR1cm4gdGhpcy5zdG9yZWRRdWVyaWVzU2VydmljZS5nZXRTdG9yZWRRdWVyeShpZCkucGlwZShcbiAgICAgIHVudGlsRGVzdHJveWVkKHRoaXMpLFxuICAgICAgdGFwKHN0b3JlZFF1ZXJ5ID0+IHtcbiAgICAgICAgdGhpcy5zdG9yZWRRdWVyeSA9IHN0b3JlZFF1ZXJ5O1xuICAgICAgfSlcbiAgICApO1xuICB9XG5cbiAgZ2V0U29ydEZpZWxkcyh0eXBlKSB7XG4gICAgcmV0dXJuIHRoaXMudXNlclNlcnZpY2UuZ2V0RmllbGREZWZpbml0aW9uKHR5cGUpLnBpcGUodW50aWxEZXN0cm95ZWQodGhpcykpLnN1YnNjcmliZShkZWZpbml0aW9uID0+IHtcbiAgICAgIHRoaXMuc29ydEZpbGVkUGlja2VyLmNvZGVzeXN0ZW0gPSB7XG4gICAgICAgIGVudHJpZXM6IGRlZmluaXRpb24uZWxlbWVudHMubWFwKGZpZWxkID0+ICh7XG4gICAgICAgICAgaWQ6IGZpZWxkLm5hbWUsXG4gICAgICAgICAgZGVmYXVsdHJlcHJlc2VudGF0aW9uOiBmaWVsZC5iYXNlcGFyYW0gPyB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdlby5nbG9iYWwuYmFzZXBhcmFtLicgKyBmaWVsZC5uYW1lKSA6IGZpZWxkLmxhYmVsLFxuICAgICAgICAgIGRhdGE6IGZpZWxkLm5hbWVcbiAgICAgICAgfSkpLnNvcnQoVXRpbHMuc29ydFZhbHVlcygnZGVmYXVsdHJlcHJlc2VudGF0aW9uJykpLFxuICAgICAgfTtcbiAgICB9KTtcbiAgfVxuXG4gIG5nT25Jbml0KCkge1xuICAgIGlmICh0aGlzLl93aWRnZXRDb25maWc/LnN0b3JlZFF1ZXJ5KSB7XG4gICAgICB0aGlzLmdldFN0b3JlZFF1ZXJ5KHRoaXMuX3dpZGdldENvbmZpZz8uc3RvcmVkUXVlcnkpLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgIHRoaXMuc2V0dXBGb3JtLnBhdGNoVmFsdWUoe1xuICAgICAgICAgIHN0b3JlZFF1ZXJ5OiB0aGlzLnN0b3JlZFF1ZXJ5ID8gdGhpcy5zdG9yZWRRdWVyeS5uYW1lIDogJycsXG4gICAgICAgICAgc2l6ZTogdGhpcy5fd2lkZ2V0Q29uZmlnID8gdGhpcy5fd2lkZ2V0Q29uZmlnLmZvcm1WYWx1ZS5zaXplIDogJzUnLFxuICAgICAgICAgIGNvdW50VGlsZTogdGhpcy5fd2lkZ2V0Q29uZmlnID8gdGhpcy5fd2lkZ2V0Q29uZmlnLmZvcm1WYWx1ZS5jb3VudFRpbGUgOiAnJyxcbiAgICAgICAgICBzb3J0UmV2ZXJ0OiB0aGlzLl93aWRnZXRDb25maWcgPyB0aGlzLl93aWRnZXRDb25maWcuZm9ybVZhbHVlLnNvcnRSZXZlcnQgOiAnJyxcbiAgICAgICAgfSk7XG4gICAgICAgIHRoaXMuZ2V0U29ydEZpZWxkcyh0aGlzLnN0b3JlZFF1ZXJ5Py50eXBlc1swXS5xbmFtZSk7XG4gICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgIHRoaXMuc2V0dXBGb3JtLnBhdGNoVmFsdWUoe1xuICAgICAgICAgICAgc29ydEZpZWxkOiB0aGlzLl93aWRnZXRDb25maWcgPyB0aGlzLl93aWRnZXRDb25maWcuZm9ybVZhbHVlLnNvcnRGaWVsZCA6ICcnLFxuICAgICAgICAgIH0pO1xuICAgICAgICB9LCAxMDApO1xuICAgICAgfSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuc2V0dXBGb3JtLnBhdGNoVmFsdWUoe1xuICAgICAgICBzdG9yZWRRdWVyeTogJycsXG4gICAgICAgIHNpemU6ICc1JyxcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cInNldHVwXCI+XG4gIDxmb3JtIFtmb3JtR3JvdXBdPVwic2V0dXBGb3JtXCI+XG5cbiAgICA8ZW8tZm9ybS1pbnB1dCAqbmdJZj1cInN0b3JlZFF1ZXJpZXNQaWNrZXI/LmNvZGVzeXN0ZW0/LmVudHJpZXNcIiBbc2tpcFRvZ2dsZV09XCJ0cnVlXCJcbiAgICAgIFtsYWJlbF09XCInZW8uc2VhcmNoLnRpdGxlLnN0b3JlZHF1ZXJpZXMnIHwgdHJhbnNsYXRlXCIgW3JlcXVpcmVkXT1cInRydWVcIj5cbiAgICAgIDxlby1jb2Rlc3lzdGVtIGZvcm1Db250cm9sTmFtZT1cInN0b3JlZFF1ZXJ5XCIgW3BpY2tlclRpdGxlXT1cInN0b3JlZFF1ZXJpZXNQaWNrZXIudGl0bGVcIlxuICAgICAgICBbY29kZXN5c3RlbV09XCJzdG9yZWRRdWVyaWVzUGlja2VyLmNvZGVzeXN0ZW1cIj48L2VvLWNvZGVzeXN0ZW0+XG4gICAgPC9lby1mb3JtLWlucHV0PlxuXG5cbiAgICA8ZGl2IGNsYXNzPVwiY2hlY2tib3hDb3VudFRpdGxlXCI+XG4gICAgICA8ZW8tZm9ybS1pbnB1dCAqbmdJZj1cInRoaXMud2lkZ2V0Q29uZmlnPy5zdG9yZWRRdWVyeVwiIGNsYXNzPVwibGFiZWwgY2hlY2tib3hcIlxuICAgICAgICBbbGFiZWxdPVwiJ2VvLndvcmtzcGFjZS53aWRnZXQuZm9ybS5sYWJlbC5jb3VudFR5cGUnIHwgdHJhbnNsYXRlXCIgW3NraXBUb2dnbGVdPVwidHJ1ZVwiPlxuICAgICAgICA8ZW8tY2hlY2tib3ggZm9ybUNvbnRyb2xOYW1lPVwiY291bnRUaWxlXCIgW3RyaXN0YXRlXT1cImZhbHNlXCI+PC9lby1jaGVja2JveD5cbiAgICAgIDwvZW8tZm9ybS1pbnB1dD5cbiAgICA8L2Rpdj5cblxuICAgIDxkaXYgY2xhc3M9XCJsaXN0T3B0aW9uc1wiICpuZ0lmPVwidGhpcy53aWRnZXRDb25maWc/LnN0b3JlZFF1ZXJ5ICYmICFzZXR1cEZvcm0udmFsdWUuY291bnRUaWxlXCI+XG5cbiAgICAgIDxlby1mb3JtLWlucHV0IFtza2lwVG9nZ2xlXT1cInRydWVcIiBbbGFiZWxdPVwiJ2VvLndvcmtzcGFjZS53aWRnZXQuZm9ybS5sYWJlbC5zaXplJyB8IHRyYW5zbGF0ZVwiPlxuICAgICAgICA8ZW8tbnVtYmVyIFtzY2FsZV09XCIwXCIgZm9ybUNvbnRyb2xOYW1lPVwic2l6ZVwiPjwvZW8tbnVtYmVyPlxuICAgICAgPC9lby1mb3JtLWlucHV0PlxuXG4gICAgICA8ZW8tZm9ybS1pbnB1dCBbc2tpcFRvZ2dsZV09XCJ0cnVlXCIgKm5nSWY9XCJzb3J0RmlsZWRQaWNrZXI/LmNvZGVzeXN0ZW0/LmVudHJpZXNcIlxuICAgICAgICBbbGFiZWxdPVwiJ2VvLndvcmtzcGFjZS53aWRnZXQuZm9ybS5sYWJlbC5zb3J0RmllbGQnfHRyYW5zbGF0ZVwiPlxuICAgICAgICA8ZW8tY29kZXN5c3RlbSBmb3JtQ29udHJvbE5hbWU9XCJzb3J0RmllbGRcIiBbcGlja2VyVGl0bGVdPVwic29ydEZpbGVkUGlja2VyLnRpdGxlXCJcbiAgICAgICAgICBbY29kZXN5c3RlbV09XCJzb3J0RmlsZWRQaWNrZXIuY29kZXN5c3RlbVwiPjwvZW8tY29kZXN5c3RlbT5cbiAgICAgIDwvZW8tZm9ybS1pbnB1dD5cblxuICAgICAgPGVvLWZvcm0taW5wdXQgY2xhc3M9XCJsYWJlbCBjaGVja2JveFwiIFtsYWJlbF09XCInZW8ud29ya3NwYWNlLndpZGdldC5mb3JtLmxhYmVsLnNvcnRSZXZlcnQnfHRyYW5zbGF0ZVwiXG4gICAgICAgIFtza2lwVG9nZ2xlXT1cInRydWVcIj5cbiAgICAgICAgPGVvLWNoZWNrYm94IGZvcm1Db250cm9sTmFtZT1cInNvcnRSZXZlcnRcIiBbdHJpc3RhdGVdPVwiZmFsc2VcIj48L2VvLWNoZWNrYm94PlxuICAgICAgPC9lby1mb3JtLWlucHV0PlxuICAgIDwvZGl2PlxuICA8L2Zvcm0+XG5cbjwvZGl2PlxuXG48ZGl2IGNsYXNzPVwicHJldmlld1wiICpuZ0lmPVwidGhpcy53aWRnZXRDb25maWc/LnN0b3JlZFF1ZXJ5OyBlbHNlIHRwbEVtcHR5XCI+XG4gIDxlby1oaXRsaXN0LXdpZGdldCBbd2lkZ2V0Q29uZmlnXT1cIndpZGdldENvbmZpZ1wiIFtlZGl0TW9kZV09XCJ0cnVlXCI+PC9lby1oaXRsaXN0LXdpZGdldD5cbjwvZGl2PlxuXG48bmctdGVtcGxhdGUgI3RwbEVtcHR5PlxuICA8ZGl2IGNsYXNzPVwiZW1wdHlcIj5cbiAgICA8ZW8tZXJyb3ItbWVzc2FnZVxuICAgICAgW2VtcHR5U3RhdGVdPVwie2ljb246ICdpY19zYXZlZF9zZWFyY2guc3ZnJywgdGV4dDogJ2VvLndvcmtzcGFjZS53aWRnZXQuc3RvcmVkLnF1ZXJpZXMubGlzdC5lbXB0eSd9XCI+PC9lby1lcnJvci1tZXNzYWdlPlxuICA8L2Rpdj5cbjwvbmctdGVtcGxhdGU+XG4iXX0=
156
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGl0bGlzdC1zZXR1cC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL2VvLWNsaWVudC9kYXNoYm9hcmQvd2lkZ2V0cy9oaXRsaXN0LXdpZGdldC9oaXRsaXN0LXNldHVwL2hpdGxpc3Qtc2V0dXAuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9lby1jbGllbnQvZGFzaGJvYXJkL3dpZGdldHMvaGl0bGlzdC13aWRnZXQvaGl0bGlzdC1zZXR1cC9oaXRsaXN0LXNldHVwLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQVUsTUFBTSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBRzdFLE9BQU8sRUFBQyxZQUFZLEVBQUUsY0FBYyxFQUFDLE1BQU0sdUJBQXVCLENBQUM7QUFFbkUsT0FBTyxFQUFtRSxLQUFLLEVBQUMsTUFBTSxjQUFjLENBQUM7QUFDckcsT0FBTyxFQUFDLElBQUksRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUMxQixPQUFPLEVBQUMsR0FBRyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7Ozs7Ozs7Ozs7OztBQVE1QixJQUFNLHFCQUFxQixHQUEzQixNQUFNLHFCQUFxQjtJQStCaEMsSUFBYSxZQUFZLENBQUMsRUFBWTtRQUNwQyxJQUFJLENBQUMsYUFBYSxHQUFHLEVBQUUsQ0FBQztJQUMxQixDQUFDO0lBRUQsSUFBSSxZQUFZO1FBQ2QsT0FBTyxJQUFJLENBQUMsYUFBYSxDQUFDO0lBQzVCLENBQUM7SUFFRCxZQUNVLEVBQXNCLEVBQ3RCLG9CQUEwQyxFQUMxQyxTQUEyQixFQUMzQixXQUF3QjtRQUh4QixPQUFFLEdBQUYsRUFBRSxDQUFvQjtRQUN0Qix5QkFBb0IsR0FBcEIsb0JBQW9CLENBQXNCO1FBQzFDLGNBQVMs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T25Jbml0LCBPdXRwdXR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtJV2lkZ2V0Q29tcG9uZW50fSBmcm9tICdAeXV1dmlzL3dpZGdldC1ncmlkJztcbmltcG9ydCB7VW50eXBlZEZvcm1Hcm91cCwgVW50eXBlZEZvcm1CdWlsZGVyLCBWYWxpZGF0b3JzfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQge1VudGlsRGVzdHJveSwgdW50aWxEZXN0cm95ZWR9IGZyb20gJ0BuZ25lYXQvdW50aWwtZGVzdHJveSc7XG5pbXBvcnQge0lIaXRsaXN0fSBmcm9tICcuLi9JSGl0bGlzdCc7XG5pbXBvcnQge1N0b3JlZFF1ZXJpZXNTZXJ2aWNlLCBTdG9yZWRRdWVyeSwgVHJhbnNsYXRlU2VydmljZSwgVXNlclNlcnZpY2UsIFV0aWxzfSBmcm9tICdAZW8tc2RrL2NvcmUnO1xuaW1wb3J0IHtza2lwfSBmcm9tICdyeGpzJztcbmltcG9ydCB7dGFwfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbkBVbnRpbERlc3Ryb3koKVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZW8taGl0bGlzdC1zZXR1cCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9oaXRsaXN0LXNldHVwLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vaGl0bGlzdC1zZXR1cC5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIEhpdGxpc3RTZXR1cENvbXBvbmVudCBpbXBsZW1lbnRzIElXaWRnZXRDb21wb25lbnQsIE9uSW5pdCB7XG4gIHByaXZhdGUgX3dpZGdldENvbmZpZzogSUhpdGxpc3Q7XG4gIEBPdXRwdXQoKSB3aWRnZXRDb25maWdDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPElIaXRsaXN0PigpO1xuICBzdG9yZWRRdWVyaWVzOiBTdG9yZWRRdWVyeVtdO1xuXG4gIHNldHVwRm9ybTogVW50eXBlZEZvcm1Hcm91cCA9IHRoaXMuZmIuZ3JvdXAoe1xuICAgIHN0b3JlZFF1ZXJ5OiBbbnVsbF0sXG4gICAgc2l6ZTogW10sXG4gICAgY291bnRUaWxlOiBbZmFsc2VdLFxuICAgIHNvcnRGaWVsZDogW10sXG4gICAgc29ydFJldmVydDogW10sXG4gIH0pO1xuXG4gIHN0b3JlZFF1ZXJpZXNQaWNrZXIgPSB7XG4gICAgdGl0bGU6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ2VvLnNlYXJjaC50aXRsZS5zdG9yZWRxdWVyaWVzJyksXG4gICAgY29kZXN5c3RlbTogbnVsbCxcbiAgICB2YWx1ZTogbnVsbCxcbiAgICBwYXJhbWV0ZXI6IG51bGwsXG4gICAgdHlwZXM6IG51bGxcbiAgfTtcblxuICBzb3J0RmlsZWRQaWNrZXIgPSB7XG4gICAgdGl0bGU6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ2VvLndvcmtzcGFjZS53aWRnZXQuZm9ybS5zb3J0RmllbGQnKSxcbiAgICBjb2Rlc3lzdGVtOiBudWxsLFxuICAgIHZhbHVlOiBudWxsLFxuICAgIHBhcmFtZXRlcjogbnVsbCxcbiAgICB0eXBlczogbnVsbFxuICB9O1xuICBzZWxlY3RlZFNhdmVkU2VhcmNoTmFtZSA9ICcnO1xuICBzdG9yZWRRdWVyeTogU3RvcmVkUXVlcnk7XG5cbiAgQElucHV0KCkgc2V0IHdpZGdldENvbmZpZyh3YzogSUhpdGxpc3QpIHtcbiAgICB0aGlzLl93aWRnZXRDb25maWcgPSB3YztcbiAgfVxuXG4gIGdldCB3aWRnZXRDb25maWcoKSB7XG4gICAgcmV0dXJuIHRoaXMuX3dpZGdldENvbmZpZztcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgZmI6IFVudHlwZWRGb3JtQnVpbGRlcixcbiAgICBwcml2YXRlIHN0b3JlZFF1ZXJpZXNTZXJ2aWNlOiBTdG9yZWRRdWVyaWVzU2VydmljZSxcbiAgICBwcml2YXRlIHRyYW5zbGF0ZTogVHJhbnNsYXRlU2VydmljZSxcbiAgICBwcml2YXRlIHVzZXJTZXJ2aWNlOiBVc2VyU2VydmljZVxuICApIHtcbiAgICB0aGlzLnNldHVwRm9ybS52YWx1ZUNoYW5nZXMucGlwZShza2lwKDEpLCB1bnRpbERlc3Ryb3llZCh0aGlzKSkuc3Vic2NyaWJlKChfKSA9PiB7XG4gICAgICB0aGlzLnNldFdpZGdldENvbmZpZygpO1xuICAgIH0pO1xuICAgIHRoaXMuZ2V0U3RvcmVkUXVlcnlzKCk7XG4gIH1cblxuICBwcml2YXRlIHNldFdpZGdldENvbmZpZygpIHtcbiAgICBpZiAodGhpcy5zZXR1cEZvcm0udmFsaWQgJiYgdGhpcy5zdG9yZWRRdWVyaWVzKSB7XG4gICAgICB0aGlzLnN0b3JlZFF1ZXJ5ID0gdGhpcy5zdG9yZWRRdWVyaWVzLmZpbmQoKHNxKSA9PiBzcS5uYW1lID09PSB0aGlzLnNldHVwRm9ybS5nZXQoJ3N0b3JlZFF1ZXJ5JykudmFsdWUpO1xuICAgICAgdGhpcy53aWRnZXRDb25maWcgPSB7XG4gICAgICAgIHN0b3JlZFF1ZXJ5OiB0aGlzLnN0b3JlZFF1ZXJ5Py5pZCxcbiAgICAgICAgZm9ybVZhbHVlOiB0aGlzLnNldHVwRm9ybS52YWx1ZSxcbiAgICAgIH07XG4gICAgICBpZiAodGhpcy5zZXR1cEZvcm0uZ2V0KCdzdG9yZWRRdWVyeScpLnZhbHVlICE9PSB0aGlzLnNlbGVjdGVkU2F2ZWRTZWFyY2hOYW1lKSB7XG4gICAgICAgIHRoaXMuc2VsZWN0ZWRTYXZlZFNlYXJjaE5hbWUgPSB0aGlzLnNldHVwRm9ybS5nZXQoJ3N0b3JlZFF1ZXJ5JykudmFsdWU7XG4gICAgICAgIGlmICh0aGlzLndpZGdldENvbmZpZz8uc3RvcmVkUXVlcnkpIHtcbiAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICAgIHRoaXMuc29ydEZpbGVkUGlja2VyLmNvZGVzeXN0ZW0gPSBudWxsO1xuICAgICAgICAgICAgaWYgKHRoaXMuc3RvcmVkUXVlcnkudHlwZXMubGVuZ3RoICE9PSAxKSB7XG4gICAgICAgICAgICAgIHRoaXMuZ2V0U29ydEZpZWxkcygnc3lzZG9jdW1lbnQnKTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgIHRoaXMuZ2V0U29ydEZpZWxkcyh0aGlzLnN0b3JlZFF1ZXJ5LnR5cGVzWzBdLnFuYW1lKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9LCAxMDApO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICB0aGlzLndpZGdldENvbmZpZ0NoYW5nZS5lbWl0KHRoaXMuX3dpZGdldENvbmZpZyk7XG4gICAgfVxuICB9XG5cbiAgZ2V0U3RvcmVkUXVlcnlzKCkge1xuICAgIHRoaXMuc3RvcmVkUXVlcmllc1NlcnZpY2VcbiAgICAgIC5mZXRjaFN0b3JlZFF1ZXJpZXMoKS5waXBlKFxuICAgICAgdW50aWxEZXN0cm95ZWQodGhpcyksXG4gICAgKS5zdWJzY3JpYmUoc3RvcmVkUXVlcmllcyA9PiB7XG4gICAgICB0aGlzLnN0b3JlZFF1ZXJpZXMgPSBzdG9yZWRRdWVyaWVzO1xuICAgICAgdGhpcy5zdG9yZWRRdWVyaWVzUGlja2VyLmNvZGVzeXN0ZW0gPSB7XG4gICAgICAgIGVudHJpZXM6IHRoaXMuc3RvcmVkUXVlcmllcy5tYXAoc3RvcmVkUXVlcnkgPT4gKHtcbiAgICAgICAgICBpZDogc3RvcmVkUXVlcnkuaWQsXG4gICAgICAgICAgbGFiZWw6IHN0b3JlZFF1ZXJ5Lm5hbWUsXG4gICAgICAgICAgZGVmYXVsdHJlcHJlc2VudGF0aW9uOiBzdG9yZWRRdWVyeS5uYW1lLFxuICAgICAgICAgIGRhdGE6IHN0b3JlZFF1ZXJ5Lm5hbWVcbiAgICAgICAgfSkpLnNvcnQoVXRpbHMuc29ydFZhbHVlcygnbGFiZWwnKSksXG4gICAgICB9O1xuICAgIH0pO1xuICB9XG5cbiAgZ2V0U3RvcmVkUXVlcnkoaWQ6IHN0cmluZykge1xuICAgIHJldHVybiB0aGlzLnN0b3JlZFF1ZXJpZXNTZXJ2aWNlLmdldFN0b3JlZFF1ZXJ5KGlkKS5waXBlKFxuICAgICAgdW50aWxEZXN0cm95ZWQodGhpcyksXG4gICAgICB0YXAoc3RvcmVkUXVlcnkgPT4ge1xuICAgICAgICB0aGlzLnN0b3JlZFF1ZXJ5ID0gc3RvcmVkUXVlcnk7XG4gICAgICB9KVxuICAgICk7XG4gIH1cblxuICBnZXRTb3J0RmllbGRzKHR5cGUpIHtcbiAgICByZXR1cm4gdGhpcy51c2VyU2VydmljZS5nZXRGaWVsZERlZmluaXRpb24odHlwZSkucGlwZSh1bnRpbERlc3Ryb3llZCh0aGlzKSkuc3Vic2NyaWJlKGRlZmluaXRpb24gPT4ge1xuICAgICAgdGhpcy5zb3J0RmlsZWRQaWNrZXIuY29kZXN5c3RlbSA9IHtcbiAgICAgICAgZW50cmllczogZGVmaW5pdGlvbi5lbGVtZW50cy5tYXAoZmllbGQgPT4gKHtcbiAgICAgICAgICBpZDogZmllbGQubmFtZSxcbiAgICAgICAgICBkZWZhdWx0cmVwcmVzZW50YXRpb246IGZpZWxkLmJhc2VwYXJhbSA/IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ2VvLmdsb2JhbC5iYXNlcGFyYW0uJyArIGZpZWxkLm5hbWUpIDogZmllbGQubGFiZWwsXG4gICAgICAgICAgZGF0YTogZmllbGQubmFtZVxuICAgICAgICB9KSkuc29ydChVdGlscy5zb3J0VmFsdWVzKCdkZWZhdWx0cmVwcmVzZW50YXRpb24nKSksXG4gICAgICB9O1xuICAgIH0pO1xuICB9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgaWYgKHRoaXMuX3dpZGdldENvbmZpZz8uc3RvcmVkUXVlcnkpIHtcbiAgICAgIHRoaXMuZ2V0U3RvcmVkUXVlcnkodGhpcy5fd2lkZ2V0Q29uZmlnPy5zdG9yZWRRdWVyeSkuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgdGhpcy5zZXR1cEZvcm0ucGF0Y2hWYWx1ZSh7XG4gICAgICAgICAgc3RvcmVkUXVlcnk6IHRoaXMuc3RvcmVkUXVlcnkgPyB0aGlzLnN0b3JlZFF1ZXJ5Lm5hbWUgOiAnJyxcbiAgICAgICAgICBzaXplOiB0aGlzLl93aWRnZXRDb25maWcgPyB0aGlzLl93aWRnZXRDb25maWcuZm9ybVZhbHVlLnNpemUgOiAnNScsXG4gICAgICAgICAgY291bnRUaWxlOiB0aGlzLl93aWRnZXRDb25maWcgPyB0aGlzLl93aWRnZXRDb25maWcuZm9ybVZhbHVlLmNvdW50VGlsZSA6ICcnLFxuICAgICAgICAgIHNvcnRSZXZlcnQ6IHRoaXMuX3dpZGdldENvbmZpZyA/IHRoaXMuX3dpZGdldENvbmZpZy5mb3JtVmFsdWUuc29ydFJldmVydCA6ICcnLFxuICAgICAgICB9KTtcbiAgICAgICAgaWYgKHRoaXMuc3RvcmVkUXVlcnkudHlwZXMubGVuZ3RoICE9PSAxKSB7XG4gICAgICAgICAgdGhpcy5nZXRTb3J0RmllbGRzKCdzeXNkb2N1bWVudCcpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHRoaXMuZ2V0U29ydEZpZWxkcyh0aGlzLnN0b3JlZFF1ZXJ5LnR5cGVzWzBdLnFuYW1lKTtcbiAgICAgICAgfVxuICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICB0aGlzLnNldHVwRm9ybS5wYXRjaFZhbHVlKHtcbiAgICAgICAgICAgIHNvcnRGaWVsZDogdGhpcy5fd2lkZ2V0Q29uZmlnID8gdGhpcy5fd2lkZ2V0Q29uZmlnLmZvcm1WYWx1ZS5zb3J0RmllbGQgOiAnJyxcbiAgICAgICAgICB9KTtcbiAgICAgICAgfSwgMTAwKTtcbiAgICAgIH0pO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnNldHVwRm9ybS5wYXRjaFZhbHVlKHtcbiAgICAgICAgc3RvcmVkUXVlcnk6ICcnLFxuICAgICAgICBzaXplOiAnNScsXG4gICAgICB9KTtcbiAgICB9XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJzZXR1cFwiPlxuICA8Zm9ybSBbZm9ybUdyb3VwXT1cInNldHVwRm9ybVwiPlxuXG4gICAgPGVvLWZvcm0taW5wdXQgKm5nSWY9XCJzdG9yZWRRdWVyaWVzUGlja2VyPy5jb2Rlc3lzdGVtPy5lbnRyaWVzXCIgW3NraXBUb2dnbGVdPVwidHJ1ZVwiXG4gICAgICBbbGFiZWxdPVwiJ2VvLnNlYXJjaC50aXRsZS5zdG9yZWRxdWVyaWVzJyB8IHRyYW5zbGF0ZVwiIFtyZXF1aXJlZF09XCJ0cnVlXCI+XG4gICAgICA8ZW8tY29kZXN5c3RlbSBmb3JtQ29udHJvbE5hbWU9XCJzdG9yZWRRdWVyeVwiIFtwaWNrZXJUaXRsZV09XCJzdG9yZWRRdWVyaWVzUGlja2VyLnRpdGxlXCJcbiAgICAgICAgW2NvZGVzeXN0ZW1dPVwic3RvcmVkUXVlcmllc1BpY2tlci5jb2Rlc3lzdGVtXCIgW2VtcHR5TWVzc2FnZV09XCInZW8ud29ya3NwYWNlLndpZGdldC5zdG9yZWQucXVlcmllcy5saXN0Lm5vdEF2YWlsYWJsZSdcIj48L2VvLWNvZGVzeXN0ZW0+XG4gICAgPC9lby1mb3JtLWlucHV0PlxuXG5cbiAgICA8ZGl2IGNsYXNzPVwiY2hlY2tib3hDb3VudFRpdGxlXCI+XG4gICAgICA8ZW8tZm9ybS1pbnB1dCAqbmdJZj1cInRoaXMud2lkZ2V0Q29uZmlnPy5zdG9yZWRRdWVyeVwiIGNsYXNzPVwibGFiZWwgY2hlY2tib3hcIlxuICAgICAgICBbbGFiZWxdPVwiJ2VvLndvcmtzcGFjZS53aWRnZXQuZm9ybS5sYWJlbC5jb3VudFR5cGUnIHwgdHJhbnNsYXRlXCIgW3NraXBUb2dnbGVdPVwidHJ1ZVwiPlxuICAgICAgICA8ZW8tY2hlY2tib3ggZm9ybUNvbnRyb2xOYW1lPVwiY291bnRUaWxlXCIgW3RyaXN0YXRlXT1cImZhbHNlXCI+PC9lby1jaGVja2JveD5cbiAgICAgIDwvZW8tZm9ybS1pbnB1dD5cbiAgICA8L2Rpdj5cblxuICAgIDxkaXYgY2xhc3M9XCJsaXN0T3B0aW9uc1wiICpuZ0lmPVwidGhpcy53aWRnZXRDb25maWc/LnN0b3JlZFF1ZXJ5ICYmICFzZXR1cEZvcm0udmFsdWUuY291bnRUaWxlXCI+XG5cbiAgICAgIDxlby1mb3JtLWlucHV0IFtza2lwVG9nZ2xlXT1cInRydWVcIiBbbGFiZWxdPVwiJ2VvLndvcmtzcGFjZS53aWRnZXQuZm9ybS5sYWJlbC5zaXplJyB8IHRyYW5zbGF0ZVwiPlxuICAgICAgICA8ZW8tbnVtYmVyIFtzY2FsZV09XCIwXCIgZm9ybUNvbnRyb2xOYW1lPVwic2l6ZVwiPjwvZW8tbnVtYmVyPlxuICAgICAgPC9lby1mb3JtLWlucHV0PlxuXG4gICAgICA8ZW8tZm9ybS1pbnB1dCBbc2tpcFRvZ2dsZV09XCJ0cnVlXCIgKm5nSWY9XCJzb3J0RmlsZWRQaWNrZXI/LmNvZGVzeXN0ZW0/LmVudHJpZXNcIlxuICAgICAgICBbbGFiZWxdPVwiJ2VvLndvcmtzcGFjZS53aWRnZXQuZm9ybS5sYWJlbC5zb3J0RmllbGQnfHRyYW5zbGF0ZVwiPlxuICAgICAgICA8ZW8tY29kZXN5c3RlbSBmb3JtQ29udHJvbE5hbWU9XCJzb3J0RmllbGRcIiBbcGlja2VyVGl0bGVdPVwic29ydEZpbGVkUGlja2VyLnRpdGxlXCJcbiAgICAgICAgICBbY29kZXN5c3RlbV09XCJzb3J0RmlsZWRQaWNrZXIuY29kZXN5c3RlbVwiPjwvZW8tY29kZXN5c3RlbT5cbiAgICAgIDwvZW8tZm9ybS1pbnB1dD5cblxuICAgICAgPGVvLWZvcm0taW5wdXQgY2xhc3M9XCJsYWJlbCBjaGVja2JveFwiIFtsYWJlbF09XCInZW8ud29ya3NwYWNlLndpZGdldC5mb3JtLmxhYmVsLnNvcnRSZXZlcnQnfHRyYW5zbGF0ZVwiXG4gICAgICAgIFtza2lwVG9nZ2xlXT1cInRydWVcIj5cbiAgICAgICAgPGVvLWNoZWNrYm94IGZvcm1Db250cm9sTmFtZT1cInNvcnRSZXZlcnRcIiBbdHJpc3RhdGVdPVwiZmFsc2VcIj48L2VvLWNoZWNrYm94PlxuICAgICAgPC9lby1mb3JtLWlucHV0PlxuICAgIDwvZGl2PlxuICA8L2Zvcm0+XG5cbjwvZGl2PlxuXG48ZGl2IGNsYXNzPVwicHJldmlld1wiICpuZ0lmPVwidGhpcy53aWRnZXRDb25maWc/LnN0b3JlZFF1ZXJ5OyBlbHNlIHRwbEVtcHR5XCI+XG4gIDxlby1oaXRsaXN0LXdpZGdldCBbd2lkZ2V0Q29uZmlnXT1cIndpZGdldENvbmZpZ1wiIFtlZGl0TW9kZV09XCJ0cnVlXCI+PC9lby1oaXRsaXN0LXdpZGdldD5cbjwvZGl2PlxuXG48bmctdGVtcGxhdGUgI3RwbEVtcHR5PlxuICA8ZGl2IGNsYXNzPVwiZW1wdHlcIj5cbiAgICA8ZW8tZXJyb3ItbWVzc2FnZVxuICAgICAgW2VtcHR5U3RhdGVdPVwie2ljb246ICdpY19zYXZlZF9zZWFyY2guc3ZnJywgdGV4dDogJ2VvLndvcmtzcGFjZS53aWRnZXQuc3RvcmVkLnF1ZXJpZXMubGlzdC5lbXB0eSd9XCI+PC9lby1lcnJvci1tZXNzYWdlPlxuICA8L2Rpdj5cbjwvbmctdGVtcGxhdGU+XG4iXX0=