@taiga-ui/addon-charts 2.43.0 → 2.46.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.
Files changed (89) hide show
  1. package/bundles/taiga-ui-addon-charts-components-arc-chart.umd.js +41 -6
  2. package/bundles/taiga-ui-addon-charts-components-arc-chart.umd.js.map +1 -1
  3. package/bundles/taiga-ui-addon-charts-components-arc-chart.umd.min.js +2 -2
  4. package/bundles/taiga-ui-addon-charts-components-arc-chart.umd.min.js.map +1 -1
  5. package/bundles/taiga-ui-addon-charts-components-bar-set.umd.js +1 -1
  6. package/bundles/taiga-ui-addon-charts-components-bar-set.umd.js.map +1 -1
  7. package/bundles/taiga-ui-addon-charts-components-bar-set.umd.min.js.map +1 -1
  8. package/bundles/taiga-ui-addon-charts-components-bar.umd.js +1 -1
  9. package/bundles/taiga-ui-addon-charts-components-bar.umd.js.map +1 -1
  10. package/bundles/taiga-ui-addon-charts-components-bar.umd.min.js.map +1 -1
  11. package/bundles/taiga-ui-addon-charts-components-legend-item.umd.js +1 -1
  12. package/bundles/taiga-ui-addon-charts-components-legend-item.umd.js.map +1 -1
  13. package/bundles/taiga-ui-addon-charts-components-legend-item.umd.min.js.map +1 -1
  14. package/bundles/taiga-ui-addon-charts-components-line-chart.umd.js +1 -1
  15. package/bundles/taiga-ui-addon-charts-components-line-chart.umd.js.map +1 -1
  16. package/bundles/taiga-ui-addon-charts-components-line-chart.umd.min.js +1 -1
  17. package/bundles/taiga-ui-addon-charts-components-line-chart.umd.min.js.map +1 -1
  18. package/bundles/taiga-ui-addon-charts-components-line-days-chart.umd.js.map +1 -1
  19. package/bundles/taiga-ui-addon-charts-components-line-days-chart.umd.min.js.map +1 -1
  20. package/bundles/taiga-ui-addon-charts-components-pie-chart.umd.js +1 -1
  21. package/bundles/taiga-ui-addon-charts-components-pie-chart.umd.js.map +1 -1
  22. package/bundles/taiga-ui-addon-charts-components-pie-chart.umd.min.js.map +1 -1
  23. package/bundles/taiga-ui-addon-charts-components-ring-chart.umd.js +1 -1
  24. package/bundles/taiga-ui-addon-charts-components-ring-chart.umd.js.map +1 -1
  25. package/bundles/taiga-ui-addon-charts-components-ring-chart.umd.min.js.map +1 -1
  26. package/bundles/taiga-ui-addon-charts-constants.umd.js +1 -1
  27. package/bundles/taiga-ui-addon-charts-constants.umd.js.map +1 -1
  28. package/bundles/taiga-ui-addon-charts-constants.umd.min.js.map +1 -1
  29. package/components/arc-chart/arc-chart.component.d.ts +7 -1
  30. package/components/arc-chart/taiga-ui-addon-charts-components-arc-chart.metadata.json +1 -1
  31. package/components/line-chart/taiga-ui-addon-charts-components-line-chart.metadata.json +1 -1
  32. package/constants/default-colors.d.ts +1 -0
  33. package/esm2015/components/arc-chart/arc-chart.component.js +33 -5
  34. package/esm2015/components/bar/bar.component.js +2 -2
  35. package/esm2015/components/bar-set/bar-set.component.js +2 -2
  36. package/esm2015/components/legend-item/legend-item.component.js +2 -2
  37. package/esm2015/components/line-chart/line-chart-hint.directive.js +1 -1
  38. package/esm2015/components/line-chart/line-chart.component.js +2 -2
  39. package/esm2015/components/line-days-chart/line-days-chart-hint.directive.js +1 -1
  40. package/esm2015/components/line-days-chart/line-days-chart.component.js +1 -1
  41. package/esm2015/components/pie-chart/pie-chart.component.js +2 -2
  42. package/esm2015/components/ring-chart/ring-chart.component.js +2 -2
  43. package/esm2015/constants/default-colors.js +2 -2
  44. package/esm5/components/arc-chart/arc-chart.component.js +43 -6
  45. package/esm5/components/bar/bar.component.js +2 -2
  46. package/esm5/components/bar-set/bar-set.component.js +2 -2
  47. package/esm5/components/legend-item/legend-item.component.js +2 -2
  48. package/esm5/components/line-chart/line-chart-hint.directive.js +1 -1
  49. package/esm5/components/line-chart/line-chart.component.js +2 -2
  50. package/esm5/components/line-days-chart/line-days-chart-hint.directive.js +1 -1
  51. package/esm5/components/line-days-chart/line-days-chart.component.js +1 -1
  52. package/esm5/components/pie-chart/pie-chart.component.js +2 -2
  53. package/esm5/components/ring-chart/ring-chart.component.js +2 -2
  54. package/esm5/constants/default-colors.js +2 -2
  55. package/fesm2015/taiga-ui-addon-charts-components-arc-chart.js +32 -4
  56. package/fesm2015/taiga-ui-addon-charts-components-arc-chart.js.map +1 -1
  57. package/fesm2015/taiga-ui-addon-charts-components-bar-set.js +1 -1
  58. package/fesm2015/taiga-ui-addon-charts-components-bar-set.js.map +1 -1
  59. package/fesm2015/taiga-ui-addon-charts-components-bar.js +1 -1
  60. package/fesm2015/taiga-ui-addon-charts-components-bar.js.map +1 -1
  61. package/fesm2015/taiga-ui-addon-charts-components-legend-item.js +1 -1
  62. package/fesm2015/taiga-ui-addon-charts-components-legend-item.js.map +1 -1
  63. package/fesm2015/taiga-ui-addon-charts-components-line-chart.js +1 -1
  64. package/fesm2015/taiga-ui-addon-charts-components-line-chart.js.map +1 -1
  65. package/fesm2015/taiga-ui-addon-charts-components-line-days-chart.js.map +1 -1
  66. package/fesm2015/taiga-ui-addon-charts-components-pie-chart.js +1 -1
  67. package/fesm2015/taiga-ui-addon-charts-components-pie-chart.js.map +1 -1
  68. package/fesm2015/taiga-ui-addon-charts-components-ring-chart.js +1 -1
  69. package/fesm2015/taiga-ui-addon-charts-components-ring-chart.js.map +1 -1
  70. package/fesm2015/taiga-ui-addon-charts-constants.js +1 -1
  71. package/fesm2015/taiga-ui-addon-charts-constants.js.map +1 -1
  72. package/fesm5/taiga-ui-addon-charts-components-arc-chart.js +42 -5
  73. package/fesm5/taiga-ui-addon-charts-components-arc-chart.js.map +1 -1
  74. package/fesm5/taiga-ui-addon-charts-components-bar-set.js +1 -1
  75. package/fesm5/taiga-ui-addon-charts-components-bar-set.js.map +1 -1
  76. package/fesm5/taiga-ui-addon-charts-components-bar.js +1 -1
  77. package/fesm5/taiga-ui-addon-charts-components-bar.js.map +1 -1
  78. package/fesm5/taiga-ui-addon-charts-components-legend-item.js +1 -1
  79. package/fesm5/taiga-ui-addon-charts-components-legend-item.js.map +1 -1
  80. package/fesm5/taiga-ui-addon-charts-components-line-chart.js +1 -1
  81. package/fesm5/taiga-ui-addon-charts-components-line-chart.js.map +1 -1
  82. package/fesm5/taiga-ui-addon-charts-components-line-days-chart.js.map +1 -1
  83. package/fesm5/taiga-ui-addon-charts-components-pie-chart.js +1 -1
  84. package/fesm5/taiga-ui-addon-charts-components-pie-chart.js.map +1 -1
  85. package/fesm5/taiga-ui-addon-charts-components-ring-chart.js +1 -1
  86. package/fesm5/taiga-ui-addon-charts-components-ring-chart.js.map +1 -1
  87. package/fesm5/taiga-ui-addon-charts-constants.js +1 -1
  88. package/fesm5/taiga-ui-addon-charts-constants.js.map +1 -1
  89. package/package.json +3 -3
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-addon-charts-components-line-chart.umd.js","sources":["../../../node_modules/tslib/tslib.es6.js","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"],"sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __createBinding(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (p !== \"default\" && !exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, privateMap) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to get private field on non-instance\");\r\n }\r\n return privateMap.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, privateMap, value) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to set private field on non-instance\");\r\n }\r\n privateMap.set(receiver, value);\r\n return value;\r\n}\r\n","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 {TuiLineChartHintContext} from '@taiga-ui/addon-charts/interfaces';\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<readonly 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 ): TuiLineChartHintContext<readonly 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 ): TuiLineChartHintContext<readonly TuiPoint[]> {\n return {\n $implicit: charts.map(chart => chart.value[index]),\n 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 {TuiLineChartHintContext} from '@taiga-ui/addon-charts/interfaces';\nimport {draw} from '@taiga-ui/addon-charts/utils';\nimport {\n inRange,\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: readonly 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<TuiLineChartHintContext<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: readonly 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 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 isFocusable(): boolean {\n return !this.hintDirective && this.hasHints;\n }\n\n get hasHints(): boolean {\n return (\n !!this.xStringify ||\n !!this.yStringify ||\n !!this.hintDirective?.hint ||\n !!this.hintContent\n );\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 index: number,\n ): TuiLineChartHintContext<readonly TuiPoint[]> {\n return (\n this.hintDirective?.getContext(this.value.indexOf($implicit), this) || {\n $implicit: [],\n index,\n }\n );\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: readonly 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"],"names":["EMPTY_QUERY","throttleTime","map","HINT_HOVERED_CLASS","startWith","distinctUntilChanged","filter","tuiZonefree","takeUntil","Renderer2","Inject","TuiDestroyService","ElementRef","NgZone","Observable","ANIMATION_FRAME","ContentChildren","forwardRef","Input","tuiDefaultProp","tuiPure","Directive","inRange","Subject","tuiZoneOptimized","draw","TuiIdService","Location","Optional","HostListener","Component","ChangeDetectionStrategy","NgModule","CommonModule","PolymorpheusModule","TuiHintModule","TuiFocusableModule","TuiDescribedByModule","TuiLetModule"],"mappings":"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"}
1
+ {"version":3,"file":"taiga-ui-addon-charts-components-line-chart.umd.js","sources":["../../../node_modules/tslib/tslib.es6.js","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"],"sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __createBinding(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (p !== \"default\" && !exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, privateMap) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to get private field on non-instance\");\r\n }\r\n return privateMap.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, privateMap, value) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to set private field on non-instance\");\r\n }\r\n privateMap.set(receiver, value);\r\n return value;\r\n}\r\n","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 {TuiLineChartHintContext} from '@taiga-ui/addon-charts/interfaces';\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<readonly 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 ): TuiLineChartHintContext<readonly 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): void {\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 ): TuiLineChartHintContext<readonly TuiPoint[]> {\n return {\n $implicit: charts.map(chart => chart.value[index]),\n 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 {TuiLineChartHintContext} from '@taiga-ui/addon-charts/interfaces';\nimport {draw} from '@taiga-ui/addon-charts/utils';\nimport {\n inRange,\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: readonly 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<TuiLineChartHintContext<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: readonly 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 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 isFocusable(): boolean {\n return !this.hintDirective && this.hasHints;\n }\n\n get hasHints(): boolean {\n return (\n !!this.xStringify ||\n !!this.yStringify ||\n !!this.hintDirective?.hint ||\n !!this.hintContent\n );\n }\n\n @HostListener('mouseleave')\n onMouseLeave(): void {\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 index: number,\n ): TuiLineChartHintContext<readonly TuiPoint[]> {\n return (\n this.hintDirective?.getContext(this.value.indexOf($implicit), this) || {\n $implicit: [],\n index,\n }\n );\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): void {\n if (this.hintDirective) {\n this.hintDirective.raise(index, this);\n } else {\n this.onHovered(index);\n }\n }\n\n onHovered(index: number): void {\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: readonly 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"],"names":["EMPTY_QUERY","throttleTime","map","HINT_HOVERED_CLASS","startWith","distinctUntilChanged","filter","tuiZonefree","takeUntil","Renderer2","Inject","TuiDestroyService","ElementRef","NgZone","Observable","ANIMATION_FRAME","ContentChildren","forwardRef","Input","tuiDefaultProp","tuiPure","Directive","inRange","Subject","tuiZoneOptimized","draw","TuiIdService","Location","Optional","HostListener","Component","ChangeDetectionStrategy","NgModule","CommonModule","PolymorpheusModule","TuiHintModule","TuiFocusableModule","TuiDescribedByModule","TuiLetModule"],"mappings":"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"}
@@ -12,5 +12,5 @@
12
12
  LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
