@taiga-ui/addon-charts 2.26.0 → 2.27.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bundles/taiga-ui-addon-charts-components-bar-chart.umd.js +5 -5
- package/bundles/taiga-ui-addon-charts-components-bar-chart.umd.js.map +1 -1
- package/bundles/taiga-ui-addon-charts-components-bar-chart.umd.min.js +1 -1
- package/bundles/taiga-ui-addon-charts-components-bar-chart.umd.min.js.map +1 -1
- package/bundles/taiga-ui-addon-charts-components-line-chart.umd.js +11 -11
- package/bundles/taiga-ui-addon-charts-components-line-chart.umd.js.map +1 -1
- package/bundles/taiga-ui-addon-charts-components-line-chart.umd.min.js +1 -1
- package/bundles/taiga-ui-addon-charts-components-line-chart.umd.min.js.map +1 -1
- package/bundles/taiga-ui-addon-charts-components-line-days-chart.umd.js +17 -17
- package/bundles/taiga-ui-addon-charts-components-line-days-chart.umd.js.map +1 -1
- package/bundles/taiga-ui-addon-charts-components-line-days-chart.umd.min.js +1 -1
- package/bundles/taiga-ui-addon-charts-components-line-days-chart.umd.min.js.map +1 -1
- package/bundles/taiga-ui-addon-charts-components-pie-chart.umd.js +5 -5
- package/bundles/taiga-ui-addon-charts-components-pie-chart.umd.js.map +1 -1
- package/bundles/taiga-ui-addon-charts-components-pie-chart.umd.min.js +1 -1
- package/bundles/taiga-ui-addon-charts-components-pie-chart.umd.min.js.map +1 -1
- package/bundles/taiga-ui-addon-charts-components-ring-chart.umd.js +3 -3
- package/bundles/taiga-ui-addon-charts-components-ring-chart.umd.js.map +1 -1
- package/bundles/taiga-ui-addon-charts-components-ring-chart.umd.min.js +1 -1
- package/bundles/taiga-ui-addon-charts-components-ring-chart.umd.min.js.map +1 -1
- package/components/bar-chart/bar-chart.component.d.ts +3 -3
- package/components/bar-chart/taiga-ui-addon-charts-components-bar-chart.metadata.json +1 -1
- package/components/line-chart/line-chart-hint.directive.d.ts +1 -1
- package/components/line-chart/line-chart.component.d.ts +3 -3
- package/components/line-chart/taiga-ui-addon-charts-components-line-chart.metadata.json +1 -1
- package/components/line-days-chart/line-days-chart-hint.directive.d.ts +1 -1
- package/components/line-days-chart/line-days-chart.component.d.ts +5 -5
- package/components/line-days-chart/taiga-ui-addon-charts-components-line-days-chart.metadata.json +1 -1
- package/components/pie-chart/pie-chart.component.d.ts +3 -3
- package/components/pie-chart/taiga-ui-addon-charts-components-pie-chart.metadata.json +1 -1
- package/components/ring-chart/ring-chart.component.d.ts +1 -1
- package/components/ring-chart/taiga-ui-addon-charts-components-ring-chart.metadata.json +1 -1
- package/esm2015/components/bar-chart/bar-chart.component.js +6 -6
- package/esm2015/components/line-chart/line-chart-hint.directive.js +6 -6
- package/esm2015/components/line-chart/line-chart.component.js +7 -7
- package/esm2015/components/line-days-chart/line-days-chart-hint.directive.js +5 -5
- package/esm2015/components/line-days-chart/line-days-chart.component.js +14 -14
- package/esm2015/components/pie-chart/pie-chart.component.js +6 -6
- package/esm2015/components/ring-chart/ring-chart.component.js +4 -4
- package/esm5/components/bar-chart/bar-chart.component.js +6 -6
- package/esm5/components/line-chart/line-chart-hint.directive.js +6 -6
- package/esm5/components/line-chart/line-chart.component.js +7 -7
- package/esm5/components/line-days-chart/line-days-chart-hint.directive.js +5 -5
- package/esm5/components/line-days-chart/line-days-chart.component.js +14 -14
- package/esm5/components/pie-chart/pie-chart.component.js +6 -6
- package/esm5/components/ring-chart/ring-chart.component.js +4 -4
- package/fesm2015/taiga-ui-addon-charts-components-bar-chart.js +5 -5
- package/fesm2015/taiga-ui-addon-charts-components-bar-chart.js.map +1 -1
- package/fesm2015/taiga-ui-addon-charts-components-line-chart.js +12 -12
- package/fesm2015/taiga-ui-addon-charts-components-line-chart.js.map +1 -1
- package/fesm2015/taiga-ui-addon-charts-components-line-days-chart.js +18 -18
- package/fesm2015/taiga-ui-addon-charts-components-line-days-chart.js.map +1 -1
- package/fesm2015/taiga-ui-addon-charts-components-pie-chart.js +5 -5
- package/fesm2015/taiga-ui-addon-charts-components-pie-chart.js.map +1 -1
- package/fesm2015/taiga-ui-addon-charts-components-ring-chart.js +3 -3
- package/fesm2015/taiga-ui-addon-charts-components-ring-chart.js.map +1 -1
- package/fesm5/taiga-ui-addon-charts-components-bar-chart.js +5 -5
- package/fesm5/taiga-ui-addon-charts-components-bar-chart.js.map +1 -1
- package/fesm5/taiga-ui-addon-charts-components-line-chart.js +12 -12
- package/fesm5/taiga-ui-addon-charts-components-line-chart.js.map +1 -1
- package/fesm5/taiga-ui-addon-charts-components-line-days-chart.js +18 -18
- package/fesm5/taiga-ui-addon-charts-components-line-days-chart.js.map +1 -1
- package/fesm5/taiga-ui-addon-charts-components-pie-chart.js +5 -5
- package/fesm5/taiga-ui-addon-charts-components-pie-chart.js.map +1 -1
- package/fesm5/taiga-ui-addon-charts-components-ring-chart.js +3 -3
- package/fesm5/taiga-ui-addon-charts-components-ring-chart.js.map +1 -1
- package/package.json +3 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"taiga-ui-addon-charts-components-pie-chart.js","sources":["ng://@taiga-ui/addon-charts/components/pie-chart/pie-chart.component.ts","ng://@taiga-ui/addon-charts/components/pie-chart/pie-chart.module.ts","ng://@taiga-ui/addon-charts/components/pie-chart/taiga-ui-addon-charts-components-pie-chart.ts"],"sourcesContent":["import {Location} from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n EventEmitter,\n HostBinding,\n Inject,\n Input,\n Output,\n} from '@angular/core';\nimport {DomSanitizer, SafeValue} from '@angular/platform-browser';\nimport {TUI_DEFAULT_COLOR_HANDLER} from '@taiga-ui/addon-charts/constants';\nimport {TuiColorHandler} from '@taiga-ui/addon-charts/types';\nimport {describeSector} from '@taiga-ui/addon-charts/utils';\nimport {\n sum,\n TuiContextWithImplicit,\n tuiDefaultProp,\n TuiIdService,\n tuiPure,\n} from '@taiga-ui/cdk';\nimport {colorFallback, TuiSizeXL, TuiSizeXS} from '@taiga-ui/core';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\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// TODO: Remove sanitizer when Angular version is bumped\n@Component({\n selector: 'tui-pie-chart',\n templateUrl: './pie-chart.template.html',\n styleUrls: ['./pie-chart.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class TuiPieChartComponent {\n @Input()\n @tuiDefaultProp()\n value: readonly number[] = [];\n\n @Input()\n @HostBinding('attr.data-tui-host-size')\n @tuiDefaultProp()\n size: TuiSizeXS | TuiSizeXL = 'm';\n\n @Input()\n @tuiDefaultProp()\n colorHandler: TuiColorHandler = TUI_DEFAULT_COLOR_HANDLER;\n\n @Input()\n @tuiDefaultProp()\n hintContent: PolymorpheusContent<TuiContextWithImplicit<number>> = '';\n\n @Input()\n @tuiDefaultProp()\n masked = false;\n\n @Input()\n @tuiDefaultProp()\n activeItemIndex = NaN;\n\n @Output()\n activeItemIndexChange = new EventEmitter<number>();\n\n
|
|
1
|
+
{"version":3,"file":"taiga-ui-addon-charts-components-pie-chart.js","sources":["ng://@taiga-ui/addon-charts/components/pie-chart/pie-chart.component.ts","ng://@taiga-ui/addon-charts/components/pie-chart/pie-chart.module.ts","ng://@taiga-ui/addon-charts/components/pie-chart/taiga-ui-addon-charts-components-pie-chart.ts"],"sourcesContent":["import {Location} from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n EventEmitter,\n HostBinding,\n Inject,\n Input,\n Output,\n} from '@angular/core';\nimport {DomSanitizer, SafeValue} from '@angular/platform-browser';\nimport {TUI_DEFAULT_COLOR_HANDLER} from '@taiga-ui/addon-charts/constants';\nimport {TuiColorHandler} from '@taiga-ui/addon-charts/types';\nimport {describeSector} from '@taiga-ui/addon-charts/utils';\nimport {\n sum,\n TuiContextWithImplicit,\n tuiDefaultProp,\n TuiIdService,\n tuiPure,\n} from '@taiga-ui/cdk';\nimport {colorFallback, TuiSizeXL, TuiSizeXS} from '@taiga-ui/core';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\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// TODO: Remove sanitizer when Angular version is bumped\n@Component({\n selector: 'tui-pie-chart',\n templateUrl: './pie-chart.template.html',\n styleUrls: ['./pie-chart.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class TuiPieChartComponent {\n private readonly autoIdString: string;\n\n @Input()\n @tuiDefaultProp()\n value: readonly number[] = [];\n\n @Input()\n @HostBinding('attr.data-tui-host-size')\n @tuiDefaultProp()\n size: TuiSizeXS | TuiSizeXL = 'm';\n\n @Input()\n @tuiDefaultProp()\n colorHandler: TuiColorHandler = TUI_DEFAULT_COLOR_HANDLER;\n\n @Input()\n @tuiDefaultProp()\n hintContent: PolymorpheusContent<TuiContextWithImplicit<number>> = '';\n\n @Input()\n @tuiDefaultProp()\n masked = false;\n\n @Input()\n @tuiDefaultProp()\n activeItemIndex = NaN;\n\n @Output()\n activeItemIndexChange = new EventEmitter<number>();\n\n constructor(\n @Inject(TuiIdService) idService: TuiIdService,\n @Inject(Location) private readonly locationRef: Location,\n @Inject(DomSanitizer) private readonly sanitizer: DomSanitizer,\n ) {\n this.autoIdString = idService.generate();\n }\n\n get maskId(): string {\n return 'tui-ring-chart-' + this.autoIdString;\n }\n\n get mask(): string | null {\n return this.masked\n ? `url(${this.locationRef.prepareExternalUrl(this.locationRef.path())}#${\n this.maskId\n })`\n : null;\n }\n\n get radius(): string {\n return RADII[this.size];\n }\n\n get segments(): readonly string[] {\n return this.getSegments(this.value);\n }\n\n @tuiPure\n getContentContext($implicit: number): TuiContextWithImplicit<number> {\n return {$implicit};\n }\n\n 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 getHint(hint: PolymorpheusContent): PolymorpheusContent {\n return this.hintContent ? hint : '';\n }\n\n onHovered(hovered: boolean, index: number) {\n this.updateActiveItemIndex(hovered ? index : NaN);\n }\n\n getColor(index: number): SafeValue {\n return this.sanitizer.bypassSecurityTrustStyle(\n `var(--tui-chart-${index}, ${colorFallback(this.colorHandler(index))})`,\n );\n }\n\n @tuiPure\n private getSegments(value: readonly number[]): readonly string[] {\n const total = sum(...value);\n\n return value\n .map((currentItem, currentIndex, array) =>\n array.reduce(\n (sum, item, index) =>\n index < currentIndex ? (item / total) * 360 + sum : sum,\n (currentItem / total) * 360,\n ),\n )\n .map((angle, index, array) =>\n describeSector(array[index - 1] || 0, Math.min(angle, 359.9999)),\n );\n }\n\n private updateActiveItemIndex(index: number) {\n if (index === this.activeItemIndex) {\n return;\n }\n\n this.activeItemIndex = index;\n this.activeItemIndexChange.next(index);\n }\n}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {TuiHoveredModule} from '@taiga-ui/cdk';\nimport {TuiPointerHintModule} from '@taiga-ui/core';\nimport {PolymorpheusModule} from '@tinkoff/ng-polymorpheus';\n\nimport {TuiPieChartComponent} from './pie-chart.component';\n\n@NgModule({\n imports: [CommonModule, TuiHoveredModule, PolymorpheusModule, TuiPointerHintModule],\n declarations: [TuiPieChartComponent],\n exports: [TuiPieChartComponent],\n})\nexport class TuiPieChartModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
@@ -25,6 +25,9 @@ let TuiRingChartComponent = class TuiRingChartComponent {
|
|
|
25
25
|
onActiveItemIndexChange(index) {
|
|
26
26
|
this.updateActiveItemIndex(index);
|
|
27
27
|
}
|
|
28
|
+
getContentContext($implicit, value) {
|
|
29
|
+
return { $implicit, value };
|
|
30
|
+
}
|
|
28
31
|
updateActiveItemIndex(index) {
|
|
29
32
|
if (index === this.activeItemIndex) {
|
|
30
33
|
return;
|
|
@@ -32,9 +35,6 @@ let TuiRingChartComponent = class TuiRingChartComponent {
|
|
|
32
35
|
this.activeItemIndex = index;
|
|
33
36
|
this.activeItemIndexChange.next(index);
|
|
34
37
|
}
|
|
35
|
-
getContentContext($implicit, value) {
|
|
36
|
-
return { $implicit, value };
|
|
37
|
-
}
|
|
38
38
|
};
|
|
39
39
|
__decorate([
|
|
40
40
|
Input(),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"taiga-ui-addon-charts-components-ring-chart.js","sources":["ng://@taiga-ui/addon-charts/components/ring-chart/ring-chart.component.ts","ng://@taiga-ui/addon-charts/components/ring-chart/ring-chart.module.ts","ng://@taiga-ui/addon-charts/components/ring-chart/taiga-ui-addon-charts-components-ring-chart.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n Component,\n EventEmitter,\n HostBinding,\n Input,\n Output,\n} from '@angular/core';\nimport {TUI_DEFAULT_COLOR_HANDLER} from '@taiga-ui/addon-charts/constants';\nimport {TuiRingChartContext} from '@taiga-ui/addon-charts/interfaces';\nimport {TuiColorHandler} from '@taiga-ui/addon-charts/types';\nimport {tuiDefaultProp, tuiPure} from '@taiga-ui/cdk';\nimport {TuiSizeS, TuiSizeXL} from '@taiga-ui/core';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\n\n@Component({\n selector: 'tui-ring-chart',\n templateUrl: './ring-chart.template.html',\n styleUrls: ['./ring-chart.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class TuiRingChartComponent {\n @Input()\n @tuiDefaultProp()\n value: readonly number[] = [];\n\n @Input()\n @HostBinding('attr.data-tui-host-size')\n @tuiDefaultProp()\n size: TuiSizeS | TuiSizeXL = 'm';\n\n @Input()\n @tuiDefaultProp()\n colorHandler: TuiColorHandler = TUI_DEFAULT_COLOR_HANDLER;\n\n @Input()\n @tuiDefaultProp()\n content: PolymorpheusContent<TuiRingChartContext> = '';\n\n @Input()\n @tuiDefaultProp()\n masked = true;\n\n @Input()\n @tuiDefaultProp()\n activeItemIndex = NaN;\n\n @Output()\n activeItemIndexChange = new EventEmitter<number>();\n\n get hasContent(): boolean {\n return this.size !== 's' && !!this.content;\n }\n\n get contentContext(): TuiRingChartContext {\n return this.getContentContext(this.activeItemIndex, this.value);\n }\n\n onActiveItemIndexChange(index: number) {\n this.updateActiveItemIndex(index);\n }\n\n private updateActiveItemIndex(index: number) {\n if (index === this.activeItemIndex) {\n return;\n }\n\n this.activeItemIndex = index;\n this.activeItemIndexChange.next(index);\n }\n
|
|
1
|
+
{"version":3,"file":"taiga-ui-addon-charts-components-ring-chart.js","sources":["ng://@taiga-ui/addon-charts/components/ring-chart/ring-chart.component.ts","ng://@taiga-ui/addon-charts/components/ring-chart/ring-chart.module.ts","ng://@taiga-ui/addon-charts/components/ring-chart/taiga-ui-addon-charts-components-ring-chart.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n Component,\n EventEmitter,\n HostBinding,\n Input,\n Output,\n} from '@angular/core';\nimport {TUI_DEFAULT_COLOR_HANDLER} from '@taiga-ui/addon-charts/constants';\nimport {TuiRingChartContext} from '@taiga-ui/addon-charts/interfaces';\nimport {TuiColorHandler} from '@taiga-ui/addon-charts/types';\nimport {tuiDefaultProp, tuiPure} from '@taiga-ui/cdk';\nimport {TuiSizeS, TuiSizeXL} from '@taiga-ui/core';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\n\n@Component({\n selector: 'tui-ring-chart',\n templateUrl: './ring-chart.template.html',\n styleUrls: ['./ring-chart.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class TuiRingChartComponent {\n @Input()\n @tuiDefaultProp()\n value: readonly number[] = [];\n\n @Input()\n @HostBinding('attr.data-tui-host-size')\n @tuiDefaultProp()\n size: TuiSizeS | TuiSizeXL = 'm';\n\n @Input()\n @tuiDefaultProp()\n colorHandler: TuiColorHandler = TUI_DEFAULT_COLOR_HANDLER;\n\n @Input()\n @tuiDefaultProp()\n content: PolymorpheusContent<TuiRingChartContext> = '';\n\n @Input()\n @tuiDefaultProp()\n masked = true;\n\n @Input()\n @tuiDefaultProp()\n activeItemIndex = NaN;\n\n @Output()\n activeItemIndexChange = new EventEmitter<number>();\n\n get hasContent(): boolean {\n return this.size !== 's' && !!this.content;\n }\n\n get contentContext(): TuiRingChartContext {\n return this.getContentContext(this.activeItemIndex, this.value);\n }\n\n onActiveItemIndexChange(index: number) {\n this.updateActiveItemIndex(index);\n }\n\n @tuiPure\n private getContentContext(\n $implicit: number,\n value: readonly number[],\n ): TuiRingChartContext {\n return {$implicit, value};\n }\n\n private updateActiveItemIndex(index: number) {\n if (index === this.activeItemIndex) {\n return;\n }\n\n this.activeItemIndex = index;\n this.activeItemIndexChange.next(index);\n }\n}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {TuiPieChartModule} from '@taiga-ui/addon-charts/components/pie-chart';\nimport {PolymorpheusModule} from '@tinkoff/ng-polymorpheus';\n\nimport {TuiRingChartComponent} from './ring-chart.component';\n\n@NgModule({\n imports: [CommonModule, PolymorpheusModule, TuiPieChartModule],\n declarations: [TuiRingChartComponent],\n exports: [TuiRingChartComponent],\n})\nexport class TuiRingChartModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;IAqBa,qBAAqB,GAAlC,MAAa,qBAAqB;IAAlC;QAGI,UAAK,GAAsB,EAAE,CAAC;QAK9B,SAAI,GAAyB,GAAG,CAAC;QAIjC,iBAAY,GAAoB,yBAAyB,CAAC;QAI1D,YAAO,GAA6C,EAAE,CAAC;QAIvD,WAAM,GAAG,IAAI,CAAC;QAId,oBAAe,GAAG,GAAG,CAAC;QAGtB,0BAAqB,GAAG,IAAI,YAAY,EAAU,CAAC;KA8BtD;IA5BG,IAAI,UAAU;QACV,OAAO,IAAI,CAAC,IAAI,KAAK,GAAG,IAAI,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC;KAC9C;IAED,IAAI,cAAc;QACd,OAAO,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,eAAe,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;KACnE;IAED,uBAAuB,CAAC,KAAa;QACjC,IAAI,CAAC,qBAAqB,CAAC,KAAK,CAAC,CAAC;KACrC;IAGO,iBAAiB,CACrB,SAAiB,EACjB,KAAwB;QAExB,OAAO,EAAC,SAAS,EAAE,KAAK,EAAC,CAAC;KAC7B;IAEO,qBAAqB,CAAC,KAAa;QACvC,IAAI,KAAK,KAAK,IAAI,CAAC,eAAe,EAAE;YAChC,OAAO;SACV;QAED,IAAI,CAAC,eAAe,GAAG,KAAK,CAAC;QAC7B,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;KAC1C;EACJ;AAtDG;IAFC,KAAK,EAAE;IACP,cAAc,EAAE;oDACa;AAK9B;IAHC,KAAK,EAAE;IACP,WAAW,CAAC,yBAAyB,CAAC;IACtC,cAAc,EAAE;mDACgB;AAIjC;IAFC,KAAK,EAAE;IACP,cAAc,EAAE;2DACyC;AAI1D;IAFC,KAAK,EAAE;IACP,cAAc,EAAE;sDACsC;AAIvD;IAFC,KAAK,EAAE;IACP,cAAc,EAAE;qDACH;AAId;IAFC,KAAK,EAAE;IACP,cAAc,EAAE;8DACK;AAGtB;IADC,MAAM,EAAE;oEAC0C;AAenD;IADC,OAAO;8DAMP;AA/CQ,qBAAqB;IANjC,SAAS,CAAC;QACP,QAAQ,EAAE,gBAAgB;QAC1B,wiBAAyC;QAEzC,eAAe,EAAE,uBAAuB,CAAC,MAAM;;KAClD,CAAC;GACW,qBAAqB,CAyDjC;;IClEY,kBAAkB,GAA/B,MAAa,kBAAkB;EAAG;AAArB,kBAAkB;IAL9B,QAAQ,CAAC;QACN,OAAO,EAAE,CAAC,YAAY,EAAE,kBAAkB,EAAE,iBAAiB,CAAC;QAC9D,YAAY,EAAE,CAAC,qBAAqB,CAAC;QACrC,OAAO,EAAE,CAAC,qBAAqB,CAAC;KACnC,CAAC;GACW,kBAAkB,CAAG;;ACZlC;;;;;;"}
|
|
@@ -45,17 +45,17 @@ var TuiBarChartComponent = /** @class */ (function () {
|
|
|
45
45
|
enumerable: true,
|
|
46
46
|
configurable: true
|
|
47
47
|
});
|
|
48
|
+
TuiBarChartComponent.prototype.getContentContext = function (index) {
|
|
49
|
+
return {
|
|
50
|
+
$implicit: index,
|
|
51
|
+
};
|
|
52
|
+
};
|
|
48
53
|
TuiBarChartComponent.prototype.getHint = function (hint) {
|
|
49
54
|
return this.hasHint ? hint : '';
|
|
50
55
|
};
|
|
51
56
|
TuiBarChartComponent.prototype.getHintId = function (index) {
|
|
52
57
|
return this.autoIdString + "_" + index;
|
|
53
58
|
};
|
|
54
|
-
TuiBarChartComponent.prototype.getContentContext = function (index) {
|
|
55
|
-
return {
|
|
56
|
-
$implicit: index,
|
|
57
|
-
};
|
|
58
|
-
};
|
|
59
59
|
TuiBarChartComponent.prototype.transpose = function (value) {
|
|
60
60
|
return value.reduce(function (result, next) {
|
|
61
61
|
return next.map(function (_, index) { return __spread((result[index] || []), [next[index]]); });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"taiga-ui-addon-charts-components-bar-chart.js","sources":["ng://@taiga-ui/addon-charts/components/bar-chart/bar-chart.component.ts","ng://@taiga-ui/addon-charts/components/bar-chart/bar-chart.module.ts","ng://@taiga-ui/addon-charts/components/bar-chart/taiga-ui-addon-charts-components-bar-chart.ts"],"sourcesContent":["import {ChangeDetectionStrategy, Component, Inject, Input} from '@angular/core';\nimport {TUI_DEFAULT_COLOR_HANDLER} from '@taiga-ui/addon-charts/constants';\nimport {TuiColorHandler} from '@taiga-ui/addon-charts/types';\nimport {\n sum,\n TuiContextWithImplicit,\n tuiDefaultProp,\n TuiIdService,\n TuiMapper,\n tuiPure,\n} from '@taiga-ui/cdk';\nimport {TuiHintModeT, TuiSizeL, TuiSizeS} from '@taiga-ui/core';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\n\nexport function valueAssertion(value: ReadonlyArray<readonly number[]>): boolean {\n const valid = value.every(array => array.length === value[0].length);\n\n return valid;\n}\n\nconst VALUE_ERROR = 'All arrays must be of the same length';\n\n@Component({\n selector: 'tui-bar-chart',\n templateUrl: './bar-chart.template.html',\n styleUrls: ['./bar-chart.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class TuiBarChartComponent {\n @Input()\n @tuiDefaultProp(valueAssertion, VALUE_ERROR)\n value: ReadonlyArray<readonly number[]> = [];\n\n @Input()\n @tuiDefaultProp()\n max = NaN;\n\n @Input()\n @tuiDefaultProp()\n colorHandler: TuiColorHandler = TUI_DEFAULT_COLOR_HANDLER;\n\n @Input()\n @tuiDefaultProp()\n size: TuiSizeS | TuiSizeL | null = 'm';\n\n @Input()\n @tuiDefaultProp()\n collapsed = false;\n\n @Input()\n @tuiDefaultProp()\n hintContent: PolymorpheusContent<TuiContextWithImplicit<number>> = '';\n\n @Input()\n @tuiDefaultProp()\n hintMode: TuiHintModeT | null = null;\n\n
|
|
1
|
+
{"version":3,"file":"taiga-ui-addon-charts-components-bar-chart.js","sources":["ng://@taiga-ui/addon-charts/components/bar-chart/bar-chart.component.ts","ng://@taiga-ui/addon-charts/components/bar-chart/bar-chart.module.ts","ng://@taiga-ui/addon-charts/components/bar-chart/taiga-ui-addon-charts-components-bar-chart.ts"],"sourcesContent":["import {ChangeDetectionStrategy, Component, Inject, Input} from '@angular/core';\nimport {TUI_DEFAULT_COLOR_HANDLER} from '@taiga-ui/addon-charts/constants';\nimport {TuiColorHandler} from '@taiga-ui/addon-charts/types';\nimport {\n sum,\n TuiContextWithImplicit,\n tuiDefaultProp,\n TuiIdService,\n TuiMapper,\n tuiPure,\n} from '@taiga-ui/cdk';\nimport {TuiHintModeT, TuiSizeL, TuiSizeS} from '@taiga-ui/core';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\n\nexport function valueAssertion(value: ReadonlyArray<readonly number[]>): boolean {\n const valid = value.every(array => array.length === value[0].length);\n\n return valid;\n}\n\nconst VALUE_ERROR = 'All arrays must be of the same length';\n\n@Component({\n selector: 'tui-bar-chart',\n templateUrl: './bar-chart.template.html',\n styleUrls: ['./bar-chart.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class TuiBarChartComponent {\n private readonly autoIdString: string;\n\n @Input()\n @tuiDefaultProp(valueAssertion, VALUE_ERROR)\n value: ReadonlyArray<readonly number[]> = [];\n\n @Input()\n @tuiDefaultProp()\n max = NaN;\n\n @Input()\n @tuiDefaultProp()\n colorHandler: TuiColorHandler = TUI_DEFAULT_COLOR_HANDLER;\n\n @Input()\n @tuiDefaultProp()\n size: TuiSizeS | TuiSizeL | null = 'm';\n\n @Input()\n @tuiDefaultProp()\n collapsed = false;\n\n @Input()\n @tuiDefaultProp()\n hintContent: PolymorpheusContent<TuiContextWithImplicit<number>> = '';\n\n @Input()\n @tuiDefaultProp()\n hintMode: TuiHintModeT | null = null;\n\n constructor(@Inject(TuiIdService) idService: TuiIdService) {\n this.autoIdString = idService.generate();\n }\n\n get hasHint(): boolean {\n return !!this.hintContent;\n }\n\n get transposed(): ReadonlyArray<readonly number[]> {\n return this.transpose(this.value);\n }\n\n get computedMax(): number {\n return this.max || this.getMax(this.value, this.collapsed);\n }\n\n @tuiPure\n getContentContext(index: number): TuiContextWithImplicit<number> {\n return {\n $implicit: index,\n };\n }\n\n readonly percentMapper: TuiMapper<ReadonlyArray<number>, number> = (\n set,\n collapsed: boolean,\n max: number,\n ) => (100 * (collapsed ? sum(...set) : Math.max(...set))) / max;\n\n getHint(hint: PolymorpheusContent): PolymorpheusContent {\n return this.hasHint ? hint : '';\n }\n\n getHintId(index: number): string {\n return `${this.autoIdString}_${index}`;\n }\n\n @tuiPure\n private transpose(\n value: ReadonlyArray<readonly number[]>,\n ): ReadonlyArray<readonly number[]> {\n return value.reduce<ReadonlyArray<readonly number[]>>(\n (result, next) =>\n next.map((_, index) => [...(result[index] || []), next[index]]),\n [],\n );\n }\n\n @tuiPure\n private getMax(values: ReadonlyArray<readonly number[]>, collapsed: boolean): number {\n return collapsed\n ? Math.max(\n ...values.reduce((result, next) =>\n result.map((value, index) => value + next[index]),\n ),\n )\n : values.reduce((max, value) => Math.max(...value, max), 0);\n }\n}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {TuiBarSetModule} from '@taiga-ui/addon-charts/components/bar-set';\nimport {TuiFocusableModule, TuiMapperPipeModule} from '@taiga-ui/cdk';\nimport {TuiDescribedByModule, TuiHintModule} from '@taiga-ui/core';\nimport {PolymorpheusModule} from '@tinkoff/ng-polymorpheus';\n\nimport {TuiBarChartComponent} from './bar-chart.component';\n\n@NgModule({\n imports: [\n CommonModule,\n PolymorpheusModule,\n TuiDescribedByModule,\n TuiBarSetModule,\n TuiFocusableModule,\n TuiHintModule,\n TuiMapperPipeModule,\n ],\n declarations: [TuiBarChartComponent],\n exports: [TuiBarChartComponent],\n})\nexport class TuiBarChartModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { __spread, __decorate, __param } from 'tslib';
|
|
2
2
|
import { Location, CommonModule } from '@angular/common';
|
|
3
|
-
import { Renderer2, Inject, ElementRef, NgZone,
|
|
3
|
+
import { Renderer2, Inject, ElementRef, NgZone, ContentChildren, forwardRef, Input, Directive, Optional, HostListener, Component, ChangeDetectionStrategy, NgModule } from '@angular/core';
|
|
4
4
|
import { draw } from '@taiga-ui/addon-charts/utils';
|
|
5
5
|
import { EMPTY_QUERY, tuiZonefree, TuiDestroyService, tuiDefaultProp, tuiPure, inRange, tuiZoneOptimized, TuiIdService, TuiFocusableModule, TuiLetModule } from '@taiga-ui/cdk';
|
|
6
6
|
import { Observable, Subject } from 'rxjs';
|
|
@@ -14,9 +14,9 @@ var TuiLineChartHintDirective = /** @class */ (function () {
|
|
|
14
14
|
var _this = this;
|
|
15
15
|
var nativeElement = _a.nativeElement;
|
|
16
16
|
this.renderer = renderer;
|
|
17
|
-
this.hint = '';
|
|
18
17
|
this.charts = EMPTY_QUERY;
|
|
19
18
|
this.chartsRef = EMPTY_QUERY;
|
|
19
|
+
this.hint = '';
|
|
20
20
|
animationFrame$
|
|
21
21
|
.pipe(throttleTime(200), map(function () { return !!nativeElement.querySelector("." + HINT_HOVERED_CLASS); }), startWith(false), distinctUntilChanged(), filter(function (v) { return !v; }), tuiZonefree(ngZone), takeUntil(destroy$))
|
|
22
22
|
.subscribe(function () {
|
|
@@ -50,16 +50,16 @@ var TuiLineChartHintDirective = /** @class */ (function () {
|
|
|
50
50
|
{ type: NgZone, decorators: [{ type: Inject, args: [NgZone,] }] },
|
|
51
51
|
{ type: Observable, decorators: [{ type: Inject, args: [ANIMATION_FRAME,] }] }
|
|
52
52
|
]; };
|
|
53
|
-
__decorate([
|
|
54
|
-
Input('tuiLineChartHint'),
|
|
55
|
-
tuiDefaultProp()
|
|
56
|
-
], TuiLineChartHintDirective.prototype, "hint", void 0);
|
|
57
53
|
__decorate([
|
|
58
54
|
ContentChildren(forwardRef(function () { return TuiLineChartComponent; }))
|
|
59
55
|
], TuiLineChartHintDirective.prototype, "charts", void 0);
|
|
60
56
|
__decorate([
|
|
61
57
|
ContentChildren(forwardRef(function () { return TuiLineChartComponent; }), { read: ElementRef })
|
|
62
58
|
], TuiLineChartHintDirective.prototype, "chartsRef", void 0);
|
|
59
|
+
__decorate([
|
|
60
|
+
Input('tuiLineChartHint'),
|
|
61
|
+
tuiDefaultProp()
|
|
62
|
+
], TuiLineChartHintDirective.prototype, "hint", void 0);
|
|
63
63
|
__decorate([
|
|
64
64
|
tuiPure
|
|
65
65
|
], TuiLineChartHintDirective.prototype, "computeContext", null);
|
|
@@ -86,6 +86,7 @@ var TuiLineChartComponent = /** @class */ (function () {
|
|
|
86
86
|
this.ngZone = ngZone;
|
|
87
87
|
this.locationRef = locationRef;
|
|
88
88
|
this.hintDirective = hintDirective;
|
|
89
|
+
this._hovered$ = new Subject();
|
|
89
90
|
this.x = 0;
|
|
90
91
|
this.y = 0;
|
|
91
92
|
this.width = 0;
|
|
@@ -97,7 +98,6 @@ var TuiLineChartComponent = /** @class */ (function () {
|
|
|
97
98
|
this.filled = false;
|
|
98
99
|
this.dots = false;
|
|
99
100
|
this.value = [];
|
|
100
|
-
this._hovered$ = new Subject();
|
|
101
101
|
this.autoIdString = idService.generate();
|
|
102
102
|
}
|
|
103
103
|
Object.defineProperty(TuiLineChartComponent.prototype, "valueSetter", {
|
|
@@ -174,6 +174,11 @@ var TuiLineChartComponent = /** @class */ (function () {
|
|
|
174
174
|
enumerable: true,
|
|
175
175
|
configurable: true
|
|
176
176
|
});
|
|
177
|
+
TuiLineChartComponent.prototype.onMouseLeave = function () {
|
|
178
|
+
if (!this.hintDirective) {
|
|
179
|
+
this.onHovered(NaN);
|
|
180
|
+
}
|
|
181
|
+
};
|
|
177
182
|
TuiLineChartComponent.prototype.getX = function (index) {
|
|
178
183
|
if (this.isSinglePoint) {
|
|
179
184
|
return this.value[0][0] / 2;
|
|
@@ -217,11 +222,6 @@ var TuiLineChartComponent = /** @class */ (function () {
|
|
|
217
222
|
TuiLineChartComponent.prototype.onHovered = function (index) {
|
|
218
223
|
this._hovered$.next(index);
|
|
219
224
|
};
|
|
220
|
-
TuiLineChartComponent.prototype.onMouseLeave = function () {
|
|
221
|
-
if (!this.hintDirective) {
|
|
222
|
-
this.onHovered(NaN);
|
|
223
|
-
}
|
|
224
|
-
};
|
|
225
225
|
Object.defineProperty(TuiLineChartComponent.prototype, "isSinglePoint", {
|
|
226
226
|
get: function () {
|
|
227
227
|
return this.value.length === 1;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"taiga-ui-addon-charts-components-line-chart.js","sources":["ng://@taiga-ui/addon-charts/components/line-chart/line-chart-hint.directive.ts","ng://@taiga-ui/addon-charts/components/line-chart/line-chart.component.ts","ng://@taiga-ui/addon-charts/components/line-chart/line-chart.module.ts","ng://@taiga-ui/addon-charts/components/line-chart/taiga-ui-addon-charts-components-line-chart.ts"],"sourcesContent":["import {\n ContentChildren,\n Directive,\n ElementRef,\n forwardRef,\n Inject,\n Input,\n NgZone,\n QueryList,\n Renderer2,\n} from '@angular/core';\nimport {ANIMATION_FRAME} from '@ng-web-apis/common';\nimport {\n EMPTY_QUERY,\n TuiContextWithImplicit,\n tuiDefaultProp,\n TuiDestroyService,\n tuiPure,\n tuiZonefree,\n} from '@taiga-ui/cdk';\nimport {HINT_HOVERED_CLASS, TuiPoint} from '@taiga-ui/core';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\nimport {Observable} from 'rxjs';\nimport {\n distinctUntilChanged,\n filter,\n map,\n startWith,\n takeUntil,\n throttleTime,\n} from 'rxjs/operators';\n\nimport {TuiLineChartComponent} from './line-chart.component';\n\n@Directive({\n selector: '[tuiLineChartHint]',\n providers: [TuiDestroyService],\n})\nexport class TuiLineChartHintDirective {\n @Input('tuiLineChartHint')\n @tuiDefaultProp()\n hint: PolymorpheusContent<TuiContextWithImplicit<ReadonlyArray<TuiPoint>>> = '';\n\n @ContentChildren(forwardRef(() => TuiLineChartComponent))\n private readonly charts: QueryList<TuiLineChartComponent> = EMPTY_QUERY;\n\n @ContentChildren(forwardRef(() => TuiLineChartComponent), {read: ElementRef})\n private readonly chartsRef: QueryList<ElementRef<HTMLElement>> = EMPTY_QUERY;\n\n constructor(\n @Inject(Renderer2) private readonly renderer: Renderer2,\n @Inject(TuiDestroyService) destroy$: TuiDestroyService,\n @Inject(ElementRef) {nativeElement}: ElementRef<HTMLElement>,\n @Inject(NgZone) ngZone: NgZone,\n @Inject(ANIMATION_FRAME) animationFrame$: Observable<number>,\n ) {\n animationFrame$\n .pipe(\n throttleTime(200),\n map(() => !!nativeElement.querySelector(`.${HINT_HOVERED_CLASS}`)),\n startWith(false),\n distinctUntilChanged(),\n filter(v => !v),\n tuiZonefree(ngZone),\n takeUntil(destroy$),\n )\n .subscribe(() => {\n this.charts.forEach(chart => chart.onHovered(NaN));\n });\n }\n\n // _chart is required by TuiLineDaysChartComponent that impersonates this directive\n getContext(\n index: number,\n _chart: TuiLineChartComponent,\n ): TuiContextWithImplicit<ReadonlyArray<TuiPoint>> {\n return this.computeContext(index, this.charts);\n }\n\n // _chart is required by TuiLineDaysChartComponent that impersonates this directive\n raise(index: number, _chart: TuiLineChartComponent) {\n const current = this.charts.map(chart => chart.value[index]);\n const sorted = [...current].sort((a, b) => a[1] - b[1]);\n\n this.charts.forEach(chart => chart.onHovered(index));\n this.chartsRef.forEach(({nativeElement}, index) =>\n this.renderer.setStyle(\n nativeElement,\n 'z-index',\n sorted.indexOf(current[index]),\n ),\n );\n }\n\n @tuiPure\n private computeContext(\n index: number,\n charts: QueryList<TuiLineChartComponent>,\n ): TuiContextWithImplicit<ReadonlyArray<TuiPoint>> {\n return {\n $implicit: charts.map(chart => chart.value[index]),\n };\n }\n}\n","import {Location} from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n HostListener,\n Inject,\n Input,\n NgZone,\n Optional,\n} from '@angular/core';\nimport {draw} from '@taiga-ui/addon-charts/utils';\nimport {\n inRange,\n TuiContextWithImplicit,\n tuiDefaultProp,\n TuiIdService,\n tuiPure,\n TuiStringHandler,\n tuiZoneOptimized,\n} from '@taiga-ui/cdk';\nimport {TuiPoint} from '@taiga-ui/core';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\nimport {Observable, Subject} from 'rxjs';\nimport {distinctUntilChanged} from 'rxjs/operators';\n\nimport {TuiLineChartHintDirective} from './line-chart-hint.directive';\n\nexport function smoothingAssertion(smoothingFactor: number): boolean {\n return inRange(smoothingFactor, 0, 100);\n}\n\nconst SMOOTHING_MESSAGE = 'smoothingFactor must be between 0 and 100';\n\n@Component({\n selector: 'tui-line-chart',\n templateUrl: './line-chart.template.html',\n styleUrls: ['./line-chart.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class TuiLineChartComponent {\n @Input('value')\n @tuiDefaultProp()\n set valueSetter(value: ReadonlyArray<TuiPoint>) {\n this.value = value.filter(item => !item.some(isNaN));\n }\n\n @Input()\n @tuiDefaultProp()\n x = 0;\n\n @Input()\n @tuiDefaultProp()\n y = 0;\n\n @Input()\n @tuiDefaultProp()\n width = 0;\n\n @Input()\n @tuiDefaultProp()\n height = 0;\n\n @Input()\n @tuiDefaultProp(smoothingAssertion, SMOOTHING_MESSAGE)\n smoothingFactor = 0;\n\n @Input()\n @tuiDefaultProp()\n hintContent: PolymorpheusContent<TuiContextWithImplicit<TuiPoint>> = '';\n\n @Input()\n @tuiDefaultProp()\n xStringify: TuiStringHandler<number> | null = null;\n\n @Input()\n @tuiDefaultProp()\n yStringify: TuiStringHandler<number> | null = null;\n\n @Input()\n @tuiDefaultProp()\n filled = false;\n\n @Input()\n @tuiDefaultProp()\n dots = false;\n\n value: ReadonlyArray<TuiPoint> = [];\n\n private readonly _hovered$ = new Subject<number>();\n\n private readonly autoIdString: string;\n\n constructor(\n @Inject(TuiIdService) idService: TuiIdService,\n @Inject(NgZone) private readonly ngZone: NgZone,\n @Inject(Location) private readonly locationRef: Location,\n @Optional()\n @Inject(TuiLineChartHintDirective)\n private readonly hintDirective: TuiLineChartHintDirective | null,\n ) {\n this.autoIdString = idService.generate();\n }\n\n @tuiPure\n get hovered$(): Observable<number> {\n return this._hovered$.pipe(distinctUntilChanged(), tuiZoneOptimized(this.ngZone));\n }\n\n get fillId(): string {\n return 'tui-line-chart-' + this.autoIdString;\n }\n\n get fill(): string {\n return this.filled\n ? `url(${this.locationRef.prepareExternalUrl(this.locationRef.path())}#${\n this.fillId\n })`\n : 'none';\n }\n\n get viewBox(): string {\n return `${this.x} ${this.y} ${this.width} ${this.height}`;\n }\n\n get d(): string {\n return this.getD(this.value, this.smoothingFactor);\n }\n\n get fillD(): string {\n return this.value.length\n ? this.d + `V ${this.y} H ${this.value[0][0]} V ${this.value[0][1]}`\n : this.d;\n }\n\n get computedHint():\n | PolymorpheusContent<TuiContextWithImplicit<TuiPoint>>\n | PolymorpheusContent<TuiContextWithImplicit<ReadonlyArray<TuiPoint>>> {\n return this.hintDirective ? this.hintDirective.hint : this.hintContent;\n }\n\n get isFocusable(): boolean {\n return !this.hintDirective && this.hasHints;\n }\n\n get hasHints(): boolean {\n return !!this.xStringify || !!this.yStringify || !!this.computedHint;\n }\n\n getX(index: number): number {\n if (this.isSinglePoint) {\n return this.value[0][0] / 2;\n }\n\n return index\n ? (this.value[index - 1][0] + this.value[index][0]) / 2\n : 2 * this.value[0][0] - this.getX(1);\n }\n\n getWidth(index: number): number {\n return (100 * this.computeWidth(index)) / this.width;\n }\n\n getHintId(index: number): string {\n return `${this.autoIdString}_${index}`;\n }\n\n getContentContext(\n $implicit: TuiPoint,\n ):\n | TuiContextWithImplicit<TuiPoint>\n | TuiContextWithImplicit<ReadonlyArray<TuiPoint>> {\n return this.hintDirective\n ? this.hintDirective.getContext(this.value.indexOf($implicit), this)\n : {$implicit};\n }\n\n getHovered(hovered: number): TuiPoint | null {\n // This checks for NaN and null too since async pipe returns null before first item\n return Number.isInteger(hovered) ? this.value[hovered] : null;\n }\n\n getBottom(y: number): number {\n return (100 * (y - this.y)) / this.height;\n }\n\n getLeft(x: number): number {\n return (100 * (x - this.x)) / this.width;\n }\n\n getOffset(x: number): number {\n return (100 * (this.value[x][0] - this.getX(x))) / this.computeWidth(x);\n }\n\n onMouseEnter(index: number) {\n if (this.hintDirective) {\n this.hintDirective.raise(index, this);\n } else {\n this.onHovered(index);\n }\n }\n\n onHovered(index: number) {\n this._hovered$.next(index);\n }\n\n @HostListener('mouseleave')\n onMouseLeave() {\n if (!this.hintDirective) {\n this.onHovered(NaN);\n }\n }\n\n private get isSinglePoint(): boolean {\n return this.value.length === 1;\n }\n\n @tuiPure\n private getD(value: ReadonlyArray<TuiPoint>, smoothingFactor: number): string {\n return value.reduce(\n (d, point, index) =>\n index ? `${d} ${draw(value, index, smoothingFactor)}` : `M ${point}`,\n '',\n );\n }\n\n private computeWidth(index: number): number {\n return index === this.value.length - 1\n ? 2 * (this.value[index][0] - this.getX(index))\n : this.getX(index + 1) - this.getX(index);\n }\n}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {TuiFocusableModule, TuiLetModule} from '@taiga-ui/cdk';\nimport {TuiDescribedByModule, TuiHintModule} from '@taiga-ui/core';\nimport {PolymorpheusModule} from '@tinkoff/ng-polymorpheus';\n\nimport {TuiLineChartComponent} from './line-chart.component';\nimport {TuiLineChartHintDirective} from './line-chart-hint.directive';\n\n@NgModule({\n imports: [\n CommonModule,\n PolymorpheusModule,\n TuiHintModule,\n TuiFocusableModule,\n TuiDescribedByModule,\n TuiLetModule,\n ],\n declarations: [TuiLineChartComponent, TuiLineChartHintDirective],\n exports: [TuiLineChartComponent, TuiLineChartHintDirective],\n})\nexport class TuiLineChartModule {}\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-line-chart.js","sources":["ng://@taiga-ui/addon-charts/components/line-chart/line-chart-hint.directive.ts","ng://@taiga-ui/addon-charts/components/line-chart/line-chart.component.ts","ng://@taiga-ui/addon-charts/components/line-chart/line-chart.module.ts","ng://@taiga-ui/addon-charts/components/line-chart/taiga-ui-addon-charts-components-line-chart.ts"],"sourcesContent":["import {\n ContentChildren,\n Directive,\n ElementRef,\n forwardRef,\n Inject,\n Input,\n NgZone,\n QueryList,\n Renderer2,\n} from '@angular/core';\nimport {ANIMATION_FRAME} from '@ng-web-apis/common';\nimport {\n EMPTY_QUERY,\n TuiContextWithImplicit,\n tuiDefaultProp,\n TuiDestroyService,\n tuiPure,\n tuiZonefree,\n} from '@taiga-ui/cdk';\nimport {HINT_HOVERED_CLASS, TuiPoint} from '@taiga-ui/core';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\nimport {Observable} from 'rxjs';\nimport {\n distinctUntilChanged,\n filter,\n map,\n startWith,\n takeUntil,\n throttleTime,\n} from 'rxjs/operators';\n\nimport {TuiLineChartComponent} from './line-chart.component';\n\n@Directive({\n selector: '[tuiLineChartHint]',\n providers: [TuiDestroyService],\n})\nexport class TuiLineChartHintDirective {\n @ContentChildren(forwardRef(() => TuiLineChartComponent))\n private readonly charts: QueryList<TuiLineChartComponent> = EMPTY_QUERY;\n\n @ContentChildren(forwardRef(() => TuiLineChartComponent), {read: ElementRef})\n private readonly chartsRef: QueryList<ElementRef<HTMLElement>> = EMPTY_QUERY;\n\n @Input('tuiLineChartHint')\n @tuiDefaultProp()\n hint: PolymorpheusContent<TuiContextWithImplicit<ReadonlyArray<TuiPoint>>> = '';\n\n constructor(\n @Inject(Renderer2) private readonly renderer: Renderer2,\n @Inject(TuiDestroyService) destroy$: TuiDestroyService,\n @Inject(ElementRef) {nativeElement}: ElementRef<HTMLElement>,\n @Inject(NgZone) ngZone: NgZone,\n @Inject(ANIMATION_FRAME) animationFrame$: Observable<number>,\n ) {\n animationFrame$\n .pipe(\n throttleTime(200),\n map(() => !!nativeElement.querySelector(`.${HINT_HOVERED_CLASS}`)),\n startWith(false),\n distinctUntilChanged(),\n filter(v => !v),\n tuiZonefree(ngZone),\n takeUntil(destroy$),\n )\n .subscribe(() => {\n this.charts.forEach(chart => chart.onHovered(NaN));\n });\n }\n\n // _chart is required by TuiLineDaysChartComponent that impersonates this directive\n getContext(\n index: number,\n _chart: TuiLineChartComponent,\n ): TuiContextWithImplicit<ReadonlyArray<TuiPoint>> {\n return this.computeContext(index, this.charts);\n }\n\n // _chart is required by TuiLineDaysChartComponent that impersonates this directive\n raise(index: number, _chart: TuiLineChartComponent) {\n const current = this.charts.map(chart => chart.value[index]);\n const sorted = [...current].sort((a, b) => a[1] - b[1]);\n\n this.charts.forEach(chart => chart.onHovered(index));\n this.chartsRef.forEach(({nativeElement}, index) =>\n this.renderer.setStyle(\n nativeElement,\n 'z-index',\n sorted.indexOf(current[index]),\n ),\n );\n }\n\n @tuiPure\n private computeContext(\n index: number,\n charts: QueryList<TuiLineChartComponent>,\n ): TuiContextWithImplicit<ReadonlyArray<TuiPoint>> {\n return {\n $implicit: charts.map(chart => chart.value[index]),\n };\n }\n}\n","import {Location} from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n HostListener,\n Inject,\n Input,\n NgZone,\n Optional,\n} from '@angular/core';\nimport {draw} from '@taiga-ui/addon-charts/utils';\nimport {\n inRange,\n TuiContextWithImplicit,\n tuiDefaultProp,\n TuiIdService,\n tuiPure,\n TuiStringHandler,\n tuiZoneOptimized,\n} from '@taiga-ui/cdk';\nimport {TuiPoint} from '@taiga-ui/core';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\nimport {Observable, Subject} from 'rxjs';\nimport {distinctUntilChanged} from 'rxjs/operators';\n\nimport {TuiLineChartHintDirective} from './line-chart-hint.directive';\n\nexport function smoothingAssertion(smoothingFactor: number): boolean {\n return inRange(smoothingFactor, 0, 100);\n}\n\nconst SMOOTHING_MESSAGE = 'smoothingFactor must be between 0 and 100';\n\n@Component({\n selector: 'tui-line-chart',\n templateUrl: './line-chart.template.html',\n styleUrls: ['./line-chart.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class TuiLineChartComponent {\n private readonly _hovered$ = new Subject<number>();\n\n private readonly autoIdString: string;\n\n @Input('value')\n @tuiDefaultProp()\n set valueSetter(value: ReadonlyArray<TuiPoint>) {\n this.value = value.filter(item => !item.some(isNaN));\n }\n\n @Input()\n @tuiDefaultProp()\n x = 0;\n\n @Input()\n @tuiDefaultProp()\n y = 0;\n\n @Input()\n @tuiDefaultProp()\n width = 0;\n\n @Input()\n @tuiDefaultProp()\n height = 0;\n\n @Input()\n @tuiDefaultProp(smoothingAssertion, SMOOTHING_MESSAGE)\n smoothingFactor = 0;\n\n @Input()\n @tuiDefaultProp()\n hintContent: PolymorpheusContent<TuiContextWithImplicit<TuiPoint>> = '';\n\n @Input()\n @tuiDefaultProp()\n xStringify: TuiStringHandler<number> | null = null;\n\n @Input()\n @tuiDefaultProp()\n yStringify: TuiStringHandler<number> | null = null;\n\n @Input()\n @tuiDefaultProp()\n filled = false;\n\n @Input()\n @tuiDefaultProp()\n dots = false;\n\n value: ReadonlyArray<TuiPoint> = [];\n\n constructor(\n @Inject(TuiIdService) idService: TuiIdService,\n @Inject(NgZone) private readonly ngZone: NgZone,\n @Inject(Location) private readonly locationRef: Location,\n @Optional()\n @Inject(TuiLineChartHintDirective)\n private readonly hintDirective: TuiLineChartHintDirective | null,\n ) {\n this.autoIdString = idService.generate();\n }\n\n @tuiPure\n get hovered$(): Observable<number> {\n return this._hovered$.pipe(distinctUntilChanged(), tuiZoneOptimized(this.ngZone));\n }\n\n get fillId(): string {\n return 'tui-line-chart-' + this.autoIdString;\n }\n\n get fill(): string {\n return this.filled\n ? `url(${this.locationRef.prepareExternalUrl(this.locationRef.path())}#${\n this.fillId\n })`\n : 'none';\n }\n\n get viewBox(): string {\n return `${this.x} ${this.y} ${this.width} ${this.height}`;\n }\n\n get d(): string {\n return this.getD(this.value, this.smoothingFactor);\n }\n\n get fillD(): string {\n return this.value.length\n ? this.d + `V ${this.y} H ${this.value[0][0]} V ${this.value[0][1]}`\n : this.d;\n }\n\n get computedHint():\n | PolymorpheusContent<TuiContextWithImplicit<TuiPoint>>\n | PolymorpheusContent<TuiContextWithImplicit<ReadonlyArray<TuiPoint>>> {\n return this.hintDirective ? this.hintDirective.hint : this.hintContent;\n }\n\n get isFocusable(): boolean {\n return !this.hintDirective && this.hasHints;\n }\n\n get hasHints(): boolean {\n return !!this.xStringify || !!this.yStringify || !!this.computedHint;\n }\n\n @HostListener('mouseleave')\n onMouseLeave() {\n if (!this.hintDirective) {\n this.onHovered(NaN);\n }\n }\n\n getX(index: number): number {\n if (this.isSinglePoint) {\n return this.value[0][0] / 2;\n }\n\n return index\n ? (this.value[index - 1][0] + this.value[index][0]) / 2\n : 2 * this.value[0][0] - this.getX(1);\n }\n\n getWidth(index: number): number {\n return (100 * this.computeWidth(index)) / this.width;\n }\n\n getHintId(index: number): string {\n return `${this.autoIdString}_${index}`;\n }\n\n getContentContext(\n $implicit: TuiPoint,\n ):\n | TuiContextWithImplicit<TuiPoint>\n | TuiContextWithImplicit<ReadonlyArray<TuiPoint>> {\n return this.hintDirective\n ? this.hintDirective.getContext(this.value.indexOf($implicit), this)\n : {$implicit};\n }\n\n getHovered(hovered: number): TuiPoint | null {\n // This checks for NaN and null too since async pipe returns null before first item\n return Number.isInteger(hovered) ? this.value[hovered] : null;\n }\n\n getBottom(y: number): number {\n return (100 * (y - this.y)) / this.height;\n }\n\n getLeft(x: number): number {\n return (100 * (x - this.x)) / this.width;\n }\n\n getOffset(x: number): number {\n return (100 * (this.value[x][0] - this.getX(x))) / this.computeWidth(x);\n }\n\n onMouseEnter(index: number) {\n if (this.hintDirective) {\n this.hintDirective.raise(index, this);\n } else {\n this.onHovered(index);\n }\n }\n\n onHovered(index: number) {\n this._hovered$.next(index);\n }\n\n private get isSinglePoint(): boolean {\n return this.value.length === 1;\n }\n\n @tuiPure\n private getD(value: ReadonlyArray<TuiPoint>, smoothingFactor: number): string {\n return value.reduce(\n (d, point, index) =>\n index ? `${d} ${draw(value, index, smoothingFactor)}` : `M ${point}`,\n '',\n );\n }\n\n private computeWidth(index: number): number {\n return index === this.value.length - 1\n ? 2 * (this.value[index][0] - this.getX(index))\n : this.getX(index + 1) - this.getX(index);\n }\n}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {TuiFocusableModule, TuiLetModule} from '@taiga-ui/cdk';\nimport {TuiDescribedByModule, TuiHintModule} from '@taiga-ui/core';\nimport {PolymorpheusModule} from '@tinkoff/ng-polymorpheus';\n\nimport {TuiLineChartComponent} from './line-chart.component';\nimport {TuiLineChartHintDirective} from './line-chart-hint.directive';\n\n@NgModule({\n imports: [\n CommonModule,\n PolymorpheusModule,\n TuiHintModule,\n TuiFocusableModule,\n TuiDescribedByModule,\n TuiLetModule,\n ],\n declarations: [TuiLineChartComponent, TuiLineChartHintDirective],\n exports: [TuiLineChartComponent, TuiLineChartHintDirective],\n})\nexport class TuiLineChartModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { __read, __spread, __decorate, __param } from 'tslib';
|
|
2
|
-
import { Inject, ElementRef, NgZone,
|
|
2
|
+
import { Inject, ElementRef, NgZone, ContentChildren, forwardRef, Input, Directive, Optional, ViewChildren, HostBinding, Component, ChangeDetectionStrategy, NgModule } from '@angular/core';
|
|
3
3
|
import { TuiLineChartComponent, TuiLineChartHintDirective, TuiLineChartModule } from '@taiga-ui/addon-charts/components/line-chart';
|
|
4
4
|
import { EMPTY_QUERY, tuiZonefree, TuiDestroyService, tuiDefaultProp, tuiPure, TuiDay, EMPTY_ARRAY, TuiMonth, isPresent } from '@taiga-ui/cdk';
|
|
5
5
|
import { ANIMATION_FRAME } from '@ng-web-apis/common';
|
|
@@ -13,8 +13,8 @@ var TuiLineDaysChartHintDirective = /** @class */ (function () {
|
|
|
13
13
|
function TuiLineDaysChartHintDirective(destroy$, _a, ngZone, animationFrame$) {
|
|
14
14
|
var _this = this;
|
|
15
15
|
var nativeElement = _a.nativeElement;
|
|
16
|
-
this.hint = '';
|
|
17
16
|
this.charts = EMPTY_QUERY;
|
|
17
|
+
this.hint = '';
|
|
18
18
|
animationFrame$
|
|
19
19
|
.pipe(throttleTime(200), map(function () { return !!nativeElement.querySelector("." + HINT_HOVERED_CLASS); }), startWith(false), distinctUntilChanged(), tuiZonefree(ngZone), filter(function (v) { return !v; }), takeUntil(destroy$))
|
|
20
20
|
.subscribe(function () {
|
|
@@ -54,13 +54,13 @@ var TuiLineDaysChartHintDirective = /** @class */ (function () {
|
|
|
54
54
|
{ type: NgZone, decorators: [{ type: Inject, args: [NgZone,] }] },
|
|
55
55
|
{ type: Observable, decorators: [{ type: Inject, args: [ANIMATION_FRAME,] }] }
|
|
56
56
|
]; };
|
|
57
|
+
__decorate([
|
|
58
|
+
ContentChildren(forwardRef(function () { return TuiLineDaysChartComponent; }))
|
|
59
|
+
], TuiLineDaysChartHintDirective.prototype, "charts", void 0);
|
|
57
60
|
__decorate([
|
|
58
61
|
Input('tuiLineChartHint'),
|
|
59
62
|
tuiDefaultProp()
|
|
60
63
|
], TuiLineDaysChartHintDirective.prototype, "hint", void 0);
|
|
61
|
-
__decorate([
|
|
62
|
-
ContentChildren(forwardRef(function () { return TuiLineDaysChartComponent; }))
|
|
63
|
-
], TuiLineDaysChartHintDirective.prototype, "charts", void 0);
|
|
64
64
|
__decorate([
|
|
65
65
|
tuiPure
|
|
66
66
|
], TuiLineDaysChartHintDirective.prototype, "computeContext", null);
|
|
@@ -88,6 +88,7 @@ var TuiLineDaysChartComponent = /** @class */ (function () {
|
|
|
88
88
|
function TuiLineDaysChartComponent(hintDirective) {
|
|
89
89
|
var _this = this;
|
|
90
90
|
this.hintDirective = hintDirective;
|
|
91
|
+
this.charts = EMPTY_QUERY;
|
|
91
92
|
this.y = 0;
|
|
92
93
|
this.height = 0;
|
|
93
94
|
this.smoothingFactor = 0;
|
|
@@ -95,12 +96,11 @@ var TuiLineDaysChartComponent = /** @class */ (function () {
|
|
|
95
96
|
this.xStringify = null;
|
|
96
97
|
this.yStringify = null;
|
|
97
98
|
this.dots = false;
|
|
98
|
-
this.value = [];
|
|
99
99
|
this.zIndex = 0;
|
|
100
|
+
this.value = [];
|
|
100
101
|
this.daysStringify = function (index) {
|
|
101
102
|
return _this.xStringify ? _this.xStringify(_this.getMonth(index)) : '';
|
|
102
103
|
};
|
|
103
|
-
this.charts = EMPTY_QUERY;
|
|
104
104
|
}
|
|
105
105
|
TuiLineDaysChartComponent_1 = TuiLineDaysChartComponent;
|
|
106
106
|
Object.defineProperty(TuiLineDaysChartComponent.prototype, "valueSetter", {
|
|
@@ -143,6 +143,11 @@ var TuiLineDaysChartComponent = /** @class */ (function () {
|
|
|
143
143
|
enumerable: true,
|
|
144
144
|
configurable: true
|
|
145
145
|
});
|
|
146
|
+
TuiLineDaysChartComponent.prototype.getHintContext = function (x, value) {
|
|
147
|
+
return {
|
|
148
|
+
$implicit: value[x - value[0][0].day + 1],
|
|
149
|
+
};
|
|
150
|
+
};
|
|
146
151
|
TuiLineDaysChartComponent.prototype.getX = function (index) {
|
|
147
152
|
var current = this.getMonth(index);
|
|
148
153
|
var months = TuiMonth.lengthBetween(this.value[0][0], current);
|
|
@@ -178,11 +183,6 @@ var TuiLineDaysChartComponent = /** @class */ (function () {
|
|
|
178
183
|
TuiLineDaysChartComponent.prototype.getWidth = function (index) {
|
|
179
184
|
return this.getMonth(index).daysCount * this.months.length;
|
|
180
185
|
};
|
|
181
|
-
TuiLineDaysChartComponent.prototype.getHintContext = function (x, value) {
|
|
182
|
-
return {
|
|
183
|
-
$implicit: value[x - value[0][0].day + 1],
|
|
184
|
-
};
|
|
185
|
-
};
|
|
186
186
|
TuiLineDaysChartComponent.prototype.getContext = function (index, _a) {
|
|
187
187
|
var value = _a.value;
|
|
188
188
|
var x = value[index][0];
|
|
@@ -190,9 +190,6 @@ var TuiLineDaysChartComponent = /** @class */ (function () {
|
|
|
190
190
|
? this.hintDirective.getContext(this.getMonth(x))
|
|
191
191
|
: this.getHintContext(x, this.value);
|
|
192
192
|
};
|
|
193
|
-
TuiLineDaysChartComponent.prototype.getMonth = function (index) {
|
|
194
|
-
return this.value[index - this.value[0][0].day + 1][0];
|
|
195
|
-
};
|
|
196
193
|
TuiLineDaysChartComponent.prototype.breakMonths = function (value) {
|
|
197
194
|
var offset = value[0][0].day - 1;
|
|
198
195
|
return Array.from({ length: TuiMonth.lengthBetween(value[0][0], value[value.length - 1][0]) + 1 }, function (_, i) { return i + value[0][0].month + value[0][0].year * 12; })
|
|
@@ -210,10 +207,16 @@ var TuiLineDaysChartComponent = /** @class */ (function () {
|
|
|
210
207
|
: __spread(month, [array[index + 1].find(function (day) { return !isNaN(day[1]); }) || DUMMY]);
|
|
211
208
|
});
|
|
212
209
|
};
|
|
210
|
+
TuiLineDaysChartComponent.prototype.getMonth = function (index) {
|
|
211
|
+
return this.value[index - this.value[0][0].day + 1][0];
|
|
212
|
+
};
|
|
213
213
|
var TuiLineDaysChartComponent_1;
|
|
214
214
|
TuiLineDaysChartComponent.ctorParameters = function () { return [
|
|
215
215
|
{ type: TuiLineDaysChartHintDirective, decorators: [{ type: Optional }, { type: Inject, args: [TuiLineDaysChartHintDirective,] }] }
|
|
216
216
|
]; };
|
|
217
|
+
__decorate([
|
|
218
|
+
ViewChildren(TuiLineChartComponent)
|
|
219
|
+
], TuiLineDaysChartComponent.prototype, "charts", void 0);
|
|
217
220
|
__decorate([
|
|
218
221
|
Input('value'),
|
|
219
222
|
tuiDefaultProp()
|
|
@@ -249,9 +252,6 @@ var TuiLineDaysChartComponent = /** @class */ (function () {
|
|
|
249
252
|
__decorate([
|
|
250
253
|
HostBinding('style.zIndex')
|
|
251
254
|
], TuiLineDaysChartComponent.prototype, "zIndex", void 0);
|
|
252
|
-
__decorate([
|
|
253
|
-
ViewChildren(TuiLineChartComponent)
|
|
254
|
-
], TuiLineDaysChartComponent.prototype, "charts", void 0);
|
|
255
255
|
__decorate([
|
|
256
256
|
tuiPure
|
|
257
257
|
], TuiLineDaysChartComponent.prototype, "getHintContext", null);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"taiga-ui-addon-charts-components-line-days-chart.js","sources":["ng://@taiga-ui/addon-charts/components/line-days-chart/line-days-chart-hint.directive.ts","ng://@taiga-ui/addon-charts/components/line-days-chart/line-days-chart.component.ts","ng://@taiga-ui/addon-charts/components/line-days-chart/line-days-chart.module.ts","ng://@taiga-ui/addon-charts/components/line-days-chart/taiga-ui-addon-charts-components-line-days-chart.ts"],"sourcesContent":["import {\n ContentChildren,\n Directive,\n ElementRef,\n forwardRef,\n Inject,\n Input,\n NgZone,\n QueryList,\n} from '@angular/core';\nimport {ANIMATION_FRAME} from '@ng-web-apis/common';\nimport {\n EMPTY_QUERY,\n TuiContextWithImplicit,\n TuiDay,\n tuiDefaultProp,\n TuiDestroyService,\n tuiPure,\n tuiZonefree,\n} from '@taiga-ui/cdk';\nimport {HINT_HOVERED_CLASS, TuiPoint} from '@taiga-ui/core';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\nimport {Observable} from 'rxjs';\nimport {\n distinctUntilChanged,\n filter,\n map,\n startWith,\n takeUntil,\n throttleTime,\n} from 'rxjs/operators';\n\nimport {TuiLineDaysChartComponent} from './line-days-chart.component';\n\n@Directive({\n selector: '[tuiLineChartHint]',\n providers: [TuiDestroyService],\n})\nexport class TuiLineDaysChartHintDirective {\n @Input('tuiLineChartHint')\n @tuiDefaultProp()\n hint: PolymorpheusContent<TuiContextWithImplicit<ReadonlyArray<TuiPoint>>> = '';\n\n @ContentChildren(forwardRef(() => TuiLineDaysChartComponent))\n private readonly charts: QueryList<TuiLineDaysChartComponent> = EMPTY_QUERY;\n\n constructor(\n @Inject(TuiDestroyService) destroy$: TuiDestroyService,\n @Inject(ElementRef) {nativeElement}: ElementRef<HTMLElement>,\n @Inject(NgZone) ngZone: NgZone,\n @Inject(ANIMATION_FRAME) animationFrame$: Observable<number>,\n ) {\n animationFrame$\n .pipe(\n throttleTime(200),\n map(() => !!nativeElement.querySelector(`.${HINT_HOVERED_CLASS}`)),\n startWith(false),\n distinctUntilChanged(),\n tuiZonefree(ngZone),\n filter(v => !v),\n takeUntil(destroy$),\n )\n .subscribe(() => {\n this.charts.forEach(chart => chart.onHovered(null));\n });\n }\n\n getContext(day: TuiDay): TuiContextWithImplicit<ReadonlyArray<[TuiDay, number]>> {\n return this.computeContext(day, this.charts);\n }\n\n raise(day: TuiDay) {\n const current = this.charts\n .map(({value}) => find(value, day))\n .filter(([_, value]) => !isNaN(value));\n const sorted = [...current].sort((a, b) => a[1] - b[1]);\n\n this.charts.forEach((chart, index) => {\n chart.onHovered(day);\n chart.zIndex = Math.max(sorted.indexOf(current[index]), 0);\n });\n }\n\n @tuiPure\n private computeContext(\n day: TuiDay,\n charts: QueryList<TuiLineDaysChartComponent>,\n ): TuiContextWithImplicit<ReadonlyArray<[TuiDay, number]>> {\n return {\n $implicit: charts.map(({value}) => find(value, day)),\n };\n }\n}\n\nfunction find(value: ReadonlyArray<[TuiDay, number]>, current: TuiDay): [TuiDay, number] {\n return value.find(([day]) => day.daySame(current)) || [current, NaN];\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n forwardRef,\n HostBinding,\n Inject,\n Input,\n Optional,\n QueryList,\n ViewChildren,\n} from '@angular/core';\nimport {\n TuiLineChartComponent,\n TuiLineChartHintDirective,\n} from '@taiga-ui/addon-charts/components/line-chart';\nimport {\n EMPTY_ARRAY,\n EMPTY_QUERY,\n isPresent,\n TuiContextWithImplicit,\n TuiDay,\n tuiDefaultProp,\n TuiMonth,\n tuiPure,\n TuiStringHandler,\n} from '@taiga-ui/cdk';\nimport {TuiPoint} from '@taiga-ui/core';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\n\nimport {TuiLineDaysChartHintDirective} from './line-days-chart-hint.directive';\n\nconst DUMMY: TuiPoint = [NaN, NaN];\n\n@Component({\n selector: 'tui-line-days-chart',\n templateUrl: './line-days-chart.template.html',\n styleUrls: ['./line-days-chart.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n {\n provide: TuiLineChartHintDirective,\n useExisting: forwardRef(() => TuiLineDaysChartComponent),\n },\n ],\n})\nexport class TuiLineDaysChartComponent {\n @Input('value')\n @tuiDefaultProp()\n set valueSetter(value: ReadonlyArray<[TuiDay, number]>) {\n if (!value.length) {\n this.value = [];\n\n return;\n }\n\n const start = value[0][0];\n const mutable = [...value];\n const length = TuiDay.lengthBetween(start, value[value.length - 1][0]) + 1;\n\n this.value = Array.from({length}, (_, day) => {\n const currentDay = start.append({day});\n const shifted = currentDay.daySame(mutable[0][0]) ? mutable.shift() : null;\n const currentValue = shifted ? shifted[1] : NaN;\n\n return [currentDay, currentValue] as [TuiDay, number];\n });\n }\n\n @Input()\n @tuiDefaultProp()\n y = 0;\n\n @Input()\n @tuiDefaultProp()\n height = 0;\n\n @Input()\n @tuiDefaultProp()\n smoothingFactor = 0;\n\n @Input()\n @tuiDefaultProp()\n hintContent: PolymorpheusContent<TuiContextWithImplicit<[TuiDay, number]>> = '';\n\n @Input()\n @tuiDefaultProp()\n xStringify: TuiStringHandler<TuiDay> | null = null;\n\n @Input()\n @tuiDefaultProp()\n yStringify: TuiStringHandler<number> | null = null;\n\n @Input()\n @tuiDefaultProp()\n dots = false;\n\n value: ReadonlyArray<[TuiDay, number]> = [];\n\n @HostBinding('style.zIndex')\n zIndex = 0;\n\n readonly daysStringify: TuiStringHandler<number> = index =>\n this.xStringify ? this.xStringify(this.getMonth(index)) : '';\n\n @ViewChildren(TuiLineChartComponent)\n private readonly charts: QueryList<TuiLineChartComponent> = EMPTY_QUERY;\n\n constructor(\n @Optional()\n @Inject(TuiLineDaysChartHintDirective)\n private readonly hintDirective: TuiLineDaysChartHintDirective | null,\n ) {}\n\n get months(): ReadonlyArray<ReadonlyArray<TuiPoint>> {\n return this.value.length ? this.breakMonths(this.value) : EMPTY_ARRAY;\n }\n\n get firstWidth(): number {\n return this.months.length * this.value[0][0].daysCount;\n }\n\n get hint(): PolymorpheusContent<TuiContextWithImplicit<any>> {\n return this.hintDirective ? this.hintDirective.hint : this.hintContent;\n }\n\n getX(index: number): number {\n const current = this.getMonth(index);\n const months = TuiMonth.lengthBetween(this.value[0][0], current);\n const offset = months * current.daysCount;\n\n return index - offset;\n }\n\n onHovered(day: TuiDay | null) {\n if (!day) {\n this.charts.forEach(chart => chart.onHovered(NaN));\n\n return;\n }\n\n const index = TuiMonth.lengthBetween(this.value[0][0], day);\n const x = TuiDay.lengthBetween(this.value[0][0], day) + this.value[0][0].day - 1;\n const array = this.charts.toArray();\n const current = array[index];\n const {value} = current;\n\n array.forEach(chart => {\n if (chart === current) {\n current.onHovered(value.findIndex(point => point[0] === x));\n } else {\n chart.onHovered(NaN);\n }\n });\n }\n\n raise(index: number, {value}: TuiLineChartComponent) {\n const x = value[index][0];\n\n if (this.hintDirective) {\n this.hintDirective.raise(this.getMonth(x));\n }\n }\n\n getWidth(index: number): number {\n return this.getMonth(index).daysCount * this.months.length;\n }\n\n @tuiPure\n getHintContext(\n x: number,\n value: ReadonlyArray<[TuiDay, number]>,\n ): TuiContextWithImplicit<[TuiDay, number]> {\n return {\n $implicit: value[x - value[0][0].day + 1],\n };\n }\n\n getContext(\n index: number,\n {value}: TuiLineChartComponent,\n ): TuiContextWithImplicit<any> {\n const x = value[index][0];\n\n return this.hintDirective\n ? this.hintDirective.getContext(this.getMonth(x))\n : this.getHintContext(x, this.value);\n }\n\n private getMonth(index: number): TuiDay {\n return this.value[index - this.value[0][0].day + 1][0];\n }\n\n @tuiPure\n private breakMonths(\n value: ReadonlyArray<[TuiDay, number]>,\n ): ReadonlyArray<ReadonlyArray<TuiPoint>> {\n const offset = value[0][0].day - 1;\n\n return Array.from(\n {length: TuiMonth.lengthBetween(value[0][0], value[value.length - 1][0]) + 1},\n (_, i) => i + value[0][0].month + value[0][0].year * 12,\n )\n .map(absoluteMonth =>\n value\n .map<TuiPoint | null>(([{month, year}, y], index) =>\n month + year * 12 === absoluteMonth ? [index + offset, y] : null,\n )\n .filter(isPresent),\n )\n .map((month, index, array) =>\n index === array.length - 1\n ? month\n : [...month, array[index + 1].find(day => !isNaN(day[1])) || DUMMY],\n );\n }\n}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {TuiLineChartModule} from '@taiga-ui/addon-charts/components/line-chart';\nimport {PolymorpheusModule} from '@tinkoff/ng-polymorpheus';\n\nimport {TuiLineDaysChartComponent} from './line-days-chart.component';\nimport {TuiLineDaysChartHintDirective} from './line-days-chart-hint.directive';\n\n@NgModule({\n imports: [CommonModule, TuiLineChartModule, PolymorpheusModule],\n declarations: [TuiLineDaysChartComponent, TuiLineDaysChartHintDirective],\n exports: [TuiLineDaysChartComponent, TuiLineDaysChartHintDirective],\n})\nexport class TuiLineDaysChartModule {}\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-line-days-chart.js","sources":["ng://@taiga-ui/addon-charts/components/line-days-chart/line-days-chart-hint.directive.ts","ng://@taiga-ui/addon-charts/components/line-days-chart/line-days-chart.component.ts","ng://@taiga-ui/addon-charts/components/line-days-chart/line-days-chart.module.ts","ng://@taiga-ui/addon-charts/components/line-days-chart/taiga-ui-addon-charts-components-line-days-chart.ts"],"sourcesContent":["import {\n ContentChildren,\n Directive,\n ElementRef,\n forwardRef,\n Inject,\n Input,\n NgZone,\n QueryList,\n} from '@angular/core';\nimport {ANIMATION_FRAME} from '@ng-web-apis/common';\nimport {\n EMPTY_QUERY,\n TuiContextWithImplicit,\n TuiDay,\n tuiDefaultProp,\n TuiDestroyService,\n tuiPure,\n tuiZonefree,\n} from '@taiga-ui/cdk';\nimport {HINT_HOVERED_CLASS, TuiPoint} from '@taiga-ui/core';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\nimport {Observable} from 'rxjs';\nimport {\n distinctUntilChanged,\n filter,\n map,\n startWith,\n takeUntil,\n throttleTime,\n} from 'rxjs/operators';\n\nimport {TuiLineDaysChartComponent} from './line-days-chart.component';\n\n@Directive({\n selector: '[tuiLineChartHint]',\n providers: [TuiDestroyService],\n})\nexport class TuiLineDaysChartHintDirective {\n @ContentChildren(forwardRef(() => TuiLineDaysChartComponent))\n private readonly charts: QueryList<TuiLineDaysChartComponent> = EMPTY_QUERY;\n\n @Input('tuiLineChartHint')\n @tuiDefaultProp()\n hint: PolymorpheusContent<TuiContextWithImplicit<ReadonlyArray<TuiPoint>>> = '';\n\n constructor(\n @Inject(TuiDestroyService) destroy$: TuiDestroyService,\n @Inject(ElementRef) {nativeElement}: ElementRef<HTMLElement>,\n @Inject(NgZone) ngZone: NgZone,\n @Inject(ANIMATION_FRAME) animationFrame$: Observable<number>,\n ) {\n animationFrame$\n .pipe(\n throttleTime(200),\n map(() => !!nativeElement.querySelector(`.${HINT_HOVERED_CLASS}`)),\n startWith(false),\n distinctUntilChanged(),\n tuiZonefree(ngZone),\n filter(v => !v),\n takeUntil(destroy$),\n )\n .subscribe(() => {\n this.charts.forEach(chart => chart.onHovered(null));\n });\n }\n\n getContext(day: TuiDay): TuiContextWithImplicit<ReadonlyArray<[TuiDay, number]>> {\n return this.computeContext(day, this.charts);\n }\n\n raise(day: TuiDay) {\n const current = this.charts\n .map(({value}) => find(value, day))\n .filter(([_, value]) => !isNaN(value));\n const sorted = [...current].sort((a, b) => a[1] - b[1]);\n\n this.charts.forEach((chart, index) => {\n chart.onHovered(day);\n chart.zIndex = Math.max(sorted.indexOf(current[index]), 0);\n });\n }\n\n @tuiPure\n private computeContext(\n day: TuiDay,\n charts: QueryList<TuiLineDaysChartComponent>,\n ): TuiContextWithImplicit<ReadonlyArray<[TuiDay, number]>> {\n return {\n $implicit: charts.map(({value}) => find(value, day)),\n };\n }\n}\n\nfunction find(value: ReadonlyArray<[TuiDay, number]>, current: TuiDay): [TuiDay, number] {\n return value.find(([day]) => day.daySame(current)) || [current, NaN];\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n forwardRef,\n HostBinding,\n Inject,\n Input,\n Optional,\n QueryList,\n ViewChildren,\n} from '@angular/core';\nimport {\n TuiLineChartComponent,\n TuiLineChartHintDirective,\n} from '@taiga-ui/addon-charts/components/line-chart';\nimport {\n EMPTY_ARRAY,\n EMPTY_QUERY,\n isPresent,\n TuiContextWithImplicit,\n TuiDay,\n tuiDefaultProp,\n TuiMonth,\n tuiPure,\n TuiStringHandler,\n} from '@taiga-ui/cdk';\nimport {TuiPoint} from '@taiga-ui/core';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\n\nimport {TuiLineDaysChartHintDirective} from './line-days-chart-hint.directive';\n\nconst DUMMY: TuiPoint = [NaN, NaN];\n\n@Component({\n selector: 'tui-line-days-chart',\n templateUrl: './line-days-chart.template.html',\n styleUrls: ['./line-days-chart.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n {\n provide: TuiLineChartHintDirective,\n useExisting: forwardRef(() => TuiLineDaysChartComponent),\n },\n ],\n})\nexport class TuiLineDaysChartComponent {\n @ViewChildren(TuiLineChartComponent)\n private readonly charts: QueryList<TuiLineChartComponent> = EMPTY_QUERY;\n\n @Input('value')\n @tuiDefaultProp()\n set valueSetter(value: ReadonlyArray<[TuiDay, number]>) {\n if (!value.length) {\n this.value = [];\n\n return;\n }\n\n const start = value[0][0];\n const mutable = [...value];\n const length = TuiDay.lengthBetween(start, value[value.length - 1][0]) + 1;\n\n this.value = Array.from({length}, (_, day) => {\n const currentDay = start.append({day});\n const shifted = currentDay.daySame(mutable[0][0]) ? mutable.shift() : null;\n const currentValue = shifted ? shifted[1] : NaN;\n\n return [currentDay, currentValue] as [TuiDay, number];\n });\n }\n\n @Input()\n @tuiDefaultProp()\n y = 0;\n\n @Input()\n @tuiDefaultProp()\n height = 0;\n\n @Input()\n @tuiDefaultProp()\n smoothingFactor = 0;\n\n @Input()\n @tuiDefaultProp()\n hintContent: PolymorpheusContent<TuiContextWithImplicit<[TuiDay, number]>> = '';\n\n @Input()\n @tuiDefaultProp()\n xStringify: TuiStringHandler<TuiDay> | null = null;\n\n @Input()\n @tuiDefaultProp()\n yStringify: TuiStringHandler<number> | null = null;\n\n @Input()\n @tuiDefaultProp()\n dots = false;\n\n @HostBinding('style.zIndex')\n zIndex = 0;\n\n value: ReadonlyArray<[TuiDay, number]> = [];\n\n constructor(\n @Optional()\n @Inject(TuiLineDaysChartHintDirective)\n private readonly hintDirective: TuiLineDaysChartHintDirective | null,\n ) {}\n\n get months(): ReadonlyArray<ReadonlyArray<TuiPoint>> {\n return this.value.length ? this.breakMonths(this.value) : EMPTY_ARRAY;\n }\n\n get firstWidth(): number {\n return this.months.length * this.value[0][0].daysCount;\n }\n\n get hint(): PolymorpheusContent<TuiContextWithImplicit<any>> {\n return this.hintDirective ? this.hintDirective.hint : this.hintContent;\n }\n\n @tuiPure\n getHintContext(\n x: number,\n value: ReadonlyArray<[TuiDay, number]>,\n ): TuiContextWithImplicit<[TuiDay, number]> {\n return {\n $implicit: value[x - value[0][0].day + 1],\n };\n }\n\n readonly daysStringify: TuiStringHandler<number> = index =>\n this.xStringify ? this.xStringify(this.getMonth(index)) : '';\n\n getX(index: number): number {\n const current = this.getMonth(index);\n const months = TuiMonth.lengthBetween(this.value[0][0], current);\n const offset = months * current.daysCount;\n\n return index - offset;\n }\n\n onHovered(day: TuiDay | null) {\n if (!day) {\n this.charts.forEach(chart => chart.onHovered(NaN));\n\n return;\n }\n\n const index = TuiMonth.lengthBetween(this.value[0][0], day);\n const x = TuiDay.lengthBetween(this.value[0][0], day) + this.value[0][0].day - 1;\n const array = this.charts.toArray();\n const current = array[index];\n const {value} = current;\n\n array.forEach(chart => {\n if (chart === current) {\n current.onHovered(value.findIndex(point => point[0] === x));\n } else {\n chart.onHovered(NaN);\n }\n });\n }\n\n raise(index: number, {value}: TuiLineChartComponent) {\n const x = value[index][0];\n\n if (this.hintDirective) {\n this.hintDirective.raise(this.getMonth(x));\n }\n }\n\n getWidth(index: number): number {\n return this.getMonth(index).daysCount * this.months.length;\n }\n\n getContext(\n index: number,\n {value}: TuiLineChartComponent,\n ): TuiContextWithImplicit<any> {\n const x = value[index][0];\n\n return this.hintDirective\n ? this.hintDirective.getContext(this.getMonth(x))\n : this.getHintContext(x, this.value);\n }\n\n @tuiPure\n private breakMonths(\n value: ReadonlyArray<[TuiDay, number]>,\n ): ReadonlyArray<ReadonlyArray<TuiPoint>> {\n const offset = value[0][0].day - 1;\n\n return Array.from(\n {length: TuiMonth.lengthBetween(value[0][0], value[value.length - 1][0]) + 1},\n (_, i) => i + value[0][0].month + value[0][0].year * 12,\n )\n .map(absoluteMonth =>\n value\n .map<TuiPoint | null>(([{month, year}, y], index) =>\n month + year * 12 === absoluteMonth ? [index + offset, y] : null,\n )\n .filter(isPresent),\n )\n .map((month, index, array) =>\n index === array.length - 1\n ? month\n : [...month, array[index + 1].find(day => !isNaN(day[1])) || DUMMY],\n );\n }\n\n private getMonth(index: number): TuiDay {\n return this.value[index - this.value[0][0].day + 1][0];\n }\n}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {TuiLineChartModule} from '@taiga-ui/addon-charts/components/line-chart';\nimport {PolymorpheusModule} from '@tinkoff/ng-polymorpheus';\n\nimport {TuiLineDaysChartComponent} from './line-days-chart.component';\nimport {TuiLineDaysChartHintDirective} from './line-days-chart-hint.directive';\n\n@NgModule({\n imports: [CommonModule, TuiLineChartModule, PolymorpheusModule],\n declarations: [TuiLineDaysChartComponent, TuiLineDaysChartHintDirective],\n exports: [TuiLineDaysChartComponent, TuiLineDaysChartHintDirective],\n})\nexport class TuiLineDaysChartModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;;;;;IA8CI,uCAC+B,QAA2B,EAClC,EAAwC,EAC5C,MAAc,EACL,eAAmC;QAJhE,iBAmBC;YAjBwB,gCAAa;QARrB,WAAM,GAAyC,WAAW,CAAC;QAI5E,SAAI,GAAyE,EAAE,CAAC;QAQ5E,eAAe;aACV,IAAI,CACD,YAAY,CAAC,GAAG,CAAC,EACjB,GAAG,CAAC,cAAM,OAAA,CAAC,CAAC,aAAa,CAAC,aAAa,CAAC,MAAI,kBAAoB,CAAC,GAAA,CAAC,EAClE,SAAS,CAAC,KAAK,CAAC,EAChB,oBAAoB,EAAE,EACtB,WAAW,CAAC,MAAM,CAAC,EACnB,MAAM,CAAC,UAAA,CAAC,IAAI,OAAA,CAAC,CAAC,GAAA,CAAC,EACf,SAAS,CAAC,QAAQ,CAAC,CACtB;aACA,SAAS,CAAC;YACP,KAAI,CAAC,MAAM,CAAC,OAAO,CAAC,UAAA,KAAK,IAAI,OAAA,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,GAAA,CAAC,CAAC;SACvD,CAAC,CAAC;KACV;IAED,kDAAU,GAAV,UAAW,GAAW;QAClB,OAAO,IAAI,CAAC,cAAc,CAAC,GAAG,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;KAChD;IAED,6CAAK,GAAL,UAAM,GAAW;QACb,IAAM,OAAO,GAAG,IAAI,CAAC,MAAM;aACtB,GAAG,CAAC,UAAC,EAAO;gBAAN,gBAAK;YAAM,OAAA,IAAI,CAAC,KAAK,EAAE,GAAG,CAAC;SAAA,CAAC;aAClC,MAAM,CAAC,UAAC,EAAU;gBAAV,kBAAU,EAAT,SAAC,EAAE,aAAK;YAAM,OAAA,CAAC,KAAK,CAAC,KAAK,CAAC;SAAA,CAAC,CAAC;QAC3C,IAAM,MAAM,GAAG,SAAI,OAAO,EAAE,IAAI,CAAC,UAAC,CAAC,EAAE,CAAC,IAAK,OAAA,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAA,CAAC,CAAC;QAExD,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,UAAC,KAAK,EAAE,KAAK;YAC7B,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;YACrB,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;SAC9D,CAAC,CAAC;KACN;IAGO,sDAAc,GAAtB,UACI,GAAW,EACX,MAA4C;QAE5C,OAAO;YACH,SAAS,EAAE,MAAM,CAAC,GAAG,CAAC,UAAC,EAAO;oBAAN,gBAAK;gBAAM,OAAA,IAAI,CAAC,KAAK,EAAE,GAAG,CAAC;aAAA,CAAC;SACvD,CAAC;KACL;;gBA5CwC,iBAAiB,uBAArD,MAAM,SAAC,iBAAiB;gBACY,UAAU,uBAA9C,MAAM,SAAC,UAAU;gBACM,MAAM,uBAA7B,MAAM,SAAC,MAAM;gBAC4B,UAAU,uBAAnD,MAAM,SAAC,eAAe;;IAV3B;QADC,eAAe,CAAC,UAAU,CAAC,cAAM,OAAA,yBAAyB,GAAA,CAAC,CAAC;iEACe;IAI5E;QAFC,KAAK,CAAC,kBAAkB,CAAC;QACzB,cAAc,EAAE;+DAC+D;IAwChF;QADC,OAAO;uEAQP;IArDQ,6BAA6B;QAJzC,SAAS,CAAC;YACP,QAAQ,EAAE,oBAAoB;YAC9B,SAAS,EAAE,CAAC,iBAAiB,CAAC;SACjC,CAAC;QAUO,WAAA,MAAM,CAAC,iBAAiB,CAAC,CAAA;QACzB,WAAA,MAAM,CAAC,UAAU,CAAC,CAAA;QAClB,WAAA,MAAM,CAAC,MAAM,CAAC,CAAA;QACd,WAAA,MAAM,CAAC,eAAe,CAAC,CAAA;OAZnB,6BAA6B,CAsDzC;IAAD,oCAAC;CAtDD,IAsDC;AAED,SAAS,IAAI,CAAC,KAAsC,EAAE,OAAe;IACjE,OAAO,KAAK,CAAC,IAAI,CAAC,UAAC,EAAK;YAAL,kBAAK,EAAJ,WAAG;QAAM,OAAA,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC;KAAA,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;AACzE;;ACjEA,IAAM,KAAK,GAAa,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;;IAyE/B,mCAGqB,aAAmD;QAHxE,iBAII;QADiB,kBAAa,GAAb,aAAa,CAAsC;QA5DvD,WAAM,GAAqC,WAAW,CAAC;QA0BxE,MAAC,GAAG,CAAC,CAAC;QAIN,WAAM,GAAG,CAAC,CAAC;QAIX,oBAAe,GAAG,CAAC,CAAC;QAIpB,gBAAW,GAAkE,EAAE,CAAC;QAIhF,eAAU,GAAoC,IAAI,CAAC;QAInD,eAAU,GAAoC,IAAI,CAAC;QAInD,SAAI,GAAG,KAAK,CAAC;QAGb,WAAM,GAAG,CAAC,CAAC;QAEX,UAAK,GAAoC,EAAE,CAAC;QA8BnC,kBAAa,GAA6B,UAAA,KAAK;YACpD,OAAA,KAAI,CAAC,UAAU,GAAG,KAAI,CAAC,UAAU,CAAC,KAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE;SAAA,CAAC;KAzB7D;kCA/DK,yBAAyB;IAMlC,sBAAI,kDAAW;aAAf,UAAgB,KAAsC;YAClD,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE;gBACf,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC;gBAEhB,OAAO;aACV;YAED,IAAM,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAC1B,IAAM,OAAO,YAAO,KAAK,CAAC,CAAC;YAC3B,IAAM,MAAM,GAAG,MAAM,CAAC,aAAa,CAAC,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;YAE3E,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,EAAC,MAAM,QAAA,EAAC,EAAE,UAAC,CAAC,EAAE,GAAG;gBACrC,IAAM,UAAU,GAAG,KAAK,CAAC,MAAM,CAAC,EAAC,GAAG,KAAA,EAAC,CAAC,CAAC;gBACvC,IAAM,OAAO,GAAG,UAAU,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC;gBAC3E,IAAM,YAAY,GAAG,OAAO,GAAG,OAAO,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC;gBAEhD,OAAO,CAAC,UAAU,EAAE,YAAY,CAAqB,CAAC;aACzD,CAAC,CAAC;SACN;;;OAAA;IAyCD,sBAAI,6CAAM;aAAV;YACI,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,WAAW,CAAC;SACzE;;;OAAA;IAED,sBAAI,iDAAU;aAAd;YACI,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;SAC1D;;;OAAA;IAED,sBAAI,2CAAI;aAAR;YACI,OAAO,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC;SAC1E;;;OAAA;IAGD,kDAAc,GAAd,UACI,CAAS,EACT,KAAsC;QAEtC,OAAO;YACH,SAAS,EAAE,KAAK,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC;SAC5C,CAAC;KACL;IAKD,wCAAI,GAAJ,UAAK,KAAa;QACd,IAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QACrC,IAAM,MAAM,GAAG,QAAQ,CAAC,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;QACjE,IAAM,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC;QAE1C,OAAO,KAAK,GAAG,MAAM,CAAC;KACzB;IAED,6CAAS,GAAT,UAAU,GAAkB;QACxB,IAAI,CAAC,GAAG,EAAE;YACN,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,UAAA,KAAK,IAAI,OAAA,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,GAAA,CAAC,CAAC;YAEnD,OAAO;SACV;QAED,IAAM,KAAK,GAAG,QAAQ,CAAC,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;QAC5D,IAAM,CAAC,GAAG,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC;QACjF,IAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;QACpC,IAAM,OAAO,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC;QACtB,IAAA,qBAAK,CAAY;QAExB,KAAK,CAAC,OAAO,CAAC,UAAA,KAAK;YACf,IAAI,KAAK,KAAK,OAAO,EAAE;gBACnB,OAAO,CAAC,SAAS,CAAC,KAAK,CAAC,SAAS,CAAC,UAAA,KAAK,IAAI,OAAA,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,GAAA,CAAC,CAAC,CAAC;aAC/D;iBAAM;gBACH,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;aACxB;SACJ,CAAC,CAAC;KACN;IAED,yCAAK,GAAL,UAAM,KAAa,EAAE,EAA8B;YAA7B,gBAAK;QACvB,IAAM,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;QAE1B,IAAI,IAAI,CAAC,aAAa,EAAE;YACpB,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;SAC9C;KACJ;IAED,4CAAQ,GAAR,UAAS,KAAa;QAClB,OAAO,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC;KAC9D;IAED,8CAAU,GAAV,UACI,KAAa,EACb,EAA8B;YAA7B,gBAAK;QAEN,IAAM,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;QAE1B,OAAO,IAAI,CAAC,aAAa;cACnB,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;cAC/C,IAAI,CAAC,cAAc,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;KAC5C;IAGO,+CAAW,GAAnB,UACI,KAAsC;QAEtC,IAAM,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC;QAEnC,OAAO,KAAK,CAAC,IAAI,CACb,EAAC,MAAM,EAAE,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,EAAC,EAC7E,UAAC,CAAC,EAAE,CAAC,IAAK,OAAA,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,EAAE,GAAA,CAC1D;aACI,GAAG,CAAC,UAAA,aAAa;YACd,OAAA,KAAK;iBACA,GAAG,CAAkB,UAAC,EAAkB,EAAE,KAAK;oBAAzB,kBAAkB,EAAjB,UAAa,EAAZ,gBAAK,EAAE,cAAI,EAAG,SAAC;gBACpC,OAAA,KAAK,GAAG,IAAI,GAAG,EAAE,KAAK,aAAa,GAAG,CAAC,KAAK,GAAG,MAAM,EAAE,CAAC,CAAC,GAAG,IAAI;aAAA,CACnE;iBACA,MAAM,CAAC,SAAS,CAAC;SAAA,CACzB;aACA,GAAG,CAAC,UAAC,KAAK,EAAE,KAAK,EAAE,KAAK;YACrB,OAAA,KAAK,KAAK,KAAK,CAAC,MAAM,GAAG,CAAC;kBACpB,KAAK;2BACD,KAAK,GAAE,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,UAAA,GAAG,IAAI,OAAA,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAA,CAAC,IAAI,KAAK,EAAC;SAAA,CAC1E,CAAC;KACT;IAEO,4CAAQ,GAAhB,UAAiB,KAAa;QAC1B,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;KAC1D;;;gBA3GmC,6BAA6B,uBAF5D,QAAQ,YACR,MAAM,SAAC,6BAA6B;;IA3DzC;QADC,YAAY,CAAC,qBAAqB,CAAC;6DACoC;IAIxE;QAFC,KAAK,CAAC,OAAO,CAAC;QACd,cAAc,EAAE;gEAmBhB;IAID;QAFC,KAAK,EAAE;QACP,cAAc,EAAE;wDACX;IAIN;QAFC,KAAK,EAAE;QACP,cAAc,EAAE;6DACN;IAIX;QAFC,KAAK,EAAE;QACP,cAAc,EAAE;sEACG;IAIpB;QAFC,KAAK,EAAE;QACP,cAAc,EAAE;kEAC+D;IAIhF;QAFC,KAAK,EAAE;QACP,cAAc,EAAE;iEACkC;IAInD;QAFC,KAAK,EAAE;QACP,cAAc,EAAE;iEACkC;IAInD;QAFC,KAAK,EAAE;QACP,cAAc,EAAE;2DACJ;IAGb;QADC,WAAW,CAAC,cAAc,CAAC;6DACjB;IAuBX;QADC,OAAO;mEAQP;IA2DD;QADC,OAAO;gEAsBP;IArKQ,yBAAyB;QAZrC,SAAS,CAAC;YACP,QAAQ,EAAE,qBAAqB;YAC/B,ysBAA8C;YAE9C,eAAe,EAAE,uBAAuB,CAAC,MAAM;YAC/C,SAAS,EAAE;gBACP;oBACI,OAAO,EAAE,yBAAyB;oBAClC,WAAW,EAAE,UAAU,CAAC,cAAM,OAAA,2BAAyB,GAAA,CAAC;iBAC3D;aACJ;;SACJ,CAAC;QA6DO,WAAA,QAAQ,EAAE,CAAA;QACV,WAAA,MAAM,CAAC,6BAA6B,CAAC,CAAA;OA7DjC,yBAAyB,CA0KrC;IAAD,gCAAC;CA1KD;;;IChCA;KAAsC;IAAzB,sBAAsB;QALlC,QAAQ,CAAC;YACN,OAAO,EAAE,CAAC,YAAY,EAAE,kBAAkB,EAAE,kBAAkB,CAAC;YAC/D,YAAY,EAAE,CAAC,yBAAyB,EAAE,6BAA6B,CAAC;YACxE,OAAO,EAAE,CAAC,yBAAyB,EAAE,6BAA6B,CAAC;SACtE,CAAC;OACW,sBAAsB,CAAG;IAAD,6BAAC;CAAtC;;ACbA;;;;;;"}
|
|
@@ -66,6 +66,9 @@ var TuiPieChartComponent = /** @class */ (function () {
|
|
|
66
66
|
enumerable: true,
|
|
67
67
|
configurable: true
|
|
68
68
|
});
|
|
69
|
+
TuiPieChartComponent.prototype.getContentContext = function ($implicit) {
|
|
70
|
+
return { $implicit: $implicit };
|
|
71
|
+
};
|
|
69
72
|
TuiPieChartComponent.prototype.getTransform = function (index) {
|
|
70
73
|
var transform = this.masked
|
|
71
74
|
? "scale(" + TRANSFORM[this.size] + ")"
|
|
@@ -78,8 +81,8 @@ var TuiPieChartComponent = /** @class */ (function () {
|
|
|
78
81
|
TuiPieChartComponent.prototype.onHovered = function (hovered, index) {
|
|
79
82
|
this.updateActiveItemIndex(hovered ? index : NaN);
|
|
80
83
|
};
|
|
81
|
-
TuiPieChartComponent.prototype.
|
|
82
|
-
return
|
|
84
|
+
TuiPieChartComponent.prototype.getColor = function (index) {
|
|
85
|
+
return this.sanitizer.bypassSecurityTrustStyle("var(--tui-chart-" + index + ", " + colorFallback(this.colorHandler(index)) + ")");
|
|
83
86
|
};
|
|
84
87
|
TuiPieChartComponent.prototype.getSegments = function (value) {
|
|
85
88
|
var total = sum.apply(void 0, __spread(value));
|
|
@@ -100,9 +103,6 @@ var TuiPieChartComponent = /** @class */ (function () {
|
|
|
100
103
|
this.activeItemIndex = index;
|
|
101
104
|
this.activeItemIndexChange.next(index);
|
|
102
105
|
};
|
|
103
|
-
TuiPieChartComponent.prototype.getColor = function (index) {
|
|
104
|
-
return this.sanitizer.bypassSecurityTrustStyle("var(--tui-chart-" + index + ", " + colorFallback(this.colorHandler(index)) + ")");
|
|
105
|
-
};
|
|
106
106
|
TuiPieChartComponent.ctorParameters = function () { return [
|
|
107
107
|
{ type: TuiIdService, decorators: [{ type: Inject, args: [TuiIdService,] }] },
|
|
108
108
|
{ type: Location, decorators: [{ type: Inject, args: [Location,] }] },
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"taiga-ui-addon-charts-components-pie-chart.js","sources":["ng://@taiga-ui/addon-charts/components/pie-chart/pie-chart.component.ts","ng://@taiga-ui/addon-charts/components/pie-chart/pie-chart.module.ts","ng://@taiga-ui/addon-charts/components/pie-chart/taiga-ui-addon-charts-components-pie-chart.ts"],"sourcesContent":["import {Location} from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n EventEmitter,\n HostBinding,\n Inject,\n Input,\n Output,\n} from '@angular/core';\nimport {DomSanitizer, SafeValue} from '@angular/platform-browser';\nimport {TUI_DEFAULT_COLOR_HANDLER} from '@taiga-ui/addon-charts/constants';\nimport {TuiColorHandler} from '@taiga-ui/addon-charts/types';\nimport {describeSector} from '@taiga-ui/addon-charts/utils';\nimport {\n sum,\n TuiContextWithImplicit,\n tuiDefaultProp,\n TuiIdService,\n tuiPure,\n} from '@taiga-ui/cdk';\nimport {colorFallback, TuiSizeXL, TuiSizeXS} from '@taiga-ui/core';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\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// TODO: Remove sanitizer when Angular version is bumped\n@Component({\n selector: 'tui-pie-chart',\n templateUrl: './pie-chart.template.html',\n styleUrls: ['./pie-chart.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class TuiPieChartComponent {\n @Input()\n @tuiDefaultProp()\n value: readonly number[] = [];\n\n @Input()\n @HostBinding('attr.data-tui-host-size')\n @tuiDefaultProp()\n size: TuiSizeXS | TuiSizeXL = 'm';\n\n @Input()\n @tuiDefaultProp()\n colorHandler: TuiColorHandler = TUI_DEFAULT_COLOR_HANDLER;\n\n @Input()\n @tuiDefaultProp()\n hintContent: PolymorpheusContent<TuiContextWithImplicit<number>> = '';\n\n @Input()\n @tuiDefaultProp()\n masked = false;\n\n @Input()\n @tuiDefaultProp()\n activeItemIndex = NaN;\n\n @Output()\n activeItemIndexChange = new EventEmitter<number>();\n\n
|
|
1
|
+
{"version":3,"file":"taiga-ui-addon-charts-components-pie-chart.js","sources":["ng://@taiga-ui/addon-charts/components/pie-chart/pie-chart.component.ts","ng://@taiga-ui/addon-charts/components/pie-chart/pie-chart.module.ts","ng://@taiga-ui/addon-charts/components/pie-chart/taiga-ui-addon-charts-components-pie-chart.ts"],"sourcesContent":["import {Location} from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n EventEmitter,\n HostBinding,\n Inject,\n Input,\n Output,\n} from '@angular/core';\nimport {DomSanitizer, SafeValue} from '@angular/platform-browser';\nimport {TUI_DEFAULT_COLOR_HANDLER} from '@taiga-ui/addon-charts/constants';\nimport {TuiColorHandler} from '@taiga-ui/addon-charts/types';\nimport {describeSector} from '@taiga-ui/addon-charts/utils';\nimport {\n sum,\n TuiContextWithImplicit,\n tuiDefaultProp,\n TuiIdService,\n tuiPure,\n} from '@taiga-ui/cdk';\nimport {colorFallback, TuiSizeXL, TuiSizeXS} from '@taiga-ui/core';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\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// TODO: Remove sanitizer when Angular version is bumped\n@Component({\n selector: 'tui-pie-chart',\n templateUrl: './pie-chart.template.html',\n styleUrls: ['./pie-chart.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class TuiPieChartComponent {\n private readonly autoIdString: string;\n\n @Input()\n @tuiDefaultProp()\n value: readonly number[] = [];\n\n @Input()\n @HostBinding('attr.data-tui-host-size')\n @tuiDefaultProp()\n size: TuiSizeXS | TuiSizeXL = 'm';\n\n @Input()\n @tuiDefaultProp()\n colorHandler: TuiColorHandler = TUI_DEFAULT_COLOR_HANDLER;\n\n @Input()\n @tuiDefaultProp()\n hintContent: PolymorpheusContent<TuiContextWithImplicit<number>> = '';\n\n @Input()\n @tuiDefaultProp()\n masked = false;\n\n @Input()\n @tuiDefaultProp()\n activeItemIndex = NaN;\n\n @Output()\n activeItemIndexChange = new EventEmitter<number>();\n\n constructor(\n @Inject(TuiIdService) idService: TuiIdService,\n @Inject(Location) private readonly locationRef: Location,\n @Inject(DomSanitizer) private readonly sanitizer: DomSanitizer,\n ) {\n this.autoIdString = idService.generate();\n }\n\n get maskId(): string {\n return 'tui-ring-chart-' + this.autoIdString;\n }\n\n get mask(): string | null {\n return this.masked\n ? `url(${this.locationRef.prepareExternalUrl(this.locationRef.path())}#${\n this.maskId\n })`\n : null;\n }\n\n get radius(): string {\n return RADII[this.size];\n }\n\n get segments(): readonly string[] {\n return this.getSegments(this.value);\n }\n\n @tuiPure\n getContentContext($implicit: number): TuiContextWithImplicit<number> {\n return {$implicit};\n }\n\n 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 getHint(hint: PolymorpheusContent): PolymorpheusContent {\n return this.hintContent ? hint : '';\n }\n\n onHovered(hovered: boolean, index: number) {\n this.updateActiveItemIndex(hovered ? index : NaN);\n }\n\n getColor(index: number): SafeValue {\n return this.sanitizer.bypassSecurityTrustStyle(\n `var(--tui-chart-${index}, ${colorFallback(this.colorHandler(index))})`,\n );\n }\n\n @tuiPure\n private getSegments(value: readonly number[]): readonly string[] {\n const total = sum(...value);\n\n return value\n .map((currentItem, currentIndex, array) =>\n array.reduce(\n (sum, item, index) =>\n index < currentIndex ? (item / total) * 360 + sum : sum,\n (currentItem / total) * 360,\n ),\n )\n .map((angle, index, array) =>\n describeSector(array[index - 1] || 0, Math.min(angle, 359.9999)),\n );\n }\n\n private updateActiveItemIndex(index: number) {\n if (index === this.activeItemIndex) {\n return;\n }\n\n this.activeItemIndex = index;\n this.activeItemIndexChange.next(index);\n }\n}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {TuiHoveredModule} from '@taiga-ui/cdk';\nimport {TuiPointerHintModule} from '@taiga-ui/core';\nimport {PolymorpheusModule} from '@tinkoff/ng-polymorpheus';\n\nimport {TuiPieChartComponent} from './pie-chart.component';\n\n@NgModule({\n imports: [CommonModule, TuiHoveredModule, PolymorpheusModule, TuiPointerHintModule],\n declarations: [TuiPieChartComponent],\n exports: [TuiPieChartComponent],\n})\nexport class TuiPieChartModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|