@taiga-ui/addon-charts 3.0.0-rc.4 → 3.0.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/bundles/taiga-ui-addon-charts-components-bar-chart.umd.js +7 -11
- package/bundles/taiga-ui-addon-charts-components-bar-chart.umd.js.map +1 -1
- package/bundles/taiga-ui-addon-charts-components-line-chart.umd.js +10 -12
- package/bundles/taiga-ui-addon-charts-components-line-chart.umd.js.map +1 -1
- package/bundles/taiga-ui-addon-charts-components-line-days-chart.umd.js +4 -17
- package/bundles/taiga-ui-addon-charts-components-line-days-chart.umd.js.map +1 -1
- package/bundles/taiga-ui-addon-charts-components-pie-chart.umd.js +11 -9
- package/bundles/taiga-ui-addon-charts-components-pie-chart.umd.js.map +1 -1
- package/components/bar-chart/bar-chart.component.d.ts +3 -3
- package/components/bar-chart/bar-chart.module.d.ts +4 -4
- package/components/line-chart/line-chart.component.d.ts +4 -4
- package/components/line-chart/line-chart.module.d.ts +1 -1
- package/components/line-days-chart/line-days-chart.module.d.ts +1 -1
- package/components/pie-chart/pie-chart.component.d.ts +3 -3
- package/esm2015/components/bar-chart/bar-chart.component.js +9 -10
- package/esm2015/components/bar-chart/bar-chart.module.js +2 -5
- package/esm2015/components/line-chart/line-chart.component.js +13 -12
- package/esm2015/components/line-chart/line-chart.module.js +2 -5
- package/esm2015/components/line-days-chart/line-days-chart.component.js +1 -1
- package/esm2015/components/line-days-chart/line-days-chart.module.js +5 -18
- package/esm2015/components/pie-chart/pie-chart.component.js +13 -11
- package/fesm2015/taiga-ui-addon-charts-components-bar-chart.js +8 -12
- package/fesm2015/taiga-ui-addon-charts-components-bar-chart.js.map +1 -1
- package/fesm2015/taiga-ui-addon-charts-components-line-chart.js +12 -14
- package/fesm2015/taiga-ui-addon-charts-components-line-chart.js.map +1 -1
- package/fesm2015/taiga-ui-addon-charts-components-line-days-chart.js +5 -18
- package/fesm2015/taiga-ui-addon-charts-components-line-days-chart.js.map +1 -1
- package/fesm2015/taiga-ui-addon-charts-components-pie-chart.js +12 -10
- package/fesm2015/taiga-ui-addon-charts-components-pie-chart.js.map +1 -1
- package/package.json +3 -3
|
@@ -2,8 +2,8 @@ import { __decorate } from "tslib";
|
|
|
2
2
|
import { Location } from '@angular/common';
|
|
3
3
|
import { ChangeDetectionStrategy, Component, HostListener, Inject, Input, NgZone, Optional, ViewChildren, } from '@angular/core';
|
|
4
4
|
import { tuiDraw } from '@taiga-ui/addon-charts/utils';
|
|
5
|
-
import { EMPTY_QUERY, tuiDefaultProp, TuiIdService, tuiInRange, tuiPure, tuiZoneOptimized, } from '@taiga-ui/cdk';
|
|
6
|
-
import {
|
|
5
|
+
import { EMPTY_QUERY, tuiDefaultProp, TuiIdService, tuiInRange, tuiIsPresent, tuiPure, tuiZoneOptimized, } from '@taiga-ui/cdk';
|
|
6
|
+
import { TuiDriver, TuiHintOptionsDirective } from '@taiga-ui/core';
|
|
7
7
|
import { Subject } from 'rxjs';
|
|
8
8
|
import { distinctUntilChanged } from 'rxjs/operators';
|
|
9
9
|
import { TuiLineChartHintDirective } from './line-chart-hint.directive';
|
|
@@ -13,11 +13,11 @@ import * as i2 from "@angular/common";
|
|
|
13
13
|
import * as i3 from "@taiga-ui/core";
|
|
14
14
|
import * as i4 from "./line-chart-hint.directive";
|
|
15
15
|
export class TuiLineChartComponent {
|
|
16
|
-
constructor(idService, ngZone, locationRef, hintDirective,
|
|
16
|
+
constructor(idService, ngZone, locationRef, hintDirective, hintOptions) {
|
|
17
17
|
this.ngZone = ngZone;
|
|
18
18
|
this.locationRef = locationRef;
|
|
19
19
|
this.hintDirective = hintDirective;
|
|
20
|
-
this.
|
|
20
|
+
this.hintOptions = hintOptions;
|
|
21
21
|
this._hovered$ = new Subject();
|
|
22
22
|
this.drivers = EMPTY_QUERY;
|
|
23
23
|
this.x = 0;
|
|
@@ -40,7 +40,7 @@ export class TuiLineChartComponent {
|
|
|
40
40
|
}
|
|
41
41
|
get hintContent() {
|
|
42
42
|
var _a;
|
|
43
|
-
return ((_a = this.
|
|
43
|
+
return ((_a = this.hintOptions) === null || _a === void 0 ? void 0 : _a.content) || ``;
|
|
44
44
|
}
|
|
45
45
|
get fillId() {
|
|
46
46
|
return `tui-line-chart-${this.autoIdString}`;
|
|
@@ -99,7 +99,9 @@ export class TuiLineChartComponent {
|
|
|
99
99
|
}
|
|
100
100
|
getHovered(hovered) {
|
|
101
101
|
// This checks for NaN and null too since async pipe returns null before first item
|
|
102
|
-
return
|
|
102
|
+
return tuiIsPresent(hovered) && Number.isInteger(hovered)
|
|
103
|
+
? this.value[hovered]
|
|
104
|
+
: null;
|
|
103
105
|
}
|
|
104
106
|
getBottom(y) {
|
|
105
107
|
return (100 * (y - this.y)) / this.height;
|
|
@@ -133,8 +135,8 @@ export class TuiLineChartComponent {
|
|
|
133
135
|
: this.getX(index + 1) - this.getX(index);
|
|
134
136
|
}
|
|
135
137
|
}
|
|
136
|
-
TuiLineChartComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiLineChartComponent, deps: [{ token: TuiIdService }, { token: NgZone }, { token: Location }, { token: TuiLineChartHintDirective, optional: true }, { token:
|
|
137
|
-
TuiLineChartComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: TuiLineChartComponent, selector: "tui-line-chart", inputs: { valueSetter: ["value", "valueSetter"], x: "x", y: "y", width: "width", height: "height", smoothingFactor: "smoothingFactor", xStringify: "xStringify", yStringify: "yStringify", filled: "filled", dots: "dots" }, host: { listeners: { "mouseleave": "onMouseLeave()" } }, viewQueries: [{ propertyName: "drivers", predicate: TuiDriver, descendants: true }], ngImport: i0, template: "<ng-container *tuiLet=\"hovered$ | async as hovered\">\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n focusable=\"false\"\n preserveAspectRatio=\"none\"\n width=\"100%\"\n height=\"100%\"\n class=\"t-svg\"\n [attr.viewBox]=\"viewBox\"\n >\n <defs>\n <linearGradient\n x1=\"0\"\n x2=\"0\"\n y1=\"1\"\n y2=\"0\"\n [attr.id]=\"fillId\"\n >\n <stop\n stop-color=\"currentColor\"\n offset=\"0%\"\n stop-opacity=\"0.5\"\n />\n <stop\n stop-color=\"currentColor\"\n offset=\"100%\"\n stop-opacity=\"0\"\n />\n </linearGradient>\n </defs>\n <path\n stroke=\"none\"\n [attr.fill]=\"fill\"\n [attr.d]=\"fillD\"\n />\n <path\n fill=\"none\"\n stroke=\"currentColor\"\n vector-effect=\"non-scaling-stroke\"\n stroke-width=\"2\"\n [attr.d]=\"d\"\n />\n </svg>\n <ng-container *ngIf=\"dots\">\n <div\n *ngFor=\"let point of value\"\n class=\"t-dot\"\n [style.left.%]=\"getLeft(point[0])\"\n [style.bottom.%]=\"getBottom(point[1])\"\n ></div>\n </ng-container>\n <ng-container *ngIf=\"hasHints\">\n <ng-container *ngFor=\"let point of value; let index = index\">\n <!-- TODO: Fix hint type -->\n <div\n *ngIf=\"value.length > 1 || dots\"\n tuiHintDirection=\"top\"\n class=\"t-column\"\n [class.t-column_hovered]=\"hovered === index\"\n [class.t-column_hint_hovered]=\"drivers.get(index) | async\"\n [tuiHintHost]=\"hintHost\"\n [tuiHint]=\"$any(hintDirective?.hint || hintContent)\"\n [tuiHintContext]=\"getContentContext(point, index)\"\n [
|
|
138
|
+
TuiLineChartComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiLineChartComponent, deps: [{ token: TuiIdService }, { token: NgZone }, { token: Location }, { token: TuiLineChartHintDirective, optional: true }, { token: TuiHintOptionsDirective, optional: true }], target: i0.ɵɵFactoryTarget.Component });
|
|
139
|
+
TuiLineChartComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: TuiLineChartComponent, selector: "tui-line-chart", inputs: { valueSetter: ["value", "valueSetter"], x: "x", y: "y", width: "width", height: "height", smoothingFactor: "smoothingFactor", xStringify: "xStringify", yStringify: "yStringify", filled: "filled", dots: "dots" }, host: { listeners: { "mouseleave": "onMouseLeave()" } }, viewQueries: [{ propertyName: "drivers", predicate: TuiDriver, descendants: true }], ngImport: i0, template: "<ng-container *tuiLet=\"hovered$ | async as hovered\">\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n focusable=\"false\"\n preserveAspectRatio=\"none\"\n width=\"100%\"\n height=\"100%\"\n class=\"t-svg\"\n [attr.viewBox]=\"viewBox\"\n >\n <defs>\n <linearGradient\n x1=\"0\"\n x2=\"0\"\n y1=\"1\"\n y2=\"0\"\n [attr.id]=\"fillId\"\n >\n <stop\n stop-color=\"currentColor\"\n offset=\"0%\"\n stop-opacity=\"0.5\"\n />\n <stop\n stop-color=\"currentColor\"\n offset=\"100%\"\n stop-opacity=\"0\"\n />\n </linearGradient>\n </defs>\n <path\n stroke=\"none\"\n [attr.fill]=\"fill\"\n [attr.d]=\"fillD\"\n />\n <path\n fill=\"none\"\n stroke=\"currentColor\"\n vector-effect=\"non-scaling-stroke\"\n stroke-width=\"2\"\n [attr.d]=\"d\"\n />\n </svg>\n <ng-container *ngIf=\"dots\">\n <div\n *ngFor=\"let point of value\"\n class=\"t-dot\"\n [style.left.%]=\"getLeft(point[0])\"\n [style.bottom.%]=\"getBottom(point[1])\"\n ></div>\n </ng-container>\n <ng-container *ngIf=\"hasHints\">\n <ng-container *ngFor=\"let point of value; let index = index\">\n <!-- TODO: Fix hint type -->\n <div\n *ngIf=\"value.length > 1 || dots\"\n tuiHintDirection=\"top\"\n class=\"t-column\"\n [class.t-column_hovered]=\"hovered === index\"\n [class.t-column_hint_hovered]=\"drivers.get(index) | async\"\n [tuiHintHost]=\"hintHost\"\n [tuiHint]=\"$any(hintDirective?.hint || hintContent)\"\n [tuiHintContext]=\"getContentContext(point, index)\"\n [tuiHintDescribe]=\"getHintId(index)\"\n [style.left.%]=\"getLeft(getX(index))\"\n [style.width.%]=\"getWidth(index)\"\n (mouseenter)=\"onMouseEnter(index)\"\n >\n <div\n class=\"t-line t-line_vertical\"\n [style.left.%]=\"getOffset(index)\"\n ></div>\n <div\n #hintHost\n class=\"t-host\"\n [style.left.%]=\"getOffset(index)\"\n [style.bottom.%]=\"getBottom(point[1])\"\n [tuiFocusable]=\"isFocusable\"\n [id]=\"getHintId(index)\"\n ></div>\n </div>\n <div\n *ngIf=\"isFocusable\"\n class=\"t-line t-line_horizontal\"\n [style.bottom.%]=\"getBottom(point[1])\"\n ></div>\n </ng-container>\n </ng-container>\n <ng-container *ngIf=\"getHovered(hovered) as point\">\n <div\n *ngIf=\"xStringify\"\n class=\"t-hint t-hint_x\"\n [style.left.%]=\"getLeft(point[0])\"\n >\n {{ xStringify(point[0]) }}\n </div>\n <div\n *ngIf=\"yStringify\"\n class=\"t-hint t-hint_y\"\n [style.bottom.%]=\"getBottom(point[1])\"\n >\n {{ yStringify(point[1]) }}\n </div>\n </ng-container>\n</ng-container>\n", styles: [":host{display:flex;width:100%;height:100%;pointer-events:none}.t-svg{transform:scaleY(-1)}.t-column{position:absolute;top:0;height:100%;pointer-events:auto}.t-dot{position:absolute;width:.375rem;height:.375rem;border-radius:100%;background:currentColor;margin:-.1875rem;box-shadow:0 0 0 2px #fff}.t-host{position:absolute;left:50%;width:.5rem;height:.5rem;border-radius:100%;opacity:0;background:#fff;margin:-.25rem;box-shadow:0 0 0 2px currentColor,0 .0625rem .1875rem .125rem rgba(0,0,0,.1);outline:none;pointer-events:none}.t-host:focus,.t-column_hovered .t-host,.t-column:hover .t-host,.t-column_hint_hovered .t-host{opacity:1}.t-line{position:absolute;opacity:0;background:var(--tui-base-03)}.t-line_vertical{top:0;bottom:0;left:50%;width:1px}.t-line_horizontal{z-index:-1;width:100%;height:1px}:host[style^=\"z-index: 0\"] .t-column_hovered .t-line,:host:not([style]) .t-column:hover .t-line,:host:not([style]) .t-column_hint_hovered .t-line,:host[style^=\"z-index: 0\"] .t-column_hovered+.t-line,:host:not([style]) .t-column:hover+.t-line,:host:not([style]) .t-column_hint_hovered+.t-line{opacity:1}.t-hint{box-shadow:0 .25rem 1.5rem rgba(0,0,0,.12);position:absolute;font:var(--tui-font-text-xs);height:1.25rem;line-height:1.25rem;margin-bottom:-.625rem;padding:0 .375rem;white-space:nowrap;color:var(--tui-base-09);background:var(--tui-base-01);transform:translate(-50%)}.t-hint_x{bottom:0}.t-hint_y{left:0}\n"], directives: [{ type: i1.TuiLetDirective, selector: "[tuiLet]", inputs: ["tuiLet"] }, { type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i3.TuiHintDirective, selector: "[tuiHint]:not(ng-container)", inputs: ["tuiHint", "tuiHintContext", "tuiHintAppearance"] }, { type: i3.TuiHintDriverDirective, selector: "[tuiHint]" }, { type: i3.TuiHintHoverDirective, selector: "[tuiHint]:not(ng-container)", inputs: ["tuiHintShowDelay", "tuiHintHideDelay"] }, { type: i3.TuiHintPositionDirective, selector: "[tuiHint]:not([tuiHintCustomPosition])", inputs: ["tuiHintDirection"] }, { type: i3.TuiHintHostDirective, selector: "[tuiHint][tuiHintHost]", inputs: ["tuiHintHost"] }, { type: i3.TuiHintDescribeDirective, selector: "[tuiHintDescribe]", inputs: ["tuiHintDescribe"] }, { type: i1.TuiFocusableDirective, selector: "[tuiFocusable]", inputs: ["tuiFocusable"] }], pipes: { "async": i2.AsyncPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
138
140
|
__decorate([
|
|
139
141
|
tuiDefaultProp()
|
|
140
142
|
], TuiLineChartComponent.prototype, "valueSetter", null);
|
|
@@ -178,7 +180,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
|
|
|
178
180
|
templateUrl: `./line-chart.template.html`,
|
|
179
181
|
styleUrls: [`./line-chart.style.less`],
|
|
180
182
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
181
|
-
viewProviders: [TUI_HINT_CONTROLLER_OPTIONS],
|
|
182
183
|
}]
|
|
183
184
|
}], ctorParameters: function () { return [{ type: i1.TuiIdService, decorators: [{
|
|
184
185
|
type: Inject,
|
|
@@ -194,11 +195,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
|
|
|
194
195
|
}, {
|
|
195
196
|
type: Inject,
|
|
196
197
|
args: [TuiLineChartHintDirective]
|
|
197
|
-
}] }, { type: i3.
|
|
198
|
+
}] }, { type: i3.TuiHintOptionsDirective, decorators: [{
|
|
198
199
|
type: Optional
|
|
199
200
|
}, {
|
|
200
201
|
type: Inject,
|
|
201
|
-
args: [
|
|
202
|
+
args: [TuiHintOptionsDirective]
|
|
202
203
|
}] }]; }, propDecorators: { drivers: [{
|
|
203
204
|
type: ViewChildren,
|
|
204
205
|
args: [TuiDriver]
|
|
@@ -227,4 +228,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
|
|
|
227
228
|
type: HostListener,
|
|
228
229
|
args: [`mouseleave`]
|
|
229
230
|
}], getD: [] } });
|
|
230
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGluZS1jaGFydC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hZGRvbi1jaGFydHMvY29tcG9uZW50cy9saW5lLWNoYXJ0L2xpbmUtY2hhcnQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYWRkb24tY2hhcnRzL2NvbXBvbmVudHMvbGluZS1jaGFydC9saW5lLWNoYXJ0LnRlbXBsYXRlLmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUN6QyxPQUFPLEVBQ0gsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxZQUFZLEVBQ1osTUFBTSxFQUNOLEtBQUssRUFDTCxNQUFNLEVBQ04sUUFBUSxFQUVSLFlBQVksR0FDZixNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQUMsT0FBTyxFQUFDLE1BQU0sOEJBQThCLENBQUM7QUFDckQsT0FBTyxFQUNILFdBQVcsRUFDWCxjQUFjLEVBQ2QsWUFBWSxFQUNaLFVBQVUsRUFDVixPQUFPLEVBRVAsZ0JBQWdCLEdBQ25CLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFDSCwyQkFBMkIsRUFDM0IsU0FBUyxFQUNULDBCQUEwQixHQUU3QixNQUFNLGdCQUFnQixDQUFDO0FBRXhCLE9BQU8sRUFBYSxPQUFPLEVBQUMsTUFBTSxNQUFNLENBQUM7QUFDekMsT0FBTyxFQUFDLG9CQUFvQixFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFFcEQsT0FBTyxFQUFDLHlCQUF5QixFQUFDLE1BQU0sNkJBQTZCLENBQUM7Ozs7OztBQVN0RSxNQUFNLE9BQU8scUJBQXFCO0lBdUQ5QixZQUMwQixTQUF1QixFQUNaLE1BQWMsRUFDWixXQUFxQixFQUcvQyxhQUErQyxFQUcvQyxjQUFpRDtRQVB6QixXQUFNLEdBQU4sTUFBTSxDQUFRO1FBQ1osZ0JBQVcsR0FBWCxXQUFX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QUFJIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtMb2NhdGlvbn0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7XG4gICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gICAgQ29tcG9uZW50LFxuICAgIEhvc3RMaXN0ZW5lcixcbiAgICBJbmplY3QsXG4gICAgSW5wdXQsXG4gICAgTmdab25lLFxuICAgIE9wdGlvbmFsLFxuICAgIFF1ZXJ5TGlzdCxcbiAgICBWaWV3Q2hpbGRyZW4sXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtUdWlMaW5lQ2hhcnRIaW50Q29udGV4dH0gZnJvbSAnQHRhaWdhLXVpL2FkZG9uLWNoYXJ0cy9pbnRlcmZhY2VzJztcbmltcG9ydCB7dHVpRHJhd30gZnJvbSAnQHRhaWdhLXVpL2FkZG9uLWNoYXJ0cy91dGlscyc7XG5pbXBvcnQge1xuICAgIEVNUFRZX1FVRVJZLFxuICAgIHR1aURlZmF1bHRQcm9wLFxuICAgIFR1aUlkU2VydmljZSxcbiAgICB0dWlJblJhbmdlLFxuICAgIHR1aVB1cmUsXG4gICAgVHVpU3RyaW5nSGFuZGxlcixcbiAgICB0dWlab25lT3B0aW1pemVkLFxufSBmcm9tICdAdGFpZ2EtdWkvY2RrJztcbmltcG9ydCB7XG4gICAgVFVJX0hJTlRfQ09OVFJPTExFUl9PUFRJT05TLFxuICAgIFR1aURyaXZlcixcbiAgICBUdWlIaW50Q29udHJvbGxlckRpcmVjdGl2ZSxcbiAgICBUdWlQb2ludCxcbn0gZnJvbSAnQHRhaWdhLXVpL2NvcmUnO1xuaW1wb3J0IHtQb2x5bW9ycGhldXNDb250ZW50fSBmcm9tICdAdGlua29mZi9uZy1wb2x5bW9ycGhldXMnO1xuaW1wb3J0IHtPYnNlcnZhYmxlLCBTdWJqZWN0fSBmcm9tICdyeGpzJztcbmltcG9ydCB7ZGlzdGluY3RVbnRpbENoYW5nZWR9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHtUdWlMaW5lQ2hhcnRIaW50RGlyZWN0aXZlfSBmcm9tICcuL2xpbmUtY2hhcnQtaGludC5kaXJlY3RpdmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogYHR1aS1saW5lLWNoYXJ0YCxcbiAgICB0ZW1wbGF0ZVVybDogYC4vbGluZS1jaGFydC50ZW1wbGF0ZS5odG1sYCxcbiAgICBzdHlsZVVybHM6IFtgLi9saW5lLWNoYXJ0LnN0eWxlLmxlc3NgXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICB2aWV3UHJvdmlkZXJzOiBbVFVJX0hJTlRfQ09OVFJPTExFUl9PUFRJT05TXSxcbn0pXG5leHBvcnQgY2xhc3MgVHVpTGluZUNoYXJ0Q29tcG9uZW50IHtcbiAgICBwcml2YXRlIHJlYWRvbmx5IF9ob3ZlcmVkJCA9IG5ldyBTdWJqZWN0PG51bWJlcj4oKTtcblxuICAgIHByaXZhdGUgcmVhZG9ubHkgYXV0b0lkU3RyaW5nOiBzdHJpbmc7XG5cbiAgICBAVmlld0NoaWxkcmVuKFR1aURyaXZlcilcbiAgICByZWFkb25seSBkcml2ZXJzOiBRdWVyeUxpc3Q8T2JzZXJ2YWJsZTxib29sZWFuPj4gPSBFTVBUWV9RVUVSWTtcblxuICAgIEBJbnB1dChgdmFsdWVgKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgc2V0IHZhbHVlU2V0dGVyKHZhbHVlOiByZWFkb25seSBUdWlQb2ludFtdKSB7XG4gICAgICAgIHRoaXMudmFsdWUgPSB2YWx1ZS5maWx0ZXIoaXRlbSA9PiAhaXRlbS5zb21lKGlzTmFOKSk7XG4gICAgfVxuXG4gICAgQElucHV0KClcbiAgICBAdHVpRGVmYXVsdFByb3AoKVxuICAgIHggPSAwO1xuXG4gICAgQElucHV0KClcbiAgICBAdHVpRGVmYXVsdFByb3AoKVxuICAgIHkgPSAwO1xuXG4gICAgQElucHV0KClcbiAgICBAdHVpRGVmYXVsdFByb3AoKVxuICAgIHdpZHRoID0gMDtcblxuICAgIEBJbnB1dCgpXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICBoZWlnaHQgPSAwO1xuXG4gICAgQElucHV0KClcbiAgICBAdHVpRGVmYXVsdFByb3AoXG4gICAgICAgIChzbW9vdGhpbmdGYWN0b3I6IG51bWJlcikgPT4gdHVpSW5SYW5nZShzbW9vdGhpbmdGYWN0b3IsIDAsIDEwMCksXG4gICAgICAgIGBzbW9vdGhpbmdGYWN0b3IgbXVzdCBiZSBiZXR3ZWVuIDAgYW5kIDEwMGAsXG4gICAgKVxuICAgIHNtb290aGluZ0ZhY3RvciA9IDA7XG5cbiAgICBASW5wdXQoKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgeFN0cmluZ2lmeTogVHVpU3RyaW5nSGFuZGxlcjxudW1iZXI+IHwgbnVsbCA9IG51bGw7XG5cbiAgICBASW5wdXQoKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgeVN0cmluZ2lmeTogVHVpU3RyaW5nSGFuZGxlcjxudW1iZXI+IHwgbnVsbCA9IG51bGw7XG5cbiAgICBASW5wdXQoKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgZmlsbGVkID0gZmFsc2U7XG5cbiAgICBASW5wdXQoKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgZG90cyA9IGZhbHNlO1xuXG4gICAgdmFsdWU6IHJlYWRvbmx5IFR1aVBvaW50W10gPSBbXTtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBASW5qZWN0KFR1aUlkU2VydmljZSkgaWRTZXJ2aWNlOiBUdWlJZFNlcnZpY2UsXG4gICAgICAgIEBJbmplY3QoTmdab25lKSBwcml2YXRlIHJlYWRvbmx5IG5nWm9uZTogTmdab25lLFxuICAgICAgICBASW5qZWN0KExvY2F0aW9uKSBwcml2YXRlIHJlYWRvbmx5IGxvY2F0aW9uUmVmOiBMb2NhdGlvbixcbiAgICAgICAgQE9wdGlvbmFsKClcbiAgICAgICAgQEluamVjdChUdWlMaW5lQ2hhcnRIaW50RGlyZWN0aXZlKVxuICAgICAgICByZWFkb25seSBoaW50RGlyZWN0aXZlOiBUdWlMaW5lQ2hhcnRIaW50RGlyZWN0aXZlIHwgbnVsbCxcbiAgICAgICAgQE9wdGlvbmFsKClcbiAgICAgICAgQEluamVjdChUdWlIaW50Q29udHJvbGxlckRpcmVjdGl2ZSlcbiAgICAgICAgcmVhZG9ubHkgaGludENvbnRyb2xsZXI6IFR1aUhpbnRDb250cm9sbGVyRGlyZWN0aXZlIHwgbnVsbCxcbiAgICApIHtcbiAgICAgICAgdGhpcy5hdXRvSWRTdHJpbmcgPSBpZFNlcnZpY2UuZ2VuZXJhdGUoKTtcbiAgICB9XG5cbiAgICBAdHVpUHVyZVxuICAgIGdldCBob3ZlcmVkJCgpOiBPYnNlcnZhYmxlPG51bWJlcj4ge1xuICAgICAgICByZXR1cm4gdGhpcy5faG92ZXJlZCQucGlwZShkaXN0aW5jdFVudGlsQ2hhbmdlZCgpLCB0dWlab25lT3B0aW1pemVkKHRoaXMubmdab25lKSk7XG4gICAgfVxuXG4gICAgZ2V0IGhpbnRDb250ZW50KCk6IFBvbHltb3JwaGV1c0NvbnRlbnQ8VHVpTGluZUNoYXJ0SGludENvbnRleHQ8VHVpUG9pbnQ+PiB7XG4gICAgICAgIHJldHVybiB0aGlzLmhpbnRDb250cm9sbGVyPy5jb250ZW50IHx8IGBgO1xuICAgIH1cblxuICAgIGdldCBmaWxsSWQoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIGB0dWktbGluZS1jaGFydC0ke3RoaXMuYXV0b0lkU3RyaW5nfWA7XG4gICAgfVxuXG4gICAgZ2V0IGZpbGwoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZmlsbGVkXG4gICAgICAgICAgICA/IGB1cmwoJHt0aGlzLmxvY2F0aW9uUmVmLnByZXBhcmVFeHRlcm5hbFVybCh0aGlzLmxvY2F0aW9uUmVmLnBhdGgoKSl9IyR7XG4gICAgICAgICAgICAgICAgICB0aGlzLmZpbGxJZFxuICAgICAgICAgICAgICB9KWBcbiAgICAgICAgICAgIDogYG5vbmVgO1xuICAgIH1cblxuICAgIGdldCB2aWV3Qm94KCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiBgJHt0aGlzLnh9ICR7dGhpcy55fSAke3RoaXMud2lkdGh9ICR7dGhpcy5oZWlnaHR9YDtcbiAgICB9XG5cbiAgICBnZXQgZCgpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gdGhpcy5nZXREKHRoaXMudmFsdWUsIHRoaXMuc21vb3RoaW5nRmFjdG9yKTtcbiAgICB9XG5cbiAgICBnZXQgZmlsbEQoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIHRoaXMudmFsdWUubGVuZ3RoXG4gICAgICAgICAgICA/IGAke3RoaXMuZH1WICR7dGhpcy55fSBIICR7dGhpcy52YWx1ZVswXVswXX0gViAke3RoaXMudmFsdWVbMF1bMV19YFxuICAgICAgICAgICAgOiB0aGlzLmQ7XG4gICAgfVxuXG4gICAgZ2V0IGlzRm9jdXNhYmxlKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gIXRoaXMuaGludERpcmVjdGl2ZSAmJiB0aGlzLmhhc0hpbnRzO1xuICAgIH1cblxuICAgIGdldCBoYXNIaW50cygpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgICEhdGhpcy54U3RyaW5naWZ5IHx8XG4gICAgICAgICAgICAhIXRoaXMueVN0cmluZ2lmeSB8fFxuICAgICAgICAgICAgISF0aGlzLmhpbnREaXJlY3RpdmU/LmhpbnQgfHxcbiAgICAgICAgICAgICEhdGhpcy5oaW50Q29udGVudFxuICAgICAgICApO1xuICAgIH1cblxuICAgIEBIb3N0TGlzdGVuZXIoYG1vdXNlbGVhdmVgKVxuICAgIG9uTW91c2VMZWF2ZSgpOiB2b2lkIHtcbiAgICAgICAgaWYgKCF0aGlzLmhpbnREaXJlY3RpdmUpIHtcbiAgICAgICAgICAgIHRoaXMub25Ib3ZlcmVkKE5hTik7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBnZXRYKGluZGV4OiBudW1iZXIpOiBudW1iZXIge1xuICAgICAgICBpZiAodGhpcy5pc1NpbmdsZVBvaW50KSB7XG4gICAgICAgICAgICByZXR1cm4gdGhpcy52YWx1ZVswXVswXSAvIDI7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gaW5kZXhcbiAgICAgICAgICAgID8gKHRoaXMudmFsdWVbaW5kZXggLSAxXVswXSArIHRoaXMudmFsdWVbaW5kZXhdWzBdKSAvIDJcbiAgICAgICAgICAgIDogMiAqIHRoaXMudmFsdWVbMF1bMF0gLSB0aGlzLmdldFgoMSk7XG4gICAgfVxuXG4gICAgZ2V0V2lkdGgoaW5kZXg6IG51bWJlcik6IG51bWJlciB7XG4gICAgICAgIHJldHVybiAoMTAwICogdGhpcy5jb21wdXRlV2lkdGgoaW5kZXgpKSAvIHRoaXMud2lkdGg7XG4gICAgfVxuXG4gICAgZ2V0SGludElkKGluZGV4OiBudW1iZXIpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gYCR7dGhpcy5hdXRvSWRTdHJpbmd9XyR7aW5kZXh9YDtcbiAgICB9XG5cbiAgICBnZXRDb250ZW50Q29udGV4dChcbiAgICAgICAgJGltcGxpY2l0OiBUdWlQb2ludCxcbiAgICAgICAgaW5kZXg6IG51bWJlcixcbiAgICApOiBUdWlMaW5lQ2hhcnRIaW50Q29udGV4dDxyZWFkb25seSBUdWlQb2ludFtdIHwgVHVpUG9pbnQ+IHtcbiAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgIHRoaXMuaGludERpcmVjdGl2ZT8uZ2V0Q29udGV4dCh0aGlzLnZhbHVlLmluZGV4T2YoJGltcGxpY2l0KSwgdGhpcykgfHwge1xuICAgICAgICAgICAgICAgICRpbXBsaWNpdCxcbiAgICAgICAgICAgICAgICBpbmRleCxcbiAgICAgICAgICAgIH1cbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBnZXRIb3ZlcmVkKGhvdmVyZWQ6IG51bWJlcik6IFR1aVBvaW50IHwgbnVsbCB7XG4gICAgICAgIC8vIFRoaXMgY2hlY2tzIGZvciBOYU4gYW5kIG51bGwgdG9vIHNpbmNlIGFzeW5jIHBpcGUgcmV0dXJucyBudWxsIGJlZm9yZSBmaXJzdCBpdGVtXG4gICAgICAgIHJldHVybiBOdW1iZXIuaXNJbnRlZ2VyKGhvdmVyZWQpID8gdGhpcy52YWx1ZVtob3ZlcmVkXSA6IG51bGw7XG4gICAgfVxuXG4gICAgZ2V0Qm90dG9tKHk6IG51bWJlcik6IG51bWJlciB7XG4gICAgICAgIHJldHVybiAoMTAwICogKHkgLSB0aGlzLnkpKSAvIHRoaXMuaGVpZ2h0O1xuICAgIH1cblxuICAgIGdldExlZnQoeDogbnVtYmVyKTogbnVtYmVyIHtcbiAgICAgICAgcmV0dXJuICgxMDAgKiAoeCAtIHRoaXMueCkpIC8gdGhpcy53aWR0aDtcbiAgICB9XG5cbiAgICBnZXRPZmZzZXQoeDogbnVtYmVyKTogbnVtYmVyIHtcbiAgICAgICAgcmV0dXJuICgxMDAgKiAodGhpcy52YWx1ZVt4XVswXSAtIHRoaXMuZ2V0WCh4KSkpIC8gdGhpcy5jb21wdXRlV2lkdGgoeCk7XG4gICAgfVxuXG4gICAgb25Nb3VzZUVudGVyKGluZGV4OiBudW1iZXIpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuaGludERpcmVjdGl2ZSkge1xuICAgICAgICAgICAgdGhpcy5oaW50RGlyZWN0aXZlLnJhaXNlKGluZGV4LCB0aGlzKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMub25Ib3ZlcmVkKGluZGV4KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIG9uSG92ZXJlZChpbmRleDogbnVtYmVyKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX2hvdmVyZWQkLm5leHQoaW5kZXgpO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0IGlzU2luZ2xlUG9pbnQoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLnZhbHVlLmxlbmd0aCA9PT0gMTtcbiAgICB9XG5cbiAgICBAdHVpUHVyZVxuICAgIHByaXZhdGUgZ2V0RCh2YWx1ZTogcmVhZG9ubHkgVHVpUG9pbnRbXSwgc21vb3RoaW5nRmFjdG9yOiBudW1iZXIpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gdmFsdWUucmVkdWNlKFxuICAgICAgICAgICAgKGQsIHBvaW50LCBpbmRleCkgPT5cbiAgICAgICAgICAgICAgICBpbmRleCA/IGAke2R9ICR7dHVpRHJhdyh2YWx1ZSwgaW5kZXgsIHNtb290aGluZ0ZhY3Rvcil9YCA6IGBNICR7cG9pbnR9YCxcbiAgICAgICAgICAgIGBgLFxuICAgICAgICApO1xuICAgIH1cblxuICAgIHByaXZhdGUgY29tcHV0ZVdpZHRoKGluZGV4OiBudW1iZXIpOiBudW1iZXIge1xuICAgICAgICByZXR1cm4gaW5kZXggPT09IHRoaXMudmFsdWUubGVuZ3RoIC0gMVxuICAgICAgICAgICAgPyAyICogKHRoaXMudmFsdWVbaW5kZXhdWzBdIC0gdGhpcy5nZXRYKGluZGV4KSlcbiAgICAgICAgICAgIDogdGhpcy5nZXRYKGluZGV4ICsgMSkgLSB0aGlzLmdldFgoaW5kZXgpO1xuICAgIH1cbn1cbiIsIjxuZy1jb250YWluZXIgKnR1aUxldD1cImhvdmVyZWQkIHwgYXN5bmMgYXMgaG92ZXJlZFwiPlxuICAgIDxzdmdcbiAgICAgICAgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gICAgICAgIGZvY3VzYWJsZT1cImZhbHNlXCJcbiAgICAgICAgcHJlc2VydmVBc3BlY3RSYXRpbz1cIm5vbmVcIlxuICAgICAgICB3aWR0aD1cIjEwMCVcIlxuICAgICAgICBoZWlnaHQ9XCIxMDAlXCJcbiAgICAgICAgY2xhc3M9XCJ0LXN2Z1wiXG4gICAgICAgIFthdHRyLnZpZXdCb3hdPVwidmlld0JveFwiXG4gICAgPlxuICAgICAgICA8ZGVmcz5cbiAgICAgICAgICAgIDxsaW5lYXJHcmFkaWVudFxuICAgICAgICAgICAgICAgIHgxPVwiMFwiXG4gICAgICAgICAgICAgICAgeDI9XCIwXCJcbiAgICAgICAgICAgICAgICB5MT1cIjFcIlxuICAgICAgICAgICAgICAgIHkyPVwiMFwiXG4gICAgICAgICAgICAgICAgW2F0dHIuaWRdPVwiZmlsbElkXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICA8c3RvcFxuICAgICAgICAgICAgICAgICAgICBzdG9wLWNvbG9yPVwiY3VycmVudENvbG9yXCJcbiAgICAgICAgICAgICAgICAgICAgb2Zmc2V0PVwiMCVcIlxuICAgICAgICAgICAgICAgICAgICBzdG9wLW9wYWNpdHk9XCIwLjVcIlxuICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgPHN0b3BcbiAgICAgICAgICAgICAgICAgICAgc3RvcC1jb2xvcj1cImN1cnJlbnRDb2xvclwiXG4gICAgICAgICAgICAgICAgICAgIG9mZnNldD1cIjEwMCVcIlxuICAgICAgICAgICAgICAgICAgICBzdG9wLW9wYWNpdHk9XCIwXCJcbiAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgPC9saW5lYXJHcmFkaWVudD5cbiAgICAgICAgPC9kZWZzPlxuICAgICAgICA8cGF0aFxuICAgICAgICAgICAgc3Ryb2tlPVwibm9uZVwiXG4gICAgICAgICAgICBbYXR0ci5maWxsXT1cImZpbGxcIlxuICAgICAgICAgICAgW2F0dHIuZF09XCJmaWxsRFwiXG4gICAgICAgIC8+XG4gICAgICAgIDxwYXRoXG4gICAgICAgICAgICBmaWxsPVwibm9uZVwiXG4gICAgICAgICAgICBzdHJva2U9XCJjdXJyZW50Q29sb3JcIlxuICAgICAgICAgICAgdmVjdG9yLWVmZmVjdD1cIm5vbi1zY2FsaW5nLXN0cm9rZVwiXG4gICAgICAgICAgICBzdHJva2Utd2lkdGg9XCIyXCJcbiAgICAgICAgICAgIFthdHRyLmRdPVwiZFwiXG4gICAgICAgIC8+XG4gICAgPC9zdmc+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImRvdHNcIj5cbiAgICAgICAgPGRpdlxuICAgICAgICAgICAgKm5nRm9yPVwibGV0IHBvaW50IG9mIHZhbHVlXCJcbiAgICAgICAgICAgIGNsYXNzPVwidC1kb3RcIlxuICAgICAgICAgICAgW3N0eWxlLmxlZnQuJV09XCJnZXRMZWZ0KHBvaW50WzBdKVwiXG4gICAgICAgICAgICBbc3R5bGUuYm90dG9tLiVdPVwiZ2V0Qm90dG9tKHBvaW50WzFdKVwiXG4gICAgICAgID48L2Rpdj5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiaGFzSGludHNcIj5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgcG9pbnQgb2YgdmFsdWU7IGxldCBpbmRleCA9IGluZGV4XCI+XG4gICAgICAgICAgICA8IS0tIFRPRE86IEZpeCBoaW50IHR5cGUgLS0+XG4gICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgICAgKm5nSWY9XCJ2YWx1ZS5sZW5ndGggPiAxIHx8IGRvdHNcIlxuICAgICAgICAgICAgICAgIHR1aUhpbnREaXJlY3Rpb249XCJ0b3BcIlxuICAgICAgICAgICAgICAgIGNsYXNzPVwidC1jb2x1bW5cIlxuICAgICAgICAgICAgICAgIFtjbGFzcy50LWNvbHVtbl9ob3ZlcmVkXT1cImhvdmVyZWQgPT09IGluZGV4XCJcbiAgICAgICAgICAgICAgICBbY2xhc3MudC1jb2x1bW5faGludF9ob3ZlcmVkXT1cImRyaXZlcnMuZ2V0KGluZGV4KSB8IGFzeW5jXCJcbiAgICAgICAgICAgICAgICBbdHVpSGludEhvc3RdPVwiaGludEhvc3RcIlxuICAgICAgICAgICAgICAgIFt0dWlIaW50XT1cIiRhbnkoaGludERpcmVjdGl2ZT8uaGludCB8fCBoaW50Q29udGVudClcIlxuICAgICAgICAgICAgICAgIFt0dWlIaW50Q29udGV4dF09XCJnZXRDb250ZW50Q29udGV4dChwb2ludCwgaW5kZXgpXCJcbiAgICAgICAgICAgICAgICBbdHVpSGludElkXT1cImdldEhpbnRJZChpbmRleClcIlxuICAgICAgICAgICAgICAgIFtzdHlsZS5sZWZ0LiVdPVwiZ2V0TGVmdChnZXRYKGluZGV4KSlcIlxuICAgICAgICAgICAgICAgIFtzdHlsZS53aWR0aC4lXT1cImdldFdpZHRoKGluZGV4KVwiXG4gICAgICAgICAgICAgICAgKG1vdXNlZW50ZXIpPVwib25Nb3VzZUVudGVyKGluZGV4KVwiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInQtbGluZSB0LWxpbmVfdmVydGljYWxcIlxuICAgICAgICAgICAgICAgICAgICBbc3R5bGUubGVmdC4lXT1cImdldE9mZnNldChpbmRleClcIlxuICAgICAgICAgICAgICAgID48L2Rpdj5cbiAgICAgICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgICAgICAgICNoaW50SG9zdFxuICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInQtaG9zdFwiXG4gICAgICAgICAgICAgICAgICAgIFtzdHlsZS5sZWZ0LiVdPVwiZ2V0T2Zmc2V0KGluZGV4KVwiXG4gICAgICAgICAgICAgICAgICAgIFtzdHlsZS5ib3R0b20uJV09XCJnZXRCb3R0b20ocG9pbnRbMV0pXCJcbiAgICAgICAgICAgICAgICAgICAgW3R1aUZvY3VzYWJsZV09XCJpc0ZvY3VzYWJsZVwiXG4gICAgICAgICAgICAgICAgICAgIFt0dWlEZXNjcmliZWRCeV09XCJnZXRIaW50SWQoaW5kZXgpXCJcbiAgICAgICAgICAgICAgICA+PC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgICAqbmdJZj1cImlzRm9jdXNhYmxlXCJcbiAgICAgICAgICAgICAgICBjbGFzcz1cInQtbGluZSB0LWxpbmVfaG9yaXpvbnRhbFwiXG4gICAgICAgICAgICAgICAgW3N0eWxlLmJvdHRvbS4lXT1cImdldEJvdHRvbShwb2ludFsxXSlcIlxuICAgICAgICAgICAgPjwvZGl2PlxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiZ2V0SG92ZXJlZChob3ZlcmVkKSBhcyBwb2ludFwiPlxuICAgICAgICA8ZGl2XG4gICAgICAgICAgICAqbmdJZj1cInhTdHJpbmdpZnlcIlxuICAgICAgICAgICAgY2xhc3M9XCJ0LWhpbnQgdC1oaW50X3hcIlxuICAgICAgICAgICAgW3N0eWxlLmxlZnQuJV09XCJnZXRMZWZ0KHBvaW50WzBdKVwiXG4gICAgICAgID5cbiAgICAgICAgICAgIHt7IHhTdHJpbmdpZnkocG9pbnRbMF0pIH19XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2XG4gICAgICAgICAgICAqbmdJZj1cInlTdHJpbmdpZnlcIlxuICAgICAgICAgICAgY2xhc3M9XCJ0LWhpbnQgdC1oaW50X3lcIlxuICAgICAgICAgICAgW3N0eWxlLmJvdHRvbS4lXT1cImdldEJvdHRvbShwb2ludFsxXSlcIlxuICAgICAgICA+XG4gICAgICAgICAgICB7eyB5U3RyaW5naWZ5KHBvaW50WzFdKSB9fVxuICAgICAgICA8L2Rpdj5cbiAgICA8L25nLWNvbnRhaW5lcj5cbjwvbmctY29udGFpbmVyPlxuIl19
|
|
231
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGluZS1jaGFydC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hZGRvbi1jaGFydHMvY29tcG9uZW50cy9saW5lLWNoYXJ0L2xpbmUtY2hhcnQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYWRkb24tY2hhcnRzL2NvbXBvbmVudHMvbGluZS1jaGFydC9saW5lLWNoYXJ0LnRlbXBsYXRlLmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUN6QyxPQUFPLEVBQ0gsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxZQUFZLEVBQ1osTUFBTSxFQUNOLEtBQUssRUFDTCxNQUFNLEVBQ04sUUFBUSxFQUVSLFlBQVksR0FDZixNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQUMsT0FBTyxFQUFDLE1BQU0sOEJBQThCLENBQUM7QUFDckQsT0FBTyxFQUNILFdBQVcsRUFDWCxjQUFjLEVBQ2QsWUFBWSxFQUNaLFVBQVUsRUFDVixZQUFZLEVBQ1osT0FBTyxFQUVQLGdCQUFnQixHQUNuQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUMsU0FBUyxFQUFFLHVCQUF1QixFQUFXLE1BQU0sZ0JBQWdCLENBQUM7QUFFNUUsT0FBTyxFQUFhLE9BQU8sRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUN6QyxPQUFPLEVBQUMsb0JBQW9CLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUVwRCxPQUFPLEVBQUMseUJBQXlCLEVBQUMsTUFBTSw2QkFBNkIsQ0FBQzs7Ozs7O0FBUXRFLE1BQU0sT0FBTyxxQkFBcUI7SUF1RDlCLFlBQzBCLFNBQXVCLEVBQ1osTUFBYyxFQUNaLFdBQXFCLEVBRy9DLGFBQStDLEVBRy9DLFdBQTJDO1FBUG5CLFdBQU0sR0FBTixNQUFNLENBQVE7UUFDWixnQkFBVyxHQUFYLFdBQVcsQ0FB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aW9ufSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBDb21wb25lbnQsXG4gICAgSG9zdExpc3RlbmVyLFxuICAgIEluamVjdCxcbiAgICBJbnB1dCxcbiAgICBOZ1pvbmUsXG4gICAgT3B0aW9uYWwsXG4gICAgUXVlcnlMaXN0LFxuICAgIFZpZXdDaGlsZHJlbixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1R1aUxpbmVDaGFydEhpbnRDb250ZXh0fSBmcm9tICdAdGFpZ2EtdWkvYWRkb24tY2hhcnRzL2ludGVyZmFjZXMnO1xuaW1wb3J0IHt0dWlEcmF3fSBmcm9tICdAdGFpZ2EtdWkvYWRkb24tY2hhcnRzL3V0aWxzJztcbmltcG9ydCB7XG4gICAgRU1QVFlfUVVFUlksXG4gICAgdHVpRGVmYXVsdFByb3AsXG4gICAgVHVpSWRTZXJ2aWNlLFxuICAgIHR1aUluUmFuZ2UsXG4gICAgdHVpSXNQcmVzZW50LFxuICAgIHR1aVB1cmUsXG4gICAgVHVpU3RyaW5nSGFuZGxlcixcbiAgICB0dWlab25lT3B0aW1pemVkLFxufSBmcm9tICdAdGFpZ2EtdWkvY2RrJztcbmltcG9ydCB7VHVpRHJpdmVyLCBUdWlIaW50T3B0aW9uc0RpcmVjdGl2ZSwgVHVpUG9pbnR9IGZyb20gJ0B0YWlnYS11aS9jb3JlJztcbmltcG9ydCB7UG9seW1vcnBoZXVzQ29udGVudH0gZnJvbSAnQHRpbmtvZmYvbmctcG9seW1vcnBoZXVzJztcbmltcG9ydCB7T2JzZXJ2YWJsZSwgU3ViamVjdH0gZnJvbSAncnhqcyc7XG5pbXBvcnQge2Rpc3RpbmN0VW50aWxDaGFuZ2VkfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7VHVpTGluZUNoYXJ0SGludERpcmVjdGl2ZX0gZnJvbSAnLi9saW5lLWNoYXJ0LWhpbnQuZGlyZWN0aXZlJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6IGB0dWktbGluZS1jaGFydGAsXG4gICAgdGVtcGxhdGVVcmw6IGAuL2xpbmUtY2hhcnQudGVtcGxhdGUuaHRtbGAsXG4gICAgc3R5bGVVcmxzOiBbYC4vbGluZS1jaGFydC5zdHlsZS5sZXNzYF0sXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIFR1aUxpbmVDaGFydENvbXBvbmVudCB7XG4gICAgcHJpdmF0ZSByZWFkb25seSBfaG92ZXJlZCQgPSBuZXcgU3ViamVjdDxudW1iZXI+KCk7XG5cbiAgICBwcml2YXRlIHJlYWRvbmx5IGF1dG9JZFN0cmluZzogc3RyaW5nO1xuXG4gICAgQFZpZXdDaGlsZHJlbihUdWlEcml2ZXIpXG4gICAgcmVhZG9ubHkgZHJpdmVyczogUXVlcnlMaXN0PE9ic2VydmFibGU8Ym9vbGVhbj4+ID0gRU1QVFlfUVVFUlk7XG5cbiAgICBASW5wdXQoYHZhbHVlYClcbiAgICBAdHVpRGVmYXVsdFByb3AoKVxuICAgIHNldCB2YWx1ZVNldHRlcih2YWx1ZTogcmVhZG9ubHkgVHVpUG9pbnRbXSkge1xuICAgICAgICB0aGlzLnZhbHVlID0gdmFsdWUuZmlsdGVyKGl0ZW0gPT4gIWl0ZW0uc29tZShpc05hTikpO1xuICAgIH1cblxuICAgIEBJbnB1dCgpXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICB4ID0gMDtcblxuICAgIEBJbnB1dCgpXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICB5ID0gMDtcblxuICAgIEBJbnB1dCgpXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICB3aWR0aCA9IDA7XG5cbiAgICBASW5wdXQoKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgaGVpZ2h0ID0gMDtcblxuICAgIEBJbnB1dCgpXG4gICAgQHR1aURlZmF1bHRQcm9wKFxuICAgICAgICAoc21vb3RoaW5nRmFjdG9yOiBudW1iZXIpID0+IHR1aUluUmFuZ2Uoc21vb3RoaW5nRmFjdG9yLCAwLCAxMDApLFxuICAgICAgICBgc21vb3RoaW5nRmFjdG9yIG11c3QgYmUgYmV0d2VlbiAwIGFuZCAxMDBgLFxuICAgIClcbiAgICBzbW9vdGhpbmdGYWN0b3IgPSAwO1xuXG4gICAgQElucHV0KClcbiAgICBAdHVpRGVmYXVsdFByb3AoKVxuICAgIHhTdHJpbmdpZnk6IFR1aVN0cmluZ0hhbmRsZXI8bnVtYmVyPiB8IG51bGwgPSBudWxsO1xuXG4gICAgQElucHV0KClcbiAgICBAdHVpRGVmYXVsdFByb3AoKVxuICAgIHlTdHJpbmdpZnk6IFR1aVN0cmluZ0hhbmRsZXI8bnVtYmVyPiB8IG51bGwgPSBudWxsO1xuXG4gICAgQElucHV0KClcbiAgICBAdHVpRGVmYXVsdFByb3AoKVxuICAgIGZpbGxlZCA9IGZhbHNlO1xuXG4gICAgQElucHV0KClcbiAgICBAdHVpRGVmYXVsdFByb3AoKVxuICAgIGRvdHMgPSBmYWxzZTtcblxuICAgIHZhbHVlOiByZWFkb25seSBUdWlQb2ludFtdID0gW107XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgQEluamVjdChUdWlJZFNlcnZpY2UpIGlkU2VydmljZTogVHVpSWRTZXJ2aWNlLFxuICAgICAgICBASW5qZWN0KE5nWm9uZSkgcHJpdmF0ZSByZWFkb25seSBuZ1pvbmU6IE5nWm9uZSxcbiAgICAgICAgQEluamVjdChMb2NhdGlvbikgcHJpdmF0ZSByZWFkb25seSBsb2NhdGlvblJlZjogTG9jYXRpb24sXG4gICAgICAgIEBPcHRpb25hbCgpXG4gICAgICAgIEBJbmplY3QoVHVpTGluZUNoYXJ0SGludERpcmVjdGl2ZSlcbiAgICAgICAgcmVhZG9ubHkgaGludERpcmVjdGl2ZTogVHVpTGluZUNoYXJ0SGludERpcmVjdGl2ZSB8IG51bGwsXG4gICAgICAgIEBPcHRpb25hbCgpXG4gICAgICAgIEBJbmplY3QoVHVpSGludE9wdGlvbnNEaXJlY3RpdmUpXG4gICAgICAgIHJlYWRvbmx5IGhpbnRPcHRpb25zOiBUdWlIaW50T3B0aW9uc0RpcmVjdGl2ZSB8IG51bGwsXG4gICAgKSB7XG4gICAgICAgIHRoaXMuYXV0b0lkU3RyaW5nID0gaWRTZXJ2aWNlLmdlbmVyYXRlKCk7XG4gICAgfVxuXG4gICAgQHR1aVB1cmVcbiAgICBnZXQgaG92ZXJlZCQoKTogT2JzZXJ2YWJsZTxudW1iZXI+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2hvdmVyZWQkLnBpcGUoZGlzdGluY3RVbnRpbENoYW5nZWQoKSwgdHVpWm9uZU9wdGltaXplZCh0aGlzLm5nWm9uZSkpO1xuICAgIH1cblxuICAgIGdldCBoaW50Q29udGVudCgpOiBQb2x5bW9ycGhldXNDb250ZW50PFR1aUxpbmVDaGFydEhpbnRDb250ZXh0PFR1aVBvaW50Pj4ge1xuICAgICAgICByZXR1cm4gdGhpcy5oaW50T3B0aW9ucz8uY29udGVudCB8fCBgYDtcbiAgICB9XG5cbiAgICBnZXQgZmlsbElkKCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiBgdHVpLWxpbmUtY2hhcnQtJHt0aGlzLmF1dG9JZFN0cmluZ31gO1xuICAgIH1cblxuICAgIGdldCBmaWxsKCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiB0aGlzLmZpbGxlZFxuICAgICAgICAgICAgPyBgdXJsKCR7dGhpcy5sb2NhdGlvblJlZi5wcmVwYXJlRXh0ZXJuYWxVcmwodGhpcy5sb2NhdGlvblJlZi5wYXRoKCkpfSMke1xuICAgICAgICAgICAgICAgICAgdGhpcy5maWxsSWRcbiAgICAgICAgICAgICAgfSlgXG4gICAgICAgICAgICA6IGBub25lYDtcbiAgICB9XG5cbiAgICBnZXQgdmlld0JveCgpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gYCR7dGhpcy54fSAke3RoaXMueX0gJHt0aGlzLndpZHRofSAke3RoaXMuaGVpZ2h0fWA7XG4gICAgfVxuXG4gICAgZ2V0IGQoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZ2V0RCh0aGlzLnZhbHVlLCB0aGlzLnNtb290aGluZ0ZhY3Rvcik7XG4gICAgfVxuXG4gICAgZ2V0IGZpbGxEKCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiB0aGlzLnZhbHVlLmxlbmd0aFxuICAgICAgICAgICAgPyBgJHt0aGlzLmR9ViAke3RoaXMueX0gSCAke3RoaXMudmFsdWVbMF1bMF19IFYgJHt0aGlzLnZhbHVlWzBdWzFdfWBcbiAgICAgICAgICAgIDogdGhpcy5kO1xuICAgIH1cblxuICAgIGdldCBpc0ZvY3VzYWJsZSgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuICF0aGlzLmhpbnREaXJlY3RpdmUgJiYgdGhpcy5oYXNIaW50cztcbiAgICB9XG5cbiAgICBnZXQgaGFzSGludHMoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICAhIXRoaXMueFN0cmluZ2lmeSB8fFxuICAgICAgICAgICAgISF0aGlzLnlTdHJpbmdpZnkgfHxcbiAgICAgICAgICAgICEhdGhpcy5oaW50RGlyZWN0aXZlPy5oaW50IHx8XG4gICAgICAgICAgICAhIXRoaXMuaGludENvbnRlbnRcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBASG9zdExpc3RlbmVyKGBtb3VzZWxlYXZlYClcbiAgICBvbk1vdXNlTGVhdmUoKTogdm9pZCB7XG4gICAgICAgIGlmICghdGhpcy5oaW50RGlyZWN0aXZlKSB7XG4gICAgICAgICAgICB0aGlzLm9uSG92ZXJlZChOYU4pO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgZ2V0WChpbmRleDogbnVtYmVyKTogbnVtYmVyIHtcbiAgICAgICAgaWYgKHRoaXMuaXNTaW5nbGVQb2ludCkge1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMudmFsdWVbMF1bMF0gLyAyO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIGluZGV4XG4gICAgICAgICAgICA/ICh0aGlzLnZhbHVlW2luZGV4IC0gMV1bMF0gKyB0aGlzLnZhbHVlW2luZGV4XVswXSkgLyAyXG4gICAgICAgICAgICA6IDIgKiB0aGlzLnZhbHVlWzBdWzBdIC0gdGhpcy5nZXRYKDEpO1xuICAgIH1cblxuICAgIGdldFdpZHRoKGluZGV4OiBudW1iZXIpOiBudW1iZXIge1xuICAgICAgICByZXR1cm4gKDEwMCAqIHRoaXMuY29tcHV0ZVdpZHRoKGluZGV4KSkgLyB0aGlzLndpZHRoO1xuICAgIH1cblxuICAgIGdldEhpbnRJZChpbmRleDogbnVtYmVyKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIGAke3RoaXMuYXV0b0lkU3RyaW5nfV8ke2luZGV4fWA7XG4gICAgfVxuXG4gICAgZ2V0Q29udGVudENvbnRleHQoXG4gICAgICAgICRpbXBsaWNpdDogVHVpUG9pbnQsXG4gICAgICAgIGluZGV4OiBudW1iZXIsXG4gICAgKTogVHVpTGluZUNoYXJ0SGludENvbnRleHQ8cmVhZG9ubHkgVHVpUG9pbnRbXSB8IFR1aVBvaW50PiB7XG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICB0aGlzLmhpbnREaXJlY3RpdmU/LmdldENvbnRleHQodGhpcy52YWx1ZS5pbmRleE9mKCRpbXBsaWNpdCksIHRoaXMpIHx8IHtcbiAgICAgICAgICAgICAgICAkaW1wbGljaXQsXG4gICAgICAgICAgICAgICAgaW5kZXgsXG4gICAgICAgICAgICB9XG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgZ2V0SG92ZXJlZChob3ZlcmVkOiBudW1iZXIgfCBudWxsKTogVHVpUG9pbnQgfCBudWxsIHtcbiAgICAgICAgLy8gVGhpcyBjaGVja3MgZm9yIE5hTiBhbmQgbnVsbCB0b28gc2luY2UgYXN5bmMgcGlwZSByZXR1cm5zIG51bGwgYmVmb3JlIGZpcnN0IGl0ZW1cbiAgICAgICAgcmV0dXJuIHR1aUlzUHJlc2VudChob3ZlcmVkKSAmJiBOdW1iZXIuaXNJbnRlZ2VyKGhvdmVyZWQpXG4gICAgICAgICAgICA/IHRoaXMudmFsdWVbaG92ZXJlZF1cbiAgICAgICAgICAgIDogbnVsbDtcbiAgICB9XG5cbiAgICBnZXRCb3R0b20oeTogbnVtYmVyKTogbnVtYmVyIHtcbiAgICAgICAgcmV0dXJuICgxMDAgKiAoeSAtIHRoaXMueSkpIC8gdGhpcy5oZWlnaHQ7XG4gICAgfVxuXG4gICAgZ2V0TGVmdCh4OiBudW1iZXIpOiBudW1iZXIge1xuICAgICAgICByZXR1cm4gKDEwMCAqICh4IC0gdGhpcy54KSkgLyB0aGlzLndpZHRoO1xuICAgIH1cblxuICAgIGdldE9mZnNldCh4OiBudW1iZXIpOiBudW1iZXIge1xuICAgICAgICByZXR1cm4gKDEwMCAqICh0aGlzLnZhbHVlW3hdWzBdIC0gdGhpcy5nZXRYKHgpKSkgLyB0aGlzLmNvbXB1dGVXaWR0aCh4KTtcbiAgICB9XG5cbiAgICBvbk1vdXNlRW50ZXIoaW5kZXg6IG51bWJlcik6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5oaW50RGlyZWN0aXZlKSB7XG4gICAgICAgICAgICB0aGlzLmhpbnREaXJlY3RpdmUucmFpc2UoaW5kZXgsIHRoaXMpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5vbkhvdmVyZWQoaW5kZXgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgb25Ib3ZlcmVkKGluZGV4OiBudW1iZXIpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5faG92ZXJlZCQubmV4dChpbmRleCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXQgaXNTaW5nbGVQb2ludCgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMudmFsdWUubGVuZ3RoID09PSAxO1xuICAgIH1cblxuICAgIEB0dWlQdXJlXG4gICAgcHJpdmF0ZSBnZXREKHZhbHVlOiByZWFkb25seSBUdWlQb2ludFtdLCBzbW9vdGhpbmdGYWN0b3I6IG51bWJlcik6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiB2YWx1ZS5yZWR1Y2UoXG4gICAgICAgICAgICAoZCwgcG9pbnQsIGluZGV4KSA9PlxuICAgICAgICAgICAgICAgIGluZGV4ID8gYCR7ZH0gJHt0dWlEcmF3KHZhbHVlLCBpbmRleCwgc21vb3RoaW5nRmFjdG9yKX1gIDogYE0gJHtwb2ludH1gLFxuICAgICAgICAgICAgYGAsXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBjb21wdXRlV2lkdGgoaW5kZXg6IG51bWJlcik6IG51bWJlciB7XG4gICAgICAgIHJldHVybiBpbmRleCA9PT0gdGhpcy52YWx1ZS5sZW5ndGggLSAxXG4gICAgICAgICAgICA/IDIgKiAodGhpcy52YWx1ZVtpbmRleF1bMF0gLSB0aGlzLmdldFgoaW5kZXgpKVxuICAgICAgICAgICAgOiB0aGlzLmdldFgoaW5kZXggKyAxKSAtIHRoaXMuZ2V0WChpbmRleCk7XG4gICAgfVxufVxuIiwiPG5nLWNvbnRhaW5lciAqdHVpTGV0PVwiaG92ZXJlZCQgfCBhc3luYyBhcyBob3ZlcmVkXCI+XG4gICAgPHN2Z1xuICAgICAgICB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgICAgICAgZm9jdXNhYmxlPVwiZmFsc2VcIlxuICAgICAgICBwcmVzZXJ2ZUFzcGVjdFJhdGlvPVwibm9uZVwiXG4gICAgICAgIHdpZHRoPVwiMTAwJVwiXG4gICAgICAgIGhlaWdodD1cIjEwMCVcIlxuICAgICAgICBjbGFzcz1cInQtc3ZnXCJcbiAgICAgICAgW2F0dHIudmlld0JveF09XCJ2aWV3Qm94XCJcbiAgICA+XG4gICAgICAgIDxkZWZzPlxuICAgICAgICAgICAgPGxpbmVhckdyYWRpZW50XG4gICAgICAgICAgICAgICAgeDE9XCIwXCJcbiAgICAgICAgICAgICAgICB4Mj1cIjBcIlxuICAgICAgICAgICAgICAgIHkxPVwiMVwiXG4gICAgICAgICAgICAgICAgeTI9XCIwXCJcbiAgICAgICAgICAgICAgICBbYXR0ci5pZF09XCJmaWxsSWRcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIDxzdG9wXG4gICAgICAgICAgICAgICAgICAgIHN0b3AtY29sb3I9XCJjdXJyZW50Q29sb3JcIlxuICAgICAgICAgICAgICAgICAgICBvZmZzZXQ9XCIwJVwiXG4gICAgICAgICAgICAgICAgICAgIHN0b3Atb3BhY2l0eT1cIjAuNVwiXG4gICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICA8c3RvcFxuICAgICAgICAgICAgICAgICAgICBzdG9wLWNvbG9yPVwiY3VycmVudENvbG9yXCJcbiAgICAgICAgICAgICAgICAgICAgb2Zmc2V0PVwiMTAwJVwiXG4gICAgICAgICAgICAgICAgICAgIHN0b3Atb3BhY2l0eT1cIjBcIlxuICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICA8L2xpbmVhckdyYWRpZW50PlxuICAgICAgICA8L2RlZnM+XG4gICAgICAgIDxwYXRoXG4gICAgICAgICAgICBzdHJva2U9XCJub25lXCJcbiAgICAgICAgICAgIFthdHRyLmZpbGxdPVwiZmlsbFwiXG4gICAgICAgICAgICBbYXR0ci5kXT1cImZpbGxEXCJcbiAgICAgICAgLz5cbiAgICAgICAgPHBhdGhcbiAgICAgICAgICAgIGZpbGw9XCJub25lXCJcbiAgICAgICAgICAgIHN0cm9rZT1cImN1cnJlbnRDb2xvclwiXG4gICAgICAgICAgICB2ZWN0b3ItZWZmZWN0PVwibm9uLXNjYWxpbmctc3Ryb2tlXCJcbiAgICAgICAgICAgIHN0cm9rZS13aWR0aD1cIjJcIlxuICAgICAgICAgICAgW2F0dHIuZF09XCJkXCJcbiAgICAgICAgLz5cbiAgICA8L3N2Zz5cbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiZG90c1wiPlxuICAgICAgICA8ZGl2XG4gICAgICAgICAgICAqbmdGb3I9XCJsZXQgcG9pbnQgb2YgdmFsdWVcIlxuICAgICAgICAgICAgY2xhc3M9XCJ0LWRvdFwiXG4gICAgICAgICAgICBbc3R5bGUubGVmdC4lXT1cImdldExlZnQocG9pbnRbMF0pXCJcbiAgICAgICAgICAgIFtzdHlsZS5ib3R0b20uJV09XCJnZXRCb3R0b20ocG9pbnRbMV0pXCJcbiAgICAgICAgPjwvZGl2PlxuICAgIDwvbmctY29udGFpbmVyPlxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJoYXNIaW50c1wiPlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBwb2ludCBvZiB2YWx1ZTsgbGV0IGluZGV4ID0gaW5kZXhcIj5cbiAgICAgICAgICAgIDwhLS0gVE9ETzogRml4IGhpbnQgdHlwZSAtLT5cbiAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgICAqbmdJZj1cInZhbHVlLmxlbmd0aCA+IDEgfHwgZG90c1wiXG4gICAgICAgICAgICAgICAgdHVpSGludERpcmVjdGlvbj1cInRvcFwiXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJ0LWNvbHVtblwiXG4gICAgICAgICAgICAgICAgW2NsYXNzLnQtY29sdW1uX2hvdmVyZWRdPVwiaG92ZXJlZCA9PT0gaW5kZXhcIlxuICAgICAgICAgICAgICAgIFtjbGFzcy50LWNvbHVtbl9oaW50X2hvdmVyZWRdPVwiZHJpdmVycy5nZXQoaW5kZXgpIHwgYXN5bmNcIlxuICAgICAgICAgICAgICAgIFt0dWlIaW50SG9zdF09XCJoaW50SG9zdFwiXG4gICAgICAgICAgICAgICAgW3R1aUhpbnRdPVwiJGFueShoaW50RGlyZWN0aXZlPy5oaW50IHx8IGhpbnRDb250ZW50KVwiXG4gICAgICAgICAgICAgICAgW3R1aUhpbnRDb250ZXh0XT1cImdldENvbnRlbnRDb250ZXh0KHBvaW50LCBpbmRleClcIlxuICAgICAgICAgICAgICAgIFt0dWlIaW50RGVzY3JpYmVdPVwiZ2V0SGludElkKGluZGV4KVwiXG4gICAgICAgICAgICAgICAgW3N0eWxlLmxlZnQuJV09XCJnZXRMZWZ0KGdldFgoaW5kZXgpKVwiXG4gICAgICAgICAgICAgICAgW3N0eWxlLndpZHRoLiVdPVwiZ2V0V2lkdGgoaW5kZXgpXCJcbiAgICAgICAgICAgICAgICAobW91c2VlbnRlcik9XCJvbk1vdXNlRW50ZXIoaW5kZXgpXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwidC1saW5lIHQtbGluZV92ZXJ0aWNhbFwiXG4gICAgICAgICAgICAgICAgICAgIFtzdHlsZS5sZWZ0LiVdPVwiZ2V0T2Zmc2V0KGluZGV4KVwiXG4gICAgICAgICAgICAgICAgPjwvZGl2PlxuICAgICAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgICAgICAgI2hpbnRIb3N0XG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwidC1ob3N0XCJcbiAgICAgICAgICAgICAgICAgICAgW3N0eWxlLmxlZnQuJV09XCJnZXRPZmZzZXQoaW5kZXgpXCJcbiAgICAgICAgICAgICAgICAgICAgW3N0eWxlLmJvdHRvbS4lXT1cImdldEJvdHRvbShwb2ludFsxXSlcIlxuICAgICAgICAgICAgICAgICAgICBbdHVpRm9jdXNhYmxlXT1cImlzRm9jdXNhYmxlXCJcbiAgICAgICAgICAgICAgICAgICAgW2lkXT1cImdldEhpbnRJZChpbmRleClcIlxuICAgICAgICAgICAgICAgID48L2Rpdj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgICpuZ0lmPVwiaXNGb2N1c2FibGVcIlxuICAgICAgICAgICAgICAgIGNsYXNzPVwidC1saW5lIHQtbGluZV9ob3Jpem9udGFsXCJcbiAgICAgICAgICAgICAgICBbc3R5bGUuYm90dG9tLiVdPVwiZ2V0Qm90dG9tKHBvaW50WzFdKVwiXG4gICAgICAgICAgICA+PC9kaXY+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgIDwvbmctY29udGFpbmVyPlxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJnZXRIb3ZlcmVkKGhvdmVyZWQpIGFzIHBvaW50XCI+XG4gICAgICAgIDxkaXZcbiAgICAgICAgICAgICpuZ0lmPVwieFN0cmluZ2lmeVwiXG4gICAgICAgICAgICBjbGFzcz1cInQtaGludCB0LWhpbnRfeFwiXG4gICAgICAgICAgICBbc3R5bGUubGVmdC4lXT1cImdldExlZnQocG9pbnRbMF0pXCJcbiAgICAgICAgPlxuICAgICAgICAgICAge3sgeFN0cmluZ2lmeShwb2ludFswXSkgfX1cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXZcbiAgICAgICAgICAgICpuZ0lmPVwieVN0cmluZ2lmeVwiXG4gICAgICAgICAgICBjbGFzcz1cInQtaGludCB0LWhpbnRfeVwiXG4gICAgICAgICAgICBbc3R5bGUuYm90dG9tLiVdPVwiZ2V0Qm90dG9tKHBvaW50WzFdKVwiXG4gICAgICAgID5cbiAgICAgICAgICAgIHt7IHlTdHJpbmdpZnkocG9pbnRbMV0pIH19XG4gICAgICAgIDwvZGl2PlxuICAgIDwvbmctY29udGFpbmVyPlxuPC9uZy1jb250YWluZXI+XG4iXX0=
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { CommonModule } from '@angular/common';
|
|
2
2
|
import { NgModule } from '@angular/core';
|
|
3
3
|
import { TuiFocusableModule, TuiLetModule } from '@taiga-ui/cdk';
|
|
4
|
-
import {
|
|
4
|
+
import { TuiHintModule } from '@taiga-ui/core';
|
|
5
5
|
import { PolymorpheusModule } from '@tinkoff/ng-polymorpheus';
|
|
6
6
|
import { TuiLineChartComponent } from './line-chart.component';
|
|
7
7
|
import { TuiLineChartHintDirective } from './line-chart-hint.directive';
|
|
@@ -13,14 +13,12 @@ TuiLineChartModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", vers
|
|
|
13
13
|
PolymorpheusModule,
|
|
14
14
|
TuiHintModule,
|
|
15
15
|
TuiFocusableModule,
|
|
16
|
-
TuiDescribedByModule,
|
|
17
16
|
TuiLetModule], exports: [TuiLineChartComponent, TuiLineChartHintDirective] });
|
|
18
17
|
TuiLineChartModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiLineChartModule, imports: [[
|
|
19
18
|
CommonModule,
|
|
20
19
|
PolymorpheusModule,
|
|
21
20
|
TuiHintModule,
|
|
22
21
|
TuiFocusableModule,
|
|
23
|
-
TuiDescribedByModule,
|
|
24
22
|
TuiLetModule,
|
|
25
23
|
]] });
|
|
26
24
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiLineChartModule, decorators: [{
|
|
@@ -31,11 +29,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
|
|
|
31
29
|
PolymorpheusModule,
|
|
32
30
|
TuiHintModule,
|
|
33
31
|
TuiFocusableModule,
|
|
34
|
-
TuiDescribedByModule,
|
|
35
32
|
TuiLetModule,
|
|
36
33
|
],
|
|
37
34
|
declarations: [TuiLineChartComponent, TuiLineChartHintDirective],
|
|
38
35
|
exports: [TuiLineChartComponent, TuiLineChartHintDirective],
|
|
39
36
|
}]
|
|
40
37
|
}] });
|
|
41
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
38
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGluZS1jaGFydC5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hZGRvbi1jaGFydHMvY29tcG9uZW50cy9saW5lLWNoYXJ0L2xpbmUtY2hhcnQubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUM3QyxPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3ZDLE9BQU8sRUFBQyxrQkFBa0IsRUFBRSxZQUFZLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDL0QsT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBQzdDLE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLDBCQUEwQixDQUFDO0FBRTVELE9BQU8sRUFBQyxxQkFBcUIsRUFBQyxNQUFNLHdCQUF3QixDQUFDO0FBQzdELE9BQU8sRUFBQyx5QkFBeUIsRUFBQyxNQUFNLDZCQUE2QixDQUFDOztBQWF0RSxNQUFNLE9BQU8sa0JBQWtCOztnSEFBbEIsa0JBQWtCO2lIQUFsQixrQkFBa0IsaUJBSFoscUJBQXFCLEVBQUUseUJBQXlCLGFBTjNELFlBQVk7UUFDWixrQkFBa0I7UUFDbEIsYUFBYTtRQUNiLGtCQUFrQjtRQUNsQixZQUFZLGFBR04scUJBQXFCLEVBQUUseUJBQXlCO2lIQUVqRCxrQkFBa0IsWUFWbEI7WUFDTCxZQUFZO1lBQ1osa0JBQWtCO1lBQ2xCLGFBQWE7WUFDYixrQkFBa0I7WUFDbEIsWUFBWTtTQUNmOzRGQUlRLGtCQUFrQjtrQkFYOUIsUUFBUTttQkFBQztvQkFDTixPQUFPLEVBQUU7d0JBQ0wsWUFBWTt3QkFDWixrQkFBa0I7d0JBQ2xCLGFBQWE7d0JBQ2Isa0JBQWtCO3dCQUNsQixZQUFZO3FCQUNmO29CQUNELFlBQVksRUFBRSxDQUFDLHFCQUFxQixFQUFFLHlCQUF5QixDQUFDO29CQUNoRSxPQUFPLEVBQUUsQ0FBQyxxQkFBcUIsRUFBRSx5QkFBeUIsQ0FBQztpQkFDOUQiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbW1vbk1vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7TmdNb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtUdWlGb2N1c2FibGVNb2R1bGUsIFR1aUxldE1vZHVsZX0gZnJvbSAnQHRhaWdhLXVpL2Nkayc7XG5pbXBvcnQge1R1aUhpbnRNb2R1bGV9IGZyb20gJ0B0YWlnYS11aS9jb3JlJztcbmltcG9ydCB7UG9seW1vcnBoZXVzTW9kdWxlfSBmcm9tICdAdGlua29mZi9uZy1wb2x5bW9ycGhldXMnO1xuXG5pbXBvcnQge1R1aUxpbmVDaGFydENvbXBvbmVudH0gZnJvbSAnLi9saW5lLWNoYXJ0LmNvbXBvbmVudCc7XG5pbXBvcnQge1R1aUxpbmVDaGFydEhpbnREaXJlY3RpdmV9IGZyb20gJy4vbGluZS1jaGFydC1oaW50LmRpcmVjdGl2ZSc7XG5cbkBOZ01vZHVsZSh7XG4gICAgaW1wb3J0czogW1xuICAgICAgICBDb21tb25Nb2R1bGUsXG4gICAgICAgIFBvbHltb3JwaGV1c01vZHVsZSxcbiAgICAgICAgVHVpSGludE1vZHVsZSxcbiAgICAgICAgVHVpRm9jdXNhYmxlTW9kdWxlLFxuICAgICAgICBUdWlMZXRNb2R1bGUsXG4gICAgXSxcbiAgICBkZWNsYXJhdGlvbnM6IFtUdWlMaW5lQ2hhcnRDb21wb25lbnQsIFR1aUxpbmVDaGFydEhpbnREaXJlY3RpdmVdLFxuICAgIGV4cG9ydHM6IFtUdWlMaW5lQ2hhcnRDb21wb25lbnQsIFR1aUxpbmVDaGFydEhpbnREaXJlY3RpdmVdLFxufSlcbmV4cG9ydCBjbGFzcyBUdWlMaW5lQ2hhcnRNb2R1bGUge31cbiJdfQ==
|
|
@@ -118,7 +118,7 @@ TuiLineDaysChartComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.
|
|
|
118
118
|
provide: TuiLineChartHintDirective,
|
|
119
119
|
useExisting: TuiLineDaysChartComponent,
|
|
120
120
|
},
|
|
121
|
-
], viewQueries: [{ propertyName: "charts", predicate: TuiLineChartComponent, descendants: true }, { propertyName: "drivers", predicate: TuiDriver, descendants: true }], ngImport: i0, template: "<tui-line-chart\n *ngFor=\"let month of months; let first = first\"\n class=\"t-chart\"\n [style.zIndex]=\"zIndex\"\n [dots]=\"dots\"\n [x]=\"first ? 0 : getX(month[0][0])\"\n [y]=\"y\"\n [width]=\"first ? firstWidth : getWidth(month[0][0])\"\n [height]=\"height\"\n [value]=\"month\"\n [smoothingFactor]=\"smoothingFactor\"\n [tuiHintContent]=\"hintContent ? hint : ''\"\n [yStringify]=\"yStringify\"\n [xStringify]=\"xStringify ? daysStringify : null\"\n></tui-line-chart>\n<ng-template\n #hint\n let-point\n>\n <ng-container *polymorpheusOutlet=\"hintContent as text; context: getHintContext(point[0], value)\">\n {{ text }}\n </ng-container>\n</ng-template>\n", styles: [":host{display:block}.t-chart{position:absolute;top:0;left:0;width:100%;height:100%}\n"], components: [{ type: i1.TuiLineChartComponent, selector: "tui-line-chart", inputs: ["value", "x", "y", "width", "height", "smoothingFactor", "xStringify", "yStringify", "filled", "dots"] }], directives: [{ type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i3.
|
|
121
|
+
], viewQueries: [{ propertyName: "charts", predicate: TuiLineChartComponent, descendants: true }, { propertyName: "drivers", predicate: TuiDriver, descendants: true }], ngImport: i0, template: "<tui-line-chart\n *ngFor=\"let month of months; let first = first\"\n class=\"t-chart\"\n [style.zIndex]=\"zIndex\"\n [dots]=\"dots\"\n [x]=\"first ? 0 : getX(month[0][0])\"\n [y]=\"y\"\n [width]=\"first ? firstWidth : getWidth(month[0][0])\"\n [height]=\"height\"\n [value]=\"month\"\n [smoothingFactor]=\"smoothingFactor\"\n [tuiHintContent]=\"hintContent ? hint : ''\"\n [yStringify]=\"yStringify\"\n [xStringify]=\"xStringify ? daysStringify : null\"\n></tui-line-chart>\n<ng-template\n #hint\n let-point\n>\n <ng-container *polymorpheusOutlet=\"hintContent as text; context: getHintContext(point[0], value)\">\n {{ text }}\n </ng-container>\n</ng-template>\n", styles: [":host{display:block}.t-chart{position:absolute;top:0;left:0;width:100%;height:100%}\n"], components: [{ type: i1.TuiLineChartComponent, selector: "tui-line-chart", inputs: ["value", "x", "y", "width", "height", "smoothingFactor", "xStringify", "yStringify", "filled", "dots"] }], directives: [{ type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i3.TuiHintOptionsDirective, selector: "[tuiHintContent]", inputs: ["tuiHintContent", "tuiHintDirection", "tuiHintAppearance", "tuiHintShowDelay", "tuiHintHideDelay"] }, { type: i4.PolymorpheusOutletDirective, selector: "[polymorpheusOutlet]", inputs: ["polymorpheusOutlet", "polymorpheusOutletContext"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
122
122
|
__decorate([
|
|
123
123
|
tuiDefaultProp()
|
|
124
124
|
], TuiLineDaysChartComponent.prototype, "valueSetter", null);
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { CommonModule } from '@angular/common';
|
|
2
2
|
import { NgModule } from '@angular/core';
|
|
3
3
|
import { TuiLineChartModule } from '@taiga-ui/addon-charts/components/line-chart';
|
|
4
|
-
import {
|
|
4
|
+
import { TuiHintModule } from '@taiga-ui/core';
|
|
5
5
|
import { PolymorpheusModule } from '@tinkoff/ng-polymorpheus';
|
|
6
6
|
import { TuiLineDaysChartComponent } from './line-days-chart.component';
|
|
7
7
|
import { TuiLineDaysChartHintDirective } from './line-days-chart-hint.directive';
|
|
@@ -9,27 +9,14 @@ import * as i0 from "@angular/core";
|
|
|
9
9
|
export class TuiLineDaysChartModule {
|
|
10
10
|
}
|
|
11
11
|
TuiLineDaysChartModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiLineDaysChartModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
12
|
-
TuiLineDaysChartModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiLineDaysChartModule, declarations: [TuiLineDaysChartComponent, TuiLineDaysChartHintDirective], imports: [CommonModule,
|
|
13
|
-
|
|
14
|
-
PolymorpheusModule,
|
|
15
|
-
TuiHintControllerModule], exports: [TuiLineDaysChartComponent, TuiLineDaysChartHintDirective] });
|
|
16
|
-
TuiLineDaysChartModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiLineDaysChartModule, imports: [[
|
|
17
|
-
CommonModule,
|
|
18
|
-
TuiLineChartModule,
|
|
19
|
-
PolymorpheusModule,
|
|
20
|
-
TuiHintControllerModule,
|
|
21
|
-
]] });
|
|
12
|
+
TuiLineDaysChartModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiLineDaysChartModule, declarations: [TuiLineDaysChartComponent, TuiLineDaysChartHintDirective], imports: [CommonModule, TuiLineChartModule, PolymorpheusModule, TuiHintModule], exports: [TuiLineDaysChartComponent, TuiLineDaysChartHintDirective] });
|
|
13
|
+
TuiLineDaysChartModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiLineDaysChartModule, imports: [[CommonModule, TuiLineChartModule, PolymorpheusModule, TuiHintModule]] });
|
|
22
14
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiLineDaysChartModule, decorators: [{
|
|
23
15
|
type: NgModule,
|
|
24
16
|
args: [{
|
|
25
|
-
imports: [
|
|
26
|
-
CommonModule,
|
|
27
|
-
TuiLineChartModule,
|
|
28
|
-
PolymorpheusModule,
|
|
29
|
-
TuiHintControllerModule,
|
|
30
|
-
],
|
|
17
|
+
imports: [CommonModule, TuiLineChartModule, PolymorpheusModule, TuiHintModule],
|
|
31
18
|
declarations: [TuiLineDaysChartComponent, TuiLineDaysChartHintDirective],
|
|
32
19
|
exports: [TuiLineDaysChartComponent, TuiLineDaysChartHintDirective],
|
|
33
20
|
}]
|
|
34
21
|
}] });
|
|
35
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
22
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGluZS1kYXlzLWNoYXJ0Lm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FkZG9uLWNoYXJ0cy9jb21wb25lbnRzL2xpbmUtZGF5cy1jaGFydC9saW5lLWRheXMtY2hhcnQubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUM3QyxPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3ZDLE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLDhDQUE4QyxDQUFDO0FBQ2hGLE9BQU8sRUFBQyxhQUFhLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUM3QyxPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSwwQkFBMEIsQ0FBQztBQUU1RCxPQUFPLEVBQUMseUJBQXlCLEVBQUMsTUFBTSw2QkFBNkIsQ0FBQztBQUN0RSxPQUFPLEVBQUMsNkJBQTZCLEVBQUMsTUFBTSxrQ0FBa0MsQ0FBQzs7QUFPL0UsTUFBTSxPQUFPLHNCQUFzQjs7b0hBQXRCLHNCQUFzQjtxSEFBdEIsc0JBQXNCLGlCQUhoQix5QkFBeUIsRUFBRSw2QkFBNkIsYUFEN0QsWUFBWSxFQUFFLGtCQUFrQixFQUFFLGtCQUFrQixFQUFFLGFBQWEsYUFFbkUseUJBQXlCLEVBQUUsNkJBQTZCO3FIQUV6RCxzQkFBc0IsWUFKdEIsQ0FBQyxZQUFZLEVBQUUsa0JBQWtCLEVBQUUsa0JBQWtCLEVBQUUsYUFBYSxDQUFDOzRGQUlyRSxzQkFBc0I7a0JBTGxDLFFBQVE7bUJBQUM7b0JBQ04sT0FBTyxFQUFFLENBQUMsWUFBWSxFQUFFLGtCQUFrQixFQUFFLGtCQUFrQixFQUFFLGFBQWEsQ0FBQztvQkFDOUUsWUFBWSxFQUFFLENBQUMseUJBQXlCLEVBQUUsNkJBQTZCLENBQUM7b0JBQ3hFLE9BQU8sRUFBRSxDQUFDLHlCQUF5QixFQUFFLDZCQUE2QixDQUFDO2lCQUN0RSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29tbW9uTW9kdWxlfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtOZ01vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1R1aUxpbmVDaGFydE1vZHVsZX0gZnJvbSAnQHRhaWdhLXVpL2FkZG9uLWNoYXJ0cy9jb21wb25lbnRzL2xpbmUtY2hhcnQnO1xuaW1wb3J0IHtUdWlIaW50TW9kdWxlfSBmcm9tICdAdGFpZ2EtdWkvY29yZSc7XG5pbXBvcnQge1BvbHltb3JwaGV1c01vZHVsZX0gZnJvbSAnQHRpbmtvZmYvbmctcG9seW1vcnBoZXVzJztcblxuaW1wb3J0IHtUdWlMaW5lRGF5c0NoYXJ0Q29tcG9uZW50fSBmcm9tICcuL2xpbmUtZGF5cy1jaGFydC5jb21wb25lbnQnO1xuaW1wb3J0IHtUdWlMaW5lRGF5c0NoYXJ0SGludERpcmVjdGl2ZX0gZnJvbSAnLi9saW5lLWRheXMtY2hhcnQtaGludC5kaXJlY3RpdmUnO1xuXG5ATmdNb2R1bGUoe1xuICAgIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIFR1aUxpbmVDaGFydE1vZHVsZSwgUG9seW1vcnBoZXVzTW9kdWxlLCBUdWlIaW50TW9kdWxlXSxcbiAgICBkZWNsYXJhdGlvbnM6IFtUdWlMaW5lRGF5c0NoYXJ0Q29tcG9uZW50LCBUdWlMaW5lRGF5c0NoYXJ0SGludERpcmVjdGl2ZV0sXG4gICAgZXhwb3J0czogW1R1aUxpbmVEYXlzQ2hhcnRDb21wb25lbnQsIFR1aUxpbmVEYXlzQ2hhcnRIaW50RGlyZWN0aXZlXSxcbn0pXG5leHBvcnQgY2xhc3MgVHVpTGluZURheXNDaGFydE1vZHVsZSB7fVxuIl19
|
|
@@ -2,7 +2,7 @@ import { __decorate } from "tslib";
|
|
|
2
2
|
import { Location } from '@angular/common';
|
|
3
3
|
import { ChangeDetectionStrategy, Component, EventEmitter, HostBinding, Inject, Input, Optional, Output, } from '@angular/core';
|
|
4
4
|
import { tuiDefaultProp, TuiIdService, tuiPure, tuiSum, } from '@taiga-ui/cdk';
|
|
5
|
-
import {
|
|
5
|
+
import { TuiHintOptionsDirective } from '@taiga-ui/core';
|
|
6
6
|
import * as i0 from "@angular/core";
|
|
7
7
|
import * as i1 from "@taiga-ui/cdk";
|
|
8
8
|
import * as i2 from "./pie-chart.directive";
|
|
@@ -23,22 +23,26 @@ const TRANSFORM = {
|
|
|
23
23
|
xl: 1.08,
|
|
24
24
|
};
|
|
25
25
|
export class TuiPieChartComponent {
|
|
26
|
-
constructor(idService, locationRef,
|
|
26
|
+
constructor(idService, locationRef, hintOptions) {
|
|
27
27
|
this.locationRef = locationRef;
|
|
28
|
-
this.
|
|
28
|
+
this.hintOptions = hintOptions;
|
|
29
29
|
this.value = [];
|
|
30
30
|
this.size = `m`;
|
|
31
31
|
this.masked = false;
|
|
32
32
|
this.activeItemIndex = NaN;
|
|
33
33
|
this.activeItemIndexChange = new EventEmitter();
|
|
34
34
|
this.autoIdString = idService.generate();
|
|
35
|
+
if (this.hintOptions) {
|
|
36
|
+
this.hintOptions.showDelay = 0;
|
|
37
|
+
this.hintOptions.hideDelay = 0;
|
|
38
|
+
}
|
|
35
39
|
}
|
|
36
40
|
get empty() {
|
|
37
41
|
return !this.getSum(this.value);
|
|
38
42
|
}
|
|
39
43
|
get hintContent() {
|
|
40
44
|
var _a;
|
|
41
|
-
return ((_a = this.
|
|
45
|
+
return ((_a = this.hintOptions) === null || _a === void 0 ? void 0 : _a.content) || ``;
|
|
42
46
|
}
|
|
43
47
|
get maskId() {
|
|
44
48
|
return `tui-ring-chart-${this.autoIdString}`;
|
|
@@ -88,8 +92,8 @@ export class TuiPieChartComponent {
|
|
|
88
92
|
this.activeItemIndexChange.next(index);
|
|
89
93
|
}
|
|
90
94
|
}
|
|
91
|
-
TuiPieChartComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiPieChartComponent, deps: [{ token: TuiIdService }, { token: Location }, { token:
|
|
92
|
-
TuiPieChartComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: TuiPieChartComponent, selector: "tui-pie-chart", inputs: { value: "value", size: "size", masked: "masked", activeItemIndex: "activeItemIndex" }, outputs: { activeItemIndexChange: "activeItemIndexChange" }, host: { properties: { "attr.data-size": "this.size", "class._empty": "this.empty" } },
|
|
95
|
+
TuiPieChartComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiPieChartComponent, deps: [{ token: TuiIdService }, { token: Location }, { token: TuiHintOptionsDirective, optional: true }], target: i0.ɵɵFactoryTarget.Component });
|
|
96
|
+
TuiPieChartComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: TuiPieChartComponent, selector: "tui-pie-chart", inputs: { value: "value", size: "size", masked: "masked", activeItemIndex: "activeItemIndex" }, outputs: { activeItemIndexChange: "activeItemIndexChange" }, host: { properties: { "attr.data-size": "this.size", "class._empty": "this.empty" } }, ngImport: i0, 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\n x=\"-200\"\n y=\"-200\"\n width=\"400\"\n height=\"400\"\n fill=\"white\"\n />\n <circle\n cx=\"0\"\n cy=\"0\"\n [attr.r]=\"radius\"\n />\n </mask>\n </defs>\n <g [style.mask]=\"mask\">\n <circle\n cx=\"0\"\n cy=\"0\"\n r=\"100\"\n class=\"t-placeholder\"\n />\n <path\n *tuiRepeatTimes=\"let index of segments.length\"\n fill=\"currentColor\"\n automation-id=\"tui-pie-chart__segment\"\n tuiHintPointer\n tuiHintAppearance=\"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 [tuiHint]=\"hintContent\"\n [tuiHintContext]=\"{$implicit: index}\"\n (tuiHoveredChange)=\"onHovered($event, index)\"\n />\n </g>\n</svg>\n", styles: [":host{position:relative;display:block}:host[data-size=xs]{width:2rem;height:2rem;pointer-events:none}:host[data-size=s]{width:4rem;height:4rem}:host[data-size=m]{width:9rem;height:9rem}:host[data-size=l]{width:11rem;height:11rem}:host[data-size=xl]{width:16rem;height:16rem}.t-svg{position:relative;overflow:visible;transform:rotate(-90deg)}.t-segment{transition-property:transform;transition-duration:.3s;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out}:host._empty .t-segment{display:none}.t-placeholder{fill:var(--tui-base-03)}\n"], directives: [{ type: i1.TuiRepeatTimesDirective, selector: "[tuiRepeatTimes][tuiRepeatTimesOf]", inputs: ["tuiRepeatTimesOf"] }, { type: i2.TuiPieChartDirective, selector: "path[tuiPieChart]", inputs: ["tuiPieChart"] }, { type: i3.TuiHintDirective, selector: "[tuiHint]:not(ng-container)", inputs: ["tuiHint", "tuiHintContext", "tuiHintAppearance"] }, { type: i3.TuiHintDriverDirective, selector: "[tuiHint]" }, { type: i3.TuiHintHoverDirective, selector: "[tuiHint]:not(ng-container)", inputs: ["tuiHintShowDelay", "tuiHintHideDelay"] }, { type: i3.TuiHintPositionDirective, selector: "[tuiHint]:not([tuiHintCustomPosition])", inputs: ["tuiHintDirection"] }, { type: i3.TuiHintPointerDirective, selector: "[tuiHint][tuiHintPointer]" }, { type: i1.TuiHoveredDirective, selector: "[tuiHoveredChange]", outputs: ["tuiHoveredChange"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
93
97
|
__decorate([
|
|
94
98
|
tuiDefaultProp()
|
|
95
99
|
], TuiPieChartComponent.prototype, "value", void 0);
|
|
@@ -115,8 +119,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
|
|
|
115
119
|
templateUrl: `./pie-chart.template.html`,
|
|
116
120
|
styleUrls: [`./pie-chart.style.less`],
|
|
117
121
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
118
|
-
providers: [tuiHintOptionsProvider({ showDelay: 0, hideDelay: 0 })],
|
|
119
|
-
viewProviders: [TUI_HINT_CONTROLLER_OPTIONS],
|
|
120
122
|
}]
|
|
121
123
|
}], ctorParameters: function () { return [{ type: i1.TuiIdService, decorators: [{
|
|
122
124
|
type: Inject,
|
|
@@ -124,11 +126,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
|
|
|
124
126
|
}] }, { type: i4.Location, decorators: [{
|
|
125
127
|
type: Inject,
|
|
126
128
|
args: [Location]
|
|
127
|
-
}] }, { type: i3.
|
|
129
|
+
}] }, { type: i3.TuiHintOptionsDirective, decorators: [{
|
|
128
130
|
type: Optional
|
|
129
131
|
}, {
|
|
130
132
|
type: Inject,
|
|
131
|
-
args: [
|
|
133
|
+
args: [TuiHintOptionsDirective]
|
|
132
134
|
}] }]; }, propDecorators: { value: [{
|
|
133
135
|
type: Input
|
|
134
136
|
}], size: [{
|
|
@@ -146,4 +148,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
|
|
|
146
148
|
type: HostBinding,
|
|
147
149
|
args: [`class._empty`]
|
|
148
150
|
}], getSum: [], getSegments: [] } });
|
|
149
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGllLWNoYXJ0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FkZG9uLWNoYXJ0cy9jb21wb25lbnRzL3BpZS1jaGFydC9waWUtY2hhcnQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYWRkb24tY2hhcnRzL2NvbXBvbmVudHMvcGllLWNoYXJ0L3BpZS1jaGFydC50ZW1wbGF0ZS5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDekMsT0FBTyxFQUNILHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsWUFBWSxFQUNaLFdBQVcsRUFDWCxNQUFNLEVBQ04sS0FBSyxFQUNMLFFBQVEsRUFDUixNQUFNLEdBQ1QsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUVILGNBQWMsRUFDZCxZQUFZLEVBQ1osT0FBTyxFQUNQLE1BQU0sR0FDVCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQ0gsMkJBQTJCLEVBQzNCLDBCQUEwQixFQUMxQixzQkFBc0IsR0FHekIsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7O0FBR3hCLE1BQU0sS0FBSyxHQUFHO0lBQ1YsRUFBRSxFQUFFLElBQUk7SUFDUixDQUFDLEVBQUUsSUFBSTtJQUNQLENBQUMsRUFBRSxNQUFNO0lBQ1QsQ0FBQyxFQUFFLE1BQU07SUFDVCxFQUFFLEVBQUUsTUFBTTtDQUNiLENBQUM7QUFDRixNQUFNLFNBQVMsR0FBRztJQUNkLEVBQUUsRUFBRSxJQUFJO0lBQ1IsQ0FBQyxFQUFFLElBQUk7SUFDUCxDQUFDLEVBQUUsSUFBSTtJQUNQLENBQUMsRUFBRSxJQUFJO0lBQ1AsRUFBRSxFQUFFLElBQUk7Q0FDWCxDQUFDO0FBVUYsTUFBTSxPQUFPLG9CQUFvQjtJQXVCN0IsWUFDMEIsU0FBdUIsRUFDVixXQUFxQixFQUd2QyxjQUFpRDtRQUgvQixn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QUM7b0JBQ2pFLGFBQWEsRUFBRSxDQUFDLDJCQUEyQixDQUFDO2lCQUMvQzs7MEJBeUJRLE1BQU07MkJBQUMsWUFBWTs7MEJBQ25CLE1BQU07MkJBQUMsUUFBUTs7MEJBQ2YsUUFBUTs7MEJBQ1IsTUFBTTsyQkFBQywwQkFBMEI7NENBdEJ0QyxLQUFLO3NCQUZKLEtBQUs7Z0JBT04sSUFBSTtzQkFISCxLQUFLOztzQkFDTCxXQUFXO3VCQUFDLGdCQUFnQjtnQkFNN0IsTUFBTTtzQkFGTCxLQUFLO2dCQU1OLGVBQWU7c0JBRmQsS0FBSztnQkFLTixxQkFBcUI7c0JBRHBCLE1BQU07Z0JBY0gsS0FBSztzQkFEUixXQUFXO3VCQUFDLGNBQWM7Z0JBOENuQixNQUFNLE1BS04sV0FBVyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7TG9jYXRpb259IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge1xuICAgIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICAgIENvbXBvbmVudCxcbiAgICBFdmVudEVtaXR0ZXIsXG4gICAgSG9zdEJpbmRpbmcsXG4gICAgSW5qZWN0LFxuICAgIElucHV0LFxuICAgIE9wdGlvbmFsLFxuICAgIE91dHB1dCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1NhZmVWYWx1ZX0gZnJvbSAnQGFuZ3VsYXIvcGxhdGZvcm0tYnJvd3Nlcic7XG5pbXBvcnQge1xuICAgIFR1aUNvbnRleHRXaXRoSW1wbGljaXQsXG4gICAgdHVpRGVmYXVsdFByb3AsXG4gICAgVHVpSWRTZXJ2aWNlLFxuICAgIHR1aVB1cmUsXG4gICAgdHVpU3VtLFxufSBmcm9tICdAdGFpZ2EtdWkvY2RrJztcbmltcG9ydCB7XG4gICAgVFVJX0hJTlRfQ09OVFJPTExFUl9PUFRJT05TLFxuICAgIFR1aUhpbnRDb250cm9sbGVyRGlyZWN0aXZlLFxuICAgIHR1aUhpbnRPcHRpb25zUHJvdmlkZXIsXG4gICAgVHVpU2l6ZVhMLFxuICAgIFR1aVNpemVYUyxcbn0gZnJvbSAnQHRhaWdhLXVpL2NvcmUnO1xuaW1wb3J0IHtQb2x5bW9ycGhldXNDb250ZW50fSBmcm9tICdAdGlua29mZi9uZy1wb2x5bW9ycGhldXMnO1xuXG5jb25zdCBSQURJSSA9IHtcbiAgICB4czogYDUwYCxcbiAgICBzOiBgNTBgLFxuICAgIG06IGA3Ny44YCxcbiAgICBsOiBgODEuOWAsXG4gICAgeGw6IGA4MS4zYCxcbn07XG5jb25zdCBUUkFOU0ZPUk0gPSB7XG4gICAgeHM6IDEuMTUsXG4gICAgczogMS4yNSxcbiAgICBtOiAxLjExLFxuICAgIGw6IDEuMDksXG4gICAgeGw6IDEuMDgsXG59O1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogYHR1aS1waWUtY2hhcnRgLFxuICAgIHRlbXBsYXRlVXJsOiBgLi9waWUtY2hhcnQudGVtcGxhdGUuaHRtbGAsXG4gICAgc3R5bGVVcmxzOiBbYC4vcGllLWNoYXJ0LnN0eWxlLmxlc3NgXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICBwcm92aWRlcnM6IFt0dWlIaW50T3B0aW9uc1Byb3ZpZGVyKHtzaG93RGVsYXk6IDAsIGhpZGVEZWxheTogMH0pXSxcbiAgICB2aWV3UHJvdmlkZXJzOiBbVFVJX0hJTlRfQ09OVFJPTExFUl9PUFRJT05TXSxcbn0pXG5leHBvcnQgY2xhc3MgVHVpUGllQ2hhcnRDb21wb25lbnQge1xuICAgIHByaXZhdGUgcmVhZG9ubHkgYXV0b0lkU3RyaW5nOiBzdHJpbmc7XG5cbiAgICBASW5wdXQoKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgdmFsdWU6IHJlYWRvbmx5IG51bWJlcltdID0gW107XG5cbiAgICBASW5wdXQoKVxuICAgIEBIb3N0QmluZGluZyhgYXR0ci5kYXRhLXNpemVgKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgc2l6ZTogVHVpU2l6ZVhTIHwgVHVpU2l6ZVhMID0gYG1gO1xuXG4gICAgQElucHV0KClcbiAgICBAdHVpRGVmYXVsdFByb3AoKVxuICAgIG1hc2tlZCA9IGZhbHNlO1xuXG4gICAgQElucHV0KClcbiAgICBAdHVpRGVmYXVsdFByb3AoKVxuICAgIGFjdGl2ZUl0ZW1JbmRleCA9IE5hTjtcblxuICAgIEBPdXRwdXQoKVxuICAgIGFjdGl2ZUl0ZW1JbmRleENoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8bnVtYmVyPigpO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIEBJbmplY3QoVHVpSWRTZXJ2aWNlKSBpZFNlcnZpY2U6IFR1aUlkU2VydmljZSxcbiAgICAgICAgQEluamVjdChMb2NhdGlvbikgcHJpdmF0ZSByZWFkb25seSBsb2NhdGlvblJlZjogTG9jYXRpb24sXG4gICAgICAgIEBPcHRpb25hbCgpXG4gICAgICAgIEBJbmplY3QoVHVpSGludENvbnRyb2xsZXJEaXJlY3RpdmUpXG4gICAgICAgIHByaXZhdGUgcmVhZG9ubHkgaGludENvbnRyb2xsZXI6IFR1aUhpbnRDb250cm9sbGVyRGlyZWN0aXZlIHwgbnVsbCxcbiAgICApIHtcbiAgICAgICAgdGhpcy5hdXRvSWRTdHJpbmcgPSBpZFNlcnZpY2UuZ2VuZXJhdGUoKTtcbiAgICB9XG5cbiAgICBASG9zdEJpbmRpbmcoYGNsYXNzLl9lbXB0eWApXG4gICAgZ2V0IGVtcHR5KCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gIXRoaXMuZ2V0U3VtKHRoaXMudmFsdWUpO1xuICAgIH1cblxuICAgIGdldCBoaW50Q29udGVudCgpOiBQb2x5bW9ycGhldXNDb250ZW50PFR1aUNvbnRleHRXaXRoSW1wbGljaXQ8bnVtYmVyPj4ge1xuICAgICAgICByZXR1cm4gdGhpcy5oaW50Q29udHJvbGxlcj8uY29udGVudCB8fCBgYDtcbiAgICB9XG5cbiAgICBnZXQgbWFza0lkKCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiBgdHVpLXJpbmctY2hhcnQtJHt0aGlzLmF1dG9JZFN0cmluZ31gO1xuICAgIH1cblxuICAgIGdldCBtYXNrKCk6IHN0cmluZyB8IG51bGwge1xuICAgICAgICByZXR1cm4gdGhpcy5tYXNrZWRcbiAgICAgICAgICAgID8gYHVybCgke3RoaXMubG9jYXRpb25SZWYucHJlcGFyZUV4dGVybmFsVXJsKHRoaXMubG9jYXRpb25SZWYucGF0aCgpKX0jJHtcbiAgICAgICAgICAgICAgICAgIHRoaXMubWFza0lkXG4gICAgICAgICAgICAgIH0pYFxuICAgICAgICAgICAgOiBudWxsO1xuICAgIH1cblxuICAgIGdldCByYWRpdXMoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIFJBRElJW3RoaXMuc2l6ZV07XG4gICAgfVxuXG4gICAgZ2V0IHNlZ21lbnRzKCk6IFJlYWRvbmx5QXJyYXk8W251bWJlciwgbnVtYmVyXT4ge1xuICAgICAgICByZXR1cm4gdGhpcy5nZXRTZWdtZW50cyh0aGlzLnZhbHVlKTtcbiAgICB9XG5cbiAgICBnZXRUcmFuc2Zvcm0oaW5kZXg6IG51bWJlcik6IHN0cmluZyB8IG51bGwge1xuICAgICAgICBjb25zdCB0cmFuc2Zvcm0gPSB0aGlzLm1hc2tlZFxuICAgICAgICAgICAgPyBgc2NhbGUoJHtUUkFOU0ZPUk1bdGhpcy5zaXplXX0pYFxuICAgICAgICAgICAgOiBgc2NhbGUoJHtUUkFOU0ZPUk0ueHN9KWA7XG5cbiAgICAgICAgcmV0dXJuIGluZGV4ID09PSB0aGlzLmFjdGl2ZUl0ZW1JbmRleCA/IHRyYW5zZm9ybSA6IG51bGw7XG4gICAgfVxuXG4gICAgb25Ib3ZlcmVkKGhvdmVyZWQ6IGJvb2xlYW4sIGluZGV4OiBudW1iZXIpOiB2b2lkIHtcbiAgICAgICAgdGhpcy51cGRhdGVBY3RpdmVJdGVtSW5kZXgoaG92ZXJlZCA/IGluZGV4IDogTmFOKTtcbiAgICB9XG5cbiAgICBnZXRDb2xvcihpbmRleDogbnVtYmVyKTogU2FmZVZhbHVlIHtcbiAgICAgICAgcmV0dXJuIGB2YXIoLS10dWktY2hhcnQtJHtpbmRleH1gO1xuICAgIH1cblxuICAgIEB0dWlQdXJlXG4gICAgcHJpdmF0ZSBnZXRTdW0odmFsdWU6IHJlYWRvbmx5IG51bWJlcltdKTogbnVtYmVyIHtcbiAgICAgICAgcmV0dXJuIHR1aVN1bSguLi52YWx1ZSk7XG4gICAgfVxuXG4gICAgQHR1aVB1cmVcbiAgICBwcml2YXRlIGdldFNlZ21lbnRzKHZhbHVlOiByZWFkb25seSBudW1iZXJbXSk6IFJlYWRvbmx5QXJyYXk8W251bWJlciwgbnVtYmVyXT4ge1xuICAgICAgICByZXR1cm4gdmFsdWVcbiAgICAgICAgICAgIC5tYXAoKGluaXRpYWwsIGksIGFycmF5KSA9PlxuICAgICAgICAgICAgICAgIGFycmF5LnJlZHVjZShcbiAgICAgICAgICAgICAgICAgICAgKHN1bSwgY3VycmVudCwgaikgPT4gKGogPCBpID8gdGhpcy5nZXREZWcoY3VycmVudCkgKyBzdW0gOiBzdW0pLFxuICAgICAgICAgICAgICAgICAgICB0aGlzLmdldERlZyhpbml0aWFsKSxcbiAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgKVxuICAgICAgICAgICAgLm1hcCgoYW5nbGUsIGluZGV4LCBhcnJheSkgPT4gW1xuICAgICAgICAgICAgICAgIGFycmF5W2luZGV4IC0gMV0gfHwgMCxcbiAgICAgICAgICAgICAgICBNYXRoLm1pbihhbmdsZSwgMzU5Ljk5OTkpLFxuICAgICAgICAgICAgXSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXREZWcodmFsdWU6IG51bWJlcik6IG51bWJlciB7XG4gICAgICAgIHJldHVybiAzNjAgKiAodmFsdWUgLyB0aGlzLmdldFN1bSh0aGlzLnZhbHVlKSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSB1cGRhdGVBY3RpdmVJdGVtSW5kZXgoaW5kZXg6IG51bWJlcik6IHZvaWQge1xuICAgICAgICBpZiAoaW5kZXggPT09IHRoaXMuYWN0aXZlSXRlbUluZGV4KSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLmFjdGl2ZUl0ZW1JbmRleCA9IGluZGV4O1xuICAgICAgICB0aGlzLmFjdGl2ZUl0ZW1JbmRleENoYW5nZS5uZXh0KGluZGV4KTtcbiAgICB9XG59XG4iLCI8c3ZnXG4gICAgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gICAgaGVpZ2h0PVwiMTAwJVwiXG4gICAgd2lkdGg9XCIxMDAlXCJcbiAgICB2aWV3Qm94PVwiLTEwMCAtMTAwIDIwMCAyMDBcIlxuICAgIGZvY3VzYWJsZT1cImZhbHNlXCJcbiAgICBjbGFzcz1cInQtc3ZnXCJcbj5cbiAgICA8ZGVmcz5cbiAgICAgICAgPG1hc2sgW2F0dHIuaWRdPVwibWFza0lkXCI+XG4gICAgICAgICAgICA8cmVjdFxuICAgICAgICAgICAgICAgIHg9XCItMjAwXCJcbiAgICAgICAgICAgICAgICB5PVwiLTIwMFwiXG4gICAgICAgICAgICAgICAgd2lkdGg9XCI0MDBcIlxuICAgICAgICAgICAgICAgIGhlaWdodD1cIjQwMFwiXG4gICAgICAgICAgICAgICAgZmlsbD1cIndoaXRlXCJcbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgICA8Y2lyY2xlXG4gICAgICAgICAgICAgICAgY3g9XCIwXCJcbiAgICAgICAgICAgICAgICBjeT1cIjBcIlxuICAgICAgICAgICAgICAgIFthdHRyLnJdPVwicmFkaXVzXCJcbiAgICAgICAgICAgIC8+XG4gICAgICAgIDwvbWFzaz5cbiAgICA8L2RlZnM+XG4gICAgPGcgW3N0eWxlLm1hc2tdPVwibWFza1wiPlxuICAgICAgICA8Y2lyY2xlXG4gICAgICAgICAgICBjeD1cIjBcIlxuICAgICAgICAgICAgY3k9XCIwXCJcbiAgICAgICAgICAgIHI9XCIxMDBcIlxuICAgICAgICAgICAgY2xhc3M9XCJ0LXBsYWNlaG9sZGVyXCJcbiAgICAgICAgLz5cbiAgICAgICAgPHBhdGhcbiAgICAgICAgICAgICp0dWlSZXBlYXRUaW1lcz1cImxldCBpbmRleCBvZiBzZWdtZW50cy5sZW5ndGhcIlxuICAgICAgICAgICAgZmlsbD1cImN1cnJlbnRDb2xvclwiXG4gICAgICAgICAgICBhdXRvbWF0aW9uLWlkPVwidHVpLXBpZS1jaGFydF9fc2VnbWVudFwiXG4gICAgICAgICAgICB0dWlIaW50UG9pbnRlclxuICAgICAgICAgICAgdHVpSGludEFwcGVhcmFuY2U9XCJvbkRhcmtcIlxuICAgICAgICAgICAgdHVpSGludERpcmVjdGlvbj1cInRvcC1yaWdodFwiXG4gICAgICAgICAgICBkPVwiXCJcbiAgICAgICAgICAgIGNsYXNzPVwidC1zZWdtZW50XCJcbiAgICAgICAgICAgIFthdHRyLnRyYW5zZm9ybV09XCJnZXRUcmFuc2Zvcm0oaW5kZXgpXCJcbiAgICAgICAgICAgIFtzdHlsZS5jb2xvcl09XCJnZXRDb2xvcihpbmRleClcIlxuICAgICAgICAgICAgW3R1aVBpZUNoYXJ0XT1cInNlZ21lbnRzW2luZGV4XVwiXG4gICAgICAgICAgICBbdHVpSGludF09XCJoaW50Q29udGVudFwiXG4gICAgICAgICAgICBbdHVpSGludENvbnRleHRdPVwieyRpbXBsaWNpdDogaW5kZXh9XCJcbiAgICAgICAgICAgICh0dWlIb3ZlcmVkQ2hhbmdlKT1cIm9uSG92ZXJlZCgkZXZlbnQsIGluZGV4KVwiXG4gICAgICAgIC8+XG4gICAgPC9nPlxuPC9zdmc+XG4iXX0=
|
|
151
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGllLWNoYXJ0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FkZG9uLWNoYXJ0cy9jb21wb25lbnRzL3BpZS1jaGFydC9waWUtY2hhcnQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYWRkb24tY2hhcnRzL2NvbXBvbmVudHMvcGllLWNoYXJ0L3BpZS1jaGFydC50ZW1wbGF0ZS5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDekMsT0FBTyxFQUNILHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsWUFBWSxFQUNaLFdBQVcsRUFDWCxNQUFNLEVBQ04sS0FBSyxFQUNMLFFBQVEsRUFDUixNQUFNLEdBQ1QsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUVILGNBQWMsRUFDZCxZQUFZLEVBQ1osT0FBTyxFQUNQLE1BQU0sR0FDVCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUMsdUJBQXVCLEVBQXVCLE1BQU0sZ0JBQWdCLENBQUM7Ozs7OztBQUc3RSxNQUFNLEtBQUssR0FBRztJQUNWLEVBQUUsRUFBRSxJQUFJO0lBQ1IsQ0FBQyxFQUFFLElBQUk7SUFDUCxDQUFDLEVBQUUsTUFBTTtJQUNULENBQUMsRUFBRSxNQUFNO0lBQ1QsRUFBRSxFQUFFLE1BQU07Q0FDYixDQUFDO0FBQ0YsTUFBTSxTQUFTLEdBQUc7SUFDZCxFQUFFLEVBQUUsSUFBSTtJQUNSLENBQUMsRUFBRSxJQUFJO0lBQ1AsQ0FBQyxFQUFFLElBQUk7SUFDUCxDQUFDLEVBQUUsSUFBSTtJQUNQLEVBQUUsRUFBRSxJQUFJO0NBQ1gsQ0FBQztBQVFGLE1BQU0sT0FBTyxvQkFBb0I7SUF1QjdCLFlBQzBCLFNBQXVCLEVBQ1YsV0FBcUIsRUFHdkMsV0FBMkM7UUFIekIsZ0JBQVcsR0FBWCxXQUFXLENBQVU7UUFHdkMs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dUI7NENBdEJuQyxLQUFLO3NCQUZKLEtBQUs7Z0JBT04sSUFBSTtzQkFISCxLQUFLOztzQkFDTCxXQUFXO3VCQUFDLGdCQUFnQjtnQkFNN0IsTUFBTTtzQkFGTCxLQUFLO2dCQU1OLGVBQWU7c0JBRmQsS0FBSztnQkFLTixxQkFBcUI7c0JBRHBCLE1BQU07Z0JBbUJILEtBQUs7c0JBRFIsV0FBVzt1QkFBQyxjQUFjO2dCQThDbkIsTUFBTSxNQUtOLFdBQVciLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0xvY2F0aW9ufSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBDb21wb25lbnQsXG4gICAgRXZlbnRFbWl0dGVyLFxuICAgIEhvc3RCaW5kaW5nLFxuICAgIEluamVjdCxcbiAgICBJbnB1dCxcbiAgICBPcHRpb25hbCxcbiAgICBPdXRwdXQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtTYWZlVmFsdWV9IGZyb20gJ0Bhbmd1bGFyL3BsYXRmb3JtLWJyb3dzZXInO1xuaW1wb3J0IHtcbiAgICBUdWlDb250ZXh0V2l0aEltcGxpY2l0LFxuICAgIHR1aURlZmF1bHRQcm9wLFxuICAgIFR1aUlkU2VydmljZSxcbiAgICB0dWlQdXJlLFxuICAgIHR1aVN1bSxcbn0gZnJvbSAnQHRhaWdhLXVpL2Nkayc7XG5pbXBvcnQge1R1aUhpbnRPcHRpb25zRGlyZWN0aXZlLCBUdWlTaXplWEwsIFR1aVNpemVYU30gZnJvbSAnQHRhaWdhLXVpL2NvcmUnO1xuaW1wb3J0IHtQb2x5bW9ycGhldXNDb250ZW50fSBmcm9tICdAdGlua29mZi9uZy1wb2x5bW9ycGhldXMnO1xuXG5jb25zdCBSQURJSSA9IHtcbiAgICB4czogYDUwYCxcbiAgICBzOiBgNTBgLFxuICAgIG06IGA3Ny44YCxcbiAgICBsOiBgODEuOWAsXG4gICAgeGw6IGA4MS4zYCxcbn07XG5jb25zdCBUUkFOU0ZPUk0gPSB7XG4gICAgeHM6IDEuMTUsXG4gICAgczogMS4yNSxcbiAgICBtOiAxLjExLFxuICAgIGw6IDEuMDksXG4gICAgeGw6IDEuMDgsXG59O1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogYHR1aS1waWUtY2hhcnRgLFxuICAgIHRlbXBsYXRlVXJsOiBgLi9waWUtY2hhcnQudGVtcGxhdGUuaHRtbGAsXG4gICAgc3R5bGVVcmxzOiBbYC4vcGllLWNoYXJ0LnN0eWxlLmxlc3NgXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgVHVpUGllQ2hhcnRDb21wb25lbnQge1xuICAgIHByaXZhdGUgcmVhZG9ubHkgYXV0b0lkU3RyaW5nOiBzdHJpbmc7XG5cbiAgICBASW5wdXQoKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgdmFsdWU6IHJlYWRvbmx5IG51bWJlcltdID0gW107XG5cbiAgICBASW5wdXQoKVxuICAgIEBIb3N0QmluZGluZyhgYXR0ci5kYXRhLXNpemVgKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgc2l6ZTogVHVpU2l6ZVhTIHwgVHVpU2l6ZVhMID0gYG1gO1xuXG4gICAgQElucHV0KClcbiAgICBAdHVpRGVmYXVsdFByb3AoKVxuICAgIG1hc2tlZCA9IGZhbHNlO1xuXG4gICAgQElucHV0KClcbiAgICBAdHVpRGVmYXVsdFByb3AoKVxuICAgIGFjdGl2ZUl0ZW1JbmRleCA9IE5hTjtcblxuICAgIEBPdXRwdXQoKVxuICAgIGFjdGl2ZUl0ZW1JbmRleENoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8bnVtYmVyPigpO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIEBJbmplY3QoVHVpSWRTZXJ2aWNlKSBpZFNlcnZpY2U6IFR1aUlkU2VydmljZSxcbiAgICAgICAgQEluamVjdChMb2NhdGlvbikgcHJpdmF0ZSByZWFkb25seSBsb2NhdGlvblJlZjogTG9jYXRpb24sXG4gICAgICAgIEBPcHRpb25hbCgpXG4gICAgICAgIEBJbmplY3QoVHVpSGludE9wdGlvbnNEaXJlY3RpdmUpXG4gICAgICAgIHByaXZhdGUgcmVhZG9ubHkgaGludE9wdGlvbnM6IFR1aUhpbnRPcHRpb25zRGlyZWN0aXZlIHwgbnVsbCxcbiAgICApIHtcbiAgICAgICAgdGhpcy5hdXRvSWRTdHJpbmcgPSBpZFNlcnZpY2UuZ2VuZXJhdGUoKTtcblxuICAgICAgICBpZiAodGhpcy5oaW50T3B0aW9ucykge1xuICAgICAgICAgICAgdGhpcy5oaW50T3B0aW9ucy5zaG93RGVsYXkgPSAwO1xuICAgICAgICAgICAgdGhpcy5oaW50T3B0aW9ucy5oaWRlRGVsYXkgPSAwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQEhvc3RCaW5kaW5nKGBjbGFzcy5fZW1wdHlgKVxuICAgIGdldCBlbXB0eSgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuICF0aGlzLmdldFN1bSh0aGlzLnZhbHVlKTtcbiAgICB9XG5cbiAgICBnZXQgaGludENvbnRlbnQoKTogUG9seW1vcnBoZXVzQ29udGVudDxUdWlDb250ZXh0V2l0aEltcGxpY2l0PG51bWJlcj4+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuaGludE9wdGlvbnM/LmNvbnRlbnQgfHwgYGA7XG4gICAgfVxuXG4gICAgZ2V0IG1hc2tJZCgpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gYHR1aS1yaW5nLWNoYXJ0LSR7dGhpcy5hdXRvSWRTdHJpbmd9YDtcbiAgICB9XG5cbiAgICBnZXQgbWFzaygpOiBzdHJpbmcgfCBudWxsIHtcbiAgICAgICAgcmV0dXJuIHRoaXMubWFza2VkXG4gICAgICAgICAgICA/IGB1cmwoJHt0aGlzLmxvY2F0aW9uUmVmLnByZXBhcmVFeHRlcm5hbFVybCh0aGlzLmxvY2F0aW9uUmVmLnBhdGgoKSl9IyR7XG4gICAgICAgICAgICAgICAgICB0aGlzLm1hc2tJZFxuICAgICAgICAgICAgICB9KWBcbiAgICAgICAgICAgIDogbnVsbDtcbiAgICB9XG5cbiAgICBnZXQgcmFkaXVzKCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiBSQURJSVt0aGlzLnNpemVdO1xuICAgIH1cblxuICAgIGdldCBzZWdtZW50cygpOiBSZWFkb25seUFycmF5PFtudW1iZXIsIG51bWJlcl0+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZ2V0U2VnbWVudHModGhpcy52YWx1ZSk7XG4gICAgfVxuXG4gICAgZ2V0VHJhbnNmb3JtKGluZGV4OiBudW1iZXIpOiBzdHJpbmcgfCBudWxsIHtcbiAgICAgICAgY29uc3QgdHJhbnNmb3JtID0gdGhpcy5tYXNrZWRcbiAgICAgICAgICAgID8gYHNjYWxlKCR7VFJBTlNGT1JNW3RoaXMuc2l6ZV19KWBcbiAgICAgICAgICAgIDogYHNjYWxlKCR7VFJBTlNGT1JNLnhzfSlgO1xuXG4gICAgICAgIHJldHVybiBpbmRleCA9PT0gdGhpcy5hY3RpdmVJdGVtSW5kZXggPyB0cmFuc2Zvcm0gOiBudWxsO1xuICAgIH1cblxuICAgIG9uSG92ZXJlZChob3ZlcmVkOiBib29sZWFuLCBpbmRleDogbnVtYmVyKTogdm9pZCB7XG4gICAgICAgIHRoaXMudXBkYXRlQWN0aXZlSXRlbUluZGV4KGhvdmVyZWQgPyBpbmRleCA6IE5hTik7XG4gICAgfVxuXG4gICAgZ2V0Q29sb3IoaW5kZXg6IG51bWJlcik6IFNhZmVWYWx1ZSB7XG4gICAgICAgIHJldHVybiBgdmFyKC0tdHVpLWNoYXJ0LSR7aW5kZXh9YDtcbiAgICB9XG5cbiAgICBAdHVpUHVyZVxuICAgIHByaXZhdGUgZ2V0U3VtKHZhbHVlOiByZWFkb25seSBudW1iZXJbXSk6IG51bWJlciB7XG4gICAgICAgIHJldHVybiB0dWlTdW0oLi4udmFsdWUpO1xuICAgIH1cblxuICAgIEB0dWlQdXJlXG4gICAgcHJpdmF0ZSBnZXRTZWdtZW50cyh2YWx1ZTogcmVhZG9ubHkgbnVtYmVyW10pOiBSZWFkb25seUFycmF5PFtudW1iZXIsIG51bWJlcl0+IHtcbiAgICAgICAgcmV0dXJuIHZhbHVlXG4gICAgICAgICAgICAubWFwKChpbml0aWFsLCBpLCBhcnJheSkgPT5cbiAgICAgICAgICAgICAgICBhcnJheS5yZWR1Y2UoXG4gICAgICAgICAgICAgICAgICAgIChzdW0sIGN1cnJlbnQsIGopID0+IChqIDwgaSA/IHRoaXMuZ2V0RGVnKGN1cnJlbnQpICsgc3VtIDogc3VtKSxcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5nZXREZWcoaW5pdGlhbCksXG4gICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgIClcbiAgICAgICAgICAgIC5tYXAoKGFuZ2xlLCBpbmRleCwgYXJyYXkpID0+IFtcbiAgICAgICAgICAgICAgICBhcnJheVtpbmRleCAtIDFdIHx8IDAsXG4gICAgICAgICAgICAgICAgTWF0aC5taW4oYW5nbGUsIDM1OS45OTk5KSxcbiAgICAgICAgICAgIF0pO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0RGVnKHZhbHVlOiBudW1iZXIpOiBudW1iZXIge1xuICAgICAgICByZXR1cm4gMzYwICogKHZhbHVlIC8gdGhpcy5nZXRTdW0odGhpcy52YWx1ZSkpO1xuICAgIH1cblxuICAgIHByaXZhdGUgdXBkYXRlQWN0aXZlSXRlbUluZGV4KGluZGV4OiBudW1iZXIpOiB2b2lkIHtcbiAgICAgICAgaWYgKGluZGV4ID09PSB0aGlzLmFjdGl2ZUl0ZW1JbmRleCkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5hY3RpdmVJdGVtSW5kZXggPSBpbmRleDtcbiAgICAgICAgdGhpcy5hY3RpdmVJdGVtSW5kZXhDaGFuZ2UubmV4dChpbmRleCk7XG4gICAgfVxufVxuIiwiPHN2Z1xuICAgIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICAgIGhlaWdodD1cIjEwMCVcIlxuICAgIHdpZHRoPVwiMTAwJVwiXG4gICAgdmlld0JveD1cIi0xMDAgLTEwMCAyMDAgMjAwXCJcbiAgICBmb2N1c2FibGU9XCJmYWxzZVwiXG4gICAgY2xhc3M9XCJ0LXN2Z1wiXG4+XG4gICAgPGRlZnM+XG4gICAgICAgIDxtYXNrIFthdHRyLmlkXT1cIm1hc2tJZFwiPlxuICAgICAgICAgICAgPHJlY3RcbiAgICAgICAgICAgICAgICB4PVwiLTIwMFwiXG4gICAgICAgICAgICAgICAgeT1cIi0yMDBcIlxuICAgICAgICAgICAgICAgIHdpZHRoPVwiNDAwXCJcbiAgICAgICAgICAgICAgICBoZWlnaHQ9XCI0MDBcIlxuICAgICAgICAgICAgICAgIGZpbGw9XCJ3aGl0ZVwiXG4gICAgICAgICAgICAvPlxuICAgICAgICAgICAgPGNpcmNsZVxuICAgICAgICAgICAgICAgIGN4PVwiMFwiXG4gICAgICAgICAgICAgICAgY3k9XCIwXCJcbiAgICAgICAgICAgICAgICBbYXR0ci5yXT1cInJhZGl1c1wiXG4gICAgICAgICAgICAvPlxuICAgICAgICA8L21hc2s+XG4gICAgPC9kZWZzPlxuICAgIDxnIFtzdHlsZS5tYXNrXT1cIm1hc2tcIj5cbiAgICAgICAgPGNpcmNsZVxuICAgICAgICAgICAgY3g9XCIwXCJcbiAgICAgICAgICAgIGN5PVwiMFwiXG4gICAgICAgICAgICByPVwiMTAwXCJcbiAgICAgICAgICAgIGNsYXNzPVwidC1wbGFjZWhvbGRlclwiXG4gICAgICAgIC8+XG4gICAgICAgIDxwYXRoXG4gICAgICAgICAgICAqdHVpUmVwZWF0VGltZXM9XCJsZXQgaW5kZXggb2Ygc2VnbWVudHMubGVuZ3RoXCJcbiAgICAgICAgICAgIGZpbGw9XCJjdXJyZW50Q29sb3JcIlxuICAgICAgICAgICAgYXV0b21hdGlvbi1pZD1cInR1aS1waWUtY2hhcnRfX3NlZ21lbnRcIlxuICAgICAgICAgICAgdHVpSGludFBvaW50ZXJcbiAgICAgICAgICAgIHR1aUhpbnRBcHBlYXJhbmNlPVwib25EYXJrXCJcbiAgICAgICAgICAgIHR1aUhpbnREaXJlY3Rpb249XCJ0b3AtcmlnaHRcIlxuICAgICAgICAgICAgZD1cIlwiXG4gICAgICAgICAgICBjbGFzcz1cInQtc2VnbWVudFwiXG4gICAgICAgICAgICBbYXR0ci50cmFuc2Zvcm1dPVwiZ2V0VHJhbnNmb3JtKGluZGV4KVwiXG4gICAgICAgICAgICBbc3R5bGUuY29sb3JdPVwiZ2V0Q29sb3IoaW5kZXgpXCJcbiAgICAgICAgICAgIFt0dWlQaWVDaGFydF09XCJzZWdtZW50c1tpbmRleF1cIlxuICAgICAgICAgICAgW3R1aUhpbnRdPVwiaGludENvbnRlbnRcIlxuICAgICAgICAgICAgW3R1aUhpbnRDb250ZXh0XT1cInskaW1wbGljaXQ6IGluZGV4fVwiXG4gICAgICAgICAgICAodHVpSG92ZXJlZENoYW5nZSk9XCJvbkhvdmVyZWQoJGV2ZW50LCBpbmRleClcIlxuICAgICAgICAvPlxuICAgIDwvZz5cbjwvc3ZnPlxuIl19
|
|
@@ -4,7 +4,7 @@ import { Component, ChangeDetectionStrategy, Optional, Inject, ViewChildren, Inp
|
|
|
4
4
|
import * as i4 from '@taiga-ui/cdk';
|
|
5
5
|
import { EMPTY_QUERY, tuiSum, TuiIdService, tuiDefaultProp, tuiPure, TuiFocusableModule, TuiMapperPipeModule } from '@taiga-ui/cdk';
|
|
6
6
|
import * as i3 from '@taiga-ui/core';
|
|
7
|
-
import {
|
|
7
|
+
import { TuiHintOptionsDirective, TuiDriver, TuiHintModule } from '@taiga-ui/core';
|
|
8
8
|
import * as i1 from '@taiga-ui/addon-charts/components/bar-set';
|
|
9
9
|
import { TuiBarSetModule } from '@taiga-ui/addon-charts/components/bar-set';
|
|
10
10
|
import * as i2 from '@angular/common';
|
|
@@ -16,8 +16,8 @@ function valueAssertion(value) {
|
|
|
16
16
|
}
|
|
17
17
|
const VALUE_ERROR = `All arrays must be of the same length`;
|
|
18
18
|
class TuiBarChartComponent {
|
|
19
|
-
constructor(
|
|
20
|
-
this.
|
|
19
|
+
constructor(hintOptions, idService) {
|
|
20
|
+
this.hintOptions = hintOptions;
|
|
21
21
|
this.drivers = EMPTY_QUERY;
|
|
22
22
|
this.value = [];
|
|
23
23
|
this.max = NaN;
|
|
@@ -28,7 +28,7 @@ class TuiBarChartComponent {
|
|
|
28
28
|
}
|
|
29
29
|
get hintContent() {
|
|
30
30
|
var _a;
|
|
31
|
-
return ((_a = this.
|
|
31
|
+
return ((_a = this.hintOptions) === null || _a === void 0 ? void 0 : _a.content) || ``;
|
|
32
32
|
}
|
|
33
33
|
get transposed() {
|
|
34
34
|
return this.transpose(this.value);
|
|
@@ -48,8 +48,8 @@ class TuiBarChartComponent {
|
|
|
48
48
|
: values.reduce((max, value) => Math.max(...value, max), 0);
|
|
49
49
|
}
|
|
50
50
|
}
|
|
51
|
-
TuiBarChartComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiBarChartComponent, deps: [{ token:
|
|
52
|
-
TuiBarChartComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: TuiBarChartComponent, selector: "tui-bar-chart", inputs: { value: "value", max: "max", size: "size", collapsed: "collapsed" }, viewQueries: [{ propertyName: "drivers", predicate: TuiDriver, descendants: true }], ngImport: i0, template: "<div\n *ngFor=\"let set of transposed; let index = index\"\n tuiHintDirection=\"top\"\n class=\"t-wrapper\"\n [class.t-wrapper_hoverable]=\"!!hintContent\"\n [class.t-wrapper_hovered]=\"drivers.get(index) | async\"\n [tuiHintHost]=\"hintHost\"\n [
|
|
51
|
+
TuiBarChartComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiBarChartComponent, deps: [{ token: TuiHintOptionsDirective, optional: true }, { token: TuiIdService }], target: i0.ɵɵFactoryTarget.Component });
|
|
52
|
+
TuiBarChartComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: TuiBarChartComponent, selector: "tui-bar-chart", inputs: { value: "value", max: "max", size: "size", collapsed: "collapsed" }, viewQueries: [{ propertyName: "drivers", predicate: TuiDriver, descendants: true }], ngImport: i0, template: "<div\n *ngFor=\"let set of transposed; let index = index\"\n tuiHintDirection=\"top\"\n class=\"t-wrapper\"\n [class.t-wrapper_hoverable]=\"!!hintContent\"\n [class.t-wrapper_hovered]=\"drivers.get(index) | async\"\n [tuiHintHost]=\"hintHost\"\n [tuiHint]=\"hintContent\"\n [tuiHintContext]=\"{$implicit: index}\"\n [tuiHintDescribe]=\"getHintId(index)\"\n (mouseenter.once)=\"(0)\"\n>\n <div\n class=\"t-container\"\n [style.height.%]=\"set | tuiMapper: percentMapper:collapsed:computedMax\"\n >\n <div\n #hintHost\n class=\"t-host\"\n ></div>\n <tui-bar-set\n class=\"t-set\"\n [id]=\"getHintId(index)\"\n [tuiFocusable]=\"!!hintContent\"\n [value]=\"set\"\n [size]=\"size\"\n [collapsed]=\"collapsed\"\n ></tui-bar-set>\n </div>\n</div>\n", styles: [":host{display:flex;flex:1;height:100%}.t-wrapper{transition-property:background-color;transition-duration:.3s;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;position:relative;display:flex;flex:1;align-items:flex-end;justify-content:center;height:100%}.t-wrapper_hoverable{cursor:pointer}.t-wrapper_hoverable:hover,.t-wrapper_hoverable.t-wrapper_hovered{background-color:rgba(0,0,0,.05)}.t-container{flex:1}.t-host{position:absolute;left:50%;right:50%}.t-set{border-radius:var(--tui-radius-m);pointer-events:none;outline:none}.t-set:focus{box-shadow:0 0 0 2px var(--tui-focus)}\n"], components: [{ type: i1.TuiBarSetComponent, selector: "tui-bar-set", inputs: ["value", "size", "collapsed"] }], directives: [{ type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i3.TuiHintDirective, selector: "[tuiHint]:not(ng-container)", inputs: ["tuiHint", "tuiHintContext", "tuiHintAppearance"] }, { type: i3.TuiHintDriverDirective, selector: "[tuiHint]" }, { type: i3.TuiHintHoverDirective, selector: "[tuiHint]:not(ng-container)", inputs: ["tuiHintShowDelay", "tuiHintHideDelay"] }, { type: i3.TuiHintPositionDirective, selector: "[tuiHint]:not([tuiHintCustomPosition])", inputs: ["tuiHintDirection"] }, { type: i3.TuiHintHostDirective, selector: "[tuiHint][tuiHintHost]", inputs: ["tuiHintHost"] }, { type: i3.TuiHintDescribeDirective, selector: "[tuiHintDescribe]", inputs: ["tuiHintDescribe"] }, { type: i4.TuiFocusableDirective, selector: "[tuiFocusable]", inputs: ["tuiFocusable"] }], pipes: { "async": i2.AsyncPipe, "tuiMapper": i4.TuiMapperPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
53
53
|
__decorate([
|
|
54
54
|
tuiDefaultProp(valueAssertion, VALUE_ERROR)
|
|
55
55
|
], TuiBarChartComponent.prototype, "value", void 0);
|
|
@@ -75,13 +75,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
|
|
|
75
75
|
templateUrl: `./bar-chart.template.html`,
|
|
76
76
|
styleUrls: [`./bar-chart.style.less`],
|
|
77
77
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
78
|
-
viewProviders: [TUI_HINT_CONTROLLER_OPTIONS],
|
|
79
78
|
}]
|
|
80
|
-
}], ctorParameters: function () { return [{ type: i3.
|
|
79
|
+
}], ctorParameters: function () { return [{ type: i3.TuiHintOptionsDirective, decorators: [{
|
|
81
80
|
type: Optional
|
|
82
81
|
}, {
|
|
83
82
|
type: Inject,
|
|
84
|
-
args: [
|
|
83
|
+
args: [TuiHintOptionsDirective]
|
|
85
84
|
}] }, { type: i4.TuiIdService, decorators: [{
|
|
86
85
|
type: Inject,
|
|
87
86
|
args: [TuiIdService]
|
|
@@ -102,14 +101,12 @@ class TuiBarChartModule {
|
|
|
102
101
|
}
|
|
103
102
|
TuiBarChartModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiBarChartModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
104
103
|
TuiBarChartModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiBarChartModule, declarations: [TuiBarChartComponent], imports: [CommonModule,
|
|
105
|
-
TuiDescribedByModule,
|
|
106
104
|
TuiBarSetModule,
|
|
107
105
|
TuiFocusableModule,
|
|
108
106
|
TuiHintModule,
|
|
109
107
|
TuiMapperPipeModule], exports: [TuiBarChartComponent] });
|
|
110
108
|
TuiBarChartModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiBarChartModule, imports: [[
|
|
111
109
|
CommonModule,
|
|
112
|
-
TuiDescribedByModule,
|
|
113
110
|
TuiBarSetModule,
|
|
114
111
|
TuiFocusableModule,
|
|
115
112
|
TuiHintModule,
|
|
@@ -120,7 +117,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
|
|
|
120
117
|
args: [{
|
|
121
118
|
imports: [
|
|
122
119
|
CommonModule,
|
|
123
|
-
TuiDescribedByModule,
|
|
124
120
|
TuiBarSetModule,
|
|
125
121
|
TuiFocusableModule,
|
|
126
122
|
TuiHintModule,
|