13
13
  OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
14
14
  PERFORMANCE OF THIS SOFTWARE.
15
- ***************************************************************************** */function c(t,e,n,o){var i,r=arguments.length,u=r<3?e:null===o?o=Object.getOwnPropertyDescriptor(e,n):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)u=Reflect.decorate(t,e,n,o);else for(var s=t.length-1;s>=0;s--)(i=t[s])&&(u=(r<3?i(u):r>3?i(e,n,u):i(e,n))||u);return r>3&&u&&Object.defineProperty(e,n,u),u}function h(t,e){return function(n,o){e(n,o,t)}}function p(t,e){var n="function"==typeof Symbol&&t[Symbol.iterator];if(!n)return t;var o,i,r=n.call(t),u=[];try{for(;(void 0===e||e-- >0)&&!(o=r.next()).done;)u.push(o.value)}catch(t){i={error:t}}finally{try{o&&!o.done&&(n=r.return)&&n.call(r)}finally{if(i)throw i.error}}return u}var d=function(){function t(t,e,n,o,r){var s=this,l=n.nativeElement;this.renderer=t,this.charts=i.EMPTY_QUERY,this.chartsRef=i.EMPTY_QUERY,this.hint="",r.pipe(u.throttleTime(200),u.map((function(){return!!l.querySelector("."+a.HINT_HOVERED_CLASS)})),u.startWith(!1),u.distinctUntilChanged(),u.filter((function(t){return!t})),i.tuiZonefree(o),u.takeUntil(e)).subscribe((function(){s.charts.forEach((function(t){return t.onHovered(NaN)}))}))}return t.prototype.getContext=function(t,e){return this.computeContext(t,this.charts)},t.prototype.raise=function(t,e){var n=this,o=this.charts.map((function(e){return e.value[t]})),i=function(){for(var t=[],e=0;e<arguments.length;e++)t=t.concat(p(arguments[e]));return t}(o).sort((function(t,e){return t[1]-e[1]}));this.charts.forEach((function(e){return e.onHovered(t)})),this.chartsRef.forEach((function(t,e){var r=t.nativeElement;return n.renderer.setStyle(r,"z-index",i.indexOf(o[e]))}))},t.prototype.computeContext=function(t,e){return{$implicit:e.map((function(e){return e.value[t]})),index:t}},t.ctorParameters=function(){return[{type:n.Renderer2,decorators:[{type:n.Inject,args:[n.Renderer2]}]},{type:i.TuiDestroyService,decorators:[{type:n.Inject,args:[i.TuiDestroyService]}]},{type:n.ElementRef,decorators:[{type:n.Inject,args:[n.ElementRef]}]},{type:n.NgZone,decorators:[{type:n.Inject,args:[n.NgZone]}]},{type:r.Observable,decorators:[{type:n.Inject,args:[s.ANIMATION_FRAME]}]}]},c([n.ContentChildren(n.forwardRef((function(){return g})))],t.prototype,"charts",void 0),c([n.ContentChildren(n.forwardRef((function(){return g})),{read:n.ElementRef})],t.prototype,"chartsRef",void 0),c([n.Input("tuiLineChartHint"),i.tuiDefaultProp()],t.prototype,"hint",void 0),c([i.tuiPure],t.prototype,"computeContext",null),t=c([n.Directive({selector:"[tuiLineChartHint]",providers:[i.TuiDestroyService]}),h(0,n.Inject(n.Renderer2)),h(1,n.Inject(i.TuiDestroyService)),h(2,n.Inject(n.ElementRef)),h(3,n.Inject(n.NgZone)),h(4,n.Inject(s.ANIMATION_FRAME))],t)}();function f(t){return i.inRange(t,0,100)}var g=function(){function t(t,e,n,o){this.ngZone=e,this.locationRef=n,this.hintDirective=o,this._hovered$=new r.Subject,this.x=0,this.y=0,this.width=0,this.height=0,this.smoothingFactor=0,this.hintContent="",this.xStringify=null,this.yStringify=null,this.filled=!1,this.dots=!1,this.value=[],this.autoIdString=t.generate()}return Object.defineProperty(t.prototype,"valueSetter",{set:function(t){this.value=t.filter((function(t){return!t.some(isNaN)}))},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"hovered$",{get:function(){return this._hovered$.pipe(u.distinctUntilChanged(),i.tuiZoneOptimized(this.ngZone))},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"fillId",{get:function(){return"tui-line-chart-"+this.autoIdString},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"fill",{get:function(){return this.filled?"url("+this.locationRef.prepareExternalUrl(this.locationRef.path())+"#"+this.fillId+")":"none"},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"viewBox",{get:function(){return this.x+" "+this.y+" "+this.width+" "+this.height},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"d",{get:function(){return this.getD(this.value,this.smoothingFactor)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"fillD",{get:function(){return this.value.length?this.d+"V "+this.y+" H "+this.value[0][0]+" V "+this.value[0][1]:this.d},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"isFocusable",{get:function(){return!this.hintDirective&&this.hasHints},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"hasHints",{get:function(){var t;return!!(this.xStringify||this.yStringify||(null===(t=this.hintDirective)||void 0===t?void 0:t.hint)||this.hintContent)},enumerable:!0,configurable:!0}),t.prototype.onMouseLeave=function(){this.hintDirective||this.onHovered(NaN)},t.prototype.getX=function(t){return this.isSinglePoint?this.value[0][0]/2:t?(this.value[t-1][0]+this.value[t][0])/2:2*this.value[0][0]-this.getX(1)},t.prototype.getWidth=function(t){return 100*this.computeWidth(t)/this.width},t.prototype.getHintId=function(t){return this.autoIdString+"_"+t},t.prototype.getContentContext=function(t,e){var n;return(null===(n=this.hintDirective)||void 0===n?void 0:n.getContext(this.value.indexOf(t),this))||{$implicit:[],index:e}},t.prototype.getHovered=function(t){return Number.isInteger(t)?this.value[t]:null},t.prototype.getBottom=function(t){return 100*(t-this.y)/this.height},t.prototype.getLeft=function(t){return 100*(t-this.x)/this.width},t.prototype.getOffset=function(t){return 100*(this.value[t][0]-this.getX(t))/this.computeWidth(t)},t.prototype.onMouseEnter=function(t){this.hintDirective?this.hintDirective.raise(t,this):this.onHovered(t)},t.prototype.onHovered=function(t){this._hovered$.next(t)},Object.defineProperty(t.prototype,"isSinglePoint",{get:function(){return 1===this.value.length},enumerable:!0,configurable:!0}),t.prototype.getD=function(t,e){return t.reduce((function(n,i,r){return r?n+" "+o.draw(t,r,e):"M "+i}),"")},t.prototype.computeWidth=function(t){return t===this.value.length-1?2*(this.value[t][0]-this.getX(t)):this.getX(t+1)-this.getX(t)},t.ctorParameters=function(){return[{type:i.TuiIdService,decorators:[{type:n.Inject,args:[i.TuiIdService]}]},{type:n.NgZone,decorators:[{type:n.Inject,args:[n.NgZone]}]},{type:e.Location,decorators:[{type:n.Inject,args:[e.Location]}]},{type:d,decorators:[{type:n.Optional},{type:n.Inject,args:[d]}]}]},c([n.Input("value"),i.tuiDefaultProp()],t.prototype,"valueSetter",null),c([n.Input(),i.tuiDefaultProp()],t.prototype,"x",void 0),c([n.Input(),i.tuiDefaultProp()],t.prototype,"y",void 0),c([n.Input(),i.tuiDefaultProp()],t.prototype,"width",void 0),c([n.Input(),i.tuiDefaultProp()],t.prototype,"height",void 0),c([n.Input(),i.tuiDefaultProp(f,"smoothingFactor must be between 0 and 100")],t.prototype,"smoothingFactor",void 0),c([n.Input(),i.tuiDefaultProp()],t.prototype,"hintContent",void 0),c([n.Input(),i.tuiDefaultProp()],t.prototype,"xStringify",void 0),c([n.Input(),i.tuiDefaultProp()],t.prototype,"yStringify",void 0),c([n.Input(),i.tuiDefaultProp()],t.prototype,"filled",void 0),c([n.Input(),i.tuiDefaultProp()],t.prototype,"dots",void 0),c([i.tuiPure],t.prototype,"hovered$",null),c([n.HostListener("mouseleave")],t.prototype,"onMouseLeave",null),c([i.tuiPure],t.prototype,"getD",null),t=c([n.Component({selector:"tui-line-chart",template:'<ng-container *tuiLet="hovered$ | async as hovered">\n <svg\n xmlns="http://www.w3.org/2000/svg"\n focusable="false"\n preserveAspectRatio="none"\n width="100%"\n height="100%"\n class="t-svg"\n [attr.viewBox]="viewBox"\n >\n <defs>\n <linearGradient\n x1="0"\n x2="0"\n y1="1"\n y2="0"\n [attr.id]="fillId"\n >\n <stop\n stop-color="currentColor"\n offset="0%"\n stop-opacity="0.5"\n />\n <stop\n stop-color="currentColor"\n offset="100%"\n stop-opacity="0"\n />\n </linearGradient>\n </defs>\n <path\n stroke="none"\n [attr.fill]="fill"\n [attr.d]="fillD"\n />\n <path\n fill="none"\n stroke="currentColor"\n vector-effect="non-scaling-stroke"\n stroke-width="2"\n [attr.d]="d"\n />\n </svg>\n <ng-container *ngIf="dots">\n <div\n *ngFor="let point of value"\n class="t-dot"\n [style.left.%]="getLeft(point[0])"\n [style.bottom.%]="getBottom(point[1])"\n ></div>\n </ng-container>\n <ng-container *ngIf="hasHints">\n <ng-container *ngFor="let point of value; let index = index">\n <div\n *ngIf="value.length > 1 || dots"\n tuiHintDirection="top-left"\n class="t-column"\n [class.t-column_hovered]="hovered === index"\n [tuiHintHost]="hintHost"\n [tuiHint]="hintDirective || hintContent ? hint : \'\'"\n [tuiHintId]="getHintId(index)"\n [style.left.%]="getLeft(getX(index))"\n [style.width.%]="getWidth(index)"\n (mouseenter)="onMouseEnter(index)"\n >\n <div\n class="t-line t-line_vertical"\n [style.left.%]="getOffset(index)"\n ></div>\n <div\n #hintHost\n class="t-host"\n [style.left.%]="getOffset(index)"\n [style.bottom.%]="getBottom(point[1])"\n [tuiFocusable]="isFocusable"\n [tuiDescribedBy]="getHintId(index)"\n ></div>\n </div>\n <div\n *ngIf="isFocusable"\n class="t-line t-line_horizontal"\n [style.bottom.%]="getBottom(point[1])"\n ></div>\n <ng-template #hint>\n <div\n *ngIf="hintDirective else single"\n polymorpheus-outlet\n class="t-text"\n [content]="hintDirective.hint"\n [context]="getContentContext(point, index)"\n ></div>\n <ng-template #single>\n <div\n polymorpheus-outlet\n class="t-text"\n [content]="hintContent"\n [context]="{ $implicit: point, index: index }"\n ></div>\n </ng-template>\n </ng-template>\n </ng-container>\n </ng-container>\n <ng-container *ngIf="getHovered(hovered) as point">\n <div\n *ngIf="xStringify"\n class="t-hint t-hint_x"\n [style.left.%]="getLeft(point[0])"\n >\n {{ xStringify(point[0]) }}\n </div>\n <div\n *ngIf="yStringify"\n class="t-hint t-hint_y"\n [style.bottom.%]="getBottom(point[1])"\n >\n {{ yStringify(point[1]) }}\n </div>\n </ng-container>\n</ng-container>\n',changeDetection:n.ChangeDetectionStrategy.OnPush,styles:[":host{display:flex;width:100%;height:100%;pointer-events:none}.t-svg{transform:scale(1,-1)}.t-column{position:absolute;top:0;height:100%;pointer-events:auto}.t-dot{position:absolute;width:.375rem;height:.375rem;border-radius:100%;background:currentColor;margin:-.1875rem;box-shadow:0 0 0 2px #fff}.t-host{position:absolute;left:50%;width:.5rem;height:.5rem;border-radius:100%;opacity:0;background:#fff;margin:-.25rem;box-shadow:0 0 0 2px currentColor,0 .0625rem .1875rem .125rem rgba(0,0,0,.1);outline:0;pointer-events:none}.column._hint_hovered .t-host,.column:hover .t-host,.column_hovered .t-host,.t-host:focus{opacity:1}.t-line{position:absolute;opacity:0;background:var(--tui-base-03)}.t-line_vertical{top:0;bottom:0;left:50%;width:1px}.t-line_horizontal{z-index:-1;width:100%;height:1px}:host:not([style]) .column._hint_hovered .t-line,:host:not([style]) .column._hint_hovered+.t-line,:host:not([style]) .column:hover .t-line,:host:not([style]) .column:hover+.t-line,:host[style^='z-index: 0'] .column_hovered .t-line,:host[style^='z-index: 0'] .column_hovered+.t-line{opacity:1}.t-text{white-space:pre-wrap}.t-hint{box-shadow:0 .25rem 1.5rem rgba(0,0,0,.12);position:absolute;font:var(--tui-font-text-xs);height:1.25rem;line-height:1.25rem;margin-bottom:-.625rem;padding:0 .375rem;white-space:nowrap;color:var(--tui-base-09);background:var(--tui-base-01);transform:translate3d(-50%,0,0)}.t-hint_x{bottom:0}.t-hint_y{left:0}"]}),h(0,n.Inject(i.TuiIdService)),h(1,n.Inject(n.NgZone)),h(2,n.Inject(e.Location)),h(3,n.Optional()),h(3,n.Inject(d))],t)}(),y=function(){function t(){}return t=c([n.NgModule({imports:[e.CommonModule,l.PolymorpheusModule,a.TuiHintModule,i.TuiFocusableModule,a.TuiDescribedByModule,i.TuiLetModule],declarations:[g,d],exports:[g,d]})],t)}();t.TuiLineChartComponent=g,t.TuiLineChartHintDirective=d,t.TuiLineChartModule=y,t.smoothingAssertion=f,Object.defineProperty(t,"__esModule",{value:!0})}));
15
+ ***************************************************************************** */function c(t,e,n,o){var i,r=arguments.length,u=r<3?e:null===o?o=Object.getOwnPropertyDescriptor(e,n):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)u=Reflect.decorate(t,e,n,o);else for(var s=t.length-1;s>=0;s--)(i=t[s])&&(u=(r<3?i(u):r>3?i(e,n,u):i(e,n))||u);return r>3&&u&&Object.defineProperty(e,n,u),u}function h(t,e){return function(n,o){e(n,o,t)}}function p(t,e){var n="function"==typeof Symbol&&t[Symbol.iterator];if(!n)return t;var o,i,r=n.call(t),u=[];try{for(;(void 0===e||e-- >0)&&!(o=r.next()).done;)u.push(o.value)}catch(t){i={error:t}}finally{try{o&&!o.done&&(n=r.return)&&n.call(r)}finally{if(i)throw i.error}}return u}var d=function(){function t(t,e,n,o,r){var s=this,l=n.nativeElement;this.renderer=t,this.charts=i.EMPTY_QUERY,this.chartsRef=i.EMPTY_QUERY,this.hint="",r.pipe(u.throttleTime(200),u.map((function(){return!!l.querySelector("."+a.HINT_HOVERED_CLASS)})),u.startWith(!1),u.distinctUntilChanged(),u.filter((function(t){return!t})),i.tuiZonefree(o),u.takeUntil(e)).subscribe((function(){s.charts.forEach((function(t){return t.onHovered(NaN)}))}))}return t.prototype.getContext=function(t,e){return this.computeContext(t,this.charts)},t.prototype.raise=function(t,e){var n=this,o=this.charts.map((function(e){return e.value[t]})),i=function(){for(var t=[],e=0;e<arguments.length;e++)t=t.concat(p(arguments[e]));return t}(o).sort((function(t,e){return t[1]-e[1]}));this.charts.forEach((function(e){return e.onHovered(t)})),this.chartsRef.forEach((function(t,e){var r=t.nativeElement;return n.renderer.setStyle(r,"z-index",i.indexOf(o[e]))}))},t.prototype.computeContext=function(t,e){return{$implicit:e.map((function(e){return e.value[t]})),index:t}},t.ctorParameters=function(){return[{type:n.Renderer2,decorators:[{type:n.Inject,args:[n.Renderer2]}]},{type:i.TuiDestroyService,decorators:[{type:n.Inject,args:[i.TuiDestroyService]}]},{type:n.ElementRef,decorators:[{type:n.Inject,args:[n.ElementRef]}]},{type:n.NgZone,decorators:[{type:n.Inject,args:[n.NgZone]}]},{type:r.Observable,decorators:[{type:n.Inject,args:[s.ANIMATION_FRAME]}]}]},c([n.ContentChildren(n.forwardRef((function(){return g})))],t.prototype,"charts",void 0),c([n.ContentChildren(n.forwardRef((function(){return g})),{read:n.ElementRef})],t.prototype,"chartsRef",void 0),c([n.Input("tuiLineChartHint"),i.tuiDefaultProp()],t.prototype,"hint",void 0),c([i.tuiPure],t.prototype,"computeContext",null),t=c([n.Directive({selector:"[tuiLineChartHint]",providers:[i.TuiDestroyService]}),h(0,n.Inject(n.Renderer2)),h(1,n.Inject(i.TuiDestroyService)),h(2,n.Inject(n.ElementRef)),h(3,n.Inject(n.NgZone)),h(4,n.Inject(s.ANIMATION_FRAME))],t)}();function f(t){return i.inRange(t,0,100)}var g=function(){function t(t,e,n,o){this.ngZone=e,this.locationRef=n,this.hintDirective=o,this._hovered$=new r.Subject,this.x=0,this.y=0,this.width=0,this.height=0,this.smoothingFactor=0,this.hintContent="",this.xStringify=null,this.yStringify=null,this.filled=!1,this.dots=!1,this.value=[],this.autoIdString=t.generate()}return Object.defineProperty(t.prototype,"valueSetter",{set:function(t){this.value=t.filter((function(t){return!t.some(isNaN)}))},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"hovered$",{get:function(){return this._hovered$.pipe(u.distinctUntilChanged(),i.tuiZoneOptimized(this.ngZone))},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"fillId",{get:function(){return"tui-line-chart-"+this.autoIdString},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"fill",{get:function(){return this.filled?"url("+this.locationRef.prepareExternalUrl(this.locationRef.path())+"#"+this.fillId+")":"none"},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"viewBox",{get:function(){return this.x+" "+this.y+" "+this.width+" "+this.height},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"d",{get:function(){return this.getD(this.value,this.smoothingFactor)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"fillD",{get:function(){return this.value.length?this.d+"V "+this.y+" H "+this.value[0][0]+" V "+this.value[0][1]:this.d},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"isFocusable",{get:function(){return!this.hintDirective&&this.hasHints},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"hasHints",{get:function(){var t;return!!(this.xStringify||this.yStringify||(null===(t=this.hintDirective)||void 0===t?void 0:t.hint)||this.hintContent)},enumerable:!0,configurable:!0}),t.prototype.onMouseLeave=function(){this.hintDirective||this.onHovered(NaN)},t.prototype.getX=function(t){return this.isSinglePoint?this.value[0][0]/2:t?(this.value[t-1][0]+this.value[t][0])/2:2*this.value[0][0]-this.getX(1)},t.prototype.getWidth=function(t){return 100*this.computeWidth(t)/this.width},t.prototype.getHintId=function(t){return this.autoIdString+"_"+t},t.prototype.getContentContext=function(t,e){var n;return(null===(n=this.hintDirective)||void 0===n?void 0:n.getContext(this.value.indexOf(t),this))||{$implicit:[],index:e}},t.prototype.getHovered=function(t){return Number.isInteger(t)?this.value[t]:null},t.prototype.getBottom=function(t){return 100*(t-this.y)/this.height},t.prototype.getLeft=function(t){return 100*(t-this.x)/this.width},t.prototype.getOffset=function(t){return 100*(this.value[t][0]-this.getX(t))/this.computeWidth(t)},t.prototype.onMouseEnter=function(t){this.hintDirective?this.hintDirective.raise(t,this):this.onHovered(t)},t.prototype.onHovered=function(t){this._hovered$.next(t)},Object.defineProperty(t.prototype,"isSinglePoint",{get:function(){return 1===this.value.length},enumerable:!0,configurable:!0}),t.prototype.getD=function(t,e){return t.reduce((function(n,i,r){return r?n+" "+o.draw(t,r,e):"M "+i}),"")},t.prototype.computeWidth=function(t){return t===this.value.length-1?2*(this.value[t][0]-this.getX(t)):this.getX(t+1)-this.getX(t)},t.ctorParameters=function(){return[{type:i.TuiIdService,decorators:[{type:n.Inject,args:[i.TuiIdService]}]},{type:n.NgZone,decorators:[{type:n.Inject,args:[n.NgZone]}]},{type:e.Location,decorators:[{type:n.Inject,args:[e.Location]}]},{type:d,decorators:[{type:n.Optional},{type:n.Inject,args:[d]}]}]},c([n.Input("value"),i.tuiDefaultProp()],t.prototype,"valueSetter",null),c([n.Input(),i.tuiDefaultProp()],t.prototype,"x",void 0),c([n.Input(),i.tuiDefaultProp()],t.prototype,"y",void 0),c([n.Input(),i.tuiDefaultProp()],t.prototype,"width",void 0),c([n.Input(),i.tuiDefaultProp()],t.prototype,"height",void 0),c([n.Input(),i.tuiDefaultProp(f,"smoothingFactor must be between 0 and 100")],t.prototype,"smoothingFactor",void 0),c([n.Input(),i.tuiDefaultProp()],t.prototype,"hintContent",void 0),c([n.Input(),i.tuiDefaultProp()],t.prototype,"xStringify",void 0),c([n.Input(),i.tuiDefaultProp()],t.prototype,"yStringify",void 0),c([n.Input(),i.tuiDefaultProp()],t.prototype,"filled",void 0),c([n.Input(),i.tuiDefaultProp()],t.prototype,"dots",void 0),c([i.tuiPure],t.prototype,"hovered$",null),c([n.HostListener("mouseleave")],t.prototype,"onMouseLeave",null),c([i.tuiPure],t.prototype,"getD",null),t=c([n.Component({selector:"tui-line-chart",template:'<ng-container *tuiLet="hovered$ | async as hovered">\n <svg\n xmlns="http://www.w3.org/2000/svg"\n focusable="false"\n preserveAspectRatio="none"\n width="100%"\n height="100%"\n class="t-svg"\n [attr.viewBox]="viewBox"\n >\n <defs>\n <linearGradient\n x1="0"\n x2="0"\n y1="1"\n y2="0"\n [attr.id]="fillId"\n >\n <stop\n stop-color="currentColor"\n offset="0%"\n stop-opacity="0.5"\n />\n <stop\n stop-color="currentColor"\n offset="100%"\n stop-opacity="0"\n />\n </linearGradient>\n </defs>\n <path\n stroke="none"\n [attr.fill]="fill"\n [attr.d]="fillD"\n />\n <path\n fill="none"\n stroke="currentColor"\n vector-effect="non-scaling-stroke"\n stroke-width="2"\n [attr.d]="d"\n />\n </svg>\n <ng-container *ngIf="dots">\n <div\n *ngFor="let point of value"\n class="t-dot"\n [style.left.%]="getLeft(point[0])"\n [style.bottom.%]="getBottom(point[1])"\n ></div>\n </ng-container>\n <ng-container *ngIf="hasHints">\n <ng-container *ngFor="let point of value; let index = index">\n <div\n *ngIf="value.length > 1 || dots"\n tuiHintDirection="top-left"\n class="t-column"\n [class.t-column_hovered]="hovered === index"\n [tuiHintHost]="hintHost"\n [tuiHint]="hintDirective || hintContent ? hint : \'\'"\n [tuiHintId]="getHintId(index)"\n [style.left.%]="getLeft(getX(index))"\n [style.width.%]="getWidth(index)"\n (mouseenter)="onMouseEnter(index)"\n >\n <div\n class="t-line t-line_vertical"\n [style.left.%]="getOffset(index)"\n ></div>\n <div\n #hintHost\n class="t-host"\n [style.left.%]="getOffset(index)"\n [style.bottom.%]="getBottom(point[1])"\n [tuiFocusable]="isFocusable"\n [tuiDescribedBy]="getHintId(index)"\n ></div>\n </div>\n <div\n *ngIf="isFocusable"\n class="t-line t-line_horizontal"\n [style.bottom.%]="getBottom(point[1])"\n ></div>\n <ng-template #hint>\n <div\n *ngIf="hintDirective else single"\n polymorpheus-outlet\n class="t-text"\n [content]="hintDirective.hint"\n [context]="getContentContext(point, index)"\n ></div>\n <ng-template #single>\n <div\n polymorpheus-outlet\n class="t-text"\n [content]="hintContent"\n [context]="{ $implicit: point, index: index }"\n ></div>\n </ng-template>\n </ng-template>\n </ng-container>\n </ng-container>\n <ng-container *ngIf="getHovered(hovered) as point">\n <div\n *ngIf="xStringify"\n class="t-hint t-hint_x"\n [style.left.%]="getLeft(point[0])"\n >\n {{ xStringify(point[0]) }}\n </div>\n <div\n *ngIf="yStringify"\n class="t-hint t-hint_y"\n [style.bottom.%]="getBottom(point[1])"\n >\n {{ yStringify(point[1]) }}\n </div>\n </ng-container>\n</ng-container>\n',changeDetection:n.ChangeDetectionStrategy.OnPush,styles:[":host{display:flex;width:100%;height:100%;pointer-events:none}.t-svg{transform:scale(1,-1)}.t-column{position:absolute;top:0;height:100%;pointer-events:auto}.t-dot{position:absolute;width:.375rem;height:.375rem;border-radius:100%;background:currentColor;margin:-.1875rem;box-shadow:0 0 0 2px #fff}.t-host{position:absolute;left:50%;width:.5rem;height:.5rem;border-radius:100%;opacity:0;background:#fff;margin:-.25rem;box-shadow:0 0 0 2px currentColor,0 .0625rem .1875rem .125rem rgba(0,0,0,.1);outline:0;pointer-events:none}.t-column._hint_hovered .t-host,.t-column:hover .t-host,.t-column_hovered .t-host,.t-host:focus{opacity:1}.t-line{position:absolute;opacity:0;background:var(--tui-base-03)}.t-line_vertical{top:0;bottom:0;left:50%;width:1px}.t-line_horizontal{z-index:-1;width:100%;height:1px}:host:not([style]) .t-column._hint_hovered .t-line,:host:not([style]) .t-column._hint_hovered+.t-line,:host:not([style]) .t-column:hover .t-line,:host:not([style]) .t-column:hover+.t-line,:host[style^='z-index: 0'] .t-column_hovered .t-line,:host[style^='z-index: 0'] .t-column_hovered+.t-line{opacity:1}.t-text{white-space:pre-wrap}.t-hint{box-shadow:0 .25rem 1.5rem rgba(0,0,0,.12);position:absolute;font:var(--tui-font-text-xs);height:1.25rem;line-height:1.25rem;margin-bottom:-.625rem;padding:0 .375rem;white-space:nowrap;color:var(--tui-base-09);background:var(--tui-base-01);transform:translate3d(-50%,0,0)}.t-hint_x{bottom:0}.t-hint_y{left:0}"]}),h(0,n.Inject(i.TuiIdService)),h(1,n.Inject(n.NgZone)),h(2,n.Inject(e.Location)),h(3,n.Optional()),h(3,n.Inject(d))],t)}(),y=function(){function t(){}return t=c([n.NgModule({imports:[e.CommonModule,l.PolymorpheusModule,a.TuiHintModule,i.TuiFocusableModule,a.TuiDescribedByModule,i.TuiLetModule],declarations:[g,d],exports:[g,d]})],t)}();t.TuiLineChartComponent=g,t.TuiLineChartHintDirective=d,t.TuiLineChartModule=y,t.smoothingAssertion=f,Object.defineProperty(t,"__esModule",{value:!0})}));
16
16
  //# sourceMappingURL=taiga-ui-addon-charts-components-line-chart.umd.min.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../node_modules/tslib/tslib.es6.js","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"],"names":["__decorate","decorators","target","key","desc","d","c","arguments","length","r","Object","getOwnPropertyDescriptor","Reflect","decorate","i","defineProperty","__param","paramIndex","decorator","__read","o","n","m","Symbol","iterator","e","call","ar","next","done","push","value","error","TuiLineChartHintDirective","renderer","destroy$","_a","ngZone","animationFrame$","_this","this","nativeElement","charts","EMPTY_QUERY","chartsRef","hint","pipe","throttleTime","map","querySelector","HINT_HOVERED_CLASS","startWith","distinctUntilChanged","filter","v","tuiZonefree","takeUntil","subscribe","forEach","chart","onHovered","NaN","prototype","getContext","index","_chart","computeContext","raise","current","sorted","concat","__spread","sort","a","b","setStyle","indexOf","$implicit","Renderer2","type","Inject","args","TuiDestroyService","ElementRef","NgZone","Observable","ANIMATION_FRAME","ContentChildren","forwardRef","TuiLineChartComponent","read","Input","tuiDefaultProp","tuiPure","Directive","selector","providers","smoothingAssertion","smoothingFactor","inRange","idService","locationRef","hintDirective","_hovered$","Subject","x","y","width","height","hintContent","xStringify","yStringify","filled","dots","autoIdString","generate","item","some","isNaN","tuiZoneOptimized","prepareExternalUrl","path","fillId","getD","hasHints","onMouseLeave","getX","isSinglePoint","getWidth","computeWidth","getHintId","getContentContext","getHovered","hovered","Number","isInteger","getBottom","getLeft","getOffset","onMouseEnter","reduce","point","draw","TuiIdService","Location","Optional","HostListener","Component","template","changeDetection","ChangeDetectionStrategy","OnPush","TuiLineChartModule","NgModule","imports","CommonModule","PolymorpheusModule","TuiHintModule","TuiFocusableModule","TuiDescribedByModule","TuiLetModule","declarations","exports"],"mappings":"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","sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __createBinding(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (p !== \"default\" && !exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, privateMap) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to get private field on non-instance\");\r\n }\r\n return privateMap.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, privateMap, value) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to set private field on non-instance\");\r\n }\r\n privateMap.set(receiver, value);\r\n return value;\r\n}\r\n","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 {TuiLineChartHintContext} from '@taiga-ui/addon-charts/interfaces';\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<readonly 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 ): TuiLineChartHintContext<readonly 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 ): TuiLineChartHintContext<readonly TuiPoint[]> {\n return {\n $implicit: charts.map(chart => chart.value[index]),\n 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 {TuiLineChartHintContext} from '@taiga-ui/addon-charts/interfaces';\nimport {draw} from '@taiga-ui/addon-charts/utils';\nimport {\n inRange,\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: readonly 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<TuiLineChartHintContext<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: readonly 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 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 isFocusable(): boolean {\n return !this.hintDirective && this.hasHints;\n }\n\n get hasHints(): boolean {\n return (\n !!this.xStringify ||\n !!this.yStringify ||\n !!this.hintDirective?.hint ||\n !!this.hintContent\n );\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 index: number,\n ): TuiLineChartHintContext<readonly TuiPoint[]> {\n return (\n this.hintDirective?.getContext(this.value.indexOf($implicit), this) || {\n $implicit: [],\n index,\n }\n );\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: readonly 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"]}
1
+ {"version":3,"sources":["../../../node_modules/tslib/tslib.es6.js","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"],"names":["__decorate","decorators","target","key","desc","d","c","arguments","length","r","Object","getOwnPropertyDescriptor","Reflect","decorate","i","defineProperty","__param","paramIndex","decorator","__read","o","n","m","Symbol","iterator","e","call","ar","next","done","push","value","error","TuiLineChartHintDirective","renderer","destroy$","_a","ngZone","animationFrame$","_this","this","nativeElement","charts","EMPTY_QUERY","chartsRef","hint","pipe","throttleTime","map","querySelector","HINT_HOVERED_CLASS","startWith","distinctUntilChanged","filter","v","tuiZonefree","takeUntil","subscribe","forEach","chart","onHovered","NaN","prototype","getContext","index","_chart","computeContext","raise","current","sorted","concat","__spread","sort","a","b","setStyle","indexOf","$implicit","Renderer2","type","Inject","args","TuiDestroyService","ElementRef","NgZone","Observable","ANIMATION_FRAME","ContentChildren","forwardRef","TuiLineChartComponent","read","Input","tuiDefaultProp","tuiPure","Directive","selector","providers","smoothingAssertion","smoothingFactor","inRange","idService","locationRef","hintDirective","_hovered$","Subject","x","y","width","height","hintContent","xStringify","yStringify","filled","dots","autoIdString","generate","item","some","isNaN","tuiZoneOptimized","prepareExternalUrl","path","fillId","getD","hasHints","onMouseLeave","getX","isSinglePoint","getWidth","computeWidth","getHintId","getContentContext","getHovered","hovered","Number","isInteger","getBottom","getLeft","getOffset","onMouseEnter","reduce","point","draw","TuiIdService","Location","Optional","HostListener","Component","template","changeDetection","ChangeDetectionStrategy","OnPush","TuiLineChartModule","NgModule","imports","CommonModule","PolymorpheusModule","TuiHintModule","TuiFocusableModule","TuiDescribedByModule","TuiLetModule","declarations","exports"],"mappings":"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","sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __createBinding(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (p !== \"default\" && !exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, privateMap) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to get private field on non-instance\");\r\n }\r\n return privateMap.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, privateMap, value) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to set private field on non-instance\");\r\n }\r\n privateMap.set(receiver, value);\r\n return value;\r\n}\r\n","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 {TuiLineChartHintContext} from '@taiga-ui/addon-charts/interfaces';\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<readonly 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 ): TuiLineChartHintContext<readonly 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): void {\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 ): TuiLineChartHintContext<readonly TuiPoint[]> {\n return {\n $implicit: charts.map(chart => chart.value[index]),\n 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 {TuiLineChartHintContext} from '@taiga-ui/addon-charts/interfaces';\nimport {draw} from '@taiga-ui/addon-charts/utils';\nimport {\n inRange,\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: readonly 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<TuiLineChartHintContext<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: readonly 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 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 isFocusable(): boolean {\n return !this.hintDirective && this.hasHints;\n }\n\n get hasHints(): boolean {\n return (\n !!this.xStringify ||\n !!this.yStringify ||\n !!this.hintDirective?.hint ||\n !!this.hintContent\n );\n }\n\n @HostListener('mouseleave')\n onMouseLeave(): void {\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 index: number,\n ): TuiLineChartHintContext<readonly TuiPoint[]> {\n return (\n this.hintDirective?.getContext(this.value.indexOf($implicit), this) || {\n $implicit: [],\n index,\n }\n );\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): void {\n if (this.hintDirective) {\n this.hintDirective.raise(index, this);\n } else {\n this.onHovered(index);\n }\n }\n\n onHovered(index: number): void {\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: readonly 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"]}