@taiga-ui/addon-charts 2.28.0 → 2.32.0
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/README.md +4 -5
- package/bundles/taiga-ui-addon-charts-components-legend-item.umd.js +19 -2
- package/bundles/taiga-ui-addon-charts-components-legend-item.umd.js.map +1 -1
- package/bundles/taiga-ui-addon-charts-components-legend-item.umd.min.js +1 -1
- package/bundles/taiga-ui-addon-charts-components-legend-item.umd.min.js.map +1 -1
- package/bundles/taiga-ui-addon-charts-components-line-days-chart.umd.js +5 -1
- package/bundles/taiga-ui-addon-charts-components-line-days-chart.umd.js.map +1 -1
- package/bundles/taiga-ui-addon-charts-components-line-days-chart.umd.min.js +1 -1
- package/bundles/taiga-ui-addon-charts-components-line-days-chart.umd.min.js.map +1 -1
- package/bundles/taiga-ui-addon-charts-components-pie-chart.umd.js +96 -20
- package/bundles/taiga-ui-addon-charts-components-pie-chart.umd.js.map +1 -1
- package/bundles/taiga-ui-addon-charts-components-pie-chart.umd.min.js +2 -2
- package/bundles/taiga-ui-addon-charts-components-pie-chart.umd.min.js.map +1 -1
- package/bundles/taiga-ui-addon-charts-components-ring-chart.umd.js +2 -14
- package/bundles/taiga-ui-addon-charts-components-ring-chart.umd.js.map +1 -1
- package/bundles/taiga-ui-addon-charts-components-ring-chart.umd.min.js +1 -1
- package/bundles/taiga-ui-addon-charts-components-ring-chart.umd.min.js.map +1 -1
- package/bundles/taiga-ui-addon-charts-utils.umd.js +4 -2
- package/bundles/taiga-ui-addon-charts-utils.umd.js.map +1 -1
- package/bundles/taiga-ui-addon-charts-utils.umd.min.js +1 -1
- package/bundles/taiga-ui-addon-charts-utils.umd.min.js.map +1 -1
- package/components/legend-item/legend-item.component.d.ts +4 -1
- package/components/legend-item/taiga-ui-addon-charts-components-legend-item.metadata.json +1 -1
- package/components/line-days-chart/taiga-ui-addon-charts-components-line-days-chart.metadata.json +1 -1
- package/components/pie-chart/index.d.ts +1 -0
- package/components/pie-chart/pie-chart.component.d.ts +4 -2
- package/components/pie-chart/pie-chart.directive.d.ts +7 -0
- package/components/pie-chart/taiga-ui-addon-charts-components-pie-chart.metadata.json +1 -1
- package/components/ring-chart/ring-chart.component.d.ts +0 -2
- package/components/ring-chart/taiga-ui-addon-charts-components-ring-chart.metadata.json +1 -1
- package/esm2015/components/legend-item/legend-item.component.js +21 -4
- package/esm2015/components/line-days-chart/line-days-chart.component.js +6 -2
- package/esm2015/components/pie-chart/index.js +2 -1
- package/esm2015/components/pie-chart/pie-chart.component.js +21 -11
- package/esm2015/components/pie-chart/pie-chart.directive.js +56 -0
- package/esm2015/components/pie-chart/pie-chart.module.js +11 -4
- package/esm2015/components/ring-chart/ring-chart.component.js +4 -12
- package/esm2015/utils/describe-sector.js +5 -3
- package/esm5/components/legend-item/legend-item.component.js +21 -4
- package/esm5/components/line-days-chart/line-days-chart.component.js +6 -2
- package/esm5/components/pie-chart/index.js +2 -1
- package/esm5/components/pie-chart/pie-chart.component.js +27 -16
- package/esm5/components/pie-chart/pie-chart.directive.js +66 -0
- package/esm5/components/pie-chart/pie-chart.module.js +11 -4
- package/esm5/components/ring-chart/ring-chart.component.js +4 -16
- package/esm5/utils/describe-sector.js +5 -3
- package/fesm2015/taiga-ui-addon-charts-components-legend-item.js +20 -3
- package/fesm2015/taiga-ui-addon-charts-components-legend-item.js.map +1 -1
- package/fesm2015/taiga-ui-addon-charts-components-line-days-chart.js +5 -1
- package/fesm2015/taiga-ui-addon-charts-components-line-days-chart.js.map +1 -1
- package/fesm2015/taiga-ui-addon-charts-components-pie-chart.js +82 -15
- package/fesm2015/taiga-ui-addon-charts-components-pie-chart.js.map +1 -1
- package/fesm2015/taiga-ui-addon-charts-components-ring-chart.js +3 -11
- package/fesm2015/taiga-ui-addon-charts-components-ring-chart.js.map +1 -1
- package/fesm2015/taiga-ui-addon-charts-utils.js +4 -2
- package/fesm2015/taiga-ui-addon-charts-utils.js.map +1 -1
- package/fesm5/taiga-ui-addon-charts-components-legend-item.js +20 -3
- package/fesm5/taiga-ui-addon-charts-components-legend-item.js.map +1 -1
- package/fesm5/taiga-ui-addon-charts-components-line-days-chart.js +5 -1
- package/fesm5/taiga-ui-addon-charts-components-line-days-chart.js.map +1 -1
- package/fesm5/taiga-ui-addon-charts-components-pie-chart.js +99 -21
- package/fesm5/taiga-ui-addon-charts-components-pie-chart.js.map +1 -1
- package/fesm5/taiga-ui-addon-charts-components-ring-chart.js +3 -15
- package/fesm5/taiga-ui-addon-charts-components-ring-chart.js.map +1 -1
- package/fesm5/taiga-ui-addon-charts-utils.js +4 -2
- package/fesm5/taiga-ui-addon-charts-utils.js.map +1 -1
- package/package.json +7 -7
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { __decorate } from "tslib";
|
|
2
|
-
import { ChangeDetectionStrategy, Component, Input } from '@angular/core';
|
|
2
|
+
import { ChangeDetectionStrategy, Component, HostBinding, Input } from '@angular/core';
|
|
3
3
|
import { tuiDefaultProp } from '@taiga-ui/cdk';
|
|
4
4
|
import { colorFallback } from '@taiga-ui/core';
|
|
5
5
|
// TODO: Remove fallback in 3.0
|
|
@@ -8,8 +8,13 @@ let TuiLegendItemComponent = class TuiLegendItemComponent {
|
|
|
8
8
|
this.active = false;
|
|
9
9
|
this.color = '';
|
|
10
10
|
this.text = '';
|
|
11
|
+
this.size = 'm';
|
|
12
|
+
this.disabled = false;
|
|
11
13
|
}
|
|
12
14
|
get computedColor() {
|
|
15
|
+
if (this.color === 'var(--tui-primary)') {
|
|
16
|
+
return null;
|
|
17
|
+
}
|
|
13
18
|
return this.color.startsWith('var(') ? this.color : colorFallback(this.color);
|
|
14
19
|
}
|
|
15
20
|
};
|
|
@@ -25,13 +30,25 @@ __decorate([
|
|
|
25
30
|
Input(),
|
|
26
31
|
tuiDefaultProp()
|
|
27
32
|
], TuiLegendItemComponent.prototype, "text", void 0);
|
|
33
|
+
__decorate([
|
|
34
|
+
Input(),
|
|
35
|
+
HostBinding('attr.data-size'),
|
|
36
|
+
tuiDefaultProp()
|
|
37
|
+
], TuiLegendItemComponent.prototype, "size", void 0);
|
|
38
|
+
__decorate([
|
|
39
|
+
Input(),
|
|
40
|
+
HostBinding('class._disabled')
|
|
41
|
+
], TuiLegendItemComponent.prototype, "disabled", void 0);
|
|
42
|
+
__decorate([
|
|
43
|
+
HostBinding('style.--tui-primary')
|
|
44
|
+
], TuiLegendItemComponent.prototype, "computedColor", null);
|
|
28
45
|
TuiLegendItemComponent = __decorate([
|
|
29
46
|
Component({
|
|
30
47
|
selector: 'tui-legend-item',
|
|
31
|
-
template: "<button\n tuiButton\n type=\"button\"\n size=\"s\"\n appearance=\"whiteblock\"\n class=\"t-button\"\n [pseudoHovered]=\"active || null\"\n>\n <
|
|
48
|
+
template: "<button\n tuiButton\n type=\"button\"\n size=\"s\"\n appearance=\"whiteblock\"\n class=\"t-button\"\n [pseudoHovered]=\"active || null\"\n>\n <div class=\"t-wrapper\">\n <ng-content select=\"tui-primitive-checkbox\"></ng-content>\n <span class=\"t-dot\"></span>\n <span class=\"t-text\">{{ text }}</span>\n <ng-content></ng-content>\n </div>\n</button>\n",
|
|
32
49
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
33
|
-
styles: [":host{display:inline-block}.t-button{font-weight:700}.t-dot{width:.5rem;height:.5rem;border-radius:100
|
|
50
|
+
styles: [":host{display:inline-block}.t-button{height:2rem;font-weight:700}:host[data-size='m'] .t-button{height:2.25rem;font:var(--tui-font-text-m);font-weight:700}.t-wrapper{display:flex;align-items:center;pointer-events:none}:host._disabled .t-wrapper{color:var(--tui-text-03)}.t-dot{width:.5rem;height:.5rem;border-radius:100%;background:var(--tui-primary)}:host._disabled .t-dot{background:var(--tui-base-04)}.t-dot:not(:first-child){display:none}.t-text{margin:0 .5rem;font-weight:400}"]
|
|
34
51
|
})
|
|
35
52
|
], TuiLegendItemComponent);
|
|
36
53
|
export { TuiLegendItemComponent };
|
|
37
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
54
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGVnZW5kLWl0ZW0uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHRhaWdhLXVpL2FkZG9uLWNoYXJ0cy9jb21wb25lbnRzL2xlZ2VuZC1pdGVtLyIsInNvdXJjZXMiOlsibGVnZW5kLWl0ZW0uY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUMsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLFdBQVcsRUFBRSxLQUFLLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDckYsT0FBTyxFQUFDLGNBQWMsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUM3QyxPQUFPLEVBQUMsYUFBYSxFQUFXLE1BQU0sZ0JBQWdCLENBQUM7QUFFdkQsK0JBQStCO0FBTy9CLElBQWEsc0JBQXNCLEdBQW5DLE1BQWEsc0JBQXNCO0lBQW5DO1FBR0ksV0FBTSxHQUFHLEtBQUssQ0FBQztRQUlmLFVBQUssR0FBRyxFQUFFLENBQUM7UUFJWCxTQUFJLEdBQUcsRUFBRSxDQUFDO1FBS1YsU0FBSSxHQUFhLEdBQUcsQ0FBQztRQUlyQixhQUFRLEdBQUcsS0FBSyxDQUFDO0lBVXJCLENBQUM7SUFQRyxJQUFJLGFBQWE7UUFDYixJQUFJLElBQUksQ0FBQyxLQUFLLEtBQUssb0JBQW9CLEVBQUU7WUFDckMsT0FBTyxJQUFJLENBQUM7U0FDZjtRQUVELE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDbEYsQ0FBQztDQUNKLENBQUE7QUEzQkc7SUFGQyxLQUFLLEVBQUU7SUFDUCxjQUFjLEVBQUU7c0RBQ0Y7QUFJZjtJQUZDLEtBQUssRUFBRTtJQUNQLGNBQWMsRUFBRTtxREFDTjtBQUlYO0lBRkMsS0FBSyxFQUFFO0lBQ1AsY0FBYyxFQUFFO29EQUNQO0FBS1Y7SUFIQyxLQUFLLEVBQUU7SUFDUCxXQUFXLENBQUMsZ0JBQWdCLENBQUM7SUFDN0IsY0FBYyxFQUFFO29EQUNJO0FBSXJCO0lBRkMsS0FBSyxFQUFFO0lBQ1AsV0FBVyxDQUFDLGlCQUFpQixDQUFDO3dEQUNkO0FBR2pCO0lBREMsV0FBVyxDQUFDLHFCQUFxQixDQUFDOzJEQU9sQztBQTdCUSxzQkFBc0I7SUFObEMsU0FBUyxDQUFDO1FBQ1AsUUFBUSxFQUFFLGlCQUFpQjtRQUMzQixrYUFBMEM7UUFFMUMsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07O0tBQ2xELENBQUM7R0FDVyxzQkFBc0IsQ0E4QmxDO1NBOUJZLHNCQUFzQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgSG9zdEJpbmRpbmcsIElucHV0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7dHVpRGVmYXVsdFByb3B9IGZyb20gJ0B0YWlnYS11aS9jZGsnO1xuaW1wb3J0IHtjb2xvckZhbGxiYWNrLCBUdWlTaXplU30gZnJvbSAnQHRhaWdhLXVpL2NvcmUnO1xuXG4vLyBUT0RPOiBSZW1vdmUgZmFsbGJhY2sgaW4gMy4wXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ3R1aS1sZWdlbmQtaXRlbScsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2xlZ2VuZC1pdGVtLnRlbXBsYXRlLmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL2xlZ2VuZC1pdGVtLnN0eWxlLmxlc3MnXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgVHVpTGVnZW5kSXRlbUNvbXBvbmVudCB7XG4gICAgQElucHV0KClcbiAgICBAdHVpRGVmYXVsdFByb3AoKVxuICAgIGFjdGl2ZSA9IGZhbHNlO1xuXG4gICAgQElucHV0KClcbiAgICBAdHVpRGVmYXVsdFByb3AoKVxuICAgIGNvbG9yID0gJyc7XG5cbiAgICBASW5wdXQoKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgdGV4dCA9ICcnO1xuXG4gICAgQElucHV0KClcbiAgICBASG9zdEJpbmRpbmcoJ2F0dHIuZGF0YS1zaXplJylcbiAgICBAdHVpRGVmYXVsdFByb3AoKVxuICAgIHNpemU6IFR1aVNpemVTID0gJ20nO1xuXG4gICAgQElucHV0KClcbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzLl9kaXNhYmxlZCcpXG4gICAgZGlzYWJsZWQgPSBmYWxzZTtcblxuICAgIEBIb3N0QmluZGluZygnc3R5bGUuLS10dWktcHJpbWFyeScpXG4gICAgZ2V0IGNvbXB1dGVkQ29sb3IoKTogc3RyaW5nIHwgbnVsbCB7XG4gICAgICAgIGlmICh0aGlzLmNvbG9yID09PSAndmFyKC0tdHVpLXByaW1hcnkpJykge1xuICAgICAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gdGhpcy5jb2xvci5zdGFydHNXaXRoKCd2YXIoJykgPyB0aGlzLmNvbG9yIDogY29sb3JGYWxsYmFjayh0aGlzLmNvbG9yKTtcbiAgICB9XG59XG4iXX0=
|
|
@@ -76,8 +76,12 @@ let TuiLineDaysChartComponent = TuiLineDaysChartComponent_1 = class TuiLineDaysC
|
|
|
76
76
|
}
|
|
77
77
|
raise(index, { value }) {
|
|
78
78
|
const x = value[index][0];
|
|
79
|
+
const month = this.getMonth(x);
|
|
79
80
|
if (this.hintDirective) {
|
|
80
|
-
this.hintDirective.raise(
|
|
81
|
+
this.hintDirective.raise(month);
|
|
82
|
+
}
|
|
83
|
+
else {
|
|
84
|
+
this.onHovered(month);
|
|
81
85
|
}
|
|
82
86
|
}
|
|
83
87
|
getWidth(index) {
|
|
@@ -167,4 +171,4 @@ TuiLineDaysChartComponent = TuiLineDaysChartComponent_1 = __decorate([
|
|
|
167
171
|
__param(0, Inject(TuiLineDaysChartHintDirective))
|
|
168
172
|
], TuiLineDaysChartComponent);
|
|
169
173
|
export { TuiLineDaysChartComponent };
|
|
170
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGluZS1kYXlzLWNoYXJ0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0B0YWlnYS11aS9hZGRvbi1jaGFydHMvY29tcG9uZW50cy9saW5lLWRheXMtY2hhcnQvIiwic291cmNlcyI6WyJsaW5lLWRheXMtY2hhcnQuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsT0FBTyxFQUNILHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsVUFBVSxFQUNWLFdBQVcsRUFDWCxNQUFNLEVBQ04sS0FBSyxFQUNMLFFBQVEsRUFFUixZQUFZLEdBQ2YsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUNILHFCQUFxQixFQUNyQix5QkFBeUIsR0FDNUIsTUFBTSw4Q0FBOEMsQ0FBQztBQUN0RCxPQUFPLEVBQ0gsV0FBVyxFQUNYLFdBQVcsRUFDWCxTQUFTLEVBRVQsTUFBTSxFQUNOLGNBQWMsRUFDZCxRQUFRLEVBQ1IsT0FBTyxHQUVWLE1BQU0sZUFBZSxDQUFDO0FBSXZCLE9BQU8sRUFBQyw2QkFBNkIsRUFBQyxNQUFNLGtDQUFrQyxDQUFDO0FBRS9FLE1BQU0sS0FBSyxHQUFhLENBQUMsR0FBRyxFQUFFLEdBQUcsQ0FBQyxDQUFDO0FBY25DLElBQWEseUJBQXlCLGlDQUF0QyxNQUFhLHlCQUF5QjtJQTJEbEMsWUFHcUIsYUFBbUQ7UUFBbkQsa0JBQWEsR0FBYixhQUFhLENBQXNDO1FBNUR2RCxXQUFNLEdBQXFDLFdBQVcsQ0FBQztRQTBCeEUsTUFBQyxHQUFHLENBQUMsQ0FBQztRQUlOLFdBQU0sR0FBRyxDQUFDLENBQUM7UUFJWCxvQkFBZSxHQUFHLENBQUMsQ0FBQztRQUlwQixnQkFBVyxHQUFrRSxFQUFFLENBQUM7UUFJaEYsZUFBVSxHQUFvQyxJQUFJLENBQUM7UUFJbkQsZUFBVSxHQUFvQyxJQUFJLENBQUM7UUFJbkQsU0FBSSxHQUFHLEtBQUssQ0FBQztRQUdiLFdBQU0sR0FBRyxDQUFDLENBQUM7UUFFWCxVQUFLLEdBQW9DLEVB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RjVELFFBQVEsWUFDUixNQUFNLFNBQUMsNkJBQTZCOztBQTNEekM7SUFEQyxZQUFZLENBQUMscUJBQXFCLENBQUM7eURBQ29DO0FBSXhFO0lBRkMsS0FBSyxDQUFDLE9BQU8sQ0FBQztJQUNkLGNBQWMsRUFBRTs0REFtQmhCO0FBSUQ7SUFGQyxLQUFLLEVBQUU7SUFDUCxjQUFjLEVBQUU7b0RBQ1g7QUFJTjtJQUZDLEtBQUssRUFBRTtJQUNQLGNBQWMsRUFBRTt5REFDTjtBQUlYO0lBRkMsS0FBSyxFQUFFO0lBQ1AsY0FBYyxFQUFFO2tFQUNHO0FBSXBCO0lBRkMsS0FBSyxFQUFFO0lBQ1AsY0FBYyxFQUFFOzhEQUMrRDtBQUloRjtJQUZDLEtBQUssRUFBRTtJQUNQLGNBQWMsRUFBRTs2REFDa0M7QUFJbkQ7SUFGQyxLQUFLLEVBQUU7SUFDUCxjQUFjLEVBQUU7NkRBQ2tDO0FBSW5EO0lBRkMsS0FBSyxFQUFFO0lBQ1AsY0FBYyxFQUFFO3VEQUNKO0FBR2I7SUFEQyxXQUFXLENBQUMsY0FBYyxDQUFDO3lEQUNqQjtBQXVCWDtJQURDLE9BQU87K0RBUVA7QUEyREQ7SUFEQyxPQUFPOzREQXNCUDtBQXJLUSx5QkFBeUI7SUFackMsU0FBUyxDQUFDO1FBQ1AsUUFBUSxFQUFFLHFCQUFxQjtRQUMvQix5c0JBQThDO1FBRTlDLGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO1FBQy9DLFNBQVMsRUFBRTtZQUNQO2dCQUNJLE9BQU8sRUFBRSx5QkFBeUI7Z0JBQ2xDLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsMkJBQXlCLENBQUM7YUFDM0Q7U0FDSjs7S0FDSixDQUFDO0lBNkRPLFdBQUEsUUFBUSxFQUFFLENBQUE7SUFDVixXQUFBLE1BQU0sQ0FBQyw2QkFBNkIsQ0FBQyxDQUFBO0dBN0RqQyx5QkFBeUIsQ0EwS3JDO1NBMUtZLHlCQUF5QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gICAgQ29tcG9uZW50LFxuICAgIGZvcndhcmRSZWYsXG4gICAgSG9zdEJpbmRpbmcsXG4gICAgSW5qZWN0LFxuICAgIElucHV0LFxuICAgIE9wdGlvbmFsLFxuICAgIFF1ZXJ5TGlzdCxcbiAgICBWaWV3Q2hpbGRyZW4sXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgICBUdWlMaW5lQ2hhcnRDb21wb25lbnQsXG4gICAgVHVpTGluZUNoYXJ0SGludERpcmVjdGl2ZSxcbn0gZnJvbSAnQHRhaWdhLXVpL2FkZG9uLWNoYXJ0cy9jb21wb25lbnRzL2xpbmUtY2hhcnQnO1xuaW1wb3J0IHtcbiAgICBFTVBUWV9BUlJBWSxcbiAgICBFTVBUWV9RVUVSWSxcbiAgICBpc1ByZXNlbnQsXG4gICAgVHVpQ29udGV4dFdpdGhJbXBsaWNpdCxcbiAgICBUdWlEYXksXG4gICAgdHVpRGVmYXVsdFByb3AsXG4gICAgVHVpTW9udGgsXG4gICAgdHVpUHVyZSxcbiAgICBUdWlTdHJpbmdIYW5kbGVyLFxufSBmcm9tICdAdGFpZ2EtdWkvY2RrJztcbmltcG9ydCB7VHVpUG9pbnR9IGZyb20gJ0B0YWlnYS11aS9jb3JlJztcbmltcG9ydCB7UG9seW1vcnBoZXVzQ29udGVudH0gZnJvbSAnQHRpbmtvZmYvbmctcG9seW1vcnBoZXVzJztcblxuaW1wb3J0IHtUdWlMaW5lRGF5c0NoYXJ0SGludERpcmVjdGl2ZX0gZnJvbSAnLi9saW5lLWRheXMtY2hhcnQtaGludC5kaXJlY3RpdmUnO1xuXG5jb25zdCBEVU1NWTogVHVpUG9pbnQgPSBbTmFOLCBOYU5dO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ3R1aS1saW5lLWRheXMtY2hhcnQnLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9saW5lLWRheXMtY2hhcnQudGVtcGxhdGUuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vbGluZS1kYXlzLWNoYXJ0LnN0eWxlLmxlc3MnXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICBwcm92aWRlcnM6IFtcbiAgICAgICAge1xuICAgICAgICAgICAgcHJvdmlkZTogVHVpTGluZUNoYXJ0SGludERpcmVjdGl2ZSxcbiAgICAgICAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IFR1aUxpbmVEYXlzQ2hhcnRDb21wb25lbnQpLFxuICAgICAgICB9LFxuICAgIF0sXG59KVxuZXhwb3J0IGNsYXNzIFR1aUxpbmVEYXlzQ2hhcnRDb21wb25lbnQge1xuICAgIEBWaWV3Q2hpbGRyZW4oVHVpTGluZUNoYXJ0Q29tcG9uZW50KVxuICAgIHByaXZhdGUgcmVhZG9ubHkgY2hhcnRzOiBRdWVyeUxpc3Q8VHVpTGluZUNoYXJ0Q29tcG9uZW50PiA9IEVNUFRZX1FVRVJZO1xuXG4gICAgQElucHV0KCd2YWx1ZScpXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICBzZXQgdmFsdWVTZXR0ZXIodmFsdWU6IFJlYWRvbmx5QXJyYXk8W1R1aURheSwgbnVtYmVyXT4pIHtcbiAgICAgICAgaWYgKCF2YWx1ZS5sZW5ndGgpIHtcbiAgICAgICAgICAgIHRoaXMudmFsdWUgPSBbXTtcblxuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3Qgc3RhcnQgPSB2YWx1ZVswXVswXTtcbiAgICAgICAgY29uc3QgbXV0YWJsZSA9IFsuLi52YWx1ZV07XG4gICAgICAgIGNvbnN0IGxlbmd0aCA9IFR1aURheS5sZW5ndGhCZXR3ZWVuKHN0YXJ0LCB2YWx1ZVt2YWx1ZS5sZW5ndGggLSAxXVswXSkgKyAxO1xuXG4gICAgICAgIHRoaXMudmFsdWUgPSBBcnJheS5mcm9tKHtsZW5ndGh9LCAoXywgZGF5KSA9PiB7XG4gICAgICAgICAgICBjb25zdCBjdXJyZW50RGF5ID0gc3RhcnQuYXBwZW5kKHtkYXl9KTtcbiAgICAgICAgICAgIGNvbnN0IHNoaWZ0ZWQgPSBjdXJyZW50RGF5LmRheVNhbWUobXV0YWJsZVswXVswXSkgPyBtdXRhYmxlLnNoaWZ0KCkgOiBudWxsO1xuICAgICAgICAgICAgY29uc3QgY3VycmVudFZhbHVlID0gc2hpZnRlZCA/IHNoaWZ0ZWRbMV0gOiBOYU47XG5cbiAgICAgICAgICAgIHJldHVybiBbY3VycmVudERheSwgY3VycmVudFZhbHVlXSBhcyBbVHVpRGF5LCBudW1iZXJdO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBASW5wdXQoKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgeSA9IDA7XG5cbiAgICBASW5wdXQoKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgaGVpZ2h0ID0gMDtcblxuICAgIEBJbnB1dCgpXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICBzbW9vdGhpbmdGYWN0b3IgPSAwO1xuXG4gICAgQElucHV0KClcbiAgICBAdHVpRGVmYXVsdFByb3AoKVxuICAgIGhpbnRDb250ZW50OiBQb2x5bW9ycGhldXNDb250ZW50PFR1aUNvbnRleHRXaXRoSW1wbGljaXQ8W1R1aURheSwgbnVtYmVyXT4+ID0gJyc7XG5cbiAgICBASW5wdXQoKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgeFN0cmluZ2lmeTogVHVpU3RyaW5nSGFuZGxlcjxUdWlEYXk+IHwgbnVsbCA9IG51bGw7XG5cbiAgICBASW5wdXQoKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgeVN0cmluZ2lmeTogVHVpU3RyaW5nSGFuZGxlcjxudW1iZXI+IHwgbnVsbCA9IG51bGw7XG5cbiAgICBASW5wdXQoKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgZG90cyA9IGZhbHNlO1xuXG4gICAgQEhvc3RCaW5kaW5nKCdzdHlsZS56SW5kZXgnKVxuICAgIHpJbmRleCA9IDA7XG5cbiAgICB2YWx1ZTogUmVhZG9ubHlBcnJheTxbVHVpRGF5LCBudW1iZXJdPiA9IFtdO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIEBPcHRpb25hbCgpXG4gICAgICAgIEBJbmplY3QoVHVpTGluZURheXNDaGFydEhpbnREaXJlY3RpdmUpXG4gICAgICAgIHByaXZhdGUgcmVhZG9ubHkgaGludERpcmVjdGl2ZTogVHVpTGluZURheXNDaGFydEhpbnREaXJlY3RpdmUgfCBudWxsLFxuICAgICkge31cblxuICAgIGdldCBtb250aHMoKTogUmVhZG9ubHlBcnJheTxSZWFkb25seUFycmF5PFR1aVBvaW50Pj4ge1xuICAgICAgICByZXR1cm4gdGhpcy52YWx1ZS5sZW5ndGggPyB0aGlzLmJyZWFrTW9udGhzKHRoaXMudmFsdWUpIDogRU1QVFlfQVJSQVk7XG4gICAgfVxuXG4gICAgZ2V0IGZpcnN0V2lkdGgoKTogbnVtYmVyIHtcbiAgICAgICAgcmV0dXJuIHRoaXMubW9udGhzLmxlbmd0aCAqIHRoaXMudmFsdWVbMF1bMF0uZGF5c0NvdW50O1xuICAgIH1cblxuICAgIGdldCBoaW50KCk6IFBvbHltb3JwaGV1c0NvbnRlbnQ8VHVpQ29udGV4dFdpdGhJbXBsaWNpdDxhbnk+PiB7XG4gICAgICAgIHJldHVybiB0aGlzLmhpbnREaXJlY3RpdmUgPyB0aGlzLmhpbnREaXJlY3RpdmUuaGludCA6IHRoaXMuaGludENvbnRlbnQ7XG4gICAgfVxuXG4gICAgQHR1aVB1cmVcbiAgICBnZXRIaW50Q29udGV4dChcbiAgICAgICAgeDogbnVtYmVyLFxuICAgICAgICB2YWx1ZTogUmVhZG9ubHlBcnJheTxbVHVpRGF5LCBudW1iZXJdPixcbiAgICApOiBUdWlDb250ZXh0V2l0aEltcGxpY2l0PFtUdWlEYXksIG51bWJlcl0+IHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICRpbXBsaWNpdDogdmFsdWVbeCAtIHZhbHVlWzBdWzBdLmRheSArIDFdLFxuICAgICAgICB9O1xuICAgIH1cblxuICAgIHJlYWRvbmx5IGRheXNTdHJpbmdpZnk6IFR1aVN0cmluZ0hhbmRsZXI8bnVtYmVyPiA9IGluZGV4ID0+XG4gICAgICAgIHRoaXMueFN0cmluZ2lmeSA/IHRoaXMueFN0cmluZ2lmeSh0aGlzLmdldE1vbnRoKGluZGV4KSkgOiAnJztcblxuICAgIGdldFgoaW5kZXg6IG51bWJlcik6IG51bWJlciB7XG4gICAgICAgIGNvbnN0IGN1cnJlbnQgPSB0aGlzLmdldE1vbnRoKGluZGV4KTtcbiAgICAgICAgY29uc3QgbW9udGhzID0gVHVpTW9udGgubGVuZ3RoQmV0d2Vlbih0aGlzLnZhbHVlWzBdWzBdLCBjdXJyZW50KTtcbiAgICAgICAgY29uc3Qgb2Zmc2V0ID0gbW9udGhzICogY3VycmVudC5kYXlzQ291bnQ7XG5cbiAgICAgICAgcmV0dXJuIGluZGV4IC0gb2Zmc2V0O1xuICAgIH1cblxuICAgIG9uSG92ZXJlZChkYXk6IFR1aURheSB8IG51bGwpIHtcbiAgICAgICAgaWYgKCFkYXkpIHtcbiAgICAgICAgICAgIHRoaXMuY2hhcnRzLmZvckVhY2goY2hhcnQgPT4gY2hhcnQub25Ib3ZlcmVkKE5hTikpO1xuXG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBpbmRleCA9IFR1aU1vbnRoLmxlbmd0aEJldHdlZW4odGhpcy52YWx1ZVswXVswXSwgZGF5KTtcbiAgICAgICAgY29uc3QgeCA9IFR1aURheS5sZW5ndGhCZXR3ZWVuKHRoaXMudmFsdWVbMF1bMF0sIGRheSkgKyB0aGlzLnZhbHVlWzBdWzBdLmRheSAtIDE7XG4gICAgICAgIGNvbnN0IGFycmF5ID0gdGhpcy5jaGFydHMudG9BcnJheSgpO1xuICAgICAgICBjb25zdCBjdXJyZW50ID0gYXJyYXlbaW5kZXhdO1xuICAgICAgICBjb25zdCB7dmFsdWV9ID0gY3VycmVudDtcblxuICAgICAgICBhcnJheS5mb3JFYWNoKGNoYXJ0ID0+IHtcbiAgICAgICAgICAgIGlmIChjaGFydCA9PT0gY3VycmVudCkge1xuICAgICAgICAgICAgICAgIGN1cnJlbnQub25Ib3ZlcmVkKHZhbHVlLmZpbmRJbmRleChwb2ludCA9PiBwb2ludFswXSA9PT0geCkpO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICBjaGFydC5vbkhvdmVyZWQoTmFOKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcmFpc2UoaW5kZXg6IG51bWJlciwge3ZhbHVlfTogVHVpTGluZUNoYXJ0Q29tcG9uZW50KSB7XG4gICAgICAgIGNvbnN0IHggPSB2YWx1ZVtpbmRleF1bMF07XG5cbiAgICAgICAgaWYgKHRoaXMuaGludERpcmVjdGl2ZSkge1xuICAgICAgICAgICAgdGhpcy5oaW50RGlyZWN0aXZlLnJhaXNlKHRoaXMuZ2V0TW9udGgoeCkpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgZ2V0V2lkdGgoaW5kZXg6IG51bWJlcik6IG51bWJlciB7XG4gICAgICAgIHJldHVybiB0aGlzLmdldE1vbnRoKGluZGV4KS5kYXlzQ291bnQgKiB0aGlzLm1vbnRocy5sZW5ndGg7XG4gICAgfVxuXG4gICAgZ2V0Q29udGV4dChcbiAgICAgICAgaW5kZXg6IG51bWJlcixcbiAgICAgICAge3ZhbHVlfTogVHVpTGluZUNoYXJ0Q29tcG9uZW50LFxuICAgICk6IFR1aUNvbnRleHRXaXRoSW1wbGljaXQ8YW55PiB7XG4gICAgICAgIGNvbnN0IHggPSB2YWx1ZVtpbmRleF1bMF07XG5cbiAgICAgICAgcmV0dXJuIHRoaXMuaGludERpcmVjdGl2ZVxuICAgICAgICAgICAgPyB0aGlzLmhpbnREaXJlY3RpdmUuZ2V0Q29udGV4dCh0aGlzLmdldE1vbnRoKHgpKVxuICAgICAgICAgICAgOiB0aGlzLmdldEhpbnRDb250ZXh0KHgsIHRoaXMudmFsdWUpO1xuICAgIH1cblxuICAgIEB0dWlQdXJlXG4gICAgcHJpdmF0ZSBicmVha01vbnRocyhcbiAgICAgICAgdmFsdWU6IFJlYWRvbmx5QXJyYXk8W1R1aURheSwgbnVtYmVyXT4sXG4gICAgKTogUmVhZG9ubHlBcnJheTxSZWFkb25seUFycmF5PFR1aVBvaW50Pj4ge1xuICAgICAgICBjb25zdCBvZmZzZXQgPSB2YWx1ZVswXVswXS5kYXkgLSAxO1xuXG4gICAgICAgIHJldHVybiBBcnJheS5mcm9tKFxuICAgICAgICAgICAge2xlbmd0aDogVHVpTW9udGgubGVuZ3RoQmV0d2Vlbih2YWx1ZVswXVswXSwgdmFsdWVbdmFsdWUubGVuZ3RoIC0gMV1bMF0pICsgMX0sXG4gICAgICAgICAgICAoXywgaSkgPT4gaSArIHZhbHVlWzBdWzBdLm1vbnRoICsgdmFsdWVbMF1bMF0ueWVhciAqIDEyLFxuICAgICAgICApXG4gICAgICAgICAgICAubWFwKGFic29sdXRlTW9udGggPT5cbiAgICAgICAgICAgICAgICB2YWx1ZVxuICAgICAgICAgICAgICAgICAgICAubWFwPFR1aVBvaW50IHwgbnVsbD4oKFt7bW9udGgsIHllYXJ9LCB5XSwgaW5kZXgpID0+XG4gICAgICAgICAgICAgICAgICAgICAgICBtb250aCArIHllYXIgKiAxMiA9PT0gYWJzb2x1dGVNb250aCA/IFtpbmRleCArIG9mZnNldCwgeV0gOiBudWxsLFxuICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgIC5maWx0ZXIoaXNQcmVzZW50KSxcbiAgICAgICAgICAgIClcbiAgICAgICAgICAgIC5tYXAoKG1vbnRoLCBpbmRleCwgYXJyYXkpID0+XG4gICAgICAgICAgICAgICAgaW5kZXggPT09IGFycmF5Lmxlbmd0aCAtIDFcbiAgICAgICAgICAgICAgICAgICAgPyBtb250aFxuICAgICAgICAgICAgICAgICAgICA6IFsuLi5tb250aCwgYXJyYXlbaW5kZXggKyAxXS5maW5kKGRheSA9PiAhaXNOYU4oZGF5WzFdKSkgfHwgRFVNTVldLFxuICAgICAgICAgICAgKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldE1vbnRoKGluZGV4OiBudW1iZXIpOiBUdWlEYXkge1xuICAgICAgICByZXR1cm4gdGhpcy52YWx1ZVtpbmRleCAtIHRoaXMudmFsdWVbMF1bMF0uZGF5ICsgMV1bMF07XG4gICAgfVxufVxuIl19
|
|
174
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGluZS1kYXlzLWNoYXJ0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0B0YWlnYS11aS9hZGRvbi1jaGFydHMvY29tcG9uZW50cy9saW5lLWRheXMtY2hhcnQvIiwic291cmNlcyI6WyJsaW5lLWRheXMtY2hhcnQuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsT0FBTyxFQUNILHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsVUFBVSxFQUNWLFdBQVcsRUFDWCxNQUFNLEVBQ04sS0FBSyxFQUNMLFFBQVEsRUFFUixZQUFZLEdBQ2YsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUNILHFCQUFxQixFQUNyQix5QkFBeUIsR0FDNUIsTUFBTSw4Q0FBOEMsQ0FBQztBQUN0RCxPQUFPLEVBQ0gsV0FBVyxFQUNYLFdBQVcsRUFDWCxTQUFTLEVBRVQsTUFBTSxFQUNOLGNBQWMsRUFDZCxRQUFRLEVBQ1IsT0FBTyxHQUVWLE1BQU0sZUFBZSxDQUFDO0FBSXZCLE9BQU8sRUFBQyw2QkFBNkIsRUFBQyxNQUFNLGtDQUFrQyxDQUFDO0FBRS9FLE1BQU0sS0FBSyxHQUFhLENBQUMsR0FBRyxFQUFFLEdBQUcsQ0FBQyxDQUFDO0FBY25DLElBQWEseUJBQXlCLGlDQUF0QyxNQUFhLHlCQUF5QjtJQTJEbEMsWUFHcUIsYUFBbUQ7UUFBbkQsa0JBQWEsR0FBYixhQUFhLENBQXNDO1FBNUR2RCxXQUFNLEdBQXFDLFdBQVcsQ0FBQztRQTBCeEUsTUFBQyxHQUFHLENBQUMsQ0FBQztRQUlOLFdBQU0sR0FBRyxDQUFDLENBQUM7UUFJWCxvQkFBZSxHQUFHLENBQUMsQ0FBQztRQUlwQixnQkFBVyxHQUFrRSxFQUFFLENBQUM7UUFJaEYsZUFBVSxHQUFvQyxJQUFJLENBQUM7UUFJbkQsZUFBVSxHQUFvQyxJQUFJLENBQUM7UUFJbkQsU0FBSSxHQUFHLEtBQUssQ0FBQztRQUdiLFdBQU0sR0FBRyxDQUFDLENBQUM7UUFFWCxVQUFLLEdBQW9DLEVB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LCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICAgIENvbXBvbmVudCxcbiAgICBmb3J3YXJkUmVmLFxuICAgIEhvc3RCaW5kaW5nLFxuICAgIEluamVjdCxcbiAgICBJbnB1dCxcbiAgICBPcHRpb25hbCxcbiAgICBRdWVyeUxpc3QsXG4gICAgVmlld0NoaWxkcmVuLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gICAgVHVpTGluZUNoYXJ0Q29tcG9uZW50LFxuICAgIFR1aUxpbmVDaGFydEhpbnREaXJlY3RpdmUsXG59IGZyb20gJ0B0YWlnYS11aS9hZGRvbi1jaGFydHMvY29tcG9uZW50cy9saW5lLWNoYXJ0JztcbmltcG9ydCB7XG4gICAgRU1QVFlfQVJSQVksXG4gICAgRU1QVFlfUVVFUlksXG4gICAgaXNQcmVzZW50LFxuICAgIFR1aUNvbnRleHRXaXRoSW1wbGljaXQsXG4gICAgVHVpRGF5LFxuICAgIHR1aURlZmF1bHRQcm9wLFxuICAgIFR1aU1vbnRoLFxuICAgIHR1aVB1cmUsXG4gICAgVHVpU3RyaW5nSGFuZGxlcixcbn0gZnJvbSAnQHRhaWdhLXVpL2Nkayc7XG5pbXBvcnQge1R1aVBvaW50fSBmcm9tICdAdGFpZ2EtdWkvY29yZSc7XG5pbXBvcnQge1BvbHltb3JwaGV1c0NvbnRlbnR9IGZyb20gJ0B0aW5rb2ZmL25nLXBvbHltb3JwaGV1cyc7XG5cbmltcG9ydCB7VHVpTGluZURheXNDaGFydEhpbnREaXJlY3RpdmV9IGZyb20gJy4vbGluZS1kYXlzLWNoYXJ0LWhpbnQuZGlyZWN0aXZlJztcblxuY29uc3QgRFVNTVk6IFR1aVBvaW50ID0gW05hTiwgTmFOXTtcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICd0dWktbGluZS1kYXlzLWNoYXJ0JyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vbGluZS1kYXlzLWNoYXJ0LnRlbXBsYXRlLmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL2xpbmUtZGF5cy1jaGFydC5zdHlsZS5sZXNzJ10sXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIHtcbiAgICAgICAgICAgIHByb3ZpZGU6IFR1aUxpbmVDaGFydEhpbnREaXJlY3RpdmUsXG4gICAgICAgICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBUdWlMaW5lRGF5c0NoYXJ0Q29tcG9uZW50KSxcbiAgICAgICAgfSxcbiAgICBdLFxufSlcbmV4cG9ydCBjbGFzcyBUdWlMaW5lRGF5c0NoYXJ0Q29tcG9uZW50IHtcbiAgICBAVmlld0NoaWxkcmVuKFR1aUxpbmVDaGFydENvbXBvbmVudClcbiAgICBwcml2YXRlIHJlYWRvbmx5IGNoYXJ0czogUXVlcnlMaXN0PFR1aUxpbmVDaGFydENvbXBvbmVudD4gPSBFTVBUWV9RVUVSWTtcblxuICAgIEBJbnB1dCgndmFsdWUnKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgc2V0IHZhbHVlU2V0dGVyKHZhbHVlOiBSZWFkb25seUFycmF5PFtUdWlEYXksIG51bWJlcl0+KSB7XG4gICAgICAgIGlmICghdmFsdWUubGVuZ3RoKSB7XG4gICAgICAgICAgICB0aGlzLnZhbHVlID0gW107XG5cbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IHN0YXJ0ID0gdmFsdWVbMF1bMF07XG4gICAgICAgIGNvbnN0IG11dGFibGUgPSBbLi4udmFsdWVdO1xuICAgICAgICBjb25zdCBsZW5ndGggPSBUdWlEYXkubGVuZ3RoQmV0d2VlbihzdGFydCwgdmFsdWVbdmFsdWUubGVuZ3RoIC0gMV1bMF0pICsgMTtcblxuICAgICAgICB0aGlzLnZhbHVlID0gQXJyYXkuZnJvbSh7bGVuZ3RofSwgKF8sIGRheSkgPT4ge1xuICAgICAgICAgICAgY29uc3QgY3VycmVudERheSA9IHN0YXJ0LmFwcGVuZCh7ZGF5fSk7XG4gICAgICAgICAgICBjb25zdCBzaGlmdGVkID0gY3VycmVudERheS5kYXlTYW1lKG11dGFibGVbMF1bMF0pID8gbXV0YWJsZS5zaGlmdCgpIDogbnVsbDtcbiAgICAgICAgICAgIGNvbnN0IGN1cnJlbnRWYWx1ZSA9IHNoaWZ0ZWQgPyBzaGlmdGVkWzFdIDogTmFOO1xuXG4gICAgICAgICAgICByZXR1cm4gW2N1cnJlbnREYXksIGN1cnJlbnRWYWx1ZV0gYXMgW1R1aURheSwgbnVtYmVyXTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgQElucHV0KClcbiAgICBAdHVpRGVmYXVsdFByb3AoKVxuICAgIHkgPSAwO1xuXG4gICAgQElucHV0KClcbiAgICBAdHVpRGVmYXVsdFByb3AoKVxuICAgIGhlaWdodCA9IDA7XG5cbiAgICBASW5wdXQoKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgc21vb3RoaW5nRmFjdG9yID0gMDtcblxuICAgIEBJbnB1dCgpXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICBoaW50Q29udGVudDogUG9seW1vcnBoZXVzQ29udGVudDxUdWlDb250ZXh0V2l0aEltcGxpY2l0PFtUdWlEYXksIG51bWJlcl0+PiA9ICcnO1xuXG4gICAgQElucHV0KClcbiAgICBAdHVpRGVmYXVsdFByb3AoKVxuICAgIHhTdHJpbmdpZnk6IFR1aVN0cmluZ0hhbmRsZXI8VHVpRGF5PiB8IG51bGwgPSBudWxsO1xuXG4gICAgQElucHV0KClcbiAgICBAdHVpRGVmYXVsdFByb3AoKVxuICAgIHlTdHJpbmdpZnk6IFR1aVN0cmluZ0hhbmRsZXI8bnVtYmVyPiB8IG51bGwgPSBudWxsO1xuXG4gICAgQElucHV0KClcbiAgICBAdHVpRGVmYXVsdFByb3AoKVxuICAgIGRvdHMgPSBmYWxzZTtcblxuICAgIEBIb3N0QmluZGluZygnc3R5bGUuekluZGV4JylcbiAgICB6SW5kZXggPSAwO1xuXG4gICAgdmFsdWU6IFJlYWRvbmx5QXJyYXk8W1R1aURheSwgbnVtYmVyXT4gPSBbXTtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBAT3B0aW9uYWwoKVxuICAgICAgICBASW5qZWN0KFR1aUxpbmVEYXlzQ2hhcnRIaW50RGlyZWN0aXZlKVxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IGhpbnREaXJlY3RpdmU6IFR1aUxpbmVEYXlzQ2hhcnRIaW50RGlyZWN0aXZlIHwgbnVsbCxcbiAgICApIHt9XG5cbiAgICBnZXQgbW9udGhzKCk6IFJlYWRvbmx5QXJyYXk8UmVhZG9ubHlBcnJheTxUdWlQb2ludD4+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMudmFsdWUubGVuZ3RoID8gdGhpcy5icmVha01vbnRocyh0aGlzLnZhbHVlKSA6IEVNUFRZX0FSUkFZO1xuICAgIH1cblxuICAgIGdldCBmaXJzdFdpZHRoKCk6IG51bWJlciB7XG4gICAgICAgIHJldHVybiB0aGlzLm1vbnRocy5sZW5ndGggKiB0aGlzLnZhbHVlWzBdWzBdLmRheXNDb3VudDtcbiAgICB9XG5cbiAgICBnZXQgaGludCgpOiBQb2x5bW9ycGhldXNDb250ZW50PFR1aUNvbnRleHRXaXRoSW1wbGljaXQ8YW55Pj4ge1xuICAgICAgICByZXR1cm4gdGhpcy5oaW50RGlyZWN0aXZlID8gdGhpcy5oaW50RGlyZWN0aXZlLmhpbnQgOiB0aGlzLmhpbnRDb250ZW50O1xuICAgIH1cblxuICAgIEB0dWlQdXJlXG4gICAgZ2V0SGludENvbnRleHQoXG4gICAgICAgIHg6IG51bWJlcixcbiAgICAgICAgdmFsdWU6IFJlYWRvbmx5QXJyYXk8W1R1aURheSwgbnVtYmVyXT4sXG4gICAgKTogVHVpQ29udGV4dFdpdGhJbXBsaWNpdDxbVHVpRGF5LCBudW1iZXJdPiB7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAkaW1wbGljaXQ6IHZhbHVlW3ggLSB2YWx1ZVswXVswXS5kYXkgKyAxXSxcbiAgICAgICAgfTtcbiAgICB9XG5cbiAgICByZWFkb25seSBkYXlzU3RyaW5naWZ5OiBUdWlTdHJpbmdIYW5kbGVyPG51bWJlcj4gPSBpbmRleCA9PlxuICAgICAgICB0aGlzLnhTdHJpbmdpZnkgPyB0aGlzLnhTdHJpbmdpZnkodGhpcy5nZXRNb250aChpbmRleCkpIDogJyc7XG5cbiAgICBnZXRYKGluZGV4OiBudW1iZXIpOiBudW1iZXIge1xuICAgICAgICBjb25zdCBjdXJyZW50ID0gdGhpcy5nZXRNb250aChpbmRleCk7XG4gICAgICAgIGNvbnN0IG1vbnRocyA9IFR1aU1vbnRoLmxlbmd0aEJldHdlZW4odGhpcy52YWx1ZVswXVswXSwgY3VycmVudCk7XG4gICAgICAgIGNvbnN0IG9mZnNldCA9IG1vbnRocyAqIGN1cnJlbnQuZGF5c0NvdW50O1xuXG4gICAgICAgIHJldHVybiBpbmRleCAtIG9mZnNldDtcbiAgICB9XG5cbiAgICBvbkhvdmVyZWQoZGF5OiBUdWlEYXkgfCBudWxsKSB7XG4gICAgICAgIGlmICghZGF5KSB7XG4gICAgICAgICAgICB0aGlzLmNoYXJ0cy5mb3JFYWNoKGNoYXJ0ID0+IGNoYXJ0Lm9uSG92ZXJlZChOYU4pKTtcblxuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgaW5kZXggPSBUdWlNb250aC5sZW5ndGhCZXR3ZWVuKHRoaXMudmFsdWVbMF1bMF0sIGRheSk7XG4gICAgICAgIGNvbnN0IHggPSBUdWlEYXkubGVuZ3RoQmV0d2Vlbih0aGlzLnZhbHVlWzBdWzBdLCBkYXkpICsgdGhpcy52YWx1ZVswXVswXS5kYXkgLSAxO1xuICAgICAgICBjb25zdCBhcnJheSA9IHRoaXMuY2hhcnRzLnRvQXJyYXkoKTtcbiAgICAgICAgY29uc3QgY3VycmVudCA9IGFycmF5W2luZGV4XTtcbiAgICAgICAgY29uc3Qge3ZhbHVlfSA9IGN1cnJlbnQ7XG5cbiAgICAgICAgYXJyYXkuZm9yRWFjaChjaGFydCA9PiB7XG4gICAgICAgICAgICBpZiAoY2hhcnQgPT09IGN1cnJlbnQpIHtcbiAgICAgICAgICAgICAgICBjdXJyZW50Lm9uSG92ZXJlZCh2YWx1ZS5maW5kSW5kZXgocG9pbnQgPT4gcG9pbnRbMF0gPT09IHgpKTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgY2hhcnQub25Ib3ZlcmVkKE5hTik7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHJhaXNlKGluZGV4OiBudW1iZXIsIHt2YWx1ZX06IFR1aUxpbmVDaGFydENvbXBvbmVudCkge1xuICAgICAgICBjb25zdCB4ID0gdmFsdWVbaW5kZXhdWzBdO1xuICAgICAgICBjb25zdCBtb250aCA9IHRoaXMuZ2V0TW9udGgoeCk7XG5cbiAgICAgICAgaWYgKHRoaXMuaGludERpcmVjdGl2ZSkge1xuICAgICAgICAgICAgdGhpcy5oaW50RGlyZWN0aXZlLnJhaXNlKG1vbnRoKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMub25Ib3ZlcmVkKG1vbnRoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGdldFdpZHRoKGluZGV4OiBudW1iZXIpOiBudW1iZXIge1xuICAgICAgICByZXR1cm4gdGhpcy5nZXRNb250aChpbmRleCkuZGF5c0NvdW50ICogdGhpcy5tb250aHMubGVuZ3RoO1xuICAgIH1cblxuICAgIGdldENvbnRleHQoXG4gICAgICAgIGluZGV4OiBudW1iZXIsXG4gICAgICAgIHt2YWx1ZX06IFR1aUxpbmVDaGFydENvbXBvbmVudCxcbiAgICApOiBUdWlDb250ZXh0V2l0aEltcGxpY2l0PGFueT4ge1xuICAgICAgICBjb25zdCB4ID0gdmFsdWVbaW5kZXhdWzBdO1xuXG4gICAgICAgIHJldHVybiB0aGlzLmhpbnREaXJlY3RpdmVcbiAgICAgICAgICAgID8gdGhpcy5oaW50RGlyZWN0aXZlLmdldENvbnRleHQodGhpcy5nZXRNb250aCh4KSlcbiAgICAgICAgICAgIDogdGhpcy5nZXRIaW50Q29udGV4dCh4LCB0aGlzLnZhbHVlKTtcbiAgICB9XG5cbiAgICBAdHVpUHVyZVxuICAgIHByaXZhdGUgYnJlYWtNb250aHMoXG4gICAgICAgIHZhbHVlOiBSZWFkb25seUFycmF5PFtUdWlEYXksIG51bWJlcl0+LFxuICAgICk6IFJlYWRvbmx5QXJyYXk8UmVhZG9ubHlBcnJheTxUdWlQb2ludD4+IHtcbiAgICAgICAgY29uc3Qgb2Zmc2V0ID0gdmFsdWVbMF1bMF0uZGF5IC0gMTtcblxuICAgICAgICByZXR1cm4gQXJyYXkuZnJvbShcbiAgICAgICAgICAgIHtsZW5ndGg6IFR1aU1vbnRoLmxlbmd0aEJldHdlZW4odmFsdWVbMF1bMF0sIHZhbHVlW3ZhbHVlLmxlbmd0aCAtIDFdWzBdKSArIDF9LFxuICAgICAgICAgICAgKF8sIGkpID0+IGkgKyB2YWx1ZVswXVswXS5tb250aCArIHZhbHVlWzBdWzBdLnllYXIgKiAxMixcbiAgICAgICAgKVxuICAgICAgICAgICAgLm1hcChhYnNvbHV0ZU1vbnRoID0+XG4gICAgICAgICAgICAgICAgdmFsdWVcbiAgICAgICAgICAgICAgICAgICAgLm1hcDxUdWlQb2ludCB8IG51bGw+KChbe21vbnRoLCB5ZWFyfSwgeV0sIGluZGV4KSA9PlxuICAgICAgICAgICAgICAgICAgICAgICAgbW9udGggKyB5ZWFyICogMTIgPT09IGFic29sdXRlTW9udGggPyBbaW5kZXggKyBvZmZzZXQsIHldIDogbnVsbCxcbiAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICAuZmlsdGVyKGlzUHJlc2VudCksXG4gICAgICAgICAgICApXG4gICAgICAgICAgICAubWFwKChtb250aCwgaW5kZXgsIGFycmF5KSA9PlxuICAgICAgICAgICAgICAgIGluZGV4ID09PSBhcnJheS5sZW5ndGggLSAxXG4gICAgICAgICAgICAgICAgICAgID8gbW9udGhcbiAgICAgICAgICAgICAgICAgICAgOiBbLi4ubW9udGgsIGFycmF5W2luZGV4ICsgMV0uZmluZChkYXkgPT4gIWlzTmFOKGRheVsxXSkpIHx8IERVTU1ZXSxcbiAgICAgICAgICAgICk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXRNb250aChpbmRleDogbnVtYmVyKTogVHVpRGF5IHtcbiAgICAgICAgcmV0dXJuIHRoaXMudmFsdWVbaW5kZXggLSB0aGlzLnZhbHVlWzBdWzBdLmRheSArIDFdWzBdO1xuICAgIH1cbn1cbiJdfQ==
|
|
@@ -1,3 +1,4 @@
|
|
|
1
1
|
export * from './pie-chart.component';
|
|
2
|
+
export * from './pie-chart.directive';
|
|
2
3
|
export * from './pie-chart.module';
|
|
3
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
4
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AdGFpZ2EtdWkvYWRkb24tY2hhcnRzL2NvbXBvbmVudHMvcGllLWNoYXJ0LyIsInNvdXJjZXMiOlsiaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyx1QkFBdUIsQ0FBQztBQUN0QyxjQUFjLHVCQUF1QixDQUFDO0FBQ3RDLGNBQWMsb0JBQW9CLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL3BpZS1jaGFydC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9waWUtY2hhcnQuZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vcGllLWNoYXJ0Lm1vZHVsZSc7XG4iXX0=
|
|
@@ -3,7 +3,6 @@ import { Location } from '@angular/common';
|
|
|
3
3
|
import { ChangeDetectionStrategy, Component, EventEmitter, HostBinding, Inject, Input, Output, } from '@angular/core';
|
|
4
4
|
import { DomSanitizer, SafeValue } from '@angular/platform-browser';
|
|
5
5
|
import { TUI_DEFAULT_COLOR_HANDLER } from '@taiga-ui/addon-charts/constants';
|
|
6
|
-
import { describeSector } from '@taiga-ui/addon-charts/utils';
|
|
7
6
|
import { sum, TuiContextWithImplicit, tuiDefaultProp, TuiIdService, tuiPure, } from '@taiga-ui/cdk';
|
|
8
7
|
import { colorFallback } from '@taiga-ui/core';
|
|
9
8
|
const RADII = {
|
|
@@ -34,6 +33,9 @@ let TuiPieChartComponent = class TuiPieChartComponent {
|
|
|
34
33
|
this.activeItemIndexChange = new EventEmitter();
|
|
35
34
|
this.autoIdString = idService.generate();
|
|
36
35
|
}
|
|
36
|
+
get empty() {
|
|
37
|
+
return !this.getSum(this.value);
|
|
38
|
+
}
|
|
37
39
|
get maskId() {
|
|
38
40
|
return 'tui-ring-chart-' + this.autoIdString;
|
|
39
41
|
}
|
|
@@ -48,9 +50,6 @@ let TuiPieChartComponent = class TuiPieChartComponent {
|
|
|
48
50
|
get segments() {
|
|
49
51
|
return this.getSegments(this.value);
|
|
50
52
|
}
|
|
51
|
-
getContentContext($implicit) {
|
|
52
|
-
return { $implicit };
|
|
53
|
-
}
|
|
54
53
|
getTransform(index) {
|
|
55
54
|
const transform = this.masked
|
|
56
55
|
? `scale(${TRANSFORM[this.size]})`
|
|
@@ -66,11 +65,19 @@ let TuiPieChartComponent = class TuiPieChartComponent {
|
|
|
66
65
|
getColor(index) {
|
|
67
66
|
return this.sanitizer.bypassSecurityTrustStyle(`var(--tui-chart-${index}, ${colorFallback(this.colorHandler(index))})`);
|
|
68
67
|
}
|
|
68
|
+
getSum(value) {
|
|
69
|
+
return sum(...value);
|
|
70
|
+
}
|
|
69
71
|
getSegments(value) {
|
|
70
|
-
const total = sum(...value);
|
|
71
72
|
return value
|
|
72
|
-
.map((
|
|
73
|
-
.map((angle, index, array) =>
|
|
73
|
+
.map((initial, i, array) => array.reduce((sum, current, j) => (j < i ? this.getDeg(current) + sum : sum), this.getDeg(initial)))
|
|
74
|
+
.map((angle, index, array) => [
|
|
75
|
+
array[index - 1] || 0,
|
|
76
|
+
Math.min(angle, 359.9999),
|
|
77
|
+
]);
|
|
78
|
+
}
|
|
79
|
+
getDeg(value) {
|
|
80
|
+
return 360 * (value / this.getSum(this.value));
|
|
74
81
|
}
|
|
75
82
|
updateActiveItemIndex(index) {
|
|
76
83
|
if (index === this.activeItemIndex) {
|
|
@@ -113,22 +120,25 @@ __decorate([
|
|
|
113
120
|
__decorate([
|
|
114
121
|
Output()
|
|
115
122
|
], TuiPieChartComponent.prototype, "activeItemIndexChange", void 0);
|
|
123
|
+
__decorate([
|
|
124
|
+
HostBinding('class._empty')
|
|
125
|
+
], TuiPieChartComponent.prototype, "empty", null);
|
|
116
126
|
__decorate([
|
|
117
127
|
tuiPure
|
|
118
|
-
], TuiPieChartComponent.prototype, "
|
|
128
|
+
], TuiPieChartComponent.prototype, "getSum", null);
|
|
119
129
|
__decorate([
|
|
120
130
|
tuiPure
|
|
121
131
|
], TuiPieChartComponent.prototype, "getSegments", null);
|
|
122
132
|
TuiPieChartComponent = __decorate([
|
|
123
133
|
Component({
|
|
124
134
|
selector: 'tui-pie-chart',
|
|
125
|
-
template: "<svg\n xmlns=\"http://www.w3.org/2000/svg\"\n height=\"100%\"\n width=\"100%\"\n viewBox=\"-100 -100 200 200\"\n focusable=\"false\"\n class=\"t-svg\"\n>\n <defs>\n <mask [attr.id]=\"maskId\">\n <rect
|
|
135
|
+
template: "<svg\n xmlns=\"http://www.w3.org/2000/svg\"\n height=\"100%\"\n width=\"100%\"\n viewBox=\"-100 -100 200 200\"\n focusable=\"false\"\n class=\"t-svg\"\n>\n <defs>\n <mask [attr.id]=\"maskId\">\n <rect x=\"-200\" y=\"-200\" width=\"400\" height=\"400\" fill=\"white\" />\n <circle cx=\"0\" cy=\"0\" [attr.r]=\"radius\" />\n </mask>\n </defs>\n <g [style.mask]=\"mask\">\n <circle cx=\"0\" cy=\"0\" r=\"100\" class=\"t-placeholder\" />\n <path\n *tuiRepeatTimes=\"let index of segments.length\"\n fill=\"currentColor\"\n automation-id=\"tui-pie-chart__segment\"\n tuiHintMode=\"onDark\"\n tuiHintDirection=\"top-right\"\n d=\"\"\n class=\"t-segment\"\n [attr.transform]=\"getTransform(index)\"\n [style.color]=\"getColor(index)\"\n [tuiPieChart]=\"segments[index]\"\n [tuiPointerHint]=\"getHint(hint)\"\n (tuiHoveredChange)=\"onHovered($event, index)\"\n >\n <ng-template #hint>\n <ng-container\n *ngTemplateOutlet=\"template; context: {$implicit: index}\"\n ></ng-container>\n </ng-template>\n </path>\n </g>\n</svg>\n<ng-template #template let-index>\n <div\n polymorpheus-outlet\n class=\"t-text\"\n [content]=\"hintContent\"\n [context]=\"{$implicit: index}\"\n ></div>\n</ng-template>\n",
|
|
126
136
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
127
|
-
styles: [":host{position:relative;display:block}:host[data-tui-host-size=xs]{width:2rem;height:2rem;pointer-events:none}:host[data-tui-host-size='s']{width:4rem;height:4rem}:host[data-tui-host-size='m']{width:9rem;height:9rem}:host[data-tui-host-size='l']{width:11rem;height:11rem}:host[data-tui-host-size=xl]{width:16rem;height:16rem}.t-svg{position:relative;overflow:visible;transform:rotate(-90deg)}.t-segment{transition-property:transform;transition-duration:var(--tui-duration,300ms);transition-timing-function:ease-in-out}.t-text{white-space:pre-wrap}"]
|
|
137
|
+
styles: [":host{position:relative;display:block}:host[data-tui-host-size=xs]{width:2rem;height:2rem;pointer-events:none}:host[data-tui-host-size='s']{width:4rem;height:4rem}:host[data-tui-host-size='m']{width:9rem;height:9rem}:host[data-tui-host-size='l']{width:11rem;height:11rem}:host[data-tui-host-size=xl]{width:16rem;height:16rem}.t-svg{position:relative;overflow:visible;transform:rotate(-90deg)}.t-segment{transition-property:transform;transition-duration:var(--tui-duration,300ms);transition-timing-function:ease-in-out}:host._empty .t-segment{display:none}.t-placeholder{fill:var(--tui-base-03)}.t-text{white-space:pre-wrap}"]
|
|
128
138
|
}),
|
|
129
139
|
__param(0, Inject(TuiIdService)),
|
|
130
140
|
__param(1, Inject(Location)),
|
|
131
141
|
__param(2, Inject(DomSanitizer))
|
|
132
142
|
], TuiPieChartComponent);
|
|
133
143
|
export { TuiPieChartComponent };
|
|
134
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGllLWNoYXJ0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0B0YWlnYS11aS9hZGRvbi1jaGFydHMvY29tcG9uZW50cy9waWUtY2hhcnQvIiwic291cmNlcyI6WyJwaWUtY2hhcnQuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDekMsT0FBTyxFQUNILHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsWUFBWSxFQUNaLFdBQVcsRUFDWCxNQUFNLEVBQ04sS0FBSyxFQUNMLE1BQU0sR0FDVCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUMsWUFBWSxFQUFFLFNBQVMsRUFBQyxNQUFNLDJCQUEyQixDQUFDO0FBQ2xFLE9BQU8sRUFBQyx5QkFBeUIsRUFBQyxNQUFNLGtDQUFrQyxDQUFDO0FBRTNFLE9BQU8sRUFBQyxjQUFjLEVBQUMsTUFBTSw4QkFBOEIsQ0FBQztBQUM1RCxPQUFPLEVBQ0gsR0FBRyxFQUNILHNCQUFzQixFQUN0QixjQUFjLEVBQ2QsWUFBWSxFQUNaLE9BQU8sR0FDVixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUMsYUFBYSxFQUF1QixNQUFNLGdCQUFnQixDQUFDO0FBR25FLE1BQU0sS0FBSyxHQUFHO0lBQ1YsRUFBRSxFQUFFLElBQUk7SUFDUixDQUFDLEVBQUUsSUFBSTtJQUNQLENBQUMsRUFBRSxNQUFNO0lBQ1QsQ0FBQyxFQUFFLE1BQU07SUFDVCxFQUFFLEVBQUUsTUFBTTtDQUNiLENBQUM7QUFDRixNQUFNLFNBQVMsR0FBRztJQUNkLEVBQUUsRUFBRSxJQUFJO0lBQ1IsQ0FBQyxFQUFFLElBQUk7SUFDUCxDQUFDLEVBQUUsSUFBSTtJQUNQLENBQUMsRUFBRSxJQUFJO0lBQ1AsRUFBRSxFQUFFLElBQUk7Q0FDWCxDQUFDO0FBRUYsd0RBQXdEO0FBT3hELElBQWEsb0JBQW9CLEdBQWpDLE1BQWEsb0JBQW9CO0lBK0I3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ZTtRQUN6QixtaERBQXdDO1FBRXhDLGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNOztLQUNsRCxDQUFDO0lBaUNPLFdBQUEsTUFBTSxDQUFDLFlBQVksQ0FBQyxDQUFBO0lBQ3BCLFdBQUEsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFBO0lBQ2hCLFdBQUEsTUFBTSxDQUFDLFlBQVksQ0FBQyxDQUFBO0dBbENoQixvQkFBb0IsQ0ErR2hDO1NBL0dZLG9CQUFvQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7TG9jYXRpb259IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge1xuICAgIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICAgIENvbXBvbmVudCxcbiAgICBFdmVudEVtaXR0ZXIsXG4gICAgSG9zdEJpbmRpbmcsXG4gICAgSW5qZWN0LFxuICAgIElucHV0LFxuICAgIE91dHB1dCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0RvbVNhbml0aXplciwgU2FmZVZhbHVlfSBmcm9tICdAYW5ndWxhci9wbGF0Zm9ybS1icm93c2VyJztcbmltcG9ydCB7VFVJX0RFRkFVTFRfQ09MT1JfSEFORExFUn0gZnJvbSAnQHRhaWdhLXVpL2FkZG9uLWNoYXJ0cy9jb25zdGFudHMnO1xuaW1wb3J0IHtUdWlDb2xvckhhbmRsZXJ9IGZyb20gJ0B0YWlnYS11aS9hZGRvbi1jaGFydHMvdHlwZXMnO1xuaW1wb3J0IHtkZXNjcmliZVNlY3Rvcn0gZnJvbSAnQHRhaWdhLXVpL2FkZG9uLWNoYXJ0cy91dGlscyc7XG5pbXBvcnQge1xuICAgIHN1bSxcbiAgICBUdWlDb250ZXh0V2l0aEltcGxpY2l0LFxuICAgIHR1aURlZmF1bHRQcm9wLFxuICAgIFR1aUlkU2VydmljZSxcbiAgICB0dWlQdXJlLFxufSBmcm9tICdAdGFpZ2EtdWkvY2RrJztcbmltcG9ydCB7Y29sb3JGYWxsYmFjaywgVHVpU2l6ZVhMLCBUdWlTaXplWFN9IGZyb20gJ0B0YWlnYS11aS9jb3JlJztcbmltcG9ydCB7UG9seW1vcnBoZXVzQ29udGVudH0gZnJvbSAnQHRpbmtvZmYvbmctcG9seW1vcnBoZXVzJztcblxuY29uc3QgUkFESUkgPSB7XG4gICAgeHM6ICc1MCcsXG4gICAgczogJzUwJyxcbiAgICBtOiAnNzcuOCcsXG4gICAgbDogJzgxLjknLFxuICAgIHhsOiAnODEuMycsXG59O1xuY29uc3QgVFJBTlNGT1JNID0ge1xuICAgIHhzOiAxLjE1LFxuICAgIHM6IDEuMjUsXG4gICAgbTogMS4xMSxcbiAgICBsOiAxLjA5LFxuICAgIHhsOiAxLjA4LFxufTtcblxuLy8gVE9ETzogUmVtb3ZlIHNhbml0aXplciB3aGVuIEFuZ3VsYXIgdmVyc2lvbiBpcyBidW1wZWRcbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAndHVpLXBpZS1jaGFydCcsXG4gICAgdGVtcGxhdGVVcmw6ICcuL3BpZS1jaGFydC50ZW1wbGF0ZS5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9waWUtY2hhcnQuc3R5bGUubGVzcyddLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBUdWlQaWVDaGFydENvbXBvbmVudCB7XG4gICAgcHJpdmF0ZSByZWFkb25seSBhdXRvSWRTdHJpbmc6IHN0cmluZztcblxuICAgIEBJbnB1dCgpXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICB2YWx1ZTogcmVhZG9ubHkgbnVtYmVyW10gPSBbXTtcblxuICAgIEBJbnB1dCgpXG4gICAgQEhvc3RCaW5kaW5nKCdhdHRyLmRhdGEtdHVpLWhvc3Qtc2l6ZScpXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICBzaXplOiBUdWlTaXplWFMgfCBUdWlTaXplWEwgPSAnbSc7XG5cbiAgICBASW5wdXQoKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgY29sb3JIYW5kbGVyOiBUdWlDb2xvckhhbmRsZXIgPSBUVUlfREVGQVVMVF9DT0xPUl9IQU5ETEVSO1xuXG4gICAgQElucHV0KClcbiAgICBAdHVpRGVmYXVsdFByb3AoKVxuICAgIGhpbnRDb250ZW50OiBQb2x5bW9ycGhldXNDb250ZW50PFR1aUNvbnRleHRXaXRoSW1wbGljaXQ8bnVtYmVyPj4gPSAnJztcblxuICAgIEBJbnB1dCgpXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICBtYXNrZWQgPSBmYWxzZTtcblxuICAgIEBJbnB1dCgpXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICBhY3RpdmVJdGVtSW5kZXggPSBOYU47XG5cbiAgICBAT3V0cHV0KClcbiAgICBhY3RpdmVJdGVtSW5kZXhDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPG51bWJlcj4oKTtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBASW5qZWN0KFR1aUlkU2VydmljZSkgaWRTZXJ2aWNlOiBUdWlJZFNlcnZpY2UsXG4gICAgICAgIEBJbmplY3QoTG9jYXRpb24pIHByaXZhdGUgcmVhZG9ubHkgbG9jYXRpb25SZWY6IExvY2F0aW9uLFxuICAgICAgICBASW5qZWN0KERvbVNhbml0aXplcikgcHJpdmF0ZSByZWFkb25seSBzYW5pdGl6ZXI6IERvbVNhbml0aXplcixcbiAgICApIHtcbiAgICAgICAgdGhpcy5hdXRvSWRTdHJpbmcgPSBpZFNlcnZpY2UuZ2VuZXJhdGUoKTtcbiAgICB9XG5cbiAgICBnZXQgbWFza0lkKCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiAndHVpLXJpbmctY2hhcnQtJyArIHRoaXMuYXV0b0lkU3RyaW5nO1xuICAgIH1cblxuICAgIGdldCBtYXNrKCk6IHN0cmluZyB8IG51bGwge1xuICAgICAgICByZXR1cm4gdGhpcy5tYXNrZWRcbiAgICAgICAgICAgID8gYHVybCgke3RoaXMubG9jYXRpb25SZWYucHJlcGFyZUV4dGVybmFsVXJsKHRoaXMubG9jYXRpb25SZWYucGF0aCgpKX0jJHtcbiAgICAgICAgICAgICAgICAgIHRoaXMubWFza0lkXG4gICAgICAgICAgICAgIH0pYFxuICAgICAgICAgICAgOiBudWxsO1xuICAgIH1cblxuICAgIGdldCByYWRpdXMoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIFJBRElJW3RoaXMuc2l6ZV07XG4gICAgfVxuXG4gICAgZ2V0IHNlZ21lbnRzKCk6IHJlYWRvbmx5IHN0cmluZ1tdIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZ2V0U2VnbWVudHModGhpcy52YWx1ZSk7XG4gICAgfVxuXG4gICAgQHR1aVB1cmVcbiAgICBnZXRDb250ZW50Q29udGV4dCgkaW1wbGljaXQ6IG51bWJlcik6IFR1aUNvbnRleHRXaXRoSW1wbGljaXQ8bnVtYmVyPiB7XG4gICAgICAgIHJldHVybiB7JGltcGxpY2l0fTtcbiAgICB9XG5cbiAgICBnZXRUcmFuc2Zvcm0oaW5kZXg6IG51bWJlcik6IHN0cmluZyB8IG51bGwge1xuICAgICAgICBjb25zdCB0cmFuc2Zvcm0gPSB0aGlzLm1hc2tlZFxuICAgICAgICAgICAgPyBgc2NhbGUoJHtUUkFOU0ZPUk1bdGhpcy5zaXplXX0pYFxuICAgICAgICAgICAgOiBgc2NhbGUoJHtUUkFOU0ZPUk1bJ3hzJ119KWA7XG5cbiAgICAgICAgcmV0dXJuIGluZGV4ID09PSB0aGlzLmFjdGl2ZUl0ZW1JbmRleCA/IHRyYW5zZm9ybSA6IG51bGw7XG4gICAgfVxuXG4gICAgZ2V0SGludChoaW50OiBQb2x5bW9ycGhldXNDb250ZW50KTogUG9seW1vcnBoZXVzQ29udGVudCB7XG4gICAgICAgIHJldHVybiB0aGlzLmhpbnRDb250ZW50ID8gaGludCA6ICcnO1xuICAgIH1cblxuICAgIG9uSG92ZXJlZChob3ZlcmVkOiBib29sZWFuLCBpbmRleDogbnVtYmVyKSB7XG4gICAgICAgIHRoaXMudXBkYXRlQWN0aXZlSXRlbUluZGV4KGhvdmVyZWQgPyBpbmRleCA6IE5hTik7XG4gICAgfVxuXG4gICAgZ2V0Q29sb3IoaW5kZXg6IG51bWJlcik6IFNhZmVWYWx1ZSB7XG4gICAgICAgIHJldHVybiB0aGlzLnNhbml0aXplci5ieXBhc3NTZWN1cml0eVRydXN0U3R5bGUoXG4gICAgICAgICAgICBgdmFyKC0tdHVpLWNoYXJ0LSR7aW5kZXh9LCAke2NvbG9yRmFsbGJhY2sodGhpcy5jb2xvckhhbmRsZXIoaW5kZXgpKX0pYCxcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBAdHVpUHVyZVxuICAgIHByaXZhdGUgZ2V0U2VnbWVudHModmFsdWU6IHJlYWRvbmx5IG51bWJlcltdKTogcmVhZG9ubHkgc3RyaW5nW10ge1xuICAgICAgICBjb25zdCB0b3RhbCA9IHN1bSguLi52YWx1ZSk7XG5cbiAgICAgICAgcmV0dXJuIHZhbHVlXG4gICAgICAgICAgICAubWFwKChjdXJyZW50SXRlbSwgY3VycmVudEluZGV4LCBhcnJheSkgPT5cbiAgICAgICAgICAgICAgICBhcnJheS5yZWR1Y2UoXG4gICAgICAgICAgICAgICAgICAgIChzdW0sIGl0ZW0sIGluZGV4KSA9PlxuICAgICAgICAgICAgICAgICAgICAgICAgaW5kZXggPCBjdXJyZW50SW5kZXggPyAoaXRlbSAvIHRvdGFsKSAqIDM2MCArIHN1bSA6IHN1bSxcbiAgICAgICAgICAgICAgICAgICAgKGN1cnJlbnRJdGVtIC8gdG90YWwpICogMzYwLFxuICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICApXG4gICAgICAgICAgICAubWFwKChhbmdsZSwgaW5kZXgsIGFycmF5KSA9PlxuICAgICAgICAgICAgICAgIGRlc2NyaWJlU2VjdG9yKGFycmF5W2luZGV4IC0gMV0gfHwgMCwgTWF0aC5taW4oYW5nbGUsIDM1OS45OTk5KSksXG4gICAgICAgICAgICApO1xuICAgIH1cblxuICAgIHByaXZhdGUgdXBkYXRlQWN0aXZlSXRlbUluZGV4KGluZGV4OiBudW1iZXIpIHtcbiAgICAgICAgaWYgKGluZGV4ID09PSB0aGlzLmFjdGl2ZUl0ZW1JbmRleCkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5hY3RpdmVJdGVtSW5kZXggPSBpbmRleDtcbiAgICAgICAgdGhpcy5hY3RpdmVJdGVtSW5kZXhDaGFuZ2UubmV4dChpbmRleCk7XG4gICAgfVxufVxuIl19
|
|
144
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGllLWNoYXJ0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0B0YWlnYS11aS9hZGRvbi1jaGFydHMvY29tcG9uZW50cy9waWUtY2hhcnQvIiwic291cmNlcyI6WyJwaWUtY2hhcnQuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDekMsT0FBTyxFQUNILHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsWUFBWSxFQUNaLFdBQVcsRUFDWCxNQUFNLEVBQ04sS0FBSyxFQUNMLE1BQU0sR0FDVCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUMsWUFBWSxFQUFFLFNBQVMsRUFBQyxNQUFNLDJCQUEyQixDQUFDO0FBQ2xFLE9BQU8sRUFBQyx5QkFBeUIsRUFBQyxNQUFNLGtDQUFrQyxDQUFDO0FBRTNFLE9BQU8sRUFDSCxHQUFHLEVBQ0gsc0JBQXNCLEVBQ3RCLGNBQWMsRUFDZCxZQUFZLEVBQ1osT0FBTyxHQUNWLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBQyxhQUFhLEVBQXVCLE1BQU0sZ0JBQWdCLENBQUM7QUFHbkUsTUFBTSxLQUFLLEdBQUc7SUFDVixFQUFFLEVBQUUsSUFBSTtJQUNSLENBQUMsRUFBRSxJQUFJO0lBQ1AsQ0FBQyxFQUFFLE1BQU07SUFDVCxDQUFDLEVBQUUsTUFBTTtJQUNULEVBQUUsRUFBRSxNQUFNO0NBQ2IsQ0FBQztBQUNGLE1BQU0sU0FBUyxHQUFHO0lBQ2QsRUFBRSxFQUFFLElBQUk7SUFDUixDQUFDLEVBQUUsSUFBSTtJQUNQLENBQUMsRUFBRSxJQUFJO0lBQ1AsQ0FBQyxFQUFFLElBQUk7SUFDUCxFQUFFLEVBQUUsSUFBSTtDQUNYLENBQUM7QUFFRix3REFBd0Q7QUFPeEQsSUFBYSxvQkFBb0IsR0FBakMsTUFBYSxvQkFBb0I7SUErQjdCLFlBQzBCLFNBQXVCLEVBQ1YsV0FBcUIsRUFDakIsU0FBdUI7UUFEM0Is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REMsTUFBTSxFQUFFO21FQUMwQztBQVduRDtJQURDLFdBQVcsQ0FBQyxjQUFjLENBQUM7aURBRzNCO0FBNkNEO0lBREMsT0FBTztrREFHUDtBQUdEO0lBREMsT0FBTzt1REFhUDtBQXhHUSxvQkFBb0I7SUFOaEMsU0FBUyxDQUFDO1FBQ1AsUUFBUSxFQUFFLGVBQWU7UUFDekIsNC9DQUF3QztRQUV4QyxlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTs7S0FDbEQsQ0FBQztJQWlDTyxXQUFBLE1BQU0sQ0FBQyxZQUFZLENBQUMsQ0FBQTtJQUNwQixXQUFBLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQTtJQUNoQixXQUFBLE1BQU0sQ0FBQyxZQUFZLENBQUMsQ0FBQTtHQWxDaEIsb0JBQW9CLENBc0hoQztTQXRIWSxvQkFBb0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0xvY2F0aW9ufSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBDb21wb25lbnQsXG4gICAgRXZlbnRFbWl0dGVyLFxuICAgIEhvc3RCaW5kaW5nLFxuICAgIEluamVjdCxcbiAgICBJbnB1dCxcbiAgICBPdXRwdXQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtEb21TYW5pdGl6ZXIsIFNhZmVWYWx1ZX0gZnJvbSAnQGFuZ3VsYXIvcGxhdGZvcm0tYnJvd3Nlcic7XG5pbXBvcnQge1RVSV9ERUZBVUxUX0NPTE9SX0hBTkRMRVJ9IGZyb20gJ0B0YWlnYS11aS9hZGRvbi1jaGFydHMvY29uc3RhbnRzJztcbmltcG9ydCB7VHVpQ29sb3JIYW5kbGVyfSBmcm9tICdAdGFpZ2EtdWkvYWRkb24tY2hhcnRzL3R5cGVzJztcbmltcG9ydCB7XG4gICAgc3VtLFxuICAgIFR1aUNvbnRleHRXaXRoSW1wbGljaXQsXG4gICAgdHVpRGVmYXVsdFByb3AsXG4gICAgVHVpSWRTZXJ2aWNlLFxuICAgIHR1aVB1cmUsXG59IGZyb20gJ0B0YWlnYS11aS9jZGsnO1xuaW1wb3J0IHtjb2xvckZhbGxiYWNrLCBUdWlTaXplWEwsIFR1aVNpemVYU30gZnJvbSAnQHRhaWdhLXVpL2NvcmUnO1xuaW1wb3J0IHtQb2x5bW9ycGhldXNDb250ZW50fSBmcm9tICdAdGlua29mZi9uZy1wb2x5bW9ycGhldXMnO1xuXG5jb25zdCBSQURJSSA9IHtcbiAgICB4czogJzUwJyxcbiAgICBzOiAnNTAnLFxuICAgIG06ICc3Ny44JyxcbiAgICBsOiAnODEuOScsXG4gICAgeGw6ICc4MS4zJyxcbn07XG5jb25zdCBUUkFOU0ZPUk0gPSB7XG4gICAgeHM6IDEuMTUsXG4gICAgczogMS4yNSxcbiAgICBtOiAxLjExLFxuICAgIGw6IDEuMDksXG4gICAgeGw6IDEuMDgsXG59O1xuXG4vLyBUT0RPOiBSZW1vdmUgc2FuaXRpemVyIHdoZW4gQW5ndWxhciB2ZXJzaW9uIGlzIGJ1bXBlZFxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICd0dWktcGllLWNoYXJ0JyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vcGllLWNoYXJ0LnRlbXBsYXRlLmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL3BpZS1jaGFydC5zdHlsZS5sZXNzJ10sXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIFR1aVBpZUNoYXJ0Q29tcG9uZW50IHtcbiAgICBwcml2YXRlIHJlYWRvbmx5IGF1dG9JZFN0cmluZzogc3RyaW5nO1xuXG4gICAgQElucHV0KClcbiAgICBAdHVpRGVmYXVsdFByb3AoKVxuICAgIHZhbHVlOiByZWFkb25seSBudW1iZXJbXSA9IFtdO1xuXG4gICAgQElucHV0KClcbiAgICBASG9zdEJpbmRpbmcoJ2F0dHIuZGF0YS10dWktaG9zdC1zaXplJylcbiAgICBAdHVpRGVmYXVsdFByb3AoKVxuICAgIHNpemU6IFR1aVNpemVYUyB8IFR1aVNpemVYTCA9ICdtJztcblxuICAgIEBJbnB1dCgpXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICBjb2xvckhhbmRsZXI6IFR1aUNvbG9ySGFuZGxlciA9IFRVSV9ERUZBVUxUX0NPTE9SX0hBTkRMRVI7XG5cbiAgICBASW5wdXQoKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgaGludENvbnRlbnQ6IFBvbHltb3JwaGV1c0NvbnRlbnQ8VHVpQ29udGV4dFdpdGhJbXBsaWNpdDxudW1iZXI+PiA9ICcnO1xuXG4gICAgQElucHV0KClcbiAgICBAdHVpRGVmYXVsdFByb3AoKVxuICAgIG1hc2tlZCA9IGZhbHNlO1xuXG4gICAgQElucHV0KClcbiAgICBAdHVpRGVmYXVsdFByb3AoKVxuICAgIGFjdGl2ZUl0ZW1JbmRleCA9IE5hTjtcblxuICAgIEBPdXRwdXQoKVxuICAgIGFjdGl2ZUl0ZW1JbmRleENoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8bnVtYmVyPigpO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIEBJbmplY3QoVHVpSWRTZXJ2aWNlKSBpZFNlcnZpY2U6IFR1aUlkU2VydmljZSxcbiAgICAgICAgQEluamVjdChMb2NhdGlvbikgcHJpdmF0ZSByZWFkb25seSBsb2NhdGlvblJlZjogTG9jYXRpb24sXG4gICAgICAgIEBJbmplY3QoRG9tU2FuaXRpemVyKSBwcml2YXRlIHJlYWRvbmx5IHNhbml0aXplcjogRG9tU2FuaXRpemVyLFxuICAgICkge1xuICAgICAgICB0aGlzLmF1dG9JZFN0cmluZyA9IGlkU2VydmljZS5nZW5lcmF0ZSgpO1xuICAgIH1cblxuICAgIEBIb3N0QmluZGluZygnY2xhc3MuX2VtcHR5JylcbiAgICBnZXQgZW1wdHkoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAhdGhpcy5nZXRTdW0odGhpcy52YWx1ZSk7XG4gICAgfVxuXG4gICAgZ2V0IG1hc2tJZCgpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gJ3R1aS1yaW5nLWNoYXJ0LScgKyB0aGlzLmF1dG9JZFN0cmluZztcbiAgICB9XG5cbiAgICBnZXQgbWFzaygpOiBzdHJpbmcgfCBudWxsIHtcbiAgICAgICAgcmV0dXJuIHRoaXMubWFza2VkXG4gICAgICAgICAgICA/IGB1cmwoJHt0aGlzLmxvY2F0aW9uUmVmLnByZXBhcmVFeHRlcm5hbFVybCh0aGlzLmxvY2F0aW9uUmVmLnBhdGgoKSl9IyR7XG4gICAgICAgICAgICAgICAgICB0aGlzLm1hc2tJZFxuICAgICAgICAgICAgICB9KWBcbiAgICAgICAgICAgIDogbnVsbDtcbiAgICB9XG5cbiAgICBnZXQgcmFkaXVzKCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiBSQURJSVt0aGlzLnNpemVdO1xuICAgIH1cblxuICAgIGdldCBzZWdtZW50cygpOiByZWFkb25seSBbbnVtYmVyLCBudW1iZXJdW10ge1xuICAgICAgICByZXR1cm4gdGhpcy5nZXRTZWdtZW50cyh0aGlzLnZhbHVlKTtcbiAgICB9XG5cbiAgICBnZXRUcmFuc2Zvcm0oaW5kZXg6IG51bWJlcik6IHN0cmluZyB8IG51bGwge1xuICAgICAgICBjb25zdCB0cmFuc2Zvcm0gPSB0aGlzLm1hc2tlZFxuICAgICAgICAgICAgPyBgc2NhbGUoJHtUUkFOU0ZPUk1bdGhpcy5zaXplXX0pYFxuICAgICAgICAgICAgOiBgc2NhbGUoJHtUUkFOU0ZPUk1bJ3hzJ119KWA7XG5cbiAgICAgICAgcmV0dXJuIGluZGV4ID09PSB0aGlzLmFjdGl2ZUl0ZW1JbmRleCA/IHRyYW5zZm9ybSA6IG51bGw7XG4gICAgfVxuXG4gICAgZ2V0SGludChoaW50OiBQb2x5bW9ycGhldXNDb250ZW50KTogUG9seW1vcnBoZXVzQ29udGVudCB7XG4gICAgICAgIHJldHVybiB0aGlzLmhpbnRDb250ZW50ID8gaGludCA6ICcnO1xuICAgIH1cblxuICAgIG9uSG92ZXJlZChob3ZlcmVkOiBib29sZWFuLCBpbmRleDogbnVtYmVyKSB7XG4gICAgICAgIHRoaXMudXBkYXRlQWN0aXZlSXRlbUluZGV4KGhvdmVyZWQgPyBpbmRleCA6IE5hTik7XG4gICAgfVxuXG4gICAgZ2V0Q29sb3IoaW5kZXg6IG51bWJlcik6IFNhZmVWYWx1ZSB7XG4gICAgICAgIHJldHVybiB0aGlzLnNhbml0aXplci5ieXBhc3NTZWN1cml0eVRydXN0U3R5bGUoXG4gICAgICAgICAgICBgdmFyKC0tdHVpLWNoYXJ0LSR7aW5kZXh9LCAke2NvbG9yRmFsbGJhY2sodGhpcy5jb2xvckhhbmRsZXIoaW5kZXgpKX0pYCxcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBAdHVpUHVyZVxuICAgIHByaXZhdGUgZ2V0U3VtKHZhbHVlOiByZWFkb25seSBudW1iZXJbXSk6IG51bWJlciB7XG4gICAgICAgIHJldHVybiBzdW0oLi4udmFsdWUpO1xuICAgIH1cblxuICAgIEB0dWlQdXJlXG4gICAgcHJpdmF0ZSBnZXRTZWdtZW50cyh2YWx1ZTogcmVhZG9ubHkgbnVtYmVyW10pOiByZWFkb25seSBbbnVtYmVyLCBudW1iZXJdW10ge1xuICAgICAgICByZXR1cm4gdmFsdWVcbiAgICAgICAgICAgIC5tYXAoKGluaXRpYWwsIGksIGFycmF5KSA9PlxuICAgICAgICAgICAgICAgIGFycmF5LnJlZHVjZShcbiAgICAgICAgICAgICAgICAgICAgKHN1bSwgY3VycmVudCwgaikgPT4gKGogPCBpID8gdGhpcy5nZXREZWcoY3VycmVudCkgKyBzdW0gOiBzdW0pLFxuICAgICAgICAgICAgICAgICAgICB0aGlzLmdldERlZyhpbml0aWFsKSxcbiAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgKVxuICAgICAgICAgICAgLm1hcCgoYW5nbGUsIGluZGV4LCBhcnJheSkgPT4gW1xuICAgICAgICAgICAgICAgIGFycmF5W2luZGV4IC0gMV0gfHwgMCxcbiAgICAgICAgICAgICAgICBNYXRoLm1pbihhbmdsZSwgMzU5Ljk5OTkpLFxuICAgICAgICAgICAgXSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXREZWcodmFsdWU6IG51bWJlcik6IG51bWJlciB7XG4gICAgICAgIHJldHVybiAzNjAgKiAodmFsdWUgLyB0aGlzLmdldFN1bSh0aGlzLnZhbHVlKSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSB1cGRhdGVBY3RpdmVJdGVtSW5kZXgoaW5kZXg6IG51bWJlcikge1xuICAgICAgICBpZiAoaW5kZXggPT09IHRoaXMuYWN0aXZlSXRlbUluZGV4KSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLmFjdGl2ZUl0ZW1JbmRleCA9IGluZGV4O1xuICAgICAgICB0aGlzLmFjdGl2ZUl0ZW1JbmRleENoYW5nZS5uZXh0KGluZGV4KTtcbiAgICB9XG59XG4iXX0=
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import { __decorate, __param } from "tslib";
|
|
2
|
+
import { Directive, ElementRef, Inject, Input, NgZone } from '@angular/core';
|
|
3
|
+
import { ANIMATION_FRAME, PERFORMANCE } from '@ng-web-apis/common';
|
|
4
|
+
import { describeSector } from '@taiga-ui/addon-charts/utils';
|
|
5
|
+
import { clamp, easeInOutQuad, tuiDefaultProp, TuiDestroyService, tuiZonefree, } from '@taiga-ui/cdk';
|
|
6
|
+
import { TUI_ANIMATIONS_DURATION } from '@taiga-ui/core';
|
|
7
|
+
import { BehaviorSubject, Observable } from 'rxjs';
|
|
8
|
+
import { map, pairwise, switchMap, takeUntil, takeWhile } from 'rxjs/operators';
|
|
9
|
+
// @dynamic
|
|
10
|
+
let TuiPieChartDirective = class TuiPieChartDirective {
|
|
11
|
+
constructor({ nativeElement }, ngZone, destroy$, performance, animationFrame$, duration) {
|
|
12
|
+
this.sector$ = new BehaviorSubject([0, 0]);
|
|
13
|
+
this.sector$
|
|
14
|
+
.pipe(pairwise(), switchMap(([prev, cur]) => {
|
|
15
|
+
const now = performance.now();
|
|
16
|
+
const startDelta = cur[0] - prev[0];
|
|
17
|
+
const endDelta = cur[1] - prev[1];
|
|
18
|
+
return animationFrame$.pipe(map(timestamp => easeInOutQuad(clamp((timestamp - now) / duration, 0, 1))), takeWhile(progress => progress < 1, true), map(progress => [
|
|
19
|
+
prev[0] + startDelta * progress,
|
|
20
|
+
cur[1] > 359 ? cur[1] : prev[1] + endDelta * progress,
|
|
21
|
+
]));
|
|
22
|
+
}), tuiZonefree(ngZone), takeUntil(destroy$))
|
|
23
|
+
.subscribe(([start, end]) => {
|
|
24
|
+
nativeElement.setAttribute('d', describeSector(start, end));
|
|
25
|
+
});
|
|
26
|
+
}
|
|
27
|
+
set tuiPieChart(sector) {
|
|
28
|
+
this.sector$.next(sector);
|
|
29
|
+
}
|
|
30
|
+
};
|
|
31
|
+
TuiPieChartDirective.ctorParameters = () => [
|
|
32
|
+
{ type: ElementRef, decorators: [{ type: Inject, args: [ElementRef,] }] },
|
|
33
|
+
{ type: NgZone, decorators: [{ type: Inject, args: [NgZone,] }] },
|
|
34
|
+
{ type: Observable, decorators: [{ type: Inject, args: [TuiDestroyService,] }] },
|
|
35
|
+
{ type: Performance, decorators: [{ type: Inject, args: [PERFORMANCE,] }] },
|
|
36
|
+
{ type: Observable, decorators: [{ type: Inject, args: [ANIMATION_FRAME,] }] },
|
|
37
|
+
{ type: Number, decorators: [{ type: Inject, args: [TUI_ANIMATIONS_DURATION,] }] }
|
|
38
|
+
];
|
|
39
|
+
__decorate([
|
|
40
|
+
Input(),
|
|
41
|
+
tuiDefaultProp()
|
|
42
|
+
], TuiPieChartDirective.prototype, "tuiPieChart", null);
|
|
43
|
+
TuiPieChartDirective = __decorate([
|
|
44
|
+
Directive({
|
|
45
|
+
selector: 'path[tuiPieChart]',
|
|
46
|
+
providers: [TuiDestroyService],
|
|
47
|
+
}),
|
|
48
|
+
__param(0, Inject(ElementRef)),
|
|
49
|
+
__param(1, Inject(NgZone)),
|
|
50
|
+
__param(2, Inject(TuiDestroyService)),
|
|
51
|
+
__param(3, Inject(PERFORMANCE)),
|
|
52
|
+
__param(4, Inject(ANIMATION_FRAME)),
|
|
53
|
+
__param(5, Inject(TUI_ANIMATIONS_DURATION))
|
|
54
|
+
], TuiPieChartDirective);
|
|
55
|
+
export { TuiPieChartDirective };
|
|
56
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGllLWNoYXJ0LmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0B0YWlnYS11aS9hZGRvbi1jaGFydHMvY29tcG9uZW50cy9waWUtY2hhcnQvIiwic291cmNlcyI6WyJwaWUtY2hhcnQuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUMzRSxPQUFPLEVBQUMsZUFBZSxFQUFFLFdBQVcsRUFBQyxNQUFNLHFCQUFxQixDQUFDO0FBQ2pFLE9BQU8sRUFBQyxjQUFjLEVBQUMsTUFBTSw4QkFBOEIsQ0FBQztBQUM1RCxPQUFPLEVBQ0gsS0FBSyxFQUNMLGFBQWEsRUFDYixjQUFjLEVBQ2QsaUJBQWlCLEVBQ2pCLFdBQVcsR0FDZCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUMsdUJBQXVCLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUN2RCxPQUFPLEVBQUMsZUFBZSxFQUFFLFVBQVUsRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUNqRCxPQUFPLEVBQUMsR0FBRyxFQUFFLFFBQVEsRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBRTlFLFdBQVc7QUFLWCxJQUFhLG9CQUFvQixHQUFqQyxNQUFhLG9CQUFvQjtJQVM3QixZQUN3QixFQUFDLGFBQWEsRUFBNkIsRUFDL0MsTUFBYyxFQUNILFFBQTZCLEVBQ25DLFdBQXdCLEVBQ3BCLGVBQW1DLEVBQzNCLFFBQWdCO1FBZHBDLFlBQU8sR0FBRyxJQUFJLGVBQWUsQ0FBNEIsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQWdCOUUsSUFBSSxDQUFDLE9BQU87YUFDUCxJQUFJLENBQ0QsUUFBUSxFQUFFLEVBQ1YsU0FBUyxDQUFDLENBQUMsQ0FBQyxJQUFJLEVBQUUsR0FBRyxDQUFDLEVBQUUsRUFBRTtZQUN0QixNQUFNLEdBQUcsR0FBRyxXQUFXLENBQUMsR0FBRyxFQUFFLENBQUM7WUFDOUIsTUFBTSxVQUFVLEdBQUcsR0FBRyxDQUFDLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUNwQyxNQUFNLFFBQVEsR0FBRyxHQUFHLENBQUMsQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBRWxDLE9BQU8sZUFBZSxDQUFDLElBQUksQ0FDdkIsR0FBRyxDQUFDLFNBQVMsQ0FBQyxFQUFFLENBQ1osYUFBYSxDQUFDLEtBQUssQ0FBQyxDQUFDLFNBQVMsR0FBRyxHQUFHLENBQUMsR0FBRyxRQUFRLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQzNELEVBQ0QsU0FBUyxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUMsUUFBUSxHQUFHLENBQUMsRUFBRSxJQUFJLENBQUMsRUFDekMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUM7Z0JBQ1osSUFBSSxDQUFDLENBQUMsQ0FBQyxHQUFHLFVBQVUsR0FBRyxRQUFRO2dCQUMvQixHQUFHLENBQUMsQ0FBQyxDQUFDLEdBQUcsR0FBRyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsR0FBRyxRQUFRLEdBQUcsUUFBUTthQUN4RCxDQUFDLENBQ0wsQ0FBQztRQUNOLENBQUMsQ0FBQyxFQUNGLFdBQVcsQ0FBQyxNQUFNLENBQUMsRUFDbkIsU0FBUyxDQUFDLFFBQVEsQ0FBQyxDQUN0QjthQUNBLFNBQVMsQ0FBQyxDQUFDLENBQUMsS0FBSyxFQUFFLEdBQUcsQ0FBQyxFQUFFLEVBQUU7WUFDeEIsYUFBYSxDQUFDLFlBQVksQ0FBQyxHQUFHLEVBQUUsY0FBYyxDQUFDLEtBQUssRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDO1FBQ2hFLENBQUMsQ0FBQyxDQUFDO0lBQ1gsQ0FBQztJQXJDRCxJQUFJLFdBQVcsQ0FBQyxNQUFpQztRQUM3QyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUM5QixDQUFDO0NBb0NKLENBQUE7O1lBakM0QyxVQUFVLHVCQUE5QyxNQUFNLFNBQUMsVUFBVTtZQUNNLE1BQU0sdUJBQTdCLE1BQU0sU0FBQyxNQUFNO1lBQ3VCLFVBQVUsdUJBQTlDLE1BQU0sU0FBQyxpQkFBaUI7WUFDUyxXQUFXLHVCQUE1QyxNQUFNLFNBQUMsV0FBVztZQUN1QixVQUFVLHVCQUFuRCxNQUFNLFNBQUMsZUFBZTt5Q0FDdEIsTUFBTSxTQUFDLHVCQUF1Qjs7QUFWbkM7SUFGQyxLQUFLLEVBQUU7SUFDUCxjQUFjLEVBQUU7dURBR2hCO0FBUFEsb0JBQW9CO0lBSmhDLFNBQVMsQ0FBQztRQUNQLFFBQVEsRUFBRSxtQkFBbUI7UUFDN0IsU0FBUyxFQUFFLENBQUMsaUJBQWlCLENBQUM7S0FDakMsQ0FBQztJQVdPLFdBQUEsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFBO0lBQ2xCLFdBQUEsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFBO0lBQ2QsV0FBQSxNQUFNLENBQUMsaUJBQWlCLENBQUMsQ0FBQTtJQUN6QixXQUFBLE1BQU0sQ0FBQyxXQUFXLENBQUMsQ0FBQTtJQUNuQixXQUFBLE1BQU0sQ0FBQyxlQUFlLENBQUMsQ0FBQTtJQUN2QixXQUFBLE1BQU0sQ0FBQyx1QkFBdUIsQ0FBQyxDQUFBO0dBZjNCLG9CQUFvQixDQTJDaEM7U0EzQ1ksb0JBQW9CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtEaXJlY3RpdmUsIEVsZW1lbnRSZWYsIEluamVjdCwgSW5wdXQsIE5nWm9uZX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0FOSU1BVElPTl9GUkFNRSwgUEVSRk9STUFOQ0V9IGZyb20gJ0BuZy13ZWItYXBpcy9jb21tb24nO1xuaW1wb3J0IHtkZXNjcmliZVNlY3Rvcn0gZnJvbSAnQHRhaWdhLXVpL2FkZG9uLWNoYXJ0cy91dGlscyc7XG5pbXBvcnQge1xuICAgIGNsYW1wLFxuICAgIGVhc2VJbk91dFF1YWQsXG4gICAgdHVpRGVmYXVsdFByb3AsXG4gICAgVHVpRGVzdHJveVNlcnZpY2UsXG4gICAgdHVpWm9uZWZyZWUsXG59IGZyb20gJ0B0YWlnYS11aS9jZGsnO1xuaW1wb3J0IHtUVUlfQU5JTUFUSU9OU19EVVJBVElPTn0gZnJvbSAnQHRhaWdhLXVpL2NvcmUnO1xuaW1wb3J0IHtCZWhhdmlvclN1YmplY3QsIE9ic2VydmFibGV9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHttYXAsIHBhaXJ3aXNlLCBzd2l0Y2hNYXAsIHRha2VVbnRpbCwgdGFrZVdoaWxlfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbi8vIEBkeW5hbWljXG5ARGlyZWN0aXZlKHtcbiAgICBzZWxlY3RvcjogJ3BhdGhbdHVpUGllQ2hhcnRdJyxcbiAgICBwcm92aWRlcnM6IFtUdWlEZXN0cm95U2VydmljZV0sXG59KVxuZXhwb3J0IGNsYXNzIFR1aVBpZUNoYXJ0RGlyZWN0aXZlIHtcbiAgICBwcml2YXRlIHJlYWRvbmx5IHNlY3RvciQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PHJlYWRvbmx5IFtudW1iZXIsIG51bWJlcl0+KFswLCAwXSk7XG5cbiAgICBASW5wdXQoKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgc2V0IHR1aVBpZUNoYXJ0KHNlY3RvcjogcmVhZG9ubHkgW251bWJlciwgbnVtYmVyXSkge1xuICAgICAgICB0aGlzLnNlY3RvciQubmV4dChzZWN0b3IpO1xuICAgIH1cblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBASW5qZWN0KEVsZW1lbnRSZWYpIHtuYXRpdmVFbGVtZW50fTogRWxlbWVudFJlZjxTVkdQYXRoRWxlbWVudD4sXG4gICAgICAgIEBJbmplY3QoTmdab25lKSBuZ1pvbmU6IE5nWm9uZSxcbiAgICAgICAgQEluamVjdChUdWlEZXN0cm95U2VydmljZSkgZGVzdHJveSQ6IE9ic2VydmFibGU8dW5rbm93bj4sXG4gICAgICAgIEBJbmplY3QoUEVSRk9STUFOQ0UpIHBlcmZvcm1hbmNlOiBQZXJmb3JtYW5jZSxcbiAgICAgICAgQEluamVjdChBTklNQVRJT05fRlJBTUUpIGFuaW1hdGlvbkZyYW1lJDogT2JzZXJ2YWJsZTxudW1iZXI+LFxuICAgICAgICBASW5qZWN0KFRVSV9BTklNQVRJT05TX0RVUkFUSU9OKSBkdXJhdGlvbjogbnVtYmVyLFxuICAgICkge1xuICAgICAgICB0aGlzLnNlY3RvciRcbiAgICAgICAgICAgIC5waXBlKFxuICAgICAgICAgICAgICAgIHBhaXJ3aXNlKCksXG4gICAgICAgICAgICAgICAgc3dpdGNoTWFwKChbcHJldiwgY3VyXSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBub3cgPSBwZXJmb3JtYW5jZS5ub3coKTtcbiAgICAgICAgICAgICAgICAgICAgY29uc3Qgc3RhcnREZWx0YSA9IGN1clswXSAtIHByZXZbMF07XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IGVuZERlbHRhID0gY3VyWzFdIC0gcHJldlsxXTtcblxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gYW5pbWF0aW9uRnJhbWUkLnBpcGUoXG4gICAgICAgICAgICAgICAgICAgICAgICBtYXAodGltZXN0YW1wID0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZWFzZUluT3V0UXVhZChjbGFtcCgodGltZXN0YW1wIC0gbm93KSAvIGR1cmF0aW9uLCAwLCAxKSksXG4gICAgICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgICAgICAgdGFrZVdoaWxlKHByb2dyZXNzID0+IHByb2dyZXNzIDwgMSwgdHJ1ZSksXG4gICAgICAgICAgICAgICAgICAgICAgICBtYXAocHJvZ3Jlc3MgPT4gW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHByZXZbMF0gKyBzdGFydERlbHRhICogcHJvZ3Jlc3MsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY3VyWzFdID4gMzU5ID8gY3VyWzFdIDogcHJldlsxXSArIGVuZERlbHRhICogcHJvZ3Jlc3MsXG4gICAgICAgICAgICAgICAgICAgICAgICBdKSxcbiAgICAgICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICAgICB0dWlab25lZnJlZShuZ1pvbmUpLFxuICAgICAgICAgICAgICAgIHRha2VVbnRpbChkZXN0cm95JCksXG4gICAgICAgICAgICApXG4gICAgICAgICAgICAuc3Vic2NyaWJlKChbc3RhcnQsIGVuZF0pID0+IHtcbiAgICAgICAgICAgICAgICBuYXRpdmVFbGVtZW50LnNldEF0dHJpYnV0ZSgnZCcsIGRlc2NyaWJlU2VjdG9yKHN0YXJ0LCBlbmQpKTtcbiAgICAgICAgICAgIH0pO1xuICAgIH1cbn1cbiJdfQ==
|
|
@@ -1,18 +1,25 @@
|
|
|
1
1
|
import { __decorate } from "tslib";
|
|
2
2
|
import { CommonModule } from '@angular/common';
|
|
3
3
|
import { NgModule } from '@angular/core';
|
|
4
|
-
import { TuiHoveredModule } from '@taiga-ui/cdk';
|
|
4
|
+
import { TuiHoveredModule, TuiRepeatTimesModule } from '@taiga-ui/cdk';
|
|
5
5
|
import { TuiPointerHintModule } from '@taiga-ui/core';
|
|
6
6
|
import { PolymorpheusModule } from '@tinkoff/ng-polymorpheus';
|
|
7
7
|
import { TuiPieChartComponent } from './pie-chart.component';
|
|
8
|
+
import { TuiPieChartDirective } from './pie-chart.directive';
|
|
8
9
|
let TuiPieChartModule = class TuiPieChartModule {
|
|
9
10
|
};
|
|
10
11
|
TuiPieChartModule = __decorate([
|
|
11
12
|
NgModule({
|
|
12
|
-
imports: [
|
|
13
|
-
|
|
13
|
+
imports: [
|
|
14
|
+
CommonModule,
|
|
15
|
+
TuiRepeatTimesModule,
|
|
16
|
+
TuiHoveredModule,
|
|
17
|
+
PolymorpheusModule,
|
|
18
|
+
TuiPointerHintModule,
|
|
19
|
+
],
|
|
20
|
+
declarations: [TuiPieChartComponent, TuiPieChartDirective],
|
|
14
21
|
exports: [TuiPieChartComponent],
|
|
15
22
|
})
|
|
16
23
|
], TuiPieChartModule);
|
|
17
24
|
export { TuiPieChartModule };
|
|
18
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
25
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGllLWNoYXJ0Lm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0B0YWlnYS11aS9hZGRvbi1jaGFydHMvY29tcG9uZW50cy9waWUtY2hhcnQvIiwic291cmNlcyI6WyJwaWUtY2hhcnQubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDN0MsT0FBTyxFQUFDLFFBQVEsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUN2QyxPQUFPLEVBQUMsZ0JBQWdCLEVBQUUsb0JBQW9CLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDckUsT0FBTyxFQUFDLG9CQUFvQixFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFDcEQsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0sMEJBQTBCLENBQUM7QUFFNUQsT0FBTyxFQUFDLG9CQUFvQixFQUFDLE1BQU0sdUJBQXVCLENBQUM7QUFDM0QsT0FBTyxFQUFDLG9CQUFvQixFQUFDLE1BQU0sdUJBQXVCLENBQUM7QUFhM0QsSUFBYSxpQkFBaUIsR0FBOUIsTUFBYSxpQkFBaUI7Q0FBRyxDQUFBO0FBQXBCLGlCQUFpQjtJQVg3QixRQUFRLENBQUM7UUFDTixPQUFPLEVBQUU7WUFDTCxZQUFZO1lBQ1osb0JBQW9CO1lBQ3BCLGdCQUFnQjtZQUNoQixrQkFBa0I7WUFDbEIsb0JBQW9CO1NBQ3ZCO1FBQ0QsWUFBWSxFQUFFLENBQUMsb0JBQW9CLEVBQUUsb0JBQW9CLENBQUM7UUFDMUQsT0FBTyxFQUFFLENBQUMsb0JBQW9CLENBQUM7S0FDbEMsQ0FBQztHQUNXLGlCQUFpQixDQUFHO1NBQXBCLGlCQUFpQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29tbW9uTW9kdWxlfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtOZ01vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1R1aUhvdmVyZWRNb2R1bGUsIFR1aVJlcGVhdFRpbWVzTW9kdWxlfSBmcm9tICdAdGFpZ2EtdWkvY2RrJztcbmltcG9ydCB7VHVpUG9pbnRlckhpbnRNb2R1bGV9IGZyb20gJ0B0YWlnYS11aS9jb3JlJztcbmltcG9ydCB7UG9seW1vcnBoZXVzTW9kdWxlfSBmcm9tICdAdGlua29mZi9uZy1wb2x5bW9ycGhldXMnO1xuXG5pbXBvcnQge1R1aVBpZUNoYXJ0Q29tcG9uZW50fSBmcm9tICcuL3BpZS1jaGFydC5jb21wb25lbnQnO1xuaW1wb3J0IHtUdWlQaWVDaGFydERpcmVjdGl2ZX0gZnJvbSAnLi9waWUtY2hhcnQuZGlyZWN0aXZlJztcblxuQE5nTW9kdWxlKHtcbiAgICBpbXBvcnRzOiBbXG4gICAgICAgIENvbW1vbk1vZHVsZSxcbiAgICAgICAgVHVpUmVwZWF0VGltZXNNb2R1bGUsXG4gICAgICAgIFR1aUhvdmVyZWRNb2R1bGUsXG4gICAgICAgIFBvbHltb3JwaGV1c01vZHVsZSxcbiAgICAgICAgVHVpUG9pbnRlckhpbnRNb2R1bGUsXG4gICAgXSxcbiAgICBkZWNsYXJhdGlvbnM6IFtUdWlQaWVDaGFydENvbXBvbmVudCwgVHVpUGllQ2hhcnREaXJlY3RpdmVdLFxuICAgIGV4cG9ydHM6IFtUdWlQaWVDaGFydENvbXBvbmVudF0sXG59KVxuZXhwb3J0IGNsYXNzIFR1aVBpZUNoYXJ0TW9kdWxlIHt9XG4iXX0=
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import { __decorate } from "tslib";
|
|
2
2
|
import { ChangeDetectionStrategy, Component, EventEmitter, HostBinding, Input, Output, } from '@angular/core';
|
|
3
3
|
import { TUI_DEFAULT_COLOR_HANDLER } from '@taiga-ui/addon-charts/constants';
|
|
4
|
-
import { tuiDefaultProp
|
|
4
|
+
import { tuiDefaultProp } from '@taiga-ui/cdk';
|
|
5
|
+
// TODO: Refactor to use ng-content
|
|
5
6
|
let TuiRingChartComponent = class TuiRingChartComponent {
|
|
6
7
|
constructor() {
|
|
7
8
|
this.value = [];
|
|
@@ -15,15 +16,9 @@ let TuiRingChartComponent = class TuiRingChartComponent {
|
|
|
15
16
|
get hasContent() {
|
|
16
17
|
return this.size !== 's' && !!this.content;
|
|
17
18
|
}
|
|
18
|
-
get contentContext() {
|
|
19
|
-
return this.getContentContext(this.activeItemIndex, this.value);
|
|
20
|
-
}
|
|
21
19
|
onActiveItemIndexChange(index) {
|
|
22
20
|
this.updateActiveItemIndex(index);
|
|
23
21
|
}
|
|
24
|
-
getContentContext($implicit, value) {
|
|
25
|
-
return { $implicit, value };
|
|
26
|
-
}
|
|
27
22
|
updateActiveItemIndex(index) {
|
|
28
23
|
if (index === this.activeItemIndex) {
|
|
29
24
|
return;
|
|
@@ -60,16 +55,13 @@ __decorate([
|
|
|
60
55
|
__decorate([
|
|
61
56
|
Output()
|
|
62
57
|
], TuiRingChartComponent.prototype, "activeItemIndexChange", void 0);
|
|
63
|
-
__decorate([
|
|
64
|
-
tuiPure
|
|
65
|
-
], TuiRingChartComponent.prototype, "getContentContext", null);
|
|
66
58
|
TuiRingChartComponent = __decorate([
|
|
67
59
|
Component({
|
|
68
60
|
selector: 'tui-ring-chart',
|
|
69
|
-
template: "<div *ngIf=\"hasContent\" class=\"t-content\">\n <div\n polymorpheus-outlet\n automation-id=\"tui-ring-chart__content\"\n class=\"t-wrapper\"\n [content]=\"content\"\n [context]=\"
|
|
61
|
+
template: "<div *ngIf=\"hasContent\" class=\"t-content\">\n <div\n polymorpheus-outlet\n automation-id=\"tui-ring-chart__content\"\n class=\"t-wrapper\"\n [content]=\"content\"\n [context]=\"{$implicit: activeItemIndex, value: value}\"\n ></div>\n</div>\n\n<tui-pie-chart\n [masked]=\"true\"\n [value]=\"value\"\n [colorHandler]=\"colorHandler\"\n [size]=\"size\"\n [activeItemIndex]=\"activeItemIndex\"\n (activeItemIndexChange)=\"onActiveItemIndexChange($event)\"\n></tui-pie-chart>\n\n<div class=\"t-shield\"></div>\n",
|
|
70
62
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
71
63
|
styles: [":host{position:relative;display:block}:host[data-tui-host-size='s']{width:4rem;height:4rem}:host[data-tui-host-size='m']{width:9rem;height:9rem}:host[data-tui-host-size='l']{width:11rem;height:11rem}:host[data-tui-host-size=xl]{width:16rem;height:16rem}.t-content{position:absolute;top:0;left:0;width:100%;height:100%;display:flex;font:var(--tui-font-text-m);max-height:100%;flex-direction:column;justify-content:center;text-align:center;padding:1.5rem;border-radius:100%;box-sizing:border-box;overflow:hidden;word-break:break-word;white-space:pre-wrap;color:var(--tui-text-02)}:host[data-tui-host-size='m'] .t-content{font:var(--tui-font-text-xs)}.t-wrapper:first-line{color:var(--tui-text-01)}:host[data-tui-host-size='l'] .t-wrapper:first-line{font:var(--tui-font-text-l);font-weight:700}:host[data-tui-host-size='m'] .t-wrapper:first-line{font:var(--tui-font-text-m);font-weight:700}.t-shield{position:absolute;top:25%;left:25%;right:25%;bottom:25%;border-radius:100%}"]
|
|
72
64
|
})
|
|
73
65
|
], TuiRingChartComponent);
|
|
74
66
|
export { TuiRingChartComponent };
|
|
75
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
67
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmluZy1jaGFydC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AdGFpZ2EtdWkvYWRkb24tY2hhcnRzL2NvbXBvbmVudHMvcmluZy1jaGFydC8iLCJzb3VyY2VzIjpbInJpbmctY2hhcnQuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQ0gsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxZQUFZLEVBQ1osV0FBVyxFQUNYLEtBQUssRUFDTCxNQUFNLEdBQ1QsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFDLHlCQUF5QixFQUFDLE1BQU0sa0NBQWtDLENBQUM7QUFHM0UsT0FBTyxFQUFDLGNBQWMsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUk3QyxtQ0FBbUM7QUFPbkMsSUFBYSxxQkFBcUIsR0FBbEMsTUFBYSxxQkFBcUI7SUFBbEM7UUFHSSxVQUFLLEdBQXNCLEVBQUUsQ0FBQztRQUs5QixTQUFJLEdBQXlCLEdBQUcsQ0FBQztRQUlqQyxpQkFBWSxHQUFvQix5QkFBeUIsQ0FBQztRQUkxRCxZQUFPLEdBQTZDLEVBQUUsQ0FBQztRQUl2RCxXQUFNLEdBQUcsSUFBSSxDQUFDO1FBSWQsb0JBQWUsR0FBRyxHQUFHLENBQUM7UUFHdEIsMEJBQXFCLEdBQUcsSUFBSSxZQUFZLEVBQVUsQ0FBQztJQWtCdkQsQ0FBQztJQWhCRyxJQUFJLFVBQVU7UUFDVixPQUFPLElBQUksQ0FBQyxJQUFJLEtBQUssR0FBRyxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDO0lBQy9DLENBQUM7SUFFRCx1QkFBdUIsQ0FBQyxLQUFhO1FBQ2pDLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUN0QyxDQUFDO0lBRU8scUJBQXFCLENBQUMsS0FBYTtRQUN2QyxJQUFJLEtBQUssS0FBSyxJQUFJLENBQUMsZUFBZSxFQUFFO1lBQ2hDLE9BQU87U0FDVjtRQUVELElBQUksQ0FBQyxlQUFlLEdBQUcsS0FBSyxDQUFDO1FBQzdCLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDM0MsQ0FBQztDQUNKLENBQUE7QUExQ0c7SUFGQyxLQUFLLEVBQUU7SUFDUCxjQUFjLEVBQUU7b0RBQ2E7QUFLOUI7SUFIQyxLQUFLLEVBQUU7SUFDUCxXQUFXLENBQUMseUJBQXlCLENBQUM7SUFDdEMsY0FBYyxFQUFFO21EQUNnQjtBQUlqQztJQUZDLEtBQUssRUFBRTtJQUNQLGNBQWMsRUFBRTsyREFDeUM7QUFJMUQ7SUFGQyxLQUFLLEVBQUU7SUFDUCxjQUFjLEVBQUU7c0RBQ3NDO0FBSXZEO0lBRkMsS0FBSyxFQUFFO0lBQ1AsY0FBYyxFQUFFO3FEQUNIO0FBSWQ7SUFGQyxLQUFLLEVBQUU7SUFDUCxjQUFjLEVBQUU7OERBQ0s7QUFHdEI7SUFEQyxNQUFNLEVBQUU7b0VBQzBDO0FBM0IxQyxxQkFBcUI7SUFOakMsU0FBUyxDQUFDO1FBQ1AsUUFBUSxFQUFFLGdCQUFnQjtRQUMxQixva0JBQXlDO1FBRXpDLGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNOztLQUNsRCxDQUFDO0dBQ1cscUJBQXFCLENBNkNqQztTQTdDWSxxQkFBcUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICAgIENvbXBvbmVudCxcbiAgICBFdmVudEVtaXR0ZXIsXG4gICAgSG9zdEJpbmRpbmcsXG4gICAgSW5wdXQsXG4gICAgT3V0cHV0LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7VFVJX0RFRkFVTFRfQ09MT1JfSEFORExFUn0gZnJvbSAnQHRhaWdhLXVpL2FkZG9uLWNoYXJ0cy9jb25zdGFudHMnO1xuaW1wb3J0IHtUdWlSaW5nQ2hhcnRDb250ZXh0fSBmcm9tICdAdGFpZ2EtdWkvYWRkb24tY2hhcnRzL2ludGVyZmFjZXMnO1xuaW1wb3J0IHtUdWlDb2xvckhhbmRsZXJ9IGZyb20gJ0B0YWlnYS11aS9hZGRvbi1jaGFydHMvdHlwZXMnO1xuaW1wb3J0IHt0dWlEZWZhdWx0UHJvcH0gZnJvbSAnQHRhaWdhLXVpL2Nkayc7XG5pbXBvcnQge1R1aVNpemVTLCBUdWlTaXplWEx9IGZyb20gJ0B0YWlnYS11aS9jb3JlJztcbmltcG9ydCB7UG9seW1vcnBoZXVzQ29udGVudH0gZnJvbSAnQHRpbmtvZmYvbmctcG9seW1vcnBoZXVzJztcblxuLy8gVE9ETzogUmVmYWN0b3IgdG8gdXNlIG5nLWNvbnRlbnRcbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAndHVpLXJpbmctY2hhcnQnLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9yaW5nLWNoYXJ0LnRlbXBsYXRlLmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL3JpbmctY2hhcnQuc3R5bGUubGVzcyddLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBUdWlSaW5nQ2hhcnRDb21wb25lbnQge1xuICAgIEBJbnB1dCgpXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICB2YWx1ZTogcmVhZG9ubHkgbnVtYmVyW10gPSBbXTtcblxuICAgIEBJbnB1dCgpXG4gICAgQEhvc3RCaW5kaW5nKCdhdHRyLmRhdGEtdHVpLWhvc3Qtc2l6ZScpXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICBzaXplOiBUdWlTaXplUyB8IFR1aVNpemVYTCA9ICdtJztcblxuICAgIEBJbnB1dCgpXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICBjb2xvckhhbmRsZXI6IFR1aUNvbG9ySGFuZGxlciA9IFRVSV9ERUZBVUxUX0NPTE9SX0hBTkRMRVI7XG5cbiAgICBASW5wdXQoKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgY29udGVudDogUG9seW1vcnBoZXVzQ29udGVudDxUdWlSaW5nQ2hhcnRDb250ZXh0PiA9ICcnO1xuXG4gICAgQElucHV0KClcbiAgICBAdHVpRGVmYXVsdFByb3AoKVxuICAgIG1hc2tlZCA9IHRydWU7XG5cbiAgICBASW5wdXQoKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgYWN0aXZlSXRlbUluZGV4ID0gTmFOO1xuXG4gICAgQE91dHB1dCgpXG4gICAgYWN0aXZlSXRlbUluZGV4Q2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxudW1iZXI+KCk7XG5cbiAgICBnZXQgaGFzQ29udGVudCgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuc2l6ZSAhPT0gJ3MnICYmICEhdGhpcy5jb250ZW50O1xuICAgIH1cblxuICAgIG9uQWN0aXZlSXRlbUluZGV4Q2hhbmdlKGluZGV4OiBudW1iZXIpIHtcbiAgICAgICAgdGhpcy51cGRhdGVBY3RpdmVJdGVtSW5kZXgoaW5kZXgpO1xuICAgIH1cblxuICAgIHByaXZhdGUgdXBkYXRlQWN0aXZlSXRlbUluZGV4KGluZGV4OiBudW1iZXIpIHtcbiAgICAgICAgaWYgKGluZGV4ID09PSB0aGlzLmFjdGl2ZUl0ZW1JbmRleCkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5hY3RpdmVJdGVtSW5kZXggPSBpbmRleDtcbiAgICAgICAgdGhpcy5hY3RpdmVJdGVtSW5kZXhDaGFuZ2UubmV4dChpbmRleCk7XG4gICAgfVxufVxuIl19
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { toInt, toRadians } from '@taiga-ui/cdk';
|
|
2
|
+
const EMPTY = 'M 100 0 A 100 100 0 1 1 100 0 L 0 0';
|
|
2
3
|
/**
|
|
3
4
|
* Describes a normalized sector by angles. Normalized meaning it supposed to work with
|
|
4
5
|
* SVG with viewBox="-1 -1 2 2" so that 0 coordinates in cartesian and polar match the same spot.
|
|
@@ -16,7 +17,7 @@ export function describeSector(startAngle, endAngle) {
|
|
|
16
17
|
const endX = Math.cos(endRad) * 100;
|
|
17
18
|
const endY = Math.sin(endRad) * 100;
|
|
18
19
|
const largeArcFlag = toInt(endAngle - startAngle > 180);
|
|
19
|
-
|
|
20
|
+
const result = [
|
|
20
21
|
'M',
|
|
21
22
|
startX,
|
|
22
23
|
startY,
|
|
@@ -26,6 +27,7 @@ export function describeSector(startAngle, endAngle) {
|
|
|
26
27
|
endX,
|
|
27
28
|
endY,
|
|
28
29
|
'L 0 0',
|
|
29
|
-
]
|
|
30
|
+
];
|
|
31
|
+
return isNaN(endX) ? EMPTY : result.join(' ');
|
|
30
32
|
}
|
|
31
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
33
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVzY3JpYmUtc2VjdG9yLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHRhaWdhLXVpL2FkZG9uLWNoYXJ0cy91dGlscy8iLCJzb3VyY2VzIjpbImRlc2NyaWJlLXNlY3Rvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsS0FBSyxFQUFFLFNBQVMsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUUvQyxNQUFNLEtBQUssR0FBRyxxQ0FBcUMsQ0FBQztBQUVwRDs7Ozs7Ozs7R0FRRztBQUNILE1BQU0sVUFBVSxjQUFjLENBQUMsVUFBa0IsRUFBRSxRQUFnQjtJQUMvRCxNQUFNLFFBQVEsR0FBRyxTQUFTLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDdkMsTUFBTSxNQUFNLEdBQUcsU0FBUyxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQ25DLE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLEdBQUcsR0FBRyxDQUFDO0lBQ3hDLE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLEdBQUcsR0FBRyxDQUFDO0lBQ3hDLE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLEdBQUcsR0FBRyxDQUFDO0lBQ3BDLE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLEdBQUcsR0FBRyxDQUFDO0lBQ3BDLE1BQU0sWUFBWSxHQUFHLEtBQUssQ0FBQyxRQUFRLEdBQUcsVUFBVSxHQUFHLEdBQUcsQ0FBQyxDQUFDO0lBQ3hELE1BQU0sTUFBTSxHQUFHO1FBQ1gsR0FBRztRQUNILE1BQU07UUFDTixNQUFNO1FBQ04sYUFBYTtRQUNiLFlBQVk7UUFDWixDQUFDO1FBQ0QsSUFBSTtRQUNKLElBQUk7UUFDSixPQUFPO0tBQ1YsQ0FBQztJQUVGLE9BQU8sS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7QUFDbEQsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7dG9JbnQsIHRvUmFkaWFuc30gZnJvbSAnQHRhaWdhLXVpL2Nkayc7XG5cbmNvbnN0IEVNUFRZID0gJ00gMTAwIDAgQSAxMDAgMTAwIDAgMSAxIDEwMCAwIEwgMCAwJztcblxuLyoqXG4gKiBEZXNjcmliZXMgYSBub3JtYWxpemVkIHNlY3RvciBieSBhbmdsZXMuIE5vcm1hbGl6ZWQgbWVhbmluZyBpdCBzdXBwb3NlZCB0byB3b3JrIHdpdGhcbiAqIFNWRyB3aXRoIHZpZXdCb3g9XCItMSAtMSAyIDJcIiBzbyB0aGF0IDAgY29vcmRpbmF0ZXMgaW4gY2FydGVzaWFuIGFuZCBwb2xhciBtYXRjaCB0aGUgc2FtZSBzcG90LlxuICogRXZlcnl0aGluZyBpcyBtdWx0aXBsaWVkIGJ5IDEwMCAoaW5jbHVkaW5nIHZpZXdCb3ggb2YgU1ZHIHRvIGhvc3QgdGhpcykgc28gSUUgcHJvcGVybHlcbiAqIGhhbmRsZXMgaG92ZXIgZXZlbnRzLlxuICpcbiAqIEBwYXJhbSBzdGFydEFuZ2xlIHN0YXJ0aW5nIGFuZ2xlIGluIGRlZ3JlZXNcbiAqIEBwYXJhbSBlbmRBbmdsZSBlbmRpbmcgYW5nbGUgaW4gZGVncmVlc1xuICovXG5leHBvcnQgZnVuY3Rpb24gZGVzY3JpYmVTZWN0b3Ioc3RhcnRBbmdsZTogbnVtYmVyLCBlbmRBbmdsZTogbnVtYmVyKTogc3RyaW5nIHtcbiAgICBjb25zdCBzdGFydFJhZCA9IHRvUmFkaWFucyhzdGFydEFuZ2xlKTtcbiAgICBjb25zdCBlbmRSYWQgPSB0b1JhZGlhbnMoZW5kQW5nbGUpO1xuICAgIGNvbnN0IHN0YXJ0WCA9IE1hdGguY29zKHN0YXJ0UmFkKSAqIDEwMDtcbiAgICBjb25zdCBzdGFydFkgPSBNYXRoLnNpbihzdGFydFJhZCkgKiAxMDA7XG4gICAgY29uc3QgZW5kWCA9IE1hdGguY29zKGVuZFJhZCkgKiAxMDA7XG4gICAgY29uc3QgZW5kWSA9IE1hdGguc2luKGVuZFJhZCkgKiAxMDA7XG4gICAgY29uc3QgbGFyZ2VBcmNGbGFnID0gdG9JbnQoZW5kQW5nbGUgLSBzdGFydEFuZ2xlID4gMTgwKTtcbiAgICBjb25zdCByZXN1bHQgPSBbXG4gICAgICAgICdNJyxcbiAgICAgICAgc3RhcnRYLFxuICAgICAgICBzdGFydFksXG4gICAgICAgICdBIDEwMCAxMDAgMCcsXG4gICAgICAgIGxhcmdlQXJjRmxhZyxcbiAgICAgICAgMSxcbiAgICAgICAgZW5kWCxcbiAgICAgICAgZW5kWSxcbiAgICAgICAgJ0wgMCAwJyxcbiAgICBdO1xuXG4gICAgcmV0dXJuIGlzTmFOKGVuZFgpID8gRU1QVFkgOiByZXN1bHQuam9pbignICcpO1xufVxuIl19
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { __decorate } from "tslib";
|
|
2
|
-
import { ChangeDetectionStrategy, Component, Input } from '@angular/core';
|
|
2
|
+
import { ChangeDetectionStrategy, Component, HostBinding, Input } from '@angular/core';
|
|
3
3
|
import { tuiDefaultProp } from '@taiga-ui/cdk';
|
|
4
4
|
import { colorFallback } from '@taiga-ui/core';
|
|
5
5
|
// TODO: Remove fallback in 3.0
|
|
@@ -8,9 +8,14 @@ var TuiLegendItemComponent = /** @class */ (function () {
|
|
|
8
8
|
this.active = false;
|
|
9
9
|
this.color = '';
|
|
10
10
|
this.text = '';
|
|
11
|
+
this.size = 'm';
|
|
12
|
+
this.disabled = false;
|
|
11
13
|
}
|
|
12
14
|
Object.defineProperty(TuiLegendItemComponent.prototype, "computedColor", {
|
|
13
15
|
get: function () {
|
|
16
|
+
if (this.color === 'var(--tui-primary)') {
|
|
17
|
+
return null;
|
|
18
|
+
}
|
|
14
19
|
return this.color.startsWith('var(') ? this.color : colorFallback(this.color);
|
|
15
20
|
},
|
|
16
21
|
enumerable: true,
|
|
@@ -28,15 +33,27 @@ var TuiLegendItemComponent = /** @class */ (function () {
|
|
|
28
33
|
Input(),
|
|
29
34
|
tuiDefaultProp()
|
|
30
35
|
], TuiLegendItemComponent.prototype, "text", void 0);
|
|
36
|
+
__decorate([
|
|
37
|
+
Input(),
|
|
38
|
+
HostBinding('attr.data-size'),
|
|
39
|
+
tuiDefaultProp()
|
|
40
|
+
], TuiLegendItemComponent.prototype, "size", void 0);
|
|
41
|
+
__decorate([
|
|
42
|
+
Input(),
|
|
43
|
+
HostBinding('class._disabled')
|
|
44
|
+
], TuiLegendItemComponent.prototype, "disabled", void 0);
|
|
45
|
+
__decorate([
|
|
46
|
+
HostBinding('style.--tui-primary')
|
|
47
|
+
], TuiLegendItemComponent.prototype, "computedColor", null);
|
|
31
48
|
TuiLegendItemComponent = __decorate([
|
|
32
49
|
Component({
|
|
33
50
|
selector: 'tui-legend-item',
|
|
34
|
-
template: "<button\n tuiButton\n type=\"button\"\n size=\"s\"\n appearance=\"whiteblock\"\n class=\"t-button\"\n [pseudoHovered]=\"active || null\"\n>\n <
|
|
51
|
+
template: "<button\n tuiButton\n type=\"button\"\n size=\"s\"\n appearance=\"whiteblock\"\n class=\"t-button\"\n [pseudoHovered]=\"active || null\"\n>\n <div class=\"t-wrapper\">\n <ng-content select=\"tui-primitive-checkbox\"></ng-content>\n <span class=\"t-dot\"></span>\n <span class=\"t-text\">{{ text }}</span>\n <ng-content></ng-content>\n </div>\n</button>\n",
|
|
35
52
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
36
|
-
styles: [":host{display:inline-block}.t-button{font-weight:700}.t-dot{width:.5rem;height:.5rem;border-radius:100
|
|
53
|
+
styles: [":host{display:inline-block}.t-button{height:2rem;font-weight:700}:host[data-size='m'] .t-button{height:2.25rem;font:var(--tui-font-text-m);font-weight:700}.t-wrapper{display:flex;align-items:center;pointer-events:none}:host._disabled .t-wrapper{color:var(--tui-text-03)}.t-dot{width:.5rem;height:.5rem;border-radius:100%;background:var(--tui-primary)}:host._disabled .t-dot{background:var(--tui-base-04)}.t-dot:not(:first-child){display:none}.t-text{margin:0 .5rem;font-weight:400}"]
|
|
37
54
|
})
|
|
38
55
|
], TuiLegendItemComponent);
|
|
39
56
|
return TuiLegendItemComponent;
|
|
40
57
|
}());
|
|
41
58
|
export { TuiLegendItemComponent };
|
|
42
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
59
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGVnZW5kLWl0ZW0uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHRhaWdhLXVpL2FkZG9uLWNoYXJ0cy9jb21wb25lbnRzL2xlZ2VuZC1pdGVtLyIsInNvdXJjZXMiOlsibGVnZW5kLWl0ZW0uY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUMsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLFdBQVcsRUFBRSxLQUFLLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDckYsT0FBTyxFQUFDLGNBQWMsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUM3QyxPQUFPLEVBQUMsYUFBYSxFQUFXLE1BQU0sZ0JBQWdCLENBQUM7QUFFdkQsK0JBQStCO0FBTy9CO0lBQUE7UUFHSSxXQUFNLEdBQUcsS0FBSyxDQUFDO1FBSWYsVUFBSyxHQUFHLEVBQUUsQ0FBQztRQUlYLFNBQUksR0FBRyxFQUFFLENBQUM7UUFLVixTQUFJLEdBQWEsR0FBRyxDQUFDO1FBSXJCLGFBQVEsR0FBRyxLQUFLLENBQUM7SUFVckIsQ0FBQztJQVBHLHNCQUFJLGlEQUFhO2FBQWpCO1lBQ0ksSUFBSSxJQUFJLENBQUMsS0FBSyxLQUFLLG9CQUFvQixFQUFFO2dCQUNyQyxPQUFPLElBQUksQ0FBQzthQUNmO1lBRUQsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNsRixDQUFDOzs7T0FBQTtJQTFCRDtRQUZDLEtBQUssRUFBRTtRQUNQLGNBQWMsRUFBRTswREFDRjtJQUlmO1FBRkMsS0FBSyxFQUFFO1FBQ1AsY0FBYyxFQUFFO3lEQUNOO0lBSVg7UUFGQyxLQUFLLEVBQUU7UUFDUCxjQUFjLEVBQUU7d0RBQ1A7SUFLVjtRQUhDLEtBQUssRUFBRTtRQUNQLFdBQVcsQ0FBQyxnQkFBZ0IsQ0FBQztRQUM3QixjQUFjLEVBQUU7d0RBQ0k7SUFJckI7UUFGQyxLQUFLLEVBQUU7UUFDUCxXQUFXLENBQUMsaUJBQWlCLENBQUM7NERBQ2Q7SUFHakI7UUFEQyxXQUFXLENBQUMscUJBQXFCLENBQUM7K0RBT2xDO0lBN0JRLHNCQUFzQjtRQU5sQyxTQUFTLENBQUM7WUFDUCxRQUFRLEVBQUUsaUJBQWlCO1lBQzNCLGthQUEwQztZQUUxQyxlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTs7U0FDbEQsQ0FBQztPQUNXLHNCQUFzQixDQThCbEM7SUFBRCw2QkFBQztDQUFBLEFBOUJELElBOEJDO1NBOUJZLHNCQUFzQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgSG9zdEJpbmRpbmcsIElucHV0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7dHVpRGVmYXVsdFByb3B9IGZyb20gJ0B0YWlnYS11aS9jZGsnO1xuaW1wb3J0IHtjb2xvckZhbGxiYWNrLCBUdWlTaXplU30gZnJvbSAnQHRhaWdhLXVpL2NvcmUnO1xuXG4vLyBUT0RPOiBSZW1vdmUgZmFsbGJhY2sgaW4gMy4wXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ3R1aS1sZWdlbmQtaXRlbScsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2xlZ2VuZC1pdGVtLnRlbXBsYXRlLmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL2xlZ2VuZC1pdGVtLnN0eWxlLmxlc3MnXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgVHVpTGVnZW5kSXRlbUNvbXBvbmVudCB7XG4gICAgQElucHV0KClcbiAgICBAdHVpRGVmYXVsdFByb3AoKVxuICAgIGFjdGl2ZSA9IGZhbHNlO1xuXG4gICAgQElucHV0KClcbiAgICBAdHVpRGVmYXVsdFByb3AoKVxuICAgIGNvbG9yID0gJyc7XG5cbiAgICBASW5wdXQoKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgdGV4dCA9ICcnO1xuXG4gICAgQElucHV0KClcbiAgICBASG9zdEJpbmRpbmcoJ2F0dHIuZGF0YS1zaXplJylcbiAgICBAdHVpRGVmYXVsdFByb3AoKVxuICAgIHNpemU6IFR1aVNpemVTID0gJ20nO1xuXG4gICAgQElucHV0KClcbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzLl9kaXNhYmxlZCcpXG4gICAgZGlzYWJsZWQgPSBmYWxzZTtcblxuICAgIEBIb3N0QmluZGluZygnc3R5bGUuLS10dWktcHJpbWFyeScpXG4gICAgZ2V0IGNvbXB1dGVkQ29sb3IoKTogc3RyaW5nIHwgbnVsbCB7XG4gICAgICAgIGlmICh0aGlzLmNvbG9yID09PSAndmFyKC0tdHVpLXByaW1hcnkpJykge1xuICAgICAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gdGhpcy5jb2xvci5zdGFydHNXaXRoKCd2YXIoJykgPyB0aGlzLmNvbG9yIDogY29sb3JGYWxsYmFjayh0aGlzLmNvbG9yKTtcbiAgICB9XG59XG4iXX0=
|