@bizdoc/core 2.3.36 → 2.3.39
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.
- package/esm2022/lib/admin/diff/configuration-diff.component.mjs +5 -4
- package/esm2022/lib/admin/document-trace/document-trace.component.mjs +3 -3
- package/esm2022/lib/admin/utility.pane.component.mjs +10 -12
- package/esm2022/lib/modules/chart.module.mjs +3 -3
- package/esm2022/lib/reports/cube/role-performance.component.mjs +98 -72
- package/esm2022/lib/reports/cube/role-performance1.component.mjs +178 -0
- package/esm2022/lib/reports/report-viewer.component.mjs +10 -7
- package/esm2022/lib/reports/report.pane.component.mjs +2 -2
- package/esm2022/lib/shared.module.mjs +5 -4
- package/fesm2022/bizdoc-core.mjs +288 -96
- package/fesm2022/bizdoc-core.mjs.map +1 -1
- package/lib/admin/utility.pane.component.d.ts +2 -2
- package/lib/reports/cube/role-performance.component.d.ts +22 -21
- package/lib/reports/cube/role-performance1.component.d.ts +49 -0
- package/lib/reports/report-viewer.component.d.ts +1 -1
- package/lib/reports/report.pane.component.d.ts +1 -1
- package/lib/shared.module.d.ts +195 -194
- package/package.json +1 -1
@@ -1,6 +1,7 @@
|
|
1
1
|
import { __decorate } from "tslib";
|
2
2
|
import { Component } from '@angular/core';
|
3
3
|
import { Chart } from '@syncfusion/ej2-charts';
|
4
|
+
import { Subject, startWith, takeUntil } from 'rxjs';
|
4
5
|
/// <reference path="./node_modules/dayjs/plugin/duration.d.ts" />
|
5
6
|
import dayjs from 'dayjs';
|
6
7
|
import { BizDoc } from '../../core/decorators';
|
@@ -10,73 +11,88 @@ import * as i1 from "../../core/router";
|
|
10
11
|
import * as i2 from "../../core/account.service";
|
11
12
|
import * as i3 from "../../core/session.service";
|
12
13
|
import * as i4 from "../../core/translate.service";
|
13
|
-
import * as i5 from "../report-ref";
|
14
14
|
let RolesPerformanceComponent = class RolesPerformanceComponent {
|
15
|
-
constructor(_elementRef, _router, _accounts, _session, _translate
|
15
|
+
constructor(_elementRef, _router, _accounts, _session, _translate) {
|
16
16
|
this._elementRef = _elementRef;
|
17
17
|
this._router = _router;
|
18
18
|
this._accounts = _accounts;
|
19
19
|
this._session = _session;
|
20
20
|
this._translate = _translate;
|
21
|
-
this._reportRef = _reportRef;
|
22
|
-
this.maxStd = 0;
|
23
|
-
this.maxDuration = 0;
|
24
|
-
this.actions = {};
|
25
21
|
this.legendSettings = {
|
26
22
|
position: 'Left',
|
23
|
+
isInversed: this._session.inverse,
|
24
|
+
//toggleVisibility: false,
|
25
|
+
enablePages: true,
|
27
26
|
enableHighlight: true,
|
28
27
|
};
|
29
28
|
this.tooltip = {
|
30
29
|
enable: true,
|
30
|
+
textStyle: {
|
31
|
+
fontFamily: FONT_FAMILY
|
32
|
+
}
|
31
33
|
};
|
32
|
-
this.
|
34
|
+
this.titleStyle = {
|
35
|
+
fontFamily: FONT_FAMILY
|
36
|
+
};
|
37
|
+
this.primaryXAxis = { valueType: 'Double' };
|
33
38
|
this.primaryYAxis = {};
|
34
|
-
|
35
|
-
this.
|
36
|
-
_session.profile.cubes.find(c => c.name === name) :
|
37
|
-
_session.profile.cubes[0];
|
39
|
+
this.actions = {};
|
40
|
+
this._destroy = new Subject();
|
38
41
|
_session.profile.actions.forEach(a => this.actions[a.name] = a);
|
42
|
+
_session.themeChange.pipe(takeUntil(this._destroy), startWith(_session.theme)).subscribe(t => {
|
43
|
+
this.theme = t.dark ? 'Material3Dark' : 'Material3';
|
44
|
+
this.chart && this._draw();
|
45
|
+
});
|
39
46
|
}
|
40
|
-
|
41
|
-
|
47
|
+
onBind(data) {
|
48
|
+
this.chart?.destroy();
|
42
49
|
if (!data.length)
|
43
50
|
return;
|
44
|
-
let accumStd = 0, countStd = 0, accumDuration = 0;
|
51
|
+
let accumStd = 0, countStd = 0, accumDuration = 0, maxStd = 0, maxDuration = 0, standards = [], map = {};
|
45
52
|
data.forEach(e => {
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
|
53
|
+
let accumStd1 = 0, countStd1 = 0, accumDuration1 = 0;
|
54
|
+
e.items.forEach(e => {
|
55
|
+
if (e.standardTime) {
|
56
|
+
if (e.standardTime > maxStd)
|
57
|
+
maxStd = e.standardTime;
|
58
|
+
countStd++;
|
59
|
+
countStd1++;
|
60
|
+
accumStd += e.standardTime;
|
61
|
+
accumStd1 += e.standardTime;
|
62
|
+
standards.push(e);
|
63
|
+
}
|
64
|
+
if (e.duration > maxDuration)
|
65
|
+
maxDuration = e.duration;
|
66
|
+
accumDuration += e.duration;
|
67
|
+
accumDuration1 += e.duration;
|
68
|
+
});
|
69
|
+
map[e.userId] = {
|
70
|
+
items: e.items,
|
71
|
+
stdAvg: countStd1 ? accumStd1 / countStd1 : 0,
|
72
|
+
durationAvg: accumDuration1 / data.length,
|
73
|
+
};
|
56
74
|
});
|
57
|
-
|
58
|
-
|
59
|
-
this._accounts.getAll(
|
75
|
+
this.stdAvg = countStd ? accumStd / countStd : 0,
|
76
|
+
this.durationAvg = accumDuration / data.length;
|
77
|
+
this._accounts.getAll(data.map(e => e.userId)).
|
60
78
|
subscribe(users => {
|
61
|
-
|
79
|
+
this.series = [{
|
62
80
|
name: this._translate.get('Standard'),
|
63
|
-
xName: '
|
81
|
+
xName: 'date',
|
64
82
|
yName: 'standardTime',
|
65
83
|
type: 'Polar',
|
66
84
|
drawType: 'Line',
|
67
|
-
//opacity: .5,
|
68
85
|
marker: {
|
69
86
|
visible: true,
|
70
87
|
shape: 'Triangle',
|
71
88
|
width: 5,
|
72
89
|
height: 5
|
73
90
|
},
|
74
|
-
dataSource:
|
91
|
+
dataSource: standards.
|
75
92
|
sort((e1, e2) => e1.standardTime < e2.standardTime ? -1 : 1),
|
76
93
|
},
|
77
94
|
...users.map(u => ({
|
78
|
-
dataSource:
|
79
|
-
sort((e1, e2) => e1.duration < e2.duration ? -1 : 1),
|
95
|
+
dataSource: map[u.id].items,
|
80
96
|
name: u.name,
|
81
97
|
type: 'Polar',
|
82
98
|
drawType: 'Line',
|
@@ -85,45 +101,52 @@ let RolesPerformanceComponent = class RolesPerformanceComponent {
|
|
85
101
|
width: 5, height: 5,
|
86
102
|
shape: 'Pentagon',
|
87
103
|
},
|
88
|
-
xName: '
|
104
|
+
xName: 'date',
|
89
105
|
yName: 'duration',
|
90
106
|
}))];
|
91
|
-
|
92
|
-
title: this._translate.get('AverageValue', dayjs.duration(durationAvg, 'seconds').format('DD:HH:ss')),
|
93
|
-
titleStyle: { fontFamily: FONT_FAMILY },
|
94
|
-
subTitle: stdAvg ?
|
95
|
-
this._translate.get('StandardValue', dayjs.duration(stdAvg, 'seconds').format('DD:HH:ss')) : null,
|
96
|
-
subTitleStyle: { fontFamily: FONT_FAMILY },
|
97
|
-
// primaryXAxis: { valueType: 'Double' },
|
98
|
-
primaryYAxis: {
|
99
|
-
//minimum: 0, maximum: Math.max(durationAvg, stdAvg)
|
100
|
-
//interval: 60 * 5,
|
101
|
-
},
|
102
|
-
series,
|
103
|
-
// pointRender: this.pointRender.bind(this),
|
104
|
-
tooltip: this.tooltip,
|
105
|
-
tooltipRender: this.tooltipRender.bind(this),
|
106
|
-
legendSettings: this.legendSettings,
|
107
|
-
axisLabelRender: this.labelRender.bind(this),
|
108
|
-
palettes: [this._session.getPrimery(), ...this._session.accentPalette],
|
109
|
-
enableRtl: this._session.inverse,
|
110
|
-
height: '100%',
|
111
|
-
highlightMode: 'Cluster',
|
112
|
-
pointClick: this.explore.bind(this)
|
113
|
-
}, this._elementRef.nativeElement);
|
107
|
+
this._draw();
|
114
108
|
});
|
115
109
|
}
|
116
|
-
|
117
|
-
|
110
|
+
_draw() {
|
111
|
+
this.chart?.destroy();
|
112
|
+
const colors = this._session.accentPalette;
|
113
|
+
let palettes = [this._session.getPrimery(),
|
114
|
+
...colors
|
115
|
+
];
|
116
|
+
while (this.series.length < palettes.length) {
|
117
|
+
palettes.push(...colors);
|
118
|
+
}
|
119
|
+
this.chart = new Chart({
|
120
|
+
theme: this.theme,
|
121
|
+
selectionMode: 'Series',
|
122
|
+
title: this._translate.get('AverageValue', dayjs.duration(this.durationAvg, 'seconds').format('DD:HH:mm')),
|
123
|
+
titleStyle: this.titleStyle,
|
124
|
+
subTitle: this.stdAvg ?
|
125
|
+
this._translate.get('StandardValue', dayjs.duration(this.stdAvg, 'seconds').format('DD:HH:mm')) : null,
|
126
|
+
subTitleStyle: this.titleStyle,
|
127
|
+
series: this.series,
|
128
|
+
tooltip: this.tooltip,
|
129
|
+
tooltipRender: this.tooltipRender.bind(this),
|
130
|
+
legendSettings: this.legendSettings,
|
131
|
+
legendRender: this.legendRender.bind(this),
|
132
|
+
axisLabelRender: this.labelRender.bind(this),
|
133
|
+
palettes,
|
134
|
+
enableRtl: this._session.inverse,
|
135
|
+
height: '100%',
|
136
|
+
highlightMode: 'Series',
|
137
|
+
pointClick: this.explore.bind(this)
|
138
|
+
}, this._elementRef.nativeElement);
|
139
|
+
}
|
140
|
+
legendRender(evt) {
|
141
|
+
//evt.text
|
118
142
|
}
|
119
|
-
|
120
|
-
|
121
|
-
// if (action.color) evt.fill = action.color;
|
143
|
+
tooltipRender(evt) {
|
144
|
+
evt.text = dayjs.duration(evt.data.pointY, 's').humanize(); // 'DD:HH:ss'
|
122
145
|
}
|
123
146
|
labelRender(evt) {
|
124
147
|
switch (evt.axis.name) {
|
125
148
|
case 'primaryYAxis':
|
126
|
-
evt.text = dayjs.duration(evt.value, 's').format('DD:HH:
|
149
|
+
evt.text = dayjs.duration(evt.value, 's').format('DD:HH:mm');
|
127
150
|
break;
|
128
151
|
case 'primaryXAxis':
|
129
152
|
evt.text = dayjs(evt.value).format('MMM YYYY');
|
@@ -131,14 +154,17 @@ let RolesPerformanceComponent = class RolesPerformanceComponent {
|
|
131
154
|
}
|
132
155
|
}
|
133
156
|
explore(evt) {
|
134
|
-
const {
|
135
|
-
|
136
|
-
|
137
|
-
|
138
|
-
|
139
|
-
|
157
|
+
const { pointIndex, seriesIndex } = evt;
|
158
|
+
if (seriesIndex === 0)
|
159
|
+
return;
|
160
|
+
const { documentId } = this.chart.series[seriesIndex].dataSource[pointIndex];
|
161
|
+
this._router.navigate(['mailbox', 'd', documentId.encodeId()]);
|
162
|
+
}
|
163
|
+
ngOnDestroy() {
|
164
|
+
this.chart?.destroy();
|
165
|
+
this._destroy.next();
|
140
166
|
}
|
141
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.1", ngImport: i0, type: RolesPerformanceComponent, deps: [{ token: i0.ElementRef }, { token: i1.RouterImpl }, { token: i2.AccountService }, { token: i3.SessionService }, { token: i4.TranslateService }
|
167
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.1", ngImport: i0, type: RolesPerformanceComponent, deps: [{ token: i0.ElementRef }, { token: i1.RouterImpl }, { token: i2.AccountService }, { token: i3.SessionService }, { token: i4.TranslateService }], target: i0.ɵɵFactoryTarget.Component }); }
|
142
168
|
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.2.1", type: RolesPerformanceComponent, selector: "ng-component", ngImport: i0, template: '', isInline: true, styles: [":host{flex:1}\n"] }); }
|
143
169
|
};
|
144
170
|
RolesPerformanceComponent = __decorate([
|
@@ -150,5 +176,5 @@ export { RolesPerformanceComponent };
|
|
150
176
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.1", ngImport: i0, type: RolesPerformanceComponent, decorators: [{
|
151
177
|
type: Component,
|
152
178
|
args: [{ template: '', styles: [":host{flex:1}\n"] }]
|
153
|
-
}], ctorParameters: () => [{ type: i0.ElementRef }, { type: i1.RouterImpl }, { type: i2.AccountService }, { type: i3.SessionService }, { type: i4.TranslateService }
|
154
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm9sZS1wZXJmb3JtYW5jZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJyYXJpZXMvY29yZS9zcmMvbGliL3JlcG9ydHMvY3ViZS9yb2xlLXBlcmZvcm1hbmNlLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLFNBQVMsRUFBYyxNQUFNLGVBQWUsQ0FBQztBQUN0RCxPQUFPLEVBQUUsS0FBSyxFQUFvSSxNQUFNLHdCQUF3QixDQUFDO0FBQ2pMLGtFQUFrRTtBQUNsRSxPQUFPLEtBQUssTUFBTSxPQUFPLENBQUM7QUFDMUIsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBUy9DLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQzs7Ozs7OztBQVN6QyxJQUFNLHlCQUF5QixHQUEvQixNQUFNLHlCQUF5QjtJQUlwQyxZQUNVLFdBQXVDLEVBQ3ZDLE9BQW1CLEVBQ25CLFNBQXlCLEVBQ3pCLFFBQXdCLEVBQ3hCLFVBQTRCLEVBQzVCLFVBQStDO1FBTC9DLGdCQUFXLEdBQVgsV0FBVyxDQUE0QjtRQUN2QyxZQUFPLEdBQVAsT0FBTyxDQUFZO1FBQ25CLGNBQVMsR0FBVCxTQUFTLENBQWdCO1FBQ3pCLGFBQVEsR0FBUixRQUFRLENBQWdCO1FBQ3hCLGVBQVUsR0FBVixVQUFVLENBQWtCO1FBQzVCLGVBQVUsR0FBVixVQUFVLENBQXFDO1FBUnpELFdBQU0sR0FBRyxDQUFDLENBQUM7UUFBQyxnQkFBVyxHQUFHLENBQUMsQ0FBQztRQUNwQixZQUFPLEdBQStCLEVBQUUsQ0FBQztRQWdCeEMsbUJBQWMsR0FBRztZQUN4QixRQUFRLEVBQUUsTUFBTTtZQUNoQixlQUFlLEVBQUUsSUFBSTtTQUNDLENBQUM7UUFDaEIsWUFBTyxHQUFHO1lBQ2pCLE1BQU0sRUFBRSxJQUFJO1NBQ1csQ0FBQztRQUNqQixpQkFBWSxHQUFHLEVB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LENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO1lBQ3RCLEtBQUssY0FBYztnQkFDakIsR0FBRyxDQUFDLElBQUksR0FBRyxLQUFLLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxLQUFLLEVBQUUsR0FBRyxDQUFDLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDO2dCQUM3RCxNQUFNO1lBQ1IsS0FBSyxjQUFjO2dCQUNqQixHQUFHLENBQUMsSUFBSSxHQUFHLEtBQUssQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDO2dCQUMvQyxNQUFNO1FBQ1YsQ0FBQztJQUNILENBQUM7SUFDRCxPQUFPLENBQUMsR0FBUTtRQUNkLE1BQU0sRUFBRSxLQUFLLEVBQUUsRUFBRSxDQUFDLEVBQUUsTUFBTSxFQUFFLEVBQUUsTUFBTSxFQUFFLEVBQUUsSUFBSSxFQUFFLEtBQUssRUFBRSxFQUFFLEdBQUcsR0FBRyxDQUFDO1FBQzlELDJDQUEyQztRQUUzQyxzREFBc0Q7UUFDdEQsT0FBTztRQUNQLDBCQUEwQjtRQUMxQixTQUFTO0lBQ1gsQ0FBQzs4R0FuSVUseUJBQXlCO2tHQUF6Qix5QkFBeUIsb0RBTjFCLEVBQUU7O0FBTUQseUJBQXlCO0lBSHJDLE1BQU0sQ0FBQztRQUNOLFFBQVEsRUFBRSx5QkFBeUI7S0FDcEMsQ0FBQztHQUNXLHlCQUF5QixDQW9JckM7OzJGQXBJWSx5QkFBeUI7a0JBUHJDLFNBQVM7K0JBQ0UsRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRWxlbWVudFJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBDaGFydCwgSUF4aXNMYWJlbFJlbmRlckV2ZW50QXJncywgTGVnZW5kU2V0dGluZ3NNb2RlbCwgU2VyaWVzTW9kZWwsIFRvb2x0aXBTZXR0aW5ncywgQ2hhcnRBbm5vdGF0aW9uU2V0dGluZ3NNb2RlbCwgVG9vbHRpcFNldHRpbmdzTW9kZWwgfSBmcm9tICdAc3luY2Z1c2lvbi9lajItY2hhcnRzJztcclxuLy8vIDxyZWZlcmVuY2UgcGF0aD1cIi4vbm9kZV9tb2R1bGVzL2RheWpzL3BsdWdpbi9kdXJhdGlvbi5kLnRzXCIgLz5cclxuaW1wb3J0IGRheWpzIGZyb20gJ2RheWpzJztcclxuaW1wb3J0IHsgQml6RG9jIH0gZnJvbSAnLi4vLi4vY29yZS9kZWNvcmF0b3JzJztcclxuaW1wb3J0IHsgUmVwb3J0UmVmIH0gZnJvbSAnLi4vcmVwb3J0LXJlZic7XHJcbmltcG9ydCB7IFJlcG9ydENvbXBvbmVudCB9IGZyb20gJy4uLy4uL2NvcmUvYmFzZSc7XHJcbmltcG9ydCB7IEFjY291bnRTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vY29yZS9hY2NvdW50LnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBTZXNzaW9uU2VydmljZSB9IGZyb20gJy4uLy4uL2NvcmUvc2Vzc2lvbi5zZXJ2aWNlJztcclxuaW1wb3J0IHsgUm91dGVySW1wbCB9IGZyb20gJy4uLy4uL2NvcmUvcm91dGVyJztcclxuaW1wb3J0IHsgQWN0aW9uLCBBeGVzTWFwLCBDdWJlLCBVc2VySW5mbyB9IGZyb20gJy4uLy4uL2NvcmUvbW9kZWxzJztcclxuaW1wb3J0IHsgQXhpc01vZGVsLCBJQW5ub3RhdGlvblJlbmRlckV2ZW50QXJncywgSVBvaW50UmVuZGVyRXZlbnRBcmdzLCBJVG9vbHRpcFJlbmRlckV2ZW50QXJncywgTGluZVNlcmllcywgUG9sYXJTZXJpZXMgfSBmcm9tICdAc3luY2Z1c2lvbi9lajItYW5ndWxhci1jaGFydHMnO1xyXG5pbXBvcnQgeyBUcmFuc2xhdGVTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vY29yZS90cmFuc2xhdGUuc2VydmljZSc7XHJcbmltcG9ydCB7IEZPTlRfRkFNSUxZIH0gZnJvbSAnLi4vLi4vY29yZS9jb2xvcnMnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgdGVtcGxhdGU6ICcnLFxyXG4gIHN0eWxlczogYDpob3N0IHtmbGV4OiAxfWBcclxufSlcclxuQEJpekRvYyh7XHJcbiAgc2VsZWN0b3I6ICdiaXpkb2Mtcm9sZS1wZXJmb3JtYW5jZSdcclxufSlcclxuZXhwb3J0IGNsYXNzIFJvbGVzUGVyZm9ybWFuY2VDb21wb25lbnQgaW1wbGVtZW50cyBSZXBvcnRDb21wb25lbnQ8TW9kZWw+IHtcclxuICBwcml2YXRlIHJlYWRvbmx5IF9jdWJlOiBDdWJlO1xyXG4gIG1heFN0ZCA9IDA7IG1heER1cmF0aW9uID0gMDtcclxuICBwcml2YXRlIGFjdGlvbnM6IHsgW25hbWU6IHN0cmluZ106IEFjdGlvbiB9ID0ge307XHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIF9lbGVtZW50UmVmOiBFbGVtZW50UmVmPEhUTUxEaXZFbGVtZW50PixcclxuICAgIHByaXZhdGUgX3JvdXRlcjogUm91dGVySW1wbCxcclxuICAgIHByaXZhdGUgX2FjY291bnRzOiBBY2NvdW50U2VydmljZSxcclxuICAgIHByaXZhdGUgX3Nlc3Npb246IFNlc3Npb25TZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBfdHJhbnNsYXRlOiBUcmFuc2xhdGVTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBfcmVwb3J0UmVmOiBSZXBvcnRSZWY8UGVyZm9ybWFuY2VTZXR0aW5nc01vZGVsPikge1xyXG4gICAgY29uc3QgeyBjdWJlOiBuYW1lIH0gPSBfcmVwb3J0UmVmLm9wdGlvbnM7XHJcbiAgICB0aGlzLl9jdWJlID0gbmFtZSA/XHJcbiAgICAgIF9zZXNzaW9uLnByb2ZpbGUuY3ViZXMuZmluZChjID0+IGMubmFtZSA9PT0gbmFtZSkgOlxyXG4gICAgICBfc2Vzc2lvbi5wcm9maWxlLmN1YmVzWzBdO1xyXG4gICAgX3Nlc3Npb24ucHJvZmlsZS5hY3Rpb25zLmZvckVhY2goYSA9PlxyXG4gICAgICB0aGlzLmFjdGlvbnNbYS5uYW1lXSA9IGFcclxuICAgIClcclxuICB9XHJcbiAgcmVhZG9ubHkgbGVnZW5kU2V0dGluZ3MgPSB7XHJcbiAgICBwb3NpdGlvbjogJ0xlZnQnLFxyXG4gICAgZW5hYmxlSGlnaGxpZ2h0OiB0cnVlLFxyXG4gIH0gYXMgTGVnZW5kU2V0dGluZ3NNb2RlbDtcclxuICByZWFkb25seSB0b29sdGlwID0ge1xyXG4gICAgZW5hYmxlOiB0cnVlLFxyXG4gIH0gYXMgVG9vbHRpcFNldHRpbmdzTW9kZWw7XHJcbiAgcmVhZG9ubHkgcHJpbWFyeVhBeGlzID0geyB2YWx1ZVR5cGU6ICdEYXRlVGltZScgfSBhcyBBeGlzTW9kZWw7XHJcbiAgcmVhZG9ubHkgcHJpbWFyeVlBeGlzID0ge30gYXMgQXhpc01vZGVsO1xyXG4gIDtcclxuICBvbkJpbmQoZGF0YTogTW9kZWxbXSwgYXJncz86IGFueSkge1xyXG4gICAgaWYgKCFkYXRhLmxlbmd0aCkgcmV0dXJuO1xyXG4gICAgbGV0IGFjY3VtU3RkID0gMCwgY291bnRTdGQgPSAwLCBhY2N1bUR1cmF0aW9uID0gMDtcclxuICAgIGRhdGEuZm9yRWFjaChlID0+IHtcclxuICAgICAgaWYgKGUuc3RhbmRhcmRUaW1lKSB7XHJcbiAgICAgICAgaWYgKGUuc3RhbmRhcmRUaW1lID4gdGhpcy5tYXhTdGQpXHJcbiAgICAgICAgICB0aGlzLm1heFN0ZCA9IGUuc3RhbmRhcmRUaW1lO1xyXG4gICAgICAgIGNvdW50U3RkKys7XHJcbiAgICAgICAgYWNjdW1TdGQgKz0gZS5zdGFuZGFyZFRpbWU7XHJcbiAgICAgIH1cclxuICAgICAgaWYgKGUuZHVyYXRpb24gPiB0aGlzLm1heER1cmF0aW9uKVxyXG4gICAgICAgIHRoaXMubWF4RHVyYXRpb24gPSBlLmR1cmF0aW9uO1xyXG4gICAgICBhY2N1bUR1cmF0aW9uICs9IGUuZHVyYXRpb247XHJcbiAgICAgIGUueURhdGUgPSBuZXcgRGF0ZShlLmRhdGUpLnZhbHVlT2YoKTtcclxuICAgIH0pO1xyXG4gICAgbGV0IHN0ZEF2ZyA9IGFjY3VtU3RkIC8gY291bnRTdGQsIGR1cmF0aW9uQXZnID0gYWNjdW1EdXJhdGlvbiAvIGRhdGEubGVuZ3RoO1xyXG4gICAgY29uc3QgaWRzID0gZGF0YS5kaXN0aW5jdChlID0+IGUudXNlcklkKTtcclxuICAgIHRoaXMuX2FjY291bnRzLmdldEFsbChbLi4uaWRzXSkuXHJcbiAgICAgIHN1YnNjcmliZSh1c2VycyA9PiB7XHJcbiAgICAgICAgY29uc3Qgc2VyaWVzID0gW3tcclxuICAgICAgICAgIG5hbWU6IHRoaXMuX3RyYW5zbGF0ZS5nZXQoJ1N0YW5kYXJkJyksXHJcbiAgICAgICAgICB4TmFtZTogJ3lEYXRlJyxcclxuICAgICAgICAgIHlOYW1lOiAnc3RhbmRhcmRUaW1lJyxcclxuICAgICAgICAgIHR5cGU6ICdQb2xhcicsXHJcbiAgICAgICAgICBkcmF3VHlwZTogJ0xpbmUnLFxyXG4gICAgICAgICAgLy9vcGFjaXR5OiAuNSxcclxuICAgICAgICAgIG1hcmtlcjoge1xyXG4gICAgICAgICAgICB2aXNpYmxlOiB0cnVlLFxyXG4gICAgICAgICAgICBzaGFwZTogJ1RyaWFuZ2xlJyxcclxuICAgICAgICAgICAgd2lkdGg6IDUsXHJcbiAgICAgICAgICAgIGhlaWdodDogNVxyXG4gICAgICAgICAgfSxcclxuICAgICAgICAgIGRhdGFTb3VyY2U6IGRhdGEuZmlsdGVyKGUgPT4gZS5zdGFuZGFyZFRpbWUpLlxyXG4gICAgICAgICAgICBzb3J0KChlMSwgZTIpID0+IGUxLnN0YW5kYXJkVGltZSA8IGUyLnN0YW5kYXJkVGltZSA/IC0xIDogMSksXHJcbiAgICAgICAgfSBhcyBTZXJpZXNNb2RlbCxcclxuICAgICAgICAuLi51c2Vycy5tYXAodSA9PlxyXG4gICAgICAgICh7XHJcbiAgICAgICAgICBkYXRhU291cmNlOiBkYXRhLmZpbHRlcihlID0+IGUudXNlcklkID09PSB1LmlkKS5cclxuICAgICAgICAgICAgc29ydCgoZTEsIGUyKSA9PiBlMS5kdXJhdGlvbiA8IGUyLmR1cmF0aW9uID8gLTEgOiAxKSxcclxuICAgICAgICAgIG5hbWU6IHUubmFtZSxcclxuICAgICAgICAgIHR5cGU6ICdQb2xhcicsXHJcbiAgICAgICAgICBkcmF3VHlwZTogJ0xpbmUnLFxyXG4gICAgICAgICAgbWFya2VyOiB7XHJcbiAgICAgICAgICAgIHZpc2libGU6IHRydWUsXHJcbiAgICAgICAgICAgIHdpZHRoOiA1LCBoZWlnaHQ6IDUsXHJcbiAgICAgICAgICAgIHNoYXBlOiAnUGVudGFnb24nLFxyXG4gICAgICAgICAgfSxcclxuICAgICAgICAgIHhOYW1lOiAneURhdGUnLFxyXG4gICAgICAgICAgeU5hbWU6ICdkdXJhdGlvbicsXHJcbiAgICAgICAgfSBhcyBTZXJpZXNNb2RlbCkpXTtcclxuICAgICAgICBuZXcgQ2hhcnQoe1xyXG4gICAgICAgICAgdGl0bGU6XHJcbiAgICAgICAgICAgIHRoaXMuX3RyYW5zbGF0ZS5nZXQoJ0F2ZXJhZ2VWYWx1ZScsIGRheWpzLmR1cmF0aW9uKGR1cmF0aW9uQXZnLCAnc2Vjb25kcycpLmZvcm1hdCgnREQ6SEg6c3MnKSksXHJcbiAgICAgICAgICB0aXRsZVN0eWxlOiB7IGZvbnRGYW1pbHk6IEZPTlRfRkFNSUxZIH0sXHJcbiAgICAgICAgICBzdWJUaXRsZTogc3RkQXZnID9cclxuICAgICAgICAgICAgdGhpcy5fdHJhbnNsYXRlLmdldCgnU3RhbmRhcmRWYWx1ZScsIGRheWpzLmR1cmF0aW9uKHN0ZEF2ZywgJ3NlY29uZHMnKS5mb3JtYXQoJ0REOkhIOnNzJykpIDogbnVsbCxcclxuICAgICAgICAgIHN1YlRpdGxlU3R5bGU6IHsgZm9udEZhbWlseTogRk9OVF9GQU1JTFkgfSxcclxuICAgICAgICAgIC8vICAgICAgICAgIHByaW1hcnlYQXhpczogeyB2YWx1ZVR5cGU6ICdEb3VibGUnIH0sXHJcbiAgICAgICAgICBwcmltYXJ5WUF4aXM6IHtcclxuICAgICAgICAgIC8vbWluaW11bTogMCwgbWF4aW11bTogTWF0aC5tYXgoZHVyYXRpb25BdmcsIHN0ZEF2ZylcclxuICAgICAgICAgIC8vaW50ZXJ2YWw6IDYwICogNSxcclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgICBzZXJpZXMsXHJcbiAgICAgICAgICAvLyAgICAgICAgICBwb2ludFJlbmRlcjogdGhpcy5wb2ludFJlbmRlci5iaW5kKHRoaXMpLFxyXG4gICAgICAgICAgdG9vbHRpcDogdGhpcy50b29sdGlwLFxyXG4gICAgICAgICAgdG9vbHRpcFJlbmRlcjogdGhpcy50b29sdGlwUmVuZGVyLmJpbmQodGhpcyksXHJcbiAgICAgICAgICBsZWdlbmRTZXR0aW5nczogdGhpcy5sZWdlbmRTZXR0aW5ncyxcclxuICAgICAgICAgIGF4aXNMYWJlbFJlbmRlcjogdGhpcy5sYWJlbFJlbmRlci5iaW5kKHRoaXMpLFxyXG4gICAgICAgICAgcGFsZXR0ZXM6IFt0aGlzLl9zZXNzaW9uLmdldFByaW1lcnkoKSwgLi4udGhpcy5fc2Vzc2lvbi5hY2NlbnRQYWxldHRlXSxcclxuICAgICAgICAgIGVuYWJsZVJ0bDogdGhpcy5fc2Vzc2lvbi5pbnZlcnNlLFxyXG4gICAgICAgICAgaGVpZ2h0OiAnMTAwJScsXHJcbiAgICAgICAgICBoaWdobGlnaHRNb2RlOiAnQ2x1c3RlcicsXHJcbiAgICAgICAgICBwb2ludENsaWNrOiB0aGlzLmV4cGxvcmUuYmluZCh0aGlzKVxyXG4gICAgICAgIH0sXHJcbiAgICAgICAgICB0aGlzLl9lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQpO1xyXG4gICAgICB9KTtcclxuICB9XHJcbiAgdG9vbHRpcFJlbmRlcihldnQ6IElUb29sdGlwUmVuZGVyRXZlbnRBcmdzKSB7XHJcbiAgICBldnQudGV4dCA9IGRheWpzLmR1cmF0aW9uKGV2dC5kYXRhLnBvaW50WSBhcyBhbnksICdzJykuZm9ybWF0KCdERDpISDpzcycpO1xyXG4gIH1cclxuICBwb2ludFJlbmRlcihldnQ6IElQb2ludFJlbmRlckV2ZW50QXJncykge1xyXG4gICAgLy8gIGNvbnN0IGFjdGlvbiA9IHRoaXMuYWN0aW9uc1soZXZ0LnBvaW50LnNlcmllc1tldnQucG9pbnQuaW5kZXhdIGFzIE1vZGVsKS5hY3Rpb25JZF07XHJcbiAgICAvLyBpZiAoYWN0aW9uLmNvbG9yKSBldnQuZmlsbCA9IGFjdGlvbi5jb2xvcjtcclxuICB9XHJcbiAgbGFiZWxSZW5kZXIoZXZ0OiBJQXhpc0xhYmVsUmVuZGVyRXZlbnRBcmdzKSB7XHJcbiAgICBzd2l0Y2ggKGV2dC5heGlzLm5hbWUpIHtcclxuICAgICAgY2FzZSAncHJpbWFyeVlBeGlzJzpcclxuICAgICAgICBldnQudGV4dCA9IGRheWpzLmR1cmF0aW9uKGV2dC52YWx1ZSwgJ3MnKS5mb3JtYXQoJ0REOkhIOnNzJyk7XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICAgIGNhc2UgJ3ByaW1hcnlYQXhpcyc6XHJcbiAgICAgICAgZXZ0LnRleHQgPSBkYXlqcyhldnQudmFsdWUpLmZvcm1hdCgnTU1NIFlZWVknKTtcclxuICAgICAgICBicmVhaztcclxuICAgIH1cclxuICB9XHJcbiAgZXhwbG9yZShldnQ6IGFueSkge1xyXG4gICAgY29uc3QgeyBwb2ludDogeyB4LCB5VmFsdWUgfSwgc2VyaWVzOiB7IG5hbWU6IHRpdGxlIH0gfSA9IGV2dDtcclxuICAgIC8vY29uc3QgeyBjdWJlIH0gPSB0aGlzLl9yZXBvcnRSZWYub3B0aW9ucztcclxuXHJcbiAgICAvLyAgdGhpcy5fcm91dGVyLm5hdmlnYXRlKFBlcmZvcm1hbmNlRXhwbHJvZUNvbXBpbmVudCxcclxuICAgIC8vICAgIHtcclxuICAgIC8vICAgICAgcXVlcnlQYXJhbXM6IGF4ZXMsXHJcbiAgICAvLyAgICB9KTtcclxuICB9XHJcbn1cclxuXHJcbmludGVyZmFjZSBNb2RlbCB7XHJcbiAgeURhdGU6IG51bWJlcjtcclxuICAvL3hTdGFuZGFyZFRpbWU/OiBzdHJpbmc7XHJcbiAgLy94RHVyYXRpb246IHN0cmluZztcclxuICB1c2VySWQ6IHN0cmluZztcclxuICBkYXRlOiBEYXRlO1xyXG4gIHN0YW5kYXJkVGltZT86IG51bWJlcjtcclxuICBkdXJhdGlvbjogbnVtYmVyO1xyXG4gIGlzRllJOiBib29sZWFuO1xyXG4gIGFjdGlvbklkOiBzdHJpbmc7XHJcbn1cclxuaW50ZXJmYWNlIFBlcmZvcm1hbmNlU2V0dGluZ3NNb2RlbCB7XHJcbiAgY3ViZT86IHN0cmluZztcclxuICBmaWx0ZXJzPzogQXhlc01hcDtcclxufVxyXG4iXX0=
|
179
|
+
}], ctorParameters: () => [{ type: i0.ElementRef }, { type: i1.RouterImpl }, { type: i2.AccountService }, { type: i3.SessionService }, { type: i4.TranslateService }] });
|
180
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm9sZS1wZXJmb3JtYW5jZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJyYXJpZXMvY29yZS9zcmMvbGliL3JlcG9ydHMvY3ViZS9yb2xlLXBlcmZvcm1hbmNlLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLFNBQVMsRUFBeUIsTUFBTSxlQUFlLENBQUM7QUFDakUsT0FBTyxFQUFrSCxLQUFLLEVBQXlHLE1BQU0sd0JBQXdCLENBQUM7QUFDdFEsT0FBTyxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3JELGtFQUFrRTtBQUNsRSxPQUFPLEtBQUssTUFBTSxPQUFPLENBQUM7QUFDMUIsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBUS9DLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQzs7Ozs7O0FBU3pDLElBQU0seUJBQXlCLEdBQS9CLE1BQU0seUJBQXlCO0lBMEJwQyxZQUNVLFdBQXVDLEVBQ3ZDLE9BQW1CLEVBQ25CLFNBQXlCLEVBQ3pCLFFBQXdCLEVBQ3hCLFVBQTRCO1FBSjVCLGdCQUFXLEdBQVgsV0FBVyxDQUE0QjtRQUN2QyxZQUFPLEdBQVAsT0FBTyxDQUFZO1FBQ25CLGNBQVMsR0FBVCxTQUFTLENBQWdCO1FBQ3pCLGFBQVEsR0FBUixRQUFRLENBQWdCO1FBQ3hCLGVBQVUsR0FBVixVQUFVLENBQWtCO1FBMUI3QixtQkFBYyxHQUFHO1lBQ3hCLFFBQVEsRUFBRSxNQUFNO1lBQ2hCLFVBQVUsRUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLE9BQU87WUFDakMsMEJBQTBCO1lBQzFCLFdBQVcsRUFBRSxJQUFJO1lBQ2pCLGVBQWUsRUFBRSxJQUFJO1NBQ0MsQ0FBQztRQUNoQixZQUFPLEdBQUc7WUFDakIsTUFBTSxFQUFFLElBQUk7WUFDWixTQUFT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QyxDQUFDO2dCQUM3RCxNQUFNO1lBQ1IsS0FBSyxjQUFjO2dCQUNqQixHQUFHLENBQUMsSUFBSSxHQUFHLEtBQUssQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDO2dCQUMvQyxNQUFNO1FBQ1YsQ0FBQztJQUNILENBQUM7SUFDRCxPQUFPLENBQUMsR0FBb0I7UUFDMUIsTUFBTSxFQUFFLFVBQVUsRUFBRSxXQUFXLEVBQUUsR0FBRyxHQUFHLENBQUM7UUFDeEMsSUFBSSxXQUFXLEtBQUssQ0FBQztZQUFFLE9BQU87UUFFOUIsTUFBTSxFQUFFLFVBQVUsRUFBRSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxVQUFVLENBQWMsQ0FBQztRQUUxRixJQUFJLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxDQUFDLFNBQVMsRUFBRSxHQUFHLEVBQUUsVUFBVSxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUMsQ0FBQztJQUNqRSxDQUFDO0lBQ0QsV0FBVztRQUNULElBQUksQ0FBQyxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUM7UUFDdEIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUN2QixDQUFDOzhHQXpLVSx5QkFBeUI7a0dBQXpCLHlCQUF5QixvREFOMUIsRUFBRTs7QUFNRCx5QkFBeUI7SUFIckMsTUFBTSxDQUFDO1FBQ04sUUFBUSxFQUFFLHlCQUF5QjtLQUNwQyxDQUFDO0dBQ1cseUJBQXlCLENBMEtyQzs7MkZBMUtZLHlCQUF5QjtrQkFQckMsU0FBUzsrQkFDRSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBPbkRlc3Ryb3kgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgSUxlZ2VuZFJlbmRlckV2ZW50QXJncywgSVBvaW50RXZlbnRBcmdzLCBBeGlzTW9kZWwsIENoYXJ0VGhlbWUsIElQb2ludFJlbmRlckV2ZW50QXJncywgSVRvb2x0aXBSZW5kZXJFdmVudEFyZ3MsIENoYXJ0LCBJQXhpc0xhYmVsUmVuZGVyRXZlbnRBcmdzLCBMZWdlbmRTZXR0aW5nc01vZGVsLCBTZXJpZXNNb2RlbCwgVG9vbHRpcFNldHRpbmdzTW9kZWwsIHRpdGxlU2V0dGluZ3NNb2RlbCB9IGZyb20gJ0BzeW5jZnVzaW9uL2VqMi1jaGFydHMnO1xyXG5pbXBvcnQgeyBTdWJqZWN0LCBzdGFydFdpdGgsIHRha2VVbnRpbCB9IGZyb20gJ3J4anMnO1xyXG4vLy8gPHJlZmVyZW5jZSBwYXRoPVwiLi9ub2RlX21vZHVsZXMvZGF5anMvcGx1Z2luL2R1cmF0aW9uLmQudHNcIiAvPlxyXG5pbXBvcnQgZGF5anMgZnJvbSAnZGF5anMnO1xyXG5pbXBvcnQgeyBCaXpEb2MgfSBmcm9tICcuLi8uLi9jb3JlL2RlY29yYXRvcnMnO1xyXG5pbXBvcnQgeyBSZXBvcnRSZWYgfSBmcm9tICcuLi9yZXBvcnQtcmVmJztcclxuaW1wb3J0IHsgUmVwb3J0Q29tcG9uZW50IH0gZnJvbSAnLi4vLi4vY29yZS9iYXNlJztcclxuaW1wb3J0IHsgQWNjb3VudFNlcnZpY2UgfSBmcm9tICcuLi8uLi9jb3JlL2FjY291bnQuc2VydmljZSc7XHJcbmltcG9ydCB7IFNlc3Npb25TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vY29yZS9zZXNzaW9uLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBSb3V0ZXJJbXBsIH0gZnJvbSAnLi4vLi4vY29yZS9yb3V0ZXInO1xyXG5pbXBvcnQgeyBBY3Rpb24sIEF4ZXNNYXAgfSBmcm9tICcuLi8uLi9jb3JlL21vZGVscyc7XHJcbmltcG9ydCB7IFRyYW5zbGF0ZVNlcnZpY2UgfSBmcm9tICcuLi8uLi9jb3JlL3RyYW5zbGF0ZS5zZXJ2aWNlJztcclxuaW1wb3J0IHsgRk9OVF9GQU1JTFkgfSBmcm9tICcuLi8uLi9jb3JlL2NvbG9ycyc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICB0ZW1wbGF0ZTogJycsXHJcbiAgc3R5bGVzOiBgOmhvc3Qge2ZsZXg6IDF9YFxyXG59KVxyXG5AQml6RG9jKHtcclxuICBzZWxlY3RvcjogJ2JpemRvYy1yb2xlLXBlcmZvcm1hbmNlJ1xyXG59KVxyXG5leHBvcnQgY2xhc3MgUm9sZXNQZXJmb3JtYW5jZUNvbXBvbmVudCBpbXBsZW1lbnRzIFJlcG9ydENvbXBvbmVudDxNb2RlbD4sIE9uRGVzdHJveSB7XHJcbiAgZHVyYXRpb25Bdmc6IG51bWJlcjtcclxuICBzdGRBdmc6IG51bWJlcjtcclxuICBzZXJpZXM6IFNlcmllc01vZGVsW107XHJcbiAgY2hhcnQ6IENoYXJ0O1xyXG4gIHJlYWRvbmx5IGxlZ2VuZFNldHRpbmdzID0ge1xyXG4gICAgcG9zaXRpb246ICdMZWZ0JyxcclxuICAgIGlzSW52ZXJzZWQ6IHRoaXMuX3Nlc3Npb24uaW52ZXJzZSxcclxuICAgIC8vdG9nZ2xlVmlzaWJpbGl0eTogZmFsc2UsXHJcbiAgICBlbmFibGVQYWdlczogdHJ1ZSxcclxuICAgIGVuYWJsZUhpZ2hsaWdodDogdHJ1ZSxcclxuICB9IGFzIExlZ2VuZFNldHRpbmdzTW9kZWw7XHJcbiAgcmVhZG9ubHkgdG9vbHRpcCA9IHtcclxuICAgIGVuYWJsZTogdHJ1ZSxcclxuICAgIHRleHRTdHlsZToge1xyXG4gICAgICBmb250RmFtaWx5OiBGT05UX0ZBTUlMWVxyXG4gICAgfVxyXG4gIH0gYXMgVG9vbHRpcFNldHRpbmdzTW9kZWw7XHJcbiAgdGhlbWU6IENoYXJ0VGhlbWU7XHJcbiAgcmVhZG9ubHkgdGl0bGVTdHlsZSA9IHtcclxuICAgIGZvbnRGYW1pbHk6IEZPTlRfRkFNSUxZXHJcbiAgfSBhcyB0aXRsZVNldHRpbmdzTW9kZWw7XHJcbiAgcmVhZG9ubHkgcHJpbWFyeVhBeGlzID0geyB2YWx1ZVR5cGU6ICdEb3VibGUnIH0gYXMgQXhpc01vZGVsO1xyXG4gIHJlYWRvbmx5IHByaW1hcnlZQXhpcyA9IHt9IGFzIEF4aXNNb2RlbDtcclxuICBwcml2YXRlIGFjdGlvbnM6IHsgW25hbWU6IHN0cmluZ106IEFjdGlvbiB9ID0ge307XHJcbiAgcHJpdmF0ZSByZWFkb25seSBfZGVzdHJveSA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIF9lbGVtZW50UmVmOiBFbGVtZW50UmVmPEhUTUxEaXZFbGVtZW50PixcclxuICAgIHByaXZhdGUgX3JvdXRlcjogUm91dGVySW1wbCxcclxuICAgIHByaXZhdGUgX2FjY291bnRzOiBBY2NvdW50U2VydmljZSxcclxuICAgIHByaXZhdGUgX3Nlc3Npb246IFNlc3Npb25TZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBfdHJhbnNsYXRlOiBUcmFuc2xhdGVTZXJ2aWNlLFxyXG4gICkge1xyXG4gICAgX3Nlc3Npb24ucHJvZmlsZS5hY3Rpb25zLmZvckVhY2goYSA9PlxyXG4gICAgICB0aGlzLmFjdGlvbnNbYS5uYW1lXSA9IGFcclxuICAgICk7XHJcbiAgICBfc2Vzc2lvbi50aGVtZUNoYW5nZS5waXBlKHRha2VVbnRpbCh0aGlzLl9kZXN0cm95KSwgc3RhcnRXaXRoKF9zZXNzaW9uLnRoZW1lKSkuc3Vic2NyaWJlKHQgPT4ge1xyXG4gICAgICB0aGlzLnRoZW1lID0gdC5kYXJrID8gJ01hdGVyaWFsM0RhcmsnIDogJ01hdGVyaWFsMyc7XHJcbiAgICAgIHRoaXMuY2hhcnQgJiYgdGhpcy5fZHJhdygpO1xyXG4gICAgfSlcclxuICB9XHJcbiAgb25CaW5kKGRhdGE6IE1vZGVsW10pIHtcclxuICAgIHRoaXMuY2hhcnQ/LmRlc3Ryb3koKTtcclxuICAgIGlmICghZGF0YS5sZW5ndGgpIHJldHVybjtcclxuICAgIGxldCBhY2N1bVN0ZCA9IDAsIGNvdW50U3RkID0gMCwgYWNjdW1EdXJhdGlvbiA9IDAsIG1heFN0ZCA9IDAsIG1heER1cmF0aW9uID0gMCxcclxuICAgICAgc3RhbmRhcmRzID0gW10gYXMgSXRlbU1vZGVsW10sIG1hcDoge1xyXG4gICAgICAgIFt1c2VySWQ6IHN0cmluZ106IHtcclxuICAgICAgICAgIGl0ZW1zOiBJdGVtTW9kZWxbXTtcclxuICAgICAgICAgIGR1cmF0aW9uQXZnOiBudW1iZXI7XHJcbiAgICAgICAgICBzdGRBdmc6IG51bWJlcjtcclxuICAgICAgICB9XHJcbiAgICAgIH0gPSB7fTtcclxuICAgIGRhdGEuZm9yRWFjaChlID0+IHtcclxuICAgICAgbGV0IGFjY3VtU3RkMSA9IDAsIGNvdW50U3RkMSA9IDAsIGFjY3VtRHVyYXRpb24xID0gMDtcclxuICAgICAgZS5pdGVtcy5mb3JFYWNoKGUgPT4ge1xyXG4gICAgICAgIGlmIChlLnN0YW5kYXJkVGltZSkge1xyXG4gICAgICAgICAgaWYgKGUuc3RhbmRhcmRUaW1lID4gbWF4U3RkKVxyXG4gICAgICAgICAgICBtYXhTdGQgPSBlLnN0YW5kYXJkVGltZTtcclxuICAgICAgICAgIGNvdW50U3RkKys7XHJcbiAgICAgICAgICBjb3VudFN0ZDErKztcclxuICAgICAgICAgIGFjY3VtU3RkICs9IGUuc3RhbmRhcmRUaW1lO1xyXG4gICAgICAgICAgYWNjdW1TdGQxICs9IGUuc3RhbmRhcmRUaW1lO1xyXG4gICAgICAgICAgc3RhbmRhcmRzLnB1c2goZSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmIChlLmR1cmF0aW9uID4gbWF4RHVyYXRpb24pXHJcbiAgICAgICAgICBtYXhEdXJhdGlvbiA9IGUuZHVyYXRpb247XHJcbiAgICAgICAgYWNjdW1EdXJhdGlvbiArPSBlLmR1cmF0aW9uO1xyXG4gICAgICAgIGFjY3VtRHVyYXRpb24xICs9IGUuZHVyYXRpb247XHJcbiAgICAgIH0pO1xyXG4gICAgICBtYXBbZS51c2VySWRdID0ge1xyXG4gICAgICAgIGl0ZW1zOiBlLml0ZW1zLFxyXG4gICAgICAgIHN0ZEF2ZzogY291bnRTdGQxID8gYWNjdW1TdGQxIC8gY291bnRTdGQxIDogMCxcclxuICAgICAgICBkdXJhdGlvbkF2ZzogYWNjdW1EdXJhdGlvbjEgLyBkYXRhLmxlbmd0aCxcclxuICAgICAgfTtcclxuICAgIH0pO1xyXG4gICAgdGhpcy5zdGRBdmcgPSBjb3VudFN0ZCA/IGFjY3VtU3RkIC8gY291bnRTdGQgOiAwLFxyXG4gICAgICB0aGlzLmR1cmF0aW9uQXZnID0gYWNjdW1EdXJhdGlvbiAvIGRhdGEubGVuZ3RoO1xyXG4gICAgdGhpcy5fYWNjb3VudHMuZ2V0QWxsKGRhdGEubWFwKGUgPT4gZS51c2VySWQpKS5cclxuICAgICAgc3Vic2NyaWJlKHVzZXJzID0+IHtcclxuICAgICAgICB0aGlzLnNlcmllcyA9IFt7XHJcbiAgICAgICAgICBuYW1lOiB0aGlzLl90cmFuc2xhdGUuZ2V0KCdTdGFuZGFyZCcpLFxyXG4gICAgICAgICAgeE5hbWU6ICdkYXRlJyxcclxuICAgICAgICAgIHlOYW1lOiAnc3RhbmRhcmRUaW1lJyxcclxuICAgICAgICAgIHR5cGU6ICdQb2xhcicsXHJcbiAgICAgICAgICBkcmF3VHlwZTogJ0xpbmUnLFxyXG4gICAgICAgICAgbWFya2VyOiB7XHJcbiAgICAgICAgICAgIHZpc2libGU6IHRydWUsXHJcbiAgICAgICAgICAgIHNoYXBlOiAnVHJpYW5nbGUnLFxyXG4gICAgICAgICAgICB3aWR0aDogNSxcclxuICAgICAgICAgICAgaGVpZ2h0OiA1XHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgICAgZGF0YVNvdXJjZTogc3RhbmRhcmRzLlxyXG4gICAgICAgICAgICBzb3J0KChlMSwgZTIpID0+IGUxLnN0YW5kYXJkVGltZSA8IGUyLnN0YW5kYXJkVGltZSA/IC0xIDogMSksXHJcbiAgICAgICAgfSBhcyBTZXJpZXNNb2RlbCxcclxuICAgICAgICAuLi51c2Vycy5tYXAodSA9PlxyXG4gICAgICAgICh7XHJcbiAgICAgICAgICBkYXRhU291cmNlOiBtYXBbdS5pZF0uaXRlbXMsXHJcbiAgICAgICAgICBuYW1lOiB1Lm5hbWUsXHJcbiAgICAgICAgICB0eXBlOiAnUG9sYXInLFxyXG4gICAgICAgICAgZHJhd1R5cGU6ICdMaW5lJyxcclxuICAgICAgICAgIG1hcmtlcjoge1xyXG4gICAgICAgICAgICB2aXNpYmxlOiB0cnVlLFxyXG4gICAgICAgICAgICB3aWR0aDogNSwgaGVpZ2h0OiA1LFxyXG4gICAgICAgICAgICBzaGFwZTogJ1BlbnRhZ29uJyxcclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgICB4TmFtZTogJ2RhdGUnLFxyXG4gICAgICAgICAgeU5hbWU6ICdkdXJhdGlvbicsXHJcbiAgICAgICAgfSBhcyBTZXJpZXNNb2RlbCkpXTtcclxuICAgICAgICB0aGlzLl9kcmF3KCk7XHJcbiAgICAgIH0pO1xyXG4gIH1cclxuICBwcml2YXRlIF9kcmF3KCkge1xyXG4gICAgdGhpcy5jaGFydD8uZGVzdHJveSgpO1xyXG4gICAgY29uc3QgY29sb3JzID0gdGhpcy5fc2Vzc2lvbi5hY2NlbnRQYWxldHRlO1xyXG4gICAgbGV0IHBhbGV0dGVzID0gW3RoaXMuX3Nlc3Npb24uZ2V0UHJpbWVyeSgpLFxyXG4gICAgLi4uY29sb3JzXHJcbiAgICBdO1xyXG4gICAgd2hpbGUgKHRoaXMuc2VyaWVzLmxlbmd0aCA8IHBhbGV0dGVzLmxlbmd0aCkge1xyXG4gICAgICBwYWxldHRlcy5wdXNoKC4uLmNvbG9ycyk7XHJcbiAgICB9XHJcbiAgICB0aGlzLmNoYXJ0ID0gbmV3IENoYXJ0KHtcclxuICAgICAgdGhlbWU6IHRoaXMudGhlbWUsXHJcbiAgICAgIHNlbGVjdGlvbk1vZGU6ICdTZXJpZXMnLFxyXG4gICAgICB0aXRsZTogdGhpcy5fdHJhbnNsYXRlLmdldCgnQXZlcmFnZVZhbHVlJywgZGF5anMuZHVyYXRpb24odGhpcy5kdXJhdGlvbkF2ZywgJ3NlY29uZHMnKS5mb3JtYXQoJ0REOkhIOm1tJykpLFxyXG4gICAgICB0aXRsZVN0eWxlOiB0aGlzLnRpdGxlU3R5bGUsXHJcbiAgICAgIHN1YlRpdGxlOiB0aGlzLnN0ZEF2ZyA/XHJcbiAgICAgICAgdGhpcy5fdHJhbnNsYXRlLmdldCgnU3RhbmRhcmRWYWx1ZScsIGRheWpzLmR1cmF0aW9uKHRoaXMuc3RkQXZnLCAnc2Vjb25kcycpLmZvcm1hdCgnREQ6SEg6bW0nKSkgOiBudWxsLFxyXG4gICAgICBzdWJUaXRsZVN0eWxlOiB0aGlzLnRpdGxlU3R5bGUsXHJcbiAgICAgIHNlcmllczogdGhpcy5zZXJpZXMsXHJcbiAgICAgIHRvb2x0aXA6IHRoaXMudG9vbHRpcCxcclxuICAgICAgdG9vbHRpcFJlbmRlcjogdGhpcy50b29sdGlwUmVuZGVyLmJpbmQodGhpcyksXHJcbiAgICAgIGxlZ2VuZFNldHRpbmdzOiB0aGlzLmxlZ2VuZFNldHRpbmdzLFxyXG4gICAgICBsZWdlbmRSZW5kZXI6IHRoaXMubGVnZW5kUmVuZGVyLmJpbmQodGhpcyksXHJcbiAgICAgIGF4aXNMYWJlbFJlbmRlcjogdGhpcy5sYWJlbFJlbmRlci5iaW5kKHRoaXMpLFxyXG4gICAgICBwYWxldHRlcyxcclxuICAgICAgZW5hYmxlUnRsOiB0aGlzLl9zZXNzaW9uLmludmVyc2UsXHJcbiAgICAgIGhlaWdodDogJzEwMCUnLFxyXG4gICAgICBoaWdobGlnaHRNb2RlOiAnU2VyaWVzJyxcclxuICAgICAgcG9pbnRDbGljazogdGhpcy5leHBsb3JlLmJpbmQodGhpcylcclxuICAgIH0sXHJcbiAgICAgIHRoaXMuX2VsZW1lbnRSZWYubmF0aXZlRWxlbWVudCk7XHJcbiAgfVxyXG4gIGxlZ2VuZFJlbmRlcihldnQ6IElMZWdlbmRSZW5kZXJFdmVudEFyZ3MpIHtcclxuICAgIC8vZXZ0LnRleHRcclxuICB9XHJcbiAgdG9vbHRpcFJlbmRlcihldnQ6IElUb29sdGlwUmVuZGVyRXZlbnRBcmdzKSB7XHJcbiAgICBldnQudGV4dCA9IGRheWpzLmR1cmF0aW9uKGV2dC5kYXRhLnBvaW50WSBhcyBhbnksICdzJykuaHVtYW5pemUoKTsvLyAnREQ6SEg6c3MnXHJcbiAgfVxyXG4gIGxhYmVsUmVuZGVyKGV2dDogSUF4aXNMYWJlbFJlbmRlckV2ZW50QXJncykge1xyXG4gICAgc3dpdGNoIChldnQuYXhpcy5uYW1lKSB7XHJcbiAgICAgIGNhc2UgJ3ByaW1hcnlZQXhpcyc6XHJcbiAgICAgICAgZXZ0LnRleHQgPSBkYXlqcy5kdXJhdGlvbihldnQudmFsdWUsICdzJykuZm9ybWF0KCdERDpISDptbScpO1xyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgICBjYXNlICdwcmltYXJ5WEF4aXMnOlxyXG4gICAgICAgIGV2dC50ZXh0ID0gZGF5anMoZXZ0LnZhbHVlKS5mb3JtYXQoJ01NTSBZWVlZJyk7XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICB9XHJcbiAgfVxyXG4gIGV4cGxvcmUoZXZ0OiBJUG9pbnRFdmVudEFyZ3MpIHtcclxuICAgIGNvbnN0IHsgcG9pbnRJbmRleCwgc2VyaWVzSW5kZXggfSA9IGV2dDtcclxuICAgIGlmIChzZXJpZXNJbmRleCA9PT0gMCkgcmV0dXJuO1xyXG5cclxuICAgIGNvbnN0IHsgZG9jdW1lbnRJZCB9ID0gdGhpcy5jaGFydC5zZXJpZXNbc2VyaWVzSW5kZXhdLmRhdGFTb3VyY2VbcG9pbnRJbmRleF0gYXMgSXRlbU1vZGVsO1xyXG5cclxuICAgIHRoaXMuX3JvdXRlci5uYXZpZ2F0ZShbJ21haWxib3gnLCAnZCcsIGRvY3VtZW50SWQuZW5jb2RlSWQoKV0pO1xyXG4gIH1cclxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcclxuICAgIHRoaXMuY2hhcnQ/LmRlc3Ryb3koKTtcclxuICAgIHRoaXMuX2Rlc3Ryb3kubmV4dCgpO1xyXG4gIH1cclxufVxyXG5cclxuaW50ZXJmYWNlIE1vZGVsIHtcclxuICB1c2VySWQ6IHN0cmluZztcclxuICBpdGVtczogSXRlbU1vZGVsW107XHJcbn1cclxuaW50ZXJmYWNlIEl0ZW1Nb2RlbCB7XHJcbiAgZG9jdW1lbnRJZDogbnVtYmVyO1xyXG4gIGRhdGU6IG51bWJlcjtcclxuICBzdGFuZGFyZFRpbWU/OiBudW1iZXI7XHJcbiAgZHVyYXRpb246IG51bWJlcjtcclxuICBpc0ZZSTogYm9vbGVhbjtcclxuICBhY3Rpb25JZDogc3RyaW5nO1xyXG59XHJcbmludGVyZmFjZSBQZXJmb3JtYW5jZVNldHRpbmdzTW9kZWwge1xyXG4gIGN1YmU/OiBzdHJpbmc7XHJcbiAgZmlsdGVycz86IEF4ZXNNYXA7XHJcbn1cclxuIl19
|
@@ -0,0 +1,178 @@
|
|
1
|
+
import { __decorate } from "tslib";
|
2
|
+
import { Component } from '@angular/core';
|
3
|
+
import { Subject, startWith, takeUntil } from 'rxjs';
|
4
|
+
/// <reference path="./node_modules/dayjs/plugin/duration.d.ts" />
|
5
|
+
import dayjs from 'dayjs';
|
6
|
+
import { BizDoc } from '../../core/decorators';
|
7
|
+
import { FONT_FAMILY } from '../../core/colors';
|
8
|
+
//import { CircularGauge, GaugeTheme, IAxisLabelRenderEventArgs, ITooltipRenderEventArgs, LegendSettingsModel, RangeModel, TooltipSettingsModel } from '@syncfusion/ej2-angular-circulargauge';
|
9
|
+
import { Chart } from '@syncfusion/ej2-angular-charts';
|
10
|
+
import * as i0 from "@angular/core";
|
11
|
+
import * as i1 from "../../core/account.service";
|
12
|
+
import * as i2 from "../../core/session.service";
|
13
|
+
import * as i3 from "../../core/translate.service";
|
14
|
+
let RolesPerformanceComponent1 = class RolesPerformanceComponent1 {
|
15
|
+
constructor(_elementRef, _accounts, _session, _translate) {
|
16
|
+
this._elementRef = _elementRef;
|
17
|
+
this._accounts = _accounts;
|
18
|
+
this._session = _session;
|
19
|
+
this._translate = _translate;
|
20
|
+
this.titleStyle = {
|
21
|
+
fontFamily: FONT_FAMILY
|
22
|
+
};
|
23
|
+
this._destroy = new Subject();
|
24
|
+
_session.themeChange.pipe(takeUntil(this._destroy), startWith(_session.theme)).subscribe(t => {
|
25
|
+
//this.theme = t.dark ? 'Material3Dark' : 'Material3';
|
26
|
+
//this.gauge && this._draw();
|
27
|
+
this.chart && this._draw();
|
28
|
+
});
|
29
|
+
}
|
30
|
+
onBind(data) {
|
31
|
+
//this.gauge?.destroy();
|
32
|
+
this.chart?.destroy();
|
33
|
+
if (!data.length)
|
34
|
+
return;
|
35
|
+
let accumStd = 0, countStd = 0, accumDuration = 0;
|
36
|
+
this.maxStd = 0, this.minStd = 0, this.maxDuration = 0, this.minDuration = data[0].durationLow;
|
37
|
+
data.forEach(e => {
|
38
|
+
if (e.standardAvg) {
|
39
|
+
if (e.standardHigh > this.maxStd)
|
40
|
+
this.maxStd = e.standardHigh;
|
41
|
+
if (e.standardLow < this.minStd || this.minStd === 0)
|
42
|
+
this.minStd = e.standardLow;
|
43
|
+
countStd++;
|
44
|
+
accumStd += e.standardAvg;
|
45
|
+
}
|
46
|
+
accumDuration += e.durationAvg;
|
47
|
+
if (e.durationHigh > this.maxDuration)
|
48
|
+
this.maxDuration = e.durationHigh;
|
49
|
+
if (e.durationLow < this.minDuration)
|
50
|
+
this.minDuration = e.durationLow;
|
51
|
+
});
|
52
|
+
this.stdAvg = countStd ? accumStd / countStd : 0,
|
53
|
+
this.durationAvg = accumDuration / data.length;
|
54
|
+
this._accounts.getAll(data.map(e => e.userId)).
|
55
|
+
subscribe(users => {
|
56
|
+
this.data = data.map((d, i) => {
|
57
|
+
const durationDev = d.durationAvg / this.durationAvg, standardDev = this.stdAvg ? d.durationAvg / this.stdAvg : 0;
|
58
|
+
return ({
|
59
|
+
durationDev,
|
60
|
+
standardDev,
|
61
|
+
...d,
|
62
|
+
name: users[i].name,
|
63
|
+
values: [d.standardHigh, d.durationHigh, d.durationAvg, d.durationLow, d.standardLow]
|
64
|
+
});
|
65
|
+
});
|
66
|
+
this._draw();
|
67
|
+
});
|
68
|
+
}
|
69
|
+
_draw() {
|
70
|
+
this.chart?.destroy();
|
71
|
+
//const colors = this._session.accentPalette;
|
72
|
+
//this.gauge?.destroy();
|
73
|
+
//this.gauge = new CircularGauge({
|
74
|
+
// theme: this.theme,
|
75
|
+
// title: this._translate.get('AverageValue', dayjs.duration(this.durationAvg, 'seconds').format('DD:HH:mm')),
|
76
|
+
// titleStyle: this.titleStyle,
|
77
|
+
// tooltip: this.tooltip,
|
78
|
+
// axes: [{
|
79
|
+
// startAngle: 270,
|
80
|
+
// endAngle: 90,
|
81
|
+
// pointers: [{
|
82
|
+
// text: this._translate.get('Standard'),
|
83
|
+
// color: this._session.getPrimery(),
|
84
|
+
// value: this.stdAvg
|
85
|
+
// }],
|
86
|
+
// ranges: this.data.map((e, i) => ({
|
87
|
+
// legendText: e.name,
|
88
|
+
// radius: `${100 - i * 5}%`,
|
89
|
+
// startWidth: 3,
|
90
|
+
// endWidth: 3,
|
91
|
+
// start: this.minDuration,
|
92
|
+
// end: this.stdAvg ? Math.floor(e.durationAvg / this.stdAvg) : Math.floor(e.durationAvg / this.durationAvg),
|
93
|
+
// color: colors[Math.floor((i + 9) / i)]
|
94
|
+
// } as RangeModel))
|
95
|
+
// }],
|
96
|
+
// tooltipRender: this.tooltipRender.bind(this),
|
97
|
+
// legendSettings: this.legendSettings,
|
98
|
+
// enableRtl: this._session.inverse,
|
99
|
+
// height: '100%',
|
100
|
+
//},
|
101
|
+
// this._elementRef.nativeElement);
|
102
|
+
this.chart = new Chart({
|
103
|
+
primaryYAxis: {
|
104
|
+
stripLines: [{
|
105
|
+
text: this._translate.get('Standard'),
|
106
|
+
textStyle: {
|
107
|
+
fontFamily: FONT_FAMILY,
|
108
|
+
},
|
109
|
+
opacity: .8,
|
110
|
+
start: this.minStd,
|
111
|
+
end: this.maxStd,
|
112
|
+
}]
|
113
|
+
},
|
114
|
+
primaryXAxis: {
|
115
|
+
valueType: 'Category'
|
116
|
+
},
|
117
|
+
tooltip: { enable: true },
|
118
|
+
tooltipRender: this.tooltipRender.bind(this),
|
119
|
+
series: [{
|
120
|
+
type: 'BoxAndWhisker',
|
121
|
+
dataSource: this.data,
|
122
|
+
boxPlotMode: 'Normal',
|
123
|
+
enableTooltip: true,
|
124
|
+
xName: 'name',
|
125
|
+
yName: 'values'
|
126
|
+
}, {
|
127
|
+
type: 'Spline',
|
128
|
+
dataSource: this.data,
|
129
|
+
xName: 'name',
|
130
|
+
width: 3,
|
131
|
+
dashArray: '3 2',
|
132
|
+
yName: 'durationAvg',
|
133
|
+
}],
|
134
|
+
height: '100%',
|
135
|
+
axisLabelRender: this.axisLabelRender.bind(this),
|
136
|
+
palettes: [
|
137
|
+
this._session.getAccent(), this._session.getPrimery()
|
138
|
+
]
|
139
|
+
}, this._elementRef.nativeElement);
|
140
|
+
}
|
141
|
+
axisLabelRender(evt) {
|
142
|
+
if (evt.axis.name === 'primaryYAxis')
|
143
|
+
evt.text = dayjs.duration(evt.value, 's').humanize(); // 'DD:HH:mm'
|
144
|
+
}
|
145
|
+
tooltipRender(evt) {
|
146
|
+
//evt.content = dayjs.duration(evt.range.end, 's').humanize();// 'DD:HH:mm'
|
147
|
+
if (evt.data.seriesIndex === 0) {
|
148
|
+
const [standardHigh, durationHigh, durationAvg, durationLow, standardLow] = evt.point.y;
|
149
|
+
evt.text = dayjs.duration(durationHigh, 's').format('DD:HH:mm');
|
150
|
+
if (standardHigh) {
|
151
|
+
const deviation = Math.round(this.data[evt.data.pointIndex].standardDev);
|
152
|
+
evt.text += ` ${deviation}%`;
|
153
|
+
}
|
154
|
+
}
|
155
|
+
else {
|
156
|
+
evt.headerText = this._translate.get('Average');
|
157
|
+
evt.text = dayjs.duration(evt.data.pointY, 's').format('DD:HH:mm');
|
158
|
+
}
|
159
|
+
}
|
160
|
+
ngOnDestroy() {
|
161
|
+
//this.gauge?.destroy();
|
162
|
+
this.chart?.destroy();
|
163
|
+
this._destroy.next();
|
164
|
+
}
|
165
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.1", ngImport: i0, type: RolesPerformanceComponent1, deps: [{ token: i0.ElementRef }, { token: i1.AccountService }, { token: i2.SessionService }, { token: i3.TranslateService }], target: i0.ɵɵFactoryTarget.Component }); }
|
166
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.2.1", type: RolesPerformanceComponent1, selector: "ng-component", ngImport: i0, template: '', isInline: true, styles: [":host{flex:1}\n"] }); }
|
167
|
+
};
|
168
|
+
RolesPerformanceComponent1 = __decorate([
|
169
|
+
BizDoc({
|
170
|
+
selector: 'bizdoc-role-performance1'
|
171
|
+
})
|
172
|
+
], RolesPerformanceComponent1);
|
173
|
+
export { RolesPerformanceComponent1 };
|
174
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.1", ngImport: i0, type: RolesPerformanceComponent1, decorators: [{
|
175
|
+
type: Component,
|
176
|
+
args: [{ template: '', styles: [":host{flex:1}\n"] }]
|
177
|
+
}], ctorParameters: () => [{ type: i0.ElementRef }, { type: i1.AccountService }, { type: i2.SessionService }, { type: i3.TranslateService }] });
|
178
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm9sZS1wZXJmb3JtYW5jZTEuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicmFyaWVzL2NvcmUvc3JjL2xpYi9yZXBvcnRzL2N1YmUvcm9sZS1wZXJmb3JtYW5jZTEuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsU0FBUyxFQUF5QixNQUFNLGVBQWUsQ0FBQztBQUNqRSxPQUFPLEVBQUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDckQsa0VBQWtFO0FBQ2xFLE9BQU8sS0FBSyxNQUFNLE9BQU8sQ0FBQztBQUMxQixPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFNL0MsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ2hELCtMQUErTDtBQUMvTCxPQUFPLEVBQUUsS0FBSyxFQUFzRCxNQUFNLGdDQUFnQyxDQUFDOzs7OztBQVNwRyxJQUFNLDBCQUEwQixHQUFoQyxNQUFNLDBCQUEwQjtJQWlCckMsWUFDVSxXQUF1QyxFQUN2QyxTQUF5QixFQUN6QixRQUF3QixFQUN4QixVQUE0QjtRQUg1QixnQkFBVyxHQUFYLFdBQVcsQ0FBNEI7UUFDdkMsY0FBUyxHQUFULFNBQVMsQ0FBZ0I7UUFDekIsYUFBUSxHQUFSLFFBQVEsQ0FBZ0I7UUFDeEIsZUFBVSxHQUFWLFVBQVUsQ0FBa0I7UUFYN0IsZUFBVSxHQUFHO1lBQ3BCLFVBQVUsRUFBRSxXQUFXO1NBQ3hCLENBQUM7UUFDZSxhQUFRLEdBQUcsSUFBSSxPQUFPLEVBQVEsQ0FBQztRQVc5QyxRQUFRLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxFQUFFLFNBQVMsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVB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dFJlZiwgT25EZXN0cm95IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFN1YmplY3QsIHN0YXJ0V2l0aCwgdGFrZVVudGlsIH0gZnJvbSAncnhqcyc7XHJcbi8vLyA8cmVmZXJlbmNlIHBhdGg9XCIuL25vZGVfbW9kdWxlcy9kYXlqcy9wbHVnaW4vZHVyYXRpb24uZC50c1wiIC8+XHJcbmltcG9ydCBkYXlqcyBmcm9tICdkYXlqcyc7XHJcbmltcG9ydCB7IEJpekRvYyB9IGZyb20gJy4uLy4uL2NvcmUvZGVjb3JhdG9ycyc7XHJcbmltcG9ydCB7IFJlcG9ydENvbXBvbmVudCB9IGZyb20gJy4uLy4uL2NvcmUvYmFzZSc7XHJcbmltcG9ydCB7IEFjY291bnRTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vY29yZS9hY2NvdW50LnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBTZXNzaW9uU2VydmljZSB9IGZyb20gJy4uLy4uL2NvcmUvc2Vzc2lvbi5zZXJ2aWNlJztcclxuaW1wb3J0IHsgQXhlc01hcCwgVXNlckluZm8gfSBmcm9tICcuLi8uLi9jb3JlL21vZGVscyc7XHJcbmltcG9ydCB7IFRyYW5zbGF0ZVNlcnZpY2UgfSBmcm9tICcuLi8uLi9jb3JlL3RyYW5zbGF0ZS5zZXJ2aWNlJztcclxuaW1wb3J0IHsgRk9OVF9GQU1JTFkgfSBmcm9tICcuLi8uLi9jb3JlL2NvbG9ycyc7XHJcbi8vaW1wb3J0IHsgQ2lyY3VsYXJHYXVnZSwgR2F1Z2VUaGVtZSwgSUF4aXNMYWJlbFJlbmRlckV2ZW50QXJncywgSVRvb2x0aXBSZW5kZXJFdmVudEFyZ3MsIExlZ2VuZFNldHRpbmdzTW9kZWwsIFJhbmdlTW9kZWwsIFRvb2x0aXBTZXR0aW5nc01vZGVsIH0gZnJvbSAnQHN5bmNmdXNpb24vZWoyLWFuZ3VsYXItY2lyY3VsYXJnYXVnZSc7XHJcbmltcG9ydCB7IENoYXJ0LCBJQXhpc0xhYmVsUmVuZGVyRXZlbnRBcmdzLCBJVG9vbHRpcFJlbmRlckV2ZW50QXJncyB9IGZyb20gJ0BzeW5jZnVzaW9uL2VqMi1hbmd1bGFyLWNoYXJ0cyc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICB0ZW1wbGF0ZTogJycsXHJcbiAgc3R5bGVzOiBgOmhvc3Qge2ZsZXg6IDF9YFxyXG59KVxyXG5AQml6RG9jKHtcclxuICBzZWxlY3RvcjogJ2JpemRvYy1yb2xlLXBlcmZvcm1hbmNlMSdcclxufSlcclxuZXhwb3J0IGNsYXNzIFJvbGVzUGVyZm9ybWFuY2VDb21wb25lbnQxIGltcGxlbWVudHMgUmVwb3J0Q29tcG9uZW50PE1vZGVsPiwgT25EZXN0cm95IHtcclxuICAvL3RoZW1lOiBHYXVnZVRoZW1lO1xyXG4gIC8vZ2F1Z2U6IENpcmN1bGFyR2F1Z2U7XHJcbiAgZHVyYXRpb25Bdmc6IG51bWJlcjtcclxuICBzdGRBdmc6IG51bWJlcjtcclxuICBtYXhTdGQ6IG51bWJlcjtcclxuICBtaW5TdGQ6IG51bWJlcjtcclxuICBtaW5EdXJhdGlvbjogbnVtYmVyO1xyXG4gIG1heER1cmF0aW9uOiBudW1iZXI7XHJcbiAgZGF0YTogSXRlbVtdO1xyXG4gIHJlYWRvbmx5IHRpdGxlU3R5bGUgPSB7XHJcbiAgICBmb250RmFtaWx5OiBGT05UX0ZBTUlMWVxyXG4gIH07XHJcbiAgcHJpdmF0ZSByZWFkb25seSBfZGVzdHJveSA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XHJcbiAgLy9yZWFkb25seSBsZWdlbmRTZXR0aW5nczogTGVnZW5kU2V0dGluZ3NNb2RlbCA9IHt9O1xyXG4gIC8vcmVhZG9ubHkgdG9vbHRpcDogVG9vbHRpcFNldHRpbmdzTW9kZWwgPSB7fTtcclxuICBjaGFydDogQ2hhcnQ7XHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIF9lbGVtZW50UmVmOiBFbGVtZW50UmVmPEhUTUxEaXZFbGVtZW50PixcclxuICAgIHByaXZhdGUgX2FjY291bnRzOiBBY2NvdW50U2VydmljZSxcclxuICAgIHByaXZhdGUgX3Nlc3Npb246IFNlc3Npb25TZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBfdHJhbnNsYXRlOiBUcmFuc2xhdGVTZXJ2aWNlLFxyXG4gICAgLy8gIHByaXZhdGUgX3JlcG9ydFJlZjogUmVwb3J0UmVmPFBlcmZvcm1hbmNlU2V0dGluZ3NNb2RlbD5cclxuICApIHtcclxuICAgIF9zZXNzaW9uLnRoZW1lQ2hhbmdlLnBpcGUodGFrZVVudGlsKHRoaXMuX2Rlc3Ryb3kpLCBzdGFydFdpdGgoX3Nlc3Npb24udGhlbWUpKS5zdWJzY3JpYmUodCA9PiB7XHJcbiAgICAgIC8vdGhpcy50aGVtZSA9IHQuZGFyayA/ICdNYXRlcmlhbDNEYXJrJyA6ICdNYXRlcmlhbDMnO1xyXG4gICAgICAvL3RoaXMuZ2F1Z2UgJiYgdGhpcy5fZHJhdygpO1xyXG4gICAgICB0aGlzLmNoYXJ0ICYmIHRoaXMuX2RyYXcoKTtcclxuICAgIH0pXHJcbiAgfVxyXG4gIG9uQmluZChkYXRhOiBNb2RlbFtdKSB7XHJcbiAgICAvL3RoaXMuZ2F1Z2U/LmRlc3Ryb3koKTtcclxuICAgIHRoaXMuY2hhcnQ/LmRlc3Ryb3koKTtcclxuICAgIGlmICghZGF0YS5sZW5ndGgpIHJldHVybjtcclxuICAgIGxldCBhY2N1bVN0ZCA9IDAsIGNvdW50U3RkID0gMCwgYWNjdW1EdXJhdGlvbiA9IDA7XHJcbiAgICB0aGlzLm1heFN0ZCA9IDAsIHRoaXMubWluU3RkID0gMCwgdGhpcy5tYXhEdXJhdGlvbiA9IDAsIHRoaXMubWluRHVyYXRpb24gPSBkYXRhWzBdLmR1cmF0aW9uTG93O1xyXG4gICAgZGF0YS5mb3JFYWNoKGUgPT4ge1xyXG4gICAgICBpZiAoZS5zdGFuZGFyZEF2Zykge1xyXG4gICAgICAgIGlmIChlLnN0YW5kYXJkSGlnaCA+IHRoaXMubWF4U3RkKVxyXG4gICAgICAgICAgdGhpcy5tYXhTdGQgPSBlLnN0YW5kYXJkSGlnaDtcclxuICAgICAgICBpZiAoZS5zdGFuZGFyZExvdyA8IHRoaXMubWluU3RkIHx8IHRoaXMubWluU3RkID09PSAwKVxyXG4gICAgICAgICAgdGhpcy5taW5TdGQgPSBlLnN0YW5kYXJkTG93O1xyXG4gICAgICAgIGNvdW50U3RkKys7XHJcbiAgICAgICAgYWNjdW1TdGQgKz0gZS5zdGFuZGFyZEF2ZztcclxuICAgICAgfVxyXG4gICAgICBhY2N1bUR1cmF0aW9uICs9IGUuZHVyYXRpb25Bdmc7XHJcbiAgICAgIGlmIChlLmR1cmF0aW9uSGlnaCA+IHRoaXMubWF4RHVyYXRpb24pXHJcbiAgICAgICAgdGhpcy5tYXhEdXJhdGlvbiA9IGUuZHVyYXRpb25IaWdoO1xyXG4gICAgICBpZiAoZS5kdXJhdGlvbkxvdyA8IHRoaXMubWluRHVyYXRpb24pXHJcbiAgICAgICAgdGhpcy5taW5EdXJhdGlvbiA9IGUuZHVyYXRpb25Mb3c7XHJcbiAgICB9KTtcclxuICAgIHRoaXMuc3RkQXZnID0gY291bnRTdGQgPyBhY2N1bVN0ZCAvIGNvdW50U3RkIDogMCxcclxuICAgICAgdGhpcy5kdXJhdGlvbkF2ZyA9IGFjY3VtRHVyYXRpb24gLyBkYXRhLmxlbmd0aDtcclxuICAgIHRoaXMuX2FjY291bnRzLmdldEFsbChkYXRhLm1hcChlID0+IGUudXNlcklkKSkuXHJcbiAgICAgIHN1YnNjcmliZSh1c2VycyA9PiB7XHJcbiAgICAgICAgdGhpcy5kYXRhID0gZGF0YS5tYXAoKGQsIGkpID0+IHtcclxuICAgICAgICAgIGNvbnN0IGR1cmF0aW9uRGV2ID0gZC5kdXJhdGlvbkF2ZyAvIHRoaXMuZHVyYXRpb25BdmcsXHJcbiAgICAgICAgICAgIHN0YW5kYXJkRGV2ID0gdGhpcy5zdGRBdmcgPyBkLmR1cmF0aW9uQXZnIC8gdGhpcy5zdGRBdmcgOiAwO1xyXG5cclxuICAgICAgICAgIHJldHVybiAoe1xyXG4gICAgICAgICAgICBkdXJhdGlvbkRldixcclxuICAgICAgICAgICAgc3RhbmRhcmREZXYsXHJcbiAgICAgICAgICAgIC4uLmQsXHJcbiAgICAgICAgICAgIG5hbWU6IHVzZXJzW2ldLm5hbWUsXHJcbiAgICAgICAgICAgIHZhbHVlczogW2Quc3RhbmRhcmRIaWdoLCBkLmR1cmF0aW9uSGlnaCwgZC5kdXJhdGlvbkF2ZywgZC5kdXJhdGlvbkxvdywgZC5zdGFuZGFyZExvd11cclxuICAgICAgICAgIH0pO1xyXG4gICAgICAgIH0pO1xyXG4gICAgICAgIHRoaXMuX2RyYXcoKTtcclxuICAgICAgfSk7XHJcbiAgfVxyXG4gIHByaXZhdGUgX2RyYXcoKSB7XHJcbiAgICB0aGlzLmNoYXJ0Py5kZXN0cm95KCk7XHJcbiAgICAvL2NvbnN0IGNvbG9ycyA9IHRoaXMuX3Nlc3Npb24uYWNjZW50UGFsZXR0ZTtcclxuICAgIC8vdGhpcy5nYXVnZT8uZGVzdHJveSgpO1xyXG4gICAgLy90aGlzLmdhdWdlID0gbmV3IENpcmN1bGFyR2F1Z2Uoe1xyXG4gICAgLy8gIHRoZW1lOiB0aGlzLnRoZW1lLFxyXG4gICAgLy8gIHRpdGxlOiB0aGlzLl90cmFuc2xhdGUuZ2V0KCdBdmVyYWdlVmFsdWUnLCBkYXlqcy5kdXJhdGlvbih0aGlzLmR1cmF0aW9uQXZnLCAnc2Vjb25kcycpLmZvcm1hdCgnREQ6SEg6bW0nKSksXHJcbiAgICAvLyAgdGl0bGVTdHlsZTogdGhpcy50aXRsZVN0eWxlLFxyXG4gICAgLy8gIHRvb2x0aXA6IHRoaXMudG9vbHRpcCxcclxuICAgIC8vICBheGVzOiBbe1xyXG4gICAgLy8gICAgc3RhcnRBbmdsZTogMjcwLFxyXG4gICAgLy8gICAgZW5kQW5nbGU6IDkwLFxyXG4gICAgLy8gICAgcG9pbnRlcnM6IFt7XHJcbiAgICAvLyAgICAgIHRleHQ6IHRoaXMuX3RyYW5zbGF0ZS5nZXQoJ1N0YW5kYXJkJyksXHJcbiAgICAvLyAgICAgIGNvbG9yOiB0aGlzLl9zZXNzaW9uLmdldFByaW1lcnkoKSxcclxuICAgIC8vICAgICAgdmFsdWU6IHRoaXMuc3RkQXZnXHJcbiAgICAvLyAgICB9XSxcclxuICAgIC8vICAgIHJhbmdlczogdGhpcy5kYXRhLm1hcCgoZSwgaSkgPT4gKHtcclxuICAgIC8vICAgICAgbGVnZW5kVGV4dDogZS5uYW1lLFxyXG4gICAgLy8gICAgICByYWRpdXM6IGAkezEwMCAtIGkgKiA1fSVgLFxyXG4gICAgLy8gICAgICBzdGFydFdpZHRoOiAzLFxyXG4gICAgLy8gICAgICBlbmRXaWR0aDogMyxcclxuICAgIC8vICAgICAgc3RhcnQ6IHRoaXMubWluRHVyYXRpb24sXHJcbiAgICAvLyAgICAgIGVuZDogdGhpcy5zdGRBdmcgPyBNYXRoLmZsb29yKGUuZHVyYXRpb25BdmcgLyB0aGlzLnN0ZEF2ZykgOiBNYXRoLmZsb29yKGUuZHVyYXRpb25BdmcgLyB0aGlzLmR1cmF0aW9uQXZnKSxcclxuICAgIC8vICAgICAgY29sb3I6IGNvbG9yc1tNYXRoLmZsb29yKChpICsgOSkgLyBpKV1cclxuICAgIC8vICAgIH0gYXMgUmFuZ2VNb2RlbCkpXHJcbiAgICAvLyAgfV0sXHJcbiAgICAvLyAgdG9vbHRpcFJlbmRlcjogdGhpcy50b29sdGlwUmVuZGVyLmJpbmQodGhpcyksXHJcbiAgICAvLyAgbGVnZW5kU2V0dGluZ3M6IHRoaXMubGVnZW5kU2V0dGluZ3MsXHJcbiAgICAvLyAgZW5hYmxlUnRsOiB0aGlzLl9zZXNzaW9uLmludmVyc2UsXHJcbiAgICAvLyAgaGVpZ2h0OiAnMTAwJScsXHJcbiAgICAvL30sXHJcbiAgICAvLyAgdGhpcy5fZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50KTtcclxuICAgIHRoaXMuY2hhcnQgPSBuZXcgQ2hhcnQoe1xyXG4gICAgICBwcmltYXJ5WUF4aXM6IHtcclxuICAgICAgICBzdHJpcExpbmVzOiBbe1xyXG4gICAgICAgICAgdGV4dDogdGhpcy5fdHJhbnNsYXRlLmdldCgnU3RhbmRhcmQnKSxcclxuICAgICAgICAgIHRleHRTdHlsZToge1xyXG4gICAgICAgICAgICBmb250RmFtaWx5OiBGT05UX0ZBTUlMWSxcclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgICBvcGFjaXR5OiAuOCxcclxuICAgICAgICAgIHN0YXJ0OiB0aGlzLm1pblN0ZCxcclxuICAgICAgICAgIGVuZDogdGhpcy5tYXhTdGQsXHJcbiAgICAgICAgfV1cclxuICAgICAgfSxcclxuICAgICAgcHJpbWFyeVhBeGlzOiB7XHJcbiAgICAgICAgdmFsdWVUeXBlOiAnQ2F0ZWdvcnknXHJcbiAgICAgIH0sXHJcbiAgICAgIHRvb2x0aXA6IHsgZW5hYmxlOiB0cnVlIH0sXHJcbiAgICAgIHRvb2x0aXBSZW5kZXI6IHRoaXMudG9vbHRpcFJlbmRlci5iaW5kKHRoaXMpLFxyXG4gICAgICBzZXJpZXM6IFt7XHJcbiAgICAgICAgdHlwZTogJ0JveEFuZFdoaXNrZXInLFxyXG4gICAgICAgIGRhdGFTb3VyY2U6IHRoaXMuZGF0YSxcclxuICAgICAgICBib3hQbG90TW9kZTogJ05vcm1hbCcsXHJcbiAgICAgICAgZW5hYmxlVG9vbHRpcDogdHJ1ZSxcclxuICAgICAgICB4TmFtZTogJ25hbWUnLFxyXG4gICAgICAgIHlOYW1lOiAndmFsdWVzJ1xyXG4gICAgICB9LCB7XHJcbiAgICAgICAgdHlwZTogJ1NwbGluZScsXHJcbiAgICAgICAgZGF0YVNvdXJjZTogdGhpcy5kYXRhLFxyXG4gICAgICAgIHhOYW1lOiAnbmFtZScsXHJcbiAgICAgICAgd2lkdGg6IDMsXHJcbiAgICAgICAgZGFzaEFycmF5OiAnMyAyJyxcclxuICAgICAgICB5TmFtZTogJ2R1cmF0aW9uQXZnJyxcclxuICAgICAgfV0sXHJcbiAgICAgIGhlaWdodDogJzEwMCUnLFxyXG4gICAgICBheGlzTGFiZWxSZW5kZXI6IHRoaXMuYXhpc0xhYmVsUmVuZGVyLmJpbmQodGhpcyksXHJcbiAgICAgIHBhbGV0dGVzOiBbXHJcbiAgICAgICAgdGhpcy5fc2Vzc2lvbi5nZXRBY2NlbnQoKSwgdGhpcy5fc2Vzc2lvbi5nZXRQcmltZXJ5KCldXHJcbiAgICB9LFxyXG4gICAgICB0aGlzLl9lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQpO1xyXG4gIH1cclxuICBheGlzTGFiZWxSZW5kZXIoZXZ0OiBJQXhpc0xhYmVsUmVuZGVyRXZlbnRBcmdzKSB7XHJcbiAgICBpZiAoZXZ0LmF4aXMubmFtZSA9PT0gJ3ByaW1hcnlZQXhpcycpXHJcbiAgICAgIGV2dC50ZXh0ID0gZGF5anMuZHVyYXRpb24oZXZ0LnZhbHVlLCAncycpLmh1bWFuaXplKCk7Ly8gJ0REOkhIOm1tJ1xyXG4gIH1cclxuICB0b29sdGlwUmVuZGVyKGV2dDogSVRvb2x0aXBSZW5kZXJFdmVudEFyZ3MpIHtcclxuICAgIC8vZXZ0LmNvbnRlbnQgPSBkYXlqcy5kdXJhdGlvbihldnQucmFuZ2UuZW5kLCAncycpLmh1bWFuaXplKCk7Ly8gJ0REOkhIOm1tJ1xyXG4gICAgaWYgKGV2dC5kYXRhLnNlcmllc0luZGV4ID09PSAwKSB7XHJcbiAgICAgIGNvbnN0IFtzdGFuZGFyZEhpZ2gsIGR1cmF0aW9uSGlnaCwgZHVyYXRpb25BdmcsIGR1cmF0aW9uTG93LCBzdGFuZGFyZExvd10gPSBldnQucG9pbnQueSBhcyBudW1iZXJbXTtcclxuICAgICAgZXZ0LnRleHQgPSBkYXlqcy5kdXJhdGlvbihkdXJhdGlvbkhpZ2gsICdzJykuZm9ybWF0KCdERDpISDptbScpO1xyXG4gICAgICBpZiAoc3RhbmRhcmRIaWdoKSB7XHJcbiAgICAgICAgY29uc3QgZGV2aWF0aW9uID0gTWF0aC5yb3VuZCh0aGlzLmRhdGFbZXZ0LmRhdGEucG9pbnRJbmRleF0uc3RhbmRhcmREZXYpO1xyXG4gICAgICAgIGV2dC50ZXh0ICs9IGAgJHtkZXZpYXRpb259JWBcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgZWxzZSB7XHJcbiAgICAgIGV2dC5oZWFkZXJUZXh0ID0gdGhpcy5fdHJhbnNsYXRlLmdldCgnQXZlcmFnZScpO1xyXG4gICAgICBldnQudGV4dCA9IGRheWpzLmR1cmF0aW9uKGV2dC5kYXRhLnBvaW50WSBhcyBhbnksICdzJykuZm9ybWF0KCdERDpISDptbScpO1xyXG4gICAgfVxyXG4gIH1cclxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcclxuICAgIC8vdGhpcy5nYXVnZT8uZGVzdHJveSgpO1xyXG4gICAgdGhpcy5jaGFydD8uZGVzdHJveSgpO1xyXG4gICAgdGhpcy5fZGVzdHJveS5uZXh0KCk7XHJcbiAgfVxyXG59XHJcblxyXG5pbnRlcmZhY2UgTW9kZWwge1xyXG4gIHVzZXJJZDogc3RyaW5nO1xyXG4gIHN0YW5kYXJkQXZnOiBudW1iZXI7XHJcbiAgc3RhbmRhcmRIaWdoOiBudW1iZXI7XHJcbiAgc3RhbmRhcmRMb3c6IG51bWJlcjtcclxuICBkdXJhdGlvbkF2ZzogbnVtYmVyO1xyXG4gIGR1cmF0aW9uSGlnaDogbnVtYmVyO1xyXG4gIGR1cmF0aW9uTG93OiBudW1iZXI7XHJcbn1cclxudHlwZSBJdGVtID0gTW9kZWwgJiB7XHJcbiAgc3RhbmRhcmREZXY/OiBudW1iZXI7XHJcbiAgZHVyYXRpb25EZXY6IG51bWJlcjtcclxuICBuYW1lOiBzdHJpbmc7XHJcbiAgdmFsdWVzOiBudW1iZXJbXVxyXG59O1xyXG5pbnRlcmZhY2UgUGVyZm9ybWFuY2VTZXR0aW5nc01vZGVsIHtcclxuICBjdWJlPzogc3RyaW5nO1xyXG4gIGZpbHRlcnM/OiBBeGVzTWFwO1xyXG59XHJcbiJdfQ==
|