@taiga-ui/addon-charts 4.0.0-alpha.0 → 4.0.0-rc.10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2022/components/axes/axes.component.mjs +3 -3
- package/esm2022/components/pie-chart/pie-chart.component.mjs +2 -2
- package/esm2022/components/pie-chart/pie-chart.directive.mjs +4 -4
- package/fesm2022/taiga-ui-addon-charts-components-axes.mjs +2 -2
- package/fesm2022/taiga-ui-addon-charts-components-axes.mjs.map +1 -1
- package/fesm2022/taiga-ui-addon-charts-components-pie-chart.mjs +4 -4
- package/fesm2022/taiga-ui-addon-charts-components-pie-chart.mjs.map +1 -1
- package/package.json +4 -4
|
@@ -40,12 +40,12 @@ class TuiAxes {
|
|
|
40
40
|
return this.axisY === 'none';
|
|
41
41
|
}
|
|
42
42
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiAxes, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
43
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: TuiAxes, isStandalone: true, selector: "tui-axes", inputs: { axisX: "axisX", axisXLabels: "axisXLabels", axisY: "axisY", axisYInset: "axisYInset", axisYLabels: "axisYLabels", axisYName: "axisYName", axisYSecondaryInset: "axisYSecondaryInset", axisYSecondaryLabels: "axisYSecondaryLabels", axisYSecondaryName: "axisYSecondaryName", horizontalLines: "horizontalLines", horizontalLinesHandler: "horizontalLinesHandler", verticalLines: "verticalLines", verticalLinesHandler: "verticalLinesHandler" }, host: { properties: { "class._centered": "this.centeredXLabels" } }, ngImport: i0, template: "<div\n *ngIf=\"hasYLabels\"\n class=\"t-side\"\n [class.t-side_padding]=\"hasXLabels\"\n>\n <div\n *ngIf=\"axisYName\"\n automation-id=\"tui-axex__axis-y-name\"\n class=\"t-name t-name_primary\"\n >\n {{ axisYName }}\n </div>\n <div\n *ngIf=\"!axisYInset\"\n class=\"t-labels-y t-labels-y_primary\"\n >\n <div\n *ngFor=\"let label of axisYLabels\"\n automation-id=\"tui-axex__axis-y-label\"\n class=\"t-label-y\"\n >\n {{ fallback(label) }}\n </div>\n </div>\n</div>\n<div class=\"t-wrapper\">\n <div\n class=\"t-grid\"\n [style.borderBottomStyle]=\"axisX\"\n [style.borderLeftStyle]=\"axisY\"\n >\n <div class=\"t-vertical\">\n <div\n *tuiRepeatTimes=\"let index of verticalLines\"\n automation-id=\"tui-axex__vertical-line\"\n class=\"t-line t-line_vertical\"\n [style.borderRightStyle]=\"verticalLinesHandler(index, verticalLines)\"\n ></div>\n </div>\n <div class=\"t-horizontal\">\n <div\n *tuiRepeatTimes=\"let index of horizontalLines\"\n automation-id=\"tui-axex__horizontal-line\"\n class=\"t-line\"\n [style.borderTopStyle]=\"horizontalLinesHandler(index, horizontalLines)\"\n ></div>\n </div>\n <div\n *ngIf=\"axisYInset\"\n class=\"t-labels-y t-labels-y_inset\"\n >\n <div\n *ngFor=\"let label of axisYLabels\"\n automation-id=\"tui-axex__axis-y-label\"\n class=\"t-label-y\"\n >\n {{ fallback(label) }}\n </div>\n </div>\n <div\n *ngIf=\"axisYSecondaryInset\"\n class=\"t-labels-y t-labels-y_inset t-labels-y_inset_secondary\"\n >\n <div\n *ngFor=\"let label of axisYSecondaryLabels\"\n automation-id=\"tui-axex__axis-y-secondary-label\"\n class=\"t-label-y\"\n >\n {{ fallback(label) }}\n </div>\n </div>\n <div class=\"t-content\">\n <ng-content />\n </div>\n </div>\n <div\n *ngIf=\"hasXLabels\"\n class=\"t-labels-x\"\n >\n <div\n *ngFor=\"let label of axisXLabels\"\n automation-id=\"tui-axex__axis-x-label\"\n class=\"t-label-x\"\n [class.t-label-x_transparent]=\"label === null\"\n >\n {{ fallback(label) }}\n </div>\n </div>\n</div>\n<div\n *ngIf=\"hasYSecondaryLabels\"\n class=\"t-side\"\n [class.t-side_padding]=\"hasXLabels\"\n>\n <div\n *ngIf=\"!axisYSecondaryInset\"\n class=\"t-labels-y t-labels-y_secondary\"\n >\n <div\n *ngFor=\"let label of axisYSecondaryLabels\"\n automation-id=\"tui-axex__axis-y-secondary-label\"\n class=\"t-label-y\"\n >\n {{ fallback(label) }}\n </div>\n </div>\n <div\n *ngIf=\"axisYSecondaryName\"\n automation-id=\"tui-axex__axis-y-secondary-name\"\n class=\"t-name\"\n >\n {{ axisYSecondaryName }}\n </div>\n</div>\n", styles: [":host{display:flex}.t-wrapper{display:flex;flex:1;height:100%;flex-direction:column}.t-grid{position:relative;display:flex;flex:1;justify-content:space-around;align-items:flex-end;border-width:1px;border-color:var(--tui-border-normal);isolation:isolate}.t-horizontal{position:absolute;top:0;left:0;width:100%;height:100%;display:flex;flex-direction:column}.t-vertical{position:absolute;top:0;left:0;width:100%;height:100%;display:flex}:host._centered .t-vertical:after{content:\"\";display:block;flex:1 0 1px}.t-line{flex:2 0 1px;box-sizing:border-box;border-width:1px;border-color:var(--tui-border-normal)}:host._centered .t-line_vertical:first-child{flex:1 0 1px;pointer-events:none}.t-side{display:flex;align-items:stretch}.t-side_padding{padding-bottom:2rem}.t-name{font:var(--tui-font-text-xs);writing-mode:tb;text-align:center;padding-left:.75rem;color:var(--tui-text-secondary)}.t-name_primary{transform:rotate(180deg)}.t-labels-y{display:flex;font:var(--tui-font-text-xs);flex-direction:column-reverse;justify-content:space-between;color:var(--tui-text-secondary)}.t-labels-y_primary{text-align:right;padding-right:.75rem}.t-labels-y_secondary{padding-left:.75rem}.t-labels-y_transparent{border-color:transparent}.t-labels-y_inset{position:absolute;top:.5625rem;left:.25rem;bottom:-.75rem;pointer-events:none}.t-labels-y_inset_secondary{left:auto;right:.25rem;text-align:right}.t-labels-x{display:flex;font:var(--tui-font-text-xs);border-right:1px solid transparent;color:var(--tui-text-secondary)}.t-label-x{height:.4375rem;border-left:1px solid var(--tui-border-normal);flex:1;margin-bottom:1.5625rem}.t-label-x:before{content:\"\";display:block;height:.5625rem}.t-label-x_transparent{border-color:transparent}:host._centered .t-label-x{height:2rem;text-align:center;border:none;margin:0}:host
|
|
43
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: TuiAxes, isStandalone: true, selector: "tui-axes", inputs: { axisX: "axisX", axisXLabels: "axisXLabels", axisY: "axisY", axisYInset: "axisYInset", axisYLabels: "axisYLabels", axisYName: "axisYName", axisYSecondaryInset: "axisYSecondaryInset", axisYSecondaryLabels: "axisYSecondaryLabels", axisYSecondaryName: "axisYSecondaryName", horizontalLines: "horizontalLines", horizontalLinesHandler: "horizontalLinesHandler", verticalLines: "verticalLines", verticalLinesHandler: "verticalLinesHandler" }, host: { properties: { "class._centered": "this.centeredXLabels" } }, ngImport: i0, template: "<div\n *ngIf=\"hasYLabels\"\n class=\"t-side\"\n [class.t-side_padding]=\"hasXLabels\"\n>\n <div\n *ngIf=\"axisYName\"\n automation-id=\"tui-axex__axis-y-name\"\n class=\"t-name t-name_primary\"\n >\n {{ axisYName }}\n </div>\n <div\n *ngIf=\"!axisYInset\"\n class=\"t-labels-y t-labels-y_primary\"\n >\n <div\n *ngFor=\"let label of axisYLabels\"\n automation-id=\"tui-axex__axis-y-label\"\n class=\"t-label-y\"\n >\n {{ fallback(label) }}\n </div>\n </div>\n</div>\n<div class=\"t-wrapper\">\n <div\n class=\"t-grid\"\n [style.borderBottomStyle]=\"axisX\"\n [style.borderLeftStyle]=\"axisY\"\n >\n <div class=\"t-vertical\">\n <div\n *tuiRepeatTimes=\"let index of verticalLines\"\n automation-id=\"tui-axex__vertical-line\"\n class=\"t-line t-line_vertical\"\n [style.borderRightStyle]=\"verticalLinesHandler(index, verticalLines)\"\n ></div>\n </div>\n <div class=\"t-horizontal\">\n <div\n *tuiRepeatTimes=\"let index of horizontalLines\"\n automation-id=\"tui-axex__horizontal-line\"\n class=\"t-line\"\n [style.borderTopStyle]=\"horizontalLinesHandler(index, horizontalLines)\"\n ></div>\n </div>\n <div\n *ngIf=\"axisYInset\"\n class=\"t-labels-y t-labels-y_inset\"\n >\n <div\n *ngFor=\"let label of axisYLabels\"\n automation-id=\"tui-axex__axis-y-label\"\n class=\"t-label-y\"\n >\n {{ fallback(label) }}\n </div>\n </div>\n <div\n *ngIf=\"axisYSecondaryInset\"\n class=\"t-labels-y t-labels-y_inset t-labels-y_inset_secondary\"\n >\n <div\n *ngFor=\"let label of axisYSecondaryLabels\"\n automation-id=\"tui-axex__axis-y-secondary-label\"\n class=\"t-label-y\"\n >\n {{ fallback(label) }}\n </div>\n </div>\n <div class=\"t-content\">\n <ng-content />\n </div>\n </div>\n <div\n *ngIf=\"hasXLabels\"\n class=\"t-labels-x\"\n >\n <div\n *ngFor=\"let label of axisXLabels\"\n automation-id=\"tui-axex__axis-x-label\"\n class=\"t-label-x\"\n [class.t-label-x_transparent]=\"label === null\"\n >\n {{ fallback(label) }}\n </div>\n </div>\n</div>\n<div\n *ngIf=\"hasYSecondaryLabels\"\n class=\"t-side\"\n [class.t-side_padding]=\"hasXLabels\"\n>\n <div\n *ngIf=\"!axisYSecondaryInset\"\n class=\"t-labels-y t-labels-y_secondary\"\n >\n <div\n *ngFor=\"let label of axisYSecondaryLabels\"\n automation-id=\"tui-axex__axis-y-secondary-label\"\n class=\"t-label-y\"\n >\n {{ fallback(label) }}\n </div>\n </div>\n <div\n *ngIf=\"axisYSecondaryName\"\n automation-id=\"tui-axex__axis-y-secondary-name\"\n class=\"t-name\"\n >\n {{ axisYSecondaryName }}\n </div>\n</div>\n", styles: [":host{display:flex}.t-wrapper{display:flex;flex:1;height:100%;flex-direction:column}.t-grid{position:relative;display:flex;flex:1;justify-content:space-around;align-items:flex-end;border-width:1px;border-color:var(--tui-border-normal);isolation:isolate}.t-horizontal{position:absolute;top:0;left:0;width:100%;height:100%;display:flex;flex-direction:column}.t-vertical{position:absolute;top:0;left:0;width:100%;height:100%;display:flex}:host._centered .t-vertical:after{content:\"\";display:block;flex:1 0 1px}.t-line{flex:2 0 1px;box-sizing:border-box;border-width:1px;border-color:var(--tui-border-normal)}:host._centered .t-line_vertical:first-child{flex:1 0 1px;pointer-events:none}.t-side{display:flex;align-items:stretch}.t-side_padding{padding-bottom:2rem}.t-name{font:var(--tui-font-text-xs);writing-mode:tb;text-align:center;padding-left:.75rem;color:var(--tui-text-secondary)}.t-name_primary{transform:rotate(180deg)}.t-labels-y{display:flex;font:var(--tui-font-text-xs);flex-direction:column-reverse;justify-content:space-between;color:var(--tui-text-secondary)}.t-labels-y_primary{text-align:right;padding-right:.75rem}.t-labels-y_secondary{padding-left:.75rem}.t-labels-y_transparent{border-color:transparent}.t-labels-y_inset{position:absolute;top:.5625rem;left:.25rem;bottom:-.75rem;pointer-events:none}.t-labels-y_inset_secondary{left:auto;right:.25rem;text-align:right}.t-labels-x{position:relative;display:flex;font:var(--tui-font-text-xs);border-right:1px solid transparent;color:var(--tui-text-secondary)}.t-label-x{height:.4375rem;border-left:1px solid var(--tui-border-normal);flex:1;margin-bottom:1.5625rem}.t-label-x:before{content:\"\";display:block;height:.5625rem}.t-label-x_transparent{border-color:transparent}:host._centered .t-label-x{height:2rem;text-align:center;border:none;margin:0}:host:not(._centered) .t-label-x:last-child:not(:first-child){position:absolute;right:0;text-align:right;border-left:none}.t-label-y:first-child{margin-bottom:-.375rem}.t-label-y:last-child{margin-top:-.375rem}.t-content{position:absolute;top:0;left:-1px;right:0;bottom:-1px;display:flex;align-items:flex-end}\n"], dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: TuiRepeatTimes, selector: "[tuiRepeatTimes][tuiRepeatTimesOf]", inputs: ["tuiRepeatTimesOf"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
44
44
|
}
|
|
45
45
|
export { TuiAxes };
|
|
46
46
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiAxes, decorators: [{
|
|
47
47
|
type: Component,
|
|
48
|
-
args: [{ standalone: true, selector: 'tui-axes', imports: [NgIf, NgForOf, TuiRepeatTimes], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div\n *ngIf=\"hasYLabels\"\n class=\"t-side\"\n [class.t-side_padding]=\"hasXLabels\"\n>\n <div\n *ngIf=\"axisYName\"\n automation-id=\"tui-axex__axis-y-name\"\n class=\"t-name t-name_primary\"\n >\n {{ axisYName }}\n </div>\n <div\n *ngIf=\"!axisYInset\"\n class=\"t-labels-y t-labels-y_primary\"\n >\n <div\n *ngFor=\"let label of axisYLabels\"\n automation-id=\"tui-axex__axis-y-label\"\n class=\"t-label-y\"\n >\n {{ fallback(label) }}\n </div>\n </div>\n</div>\n<div class=\"t-wrapper\">\n <div\n class=\"t-grid\"\n [style.borderBottomStyle]=\"axisX\"\n [style.borderLeftStyle]=\"axisY\"\n >\n <div class=\"t-vertical\">\n <div\n *tuiRepeatTimes=\"let index of verticalLines\"\n automation-id=\"tui-axex__vertical-line\"\n class=\"t-line t-line_vertical\"\n [style.borderRightStyle]=\"verticalLinesHandler(index, verticalLines)\"\n ></div>\n </div>\n <div class=\"t-horizontal\">\n <div\n *tuiRepeatTimes=\"let index of horizontalLines\"\n automation-id=\"tui-axex__horizontal-line\"\n class=\"t-line\"\n [style.borderTopStyle]=\"horizontalLinesHandler(index, horizontalLines)\"\n ></div>\n </div>\n <div\n *ngIf=\"axisYInset\"\n class=\"t-labels-y t-labels-y_inset\"\n >\n <div\n *ngFor=\"let label of axisYLabels\"\n automation-id=\"tui-axex__axis-y-label\"\n class=\"t-label-y\"\n >\n {{ fallback(label) }}\n </div>\n </div>\n <div\n *ngIf=\"axisYSecondaryInset\"\n class=\"t-labels-y t-labels-y_inset t-labels-y_inset_secondary\"\n >\n <div\n *ngFor=\"let label of axisYSecondaryLabels\"\n automation-id=\"tui-axex__axis-y-secondary-label\"\n class=\"t-label-y\"\n >\n {{ fallback(label) }}\n </div>\n </div>\n <div class=\"t-content\">\n <ng-content />\n </div>\n </div>\n <div\n *ngIf=\"hasXLabels\"\n class=\"t-labels-x\"\n >\n <div\n *ngFor=\"let label of axisXLabels\"\n automation-id=\"tui-axex__axis-x-label\"\n class=\"t-label-x\"\n [class.t-label-x_transparent]=\"label === null\"\n >\n {{ fallback(label) }}\n </div>\n </div>\n</div>\n<div\n *ngIf=\"hasYSecondaryLabels\"\n class=\"t-side\"\n [class.t-side_padding]=\"hasXLabels\"\n>\n <div\n *ngIf=\"!axisYSecondaryInset\"\n class=\"t-labels-y t-labels-y_secondary\"\n >\n <div\n *ngFor=\"let label of axisYSecondaryLabels\"\n automation-id=\"tui-axex__axis-y-secondary-label\"\n class=\"t-label-y\"\n >\n {{ fallback(label) }}\n </div>\n </div>\n <div\n *ngIf=\"axisYSecondaryName\"\n automation-id=\"tui-axex__axis-y-secondary-name\"\n class=\"t-name\"\n >\n {{ axisYSecondaryName }}\n </div>\n</div>\n", styles: [":host{display:flex}.t-wrapper{display:flex;flex:1;height:100%;flex-direction:column}.t-grid{position:relative;display:flex;flex:1;justify-content:space-around;align-items:flex-end;border-width:1px;border-color:var(--tui-border-normal);isolation:isolate}.t-horizontal{position:absolute;top:0;left:0;width:100%;height:100%;display:flex;flex-direction:column}.t-vertical{position:absolute;top:0;left:0;width:100%;height:100%;display:flex}:host._centered .t-vertical:after{content:\"\";display:block;flex:1 0 1px}.t-line{flex:2 0 1px;box-sizing:border-box;border-width:1px;border-color:var(--tui-border-normal)}:host._centered .t-line_vertical:first-child{flex:1 0 1px;pointer-events:none}.t-side{display:flex;align-items:stretch}.t-side_padding{padding-bottom:2rem}.t-name{font:var(--tui-font-text-xs);writing-mode:tb;text-align:center;padding-left:.75rem;color:var(--tui-text-secondary)}.t-name_primary{transform:rotate(180deg)}.t-labels-y{display:flex;font:var(--tui-font-text-xs);flex-direction:column-reverse;justify-content:space-between;color:var(--tui-text-secondary)}.t-labels-y_primary{text-align:right;padding-right:.75rem}.t-labels-y_secondary{padding-left:.75rem}.t-labels-y_transparent{border-color:transparent}.t-labels-y_inset{position:absolute;top:.5625rem;left:.25rem;bottom:-.75rem;pointer-events:none}.t-labels-y_inset_secondary{left:auto;right:.25rem;text-align:right}.t-labels-x{display:flex;font:var(--tui-font-text-xs);border-right:1px solid transparent;color:var(--tui-text-secondary)}.t-label-x{height:.4375rem;border-left:1px solid var(--tui-border-normal);flex:1;margin-bottom:1.5625rem}.t-label-x:before{content:\"\";display:block;height:.5625rem}.t-label-x_transparent{border-color:transparent}:host._centered .t-label-x{height:2rem;text-align:center;border:none;margin:0}:host
|
|
48
|
+
args: [{ standalone: true, selector: 'tui-axes', imports: [NgIf, NgForOf, TuiRepeatTimes], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div\n *ngIf=\"hasYLabels\"\n class=\"t-side\"\n [class.t-side_padding]=\"hasXLabels\"\n>\n <div\n *ngIf=\"axisYName\"\n automation-id=\"tui-axex__axis-y-name\"\n class=\"t-name t-name_primary\"\n >\n {{ axisYName }}\n </div>\n <div\n *ngIf=\"!axisYInset\"\n class=\"t-labels-y t-labels-y_primary\"\n >\n <div\n *ngFor=\"let label of axisYLabels\"\n automation-id=\"tui-axex__axis-y-label\"\n class=\"t-label-y\"\n >\n {{ fallback(label) }}\n </div>\n </div>\n</div>\n<div class=\"t-wrapper\">\n <div\n class=\"t-grid\"\n [style.borderBottomStyle]=\"axisX\"\n [style.borderLeftStyle]=\"axisY\"\n >\n <div class=\"t-vertical\">\n <div\n *tuiRepeatTimes=\"let index of verticalLines\"\n automation-id=\"tui-axex__vertical-line\"\n class=\"t-line t-line_vertical\"\n [style.borderRightStyle]=\"verticalLinesHandler(index, verticalLines)\"\n ></div>\n </div>\n <div class=\"t-horizontal\">\n <div\n *tuiRepeatTimes=\"let index of horizontalLines\"\n automation-id=\"tui-axex__horizontal-line\"\n class=\"t-line\"\n [style.borderTopStyle]=\"horizontalLinesHandler(index, horizontalLines)\"\n ></div>\n </div>\n <div\n *ngIf=\"axisYInset\"\n class=\"t-labels-y t-labels-y_inset\"\n >\n <div\n *ngFor=\"let label of axisYLabels\"\n automation-id=\"tui-axex__axis-y-label\"\n class=\"t-label-y\"\n >\n {{ fallback(label) }}\n </div>\n </div>\n <div\n *ngIf=\"axisYSecondaryInset\"\n class=\"t-labels-y t-labels-y_inset t-labels-y_inset_secondary\"\n >\n <div\n *ngFor=\"let label of axisYSecondaryLabels\"\n automation-id=\"tui-axex__axis-y-secondary-label\"\n class=\"t-label-y\"\n >\n {{ fallback(label) }}\n </div>\n </div>\n <div class=\"t-content\">\n <ng-content />\n </div>\n </div>\n <div\n *ngIf=\"hasXLabels\"\n class=\"t-labels-x\"\n >\n <div\n *ngFor=\"let label of axisXLabels\"\n automation-id=\"tui-axex__axis-x-label\"\n class=\"t-label-x\"\n [class.t-label-x_transparent]=\"label === null\"\n >\n {{ fallback(label) }}\n </div>\n </div>\n</div>\n<div\n *ngIf=\"hasYSecondaryLabels\"\n class=\"t-side\"\n [class.t-side_padding]=\"hasXLabels\"\n>\n <div\n *ngIf=\"!axisYSecondaryInset\"\n class=\"t-labels-y t-labels-y_secondary\"\n >\n <div\n *ngFor=\"let label of axisYSecondaryLabels\"\n automation-id=\"tui-axex__axis-y-secondary-label\"\n class=\"t-label-y\"\n >\n {{ fallback(label) }}\n </div>\n </div>\n <div\n *ngIf=\"axisYSecondaryName\"\n automation-id=\"tui-axex__axis-y-secondary-name\"\n class=\"t-name\"\n >\n {{ axisYSecondaryName }}\n </div>\n</div>\n", styles: [":host{display:flex}.t-wrapper{display:flex;flex:1;height:100%;flex-direction:column}.t-grid{position:relative;display:flex;flex:1;justify-content:space-around;align-items:flex-end;border-width:1px;border-color:var(--tui-border-normal);isolation:isolate}.t-horizontal{position:absolute;top:0;left:0;width:100%;height:100%;display:flex;flex-direction:column}.t-vertical{position:absolute;top:0;left:0;width:100%;height:100%;display:flex}:host._centered .t-vertical:after{content:\"\";display:block;flex:1 0 1px}.t-line{flex:2 0 1px;box-sizing:border-box;border-width:1px;border-color:var(--tui-border-normal)}:host._centered .t-line_vertical:first-child{flex:1 0 1px;pointer-events:none}.t-side{display:flex;align-items:stretch}.t-side_padding{padding-bottom:2rem}.t-name{font:var(--tui-font-text-xs);writing-mode:tb;text-align:center;padding-left:.75rem;color:var(--tui-text-secondary)}.t-name_primary{transform:rotate(180deg)}.t-labels-y{display:flex;font:var(--tui-font-text-xs);flex-direction:column-reverse;justify-content:space-between;color:var(--tui-text-secondary)}.t-labels-y_primary{text-align:right;padding-right:.75rem}.t-labels-y_secondary{padding-left:.75rem}.t-labels-y_transparent{border-color:transparent}.t-labels-y_inset{position:absolute;top:.5625rem;left:.25rem;bottom:-.75rem;pointer-events:none}.t-labels-y_inset_secondary{left:auto;right:.25rem;text-align:right}.t-labels-x{position:relative;display:flex;font:var(--tui-font-text-xs);border-right:1px solid transparent;color:var(--tui-text-secondary)}.t-label-x{height:.4375rem;border-left:1px solid var(--tui-border-normal);flex:1;margin-bottom:1.5625rem}.t-label-x:before{content:\"\";display:block;height:.5625rem}.t-label-x_transparent{border-color:transparent}:host._centered .t-label-x{height:2rem;text-align:center;border:none;margin:0}:host:not(._centered) .t-label-x:last-child:not(:first-child){position:absolute;right:0;text-align:right;border-left:none}.t-label-y:first-child{margin-bottom:-.375rem}.t-label-y:last-child{margin-top:-.375rem}.t-content{position:absolute;top:0;left:-1px;right:0;bottom:-1px;display:flex;align-items:flex-end}\n"] }]
|
|
49
49
|
}], propDecorators: { axisX: [{
|
|
50
50
|
type: Input
|
|
51
51
|
}], axisXLabels: [{
|
|
@@ -76,4 +76,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
76
76
|
type: HostBinding,
|
|
77
77
|
args: ['class._centered']
|
|
78
78
|
}] } });
|
|
79
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXhlcy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hZGRvbi1jaGFydHMvY29tcG9uZW50cy9heGVzL2F4ZXMuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYWRkb24tY2hhcnRzL2NvbXBvbmVudHMvYXhlcy9heGVzLnRlbXBsYXRlLmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLE9BQU8sRUFBRSxJQUFJLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUM5QyxPQUFPLEVBQUMsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLFdBQVcsRUFBRSxLQUFLLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFFckYsT0FBTyxFQUFDLG1CQUFtQixFQUFDLE1BQU0seUJBQXlCLENBQUM7QUFDNUQsT0FBTyxFQUFDLGNBQWMsRUFBQyxNQUFNLHVDQUF1QyxDQUFDOztBQUVyRSxNQUFNLENBQUMsTUFBTSxpQkFBaUIsR0FBbUIsR0FBRyxFQUFFLENBQUMsUUFBUSxDQUFDO0FBQ2hFLE1BQU0sQ0FBQyxNQUFNLGlCQUFpQixHQUFtQixHQUFHLEVBQUUsQ0FBQyxRQUFRLENBQUM7QUFDaEUsTUFBTSxDQUFDLE1BQU0sZ0JBQWdCLEdBQW1CLEdBQUcsRUFBRSxDQUFDLE9BQU8sQ0FBQztBQUM5RCxNQUFNLENBQUMsTUFBTSxlQUFlLEdBQW1CLEdBQUcsRUFBRSxDQUFDLE1BQU0sQ0FBQztBQUU1RCxNQVFhLE9BQU87SUFScEI7UUFVVyxVQUFLLEdBQWdCLE9BQU8sQ0FBQztRQUc3QixnQkFBVyxHQUFpQyxFQUFFLENBQUM7UUFHL0MsVUFBSyxHQUFnQixPQUFPLENBQUM7UUFHN0IsZUFBVSxHQUFHLEtBQUssQ0FBQztRQUduQixnQkFBVyxHQUFzQixFQUFFLENBQUM7UUFHcEMsY0FBUyxHQUFHLEVBQUUsQ0FBQztRQUdmLHdCQUFtQixHQUFHLEtBQUssQ0FBQztRQUc1Qix5QkFBb0IsR0FBc0IsRUFBRSxDQUFDO1FBRzdDLHVCQUFrQixHQUFHLEVBQUUsQ0FBQztRQUd4QixvQkFBZSxHQUFHLENBQUMsQ0FBQztRQUdwQiwyQkFBc0IsR0FBbUIsZ0JBQWdCLENBQUM7UUFHMUQsa0JBQWEsR0FBRyxDQUFDLENBQUM7UUFHbEIseUJBQW9CLEdBQW1CLGlCQUFpQixDQUFDO0tBeUJuRTtJQXZCRyxJQUFXLFVBQVU7UUFDakIsT0FBTyxDQUFDLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQUM7SUFDckMsQ0FBQztJQUVELElBQVcsVUFBVTtRQUNqQixPQUFPLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsTUFBTSxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDO0lBQy9FLENBQUM7SUFFRCxJQUFXLG1CQUFtQjtRQUMxQixPQUFPLENBQ0gsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLG9CQUFvQixDQUFDLE1BQU0sSUFBSSxDQUFDLElBQUksQ0FBQyxtQkFBbUIsQ0FBQztZQUNqRSxDQUFDLENBQUMsSUFBSSxDQUFDLGtCQUFrQixDQUM1QixDQUFDO0lBQ04sQ0FBQztJQUVNLFFBQVEsQ0FBQyxLQUFvQjtRQUNoQyxPQUFPLEtBQUssSUFBSSxtQkFBbUIsQ0FBQztJQUN4QyxDQUFDO0lBRUQsSUFDYyxlQUFlO1FBQ3pCLE9BQU8sSUFBSSxDQUFDLEtBQUssS0FBSyxNQUFNLENBQUM7SUFDakMsQ0FBQzsrR0E5RFEsT0FBTzttR0FBUCxPQUFPLHVrQkNuQnBCLG15R0FrSEEsMHFFRHBHYyxJQUFJLDZGQUFFLE9BQU8sbUhBQUUsY0FBYzs7U0FLOUIsT0FBTzs0RkFBUCxPQUFPO2tCQVJuQixTQUFTO2lDQUNNLElBQUksWUFDTixVQUFVLFdBQ1gsQ0FBQyxJQUFJLEVBQUUsT0FBTyxFQUFFLGNBQWMsQ0FBQyxtQkFHdkIsdUJBQXVCLENBQUMsTUFBTTs4QkFJeEMsS0FBSztzQkFEWCxLQUFLO2dCQUlDLFdBQVc7c0JBRGpCLEtBQUs7Z0JBSUMsS0FBSztzQkFEWCxLQUFLO2dCQUlDLFVBQVU7c0JBRGhCLEtBQUs7Z0JBSUMsV0FBVztzQkFEakIsS0FBSztnQkFJQyxTQUFTO3NCQURmLEtBQUs7Z0JBSUMsbUJBQW1CO3NCQUR6QixLQUFLO2dCQUlDLG9CQUFvQjtzQkFEMUIsS0FBSztnQkFJQyxrQkFBa0I7c0JBRHhCLEtBQUs7Z0JBSUMsZUFBZTtzQkFEckIsS0FBSztnQkFJQyxzQkFBc0I7c0JBRDVCLEtBQUs7Z0JBSUMsYUFBYTtzQkFEbkIsS0FBSztnQkFJQyxvQkFBb0I7c0JBRDFCLEtBQUs7Z0JBdUJRLGVBQWU7c0JBRDVCLFdBQVc7dUJBQUMsaUJBQWlCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtOZ0Zvck9mLCBOZ0lmfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBIb3N0QmluZGluZywgSW5wdXR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHR5cGUge1R1aUxpbmVIYW5kbGVyLCBUdWlMaW5lVHlwZX0gZnJvbSAnQHRhaWdhLXVpL2FkZG9uLWNoYXJ0cy90eXBlcyc7XG5pbXBvcnQge0NIQVJfTk9fQlJFQUtfU1BBQ0V9IGZyb20gJ0B0YWlnYS11aS9jZGsvY29uc3RhbnRzJztcbmltcG9ydCB7VHVpUmVwZWF0VGltZXN9IGZyb20gJ0B0YWlnYS11aS9jZGsvZGlyZWN0aXZlcy9yZXBlYXQtdGltZXMnO1xuXG5leHBvcnQgY29uc3QgVFVJX0FMV0FZU19EQVNIRUQ6IFR1aUxpbmVIYW5kbGVyID0gKCkgPT4gJ2Rhc2hlZCc7XG5leHBvcnQgY29uc3QgVFVJX0FMV0FZU19ET1RURUQ6IFR1aUxpbmVIYW5kbGVyID0gKCkgPT4gJ2RvdHRlZCc7XG5leHBvcnQgY29uc3QgVFVJX0FMV0FZU19TT0xJRDogVHVpTGluZUhhbmRsZXIgPSAoKSA9PiAnc29saWQnO1xuZXhwb3J0IGNvbnN0IFRVSV9BTFdBWVNfTk9ORTogVHVpTGluZUhhbmRsZXIgPSAoKSA9PiAnbm9uZSc7XG5cbkBDb21wb25lbnQoe1xuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgc2VsZWN0b3I6ICd0dWktYXhlcycsXG4gICAgaW1wb3J0czogW05nSWYsIE5nRm9yT2YsIFR1aVJlcGVhdFRpbWVzXSxcbiAgICB0ZW1wbGF0ZVVybDogJy4vYXhlcy50ZW1wbGF0ZS5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9heGVzLnN0eWxlLmxlc3MnXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgVHVpQXhlcyB7XG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgYXhpc1g6IFR1aUxpbmVUeXBlID0gJ3NvbGlkJztcblxuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIGF4aXNYTGFiZWxzOiBSZWFkb25seUFycmF5PHN0cmluZyB8IG51bGw+ID0gW107XG5cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBheGlzWTogVHVpTGluZVR5cGUgPSAnc29saWQnO1xuXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgYXhpc1lJbnNldCA9IGZhbHNlO1xuXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgYXhpc1lMYWJlbHM6IHJlYWRvbmx5IHN0cmluZ1tdID0gW107XG5cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBheGlzWU5hbWUgPSAnJztcblxuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIGF4aXNZU2Vjb25kYXJ5SW5zZXQgPSBmYWxzZTtcblxuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIGF4aXNZU2Vjb25kYXJ5TGFiZWxzOiByZWFkb25seSBzdHJpbmdbXSA9IFtdO1xuXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgYXhpc1lTZWNvbmRhcnlOYW1lID0gJyc7XG5cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBob3Jpem9udGFsTGluZXMgPSAwO1xuXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgaG9yaXpvbnRhbExpbmVzSGFuZGxlcjogVHVpTGluZUhhbmRsZXIgPSBUVUlfQUxXQVlTX1NPTElEO1xuXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgdmVydGljYWxMaW5lcyA9IDA7XG5cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyB2ZXJ0aWNhbExpbmVzSGFuZGxlcjogVHVpTGluZUhhbmRsZXIgPSBUVUlfQUxXQVlTX0RBU0hFRDtcblxuICAgIHB1YmxpYyBnZXQgaGFzWExhYmVscygpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuICEhdGhpcy5heGlzWExhYmVscy5sZW5ndGg7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBoYXNZTGFiZWxzKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gKCEhdGhpcy5heGlzWUxhYmVscy5sZW5ndGggJiYgIXRoaXMuYXhpc1lJbnNldCkgfHwgISF0aGlzLmF4aXNZTmFtZTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IGhhc1lTZWNvbmRhcnlMYWJlbHMoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICAoISF0aGlzLmF4aXNZU2Vjb25kYXJ5TGFiZWxzLmxlbmd0aCAmJiAhdGhpcy5heGlzWVNlY29uZGFyeUluc2V0KSB8fFxuICAgICAgICAgICAgISF0aGlzLmF4aXNZU2Vjb25kYXJ5TmFtZVxuICAgICAgICApO1xuICAgIH1cblxuICAgIHB1YmxpYyBmYWxsYmFjayhsYWJlbDogc3RyaW5nIHwgbnVsbCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiBsYWJlbCB8fCBDSEFSX05PX0JSRUFLX1NQQUNFO1xuICAgIH1cblxuICAgIEBIb3N0QmluZGluZygnY2xhc3MuX2NlbnRlcmVkJylcbiAgICBwcm90ZWN0ZWQgZ2V0IGNlbnRlcmVkWExhYmVscygpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuYXhpc1kgPT09ICdub25lJztcbiAgICB9XG59XG4iLCI8ZGl2XG4gICAgKm5nSWY9XCJoYXNZTGFiZWxzXCJcbiAgICBjbGFzcz1cInQtc2lkZVwiXG4gICAgW2NsYXNzLnQtc2lkZV9wYWRkaW5nXT1cImhhc1hMYWJlbHNcIlxuPlxuICAgIDxkaXZcbiAgICAgICAgKm5nSWY9XCJheGlzWU5hbWVcIlxuICAgICAgICBhdXRvbWF0aW9uLWlkPVwidHVpLWF4ZXhfX2F4aXMteS1uYW1lXCJcbiAgICAgICAgY2xhc3M9XCJ0LW5hbWUgdC1uYW1lX3ByaW1hcnlcIlxuICAgID5cbiAgICAgICAge3sgYXhpc1lOYW1lIH19XG4gICAgPC9kaXY+XG4gICAgPGRpdlxuICAgICAgICAqbmdJZj1cIiFheGlzWUluc2V0XCJcbiAgICAgICAgY2xhc3M9XCJ0LWxhYmVscy15IHQtbGFiZWxzLXlfcHJpbWFyeVwiXG4gICAgPlxuICAgICAgICA8ZGl2XG4gICAgICAgICAgICAqbmdGb3I9XCJsZXQgbGFiZWwgb2YgYXhpc1lMYWJlbHNcIlxuICAgICAgICAgICAgYXV0b21hdGlvbi1pZD1cInR1aS1heGV4X19heGlzLXktbGFiZWxcIlxuICAgICAgICAgICAgY2xhc3M9XCJ0LWxhYmVsLXlcIlxuICAgICAgICA+XG4gICAgICAgICAgICB7eyBmYWxsYmFjayhsYWJlbCkgfX1cbiAgICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG48L2Rpdj5cbjxkaXYgY2xhc3M9XCJ0LXdyYXBwZXJcIj5cbiAgICA8ZGl2XG4gICAgICAgIGNsYXNzPVwidC1ncmlkXCJcbiAgICAgICAgW3N0eWxlLmJvcmRlckJvdHRvbVN0eWxlXT1cImF4aXNYXCJcbiAgICAgICAgW3N0eWxlLmJvcmRlckxlZnRTdHlsZV09XCJheGlzWVwiXG4gICAgPlxuICAgICAgICA8ZGl2IGNsYXNzPVwidC12ZXJ0aWNhbFwiPlxuICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgICp0dWlSZXBlYXRUaW1lcz1cImxldCBpbmRleCBvZiB2ZXJ0aWNhbExpbmVzXCJcbiAgICAgICAgICAgICAgICBhdXRvbWF0aW9uLWlkPVwidHVpLWF4ZXhfX3ZlcnRpY2FsLWxpbmVcIlxuICAgICAgICAgICAgICAgIGNsYXNzPVwidC1saW5lIHQtbGluZV92ZXJ0aWNhbFwiXG4gICAgICAgICAgICAgICAgW3N0eWxlLmJvcmRlclJpZ2h0U3R5bGVdPVwidmVydGljYWxMaW5lc0hhbmRsZXIoaW5kZXgsIHZlcnRpY2FsTGluZXMpXCJcbiAgICAgICAgICAgID48L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJ0LWhvcml6b250YWxcIj5cbiAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgICAqdHVpUmVwZWF0VGltZXM9XCJsZXQgaW5kZXggb2YgaG9yaXpvbnRhbExpbmVzXCJcbiAgICAgICAgICAgICAgICBhdXRvbWF0aW9uLWlkPVwidHVpLWF4ZXhfX2hvcml6b250YWwtbGluZVwiXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJ0LWxpbmVcIlxuICAgICAgICAgICAgICAgIFtzdHlsZS5ib3JkZXJUb3BTdHlsZV09XCJob3Jpem9udGFsTGluZXNIYW5kbGVyKGluZGV4LCBob3Jpem9udGFsTGluZXMpXCJcbiAgICAgICAgICAgID48L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXZcbiAgICAgICAgICAgICpuZ0lmPVwiYXhpc1lJbnNldFwiXG4gICAgICAgICAgICBjbGFzcz1cInQtbGFiZWxzLXkgdC1sYWJlbHMteV9pbnNldFwiXG4gICAgICAgID5cbiAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgICAqbmdGb3I9XCJsZXQgbGFiZWwgb2YgYXhpc1lMYWJlbHNcIlxuICAgICAgICAgICAgICAgIGF1dG9tYXRpb24taWQ9XCJ0dWktYXhleF9fYXhpcy15LWxhYmVsXCJcbiAgICAgICAgICAgICAgICBjbGFzcz1cInQtbGFiZWwteVwiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAge3sgZmFsbGJhY2sobGFiZWwpIH19XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXZcbiAgICAgICAgICAgICpuZ0lmPVwiYXhpc1lTZWNvbmRhcnlJbnNldFwiXG4gICAgICAgICAgICBjbGFzcz1cInQtbGFiZWxzLXkgdC1sYWJlbHMteV9pbnNldCB0LWxhYmVscy15X2luc2V0X3NlY29uZGFyeVwiXG4gICAgICAgID5cbiAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgICAqbmdGb3I9XCJsZXQgbGFiZWwgb2YgYXhpc1lTZWNvbmRhcnlMYWJlbHNcIlxuICAgICAgICAgICAgICAgIGF1dG9tYXRpb24taWQ9XCJ0dWktYXhleF9fYXhpcy15LXNlY29uZGFyeS1sYWJlbFwiXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJ0LWxhYmVsLXlcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIHt7IGZhbGxiYWNrKGxhYmVsKSB9fVxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwidC1jb250ZW50XCI+XG4gICAgICAgICAgICA8bmctY29udGVudCAvPlxuICAgICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2XG4gICAgICAgICpuZ0lmPVwiaGFzWExhYmVsc1wiXG4gICAgICAgIGNsYXNzPVwidC1sYWJlbHMteFwiXG4gICAgPlxuICAgICAgICA8ZGl2XG4gICAgICAgICAgICAqbmdGb3I9XCJsZXQgbGFiZWwgb2YgYXhpc1hMYWJlbHNcIlxuICAgICAgICAgICAgYXV0b21hdGlvbi1pZD1cInR1aS1heGV4X19heGlzLXgtbGFiZWxcIlxuICAgICAgICAgICAgY2xhc3M9XCJ0LWxhYmVsLXhcIlxuICAgICAgICAgICAgW2NsYXNzLnQtbGFiZWwteF90cmFuc3BhcmVudF09XCJsYWJlbCA9PT0gbnVsbFwiXG4gICAgICAgID5cbiAgICAgICAgICAgIHt7IGZhbGxiYWNrKGxhYmVsKSB9fVxuICAgICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbjwvZGl2PlxuPGRpdlxuICAgICpuZ0lmPVwiaGFzWVNlY29uZGFyeUxhYmVsc1wiXG4gICAgY2xhc3M9XCJ0LXNpZGVcIlxuICAgIFtjbGFzcy50LXNpZGVfcGFkZGluZ109XCJoYXNYTGFiZWxzXCJcbj5cbiAgICA8ZGl2XG4gICAgICAgICpuZ0lmPVwiIWF4aXNZU2Vjb25kYXJ5SW5zZXRcIlxuICAgICAgICBjbGFzcz1cInQtbGFiZWxzLXkgdC1sYWJlbHMteV9zZWNvbmRhcnlcIlxuICAgID5cbiAgICAgICAgPGRpdlxuICAgICAgICAgICAgKm5nRm9yPVwibGV0IGxhYmVsIG9mIGF4aXNZU2Vjb25kYXJ5TGFiZWxzXCJcbiAgICAgICAgICAgIGF1dG9tYXRpb24taWQ9XCJ0dWktYXhleF9fYXhpcy15LXNlY29uZGFyeS1sYWJlbFwiXG4gICAgICAgICAgICBjbGFzcz1cInQtbGFiZWwteVwiXG4gICAgICAgID5cbiAgICAgICAgICAgIHt7IGZhbGxiYWNrKGxhYmVsKSB9fVxuICAgICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2XG4gICAgICAgICpuZ0lmPVwiYXhpc1lTZWNvbmRhcnlOYW1lXCJcbiAgICAgICAgYXV0b21hdGlvbi1pZD1cInR1aS1heGV4X19heGlzLXktc2Vjb25kYXJ5LW5hbWVcIlxuICAgICAgICBjbGFzcz1cInQtbmFtZVwiXG4gICAgPlxuICAgICAgICB7eyBheGlzWVNlY29uZGFyeU5hbWUgfX1cbiAgICA8L2Rpdj5cbjwvZGl2PlxuIl19
|
|
79
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXhlcy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hZGRvbi1jaGFydHMvY29tcG9uZW50cy9heGVzL2F4ZXMuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYWRkb24tY2hhcnRzL2NvbXBvbmVudHMvYXhlcy9heGVzLnRlbXBsYXRlLmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLE9BQU8sRUFBRSxJQUFJLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUM5QyxPQUFPLEVBQUMsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLFdBQVcsRUFBRSxLQUFLLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFFckYsT0FBTyxFQUFDLG1CQUFtQixFQUFDLE1BQU0seUJBQXlCLENBQUM7QUFDNUQsT0FBTyxFQUFDLGNBQWMsRUFBQyxNQUFNLHVDQUF1QyxDQUFDOztBQUVyRSxNQUFNLENBQUMsTUFBTSxpQkFBaUIsR0FBbUIsR0FBRyxFQUFFLENBQUMsUUFBUSxDQUFDO0FBQ2hFLE1BQU0sQ0FBQyxNQUFNLGlCQUFpQixHQUFtQixHQUFHLEVBQUUsQ0FBQyxRQUFRLENBQUM7QUFDaEUsTUFBTSxDQUFDLE1BQU0sZ0JBQWdCLEdBQW1CLEdBQUcsRUFBRSxDQUFDLE9BQU8sQ0FBQztBQUM5RCxNQUFNLENBQUMsTUFBTSxlQUFlLEdBQW1CLEdBQUcsRUFBRSxDQUFDLE1BQU0sQ0FBQztBQUU1RCxNQVFhLE9BQU87SUFScEI7UUFVVyxVQUFLLEdBQWdCLE9BQU8sQ0FBQztRQUc3QixnQkFBVyxHQUFpQyxFQUFFLENBQUM7UUFHL0MsVUFBSyxHQUFnQixPQUFPLENBQUM7UUFHN0IsZUFBVSxHQUFHLEtBQUssQ0FBQztRQUduQixnQkFBVyxHQUFzQixFQUFFLENBQUM7UUFHcEMsY0FBUyxHQUFHLEVBQUUsQ0FBQztRQUdmLHdCQUFtQixHQUFHLEtBQUssQ0FBQztRQUc1Qix5QkFBb0IsR0FBc0IsRUFBRSxDQUFDO1FBRzdDLHVCQUFrQixHQUFHLEVBQUUsQ0FBQztRQUd4QixvQkFBZSxHQUFHLENBQUMsQ0FBQztRQUdwQiwyQkFBc0IsR0FBbUIsZ0JBQWdCLENBQUM7UUFHMUQsa0JBQWEsR0FBRyxDQUFDLENBQUM7UUFHbEIseUJBQW9CLEdBQW1CLGlCQUFpQixDQUFDO0tBeUJuRTtJQXZCRyxJQUFXLFVBQVU7UUFDakIsT0FBTyxDQUFDLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQUM7SUFDckMsQ0FBQztJQUVELElBQVcsVUFBVTtRQUNqQixPQUFPLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsTUFBTSxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDO0lBQy9FLENBQUM7SUFFRCxJQUFXLG1CQUFtQjtRQUMxQixPQUFPLENBQ0gsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLG9CQUFvQixDQUFDLE1BQU0sSUFBSSxDQUFDLElBQUksQ0FBQyxtQkFBbUIsQ0FBQztZQUNqRSxDQUFDLENBQUMsSUFBSSxDQUFDLGtCQUFrQixDQUM1QixDQUFDO0lBQ04sQ0FBQztJQUVNLFFBQVEsQ0FBQyxLQUFvQjtRQUNoQyxPQUFPLEtBQUssSUFBSSxtQkFBbUIsQ0FBQztJQUN4QyxDQUFDO0lBRUQsSUFDYyxlQUFlO1FBQ3pCLE9BQU8sSUFBSSxDQUFDLEtBQUssS0FBSyxNQUFNLENBQUM7SUFDakMsQ0FBQzsrR0E5RFEsT0FBTzttR0FBUCxPQUFPLHVrQkNuQnBCLG15R0FrSEEseW9FRHBHYyxJQUFJLDZGQUFFLE9BQU8sbUhBQUUsY0FBYzs7U0FLOUIsT0FBTzs0RkFBUCxPQUFPO2tCQVJuQixTQUFTO2lDQUNNLElBQUksWUFDTixVQUFVLFdBQ1gsQ0FBQyxJQUFJLEVBQUUsT0FBTyxFQUFFLGNBQWMsQ0FBQyxtQkFHdkIsdUJBQXVCLENBQUMsTUFBTTs4QkFJeEMsS0FBSztzQkFEWCxLQUFLO2dCQUlDLFdBQVc7c0JBRGpCLEtBQUs7Z0JBSUMsS0FBSztzQkFEWCxLQUFLO2dCQUlDLFVBQVU7c0JBRGhCLEtBQUs7Z0JBSUMsV0FBVztzQkFEakIsS0FBSztnQkFJQyxTQUFTO3NCQURmLEtBQUs7Z0JBSUMsbUJBQW1CO3NCQUR6QixLQUFLO2dCQUlDLG9CQUFvQjtzQkFEMUIsS0FBSztnQkFJQyxrQkFBa0I7c0JBRHhCLEtBQUs7Z0JBSUMsZUFBZTtzQkFEckIsS0FBSztnQkFJQyxzQkFBc0I7c0JBRDVCLEtBQUs7Z0JBSUMsYUFBYTtzQkFEbkIsS0FBSztnQkFJQyxvQkFBb0I7c0JBRDFCLEtBQUs7Z0JBdUJRLGVBQWU7c0JBRDVCLFdBQVc7dUJBQUMsaUJBQWlCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtOZ0Zvck9mLCBOZ0lmfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBIb3N0QmluZGluZywgSW5wdXR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHR5cGUge1R1aUxpbmVIYW5kbGVyLCBUdWlMaW5lVHlwZX0gZnJvbSAnQHRhaWdhLXVpL2FkZG9uLWNoYXJ0cy90eXBlcyc7XG5pbXBvcnQge0NIQVJfTk9fQlJFQUtfU1BBQ0V9IGZyb20gJ0B0YWlnYS11aS9jZGsvY29uc3RhbnRzJztcbmltcG9ydCB7VHVpUmVwZWF0VGltZXN9IGZyb20gJ0B0YWlnYS11aS9jZGsvZGlyZWN0aXZlcy9yZXBlYXQtdGltZXMnO1xuXG5leHBvcnQgY29uc3QgVFVJX0FMV0FZU19EQVNIRUQ6IFR1aUxpbmVIYW5kbGVyID0gKCkgPT4gJ2Rhc2hlZCc7XG5leHBvcnQgY29uc3QgVFVJX0FMV0FZU19ET1RURUQ6IFR1aUxpbmVIYW5kbGVyID0gKCkgPT4gJ2RvdHRlZCc7XG5leHBvcnQgY29uc3QgVFVJX0FMV0FZU19TT0xJRDogVHVpTGluZUhhbmRsZXIgPSAoKSA9PiAnc29saWQnO1xuZXhwb3J0IGNvbnN0IFRVSV9BTFdBWVNfTk9ORTogVHVpTGluZUhhbmRsZXIgPSAoKSA9PiAnbm9uZSc7XG5cbkBDb21wb25lbnQoe1xuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgc2VsZWN0b3I6ICd0dWktYXhlcycsXG4gICAgaW1wb3J0czogW05nSWYsIE5nRm9yT2YsIFR1aVJlcGVhdFRpbWVzXSxcbiAgICB0ZW1wbGF0ZVVybDogJy4vYXhlcy50ZW1wbGF0ZS5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9heGVzLnN0eWxlLmxlc3MnXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgVHVpQXhlcyB7XG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgYXhpc1g6IFR1aUxpbmVUeXBlID0gJ3NvbGlkJztcblxuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIGF4aXNYTGFiZWxzOiBSZWFkb25seUFycmF5PHN0cmluZyB8IG51bGw+ID0gW107XG5cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBheGlzWTogVHVpTGluZVR5cGUgPSAnc29saWQnO1xuXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgYXhpc1lJbnNldCA9IGZhbHNlO1xuXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgYXhpc1lMYWJlbHM6IHJlYWRvbmx5IHN0cmluZ1tdID0gW107XG5cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBheGlzWU5hbWUgPSAnJztcblxuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIGF4aXNZU2Vjb25kYXJ5SW5zZXQgPSBmYWxzZTtcblxuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIGF4aXNZU2Vjb25kYXJ5TGFiZWxzOiByZWFkb25seSBzdHJpbmdbXSA9IFtdO1xuXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgYXhpc1lTZWNvbmRhcnlOYW1lID0gJyc7XG5cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBob3Jpem9udGFsTGluZXMgPSAwO1xuXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgaG9yaXpvbnRhbExpbmVzSGFuZGxlcjogVHVpTGluZUhhbmRsZXIgPSBUVUlfQUxXQVlTX1NPTElEO1xuXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgdmVydGljYWxMaW5lcyA9IDA7XG5cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyB2ZXJ0aWNhbExpbmVzSGFuZGxlcjogVHVpTGluZUhhbmRsZXIgPSBUVUlfQUxXQVlTX0RBU0hFRDtcblxuICAgIHB1YmxpYyBnZXQgaGFzWExhYmVscygpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuICEhdGhpcy5heGlzWExhYmVscy5sZW5ndGg7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBoYXNZTGFiZWxzKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gKCEhdGhpcy5heGlzWUxhYmVscy5sZW5ndGggJiYgIXRoaXMuYXhpc1lJbnNldCkgfHwgISF0aGlzLmF4aXNZTmFtZTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IGhhc1lTZWNvbmRhcnlMYWJlbHMoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICAoISF0aGlzLmF4aXNZU2Vjb25kYXJ5TGFiZWxzLmxlbmd0aCAmJiAhdGhpcy5heGlzWVNlY29uZGFyeUluc2V0KSB8fFxuICAgICAgICAgICAgISF0aGlzLmF4aXNZU2Vjb25kYXJ5TmFtZVxuICAgICAgICApO1xuICAgIH1cblxuICAgIHB1YmxpYyBmYWxsYmFjayhsYWJlbDogc3RyaW5nIHwgbnVsbCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiBsYWJlbCB8fCBDSEFSX05PX0JSRUFLX1NQQUNFO1xuICAgIH1cblxuICAgIEBIb3N0QmluZGluZygnY2xhc3MuX2NlbnRlcmVkJylcbiAgICBwcm90ZWN0ZWQgZ2V0IGNlbnRlcmVkWExhYmVscygpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuYXhpc1kgPT09ICdub25lJztcbiAgICB9XG59XG4iLCI8ZGl2XG4gICAgKm5nSWY9XCJoYXNZTGFiZWxzXCJcbiAgICBjbGFzcz1cInQtc2lkZVwiXG4gICAgW2NsYXNzLnQtc2lkZV9wYWRkaW5nXT1cImhhc1hMYWJlbHNcIlxuPlxuICAgIDxkaXZcbiAgICAgICAgKm5nSWY9XCJheGlzWU5hbWVcIlxuICAgICAgICBhdXRvbWF0aW9uLWlkPVwidHVpLWF4ZXhfX2F4aXMteS1uYW1lXCJcbiAgICAgICAgY2xhc3M9XCJ0LW5hbWUgdC1uYW1lX3ByaW1hcnlcIlxuICAgID5cbiAgICAgICAge3sgYXhpc1lOYW1lIH19XG4gICAgPC9kaXY+XG4gICAgPGRpdlxuICAgICAgICAqbmdJZj1cIiFheGlzWUluc2V0XCJcbiAgICAgICAgY2xhc3M9XCJ0LWxhYmVscy15IHQtbGFiZWxzLXlfcHJpbWFyeVwiXG4gICAgPlxuICAgICAgICA8ZGl2XG4gICAgICAgICAgICAqbmdGb3I9XCJsZXQgbGFiZWwgb2YgYXhpc1lMYWJlbHNcIlxuICAgICAgICAgICAgYXV0b21hdGlvbi1pZD1cInR1aS1heGV4X19heGlzLXktbGFiZWxcIlxuICAgICAgICAgICAgY2xhc3M9XCJ0LWxhYmVsLXlcIlxuICAgICAgICA+XG4gICAgICAgICAgICB7eyBmYWxsYmFjayhsYWJlbCkgfX1cbiAgICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG48L2Rpdj5cbjxkaXYgY2xhc3M9XCJ0LXdyYXBwZXJcIj5cbiAgICA8ZGl2XG4gICAgICAgIGNsYXNzPVwidC1ncmlkXCJcbiAgICAgICAgW3N0eWxlLmJvcmRlckJvdHRvbVN0eWxlXT1cImF4aXNYXCJcbiAgICAgICAgW3N0eWxlLmJvcmRlckxlZnRTdHlsZV09XCJheGlzWVwiXG4gICAgPlxuICAgICAgICA8ZGl2IGNsYXNzPVwidC12ZXJ0aWNhbFwiPlxuICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgICp0dWlSZXBlYXRUaW1lcz1cImxldCBpbmRleCBvZiB2ZXJ0aWNhbExpbmVzXCJcbiAgICAgICAgICAgICAgICBhdXRvbWF0aW9uLWlkPVwidHVpLWF4ZXhfX3ZlcnRpY2FsLWxpbmVcIlxuICAgICAgICAgICAgICAgIGNsYXNzPVwidC1saW5lIHQtbGluZV92ZXJ0aWNhbFwiXG4gICAgICAgICAgICAgICAgW3N0eWxlLmJvcmRlclJpZ2h0U3R5bGVdPVwidmVydGljYWxMaW5lc0hhbmRsZXIoaW5kZXgsIHZlcnRpY2FsTGluZXMpXCJcbiAgICAgICAgICAgID48L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJ0LWhvcml6b250YWxcIj5cbiAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgICAqdHVpUmVwZWF0VGltZXM9XCJsZXQgaW5kZXggb2YgaG9yaXpvbnRhbExpbmVzXCJcbiAgICAgICAgICAgICAgICBhdXRvbWF0aW9uLWlkPVwidHVpLWF4ZXhfX2hvcml6b250YWwtbGluZVwiXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJ0LWxpbmVcIlxuICAgICAgICAgICAgICAgIFtzdHlsZS5ib3JkZXJUb3BTdHlsZV09XCJob3Jpem9udGFsTGluZXNIYW5kbGVyKGluZGV4LCBob3Jpem9udGFsTGluZXMpXCJcbiAgICAgICAgICAgID48L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXZcbiAgICAgICAgICAgICpuZ0lmPVwiYXhpc1lJbnNldFwiXG4gICAgICAgICAgICBjbGFzcz1cInQtbGFiZWxzLXkgdC1sYWJlbHMteV9pbnNldFwiXG4gICAgICAgID5cbiAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgICAqbmdGb3I9XCJsZXQgbGFiZWwgb2YgYXhpc1lMYWJlbHNcIlxuICAgICAgICAgICAgICAgIGF1dG9tYXRpb24taWQ9XCJ0dWktYXhleF9fYXhpcy15LWxhYmVsXCJcbiAgICAgICAgICAgICAgICBjbGFzcz1cInQtbGFiZWwteVwiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAge3sgZmFsbGJhY2sobGFiZWwpIH19XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXZcbiAgICAgICAgICAgICpuZ0lmPVwiYXhpc1lTZWNvbmRhcnlJbnNldFwiXG4gICAgICAgICAgICBjbGFzcz1cInQtbGFiZWxzLXkgdC1sYWJlbHMteV9pbnNldCB0LWxhYmVscy15X2luc2V0X3NlY29uZGFyeVwiXG4gICAgICAgID5cbiAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgICAqbmdGb3I9XCJsZXQgbGFiZWwgb2YgYXhpc1lTZWNvbmRhcnlMYWJlbHNcIlxuICAgICAgICAgICAgICAgIGF1dG9tYXRpb24taWQ9XCJ0dWktYXhleF9fYXhpcy15LXNlY29uZGFyeS1sYWJlbFwiXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJ0LWxhYmVsLXlcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIHt7IGZhbGxiYWNrKGxhYmVsKSB9fVxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwidC1jb250ZW50XCI+XG4gICAgICAgICAgICA8bmctY29udGVudCAvPlxuICAgICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2XG4gICAgICAgICpuZ0lmPVwiaGFzWExhYmVsc1wiXG4gICAgICAgIGNsYXNzPVwidC1sYWJlbHMteFwiXG4gICAgPlxuICAgICAgICA8ZGl2XG4gICAgICAgICAgICAqbmdGb3I9XCJsZXQgbGFiZWwgb2YgYXhpc1hMYWJlbHNcIlxuICAgICAgICAgICAgYXV0b21hdGlvbi1pZD1cInR1aS1heGV4X19heGlzLXgtbGFiZWxcIlxuICAgICAgICAgICAgY2xhc3M9XCJ0LWxhYmVsLXhcIlxuICAgICAgICAgICAgW2NsYXNzLnQtbGFiZWwteF90cmFuc3BhcmVudF09XCJsYWJlbCA9PT0gbnVsbFwiXG4gICAgICAgID5cbiAgICAgICAgICAgIHt7IGZhbGxiYWNrKGxhYmVsKSB9fVxuICAgICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbjwvZGl2PlxuPGRpdlxuICAgICpuZ0lmPVwiaGFzWVNlY29uZGFyeUxhYmVsc1wiXG4gICAgY2xhc3M9XCJ0LXNpZGVcIlxuICAgIFtjbGFzcy50LXNpZGVfcGFkZGluZ109XCJoYXNYTGFiZWxzXCJcbj5cbiAgICA8ZGl2XG4gICAgICAgICpuZ0lmPVwiIWF4aXNZU2Vjb25kYXJ5SW5zZXRcIlxuICAgICAgICBjbGFzcz1cInQtbGFiZWxzLXkgdC1sYWJlbHMteV9zZWNvbmRhcnlcIlxuICAgID5cbiAgICAgICAgPGRpdlxuICAgICAgICAgICAgKm5nRm9yPVwibGV0IGxhYmVsIG9mIGF4aXNZU2Vjb25kYXJ5TGFiZWxzXCJcbiAgICAgICAgICAgIGF1dG9tYXRpb24taWQ9XCJ0dWktYXhleF9fYXhpcy15LXNlY29uZGFyeS1sYWJlbFwiXG4gICAgICAgICAgICBjbGFzcz1cInQtbGFiZWwteVwiXG4gICAgICAgID5cbiAgICAgICAgICAgIHt7IGZhbGxiYWNrKGxhYmVsKSB9fVxuICAgICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2XG4gICAgICAgICpuZ0lmPVwiYXhpc1lTZWNvbmRhcnlOYW1lXCJcbiAgICAgICAgYXV0b21hdGlvbi1pZD1cInR1aS1heGV4X19heGlzLXktc2Vjb25kYXJ5LW5hbWVcIlxuICAgICAgICBjbGFzcz1cInQtbmFtZVwiXG4gICAgPlxuICAgICAgICB7eyBheGlzWVNlY29uZGFyeU5hbWUgfX1cbiAgICA8L2Rpdj5cbjwvZGl2PlxuIl19
|
|
@@ -76,7 +76,7 @@ class TuiPieChart {
|
|
|
76
76
|
]);
|
|
77
77
|
}
|
|
78
78
|
getDeg(value) {
|
|
79
|
-
return 360 * (value / this.getSum(this.value));
|
|
79
|
+
return 360 * (value / this.getSum(this.value)) || 0;
|
|
80
80
|
}
|
|
81
81
|
updateActiveItemIndex(index) {
|
|
82
82
|
if (index === this.activeItemIndex) {
|
|
@@ -115,4 +115,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
115
115
|
type: HostBinding,
|
|
116
116
|
args: ['class._empty']
|
|
117
117
|
}], getSum: [], getSegments: [] } });
|
|
118
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGllLWNoYXJ0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FkZG9uLWNoYXJ0cy9jb21wb25lbnRzL3BpZS1jaGFydC9waWUtY2hhcnQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYWRkb24tY2hhcnRzL2NvbXBvbmVudHMvcGllLWNoYXJ0L3BpZS1jaGFydC50ZW1wbGF0ZS5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQ0gsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxZQUFZLEVBQ1osV0FBVyxFQUNYLE1BQU0sRUFDTixLQUFLLEVBQ0wsTUFBTSxHQUNULE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBQyxVQUFVLEVBQUMsTUFBTSxrQ0FBa0MsQ0FBQztBQUM1RCxPQUFPLEVBQUMsY0FBYyxFQUFDLE1BQU0sdUNBQXVDLENBQUM7QUFDckUsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLHdCQUF3QixDQUFDO0FBRXBELE9BQU8sRUFBQyxNQUFNLEVBQUMsTUFBTSwwQkFBMEIsQ0FBQztBQUNoRCxPQUFPLEVBQUMsT0FBTyxFQUFDLE1BQU0sbUNBQW1DLENBQUM7QUFDMUQsT0FBTyxFQUNILE9BQU8sRUFDUCx1QkFBdUIsRUFDdkIsc0JBQXNCLEdBQ3pCLE1BQU0sZ0NBQWdDLENBQUM7QUFJeEMsT0FBTyxFQUFDLG9CQUFvQixFQUFDLE1BQU0sdUJBQXVCLENBQUM7OztBQUUzRCxNQUFNLEtBQUssR0FBRztJQUNWLEVBQUUsRUFBRSxJQUFJO0lBQ1IsQ0FBQyxFQUFFLElBQUk7SUFDUCxDQUFDLEVBQUUsTUFBTTtJQUNULENBQUMsRUFBRSxNQUFNO0lBQ1QsRUFBRSxFQUFFLE1BQU07Q0FDYixDQUFDO0FBQ0YsTUFBTSxTQUFTLEdBQUc7SUFDZCxFQUFFLEVBQUUsSUFBSTtJQUNSLENBQUMsRUFBRSxJQUFJO0lBQ1AsQ0FBQyxF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QyxnQkFBZ0I7Z0JBSXRCLE1BQU07c0JBRFosS0FBSztnQkFJQyxlQUFlO3NCQURyQixLQUFLO2dCQUlVLHFCQUFxQjtzQkFEcEMsTUFBTTtnQkFXTyxLQUFLO3NCQURsQixXQUFXO3VCQUFDLGNBQWM7Z0JBc0NuQixNQUFNLE1BS04sV0FBVyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gICAgQ29tcG9uZW50LFxuICAgIEV2ZW50RW1pdHRlcixcbiAgICBIb3N0QmluZGluZyxcbiAgICBpbmplY3QsXG4gICAgSW5wdXQsXG4gICAgT3V0cHV0LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7VHVpSG92ZXJlZH0gZnJvbSAnQHRhaWdhLXVpL2Nkay9kaXJlY3RpdmVzL2hvdmVyZWQnO1xuaW1wb3J0IHtUdWlSZXBlYXRUaW1lc30gZnJvbSAnQHRhaWdhLXVpL2Nkay9kaXJlY3RpdmVzL3JlcGVhdC10aW1lcyc7XG5pbXBvcnQge1R1aUlkU2VydmljZX0gZnJvbSAnQHRhaWdhLXVpL2Nkay9zZXJ2aWNlcyc7XG5pbXBvcnQgdHlwZSB7VHVpQ29udGV4dH0gZnJvbSAnQHRhaWdhLXVpL2Nkay90eXBlcyc7XG5pbXBvcnQge3R1aVN1bX0gZnJvbSAnQHRhaWdhLXVpL2Nkay91dGlscy9tYXRoJztcbmltcG9ydCB7dHVpUHVyZX0gZnJvbSAnQHRhaWdhLXVpL2Nkay91dGlscy9taXNjZWxsYW5lb3VzJztcbmltcG9ydCB7XG4gICAgVHVpSGludCxcbiAgICBUdWlIaW50T3B0aW9uc0RpcmVjdGl2ZSxcbiAgICB0dWlIaW50T3B0aW9uc1Byb3ZpZGVyLFxufSBmcm9tICdAdGFpZ2EtdWkvY29yZS9kaXJlY3RpdmVzL2hpbnQnO1xuaW1wb3J0IHR5cGUge1R1aVNpemVYTCwgVHVpU2l6ZVhTfSBmcm9tICdAdGFpZ2EtdWkvY29yZS90eXBlcyc7XG5pbXBvcnQgdHlwZSB7UG9seW1vcnBoZXVzQ29udGVudH0gZnJvbSAnQHRhaWdhLXVpL3BvbHltb3JwaGV1cyc7XG5cbmltcG9ydCB7VHVpUGllQ2hhcnREaXJlY3RpdmV9IGZyb20gJy4vcGllLWNoYXJ0LmRpcmVjdGl2ZSc7XG5cbmNvbnN0IFJBRElJID0ge1xuICAgIHhzOiAnNTAnLFxuICAgIHM6ICc1MCcsXG4gICAgbTogJzc3LjgnLFxuICAgIGw6ICc4MS45JyxcbiAgICB4bDogJzgxLjMnLFxufTtcbmNvbnN0IFRSQU5TRk9STSA9IHtcbiAgICB4czogMS4xNSxcbiAgICBzOiAxLjI1LFxuICAgIG06IDEuMTEsXG4gICAgbDogMS4wOSxcbiAgICB4bDogMS4wOCxcbn07XG5cbkBDb21wb25lbnQoe1xuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgc2VsZWN0b3I6ICd0dWktcGllLWNoYXJ0JyxcbiAgICBpbXBvcnRzOiBbVHVpSGludCwgVHVpUmVwZWF0VGltZXMsIFR1aUhvdmVyZWQsIFR1aVBpZUNoYXJ0RGlyZWN0aXZlXSxcbiAgICB0ZW1wbGF0ZVVybDogJy4vcGllLWNoYXJ0LnRlbXBsYXRlLmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL3BpZS1jaGFydC5zdHlsZS5sZXNzJ10sXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gICAgdmlld1Byb3ZpZGVyczogW3R1aUhpbnRPcHRpb25zUHJvdmlkZXIoe2RpcmVjdGlvbjogJ3RvcC1yaWdodCcsIGFwcGVhcmFuY2U6ICdkYXJrJ30pXSxcbn0pXG5leHBvcnQgY2xhc3MgVHVpUGllQ2hhcnQge1xuICAgIHByaXZhdGUgcmVhZG9ubHkgaGludE9wdGlvbnMgPSBpbmplY3QoVHVpSGludE9wdGlvbnNEaXJlY3RpdmUsIHtvcHRpb25hbDogdHJ1ZX0pO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgYXV0b0lkU3RyaW5nID0gaW5qZWN0KFR1aUlkU2VydmljZSkuZ2VuZXJhdGUoKTtcblxuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIHZhbHVlOiByZWFkb25seSBudW1iZXJbXSA9IFtdO1xuXG4gICAgQElucHV0KClcbiAgICBASG9zdEJpbmRpbmcoJ2F0dHIuZGF0YS1zaXplJylcbiAgICBwdWJsaWMgc2l6ZTogVHVpU2l6ZVhMIHwgVHVpU2l6ZVhTID0gJ20nO1xuXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgbWFza2VkID0gZmFsc2U7XG5cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBhY3RpdmVJdGVtSW5kZXggPSBOYU47XG5cbiAgICBAT3V0cHV0KClcbiAgICBwdWJsaWMgcmVhZG9ubHkgYWN0aXZlSXRlbUluZGV4Q2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxudW1iZXI+KCk7XG5cbiAgICBjb25zdHJ1Y3RvcigpIHtcbiAgICAgICAgaWYgKHRoaXMuaGludE9wdGlvbnMpIHtcbiAgICAgICAgICAgIHRoaXMuaGludE9wdGlvbnMuc2hvd0RlbGF5ID0gMDtcbiAgICAgICAgICAgIHRoaXMuaGludE9wdGlvbnMuaGlkZURlbGF5ID0gMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBIb3N0QmluZGluZygnY2xhc3MuX2VtcHR5JylcbiAgICBwcm90ZWN0ZWQgZ2V0IGVtcHR5KCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gIXRoaXMuZ2V0U3VtKHRoaXMudmFsdWUpO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBnZXQgaGludENvbnRlbnQoKTogUG9seW1vcnBoZXVzQ29udGVudDxUdWlDb250ZXh0PG51bWJlcj4+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuaGludE9wdGlvbnM/LmNvbnRlbnQgfHwgJyc7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIGdldCBtYXNrSWQoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIGB0dWktcmluZy1jaGFydC0ke3RoaXMuYXV0b0lkU3RyaW5nfWA7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIGdldCBtYXNrKCk6IHN0cmluZyB8IG51bGwge1xuICAgICAgICByZXR1cm4gdGhpcy5tYXNrZWQgPyBgdXJsKCMke3RoaXMubWFza0lkfSlgIDogbnVsbDtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgZ2V0IHJhZGl1cygpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gUkFESUlbdGhpcy5zaXplXTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgZ2V0IHNlZ21lbnRzKCk6IFJlYWRvbmx5QXJyYXk8W251bWJlciwgbnVtYmVyXT4ge1xuICAgICAgICByZXR1cm4gdGhpcy5nZXRTZWdtZW50cyh0aGlzLnZhbHVlKTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgZ2V0VHJhbnNmb3JtKGluZGV4OiBudW1iZXIpOiBzdHJpbmcgfCBudWxsIHtcbiAgICAgICAgY29uc3QgdHJhbnNmb3JtID0gdGhpcy5tYXNrZWRcbiAgICAgICAgICAgID8gYHNjYWxlKCR7VFJBTlNGT1JNW3RoaXMuc2l6ZV19KWBcbiAgICAgICAgICAgIDogYHNjYWxlKCR7VFJBTlNGT1JNLnhzfSlgO1xuXG4gICAgICAgIHJldHVybiBpbmRleCA9PT0gdGhpcy5hY3RpdmVJdGVtSW5kZXggPyB0cmFuc2Zvcm0gOiBudWxsO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBvbkhvdmVyZWQoaG92ZXJlZDogYm9vbGVhbiwgaW5kZXg6IG51bWJlcik6IHZvaWQge1xuICAgICAgICB0aGlzLnVwZGF0ZUFjdGl2ZUl0ZW1JbmRleChob3ZlcmVkID8gaW5kZXggOiBOYU4pO1xuICAgIH1cblxuICAgIEB0dWlQdXJlXG4gICAgcHJpdmF0ZSBnZXRTdW0odmFsdWU6IHJlYWRvbmx5IG51bWJlcltdKTogbnVtYmVyIHtcbiAgICAgICAgcmV0dXJuIHR1aVN1bSguLi52YWx1ZSk7XG4gICAgfVxuXG4gICAgQHR1aVB1cmVcbiAgICBwcml2YXRlIGdldFNlZ21lbnRzKHZhbHVlOiByZWFkb25seSBudW1iZXJbXSk6IFJlYWRvbmx5QXJyYXk8W251bWJlciwgbnVtYmVyXT4ge1xuICAgICAgICByZXR1cm4gdmFsdWVcbiAgICAgICAgICAgIC5tYXAoKGluaXRpYWwsIGksIGFycmF5KSA9PlxuICAgICAgICAgICAgICAgIGFycmF5LnJlZHVjZShcbiAgICAgICAgICAgICAgICAgICAgKHN1bSwgY3VycmVudCwgaikgPT4gKGogPCBpID8gdGhpcy5nZXREZWcoY3VycmVudCkgKyBzdW0gOiBzdW0pLFxuICAgICAgICAgICAgICAgICAgICB0aGlzLmdldERlZyhpbml0aWFsKSxcbiAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgKVxuICAgICAgICAgICAgLm1hcCgoYW5nbGUsIGluZGV4LCBhcnJheSkgPT4gW1xuICAgICAgICAgICAgICAgIGFycmF5W2luZGV4IC0gMV0gfHwgMCxcbiAgICAgICAgICAgICAgICBNYXRoLm1pbihhbmdsZSwgMzU5Ljk5OTkpLFxuICAgICAgICAgICAgXSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXREZWcodmFsdWU6IG51bWJlcik6IG51bWJlciB7XG4gICAgICAgIHJldHVybiAzNjAgKiAodmFsdWUgLyB0aGlzLmdldFN1bSh0aGlzLnZhbHVlKSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSB1cGRhdGVBY3RpdmVJdGVtSW5kZXgoaW5kZXg6IG51bWJlcik6IHZvaWQge1xuICAgICAgICBpZiAoaW5kZXggPT09IHRoaXMuYWN0aXZlSXRlbUluZGV4KSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLmFjdGl2ZUl0ZW1JbmRleCA9IGluZGV4O1xuICAgICAgICB0aGlzLmFjdGl2ZUl0ZW1JbmRleENoYW5nZS5uZXh0KGluZGV4KTtcbiAgICB9XG59XG4iLCI8c3ZnXG4gICAgZm9jdXNhYmxlPVwiZmFsc2VcIlxuICAgIGhlaWdodD1cIjEwMCVcIlxuICAgIHZpZXdCb3g9XCItMTAwIC0xMDAgMjAwIDIwMFwiXG4gICAgd2lkdGg9XCIxMDAlXCJcbiAgICB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgICBjbGFzcz1cInQtc3ZnXCJcbj5cbiAgICA8ZGVmcz5cbiAgICAgICAgPG1hc2sgW2F0dHIuaWRdPVwibWFza0lkXCI+XG4gICAgICAgICAgICA8cmVjdFxuICAgICAgICAgICAgICAgIGZpbGw9XCJ3aGl0ZVwiXG4gICAgICAgICAgICAgICAgaGVpZ2h0PVwiNDAwXCJcbiAgICAgICAgICAgICAgICB3aWR0aD1cIjQwMFwiXG4gICAgICAgICAgICAgICAgeD1cIi0yMDBcIlxuICAgICAgICAgICAgICAgIHk9XCItMjAwXCJcbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgICA8Y2lyY2xlXG4gICAgICAgICAgICAgICAgY3g9XCIwXCJcbiAgICAgICAgICAgICAgICBjeT1cIjBcIlxuICAgICAgICAgICAgICAgIFthdHRyLnJdPVwicmFkaXVzXCJcbiAgICAgICAgICAgIC8+XG4gICAgICAgIDwvbWFzaz5cbiAgICA8L2RlZnM+XG4gICAgPGcgW3N0eWxlLm1hc2tdPVwibWFza1wiPlxuICAgICAgICA8Y2lyY2xlXG4gICAgICAgICAgICBjeD1cIjBcIlxuICAgICAgICAgICAgY3k9XCIwXCJcbiAgICAgICAgICAgIHI9XCIxMDBcIlxuICAgICAgICAgICAgY2xhc3M9XCJ0LXBsYWNlaG9sZGVyXCJcbiAgICAgICAgLz5cbiAgICAgICAgPHBhdGhcbiAgICAgICAgICAgICp0dWlSZXBlYXRUaW1lcz1cImxldCBpbmRleCBvZiBzZWdtZW50cy5sZW5ndGhcIlxuICAgICAgICAgICAgYXV0b21hdGlvbi1pZD1cInR1aS1waWUtY2hhcnRfX3NlZ21lbnRcIlxuICAgICAgICAgICAgZD1cIlwiXG4gICAgICAgICAgICBmaWxsPVwiY3VycmVudENvbG9yXCJcbiAgICAgICAgICAgIHR1aUhpbnRQb2ludGVyXG4gICAgICAgICAgICBjbGFzcz1cInQtc2VnbWVudFwiXG4gICAgICAgICAgICBbYXR0ci50cmFuc2Zvcm1dPVwiZ2V0VHJhbnNmb3JtKGluZGV4KVwiXG4gICAgICAgICAgICBbc3R5bGUuY29sb3JdPVwiJ3ZhcigtLXR1aS1jaGFydC1jYXRlZ29yaWNhbC0wJyArIGluZGV4ICsgJyknXCJcbiAgICAgICAgICAgIFt0dWlIaW50XT1cImhpbnRDb250ZW50XCJcbiAgICAgICAgICAgIFt0dWlIaW50Q29udGV4dF09XCJ7JGltcGxpY2l0OiBpbmRleH1cIlxuICAgICAgICAgICAgW3R1aVBpZUNoYXJ0XT1cInNlZ21lbnRzW2luZGV4XVwiXG4gICAgICAgICAgICAodHVpSG92ZXJlZENoYW5nZSk9XCJvbkhvdmVyZWQoJGV2ZW50LCBpbmRleClcIlxuICAgICAgICAvPlxuICAgIDwvZz5cbjwvc3ZnPlxuIl19
|
|
118
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGllLWNoYXJ0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FkZG9uLWNoYXJ0cy9jb21wb25lbnRzL3BpZS1jaGFydC9waWUtY2hhcnQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYWRkb24tY2hhcnRzL2NvbXBvbmVudHMvcGllLWNoYXJ0L3BpZS1jaGFydC50ZW1wbGF0ZS5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQ0gsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxZQUFZLEVBQ1osV0FBVyxFQUNYLE1BQU0sRUFDTixLQUFLLEVBQ0wsTUFBTSxHQUNULE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBQyxVQUFVLEVBQUMsTUFBTSxrQ0FBa0MsQ0FBQztBQUM1RCxPQUFPLEVBQUMsY0FBYyxFQUFDLE1BQU0sdUNBQXVDLENBQUM7QUFDckUsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLHdCQUF3QixDQUFDO0FBRXBELE9BQU8sRUFBQyxNQUFNLEVBQUMsTUFBTSwwQkFBMEIsQ0FBQztBQUNoRCxPQUFPLEVBQUMsT0FBTyxFQUFDLE1BQU0sbUNBQW1DLENBQUM7QUFDMUQsT0FBTyxFQUNILE9BQU8sRUFDUCx1QkFBdUIsRUFDdkIsc0JBQXNCLEdBQ3pCLE1BQU0sZ0NBQWdDLENBQUM7QUFJeEMsT0FBTyxFQUFDLG9CQUFvQixFQUFDLE1BQU0sdUJBQXVCLENBQUM7OztBQUUzRCxNQUFNLEtBQUssR0FBRztJQUNWLEVBQUUsRUFBRSxJQUFJO0lBQ1IsQ0FBQyxFQUFFLElBQUk7SUFDUCxDQUFDLEVBQUUsTUFBTTtJQUNULENBQUMsRUFBRSxNQUFNO0lBQ1QsRUFBRSxFQUFFLE1BQU07Q0FDYixDQUFDO0FBQ0YsTUFBTSxTQUFTLEdBQUc7SUFDZCxFQUFFLEVBQUUsSUFBSTtJQUNSLENBQUMsRUFBRSxJQUFJO0lBQ1AsQ0FBQyxF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LFdBQVc7dUJBQUMsZ0JBQWdCO2dCQUl0QixNQUFNO3NCQURaLEtBQUs7Z0JBSUMsZUFBZTtzQkFEckIsS0FBSztnQkFJVSxxQkFBcUI7c0JBRHBDLE1BQU07Z0JBV08sS0FBSztzQkFEbEIsV0FBVzt1QkFBQyxjQUFjO2dCQXNDbkIsTUFBTSxNQUtOLFdBQVciLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICAgIENvbXBvbmVudCxcbiAgICBFdmVudEVtaXR0ZXIsXG4gICAgSG9zdEJpbmRpbmcsXG4gICAgaW5qZWN0LFxuICAgIElucHV0LFxuICAgIE91dHB1dCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1R1aUhvdmVyZWR9IGZyb20gJ0B0YWlnYS11aS9jZGsvZGlyZWN0aXZlcy9ob3ZlcmVkJztcbmltcG9ydCB7VHVpUmVwZWF0VGltZXN9IGZyb20gJ0B0YWlnYS11aS9jZGsvZGlyZWN0aXZlcy9yZXBlYXQtdGltZXMnO1xuaW1wb3J0IHtUdWlJZFNlcnZpY2V9IGZyb20gJ0B0YWlnYS11aS9jZGsvc2VydmljZXMnO1xuaW1wb3J0IHR5cGUge1R1aUNvbnRleHR9IGZyb20gJ0B0YWlnYS11aS9jZGsvdHlwZXMnO1xuaW1wb3J0IHt0dWlTdW19IGZyb20gJ0B0YWlnYS11aS9jZGsvdXRpbHMvbWF0aCc7XG5pbXBvcnQge3R1aVB1cmV9IGZyb20gJ0B0YWlnYS11aS9jZGsvdXRpbHMvbWlzY2VsbGFuZW91cyc7XG5pbXBvcnQge1xuICAgIFR1aUhpbnQsXG4gICAgVHVpSGludE9wdGlvbnNEaXJlY3RpdmUsXG4gICAgdHVpSGludE9wdGlvbnNQcm92aWRlcixcbn0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvZGlyZWN0aXZlcy9oaW50JztcbmltcG9ydCB0eXBlIHtUdWlTaXplWEwsIFR1aVNpemVYU30gZnJvbSAnQHRhaWdhLXVpL2NvcmUvdHlwZXMnO1xuaW1wb3J0IHR5cGUge1BvbHltb3JwaGV1c0NvbnRlbnR9IGZyb20gJ0B0YWlnYS11aS9wb2x5bW9ycGhldXMnO1xuXG5pbXBvcnQge1R1aVBpZUNoYXJ0RGlyZWN0aXZlfSBmcm9tICcuL3BpZS1jaGFydC5kaXJlY3RpdmUnO1xuXG5jb25zdCBSQURJSSA9IHtcbiAgICB4czogJzUwJyxcbiAgICBzOiAnNTAnLFxuICAgIG06ICc3Ny44JyxcbiAgICBsOiAnODEuOScsXG4gICAgeGw6ICc4MS4zJyxcbn07XG5jb25zdCBUUkFOU0ZPUk0gPSB7XG4gICAgeHM6IDEuMTUsXG4gICAgczogMS4yNSxcbiAgICBtOiAxLjExLFxuICAgIGw6IDEuMDksXG4gICAgeGw6IDEuMDgsXG59O1xuXG5AQ29tcG9uZW50KHtcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIHNlbGVjdG9yOiAndHVpLXBpZS1jaGFydCcsXG4gICAgaW1wb3J0czogW1R1aUhpbnQsIFR1aVJlcGVhdFRpbWVzLCBUdWlIb3ZlcmVkLCBUdWlQaWVDaGFydERpcmVjdGl2ZV0sXG4gICAgdGVtcGxhdGVVcmw6ICcuL3BpZS1jaGFydC50ZW1wbGF0ZS5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9waWUtY2hhcnQuc3R5bGUubGVzcyddLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIHZpZXdQcm92aWRlcnM6IFt0dWlIaW50T3B0aW9uc1Byb3ZpZGVyKHtkaXJlY3Rpb246ICd0b3AtcmlnaHQnLCBhcHBlYXJhbmNlOiAnZGFyayd9KV0sXG59KVxuZXhwb3J0IGNsYXNzIFR1aVBpZUNoYXJ0IHtcbiAgICBwcml2YXRlIHJlYWRvbmx5IGhpbnRPcHRpb25zID0gaW5qZWN0KFR1aUhpbnRPcHRpb25zRGlyZWN0aXZlLCB7b3B0aW9uYWw6IHRydWV9KTtcbiAgICBwcml2YXRlIHJlYWRvbmx5IGF1dG9JZFN0cmluZyA9IGluamVjdChUdWlJZFNlcnZpY2UpLmdlbmVyYXRlKCk7XG5cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyB2YWx1ZTogcmVhZG9ubHkgbnVtYmVyW10gPSBbXTtcblxuICAgIEBJbnB1dCgpXG4gICAgQEhvc3RCaW5kaW5nKCdhdHRyLmRhdGEtc2l6ZScpXG4gICAgcHVibGljIHNpemU6IFR1aVNpemVYTCB8IFR1aVNpemVYUyA9ICdtJztcblxuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIG1hc2tlZCA9IGZhbHNlO1xuXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgYWN0aXZlSXRlbUluZGV4ID0gTmFOO1xuXG4gICAgQE91dHB1dCgpXG4gICAgcHVibGljIHJlYWRvbmx5IGFjdGl2ZUl0ZW1JbmRleENoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8bnVtYmVyPigpO1xuXG4gICAgY29uc3RydWN0b3IoKSB7XG4gICAgICAgIGlmICh0aGlzLmhpbnRPcHRpb25zKSB7XG4gICAgICAgICAgICB0aGlzLmhpbnRPcHRpb25zLnNob3dEZWxheSA9IDA7XG4gICAgICAgICAgICB0aGlzLmhpbnRPcHRpb25zLmhpZGVEZWxheSA9IDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzLl9lbXB0eScpXG4gICAgcHJvdGVjdGVkIGdldCBlbXB0eSgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuICF0aGlzLmdldFN1bSh0aGlzLnZhbHVlKTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgZ2V0IGhpbnRDb250ZW50KCk6IFBvbHltb3JwaGV1c0NvbnRlbnQ8VHVpQ29udGV4dDxudW1iZXI+PiB7XG4gICAgICAgIHJldHVybiB0aGlzLmhpbnRPcHRpb25zPy5jb250ZW50IHx8ICcnO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBnZXQgbWFza0lkKCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiBgdHVpLXJpbmctY2hhcnQtJHt0aGlzLmF1dG9JZFN0cmluZ31gO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBnZXQgbWFzaygpOiBzdHJpbmcgfCBudWxsIHtcbiAgICAgICAgcmV0dXJuIHRoaXMubWFza2VkID8gYHVybCgjJHt0aGlzLm1hc2tJZH0pYCA6IG51bGw7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIGdldCByYWRpdXMoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIFJBRElJW3RoaXMuc2l6ZV07XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIGdldCBzZWdtZW50cygpOiBSZWFkb25seUFycmF5PFtudW1iZXIsIG51bWJlcl0+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZ2V0U2VnbWVudHModGhpcy52YWx1ZSk7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIGdldFRyYW5zZm9ybShpbmRleDogbnVtYmVyKTogc3RyaW5nIHwgbnVsbCB7XG4gICAgICAgIGNvbnN0IHRyYW5zZm9ybSA9IHRoaXMubWFza2VkXG4gICAgICAgICAgICA/IGBzY2FsZSgke1RSQU5TRk9STVt0aGlzLnNpemVdfSlgXG4gICAgICAgICAgICA6IGBzY2FsZSgke1RSQU5TRk9STS54c30pYDtcblxuICAgICAgICByZXR1cm4gaW5kZXggPT09IHRoaXMuYWN0aXZlSXRlbUluZGV4ID8gdHJhbnNmb3JtIDogbnVsbDtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgb25Ib3ZlcmVkKGhvdmVyZWQ6IGJvb2xlYW4sIGluZGV4OiBudW1iZXIpOiB2b2lkIHtcbiAgICAgICAgdGhpcy51cGRhdGVBY3RpdmVJdGVtSW5kZXgoaG92ZXJlZCA/IGluZGV4IDogTmFOKTtcbiAgICB9XG5cbiAgICBAdHVpUHVyZVxuICAgIHByaXZhdGUgZ2V0U3VtKHZhbHVlOiByZWFkb25seSBudW1iZXJbXSk6IG51bWJlciB7XG4gICAgICAgIHJldHVybiB0dWlTdW0oLi4udmFsdWUpO1xuICAgIH1cblxuICAgIEB0dWlQdXJlXG4gICAgcHJpdmF0ZSBnZXRTZWdtZW50cyh2YWx1ZTogcmVhZG9ubHkgbnVtYmVyW10pOiBSZWFkb25seUFycmF5PFtudW1iZXIsIG51bWJlcl0+IHtcbiAgICAgICAgcmV0dXJuIHZhbHVlXG4gICAgICAgICAgICAubWFwKChpbml0aWFsLCBpLCBhcnJheSkgPT5cbiAgICAgICAgICAgICAgICBhcnJheS5yZWR1Y2UoXG4gICAgICAgICAgICAgICAgICAgIChzdW0sIGN1cnJlbnQsIGopID0+IChqIDwgaSA/IHRoaXMuZ2V0RGVnKGN1cnJlbnQpICsgc3VtIDogc3VtKSxcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5nZXREZWcoaW5pdGlhbCksXG4gICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgIClcbiAgICAgICAgICAgIC5tYXAoKGFuZ2xlLCBpbmRleCwgYXJyYXkpID0+IFtcbiAgICAgICAgICAgICAgICBhcnJheVtpbmRleCAtIDFdIHx8IDAsXG4gICAgICAgICAgICAgICAgTWF0aC5taW4oYW5nbGUsIDM1OS45OTk5KSxcbiAgICAgICAgICAgIF0pO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0RGVnKHZhbHVlOiBudW1iZXIpOiBudW1iZXIge1xuICAgICAgICByZXR1cm4gMzYwICogKHZhbHVlIC8gdGhpcy5nZXRTdW0odGhpcy52YWx1ZSkpIHx8IDA7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSB1cGRhdGVBY3RpdmVJdGVtSW5kZXgoaW5kZXg6IG51bWJlcik6IHZvaWQge1xuICAgICAgICBpZiAoaW5kZXggPT09IHRoaXMuYWN0aXZlSXRlbUluZGV4KSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLmFjdGl2ZUl0ZW1JbmRleCA9IGluZGV4O1xuICAgICAgICB0aGlzLmFjdGl2ZUl0ZW1JbmRleENoYW5nZS5uZXh0KGluZGV4KTtcbiAgICB9XG59XG4iLCI8c3ZnXG4gICAgZm9jdXNhYmxlPVwiZmFsc2VcIlxuICAgIGhlaWdodD1cIjEwMCVcIlxuICAgIHZpZXdCb3g9XCItMTAwIC0xMDAgMjAwIDIwMFwiXG4gICAgd2lkdGg9XCIxMDAlXCJcbiAgICB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgICBjbGFzcz1cInQtc3ZnXCJcbj5cbiAgICA8ZGVmcz5cbiAgICAgICAgPG1hc2sgW2F0dHIuaWRdPVwibWFza0lkXCI+XG4gICAgICAgICAgICA8cmVjdFxuICAgICAgICAgICAgICAgIGZpbGw9XCJ3aGl0ZVwiXG4gICAgICAgICAgICAgICAgaGVpZ2h0PVwiNDAwXCJcbiAgICAgICAgICAgICAgICB3aWR0aD1cIjQwMFwiXG4gICAgICAgICAgICAgICAgeD1cIi0yMDBcIlxuICAgICAgICAgICAgICAgIHk9XCItMjAwXCJcbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgICA8Y2lyY2xlXG4gICAgICAgICAgICAgICAgY3g9XCIwXCJcbiAgICAgICAgICAgICAgICBjeT1cIjBcIlxuICAgICAgICAgICAgICAgIFthdHRyLnJdPVwicmFkaXVzXCJcbiAgICAgICAgICAgIC8+XG4gICAgICAgIDwvbWFzaz5cbiAgICA8L2RlZnM+XG4gICAgPGcgW3N0eWxlLm1hc2tdPVwibWFza1wiPlxuICAgICAgICA8Y2lyY2xlXG4gICAgICAgICAgICBjeD1cIjBcIlxuICAgICAgICAgICAgY3k9XCIwXCJcbiAgICAgICAgICAgIHI9XCIxMDBcIlxuICAgICAgICAgICAgY2xhc3M9XCJ0LXBsYWNlaG9sZGVyXCJcbiAgICAgICAgLz5cbiAgICAgICAgPHBhdGhcbiAgICAgICAgICAgICp0dWlSZXBlYXRUaW1lcz1cImxldCBpbmRleCBvZiBzZWdtZW50cy5sZW5ndGhcIlxuICAgICAgICAgICAgYXV0b21hdGlvbi1pZD1cInR1aS1waWUtY2hhcnRfX3NlZ21lbnRcIlxuICAgICAgICAgICAgZD1cIlwiXG4gICAgICAgICAgICBmaWxsPVwiY3VycmVudENvbG9yXCJcbiAgICAgICAgICAgIHR1aUhpbnRQb2ludGVyXG4gICAgICAgICAgICBjbGFzcz1cInQtc2VnbWVudFwiXG4gICAgICAgICAgICBbYXR0ci50cmFuc2Zvcm1dPVwiZ2V0VHJhbnNmb3JtKGluZGV4KVwiXG4gICAgICAgICAgICBbc3R5bGUuY29sb3JdPVwiJ3ZhcigtLXR1aS1jaGFydC1jYXRlZ29yaWNhbC0wJyArIGluZGV4ICsgJyknXCJcbiAgICAgICAgICAgIFt0dWlIaW50XT1cImhpbnRDb250ZW50XCJcbiAgICAgICAgICAgIFt0dWlIaW50Q29udGV4dF09XCJ7JGltcGxpY2l0OiBpbmRleH1cIlxuICAgICAgICAgICAgW3R1aVBpZUNoYXJ0XT1cInNlZ21lbnRzW2luZGV4XVwiXG4gICAgICAgICAgICAodHVpSG92ZXJlZENoYW5nZSk9XCJvbkhvdmVyZWQoJGV2ZW50LCBpbmRleClcIlxuICAgICAgICAvPlxuICAgIDwvZz5cbjwvc3ZnPlxuIl19
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Directive, inject, Input, NgZone } from '@angular/core';
|
|
2
2
|
import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
|
|
3
|
-
import {
|
|
3
|
+
import { WA_ANIMATION_FRAME, WA_PERFORMANCE } from '@ng-web-apis/common';
|
|
4
4
|
import { tuiDescribeSector } from '@taiga-ui/addon-charts/utils';
|
|
5
5
|
import { tuiZonefree } from '@taiga-ui/cdk/observables';
|
|
6
6
|
import { tuiInjectElement } from '@taiga-ui/cdk/utils/dom';
|
|
@@ -14,8 +14,8 @@ class TuiPieChartDirective {
|
|
|
14
14
|
constructor() {
|
|
15
15
|
this.sector$ = new BehaviorSubject([0, 0]);
|
|
16
16
|
const el = tuiInjectElement();
|
|
17
|
-
const performance = inject(
|
|
18
|
-
const animationFrame$ = inject(
|
|
17
|
+
const performance = inject(WA_PERFORMANCE);
|
|
18
|
+
const animationFrame$ = inject(WA_ANIMATION_FRAME);
|
|
19
19
|
const speed = inject(TUI_ANIMATIONS_SPEED);
|
|
20
20
|
this.sector$
|
|
21
21
|
.pipe(pairwise(), switchMap(([prev, cur]) => {
|
|
@@ -45,4 +45,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
45
45
|
}], ctorParameters: function () { return []; }, propDecorators: { tuiPieChart: [{
|
|
46
46
|
type: Input
|
|
47
47
|
}] } });
|
|
48
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
48
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGllLWNoYXJ0LmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FkZG9uLWNoYXJ0cy9jb21wb25lbnRzL3BpZS1jaGFydC9waWUtY2hhcnQuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDL0QsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0sNEJBQTRCLENBQUM7QUFDOUQsT0FBTyxFQUFDLGtCQUFrQixFQUFFLGNBQWMsRUFBQyxNQUFNLHFCQUFxQixDQUFDO0FBQ3ZFLE9BQU8sRUFBQyxpQkFBaUIsRUFBQyxNQUFNLDhCQUE4QixDQUFDO0FBQy9ELE9BQU8sRUFBQyxXQUFXLEVBQUMsTUFBTSwyQkFBMkIsQ0FBQztBQUN0RCxPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSx5QkFBeUIsQ0FBQztBQUN6RCxPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0sMEJBQTBCLENBQUM7QUFDbEQsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0sbUNBQW1DLENBQUM7QUFDbkUsT0FBTyxFQUFDLG9CQUFvQixFQUFDLE1BQU0sdUJBQXVCLENBQUM7QUFDM0QsT0FBTyxFQUFDLGNBQWMsRUFBQyxNQUFNLG9DQUFvQyxDQUFDO0FBQ2xFLE9BQU8sRUFBQyxlQUFlLEVBQUUsR0FBRyxFQUFFLFFBQVEsRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFDLE1BQU0sTUFBTSxDQUFDOztBQUUxRSxNQUlhLG9CQUFvQjtJQUc3QjtRQUZpQixZQUFPLEdBQUcsSUFBSSxlQUFlLENBQTRCLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFHOUUsTUFBTSxFQUFFLEdBQUcsZ0JBQWdCLEVBQWtCLENBQUM7UUFDOUMsTUFBTSxXQUFXLEdBQUcsTUFBTSxDQUFDLGNBQWMsQ0FBQyxDQUFDO1FBQzNDLE1BQU0sZUFBZSxHQUFHLE1BQU0sQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO1FBQ25ELE1BQU0sS0FBSyxHQUFHLE1BQU0sQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDO1FBRTNDLElBQUksQ0FBQyxPQUFPO2FBQ1AsSUFBSSxDQUNELFFBQVEsRUFBRSxFQUNWLFNBQVMsQ0FBQyxDQUFDLENBQUMsSUFBSSxFQUFFLEdBQUcsQ0FBQyxFQUFFLEVBQUU7WUFDdEIsTUFBTSxHQUFHLEdBQUcsV0FBVyxDQUFDLEdBQUcsRUFBRSxDQUFDO1lBQzlCLE1BQU0sVUFBVSxHQUFHLEdBQUcsQ0FBQyxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDcEMsTUFBTSxRQUFRLEdBQUcsR0FBRyxDQUFDLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUVsQyxPQUFPLGVBQWUsQ0FBQyxJQUFJLENBQ3ZCLEdBQUcsQ0FBQyxDQUFDLFNBQVMsRUFBRSxFQUFFLENBQ2QsZ0JBQWdCLENBQ1osUUFBUSxDQUFDLENBQUMsU0FBUyxHQUFHLEdBQUcsQ0FBQyxHQUFHLGNBQWMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQzVELENBQ0osRUFDRCxTQUFTLENBQUMsQ0FBQyxRQUFRLEVBQUUsRUFBRSxDQUFDLFFBQVEsR0FBRyxDQUFDLEVBQUUsSUFBSSxDQUFDLEVBQzNDLEdBQUcsQ0FBQyxDQUFDLFFBQVEsRUFBRSxFQUFFLENBQUM7Z0JBQ2QsSUFBSSxDQUFDLENBQUMsQ0FBQyxHQUFHLFVBQVUsR0FBRyxRQUFRO2dCQUMvQixHQUFHLENBQUMsQ0FBQyxDQUFDLEdBQUcsR0FBRyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsR0FBRyxRQUFRLEdBQUcsUUFBUTthQUN4RCxDQUFDLENBQ0wsQ0FBQztRQUNOLENBQUMsQ0FBQyxFQUNGLFdBQVcsQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsRUFDM0Isa0JBQWtCLEVBQUUsQ0FDdkI7YUFDQSxTQUFTLENBQUMsQ0FBQyxDQUFDLEtBQUssRUFBRSxHQUFHLENBQUMsRUFBRSxFQUFFLENBQ3hCLEVBQUUsQ0FBQyxZQUFZLENBQUMsR0FBRyxFQUFFLGlCQUFpQixDQUFDLEtBQUssRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUN0RCxDQUFDO0lBQ1YsQ0FBQztJQUVELElBQ1csV0FBVyxDQUFDLE1BQWlDO1FBQ3BELElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQzlCLENBQUM7K0dBekNRLG9CQUFvQjttR0FBcEIsb0JBQW9COztTQUFwQixvQkFBb0I7NEZBQXBCLG9CQUFvQjtrQkFKaEMsU0FBUzttQkFBQztvQkFDUCxVQUFVLEVBQUUsSUFBSTtvQkFDaEIsUUFBUSxFQUFFLG1CQUFtQjtpQkFDaEM7MEVBd0NjLFdBQVc7c0JBRHJCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0RpcmVjdGl2ZSwgaW5qZWN0LCBJbnB1dCwgTmdab25lfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7dGFrZVVudGlsRGVzdHJveWVkfSBmcm9tICdAYW5ndWxhci9jb3JlL3J4anMtaW50ZXJvcCc7XG5pbXBvcnQge1dBX0FOSU1BVElPTl9GUkFNRSwgV0FfUEVSRk9STUFOQ0V9IGZyb20gJ0BuZy13ZWItYXBpcy9jb21tb24nO1xuaW1wb3J0IHt0dWlEZXNjcmliZVNlY3Rvcn0gZnJvbSAnQHRhaWdhLXVpL2FkZG9uLWNoYXJ0cy91dGlscyc7XG5pbXBvcnQge3R1aVpvbmVmcmVlfSBmcm9tICdAdGFpZ2EtdWkvY2RrL29ic2VydmFibGVzJztcbmltcG9ydCB7dHVpSW5qZWN0RWxlbWVudH0gZnJvbSAnQHRhaWdhLXVpL2Nkay91dGlscy9kb20nO1xuaW1wb3J0IHt0dWlDbGFtcH0gZnJvbSAnQHRhaWdhLXVpL2Nkay91dGlscy9tYXRoJztcbmltcG9ydCB7dHVpRWFzZUluT3V0UXVhZH0gZnJvbSAnQHRhaWdhLXVpL2Nkay91dGlscy9taXNjZWxsYW5lb3VzJztcbmltcG9ydCB7VFVJX0FOSU1BVElPTlNfU1BFRUR9IGZyb20gJ0B0YWlnYS11aS9jb3JlL3Rva2Vucyc7XG5pbXBvcnQge3R1aUdldER1cmF0aW9ufSBmcm9tICdAdGFpZ2EtdWkvY29yZS91dGlscy9taXNjZWxsYW5lb3VzJztcbmltcG9ydCB7QmVoYXZpb3JTdWJqZWN0LCBtYXAsIHBhaXJ3aXNlLCBzd2l0Y2hNYXAsIHRha2VXaGlsZX0gZnJvbSAncnhqcyc7XG5cbkBEaXJlY3RpdmUoe1xuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgc2VsZWN0b3I6ICdwYXRoW3R1aVBpZUNoYXJ0XScsXG59KVxuZXhwb3J0IGNsYXNzIFR1aVBpZUNoYXJ0RGlyZWN0aXZlIHtcbiAgICBwcml2YXRlIHJlYWRvbmx5IHNlY3RvciQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PHJlYWRvbmx5IFtudW1iZXIsIG51bWJlcl0+KFswLCAwXSk7XG5cbiAgICBjb25zdHJ1Y3RvcigpIHtcbiAgICAgICAgY29uc3QgZWwgPSB0dWlJbmplY3RFbGVtZW50PFNWR1BhdGhFbGVtZW50PigpO1xuICAgICAgICBjb25zdCBwZXJmb3JtYW5jZSA9IGluamVjdChXQV9QRVJGT1JNQU5DRSk7XG4gICAgICAgIGNvbnN0IGFuaW1hdGlvbkZyYW1lJCA9IGluamVjdChXQV9BTklNQVRJT05fRlJBTUUpO1xuICAgICAgICBjb25zdCBzcGVlZCA9IGluamVjdChUVUlfQU5JTUFUSU9OU19TUEVFRCk7XG5cbiAgICAgICAgdGhpcy5zZWN0b3IkXG4gICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgICBwYWlyd2lzZSgpLFxuICAgICAgICAgICAgICAgIHN3aXRjaE1hcCgoW3ByZXYsIGN1cl0pID0+IHtcbiAgICAgICAgICAgICAgICAgICAgY29uc3Qgbm93ID0gcGVyZm9ybWFuY2Uubm93KCk7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHN0YXJ0RGVsdGEgPSBjdXJbMF0gLSBwcmV2WzBdO1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBlbmREZWx0YSA9IGN1clsxXSAtIHByZXZbMV07XG5cbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGFuaW1hdGlvbkZyYW1lJC5waXBlKFxuICAgICAgICAgICAgICAgICAgICAgICAgbWFwKCh0aW1lc3RhbXApID0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdHVpRWFzZUluT3V0UXVhZChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHVpQ2xhbXAoKHRpbWVzdGFtcCAtIG5vdykgLyB0dWlHZXREdXJhdGlvbihzcGVlZCksIDAsIDEpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgICAgICAgdGFrZVdoaWxlKChwcm9ncmVzcykgPT4gcHJvZ3Jlc3MgPCAxLCB0cnVlKSxcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcCgocHJvZ3Jlc3MpID0+IFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwcmV2WzBdICsgc3RhcnREZWx0YSAqIHByb2dyZXNzLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGN1clsxXSA+IDM1OSA/IGN1clsxXSA6IHByZXZbMV0gKyBlbmREZWx0YSAqIHByb2dyZXNzLFxuICAgICAgICAgICAgICAgICAgICAgICAgXSksXG4gICAgICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgICAgdHVpWm9uZWZyZWUoaW5qZWN0KE5nWm9uZSkpLFxuICAgICAgICAgICAgICAgIHRha2VVbnRpbERlc3Ryb3llZCgpLFxuICAgICAgICAgICAgKVxuICAgICAgICAgICAgLnN1YnNjcmliZSgoW3N0YXJ0LCBlbmRdKSA9PlxuICAgICAgICAgICAgICAgIGVsLnNldEF0dHJpYnV0ZSgnZCcsIHR1aURlc2NyaWJlU2VjdG9yKHN0YXJ0LCBlbmQpKSxcbiAgICAgICAgICAgICk7XG4gICAgfVxuXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgc2V0IHR1aVBpZUNoYXJ0KHNlY3RvcjogcmVhZG9ubHkgW251bWJlciwgbnVtYmVyXSkge1xuICAgICAgICB0aGlzLnNlY3RvciQubmV4dChzZWN0b3IpO1xuICAgIH1cbn1cbiJdfQ==
|
|
@@ -41,11 +41,11 @@ class TuiAxes {
|
|
|
41
41
|
return this.axisY === 'none';
|
|
42
42
|
}
|
|
43
43
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiAxes, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
44
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: TuiAxes, isStandalone: true, selector: "tui-axes", inputs: { axisX: "axisX", axisXLabels: "axisXLabels", axisY: "axisY", axisYInset: "axisYInset", axisYLabels: "axisYLabels", axisYName: "axisYName", axisYSecondaryInset: "axisYSecondaryInset", axisYSecondaryLabels: "axisYSecondaryLabels", axisYSecondaryName: "axisYSecondaryName", horizontalLines: "horizontalLines", horizontalLinesHandler: "horizontalLinesHandler", verticalLines: "verticalLines", verticalLinesHandler: "verticalLinesHandler" }, host: { properties: { "class._centered": "this.centeredXLabels" } }, ngImport: i0, template: "<div\n *ngIf=\"hasYLabels\"\n class=\"t-side\"\n [class.t-side_padding]=\"hasXLabels\"\n>\n <div\n *ngIf=\"axisYName\"\n automation-id=\"tui-axex__axis-y-name\"\n class=\"t-name t-name_primary\"\n >\n {{ axisYName }}\n </div>\n <div\n *ngIf=\"!axisYInset\"\n class=\"t-labels-y t-labels-y_primary\"\n >\n <div\n *ngFor=\"let label of axisYLabels\"\n automation-id=\"tui-axex__axis-y-label\"\n class=\"t-label-y\"\n >\n {{ fallback(label) }}\n </div>\n </div>\n</div>\n<div class=\"t-wrapper\">\n <div\n class=\"t-grid\"\n [style.borderBottomStyle]=\"axisX\"\n [style.borderLeftStyle]=\"axisY\"\n >\n <div class=\"t-vertical\">\n <div\n *tuiRepeatTimes=\"let index of verticalLines\"\n automation-id=\"tui-axex__vertical-line\"\n class=\"t-line t-line_vertical\"\n [style.borderRightStyle]=\"verticalLinesHandler(index, verticalLines)\"\n ></div>\n </div>\n <div class=\"t-horizontal\">\n <div\n *tuiRepeatTimes=\"let index of horizontalLines\"\n automation-id=\"tui-axex__horizontal-line\"\n class=\"t-line\"\n [style.borderTopStyle]=\"horizontalLinesHandler(index, horizontalLines)\"\n ></div>\n </div>\n <div\n *ngIf=\"axisYInset\"\n class=\"t-labels-y t-labels-y_inset\"\n >\n <div\n *ngFor=\"let label of axisYLabels\"\n automation-id=\"tui-axex__axis-y-label\"\n class=\"t-label-y\"\n >\n {{ fallback(label) }}\n </div>\n </div>\n <div\n *ngIf=\"axisYSecondaryInset\"\n class=\"t-labels-y t-labels-y_inset t-labels-y_inset_secondary\"\n >\n <div\n *ngFor=\"let label of axisYSecondaryLabels\"\n automation-id=\"tui-axex__axis-y-secondary-label\"\n class=\"t-label-y\"\n >\n {{ fallback(label) }}\n </div>\n </div>\n <div class=\"t-content\">\n <ng-content />\n </div>\n </div>\n <div\n *ngIf=\"hasXLabels\"\n class=\"t-labels-x\"\n >\n <div\n *ngFor=\"let label of axisXLabels\"\n automation-id=\"tui-axex__axis-x-label\"\n class=\"t-label-x\"\n [class.t-label-x_transparent]=\"label === null\"\n >\n {{ fallback(label) }}\n </div>\n </div>\n</div>\n<div\n *ngIf=\"hasYSecondaryLabels\"\n class=\"t-side\"\n [class.t-side_padding]=\"hasXLabels\"\n>\n <div\n *ngIf=\"!axisYSecondaryInset\"\n class=\"t-labels-y t-labels-y_secondary\"\n >\n <div\n *ngFor=\"let label of axisYSecondaryLabels\"\n automation-id=\"tui-axex__axis-y-secondary-label\"\n class=\"t-label-y\"\n >\n {{ fallback(label) }}\n </div>\n </div>\n <div\n *ngIf=\"axisYSecondaryName\"\n automation-id=\"tui-axex__axis-y-secondary-name\"\n class=\"t-name\"\n >\n {{ axisYSecondaryName }}\n </div>\n</div>\n", styles: [":host{display:flex}.t-wrapper{display:flex;flex:1;height:100%;flex-direction:column}.t-grid{position:relative;display:flex;flex:1;justify-content:space-around;align-items:flex-end;border-width:1px;border-color:var(--tui-border-normal);isolation:isolate}.t-horizontal{position:absolute;top:0;left:0;width:100%;height:100%;display:flex;flex-direction:column}.t-vertical{position:absolute;top:0;left:0;width:100%;height:100%;display:flex}:host._centered .t-vertical:after{content:\"\";display:block;flex:1 0 1px}.t-line{flex:2 0 1px;box-sizing:border-box;border-width:1px;border-color:var(--tui-border-normal)}:host._centered .t-line_vertical:first-child{flex:1 0 1px;pointer-events:none}.t-side{display:flex;align-items:stretch}.t-side_padding{padding-bottom:2rem}.t-name{font:var(--tui-font-text-xs);writing-mode:tb;text-align:center;padding-left:.75rem;color:var(--tui-text-secondary)}.t-name_primary{transform:rotate(180deg)}.t-labels-y{display:flex;font:var(--tui-font-text-xs);flex-direction:column-reverse;justify-content:space-between;color:var(--tui-text-secondary)}.t-labels-y_primary{text-align:right;padding-right:.75rem}.t-labels-y_secondary{padding-left:.75rem}.t-labels-y_transparent{border-color:transparent}.t-labels-y_inset{position:absolute;top:.5625rem;left:.25rem;bottom:-.75rem;pointer-events:none}.t-labels-y_inset_secondary{left:auto;right:.25rem;text-align:right}.t-labels-x{display:flex;font:var(--tui-font-text-xs);border-right:1px solid transparent;color:var(--tui-text-secondary)}.t-label-x{height:.4375rem;border-left:1px solid var(--tui-border-normal);flex:1;margin-bottom:1.5625rem}.t-label-x:before{content:\"\";display:block;height:.5625rem}.t-label-x_transparent{border-color:transparent}:host._centered .t-label-x{height:2rem;text-align:center;border:none;margin:0}:host
|
|
44
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: TuiAxes, isStandalone: true, selector: "tui-axes", inputs: { axisX: "axisX", axisXLabels: "axisXLabels", axisY: "axisY", axisYInset: "axisYInset", axisYLabels: "axisYLabels", axisYName: "axisYName", axisYSecondaryInset: "axisYSecondaryInset", axisYSecondaryLabels: "axisYSecondaryLabels", axisYSecondaryName: "axisYSecondaryName", horizontalLines: "horizontalLines", horizontalLinesHandler: "horizontalLinesHandler", verticalLines: "verticalLines", verticalLinesHandler: "verticalLinesHandler" }, host: { properties: { "class._centered": "this.centeredXLabels" } }, ngImport: i0, template: "<div\n *ngIf=\"hasYLabels\"\n class=\"t-side\"\n [class.t-side_padding]=\"hasXLabels\"\n>\n <div\n *ngIf=\"axisYName\"\n automation-id=\"tui-axex__axis-y-name\"\n class=\"t-name t-name_primary\"\n >\n {{ axisYName }}\n </div>\n <div\n *ngIf=\"!axisYInset\"\n class=\"t-labels-y t-labels-y_primary\"\n >\n <div\n *ngFor=\"let label of axisYLabels\"\n automation-id=\"tui-axex__axis-y-label\"\n class=\"t-label-y\"\n >\n {{ fallback(label) }}\n </div>\n </div>\n</div>\n<div class=\"t-wrapper\">\n <div\n class=\"t-grid\"\n [style.borderBottomStyle]=\"axisX\"\n [style.borderLeftStyle]=\"axisY\"\n >\n <div class=\"t-vertical\">\n <div\n *tuiRepeatTimes=\"let index of verticalLines\"\n automation-id=\"tui-axex__vertical-line\"\n class=\"t-line t-line_vertical\"\n [style.borderRightStyle]=\"verticalLinesHandler(index, verticalLines)\"\n ></div>\n </div>\n <div class=\"t-horizontal\">\n <div\n *tuiRepeatTimes=\"let index of horizontalLines\"\n automation-id=\"tui-axex__horizontal-line\"\n class=\"t-line\"\n [style.borderTopStyle]=\"horizontalLinesHandler(index, horizontalLines)\"\n ></div>\n </div>\n <div\n *ngIf=\"axisYInset\"\n class=\"t-labels-y t-labels-y_inset\"\n >\n <div\n *ngFor=\"let label of axisYLabels\"\n automation-id=\"tui-axex__axis-y-label\"\n class=\"t-label-y\"\n >\n {{ fallback(label) }}\n </div>\n </div>\n <div\n *ngIf=\"axisYSecondaryInset\"\n class=\"t-labels-y t-labels-y_inset t-labels-y_inset_secondary\"\n >\n <div\n *ngFor=\"let label of axisYSecondaryLabels\"\n automation-id=\"tui-axex__axis-y-secondary-label\"\n class=\"t-label-y\"\n >\n {{ fallback(label) }}\n </div>\n </div>\n <div class=\"t-content\">\n <ng-content />\n </div>\n </div>\n <div\n *ngIf=\"hasXLabels\"\n class=\"t-labels-x\"\n >\n <div\n *ngFor=\"let label of axisXLabels\"\n automation-id=\"tui-axex__axis-x-label\"\n class=\"t-label-x\"\n [class.t-label-x_transparent]=\"label === null\"\n >\n {{ fallback(label) }}\n </div>\n </div>\n</div>\n<div\n *ngIf=\"hasYSecondaryLabels\"\n class=\"t-side\"\n [class.t-side_padding]=\"hasXLabels\"\n>\n <div\n *ngIf=\"!axisYSecondaryInset\"\n class=\"t-labels-y t-labels-y_secondary\"\n >\n <div\n *ngFor=\"let label of axisYSecondaryLabels\"\n automation-id=\"tui-axex__axis-y-secondary-label\"\n class=\"t-label-y\"\n >\n {{ fallback(label) }}\n </div>\n </div>\n <div\n *ngIf=\"axisYSecondaryName\"\n automation-id=\"tui-axex__axis-y-secondary-name\"\n class=\"t-name\"\n >\n {{ axisYSecondaryName }}\n </div>\n</div>\n", styles: [":host{display:flex}.t-wrapper{display:flex;flex:1;height:100%;flex-direction:column}.t-grid{position:relative;display:flex;flex:1;justify-content:space-around;align-items:flex-end;border-width:1px;border-color:var(--tui-border-normal);isolation:isolate}.t-horizontal{position:absolute;top:0;left:0;width:100%;height:100%;display:flex;flex-direction:column}.t-vertical{position:absolute;top:0;left:0;width:100%;height:100%;display:flex}:host._centered .t-vertical:after{content:\"\";display:block;flex:1 0 1px}.t-line{flex:2 0 1px;box-sizing:border-box;border-width:1px;border-color:var(--tui-border-normal)}:host._centered .t-line_vertical:first-child{flex:1 0 1px;pointer-events:none}.t-side{display:flex;align-items:stretch}.t-side_padding{padding-bottom:2rem}.t-name{font:var(--tui-font-text-xs);writing-mode:tb;text-align:center;padding-left:.75rem;color:var(--tui-text-secondary)}.t-name_primary{transform:rotate(180deg)}.t-labels-y{display:flex;font:var(--tui-font-text-xs);flex-direction:column-reverse;justify-content:space-between;color:var(--tui-text-secondary)}.t-labels-y_primary{text-align:right;padding-right:.75rem}.t-labels-y_secondary{padding-left:.75rem}.t-labels-y_transparent{border-color:transparent}.t-labels-y_inset{position:absolute;top:.5625rem;left:.25rem;bottom:-.75rem;pointer-events:none}.t-labels-y_inset_secondary{left:auto;right:.25rem;text-align:right}.t-labels-x{position:relative;display:flex;font:var(--tui-font-text-xs);border-right:1px solid transparent;color:var(--tui-text-secondary)}.t-label-x{height:.4375rem;border-left:1px solid var(--tui-border-normal);flex:1;margin-bottom:1.5625rem}.t-label-x:before{content:\"\";display:block;height:.5625rem}.t-label-x_transparent{border-color:transparent}:host._centered .t-label-x{height:2rem;text-align:center;border:none;margin:0}:host:not(._centered) .t-label-x:last-child:not(:first-child){position:absolute;right:0;text-align:right;border-left:none}.t-label-y:first-child{margin-bottom:-.375rem}.t-label-y:last-child{margin-top:-.375rem}.t-content{position:absolute;top:0;left:-1px;right:0;bottom:-1px;display:flex;align-items:flex-end}\n"], dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: TuiRepeatTimes, selector: "[tuiRepeatTimes][tuiRepeatTimesOf]", inputs: ["tuiRepeatTimesOf"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
45
45
|
}
|
|
46
46
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiAxes, decorators: [{
|
|
47
47
|
type: Component,
|
|
48
|
-
args: [{ standalone: true, selector: 'tui-axes', imports: [NgIf, NgForOf, TuiRepeatTimes], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div\n *ngIf=\"hasYLabels\"\n class=\"t-side\"\n [class.t-side_padding]=\"hasXLabels\"\n>\n <div\n *ngIf=\"axisYName\"\n automation-id=\"tui-axex__axis-y-name\"\n class=\"t-name t-name_primary\"\n >\n {{ axisYName }}\n </div>\n <div\n *ngIf=\"!axisYInset\"\n class=\"t-labels-y t-labels-y_primary\"\n >\n <div\n *ngFor=\"let label of axisYLabels\"\n automation-id=\"tui-axex__axis-y-label\"\n class=\"t-label-y\"\n >\n {{ fallback(label) }}\n </div>\n </div>\n</div>\n<div class=\"t-wrapper\">\n <div\n class=\"t-grid\"\n [style.borderBottomStyle]=\"axisX\"\n [style.borderLeftStyle]=\"axisY\"\n >\n <div class=\"t-vertical\">\n <div\n *tuiRepeatTimes=\"let index of verticalLines\"\n automation-id=\"tui-axex__vertical-line\"\n class=\"t-line t-line_vertical\"\n [style.borderRightStyle]=\"verticalLinesHandler(index, verticalLines)\"\n ></div>\n </div>\n <div class=\"t-horizontal\">\n <div\n *tuiRepeatTimes=\"let index of horizontalLines\"\n automation-id=\"tui-axex__horizontal-line\"\n class=\"t-line\"\n [style.borderTopStyle]=\"horizontalLinesHandler(index, horizontalLines)\"\n ></div>\n </div>\n <div\n *ngIf=\"axisYInset\"\n class=\"t-labels-y t-labels-y_inset\"\n >\n <div\n *ngFor=\"let label of axisYLabels\"\n automation-id=\"tui-axex__axis-y-label\"\n class=\"t-label-y\"\n >\n {{ fallback(label) }}\n </div>\n </div>\n <div\n *ngIf=\"axisYSecondaryInset\"\n class=\"t-labels-y t-labels-y_inset t-labels-y_inset_secondary\"\n >\n <div\n *ngFor=\"let label of axisYSecondaryLabels\"\n automation-id=\"tui-axex__axis-y-secondary-label\"\n class=\"t-label-y\"\n >\n {{ fallback(label) }}\n </div>\n </div>\n <div class=\"t-content\">\n <ng-content />\n </div>\n </div>\n <div\n *ngIf=\"hasXLabels\"\n class=\"t-labels-x\"\n >\n <div\n *ngFor=\"let label of axisXLabels\"\n automation-id=\"tui-axex__axis-x-label\"\n class=\"t-label-x\"\n [class.t-label-x_transparent]=\"label === null\"\n >\n {{ fallback(label) }}\n </div>\n </div>\n</div>\n<div\n *ngIf=\"hasYSecondaryLabels\"\n class=\"t-side\"\n [class.t-side_padding]=\"hasXLabels\"\n>\n <div\n *ngIf=\"!axisYSecondaryInset\"\n class=\"t-labels-y t-labels-y_secondary\"\n >\n <div\n *ngFor=\"let label of axisYSecondaryLabels\"\n automation-id=\"tui-axex__axis-y-secondary-label\"\n class=\"t-label-y\"\n >\n {{ fallback(label) }}\n </div>\n </div>\n <div\n *ngIf=\"axisYSecondaryName\"\n automation-id=\"tui-axex__axis-y-secondary-name\"\n class=\"t-name\"\n >\n {{ axisYSecondaryName }}\n </div>\n</div>\n", styles: [":host{display:flex}.t-wrapper{display:flex;flex:1;height:100%;flex-direction:column}.t-grid{position:relative;display:flex;flex:1;justify-content:space-around;align-items:flex-end;border-width:1px;border-color:var(--tui-border-normal);isolation:isolate}.t-horizontal{position:absolute;top:0;left:0;width:100%;height:100%;display:flex;flex-direction:column}.t-vertical{position:absolute;top:0;left:0;width:100%;height:100%;display:flex}:host._centered .t-vertical:after{content:\"\";display:block;flex:1 0 1px}.t-line{flex:2 0 1px;box-sizing:border-box;border-width:1px;border-color:var(--tui-border-normal)}:host._centered .t-line_vertical:first-child{flex:1 0 1px;pointer-events:none}.t-side{display:flex;align-items:stretch}.t-side_padding{padding-bottom:2rem}.t-name{font:var(--tui-font-text-xs);writing-mode:tb;text-align:center;padding-left:.75rem;color:var(--tui-text-secondary)}.t-name_primary{transform:rotate(180deg)}.t-labels-y{display:flex;font:var(--tui-font-text-xs);flex-direction:column-reverse;justify-content:space-between;color:var(--tui-text-secondary)}.t-labels-y_primary{text-align:right;padding-right:.75rem}.t-labels-y_secondary{padding-left:.75rem}.t-labels-y_transparent{border-color:transparent}.t-labels-y_inset{position:absolute;top:.5625rem;left:.25rem;bottom:-.75rem;pointer-events:none}.t-labels-y_inset_secondary{left:auto;right:.25rem;text-align:right}.t-labels-x{display:flex;font:var(--tui-font-text-xs);border-right:1px solid transparent;color:var(--tui-text-secondary)}.t-label-x{height:.4375rem;border-left:1px solid var(--tui-border-normal);flex:1;margin-bottom:1.5625rem}.t-label-x:before{content:\"\";display:block;height:.5625rem}.t-label-x_transparent{border-color:transparent}:host._centered .t-label-x{height:2rem;text-align:center;border:none;margin:0}:host
|
|
48
|
+
args: [{ standalone: true, selector: 'tui-axes', imports: [NgIf, NgForOf, TuiRepeatTimes], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div\n *ngIf=\"hasYLabels\"\n class=\"t-side\"\n [class.t-side_padding]=\"hasXLabels\"\n>\n <div\n *ngIf=\"axisYName\"\n automation-id=\"tui-axex__axis-y-name\"\n class=\"t-name t-name_primary\"\n >\n {{ axisYName }}\n </div>\n <div\n *ngIf=\"!axisYInset\"\n class=\"t-labels-y t-labels-y_primary\"\n >\n <div\n *ngFor=\"let label of axisYLabels\"\n automation-id=\"tui-axex__axis-y-label\"\n class=\"t-label-y\"\n >\n {{ fallback(label) }}\n </div>\n </div>\n</div>\n<div class=\"t-wrapper\">\n <div\n class=\"t-grid\"\n [style.borderBottomStyle]=\"axisX\"\n [style.borderLeftStyle]=\"axisY\"\n >\n <div class=\"t-vertical\">\n <div\n *tuiRepeatTimes=\"let index of verticalLines\"\n automation-id=\"tui-axex__vertical-line\"\n class=\"t-line t-line_vertical\"\n [style.borderRightStyle]=\"verticalLinesHandler(index, verticalLines)\"\n ></div>\n </div>\n <div class=\"t-horizontal\">\n <div\n *tuiRepeatTimes=\"let index of horizontalLines\"\n automation-id=\"tui-axex__horizontal-line\"\n class=\"t-line\"\n [style.borderTopStyle]=\"horizontalLinesHandler(index, horizontalLines)\"\n ></div>\n </div>\n <div\n *ngIf=\"axisYInset\"\n class=\"t-labels-y t-labels-y_inset\"\n >\n <div\n *ngFor=\"let label of axisYLabels\"\n automation-id=\"tui-axex__axis-y-label\"\n class=\"t-label-y\"\n >\n {{ fallback(label) }}\n </div>\n </div>\n <div\n *ngIf=\"axisYSecondaryInset\"\n class=\"t-labels-y t-labels-y_inset t-labels-y_inset_secondary\"\n >\n <div\n *ngFor=\"let label of axisYSecondaryLabels\"\n automation-id=\"tui-axex__axis-y-secondary-label\"\n class=\"t-label-y\"\n >\n {{ fallback(label) }}\n </div>\n </div>\n <div class=\"t-content\">\n <ng-content />\n </div>\n </div>\n <div\n *ngIf=\"hasXLabels\"\n class=\"t-labels-x\"\n >\n <div\n *ngFor=\"let label of axisXLabels\"\n automation-id=\"tui-axex__axis-x-label\"\n class=\"t-label-x\"\n [class.t-label-x_transparent]=\"label === null\"\n >\n {{ fallback(label) }}\n </div>\n </div>\n</div>\n<div\n *ngIf=\"hasYSecondaryLabels\"\n class=\"t-side\"\n [class.t-side_padding]=\"hasXLabels\"\n>\n <div\n *ngIf=\"!axisYSecondaryInset\"\n class=\"t-labels-y t-labels-y_secondary\"\n >\n <div\n *ngFor=\"let label of axisYSecondaryLabels\"\n automation-id=\"tui-axex__axis-y-secondary-label\"\n class=\"t-label-y\"\n >\n {{ fallback(label) }}\n </div>\n </div>\n <div\n *ngIf=\"axisYSecondaryName\"\n automation-id=\"tui-axex__axis-y-secondary-name\"\n class=\"t-name\"\n >\n {{ axisYSecondaryName }}\n </div>\n</div>\n", styles: [":host{display:flex}.t-wrapper{display:flex;flex:1;height:100%;flex-direction:column}.t-grid{position:relative;display:flex;flex:1;justify-content:space-around;align-items:flex-end;border-width:1px;border-color:var(--tui-border-normal);isolation:isolate}.t-horizontal{position:absolute;top:0;left:0;width:100%;height:100%;display:flex;flex-direction:column}.t-vertical{position:absolute;top:0;left:0;width:100%;height:100%;display:flex}:host._centered .t-vertical:after{content:\"\";display:block;flex:1 0 1px}.t-line{flex:2 0 1px;box-sizing:border-box;border-width:1px;border-color:var(--tui-border-normal)}:host._centered .t-line_vertical:first-child{flex:1 0 1px;pointer-events:none}.t-side{display:flex;align-items:stretch}.t-side_padding{padding-bottom:2rem}.t-name{font:var(--tui-font-text-xs);writing-mode:tb;text-align:center;padding-left:.75rem;color:var(--tui-text-secondary)}.t-name_primary{transform:rotate(180deg)}.t-labels-y{display:flex;font:var(--tui-font-text-xs);flex-direction:column-reverse;justify-content:space-between;color:var(--tui-text-secondary)}.t-labels-y_primary{text-align:right;padding-right:.75rem}.t-labels-y_secondary{padding-left:.75rem}.t-labels-y_transparent{border-color:transparent}.t-labels-y_inset{position:absolute;top:.5625rem;left:.25rem;bottom:-.75rem;pointer-events:none}.t-labels-y_inset_secondary{left:auto;right:.25rem;text-align:right}.t-labels-x{position:relative;display:flex;font:var(--tui-font-text-xs);border-right:1px solid transparent;color:var(--tui-text-secondary)}.t-label-x{height:.4375rem;border-left:1px solid var(--tui-border-normal);flex:1;margin-bottom:1.5625rem}.t-label-x:before{content:\"\";display:block;height:.5625rem}.t-label-x_transparent{border-color:transparent}:host._centered .t-label-x{height:2rem;text-align:center;border:none;margin:0}:host:not(._centered) .t-label-x:last-child:not(:first-child){position:absolute;right:0;text-align:right;border-left:none}.t-label-y:first-child{margin-bottom:-.375rem}.t-label-y:last-child{margin-top:-.375rem}.t-content{position:absolute;top:0;left:-1px;right:0;bottom:-1px;display:flex;align-items:flex-end}\n"] }]
|
|
49
49
|
}], propDecorators: { axisX: [{
|
|
50
50
|
type: Input
|
|
51
51
|
}], axisXLabels: [{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"taiga-ui-addon-charts-components-axes.mjs","sources":["../../../projects/addon-charts/components/axes/axes.component.ts","../../../projects/addon-charts/components/axes/axes.template.html","../../../projects/addon-charts/components/axes/taiga-ui-addon-charts-components-axes.ts"],"sourcesContent":["import {NgForOf, NgIf} from '@angular/common';\nimport {ChangeDetectionStrategy, Component, HostBinding, Input} from '@angular/core';\nimport type {TuiLineHandler, TuiLineType} from '@taiga-ui/addon-charts/types';\nimport {CHAR_NO_BREAK_SPACE} from '@taiga-ui/cdk/constants';\nimport {TuiRepeatTimes} from '@taiga-ui/cdk/directives/repeat-times';\n\nexport const TUI_ALWAYS_DASHED: TuiLineHandler = () => 'dashed';\nexport const TUI_ALWAYS_DOTTED: TuiLineHandler = () => 'dotted';\nexport const TUI_ALWAYS_SOLID: TuiLineHandler = () => 'solid';\nexport const TUI_ALWAYS_NONE: TuiLineHandler = () => 'none';\n\n@Component({\n standalone: true,\n selector: 'tui-axes',\n imports: [NgIf, NgForOf, TuiRepeatTimes],\n templateUrl: './axes.template.html',\n styleUrls: ['./axes.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class TuiAxes {\n @Input()\n public axisX: TuiLineType = 'solid';\n\n @Input()\n public axisXLabels: ReadonlyArray<string | null> = [];\n\n @Input()\n public axisY: TuiLineType = 'solid';\n\n @Input()\n public axisYInset = false;\n\n @Input()\n public axisYLabels: readonly string[] = [];\n\n @Input()\n public axisYName = '';\n\n @Input()\n public axisYSecondaryInset = false;\n\n @Input()\n public axisYSecondaryLabels: readonly string[] = [];\n\n @Input()\n public axisYSecondaryName = '';\n\n @Input()\n public horizontalLines = 0;\n\n @Input()\n public horizontalLinesHandler: TuiLineHandler = TUI_ALWAYS_SOLID;\n\n @Input()\n public verticalLines = 0;\n\n @Input()\n public verticalLinesHandler: TuiLineHandler = TUI_ALWAYS_DASHED;\n\n public get hasXLabels(): boolean {\n return !!this.axisXLabels.length;\n }\n\n public get hasYLabels(): boolean {\n return (!!this.axisYLabels.length && !this.axisYInset) || !!this.axisYName;\n }\n\n public get hasYSecondaryLabels(): boolean {\n return (\n (!!this.axisYSecondaryLabels.length && !this.axisYSecondaryInset) ||\n !!this.axisYSecondaryName\n );\n }\n\n public fallback(label: string | null): string {\n return label || CHAR_NO_BREAK_SPACE;\n }\n\n @HostBinding('class._centered')\n protected get centeredXLabels(): boolean {\n return this.axisY === 'none';\n }\n}\n","<div\n *ngIf=\"hasYLabels\"\n class=\"t-side\"\n [class.t-side_padding]=\"hasXLabels\"\n>\n <div\n *ngIf=\"axisYName\"\n automation-id=\"tui-axex__axis-y-name\"\n class=\"t-name t-name_primary\"\n >\n {{ axisYName }}\n </div>\n <div\n *ngIf=\"!axisYInset\"\n class=\"t-labels-y t-labels-y_primary\"\n >\n <div\n *ngFor=\"let label of axisYLabels\"\n automation-id=\"tui-axex__axis-y-label\"\n class=\"t-label-y\"\n >\n {{ fallback(label) }}\n </div>\n </div>\n</div>\n<div class=\"t-wrapper\">\n <div\n class=\"t-grid\"\n [style.borderBottomStyle]=\"axisX\"\n [style.borderLeftStyle]=\"axisY\"\n >\n <div class=\"t-vertical\">\n <div\n *tuiRepeatTimes=\"let index of verticalLines\"\n automation-id=\"tui-axex__vertical-line\"\n class=\"t-line t-line_vertical\"\n [style.borderRightStyle]=\"verticalLinesHandler(index, verticalLines)\"\n ></div>\n </div>\n <div class=\"t-horizontal\">\n <div\n *tuiRepeatTimes=\"let index of horizontalLines\"\n automation-id=\"tui-axex__horizontal-line\"\n class=\"t-line\"\n [style.borderTopStyle]=\"horizontalLinesHandler(index, horizontalLines)\"\n ></div>\n </div>\n <div\n *ngIf=\"axisYInset\"\n class=\"t-labels-y t-labels-y_inset\"\n >\n <div\n *ngFor=\"let label of axisYLabels\"\n automation-id=\"tui-axex__axis-y-label\"\n class=\"t-label-y\"\n >\n {{ fallback(label) }}\n </div>\n </div>\n <div\n *ngIf=\"axisYSecondaryInset\"\n class=\"t-labels-y t-labels-y_inset t-labels-y_inset_secondary\"\n >\n <div\n *ngFor=\"let label of axisYSecondaryLabels\"\n automation-id=\"tui-axex__axis-y-secondary-label\"\n class=\"t-label-y\"\n >\n {{ fallback(label) }}\n </div>\n </div>\n <div class=\"t-content\">\n <ng-content />\n </div>\n </div>\n <div\n *ngIf=\"hasXLabels\"\n class=\"t-labels-x\"\n >\n <div\n *ngFor=\"let label of axisXLabels\"\n automation-id=\"tui-axex__axis-x-label\"\n class=\"t-label-x\"\n [class.t-label-x_transparent]=\"label === null\"\n >\n {{ fallback(label) }}\n </div>\n </div>\n</div>\n<div\n *ngIf=\"hasYSecondaryLabels\"\n class=\"t-side\"\n [class.t-side_padding]=\"hasXLabels\"\n>\n <div\n *ngIf=\"!axisYSecondaryInset\"\n class=\"t-labels-y t-labels-y_secondary\"\n >\n <div\n *ngFor=\"let label of axisYSecondaryLabels\"\n automation-id=\"tui-axex__axis-y-secondary-label\"\n class=\"t-label-y\"\n >\n {{ fallback(label) }}\n </div>\n </div>\n <div\n *ngIf=\"axisYSecondaryName\"\n automation-id=\"tui-axex__axis-y-secondary-name\"\n class=\"t-name\"\n >\n {{ axisYSecondaryName }}\n </div>\n</div>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;MAMa,iBAAiB,GAAmB,MAAM,SAAS;MACnD,iBAAiB,GAAmB,MAAM,SAAS;MACnD,gBAAgB,GAAmB,MAAM,QAAQ;MACjD,eAAe,GAAmB,MAAM,OAAO;AAE5D,MAQa,OAAO,CAAA;AARpB,IAAA,WAAA,GAAA;QAUW,IAAK,CAAA,KAAA,GAAgB,OAAO,CAAC;QAG7B,IAAW,CAAA,WAAA,GAAiC,EAAE,CAAC;QAG/C,IAAK,CAAA,KAAA,GAAgB,OAAO,CAAC;QAG7B,IAAU,CAAA,UAAA,GAAG,KAAK,CAAC;QAGnB,IAAW,CAAA,WAAA,GAAsB,EAAE,CAAC;QAGpC,IAAS,CAAA,SAAA,GAAG,EAAE,CAAC;QAGf,IAAmB,CAAA,mBAAA,GAAG,KAAK,CAAC;QAG5B,IAAoB,CAAA,oBAAA,GAAsB,EAAE,CAAC;QAG7C,IAAkB,CAAA,kBAAA,GAAG,EAAE,CAAC;QAGxB,IAAe,CAAA,eAAA,GAAG,CAAC,CAAC;QAGpB,IAAsB,CAAA,sBAAA,GAAmB,gBAAgB,CAAC;QAG1D,IAAa,CAAA,aAAA,GAAG,CAAC,CAAC;QAGlB,IAAoB,CAAA,oBAAA,GAAmB,iBAAiB,CAAC;AAyBnE,KAAA;AAvBG,IAAA,IAAW,UAAU,GAAA;AACjB,QAAA,OAAO,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC;KACpC;AAED,IAAA,IAAW,UAAU,GAAA;QACjB,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,UAAU,KAAK,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC;KAC9E;AAED,IAAA,IAAW,mBAAmB,GAAA;AAC1B,QAAA,QACI,CAAC,CAAC,CAAC,IAAI,CAAC,oBAAoB,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,mBAAmB;AAChE,YAAA,CAAC,CAAC,IAAI,CAAC,kBAAkB,EAC3B;KACL;AAEM,IAAA,QAAQ,CAAC,KAAoB,EAAA;QAChC,OAAO,KAAK,IAAI,mBAAmB,CAAC;KACvC;AAED,IAAA,IACc,eAAe,GAAA;AACzB,QAAA,OAAO,IAAI,CAAC,KAAK,KAAK,MAAM,CAAC;KAChC;+GA9DQ,OAAO,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;AAAP,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,OAAO,ukBCnBpB,myGAkHA,EAAA,MAAA,EAAA,CAAA,
|
|
1
|
+
{"version":3,"file":"taiga-ui-addon-charts-components-axes.mjs","sources":["../../../projects/addon-charts/components/axes/axes.component.ts","../../../projects/addon-charts/components/axes/axes.template.html","../../../projects/addon-charts/components/axes/taiga-ui-addon-charts-components-axes.ts"],"sourcesContent":["import {NgForOf, NgIf} from '@angular/common';\nimport {ChangeDetectionStrategy, Component, HostBinding, Input} from '@angular/core';\nimport type {TuiLineHandler, TuiLineType} from '@taiga-ui/addon-charts/types';\nimport {CHAR_NO_BREAK_SPACE} from '@taiga-ui/cdk/constants';\nimport {TuiRepeatTimes} from '@taiga-ui/cdk/directives/repeat-times';\n\nexport const TUI_ALWAYS_DASHED: TuiLineHandler = () => 'dashed';\nexport const TUI_ALWAYS_DOTTED: TuiLineHandler = () => 'dotted';\nexport const TUI_ALWAYS_SOLID: TuiLineHandler = () => 'solid';\nexport const TUI_ALWAYS_NONE: TuiLineHandler = () => 'none';\n\n@Component({\n standalone: true,\n selector: 'tui-axes',\n imports: [NgIf, NgForOf, TuiRepeatTimes],\n templateUrl: './axes.template.html',\n styleUrls: ['./axes.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class TuiAxes {\n @Input()\n public axisX: TuiLineType = 'solid';\n\n @Input()\n public axisXLabels: ReadonlyArray<string | null> = [];\n\n @Input()\n public axisY: TuiLineType = 'solid';\n\n @Input()\n public axisYInset = false;\n\n @Input()\n public axisYLabels: readonly string[] = [];\n\n @Input()\n public axisYName = '';\n\n @Input()\n public axisYSecondaryInset = false;\n\n @Input()\n public axisYSecondaryLabels: readonly string[] = [];\n\n @Input()\n public axisYSecondaryName = '';\n\n @Input()\n public horizontalLines = 0;\n\n @Input()\n public horizontalLinesHandler: TuiLineHandler = TUI_ALWAYS_SOLID;\n\n @Input()\n public verticalLines = 0;\n\n @Input()\n public verticalLinesHandler: TuiLineHandler = TUI_ALWAYS_DASHED;\n\n public get hasXLabels(): boolean {\n return !!this.axisXLabels.length;\n }\n\n public get hasYLabels(): boolean {\n return (!!this.axisYLabels.length && !this.axisYInset) || !!this.axisYName;\n }\n\n public get hasYSecondaryLabels(): boolean {\n return (\n (!!this.axisYSecondaryLabels.length && !this.axisYSecondaryInset) ||\n !!this.axisYSecondaryName\n );\n }\n\n public fallback(label: string | null): string {\n return label || CHAR_NO_BREAK_SPACE;\n }\n\n @HostBinding('class._centered')\n protected get centeredXLabels(): boolean {\n return this.axisY === 'none';\n }\n}\n","<div\n *ngIf=\"hasYLabels\"\n class=\"t-side\"\n [class.t-side_padding]=\"hasXLabels\"\n>\n <div\n *ngIf=\"axisYName\"\n automation-id=\"tui-axex__axis-y-name\"\n class=\"t-name t-name_primary\"\n >\n {{ axisYName }}\n </div>\n <div\n *ngIf=\"!axisYInset\"\n class=\"t-labels-y t-labels-y_primary\"\n >\n <div\n *ngFor=\"let label of axisYLabels\"\n automation-id=\"tui-axex__axis-y-label\"\n class=\"t-label-y\"\n >\n {{ fallback(label) }}\n </div>\n </div>\n</div>\n<div class=\"t-wrapper\">\n <div\n class=\"t-grid\"\n [style.borderBottomStyle]=\"axisX\"\n [style.borderLeftStyle]=\"axisY\"\n >\n <div class=\"t-vertical\">\n <div\n *tuiRepeatTimes=\"let index of verticalLines\"\n automation-id=\"tui-axex__vertical-line\"\n class=\"t-line t-line_vertical\"\n [style.borderRightStyle]=\"verticalLinesHandler(index, verticalLines)\"\n ></div>\n </div>\n <div class=\"t-horizontal\">\n <div\n *tuiRepeatTimes=\"let index of horizontalLines\"\n automation-id=\"tui-axex__horizontal-line\"\n class=\"t-line\"\n [style.borderTopStyle]=\"horizontalLinesHandler(index, horizontalLines)\"\n ></div>\n </div>\n <div\n *ngIf=\"axisYInset\"\n class=\"t-labels-y t-labels-y_inset\"\n >\n <div\n *ngFor=\"let label of axisYLabels\"\n automation-id=\"tui-axex__axis-y-label\"\n class=\"t-label-y\"\n >\n {{ fallback(label) }}\n </div>\n </div>\n <div\n *ngIf=\"axisYSecondaryInset\"\n class=\"t-labels-y t-labels-y_inset t-labels-y_inset_secondary\"\n >\n <div\n *ngFor=\"let label of axisYSecondaryLabels\"\n automation-id=\"tui-axex__axis-y-secondary-label\"\n class=\"t-label-y\"\n >\n {{ fallback(label) }}\n </div>\n </div>\n <div class=\"t-content\">\n <ng-content />\n </div>\n </div>\n <div\n *ngIf=\"hasXLabels\"\n class=\"t-labels-x\"\n >\n <div\n *ngFor=\"let label of axisXLabels\"\n automation-id=\"tui-axex__axis-x-label\"\n class=\"t-label-x\"\n [class.t-label-x_transparent]=\"label === null\"\n >\n {{ fallback(label) }}\n </div>\n </div>\n</div>\n<div\n *ngIf=\"hasYSecondaryLabels\"\n class=\"t-side\"\n [class.t-side_padding]=\"hasXLabels\"\n>\n <div\n *ngIf=\"!axisYSecondaryInset\"\n class=\"t-labels-y t-labels-y_secondary\"\n >\n <div\n *ngFor=\"let label of axisYSecondaryLabels\"\n automation-id=\"tui-axex__axis-y-secondary-label\"\n class=\"t-label-y\"\n >\n {{ fallback(label) }}\n </div>\n </div>\n <div\n *ngIf=\"axisYSecondaryName\"\n automation-id=\"tui-axex__axis-y-secondary-name\"\n class=\"t-name\"\n >\n {{ axisYSecondaryName }}\n </div>\n</div>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
@@ -9,7 +9,7 @@ import { tuiEaseInOutQuad, tuiPure } from '@taiga-ui/cdk/utils/miscellaneous';
|
|
|
9
9
|
import * as i1 from '@taiga-ui/core/directives/hint';
|
|
10
10
|
import { TuiHintOptionsDirective, tuiHintOptionsProvider, TuiHint } from '@taiga-ui/core/directives/hint';
|
|
11
11
|
import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
|
|
12
|
-
import {
|
|
12
|
+
import { WA_PERFORMANCE, WA_ANIMATION_FRAME } from '@ng-web-apis/common';
|
|
13
13
|
import { tuiDescribeSector } from '@taiga-ui/addon-charts/utils';
|
|
14
14
|
import { tuiZonefree } from '@taiga-ui/cdk/observables';
|
|
15
15
|
import { tuiInjectElement } from '@taiga-ui/cdk/utils/dom';
|
|
@@ -21,8 +21,8 @@ class TuiPieChartDirective {
|
|
|
21
21
|
constructor() {
|
|
22
22
|
this.sector$ = new BehaviorSubject([0, 0]);
|
|
23
23
|
const el = tuiInjectElement();
|
|
24
|
-
const performance = inject(
|
|
25
|
-
const animationFrame$ = inject(
|
|
24
|
+
const performance = inject(WA_PERFORMANCE);
|
|
25
|
+
const animationFrame$ = inject(WA_ANIMATION_FRAME);
|
|
26
26
|
const speed = inject(TUI_ANIMATIONS_SPEED);
|
|
27
27
|
this.sector$
|
|
28
28
|
.pipe(pairwise(), switchMap(([prev, cur]) => {
|
|
@@ -119,7 +119,7 @@ class TuiPieChart {
|
|
|
119
119
|
]);
|
|
120
120
|
}
|
|
121
121
|
getDeg(value) {
|
|
122
|
-
return 360 * (value / this.getSum(this.value));
|
|
122
|
+
return 360 * (value / this.getSum(this.value)) || 0;
|
|
123
123
|
}
|
|
124
124
|
updateActiveItemIndex(index) {
|
|
125
125
|
if (index === this.activeItemIndex) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"taiga-ui-addon-charts-components-pie-chart.mjs","sources":["../../../projects/addon-charts/components/pie-chart/pie-chart.directive.ts","../../../projects/addon-charts/components/pie-chart/pie-chart.component.ts","../../../projects/addon-charts/components/pie-chart/pie-chart.template.html","../../../projects/addon-charts/components/pie-chart/taiga-ui-addon-charts-components-pie-chart.ts"],"sourcesContent":["import {Directive, inject, Input, NgZone} from '@angular/core';\nimport {takeUntilDestroyed} from '@angular/core/rxjs-interop';\nimport {ANIMATION_FRAME, PERFORMANCE} from '@ng-web-apis/common';\nimport {tuiDescribeSector} from '@taiga-ui/addon-charts/utils';\nimport {tuiZonefree} from '@taiga-ui/cdk/observables';\nimport {tuiInjectElement} from '@taiga-ui/cdk/utils/dom';\nimport {tuiClamp} from '@taiga-ui/cdk/utils/math';\nimport {tuiEaseInOutQuad} from '@taiga-ui/cdk/utils/miscellaneous';\nimport {TUI_ANIMATIONS_SPEED} from '@taiga-ui/core/tokens';\nimport {tuiGetDuration} from '@taiga-ui/core/utils/miscellaneous';\nimport {BehaviorSubject, map, pairwise, switchMap, takeWhile} from 'rxjs';\n\n@Directive({\n standalone: true,\n selector: 'path[tuiPieChart]',\n})\nexport class TuiPieChartDirective {\n private readonly sector$ = new BehaviorSubject<readonly [number, number]>([0, 0]);\n\n constructor() {\n const el = tuiInjectElement<SVGPathElement>();\n const performance = inject(PERFORMANCE);\n const animationFrame$ = inject(ANIMATION_FRAME);\n const speed = inject(TUI_ANIMATIONS_SPEED);\n\n this.sector$\n .pipe(\n pairwise(),\n switchMap(([prev, cur]) => {\n const now = performance.now();\n const startDelta = cur[0] - prev[0];\n const endDelta = cur[1] - prev[1];\n\n return animationFrame$.pipe(\n map((timestamp) =>\n tuiEaseInOutQuad(\n tuiClamp((timestamp - now) / tuiGetDuration(speed), 0, 1),\n ),\n ),\n takeWhile((progress) => progress < 1, true),\n map((progress) => [\n prev[0] + startDelta * progress,\n cur[1] > 359 ? cur[1] : prev[1] + endDelta * progress,\n ]),\n );\n }),\n tuiZonefree(inject(NgZone)),\n takeUntilDestroyed(),\n )\n .subscribe(([start, end]) =>\n el.setAttribute('d', tuiDescribeSector(start, end)),\n );\n }\n\n @Input()\n public set tuiPieChart(sector: readonly [number, number]) {\n this.sector$.next(sector);\n }\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n EventEmitter,\n HostBinding,\n inject,\n Input,\n Output,\n} from '@angular/core';\nimport {TuiHovered} from '@taiga-ui/cdk/directives/hovered';\nimport {TuiRepeatTimes} from '@taiga-ui/cdk/directives/repeat-times';\nimport {TuiIdService} from '@taiga-ui/cdk/services';\nimport type {TuiContext} from '@taiga-ui/cdk/types';\nimport {tuiSum} from '@taiga-ui/cdk/utils/math';\nimport {tuiPure} from '@taiga-ui/cdk/utils/miscellaneous';\nimport {\n TuiHint,\n TuiHintOptionsDirective,\n tuiHintOptionsProvider,\n} from '@taiga-ui/core/directives/hint';\nimport type {TuiSizeXL, TuiSizeXS} from '@taiga-ui/core/types';\nimport type {PolymorpheusContent} from '@taiga-ui/polymorpheus';\n\nimport {TuiPieChartDirective} from './pie-chart.directive';\n\nconst RADII = {\n xs: '50',\n s: '50',\n m: '77.8',\n l: '81.9',\n xl: '81.3',\n};\nconst TRANSFORM = {\n xs: 1.15,\n s: 1.25,\n m: 1.11,\n l: 1.09,\n xl: 1.08,\n};\n\n@Component({\n standalone: true,\n selector: 'tui-pie-chart',\n imports: [TuiHint, TuiRepeatTimes, TuiHovered, TuiPieChartDirective],\n templateUrl: './pie-chart.template.html',\n styleUrls: ['./pie-chart.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n viewProviders: [tuiHintOptionsProvider({direction: 'top-right', appearance: 'dark'})],\n})\nexport class TuiPieChart {\n private readonly hintOptions = inject(TuiHintOptionsDirective, {optional: true});\n private readonly autoIdString = inject(TuiIdService).generate();\n\n @Input()\n public value: readonly number[] = [];\n\n @Input()\n @HostBinding('attr.data-size')\n public size: TuiSizeXL | TuiSizeXS = 'm';\n\n @Input()\n public masked = false;\n\n @Input()\n public activeItemIndex = NaN;\n\n @Output()\n public readonly activeItemIndexChange = new EventEmitter<number>();\n\n constructor() {\n if (this.hintOptions) {\n this.hintOptions.showDelay = 0;\n this.hintOptions.hideDelay = 0;\n }\n }\n\n @HostBinding('class._empty')\n protected get empty(): boolean {\n return !this.getSum(this.value);\n }\n\n protected get hintContent(): PolymorpheusContent<TuiContext<number>> {\n return this.hintOptions?.content || '';\n }\n\n protected get maskId(): string {\n return `tui-ring-chart-${this.autoIdString}`;\n }\n\n protected get mask(): string | null {\n return this.masked ? `url(#${this.maskId})` : null;\n }\n\n protected get radius(): string {\n return RADII[this.size];\n }\n\n protected get segments(): ReadonlyArray<[number, number]> {\n return this.getSegments(this.value);\n }\n\n protected getTransform(index: number): string | null {\n const transform = this.masked\n ? `scale(${TRANSFORM[this.size]})`\n : `scale(${TRANSFORM.xs})`;\n\n return index === this.activeItemIndex ? transform : null;\n }\n\n protected onHovered(hovered: boolean, index: number): void {\n this.updateActiveItemIndex(hovered ? index : NaN);\n }\n\n @tuiPure\n private getSum(value: readonly number[]): number {\n return tuiSum(...value);\n }\n\n @tuiPure\n private getSegments(value: readonly number[]): ReadonlyArray<[number, number]> {\n return value\n .map((initial, i, array) =>\n array.reduce(\n (sum, current, j) => (j < i ? this.getDeg(current) + sum : sum),\n this.getDeg(initial),\n ),\n )\n .map((angle, index, array) => [\n array[index - 1] || 0,\n Math.min(angle, 359.9999),\n ]);\n }\n\n private getDeg(value: number): number {\n return 360 * (value / this.getSum(this.value));\n }\n\n private updateActiveItemIndex(index: number): void {\n if (index === this.activeItemIndex) {\n return;\n }\n\n this.activeItemIndex = index;\n this.activeItemIndexChange.next(index);\n }\n}\n","<svg\n focusable=\"false\"\n height=\"100%\"\n viewBox=\"-100 -100 200 200\"\n width=\"100%\"\n xmlns=\"http://www.w3.org/2000/svg\"\n class=\"t-svg\"\n>\n <defs>\n <mask [attr.id]=\"maskId\">\n <rect\n fill=\"white\"\n height=\"400\"\n width=\"400\"\n x=\"-200\"\n y=\"-200\"\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 automation-id=\"tui-pie-chart__segment\"\n d=\"\"\n fill=\"currentColor\"\n tuiHintPointer\n class=\"t-segment\"\n [attr.transform]=\"getTransform(index)\"\n [style.color]=\"'var(--tui-chart-categorical-0' + index + ')'\"\n [tuiHint]=\"hintContent\"\n [tuiHintContext]=\"{$implicit: index}\"\n [tuiPieChart]=\"segments[index]\"\n (tuiHoveredChange)=\"onHovered($event, index)\"\n />\n </g>\n</svg>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"taiga-ui-addon-charts-components-pie-chart.mjs","sources":["../../../projects/addon-charts/components/pie-chart/pie-chart.directive.ts","../../../projects/addon-charts/components/pie-chart/pie-chart.component.ts","../../../projects/addon-charts/components/pie-chart/pie-chart.template.html","../../../projects/addon-charts/components/pie-chart/taiga-ui-addon-charts-components-pie-chart.ts"],"sourcesContent":["import {Directive, inject, Input, NgZone} from '@angular/core';\nimport {takeUntilDestroyed} from '@angular/core/rxjs-interop';\nimport {WA_ANIMATION_FRAME, WA_PERFORMANCE} from '@ng-web-apis/common';\nimport {tuiDescribeSector} from '@taiga-ui/addon-charts/utils';\nimport {tuiZonefree} from '@taiga-ui/cdk/observables';\nimport {tuiInjectElement} from '@taiga-ui/cdk/utils/dom';\nimport {tuiClamp} from '@taiga-ui/cdk/utils/math';\nimport {tuiEaseInOutQuad} from '@taiga-ui/cdk/utils/miscellaneous';\nimport {TUI_ANIMATIONS_SPEED} from '@taiga-ui/core/tokens';\nimport {tuiGetDuration} from '@taiga-ui/core/utils/miscellaneous';\nimport {BehaviorSubject, map, pairwise, switchMap, takeWhile} from 'rxjs';\n\n@Directive({\n standalone: true,\n selector: 'path[tuiPieChart]',\n})\nexport class TuiPieChartDirective {\n private readonly sector$ = new BehaviorSubject<readonly [number, number]>([0, 0]);\n\n constructor() {\n const el = tuiInjectElement<SVGPathElement>();\n const performance = inject(WA_PERFORMANCE);\n const animationFrame$ = inject(WA_ANIMATION_FRAME);\n const speed = inject(TUI_ANIMATIONS_SPEED);\n\n this.sector$\n .pipe(\n pairwise(),\n switchMap(([prev, cur]) => {\n const now = performance.now();\n const startDelta = cur[0] - prev[0];\n const endDelta = cur[1] - prev[1];\n\n return animationFrame$.pipe(\n map((timestamp) =>\n tuiEaseInOutQuad(\n tuiClamp((timestamp - now) / tuiGetDuration(speed), 0, 1),\n ),\n ),\n takeWhile((progress) => progress < 1, true),\n map((progress) => [\n prev[0] + startDelta * progress,\n cur[1] > 359 ? cur[1] : prev[1] + endDelta * progress,\n ]),\n );\n }),\n tuiZonefree(inject(NgZone)),\n takeUntilDestroyed(),\n )\n .subscribe(([start, end]) =>\n el.setAttribute('d', tuiDescribeSector(start, end)),\n );\n }\n\n @Input()\n public set tuiPieChart(sector: readonly [number, number]) {\n this.sector$.next(sector);\n }\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n EventEmitter,\n HostBinding,\n inject,\n Input,\n Output,\n} from '@angular/core';\nimport {TuiHovered} from '@taiga-ui/cdk/directives/hovered';\nimport {TuiRepeatTimes} from '@taiga-ui/cdk/directives/repeat-times';\nimport {TuiIdService} from '@taiga-ui/cdk/services';\nimport type {TuiContext} from '@taiga-ui/cdk/types';\nimport {tuiSum} from '@taiga-ui/cdk/utils/math';\nimport {tuiPure} from '@taiga-ui/cdk/utils/miscellaneous';\nimport {\n TuiHint,\n TuiHintOptionsDirective,\n tuiHintOptionsProvider,\n} from '@taiga-ui/core/directives/hint';\nimport type {TuiSizeXL, TuiSizeXS} from '@taiga-ui/core/types';\nimport type {PolymorpheusContent} from '@taiga-ui/polymorpheus';\n\nimport {TuiPieChartDirective} from './pie-chart.directive';\n\nconst RADII = {\n xs: '50',\n s: '50',\n m: '77.8',\n l: '81.9',\n xl: '81.3',\n};\nconst TRANSFORM = {\n xs: 1.15,\n s: 1.25,\n m: 1.11,\n l: 1.09,\n xl: 1.08,\n};\n\n@Component({\n standalone: true,\n selector: 'tui-pie-chart',\n imports: [TuiHint, TuiRepeatTimes, TuiHovered, TuiPieChartDirective],\n templateUrl: './pie-chart.template.html',\n styleUrls: ['./pie-chart.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n viewProviders: [tuiHintOptionsProvider({direction: 'top-right', appearance: 'dark'})],\n})\nexport class TuiPieChart {\n private readonly hintOptions = inject(TuiHintOptionsDirective, {optional: true});\n private readonly autoIdString = inject(TuiIdService).generate();\n\n @Input()\n public value: readonly number[] = [];\n\n @Input()\n @HostBinding('attr.data-size')\n public size: TuiSizeXL | TuiSizeXS = 'm';\n\n @Input()\n public masked = false;\n\n @Input()\n public activeItemIndex = NaN;\n\n @Output()\n public readonly activeItemIndexChange = new EventEmitter<number>();\n\n constructor() {\n if (this.hintOptions) {\n this.hintOptions.showDelay = 0;\n this.hintOptions.hideDelay = 0;\n }\n }\n\n @HostBinding('class._empty')\n protected get empty(): boolean {\n return !this.getSum(this.value);\n }\n\n protected get hintContent(): PolymorpheusContent<TuiContext<number>> {\n return this.hintOptions?.content || '';\n }\n\n protected get maskId(): string {\n return `tui-ring-chart-${this.autoIdString}`;\n }\n\n protected get mask(): string | null {\n return this.masked ? `url(#${this.maskId})` : null;\n }\n\n protected get radius(): string {\n return RADII[this.size];\n }\n\n protected get segments(): ReadonlyArray<[number, number]> {\n return this.getSegments(this.value);\n }\n\n protected getTransform(index: number): string | null {\n const transform = this.masked\n ? `scale(${TRANSFORM[this.size]})`\n : `scale(${TRANSFORM.xs})`;\n\n return index === this.activeItemIndex ? transform : null;\n }\n\n protected onHovered(hovered: boolean, index: number): void {\n this.updateActiveItemIndex(hovered ? index : NaN);\n }\n\n @tuiPure\n private getSum(value: readonly number[]): number {\n return tuiSum(...value);\n }\n\n @tuiPure\n private getSegments(value: readonly number[]): ReadonlyArray<[number, number]> {\n return value\n .map((initial, i, array) =>\n array.reduce(\n (sum, current, j) => (j < i ? this.getDeg(current) + sum : sum),\n this.getDeg(initial),\n ),\n )\n .map((angle, index, array) => [\n array[index - 1] || 0,\n Math.min(angle, 359.9999),\n ]);\n }\n\n private getDeg(value: number): number {\n return 360 * (value / this.getSum(this.value)) || 0;\n }\n\n private updateActiveItemIndex(index: number): void {\n if (index === this.activeItemIndex) {\n return;\n }\n\n this.activeItemIndex = index;\n this.activeItemIndexChange.next(index);\n }\n}\n","<svg\n focusable=\"false\"\n height=\"100%\"\n viewBox=\"-100 -100 200 200\"\n width=\"100%\"\n xmlns=\"http://www.w3.org/2000/svg\"\n class=\"t-svg\"\n>\n <defs>\n <mask [attr.id]=\"maskId\">\n <rect\n fill=\"white\"\n height=\"400\"\n width=\"400\"\n x=\"-200\"\n y=\"-200\"\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 automation-id=\"tui-pie-chart__segment\"\n d=\"\"\n fill=\"currentColor\"\n tuiHintPointer\n class=\"t-segment\"\n [attr.transform]=\"getTransform(index)\"\n [style.color]=\"'var(--tui-chart-categorical-0' + index + ')'\"\n [tuiHint]=\"hintContent\"\n [tuiHintContext]=\"{$implicit: index}\"\n [tuiPieChart]=\"segments[index]\"\n (tuiHoveredChange)=\"onHovered($event, index)\"\n />\n </g>\n</svg>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@taiga-ui/addon-charts",
|
|
3
|
-
"version": "4.0.0-
|
|
3
|
+
"version": "4.0.0-rc.10",
|
|
4
4
|
"description": "Extension package for Taiga UI that adds various charts, graphs and related components.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"angular",
|
|
@@ -16,9 +16,9 @@
|
|
|
16
16
|
"peerDependencies": {
|
|
17
17
|
"@angular/common": ">=16.0.0",
|
|
18
18
|
"@angular/core": ">=16.0.0",
|
|
19
|
-
"@ng-web-apis/common": "^4.1
|
|
20
|
-
"@taiga-ui/cdk": "^4.0.0-
|
|
21
|
-
"@taiga-ui/core": "^4.0.0-
|
|
19
|
+
"@ng-web-apis/common": "^4.2.1",
|
|
20
|
+
"@taiga-ui/cdk": "^4.0.0-rc.10",
|
|
21
|
+
"@taiga-ui/core": "^4.0.0-rc.10",
|
|
22
22
|
"@taiga-ui/polymorpheus": "^4.6.4"
|
|
23
23
|
},
|
|
24
24
|
"module": "fesm2022/taiga-ui-addon-charts.mjs",
|