@taiga-ui/addon-charts 2.61.0 → 3.0.0-rc.2

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 (372) hide show
  1. package/bundles/taiga-ui-addon-charts-components-arc-chart.umd.js +437 -319
  2. package/bundles/taiga-ui-addon-charts-components-arc-chart.umd.js.map +1 -1
  3. package/bundles/taiga-ui-addon-charts-components-axes.umd.js +461 -335
  4. package/bundles/taiga-ui-addon-charts-components-axes.umd.js.map +1 -1
  5. package/bundles/taiga-ui-addon-charts-components-bar-chart.umd.js +451 -342
  6. package/bundles/taiga-ui-addon-charts-components-bar-chart.umd.js.map +1 -1
  7. package/bundles/taiga-ui-addon-charts-components-bar-set.umd.js +401 -298
  8. package/bundles/taiga-ui-addon-charts-components-bar-set.umd.js.map +1 -1
  9. package/bundles/taiga-ui-addon-charts-components-bar.umd.js +396 -293
  10. package/bundles/taiga-ui-addon-charts-components-bar.umd.js.map +1 -1
  11. package/bundles/taiga-ui-addon-charts-components-legend-item.umd.js +408 -295
  12. package/bundles/taiga-ui-addon-charts-components-legend-item.umd.js.map +1 -1
  13. package/bundles/taiga-ui-addon-charts-components-line-chart.umd.js +572 -402
  14. package/bundles/taiga-ui-addon-charts-components-line-chart.umd.js.map +1 -1
  15. package/bundles/taiga-ui-addon-charts-components-line-days-chart.umd.js +544 -392
  16. package/bundles/taiga-ui-addon-charts-components-line-days-chart.umd.js.map +1 -1
  17. package/bundles/taiga-ui-addon-charts-components-pie-chart.umd.js +518 -393
  18. package/bundles/taiga-ui-addon-charts-components-pie-chart.umd.js.map +1 -1
  19. package/bundles/taiga-ui-addon-charts-components-ring-chart.umd.js +398 -302
  20. package/bundles/taiga-ui-addon-charts-components-ring-chart.umd.js.map +1 -1
  21. package/bundles/taiga-ui-addon-charts-components.umd.js +23 -43
  22. package/bundles/taiga-ui-addon-charts-components.umd.js.map +1 -1
  23. package/bundles/taiga-ui-addon-charts-constants.umd.js +17 -48
  24. package/bundles/taiga-ui-addon-charts-constants.umd.js.map +1 -1
  25. package/bundles/taiga-ui-addon-charts-interfaces.umd.js +2 -2
  26. package/bundles/taiga-ui-addon-charts-interfaces.umd.js.map +1 -1
  27. package/bundles/taiga-ui-addon-charts-types.umd.js +2 -2
  28. package/bundles/taiga-ui-addon-charts-types.umd.js.map +1 -1
  29. package/bundles/taiga-ui-addon-charts-utils.umd.js +350 -308
  30. package/bundles/taiga-ui-addon-charts-utils.umd.js.map +1 -1
  31. package/bundles/taiga-ui-addon-charts.umd.js +18 -18
  32. package/bundles/taiga-ui-addon-charts.umd.js.map +1 -1
  33. package/components/arc-chart/arc-chart.component.d.ts +3 -0
  34. package/components/arc-chart/arc-chart.module.d.ts +6 -0
  35. package/components/arc-chart/package.json +2 -5
  36. package/components/arc-chart/taiga-ui-addon-charts-components-arc-chart.d.ts +1 -0
  37. package/components/axes/axes.component.d.ts +6 -3
  38. package/components/axes/axes.module.d.ts +7 -0
  39. package/components/axes/package.json +2 -5
  40. package/components/axes/taiga-ui-addon-charts-components-axes.d.ts +1 -0
  41. package/components/bar/bar.component.d.ts +4 -5
  42. package/components/bar/bar.module.d.ts +6 -0
  43. package/components/bar/package.json +2 -5
  44. package/components/bar/taiga-ui-addon-charts-components-bar.d.ts +1 -0
  45. package/components/bar-chart/bar-chart.component.d.ts +10 -10
  46. package/components/bar-chart/bar-chart.module.d.ts +9 -0
  47. package/components/bar-chart/package.json +2 -5
  48. package/components/bar-chart/taiga-ui-addon-charts-components-bar-chart.d.ts +1 -0
  49. package/components/bar-set/bar-set.component.d.ts +4 -5
  50. package/components/bar-set/bar-set.module.d.ts +7 -0
  51. package/components/bar-set/package.json +2 -5
  52. package/components/bar-set/taiga-ui-addon-charts-components-bar-set.d.ts +1 -0
  53. package/components/legend-item/legend-item.component.d.ts +3 -0
  54. package/components/legend-item/legend-item.module.d.ts +7 -0
  55. package/components/legend-item/package.json +2 -5
  56. package/components/legend-item/taiga-ui-addon-charts-components-legend-item.d.ts +1 -0
  57. package/components/line-chart/line-chart-hint.directive.d.ts +13 -3
  58. package/components/line-chart/line-chart.component.d.ts +10 -6
  59. package/components/line-chart/line-chart.module.d.ts +10 -0
  60. package/components/line-chart/package.json +2 -5
  61. package/components/line-chart/taiga-ui-addon-charts-components-line-chart.d.ts +1 -0
  62. package/components/line-days-chart/line-days-chart-hint.directive.d.ts +10 -3
  63. package/components/line-days-chart/line-days-chart.component.d.ts +7 -1
  64. package/components/line-days-chart/line-days-chart.module.d.ts +10 -0
  65. package/components/line-days-chart/package.json +2 -5
  66. package/components/line-days-chart/taiga-ui-addon-charts-components-line-days-chart.d.ts +1 -0
  67. package/components/package.json +2 -5
  68. package/components/pie-chart/package.json +2 -5
  69. package/components/pie-chart/pie-chart.component.d.ts +5 -6
  70. package/components/pie-chart/pie-chart.directive.d.ts +3 -0
  71. package/components/pie-chart/pie-chart.module.d.ts +10 -0
  72. package/components/pie-chart/taiga-ui-addon-charts-components-pie-chart.d.ts +1 -0
  73. package/components/ring-chart/package.json +2 -5
  74. package/components/ring-chart/ring-chart.component.d.ts +3 -8
  75. package/components/ring-chart/ring-chart.module.d.ts +8 -0
  76. package/components/ring-chart/taiga-ui-addon-charts-components-ring-chart.d.ts +1 -0
  77. package/components/taiga-ui-addon-charts-components.d.ts +1 -0
  78. package/constants/index.d.ts +0 -2
  79. package/constants/package.json +2 -5
  80. package/constants/taiga-ui-addon-charts-constants.d.ts +1 -0
  81. package/esm2015/components/arc-chart/arc-chart.component.js +57 -45
  82. package/esm2015/components/arc-chart/arc-chart.module.js +15 -12
  83. package/esm2015/components/arc-chart/index.js +1 -1
  84. package/esm2015/components/arc-chart/taiga-ui-addon-charts-components-arc-chart.js +1 -1
  85. package/esm2015/components/axes/axes.component.js +55 -38
  86. package/esm2015/components/axes/axes.module.js +15 -12
  87. package/esm2015/components/axes/index.js +1 -1
  88. package/esm2015/components/axes/taiga-ui-addon-charts-components-axes.js +1 -1
  89. package/esm2015/components/bar/bar.component.js +29 -35
  90. package/esm2015/components/bar/bar.module.js +15 -12
  91. package/esm2015/components/bar/index.js +1 -1
  92. package/esm2015/components/bar/taiga-ui-addon-charts-components-bar.js +1 -1
  93. package/esm2015/components/bar-chart/bar-chart.component.js +51 -56
  94. package/esm2015/components/bar-chart/bar-chart.module.js +28 -15
  95. package/esm2015/components/bar-chart/index.js +1 -1
  96. package/esm2015/components/bar-chart/taiga-ui-addon-charts-components-bar-chart.js +1 -1
  97. package/esm2015/components/bar-set/bar-set.component.js +27 -33
  98. package/esm2015/components/bar-set/bar-set.module.js +15 -12
  99. package/esm2015/components/bar-set/index.js +1 -1
  100. package/esm2015/components/bar-set/taiga-ui-addon-charts-components-bar-set.js +1 -1
  101. package/esm2015/components/index.js +1 -1
  102. package/esm2015/components/legend-item/index.js +1 -1
  103. package/esm2015/components/legend-item/legend-item.component.js +36 -30
  104. package/esm2015/components/legend-item/legend-item.module.js +15 -12
  105. package/esm2015/components/legend-item/taiga-ui-addon-charts-components-legend-item.js +1 -1
  106. package/esm2015/components/line-chart/index.js +1 -1
  107. package/esm2015/components/line-chart/line-chart-hint.directive.js +54 -39
  108. package/esm2015/components/line-chart/line-chart.component.js +81 -54
  109. package/esm2015/components/line-chart/line-chart.module.js +28 -13
  110. package/esm2015/components/line-chart/taiga-ui-addon-charts-components-line-chart.js +1 -1
  111. package/esm2015/components/line-days-chart/index.js +1 -1
  112. package/esm2015/components/line-days-chart/line-days-chart-hint.directive.js +46 -35
  113. package/esm2015/components/line-days-chart/line-days-chart.component.js +72 -48
  114. package/esm2015/components/line-days-chart/line-days-chart.module.js +29 -12
  115. package/esm2015/components/line-days-chart/taiga-ui-addon-charts-components-line-days-chart.js +1 -1
  116. package/esm2015/components/pie-chart/index.js +1 -1
  117. package/esm2015/components/pie-chart/pie-chart.component.js +50 -50
  118. package/esm2015/components/pie-chart/pie-chart.directive.js +40 -32
  119. package/esm2015/components/pie-chart/pie-chart.module.js +28 -15
  120. package/esm2015/components/pie-chart/taiga-ui-addon-charts-components-pie-chart.js +1 -1
  121. package/esm2015/components/ring-chart/index.js +1 -1
  122. package/esm2015/components/ring-chart/ring-chart.component.js +27 -38
  123. package/esm2015/components/ring-chart/ring-chart.module.js +15 -12
  124. package/esm2015/components/ring-chart/taiga-ui-addon-charts-components-ring-chart.js +1 -1
  125. package/esm2015/components/taiga-ui-addon-charts-components.js +1 -1
  126. package/esm2015/constants/index.js +1 -3
  127. package/esm2015/constants/line-handlers.js +1 -1
  128. package/esm2015/constants/taiga-ui-addon-charts-constants.js +1 -1
  129. package/esm2015/index.js +3 -2
  130. package/esm2015/interfaces/index.js +2 -1
  131. package/esm2015/interfaces/line-chart-hint-context.js +2 -1
  132. package/esm2015/interfaces/taiga-ui-addon-charts-interfaces.js +2 -1
  133. package/esm2015/taiga-ui-addon-charts.js +1 -1
  134. package/esm2015/types/index.js +3 -1
  135. package/esm2015/types/line-handler.js +2 -1
  136. package/esm2015/types/line-type.js +2 -1
  137. package/esm2015/types/taiga-ui-addon-charts-types.js +2 -1
  138. package/esm2015/utils/control-point.js +6 -11
  139. package/esm2015/utils/describe-sector.js +6 -9
  140. package/esm2015/utils/draw-curve.js +5 -10
  141. package/esm2015/utils/draw-line.js +2 -7
  142. package/esm2015/utils/draw.js +6 -11
  143. package/esm2015/utils/index.js +1 -1
  144. package/esm2015/utils/line-angle.js +2 -7
  145. package/esm2015/utils/line-length.js +2 -7
  146. package/esm2015/utils/taiga-ui-addon-charts-utils.js +1 -1
  147. package/fesm2015/taiga-ui-addon-charts-components-arc-chart.js +68 -51
  148. package/fesm2015/taiga-ui-addon-charts-components-arc-chart.js.map +1 -1
  149. package/fesm2015/taiga-ui-addon-charts-components-axes.js +68 -46
  150. package/fesm2015/taiga-ui-addon-charts-components-axes.js.map +1 -1
  151. package/fesm2015/taiga-ui-addon-charts-components-bar-chart.js +77 -68
  152. package/fesm2015/taiga-ui-addon-charts-components-bar-chart.js.map +1 -1
  153. package/fesm2015/taiga-ui-addon-charts-components-bar-set.js +40 -41
  154. package/fesm2015/taiga-ui-addon-charts-components-bar-set.js.map +1 -1
  155. package/fesm2015/taiga-ui-addon-charts-components-bar.js +41 -42
  156. package/fesm2015/taiga-ui-addon-charts-components-bar.js.map +1 -1
  157. package/fesm2015/taiga-ui-addon-charts-components-legend-item.js +50 -38
  158. package/fesm2015/taiga-ui-addon-charts-components-legend-item.js.map +1 -1
  159. package/fesm2015/taiga-ui-addon-charts-components-line-chart.js +154 -97
  160. package/fesm2015/taiga-ui-addon-charts-components-line-chart.js.map +1 -1
  161. package/fesm2015/taiga-ui-addon-charts-components-line-days-chart.js +137 -86
  162. package/fesm2015/taiga-ui-addon-charts-components-line-days-chart.js.map +1 -1
  163. package/fesm2015/taiga-ui-addon-charts-components-pie-chart.js +131 -109
  164. package/fesm2015/taiga-ui-addon-charts-components-pie-chart.js.map +1 -1
  165. package/fesm2015/taiga-ui-addon-charts-components-ring-chart.js +41 -47
  166. package/fesm2015/taiga-ui-addon-charts-components-ring-chart.js.map +1 -1
  167. package/fesm2015/taiga-ui-addon-charts-components.js.map +1 -1
  168. package/fesm2015/taiga-ui-addon-charts-constants.js +1 -34
  169. package/fesm2015/taiga-ui-addon-charts-constants.js.map +1 -1
  170. package/fesm2015/taiga-ui-addon-charts-interfaces.js.map +1 -1
  171. package/fesm2015/taiga-ui-addon-charts-types.js.map +1 -1
  172. package/fesm2015/taiga-ui-addon-charts-utils.js +18 -51
  173. package/fesm2015/taiga-ui-addon-charts-utils.js.map +1 -1
  174. package/fesm2015/taiga-ui-addon-charts.js +2 -1
  175. package/fesm2015/taiga-ui-addon-charts.js.map +1 -1
  176. package/index.d.ts +0 -1
  177. package/interfaces/index.d.ts +0 -1
  178. package/interfaces/package.json +2 -5
  179. package/interfaces/taiga-ui-addon-charts-interfaces.d.ts +1 -0
  180. package/package.json +11 -14
  181. package/taiga-ui-addon-charts.d.ts +1 -0
  182. package/types/index.d.ts +0 -1
  183. package/types/line-handler.d.ts +2 -2
  184. package/types/line-type.d.ts +1 -1
  185. package/types/package.json +2 -5
  186. package/types/taiga-ui-addon-charts-types.d.ts +1 -0
  187. package/utils/control-point.d.ts +1 -5
  188. package/utils/describe-sector.d.ts +1 -3
  189. package/utils/draw-curve.d.ts +1 -5
  190. package/utils/draw-line.d.ts +1 -5
  191. package/utils/draw.d.ts +1 -5
  192. package/utils/line-angle.d.ts +1 -5
  193. package/utils/line-length.d.ts +1 -5
  194. package/utils/package.json +2 -5
  195. package/utils/taiga-ui-addon-charts-utils.d.ts +1 -0
  196. package/bundles/taiga-ui-addon-charts-components-arc-chart.umd.min.js +0 -2
  197. package/bundles/taiga-ui-addon-charts-components-arc-chart.umd.min.js.map +0 -1
  198. package/bundles/taiga-ui-addon-charts-components-axes.umd.min.js +0 -2
  199. package/bundles/taiga-ui-addon-charts-components-axes.umd.min.js.map +0 -1
  200. package/bundles/taiga-ui-addon-charts-components-bar-chart.umd.min.js +0 -2
  201. package/bundles/taiga-ui-addon-charts-components-bar-chart.umd.min.js.map +0 -1
  202. package/bundles/taiga-ui-addon-charts-components-bar-set.umd.min.js +0 -2
  203. package/bundles/taiga-ui-addon-charts-components-bar-set.umd.min.js.map +0 -1
  204. package/bundles/taiga-ui-addon-charts-components-bar.umd.min.js +0 -2
  205. package/bundles/taiga-ui-addon-charts-components-bar.umd.min.js.map +0 -1
  206. package/bundles/taiga-ui-addon-charts-components-legend-item.umd.min.js +0 -2
  207. package/bundles/taiga-ui-addon-charts-components-legend-item.umd.min.js.map +0 -1
  208. package/bundles/taiga-ui-addon-charts-components-line-chart.umd.min.js +0 -2
  209. package/bundles/taiga-ui-addon-charts-components-line-chart.umd.min.js.map +0 -1
  210. package/bundles/taiga-ui-addon-charts-components-line-days-chart.umd.min.js +0 -2
  211. package/bundles/taiga-ui-addon-charts-components-line-days-chart.umd.min.js.map +0 -1
  212. package/bundles/taiga-ui-addon-charts-components-pie-chart.umd.min.js +0 -2
  213. package/bundles/taiga-ui-addon-charts-components-pie-chart.umd.min.js.map +0 -1
  214. package/bundles/taiga-ui-addon-charts-components-ring-chart.umd.min.js +0 -2
  215. package/bundles/taiga-ui-addon-charts-components-ring-chart.umd.min.js.map +0 -1
  216. package/bundles/taiga-ui-addon-charts-components.umd.min.js +0 -2
  217. package/bundles/taiga-ui-addon-charts-components.umd.min.js.map +0 -1
  218. package/bundles/taiga-ui-addon-charts-constants.umd.min.js +0 -2
  219. package/bundles/taiga-ui-addon-charts-constants.umd.min.js.map +0 -1
  220. package/bundles/taiga-ui-addon-charts-enums.umd.js +0 -23
  221. package/bundles/taiga-ui-addon-charts-enums.umd.js.map +0 -1
  222. package/bundles/taiga-ui-addon-charts-enums.umd.min.js +0 -2
  223. package/bundles/taiga-ui-addon-charts-enums.umd.min.js.map +0 -1
  224. package/bundles/taiga-ui-addon-charts-interfaces.umd.min.js +0 -2
  225. package/bundles/taiga-ui-addon-charts-interfaces.umd.min.js.map +0 -1
  226. package/bundles/taiga-ui-addon-charts-types.umd.min.js +0 -2
  227. package/bundles/taiga-ui-addon-charts-types.umd.min.js.map +0 -1
  228. package/bundles/taiga-ui-addon-charts-utils.umd.min.js +0 -2
  229. package/bundles/taiga-ui-addon-charts-utils.umd.min.js.map +0 -1
  230. package/bundles/taiga-ui-addon-charts.umd.min.js +0 -2
  231. package/bundles/taiga-ui-addon-charts.umd.min.js.map +0 -1
  232. package/components/arc-chart/taiga-ui-addon-charts-components-arc-chart.metadata.json +0 -1
  233. package/components/axes/taiga-ui-addon-charts-components-axes.metadata.json +0 -1
  234. package/components/bar/taiga-ui-addon-charts-components-bar.metadata.json +0 -1
  235. package/components/bar-chart/taiga-ui-addon-charts-components-bar-chart.metadata.json +0 -1
  236. package/components/bar-set/taiga-ui-addon-charts-components-bar-set.metadata.json +0 -1
  237. package/components/legend-item/taiga-ui-addon-charts-components-legend-item.metadata.json +0 -1
  238. package/components/line-chart/taiga-ui-addon-charts-components-line-chart.metadata.json +0 -1
  239. package/components/line-days-chart/taiga-ui-addon-charts-components-line-days-chart.metadata.json +0 -1
  240. package/components/pie-chart/taiga-ui-addon-charts-components-pie-chart.metadata.json +0 -1
  241. package/components/ring-chart/taiga-ui-addon-charts-components-ring-chart.metadata.json +0 -1
  242. package/components/taiga-ui-addon-charts-components.metadata.json +0 -1
  243. package/constants/default-color-handler.d.ts +0 -3
  244. package/constants/default-colors.d.ts +0 -3
  245. package/constants/taiga-ui-addon-charts-constants.metadata.json +0 -1
  246. package/enums/index.d.ts +0 -1
  247. package/enums/line-type.d.ts +0 -11
  248. package/enums/package.json +0 -13
  249. package/enums/taiga-ui-addon-charts-enums.d.ts +0 -4
  250. package/enums/taiga-ui-addon-charts-enums.metadata.json +0 -1
  251. package/esm2015/constants/default-color-handler.js +0 -4
  252. package/esm2015/constants/default-colors.js +0 -30
  253. package/esm2015/enums/index.js +0 -2
  254. package/esm2015/enums/line-type.js +0 -13
  255. package/esm2015/enums/taiga-ui-addon-charts-enums.js +0 -5
  256. package/esm2015/interfaces/ring-chart-context.js +0 -1
  257. package/esm2015/types/color-handler.js +0 -1
  258. package/esm5/components/arc-chart/arc-chart.component.js +0 -149
  259. package/esm5/components/arc-chart/arc-chart.module.js +0 -18
  260. package/esm5/components/arc-chart/index.js +0 -3
  261. package/esm5/components/arc-chart/taiga-ui-addon-charts-components-arc-chart.js +0 -5
  262. package/esm5/components/axes/axes.component.js +0 -131
  263. package/esm5/components/axes/axes.module.js +0 -19
  264. package/esm5/components/axes/index.js +0 -3
  265. package/esm5/components/axes/taiga-ui-addon-charts-components-axes.js +0 -5
  266. package/esm5/components/bar/bar.component.js +0 -55
  267. package/esm5/components/bar/bar.module.js +0 -18
  268. package/esm5/components/bar/index.js +0 -3
  269. package/esm5/components/bar/taiga-ui-addon-charts-components-bar.js +0 -5
  270. package/esm5/components/bar-chart/bar-chart.component.js +0 -118
  271. package/esm5/components/bar-chart/bar-chart.module.js +0 -30
  272. package/esm5/components/bar-chart/index.js +0 -3
  273. package/esm5/components/bar-chart/taiga-ui-addon-charts-components-bar-chart.js +0 -5
  274. package/esm5/components/bar-set/bar-set.component.js +0 -83
  275. package/esm5/components/bar-set/bar-set.module.js +0 -19
  276. package/esm5/components/bar-set/index.js +0 -3
  277. package/esm5/components/bar-set/taiga-ui-addon-charts-components-bar-set.js +0 -5
  278. package/esm5/components/index.js +0 -11
  279. package/esm5/components/legend-item/index.js +0 -3
  280. package/esm5/components/legend-item/legend-item.component.js +0 -59
  281. package/esm5/components/legend-item/legend-item.module.js +0 -19
  282. package/esm5/components/legend-item/taiga-ui-addon-charts-components-legend-item.js +0 -5
  283. package/esm5/components/line-chart/index.js +0 -4
  284. package/esm5/components/line-chart/line-chart-hint.directive.js +0 -78
  285. package/esm5/components/line-chart/line-chart.component.js +0 -246
  286. package/esm5/components/line-chart/line-chart.module.js +0 -29
  287. package/esm5/components/line-chart/taiga-ui-addon-charts-components-line-chart.js +0 -5
  288. package/esm5/components/line-days-chart/index.js +0 -4
  289. package/esm5/components/line-days-chart/line-days-chart-hint.directive.js +0 -83
  290. package/esm5/components/line-days-chart/line-days-chart.component.js +0 -204
  291. package/esm5/components/line-days-chart/line-days-chart.module.js +0 -21
  292. package/esm5/components/line-days-chart/taiga-ui-addon-charts-components-line-days-chart.js +0 -5
  293. package/esm5/components/pie-chart/index.js +0 -4
  294. package/esm5/components/pie-chart/pie-chart.component.js +0 -168
  295. package/esm5/components/pie-chart/pie-chart.directive.js +0 -66
  296. package/esm5/components/pie-chart/pie-chart.module.js +0 -28
  297. package/esm5/components/pie-chart/taiga-ui-addon-charts-components-pie-chart.js +0 -5
  298. package/esm5/components/ring-chart/index.js +0 -3
  299. package/esm5/components/ring-chart/ring-chart.component.js +0 -67
  300. package/esm5/components/ring-chart/ring-chart.module.js +0 -20
  301. package/esm5/components/ring-chart/taiga-ui-addon-charts-components-ring-chart.js +0 -5
  302. package/esm5/components/taiga-ui-addon-charts-components.js +0 -5
  303. package/esm5/constants/default-color-handler.js +0 -4
  304. package/esm5/constants/default-colors.js +0 -30
  305. package/esm5/constants/index.js +0 -4
  306. package/esm5/constants/line-handlers.js +0 -5
  307. package/esm5/constants/taiga-ui-addon-charts-constants.js +0 -5
  308. package/esm5/enums/index.js +0 -2
  309. package/esm5/enums/line-type.js +0 -13
  310. package/esm5/enums/taiga-ui-addon-charts-enums.js +0 -5
  311. package/esm5/index.js +0 -4
  312. package/esm5/interfaces/index.js +0 -1
  313. package/esm5/interfaces/line-chart-hint-context.js +0 -1
  314. package/esm5/interfaces/ring-chart-context.js +0 -1
  315. package/esm5/interfaces/taiga-ui-addon-charts-interfaces.js +0 -4
  316. package/esm5/taiga-ui-addon-charts.js +0 -5
  317. package/esm5/types/color-handler.js +0 -1
  318. package/esm5/types/index.js +0 -1
  319. package/esm5/types/line-handler.js +0 -1
  320. package/esm5/types/line-type.js +0 -1
  321. package/esm5/types/taiga-ui-addon-charts-types.js +0 -4
  322. package/esm5/utils/control-point.js +0 -19
  323. package/esm5/utils/describe-sector.js +0 -36
  324. package/esm5/utils/draw-curve.js +0 -13
  325. package/esm5/utils/draw-line.js +0 -9
  326. package/esm5/utils/draw.js +0 -14
  327. package/esm5/utils/index.js +0 -8
  328. package/esm5/utils/line-angle.js +0 -11
  329. package/esm5/utils/line-length.js +0 -11
  330. package/esm5/utils/taiga-ui-addon-charts-utils.js +0 -5
  331. package/fesm2015/taiga-ui-addon-charts-enums.js +0 -19
  332. package/fesm2015/taiga-ui-addon-charts-enums.js.map +0 -1
  333. package/fesm5/taiga-ui-addon-charts-components-arc-chart.js +0 -168
  334. package/fesm5/taiga-ui-addon-charts-components-arc-chart.js.map +0 -1
  335. package/fesm5/taiga-ui-addon-charts-components-axes.js +0 -151
  336. package/fesm5/taiga-ui-addon-charts-components-axes.js.map +0 -1
  337. package/fesm5/taiga-ui-addon-charts-components-bar-chart.js +0 -149
  338. package/fesm5/taiga-ui-addon-charts-components-bar-chart.js.map +0 -1
  339. package/fesm5/taiga-ui-addon-charts-components-bar-set.js +0 -104
  340. package/fesm5/taiga-ui-addon-charts-components-bar-set.js.map +0 -1
  341. package/fesm5/taiga-ui-addon-charts-components-bar.js +0 -75
  342. package/fesm5/taiga-ui-addon-charts-components-bar.js.map +0 -1
  343. package/fesm5/taiga-ui-addon-charts-components-legend-item.js +0 -79
  344. package/fesm5/taiga-ui-addon-charts-components-legend-item.js.map +0 -1
  345. package/fesm5/taiga-ui-addon-charts-components-line-chart.js +0 -343
  346. package/fesm5/taiga-ui-addon-charts-components-line-chart.js.map +0 -1
  347. package/fesm5/taiga-ui-addon-charts-components-line-days-chart.js +0 -302
  348. package/fesm5/taiga-ui-addon-charts-components-line-days-chart.js.map +0 -1
  349. package/fesm5/taiga-ui-addon-charts-components-pie-chart.js +0 -255
  350. package/fesm5/taiga-ui-addon-charts-components-pie-chart.js.map +0 -1
  351. package/fesm5/taiga-ui-addon-charts-components-ring-chart.js +0 -89
  352. package/fesm5/taiga-ui-addon-charts-components-ring-chart.js.map +0 -1
  353. package/fesm5/taiga-ui-addon-charts-components.js +0 -15
  354. package/fesm5/taiga-ui-addon-charts-components.js.map +0 -1
  355. package/fesm5/taiga-ui-addon-charts-constants.js +0 -44
  356. package/fesm5/taiga-ui-addon-charts-constants.js.map +0 -1
  357. package/fesm5/taiga-ui-addon-charts-enums.js +0 -19
  358. package/fesm5/taiga-ui-addon-charts-enums.js.map +0 -1
  359. package/fesm5/taiga-ui-addon-charts-interfaces.js +0 -4
  360. package/fesm5/taiga-ui-addon-charts-interfaces.js.map +0 -1
  361. package/fesm5/taiga-ui-addon-charts-types.js +0 -4
  362. package/fesm5/taiga-ui-addon-charts-types.js.map +0 -1
  363. package/fesm5/taiga-ui-addon-charts-utils.js +0 -115
  364. package/fesm5/taiga-ui-addon-charts-utils.js.map +0 -1
  365. package/fesm5/taiga-ui-addon-charts.js +0 -8
  366. package/fesm5/taiga-ui-addon-charts.js.map +0 -1
  367. package/interfaces/ring-chart-context.d.ts +0 -4
  368. package/interfaces/taiga-ui-addon-charts-interfaces.metadata.json +0 -1
  369. package/taiga-ui-addon-charts.metadata.json +0 -1
  370. package/types/color-handler.d.ts +0 -3
  371. package/types/taiga-ui-addon-charts-types.metadata.json +0 -1
  372. package/utils/taiga-ui-addon-charts-utils.metadata.json +0 -1
@@ -1,14 +1,21 @@
1
- var TuiLineDaysChartComponent_1;
2
- import { __decorate, __param } from "tslib";
3
- import { ChangeDetectionStrategy, Component, forwardRef, HostBinding, Inject, Input, Optional, ViewChildren, } from '@angular/core';
1
+ import { __decorate } from "tslib";
2
+ import { ChangeDetectionStrategy, Component, HostBinding, Inject, Input, Optional, ViewChildren, } from '@angular/core';
4
3
  import { TuiLineChartComponent, TuiLineChartHintDirective, } from '@taiga-ui/addon-charts/components/line-chart';
5
- import { EMPTY_ARRAY, EMPTY_QUERY, isPresent, TuiDay, tuiDefaultProp, TuiMonth, tuiPure, } from '@taiga-ui/cdk';
4
+ import { EMPTY_ARRAY, EMPTY_QUERY, TuiDay, tuiDefaultProp, tuiIsNumber, tuiIsPresent, TuiMonth, tuiPure, } from '@taiga-ui/cdk';
5
+ import { TuiDriver } from '@taiga-ui/core';
6
6
  import { TuiLineDaysChartHintDirective } from './line-days-chart-hint.directive';
7
+ import * as i0 from "@angular/core";
8
+ import * as i1 from "@taiga-ui/addon-charts/components/line-chart";
9
+ import * as i2 from "@angular/common";
10
+ import * as i3 from "@taiga-ui/core";
11
+ import * as i4 from "@tinkoff/ng-polymorpheus";
12
+ import * as i5 from "./line-days-chart-hint.directive";
7
13
  const DUMMY = [NaN, NaN];
8
- let TuiLineDaysChartComponent = TuiLineDaysChartComponent_1 = class TuiLineDaysChartComponent {
14
+ export class TuiLineDaysChartComponent {
9
15
  constructor(hintDirective) {
10
16
  this.hintDirective = hintDirective;
11
17
  this.charts = EMPTY_QUERY;
18
+ this.drivers = EMPTY_QUERY;
12
19
  this.y = 0;
13
20
  this.height = 0;
14
21
  this.smoothingFactor = 0;
@@ -56,18 +63,16 @@ let TuiLineDaysChartComponent = TuiLineDaysChartComponent_1 = class TuiLineDaysC
56
63
  return index - offset;
57
64
  }
58
65
  onHovered(day) {
59
- if (!day) {
66
+ if (tuiIsNumber(day)) {
60
67
  this.charts.forEach(chart => chart.onHovered(NaN));
61
68
  return;
62
69
  }
63
70
  const index = TuiMonth.lengthBetween(this.value[0][0], day);
64
71
  const x = TuiDay.lengthBetween(this.value[0][0], day) + this.value[0][0].day - 1;
65
- const array = this.charts.toArray();
66
- const current = array[index];
67
- const { value } = current;
68
- array.forEach(chart => {
72
+ const current = this.charts.get(index);
73
+ this.charts.forEach(chart => {
69
74
  if (chart === current) {
70
- current.onHovered(value.findIndex(point => point[0] === x));
75
+ current.onHovered(current.value.findIndex(point => point[0] === x));
71
76
  }
72
77
  else {
73
78
  chart.onHovered(NaN);
@@ -98,7 +103,7 @@ let TuiLineDaysChartComponent = TuiLineDaysChartComponent_1 = class TuiLineDaysC
98
103
  return Array.from({ length: TuiMonth.lengthBetween(value[0][0], value[value.length - 1][0]) + 1 }, (_, i) => i + value[0][0].month + value[0][0].year * 12)
99
104
  .map(absoluteMonth => value
100
105
  .map(([{ month, year }, y], index) => month + year * 12 === absoluteMonth ? [index + offset, y] : null)
101
- .filter(isPresent))
106
+ .filter(tuiIsPresent))
102
107
  .map((month, index, array) => index === array.length - 1
103
108
  ? month
104
109
  : [...month, array[index + 1].find(day => !isNaN(day[1])) || DUMMY]);
@@ -106,69 +111,88 @@ let TuiLineDaysChartComponent = TuiLineDaysChartComponent_1 = class TuiLineDaysC
106
111
  getMonth(index) {
107
112
  return this.value[index - this.value[0][0].day + 1][0];
108
113
  }
109
- };
110
- TuiLineDaysChartComponent.ctorParameters = () => [
111
- { type: TuiLineDaysChartHintDirective, decorators: [{ type: Optional }, { type: Inject, args: [TuiLineDaysChartHintDirective,] }] }
112
- ];
114
+ }
115
+ TuiLineDaysChartComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiLineDaysChartComponent, deps: [{ token: TuiLineDaysChartHintDirective, optional: true }], target: i0.ɵɵFactoryTarget.Component });
116
+ TuiLineDaysChartComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: TuiLineDaysChartComponent, selector: "tui-line-days-chart", inputs: { valueSetter: ["value", "valueSetter"], y: "y", height: "height", smoothingFactor: "smoothingFactor", hintContent: "hintContent", xStringify: "xStringify", yStringify: "yStringify", dots: "dots" }, host: { properties: { "style.zIndex": "this.zIndex" } }, providers: [
117
+ {
118
+ provide: TuiLineChartHintDirective,
119
+ useExisting: TuiLineDaysChartComponent,
120
+ },
121
+ ], viewQueries: [{ propertyName: "charts", predicate: TuiLineChartComponent, descendants: true }, { propertyName: "drivers", predicate: TuiDriver, descendants: true }], ngImport: i0, template: "<tui-line-chart\n *ngFor=\"let month of months; let first = first\"\n class=\"t-chart\"\n [style.zIndex]=\"zIndex\"\n [dots]=\"dots\"\n [x]=\"first ? 0 : getX(month[0][0])\"\n [y]=\"y\"\n [width]=\"first ? firstWidth : getWidth(month[0][0])\"\n [height]=\"height\"\n [value]=\"month\"\n [smoothingFactor]=\"smoothingFactor\"\n [tuiHintContent]=\"hintContent ? hint : ''\"\n [yStringify]=\"yStringify\"\n [xStringify]=\"xStringify ? daysStringify : null\"\n></tui-line-chart>\n<ng-template\n #hint\n let-point\n>\n <ng-container *polymorpheusOutlet=\"hintContent as text; context: getHintContext(point[0], value)\">\n {{ text }}\n </ng-container>\n</ng-template>\n", styles: [":host{display:block}.t-chart{position:absolute;top:0;left:0;width:100%;height:100%}\n"], components: [{ type: i1.TuiLineChartComponent, selector: "tui-line-chart", inputs: ["value", "x", "y", "width", "height", "smoothingFactor", "xStringify", "yStringify", "filled", "dots"] }], directives: [{ type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i3.TuiHintControllerDirective, selector: "[tuiHintContent]", inputs: ["tuiHintContent", "tuiHintDirection", "tuiHintAppearance", "tuiHintShowDelay", "tuiHintHideDelay"] }, { type: i4.PolymorpheusOutletDirective, selector: "[polymorpheusOutlet]", inputs: ["polymorpheusOutlet", "polymorpheusOutletContext"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
113
122
  __decorate([
114
- ViewChildren(TuiLineChartComponent)
115
- ], TuiLineDaysChartComponent.prototype, "charts", void 0);
116
- __decorate([
117
- Input(`value`),
118
123
  tuiDefaultProp()
119
124
  ], TuiLineDaysChartComponent.prototype, "valueSetter", null);
120
125
  __decorate([
121
- Input(),
122
126
  tuiDefaultProp()
123
127
  ], TuiLineDaysChartComponent.prototype, "y", void 0);
124
128
  __decorate([
125
- Input(),
126
129
  tuiDefaultProp()
127
130
  ], TuiLineDaysChartComponent.prototype, "height", void 0);
128
131
  __decorate([
129
- Input(),
130
132
  tuiDefaultProp()
131
133
  ], TuiLineDaysChartComponent.prototype, "smoothingFactor", void 0);
132
134
  __decorate([
133
- Input(),
134
135
  tuiDefaultProp()
135
136
  ], TuiLineDaysChartComponent.prototype, "hintContent", void 0);
136
137
  __decorate([
137
- Input(),
138
138
  tuiDefaultProp()
139
139
  ], TuiLineDaysChartComponent.prototype, "xStringify", void 0);
140
140
  __decorate([
141
- Input(),
142
141
  tuiDefaultProp()
143
142
  ], TuiLineDaysChartComponent.prototype, "yStringify", void 0);
144
143
  __decorate([
145
- Input(),
146
144
  tuiDefaultProp()
147
145
  ], TuiLineDaysChartComponent.prototype, "dots", void 0);
148
- __decorate([
149
- HostBinding(`style.zIndex`)
150
- ], TuiLineDaysChartComponent.prototype, "zIndex", void 0);
151
146
  __decorate([
152
147
  tuiPure
153
148
  ], TuiLineDaysChartComponent.prototype, "getHintContext", null);
154
149
  __decorate([
155
150
  tuiPure
156
151
  ], TuiLineDaysChartComponent.prototype, "breakMonths", null);
157
- TuiLineDaysChartComponent = TuiLineDaysChartComponent_1 = __decorate([
158
- Component({
159
- selector: `tui-line-days-chart`,
160
- template: "<tui-line-chart\n *ngFor=\"let month of months; let first = first\"\n class=\"t-chart\"\n [style.zIndex]=\"zIndex\"\n [dots]=\"dots\"\n [x]=\"first ? 0 : getX(month[0][0])\"\n [y]=\"y\"\n [width]=\"first ? firstWidth : getWidth(month[0][0])\"\n [height]=\"height\"\n [value]=\"month\"\n [smoothingFactor]=\"smoothingFactor\"\n [hintContent]=\"hintContent ? hint : ''\"\n [yStringify]=\"yStringify\"\n [xStringify]=\"xStringify ? daysStringify : null\"\n></tui-line-chart>\n<ng-template\n #hint\n let-point\n>\n <div\n polymorpheus-outlet\n [content]=\"hintContent\"\n [context]=\"getHintContext(point[0], value)\"\n ></div>\n</ng-template>\n",
161
- changeDetection: ChangeDetectionStrategy.OnPush,
162
- providers: [
163
- {
164
- provide: TuiLineChartHintDirective,
165
- useExisting: forwardRef(() => TuiLineDaysChartComponent_1),
166
- },
167
- ],
168
- styles: [":host{display:block}.t-chart{position:absolute;top:0;left:0;width:100%;height:100%}"]
169
- }),
170
- __param(0, Optional()),
171
- __param(0, Inject(TuiLineDaysChartHintDirective))
172
- ], TuiLineDaysChartComponent);
173
- export { TuiLineDaysChartComponent };
174
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGluZS1kYXlzLWNoYXJ0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0B0YWlnYS11aS9hZGRvbi1jaGFydHMvY29tcG9uZW50cy9saW5lLWRheXMtY2hhcnQvIiwic291cmNlcyI6WyJsaW5lLWRheXMtY2hhcnQuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsT0FBTyxFQUNILHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsVUFBVSxFQUNWLFdBQVcsRUFDWCxNQUFNLEVBQ04sS0FBSyxFQUNMLFFBQVEsRUFFUixZQUFZLEdBQ2YsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUNILHFCQUFxQixFQUNyQix5QkFBeUIsR0FDNUIsTUFBTSw4Q0FBOEMsQ0FBQztBQUN0RCxPQUFPLEVBQ0gsV0FBVyxFQUNYLFdBQVcsRUFDWCxTQUFTLEVBRVQsTUFBTSxFQUNOLGNBQWMsRUFDZCxRQUFRLEVBQ1IsT0FBTyxHQUVWLE1BQU0sZUFBZSxDQUFDO0FBSXZCLE9BQU8sRUFBQyw2QkFBNkIsRUFBQyxNQUFNLGtDQUFrQyxDQUFDO0FBRS9FLE1BQU0sS0FBSyxHQUFhLENBQUMsR0FBRyxFQUFFLEdBQUcsQ0FBQyxDQUFDO0FBY25DLElBQWEseUJBQXlCLGlDQUF0QyxNQUFhLHlCQUF5QjtJQTJEbEMsWUFHcUIsYUFBbUQ7UUFBbkQsa0JBQWEsR0FBYixhQUFhLENBQXNDO1FBNUR2RCxXQUFNLEdBQXFDLFdBQVcsQ0FBQztRQTBCeEUsTUFBQyxHQUFHLENBQUMsQ0FBQztRQUlOLFdBQU0sR0FBRyxDQUFDLENBQUM7UUFJWCxvQkFBZSxHQUFHLENBQUMsQ0FBQztRQUlwQixnQkFBVyxHQUFrRSxFQUFFLENBQUM7UUFJaEYsZUFBVSxHQUFvQyxJQUFJLENBQUM7UUFJbkQsZUFBVSxHQUFvQyxJQUFJLENBQUM7UUFJbkQsU0FBSSxHQUFHLEtBQUssQ0FBQztRQUdiLFdBQU0sR0FBRyxDQUFDLENBQUM7UUFFWCxVQUFLLEdBQW9DLEVB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LCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICAgIENvbXBvbmVudCxcbiAgICBmb3J3YXJkUmVmLFxuICAgIEhvc3RCaW5kaW5nLFxuICAgIEluamVjdCxcbiAgICBJbnB1dCxcbiAgICBPcHRpb25hbCxcbiAgICBRdWVyeUxpc3QsXG4gICAgVmlld0NoaWxkcmVuLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gICAgVHVpTGluZUNoYXJ0Q29tcG9uZW50LFxuICAgIFR1aUxpbmVDaGFydEhpbnREaXJlY3RpdmUsXG59IGZyb20gJ0B0YWlnYS11aS9hZGRvbi1jaGFydHMvY29tcG9uZW50cy9saW5lLWNoYXJ0JztcbmltcG9ydCB7XG4gICAgRU1QVFlfQVJSQVksXG4gICAgRU1QVFlfUVVFUlksXG4gICAgaXNQcmVzZW50LFxuICAgIFR1aUNvbnRleHRXaXRoSW1wbGljaXQsXG4gICAgVHVpRGF5LFxuICAgIHR1aURlZmF1bHRQcm9wLFxuICAgIFR1aU1vbnRoLFxuICAgIHR1aVB1cmUsXG4gICAgVHVpU3RyaW5nSGFuZGxlcixcbn0gZnJvbSAnQHRhaWdhLXVpL2Nkayc7XG5pbXBvcnQge1R1aVBvaW50fSBmcm9tICdAdGFpZ2EtdWkvY29yZSc7XG5pbXBvcnQge1BvbHltb3JwaGV1c0NvbnRlbnR9IGZyb20gJ0B0aW5rb2ZmL25nLXBvbHltb3JwaGV1cyc7XG5cbmltcG9ydCB7VHVpTGluZURheXNDaGFydEhpbnREaXJlY3RpdmV9IGZyb20gJy4vbGluZS1kYXlzLWNoYXJ0LWhpbnQuZGlyZWN0aXZlJztcblxuY29uc3QgRFVNTVk6IFR1aVBvaW50ID0gW05hTiwgTmFOXTtcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6IGB0dWktbGluZS1kYXlzLWNoYXJ0YCxcbiAgICB0ZW1wbGF0ZVVybDogYC4vbGluZS1kYXlzLWNoYXJ0LnRlbXBsYXRlLmh0bWxgLFxuICAgIHN0eWxlVXJsczogW2AuL2xpbmUtZGF5cy1jaGFydC5zdHlsZS5sZXNzYF0sXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIHtcbiAgICAgICAgICAgIHByb3ZpZGU6IFR1aUxpbmVDaGFydEhpbnREaXJlY3RpdmUsXG4gICAgICAgICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBUdWlMaW5lRGF5c0NoYXJ0Q29tcG9uZW50KSxcbiAgICAgICAgfSxcbiAgICBdLFxufSlcbmV4cG9ydCBjbGFzcyBUdWlMaW5lRGF5c0NoYXJ0Q29tcG9uZW50IHtcbiAgICBAVmlld0NoaWxkcmVuKFR1aUxpbmVDaGFydENvbXBvbmVudClcbiAgICBwcml2YXRlIHJlYWRvbmx5IGNoYXJ0czogUXVlcnlMaXN0PFR1aUxpbmVDaGFydENvbXBvbmVudD4gPSBFTVBUWV9RVUVSWTtcblxuICAgIEBJbnB1dChgdmFsdWVgKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgc2V0IHZhbHVlU2V0dGVyKHZhbHVlOiBSZWFkb25seUFycmF5PFtUdWlEYXksIG51bWJlcl0+KSB7XG4gICAgICAgIGlmICghdmFsdWUubGVuZ3RoKSB7XG4gICAgICAgICAgICB0aGlzLnZhbHVlID0gW107XG5cbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IHN0YXJ0ID0gdmFsdWVbMF1bMF07XG4gICAgICAgIGNvbnN0IG11dGFibGUgPSBbLi4udmFsdWVdO1xuICAgICAgICBjb25zdCBsZW5ndGggPSBUdWlEYXkubGVuZ3RoQmV0d2VlbihzdGFydCwgdmFsdWVbdmFsdWUubGVuZ3RoIC0gMV1bMF0pICsgMTtcblxuICAgICAgICB0aGlzLnZhbHVlID0gQXJyYXkuZnJvbSh7bGVuZ3RofSwgKF8sIGRheSkgPT4ge1xuICAgICAgICAgICAgY29uc3QgY3VycmVudERheSA9IHN0YXJ0LmFwcGVuZCh7ZGF5fSk7XG4gICAgICAgICAgICBjb25zdCBzaGlmdGVkID0gY3VycmVudERheS5kYXlTYW1lKG11dGFibGVbMF1bMF0pID8gbXV0YWJsZS5zaGlmdCgpIDogbnVsbDtcbiAgICAgICAgICAgIGNvbnN0IGN1cnJlbnRWYWx1ZSA9IHNoaWZ0ZWQgPyBzaGlmdGVkWzFdIDogTmFOO1xuXG4gICAgICAgICAgICByZXR1cm4gW2N1cnJlbnREYXksIGN1cnJlbnRWYWx1ZV0gYXMgW1R1aURheSwgbnVtYmVyXTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgQElucHV0KClcbiAgICBAdHVpRGVmYXVsdFByb3AoKVxuICAgIHkgPSAwO1xuXG4gICAgQElucHV0KClcbiAgICBAdHVpRGVmYXVsdFByb3AoKVxuICAgIGhlaWdodCA9IDA7XG5cbiAgICBASW5wdXQoKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgc21vb3RoaW5nRmFjdG9yID0gMDtcblxuICAgIEBJbnB1dCgpXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICBoaW50Q29udGVudDogUG9seW1vcnBoZXVzQ29udGVudDxUdWlDb250ZXh0V2l0aEltcGxpY2l0PFtUdWlEYXksIG51bWJlcl0+PiA9IGBgO1xuXG4gICAgQElucHV0KClcbiAgICBAdHVpRGVmYXVsdFByb3AoKVxuICAgIHhTdHJpbmdpZnk6IFR1aVN0cmluZ0hhbmRsZXI8VHVpRGF5PiB8IG51bGwgPSBudWxsO1xuXG4gICAgQElucHV0KClcbiAgICBAdHVpRGVmYXVsdFByb3AoKVxuICAgIHlTdHJpbmdpZnk6IFR1aVN0cmluZ0hhbmRsZXI8bnVtYmVyPiB8IG51bGwgPSBudWxsO1xuXG4gICAgQElucHV0KClcbiAgICBAdHVpRGVmYXVsdFByb3AoKVxuICAgIGRvdHMgPSBmYWxzZTtcblxuICAgIEBIb3N0QmluZGluZyhgc3R5bGUuekluZGV4YClcbiAgICB6SW5kZXggPSAwO1xuXG4gICAgdmFsdWU6IFJlYWRvbmx5QXJyYXk8W1R1aURheSwgbnVtYmVyXT4gPSBbXTtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBAT3B0aW9uYWwoKVxuICAgICAgICBASW5qZWN0KFR1aUxpbmVEYXlzQ2hhcnRIaW50RGlyZWN0aXZlKVxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IGhpbnREaXJlY3RpdmU6IFR1aUxpbmVEYXlzQ2hhcnRIaW50RGlyZWN0aXZlIHwgbnVsbCxcbiAgICApIHt9XG5cbiAgICBnZXQgbW9udGhzKCk6IFJlYWRvbmx5QXJyYXk8cmVhZG9ubHkgVHVpUG9pbnRbXT4ge1xuICAgICAgICByZXR1cm4gdGhpcy52YWx1ZS5sZW5ndGggPyB0aGlzLmJyZWFrTW9udGhzKHRoaXMudmFsdWUpIDogRU1QVFlfQVJSQVk7XG4gICAgfVxuXG4gICAgZ2V0IGZpcnN0V2lkdGgoKTogbnVtYmVyIHtcbiAgICAgICAgcmV0dXJuIHRoaXMubW9udGhzLmxlbmd0aCAqIHRoaXMudmFsdWVbMF1bMF0uZGF5c0NvdW50O1xuICAgIH1cblxuICAgIGdldCBoaW50KCk6XG4gICAgICAgIHwgUG9seW1vcnBoZXVzQ29udGVudDxUdWlDb250ZXh0V2l0aEltcGxpY2l0PFtUdWlEYXksIG51bWJlcl0+PlxuICAgICAgICB8IFBvbHltb3JwaGV1c0NvbnRlbnQ8VHVpQ29udGV4dFdpdGhJbXBsaWNpdDxyZWFkb25seSBUdWlQb2ludFtdPj4ge1xuICAgICAgICByZXR1cm4gdGhpcy5oaW50RGlyZWN0aXZlID8gdGhpcy5oaW50RGlyZWN0aXZlLmhpbnQgOiB0aGlzLmhpbnRDb250ZW50O1xuICAgIH1cblxuICAgIEB0dWlQdXJlXG4gICAgZ2V0SGludENvbnRleHQoXG4gICAgICAgIHg6IG51bWJlcixcbiAgICAgICAgdmFsdWU6IFJlYWRvbmx5QXJyYXk8W1R1aURheSwgbnVtYmVyXT4sXG4gICAgKTogVHVpQ29udGV4dFdpdGhJbXBsaWNpdDxbVHVpRGF5LCBudW1iZXJdPiB7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAkaW1wbGljaXQ6IHZhbHVlW3ggLSB2YWx1ZVswXVswXS5kYXkgKyAxXSxcbiAgICAgICAgfTtcbiAgICB9XG5cbiAgICByZWFkb25seSBkYXlzU3RyaW5naWZ5OiBUdWlTdHJpbmdIYW5kbGVyPG51bWJlcj4gPSBpbmRleCA9PlxuICAgICAgICB0aGlzLnhTdHJpbmdpZnkgPyB0aGlzLnhTdHJpbmdpZnkodGhpcy5nZXRNb250aChpbmRleCkpIDogYGA7XG5cbiAgICBnZXRYKGluZGV4OiBudW1iZXIpOiBudW1iZXIge1xuICAgICAgICBjb25zdCBjdXJyZW50ID0gdGhpcy5nZXRNb250aChpbmRleCk7XG4gICAgICAgIGNvbnN0IG1vbnRocyA9IFR1aU1vbnRoLmxlbmd0aEJldHdlZW4odGhpcy52YWx1ZVswXVswXSwgY3VycmVudCk7XG4gICAgICAgIGNvbnN0IG9mZnNldCA9IG1vbnRocyAqIGN1cnJlbnQuZGF5c0NvdW50O1xuXG4gICAgICAgIHJldHVybiBpbmRleCAtIG9mZnNldDtcbiAgICB9XG5cbiAgICBvbkhvdmVyZWQoZGF5OiBUdWlEYXkgfCBudWxsKTogdm9pZCB7XG4gICAgICAgIGlmICghZGF5KSB7XG4gICAgICAgICAgICB0aGlzLmNoYXJ0cy5mb3JFYWNoKGNoYXJ0ID0+IGNoYXJ0Lm9uSG92ZXJlZChOYU4pKTtcblxuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgaW5kZXggPSBUdWlNb250aC5sZW5ndGhCZXR3ZWVuKHRoaXMudmFsdWVbMF1bMF0sIGRheSk7XG4gICAgICAgIGNvbnN0IHggPSBUdWlEYXkubGVuZ3RoQmV0d2Vlbih0aGlzLnZhbHVlWzBdWzBdLCBkYXkpICsgdGhpcy52YWx1ZVswXVswXS5kYXkgLSAxO1xuICAgICAgICBjb25zdCBhcnJheSA9IHRoaXMuY2hhcnRzLnRvQXJyYXkoKTtcbiAgICAgICAgY29uc3QgY3VycmVudCA9IGFycmF5W2luZGV4XTtcbiAgICAgICAgY29uc3Qge3ZhbHVlfSA9IGN1cnJlbnQ7XG5cbiAgICAgICAgYXJyYXkuZm9yRWFjaChjaGFydCA9PiB7XG4gICAgICAgICAgICBpZiAoY2hhcnQgPT09IGN1cnJlbnQpIHtcbiAgICAgICAgICAgICAgICBjdXJyZW50Lm9uSG92ZXJlZCh2YWx1ZS5maW5kSW5kZXgocG9pbnQgPT4gcG9pbnRbMF0gPT09IHgpKTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgY2hhcnQub25Ib3ZlcmVkKE5hTik7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHJhaXNlKGluZGV4OiBudW1iZXIsIHt2YWx1ZX06IFR1aUxpbmVDaGFydENvbXBvbmVudCk6IHZvaWQge1xuICAgICAgICBjb25zdCB4ID0gdmFsdWVbaW5kZXhdWzBdO1xuICAgICAgICBjb25zdCBtb250aCA9IHRoaXMuZ2V0TW9udGgoeCk7XG5cbiAgICAgICAgaWYgKHRoaXMuaGludERpcmVjdGl2ZSkge1xuICAgICAgICAgICAgdGhpcy5oaW50RGlyZWN0aXZlLnJhaXNlKG1vbnRoKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMub25Ib3ZlcmVkKG1vbnRoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGdldFdpZHRoKGluZGV4OiBudW1iZXIpOiBudW1iZXIge1xuICAgICAgICByZXR1cm4gdGhpcy5nZXRNb250aChpbmRleCkuZGF5c0NvdW50ICogdGhpcy5tb250aHMubGVuZ3RoO1xuICAgIH1cblxuICAgIGdldENvbnRleHQoXG4gICAgICAgIGluZGV4OiBudW1iZXIsXG4gICAgICAgIHt2YWx1ZX06IFR1aUxpbmVDaGFydENvbXBvbmVudCxcbiAgICApOiBUdWlDb250ZXh0V2l0aEltcGxpY2l0PHVua25vd24+IHtcbiAgICAgICAgY29uc3QgeCA9IHZhbHVlW2luZGV4XVswXTtcblxuICAgICAgICByZXR1cm4gdGhpcy5oaW50RGlyZWN0aXZlXG4gICAgICAgICAgICA/IHRoaXMuaGludERpcmVjdGl2ZS5nZXRDb250ZXh0KHRoaXMuZ2V0TW9udGgoeCkpXG4gICAgICAgICAgICA6IHRoaXMuZ2V0SGludENvbnRleHQoeCwgdGhpcy52YWx1ZSk7XG4gICAgfVxuXG4gICAgQHR1aVB1cmVcbiAgICBwcml2YXRlIGJyZWFrTW9udGhzKFxuICAgICAgICB2YWx1ZTogUmVhZG9ubHlBcnJheTxbVHVpRGF5LCBudW1iZXJdPixcbiAgICApOiBSZWFkb25seUFycmF5PHJlYWRvbmx5IFR1aVBvaW50W10+IHtcbiAgICAgICAgY29uc3Qgb2Zmc2V0ID0gdmFsdWVbMF1bMF0uZGF5IC0gMTtcblxuICAgICAgICByZXR1cm4gQXJyYXkuZnJvbShcbiAgICAgICAgICAgIHtsZW5ndGg6IFR1aU1vbnRoLmxlbmd0aEJldHdlZW4odmFsdWVbMF1bMF0sIHZhbHVlW3ZhbHVlLmxlbmd0aCAtIDFdWzBdKSArIDF9LFxuICAgICAgICAgICAgKF8sIGkpID0+IGkgKyB2YWx1ZVswXVswXS5tb250aCArIHZhbHVlWzBdWzBdLnllYXIgKiAxMixcbiAgICAgICAgKVxuICAgICAgICAgICAgLm1hcChhYnNvbHV0ZU1vbnRoID0+XG4gICAgICAgICAgICAgICAgdmFsdWVcbiAgICAgICAgICAgICAgICAgICAgLm1hcDxUdWlQb2ludCB8IG51bGw+KChbe21vbnRoLCB5ZWFyfSwgeV0sIGluZGV4KSA9PlxuICAgICAgICAgICAgICAgICAgICAgICAgbW9udGggKyB5ZWFyICogMTIgPT09IGFic29sdXRlTW9udGggPyBbaW5kZXggKyBvZmZzZXQsIHldIDogbnVsbCxcbiAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICAuZmlsdGVyKGlzUHJlc2VudCksXG4gICAgICAgICAgICApXG4gICAgICAgICAgICAubWFwKChtb250aCwgaW5kZXgsIGFycmF5KSA9PlxuICAgICAgICAgICAgICAgIGluZGV4ID09PSBhcnJheS5sZW5ndGggLSAxXG4gICAgICAgICAgICAgICAgICAgID8gbW9udGhcbiAgICAgICAgICAgICAgICAgICAgOiBbLi4ubW9udGgsIGFycmF5W2luZGV4ICsgMV0uZmluZChkYXkgPT4gIWlzTmFOKGRheVsxXSkpIHx8IERVTU1ZXSxcbiAgICAgICAgICAgICk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXRNb250aChpbmRleDogbnVtYmVyKTogVHVpRGF5IHtcbiAgICAgICAgcmV0dXJuIHRoaXMudmFsdWVbaW5kZXggLSB0aGlzLnZhbHVlWzBdWzBdLmRheSArIDFdWzBdO1xuICAgIH1cbn1cbiJdfQ==
152
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiLineDaysChartComponent, decorators: [{
153
+ type: Component,
154
+ args: [{
155
+ selector: `tui-line-days-chart`,
156
+ templateUrl: `./line-days-chart.template.html`,
157
+ styleUrls: [`./line-days-chart.style.less`],
158
+ changeDetection: ChangeDetectionStrategy.OnPush,
159
+ providers: [
160
+ {
161
+ provide: TuiLineChartHintDirective,
162
+ useExisting: TuiLineDaysChartComponent,
163
+ },
164
+ ],
165
+ }]
166
+ }], ctorParameters: function () { return [{ type: i5.TuiLineDaysChartHintDirective, decorators: [{
167
+ type: Optional
168
+ }, {
169
+ type: Inject,
170
+ args: [TuiLineDaysChartHintDirective]
171
+ }] }]; }, propDecorators: { charts: [{
172
+ type: ViewChildren,
173
+ args: [TuiLineChartComponent]
174
+ }], drivers: [{
175
+ type: ViewChildren,
176
+ args: [TuiDriver]
177
+ }], valueSetter: [{
178
+ type: Input,
179
+ args: [`value`]
180
+ }], y: [{
181
+ type: Input
182
+ }], height: [{
183
+ type: Input
184
+ }], smoothingFactor: [{
185
+ type: Input
186
+ }], hintContent: [{
187
+ type: Input
188
+ }], xStringify: [{
189
+ type: Input
190
+ }], yStringify: [{
191
+ type: Input
192
+ }], dots: [{
193
+ type: Input
194
+ }], zIndex: [{
195
+ type: HostBinding,
196
+ args: [`style.zIndex`]
197
+ }], getHintContext: [], breakMonths: [] } });
198
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGluZS1kYXlzLWNoYXJ0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FkZG9uLWNoYXJ0cy9jb21wb25lbnRzL2xpbmUtZGF5cy1jaGFydC9saW5lLWRheXMtY2hhcnQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYWRkb24tY2hhcnRzL2NvbXBvbmVudHMvbGluZS1kYXlzLWNoYXJ0L2xpbmUtZGF5cy1jaGFydC50ZW1wbGF0ZS5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQ0gsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxXQUFXLEVBQ1gsTUFBTSxFQUNOLEtBQUssRUFDTCxRQUFRLEVBRVIsWUFBWSxHQUNmLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFDSCxxQkFBcUIsRUFDckIseUJBQXlCLEdBQzVCLE1BQU0sOENBQThDLENBQUM7QUFDdEQsT0FBTyxFQUNILFdBQVcsRUFDWCxXQUFXLEVBRVgsTUFBTSxFQUNOLGNBQWMsRUFDZCxXQUFXLEVBQ1gsWUFBWSxFQUNaLFFBQVEsRUFDUixPQUFPLEdBRVYsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFDLFNBQVMsRUFBVyxNQUFNLGdCQUFnQixDQUFDO0FBSW5ELE9BQU8sRUFBQyw2QkFBNkIsRUFBQyxNQUFNLGtDQUFrQyxDQUFDOzs7Ozs7O0FBRS9FLE1BQU0sS0FBSyxHQUFhLENBQUMsR0FBRyxFQUFFLEdBQUcsQ0FBQyxDQUFDO0FBY25DLE1BQU0sT0FBTyx5QkFBeUI7SUE4RGxDLFlBR3FCLGFBQW1EO1FBQW5ELGtCQUFhLEdBQWIsYUFBYSxDQUFzQztRQS9EdkQsV0FBTSxHQUFxQyxXQUFXLENBQUM7UUFHL0QsWUFBTyxHQUFtQyxXQUFXLENBQUM7UUEwQi9ELE1BQUMsR0FBRyxDQUFDLENBQUM7UUFJTixXQUFNLEdBQUcsQ0FBQyxDQUFDO1FBSVgsb0JBQWUs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QUkxQixPQUFPO3NCQURmLFlBQVk7dUJBQUMsU0FBUztnQkFLbkIsV0FBVztzQkFGZCxLQUFLO3VCQUFDLE9BQU87Z0JBd0JkLENBQUM7c0JBRkEsS0FBSztnQkFNTixNQUFNO3NCQUZMLEtBQUs7Z0JBTU4sZUFBZTtzQkFGZCxLQUFLO2dCQU1OLFdBQVc7c0JBRlYsS0FBSztnQkFNTixVQUFVO3NCQUZULEtBQUs7Z0JBTU4sVUFBVTtzQkFGVCxLQUFLO2dCQU1OLElBQUk7c0JBRkgsS0FBSztnQkFLTixNQUFNO3NCQURMLFdBQVc7dUJBQUMsY0FBYztnQkEwQjNCLGNBQWMsTUFtRU4sV0FBVyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gICAgQ29tcG9uZW50LFxuICAgIEhvc3RCaW5kaW5nLFxuICAgIEluamVjdCxcbiAgICBJbnB1dCxcbiAgICBPcHRpb25hbCxcbiAgICBRdWVyeUxpc3QsXG4gICAgVmlld0NoaWxkcmVuLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gICAgVHVpTGluZUNoYXJ0Q29tcG9uZW50LFxuICAgIFR1aUxpbmVDaGFydEhpbnREaXJlY3RpdmUsXG59IGZyb20gJ0B0YWlnYS11aS9hZGRvbi1jaGFydHMvY29tcG9uZW50cy9saW5lLWNoYXJ0JztcbmltcG9ydCB7XG4gICAgRU1QVFlfQVJSQVksXG4gICAgRU1QVFlfUVVFUlksXG4gICAgVHVpQ29udGV4dFdpdGhJbXBsaWNpdCxcbiAgICBUdWlEYXksXG4gICAgdHVpRGVmYXVsdFByb3AsXG4gICAgdHVpSXNOdW1iZXIsXG4gICAgdHVpSXNQcmVzZW50LFxuICAgIFR1aU1vbnRoLFxuICAgIHR1aVB1cmUsXG4gICAgVHVpU3RyaW5nSGFuZGxlcixcbn0gZnJvbSAnQHRhaWdhLXVpL2Nkayc7XG5pbXBvcnQge1R1aURyaXZlciwgVHVpUG9pbnR9IGZyb20gJ0B0YWlnYS11aS9jb3JlJztcbmltcG9ydCB7UG9seW1vcnBoZXVzQ29udGVudH0gZnJvbSAnQHRpbmtvZmYvbmctcG9seW1vcnBoZXVzJztcbmltcG9ydCB7T2JzZXJ2YWJsZX0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7VHVpTGluZURheXNDaGFydEhpbnREaXJlY3RpdmV9IGZyb20gJy4vbGluZS1kYXlzLWNoYXJ0LWhpbnQuZGlyZWN0aXZlJztcblxuY29uc3QgRFVNTVk6IFR1aVBvaW50ID0gW05hTiwgTmFOXTtcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6IGB0dWktbGluZS1kYXlzLWNoYXJ0YCxcbiAgICB0ZW1wbGF0ZVVybDogYC4vbGluZS1kYXlzLWNoYXJ0LnRlbXBsYXRlLmh0bWxgLFxuICAgIHN0eWxlVXJsczogW2AuL2xpbmUtZGF5cy1jaGFydC5zdHlsZS5sZXNzYF0sXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIHtcbiAgICAgICAgICAgIHByb3ZpZGU6IFR1aUxpbmVDaGFydEhpbnREaXJlY3RpdmUsXG4gICAgICAgICAgICB1c2VFeGlzdGluZzogVHVpTGluZURheXNDaGFydENvbXBvbmVudCxcbiAgICAgICAgfSxcbiAgICBdLFxufSlcbmV4cG9ydCBjbGFzcyBUdWlMaW5lRGF5c0NoYXJ0Q29tcG9uZW50IHtcbiAgICBAVmlld0NoaWxkcmVuKFR1aUxpbmVDaGFydENvbXBvbmVudClcbiAgICBwcml2YXRlIHJlYWRvbmx5IGNoYXJ0czogUXVlcnlMaXN0PFR1aUxpbmVDaGFydENvbXBvbmVudD4gPSBFTVBUWV9RVUVSWTtcblxuICAgIEBWaWV3Q2hpbGRyZW4oVHVpRHJpdmVyKVxuICAgIHJlYWRvbmx5IGRyaXZlcnM6IFF1ZXJ5TGlzdDxPYnNlcnZhYmxlPGJvb2xlYW4+PiA9IEVNUFRZX1FVRVJZO1xuXG4gICAgQElucHV0KGB2YWx1ZWApXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICBzZXQgdmFsdWVTZXR0ZXIodmFsdWU6IFJlYWRvbmx5QXJyYXk8W1R1aURheSwgbnVtYmVyXT4pIHtcbiAgICAgICAgaWYgKCF2YWx1ZS5sZW5ndGgpIHtcbiAgICAgICAgICAgIHRoaXMudmFsdWUgPSBbXTtcblxuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3Qgc3RhcnQgPSB2YWx1ZVswXVswXTtcbiAgICAgICAgY29uc3QgbXV0YWJsZSA9IFsuLi52YWx1ZV07XG4gICAgICAgIGNvbnN0IGxlbmd0aCA9IFR1aURheS5sZW5ndGhCZXR3ZWVuKHN0YXJ0LCB2YWx1ZVt2YWx1ZS5sZW5ndGggLSAxXVswXSkgKyAxO1xuXG4gICAgICAgIHRoaXMudmFsdWUgPSBBcnJheS5mcm9tKHtsZW5ndGh9LCAoXywgZGF5KSA9PiB7XG4gICAgICAgICAgICBjb25zdCBjdXJyZW50RGF5ID0gc3RhcnQuYXBwZW5kKHtkYXl9KTtcbiAgICAgICAgICAgIGNvbnN0IHNoaWZ0ZWQgPSBjdXJyZW50RGF5LmRheVNhbWUobXV0YWJsZVswXVswXSkgPyBtdXRhYmxlLnNoaWZ0KCkgOiBudWxsO1xuICAgICAgICAgICAgY29uc3QgY3VycmVudFZhbHVlID0gc2hpZnRlZCA/IHNoaWZ0ZWRbMV0gOiBOYU47XG5cbiAgICAgICAgICAgIHJldHVybiBbY3VycmVudERheSwgY3VycmVudFZhbHVlXSBhcyBbVHVpRGF5LCBudW1iZXJdO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBASW5wdXQoKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgeSA9IDA7XG5cbiAgICBASW5wdXQoKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgaGVpZ2h0ID0gMDtcblxuICAgIEBJbnB1dCgpXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICBzbW9vdGhpbmdGYWN0b3IgPSAwO1xuXG4gICAgQElucHV0KClcbiAgICBAdHVpRGVmYXVsdFByb3AoKVxuICAgIGhpbnRDb250ZW50OiBQb2x5bW9ycGhldXNDb250ZW50PFR1aUNvbnRleHRXaXRoSW1wbGljaXQ8W1R1aURheSwgbnVtYmVyXT4+ID0gYGA7XG5cbiAgICBASW5wdXQoKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgeFN0cmluZ2lmeTogVHVpU3RyaW5nSGFuZGxlcjxUdWlEYXk+IHwgbnVsbCA9IG51bGw7XG5cbiAgICBASW5wdXQoKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgeVN0cmluZ2lmeTogVHVpU3RyaW5nSGFuZGxlcjxudW1iZXI+IHwgbnVsbCA9IG51bGw7XG5cbiAgICBASW5wdXQoKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgZG90cyA9IGZhbHNlO1xuXG4gICAgQEhvc3RCaW5kaW5nKGBzdHlsZS56SW5kZXhgKVxuICAgIHpJbmRleCA9IDA7XG5cbiAgICB2YWx1ZTogUmVhZG9ubHlBcnJheTxbVHVpRGF5LCBudW1iZXJdPiA9IFtdO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIEBPcHRpb25hbCgpXG4gICAgICAgIEBJbmplY3QoVHVpTGluZURheXNDaGFydEhpbnREaXJlY3RpdmUpXG4gICAgICAgIHByaXZhdGUgcmVhZG9ubHkgaGludERpcmVjdGl2ZTogVHVpTGluZURheXNDaGFydEhpbnREaXJlY3RpdmUgfCBudWxsLFxuICAgICkge31cblxuICAgIGdldCBtb250aHMoKTogUmVhZG9ubHlBcnJheTxyZWFkb25seSBUdWlQb2ludFtdPiB7XG4gICAgICAgIHJldHVybiB0aGlzLnZhbHVlLmxlbmd0aCA/IHRoaXMuYnJlYWtNb250aHModGhpcy52YWx1ZSkgOiBFTVBUWV9BUlJBWTtcbiAgICB9XG5cbiAgICBnZXQgZmlyc3RXaWR0aCgpOiBudW1iZXIge1xuICAgICAgICByZXR1cm4gdGhpcy5tb250aHMubGVuZ3RoICogdGhpcy52YWx1ZVswXVswXS5kYXlzQ291bnQ7XG4gICAgfVxuXG4gICAgZ2V0IGhpbnQoKTpcbiAgICAgICAgfCBQb2x5bW9ycGhldXNDb250ZW50PFR1aUNvbnRleHRXaXRoSW1wbGljaXQ8W1R1aURheSwgbnVtYmVyXT4+XG4gICAgICAgIHwgUG9seW1vcnBoZXVzQ29udGVudDxUdWlDb250ZXh0V2l0aEltcGxpY2l0PHJlYWRvbmx5IFR1aVBvaW50W10+PiB7XG4gICAgICAgIHJldHVybiB0aGlzLmhpbnREaXJlY3RpdmUgPyB0aGlzLmhpbnREaXJlY3RpdmUuaGludCA6IHRoaXMuaGludENvbnRlbnQ7XG4gICAgfVxuXG4gICAgQHR1aVB1cmVcbiAgICBnZXRIaW50Q29udGV4dChcbiAgICAgICAgeDogbnVtYmVyLFxuICAgICAgICB2YWx1ZTogUmVhZG9ubHlBcnJheTxbVHVpRGF5LCBudW1iZXJdPixcbiAgICApOiBUdWlDb250ZXh0V2l0aEltcGxpY2l0PFtUdWlEYXksIG51bWJlcl0+IHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICRpbXBsaWNpdDogdmFsdWVbeCAtIHZhbHVlWzBdWzBdLmRheSArIDFdLFxuICAgICAgICB9O1xuICAgIH1cblxuICAgIHJlYWRvbmx5IGRheXNTdHJpbmdpZnk6IFR1aVN0cmluZ0hhbmRsZXI8bnVtYmVyPiA9IGluZGV4ID0+XG4gICAgICAgIHRoaXMueFN0cmluZ2lmeSA/IHRoaXMueFN0cmluZ2lmeSh0aGlzLmdldE1vbnRoKGluZGV4KSkgOiBgYDtcblxuICAgIGdldFgoaW5kZXg6IG51bWJlcik6IG51bWJlciB7XG4gICAgICAgIGNvbnN0IGN1cnJlbnQgPSB0aGlzLmdldE1vbnRoKGluZGV4KTtcbiAgICAgICAgY29uc3QgbW9udGhzID0gVHVpTW9udGgubGVuZ3RoQmV0d2Vlbih0aGlzLnZhbHVlWzBdWzBdLCBjdXJyZW50KTtcbiAgICAgICAgY29uc3Qgb2Zmc2V0ID0gbW9udGhzICogY3VycmVudC5kYXlzQ291bnQ7XG5cbiAgICAgICAgcmV0dXJuIGluZGV4IC0gb2Zmc2V0O1xuICAgIH1cblxuICAgIG9uSG92ZXJlZChkYXk6IFR1aURheSB8IG51bWJlcik6IHZvaWQge1xuICAgICAgICBpZiAodHVpSXNOdW1iZXIoZGF5KSkge1xuICAgICAgICAgICAgdGhpcy5jaGFydHMuZm9yRWFjaChjaGFydCA9PiBjaGFydC5vbkhvdmVyZWQoTmFOKSk7XG5cbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IGluZGV4ID0gVHVpTW9udGgubGVuZ3RoQmV0d2Vlbih0aGlzLnZhbHVlWzBdWzBdLCBkYXkpO1xuICAgICAgICBjb25zdCB4ID0gVHVpRGF5Lmxlbmd0aEJldHdlZW4odGhpcy52YWx1ZVswXVswXSwgZGF5KSArIHRoaXMudmFsdWVbMF1bMF0uZGF5IC0gMTtcbiAgICAgICAgY29uc3QgY3VycmVudCA9IHRoaXMuY2hhcnRzLmdldChpbmRleCk7XG5cbiAgICAgICAgdGhpcy5jaGFydHMuZm9yRWFjaChjaGFydCA9PiB7XG4gICAgICAgICAgICBpZiAoY2hhcnQgPT09IGN1cnJlbnQpIHtcbiAgICAgICAgICAgICAgICBjdXJyZW50Lm9uSG92ZXJlZChjdXJyZW50LnZhbHVlLmZpbmRJbmRleChwb2ludCA9PiBwb2ludFswXSA9PT0geCkpO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICBjaGFydC5vbkhvdmVyZWQoTmFOKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcmFpc2UoaW5kZXg6IG51bWJlciwge3ZhbHVlfTogVHVpTGluZUNoYXJ0Q29tcG9uZW50KTogdm9pZCB7XG4gICAgICAgIGNvbnN0IHggPSB2YWx1ZVtpbmRleF1bMF07XG4gICAgICAgIGNvbnN0IG1vbnRoID0gdGhpcy5nZXRNb250aCh4KTtcblxuICAgICAgICBpZiAodGhpcy5oaW50RGlyZWN0aXZlKSB7XG4gICAgICAgICAgICB0aGlzLmhpbnREaXJlY3RpdmUucmFpc2UobW9udGgpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5vbkhvdmVyZWQobW9udGgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgZ2V0V2lkdGgoaW5kZXg6IG51bWJlcik6IG51bWJlciB7XG4gICAgICAgIHJldHVybiB0aGlzLmdldE1vbnRoKGluZGV4KS5kYXlzQ291bnQgKiB0aGlzLm1vbnRocy5sZW5ndGg7XG4gICAgfVxuXG4gICAgZ2V0Q29udGV4dChcbiAgICAgICAgaW5kZXg6IG51bWJlcixcbiAgICAgICAge3ZhbHVlfTogVHVpTGluZUNoYXJ0Q29tcG9uZW50LFxuICAgICk6IFR1aUNvbnRleHRXaXRoSW1wbGljaXQ8dW5rbm93bj4ge1xuICAgICAgICBjb25zdCB4ID0gdmFsdWVbaW5kZXhdWzBdO1xuXG4gICAgICAgIHJldHVybiB0aGlzLmhpbnREaXJlY3RpdmVcbiAgICAgICAgICAgID8gdGhpcy5oaW50RGlyZWN0aXZlLmdldENvbnRleHQodGhpcy5nZXRNb250aCh4KSlcbiAgICAgICAgICAgIDogdGhpcy5nZXRIaW50Q29udGV4dCh4LCB0aGlzLnZhbHVlKTtcbiAgICB9XG5cbiAgICBAdHVpUHVyZVxuICAgIHByaXZhdGUgYnJlYWtNb250aHMoXG4gICAgICAgIHZhbHVlOiBSZWFkb25seUFycmF5PFtUdWlEYXksIG51bWJlcl0+LFxuICAgICk6IFJlYWRvbmx5QXJyYXk8cmVhZG9ubHkgVHVpUG9pbnRbXT4ge1xuICAgICAgICBjb25zdCBvZmZzZXQgPSB2YWx1ZVswXVswXS5kYXkgLSAxO1xuXG4gICAgICAgIHJldHVybiBBcnJheS5mcm9tKFxuICAgICAgICAgICAge2xlbmd0aDogVHVpTW9udGgubGVuZ3RoQmV0d2Vlbih2YWx1ZVswXVswXSwgdmFsdWVbdmFsdWUubGVuZ3RoIC0gMV1bMF0pICsgMX0sXG4gICAgICAgICAgICAoXywgaSkgPT4gaSArIHZhbHVlWzBdWzBdLm1vbnRoICsgdmFsdWVbMF1bMF0ueWVhciAqIDEyLFxuICAgICAgICApXG4gICAgICAgICAgICAubWFwKGFic29sdXRlTW9udGggPT5cbiAgICAgICAgICAgICAgICB2YWx1ZVxuICAgICAgICAgICAgICAgICAgICAubWFwPFR1aVBvaW50IHwgbnVsbD4oKFt7bW9udGgsIHllYXJ9LCB5XSwgaW5kZXgpID0+XG4gICAgICAgICAgICAgICAgICAgICAgICBtb250aCArIHllYXIgKiAxMiA9PT0gYWJzb2x1dGVNb250aCA/IFtpbmRleCArIG9mZnNldCwgeV0gOiBudWxsLFxuICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgIC5maWx0ZXIodHVpSXNQcmVzZW50KSxcbiAgICAgICAgICAgIClcbiAgICAgICAgICAgIC5tYXAoKG1vbnRoLCBpbmRleCwgYXJyYXkpID0+XG4gICAgICAgICAgICAgICAgaW5kZXggPT09IGFycmF5Lmxlbmd0aCAtIDFcbiAgICAgICAgICAgICAgICAgICAgPyBtb250aFxuICAgICAgICAgICAgICAgICAgICA6IFsuLi5tb250aCwgYXJyYXlbaW5kZXggKyAxXS5maW5kKGRheSA9PiAhaXNOYU4oZGF5WzFdKSkgfHwgRFVNTVldLFxuICAgICAgICAgICAgKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldE1vbnRoKGluZGV4OiBudW1iZXIpOiBUdWlEYXkge1xuICAgICAgICByZXR1cm4gdGhpcy52YWx1ZVtpbmRleCAtIHRoaXMudmFsdWVbMF1bMF0uZGF5ICsgMV1bMF07XG4gICAgfVxufVxuIiwiPHR1aS1saW5lLWNoYXJ0XG4gICAgKm5nRm9yPVwibGV0IG1vbnRoIG9mIG1vbnRoczsgbGV0IGZpcnN0ID0gZmlyc3RcIlxuICAgIGNsYXNzPVwidC1jaGFydFwiXG4gICAgW3N0eWxlLnpJbmRleF09XCJ6SW5kZXhcIlxuICAgIFtkb3RzXT1cImRvdHNcIlxuICAgIFt4XT1cImZpcnN0ID8gMCA6IGdldFgobW9udGhbMF1bMF0pXCJcbiAgICBbeV09XCJ5XCJcbiAgICBbd2lkdGhdPVwiZmlyc3QgPyBmaXJzdFdpZHRoIDogZ2V0V2lkdGgobW9udGhbMF1bMF0pXCJcbiAgICBbaGVpZ2h0XT1cImhlaWdodFwiXG4gICAgW3ZhbHVlXT1cIm1vbnRoXCJcbiAgICBbc21vb3RoaW5nRmFjdG9yXT1cInNtb290aGluZ0ZhY3RvclwiXG4gICAgW3R1aUhpbnRDb250ZW50XT1cImhpbnRDb250ZW50ID8gaGludCA6ICcnXCJcbiAgICBbeVN0cmluZ2lmeV09XCJ5U3RyaW5naWZ5XCJcbiAgICBbeFN0cmluZ2lmeV09XCJ4U3RyaW5naWZ5ID8gZGF5c1N0cmluZ2lmeSA6IG51bGxcIlxuPjwvdHVpLWxpbmUtY2hhcnQ+XG48bmctdGVtcGxhdGVcbiAgICAjaGludFxuICAgIGxldC1wb2ludFxuPlxuICAgIDxuZy1jb250YWluZXIgKnBvbHltb3JwaGV1c091dGxldD1cImhpbnRDb250ZW50IGFzIHRleHQ7IGNvbnRleHQ6IGdldEhpbnRDb250ZXh0KHBvaW50WzBdLCB2YWx1ZSlcIj5cbiAgICAgICAge3sgdGV4dCB9fVxuICAgIDwvbmctY29udGFpbmVyPlxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==
@@ -1,18 +1,35 @@
1
- import { __decorate } from "tslib";
2
1
  import { CommonModule } from '@angular/common';
3
2
  import { NgModule } from '@angular/core';
4
3
  import { TuiLineChartModule } from '@taiga-ui/addon-charts/components/line-chart';
4
+ import { TuiHintControllerModule } from '@taiga-ui/core';
5
5
  import { PolymorpheusModule } from '@tinkoff/ng-polymorpheus';
6
6
  import { TuiLineDaysChartComponent } from './line-days-chart.component';
7
7
  import { TuiLineDaysChartHintDirective } from './line-days-chart-hint.directive';
8
- let TuiLineDaysChartModule = class TuiLineDaysChartModule {
9
- };
10
- TuiLineDaysChartModule = __decorate([
11
- NgModule({
12
- imports: [CommonModule, TuiLineChartModule, PolymorpheusModule],
13
- declarations: [TuiLineDaysChartComponent, TuiLineDaysChartHintDirective],
14
- exports: [TuiLineDaysChartComponent, TuiLineDaysChartHintDirective],
15
- })
16
- ], TuiLineDaysChartModule);
17
- export { TuiLineDaysChartModule };
18
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGluZS1kYXlzLWNoYXJ0Lm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0B0YWlnYS11aS9hZGRvbi1jaGFydHMvY29tcG9uZW50cy9saW5lLWRheXMtY2hhcnQvIiwic291cmNlcyI6WyJsaW5lLWRheXMtY2hhcnQubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDN0MsT0FBTyxFQUFDLFFBQVEsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUN2QyxPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSw4Q0FBOEMsQ0FBQztBQUNoRixPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSwwQkFBMEIsQ0FBQztBQUU1RCxPQUFPLEVBQUMseUJBQXlCLEVBQUMsTUFBTSw2QkFBNkIsQ0FBQztBQUN0RSxPQUFPLEVBQUMsNkJBQTZCLEVBQUMsTUFBTSxrQ0FBa0MsQ0FBQztBQU8vRSxJQUFhLHNCQUFzQixHQUFuQyxNQUFhLHNCQUFzQjtDQUFHLENBQUE7QUFBekIsc0JBQXNCO0lBTGxDLFFBQVEsQ0FBQztRQUNOLE9BQU8sRUFBRSxDQUFDLFlBQVksRUFBRSxrQkFBa0IsRUFBRSxrQkFBa0IsQ0FBQztRQUMvRCxZQUFZLEVBQUUsQ0FBQyx5QkFBeUIsRUFBRSw2QkFBNkIsQ0FBQztRQUN4RSxPQUFPLEVBQUUsQ0FBQyx5QkFBeUIsRUFBRSw2QkFBNkIsQ0FBQztLQUN0RSxDQUFDO0dBQ1csc0JBQXNCLENBQUc7U0FBekIsc0JBQXNCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21tb25Nb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge05nTW9kdWxlfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7VHVpTGluZUNoYXJ0TW9kdWxlfSBmcm9tICdAdGFpZ2EtdWkvYWRkb24tY2hhcnRzL2NvbXBvbmVudHMvbGluZS1jaGFydCc7XG5pbXBvcnQge1BvbHltb3JwaGV1c01vZHVsZX0gZnJvbSAnQHRpbmtvZmYvbmctcG9seW1vcnBoZXVzJztcblxuaW1wb3J0IHtUdWlMaW5lRGF5c0NoYXJ0Q29tcG9uZW50fSBmcm9tICcuL2xpbmUtZGF5cy1jaGFydC5jb21wb25lbnQnO1xuaW1wb3J0IHtUdWlMaW5lRGF5c0NoYXJ0SGludERpcmVjdGl2ZX0gZnJvbSAnLi9saW5lLWRheXMtY2hhcnQtaGludC5kaXJlY3RpdmUnO1xuXG5ATmdNb2R1bGUoe1xuICAgIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIFR1aUxpbmVDaGFydE1vZHVsZSwgUG9seW1vcnBoZXVzTW9kdWxlXSxcbiAgICBkZWNsYXJhdGlvbnM6IFtUdWlMaW5lRGF5c0NoYXJ0Q29tcG9uZW50LCBUdWlMaW5lRGF5c0NoYXJ0SGludERpcmVjdGl2ZV0sXG4gICAgZXhwb3J0czogW1R1aUxpbmVEYXlzQ2hhcnRDb21wb25lbnQsIFR1aUxpbmVEYXlzQ2hhcnRIaW50RGlyZWN0aXZlXSxcbn0pXG5leHBvcnQgY2xhc3MgVHVpTGluZURheXNDaGFydE1vZHVsZSB7fVxuIl19
8
+ import * as i0 from "@angular/core";
9
+ export class TuiLineDaysChartModule {
10
+ }
11
+ TuiLineDaysChartModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiLineDaysChartModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
12
+ TuiLineDaysChartModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiLineDaysChartModule, declarations: [TuiLineDaysChartComponent, TuiLineDaysChartHintDirective], imports: [CommonModule,
13
+ TuiLineChartModule,
14
+ PolymorpheusModule,
15
+ TuiHintControllerModule], exports: [TuiLineDaysChartComponent, TuiLineDaysChartHintDirective] });
16
+ TuiLineDaysChartModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiLineDaysChartModule, imports: [[
17
+ CommonModule,
18
+ TuiLineChartModule,
19
+ PolymorpheusModule,
20
+ TuiHintControllerModule,
21
+ ]] });
22
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiLineDaysChartModule, decorators: [{
23
+ type: NgModule,
24
+ args: [{
25
+ imports: [
26
+ CommonModule,
27
+ TuiLineChartModule,
28
+ PolymorpheusModule,
29
+ TuiHintControllerModule,
30
+ ],
31
+ declarations: [TuiLineDaysChartComponent, TuiLineDaysChartHintDirective],
32
+ exports: [TuiLineDaysChartComponent, TuiLineDaysChartHintDirective],
33
+ }]
34
+ }] });
35
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGluZS1kYXlzLWNoYXJ0Lm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FkZG9uLWNoYXJ0cy9jb21wb25lbnRzL2xpbmUtZGF5cy1jaGFydC9saW5lLWRheXMtY2hhcnQubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUM3QyxPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3ZDLE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLDhDQUE4QyxDQUFDO0FBQ2hGLE9BQU8sRUFBQyx1QkFBdUIsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBQ3ZELE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLDBCQUEwQixDQUFDO0FBRTVELE9BQU8sRUFBQyx5QkFBeUIsRUFBQyxNQUFNLDZCQUE2QixDQUFDO0FBQ3RFLE9BQU8sRUFBQyw2QkFBNkIsRUFBQyxNQUFNLGtDQUFrQyxDQUFDOztBQVkvRSxNQUFNLE9BQU8sc0JBQXNCOztvSEFBdEIsc0JBQXNCO3FIQUF0QixzQkFBc0IsaUJBSGhCLHlCQUF5QixFQUFFLDZCQUE2QixhQUxuRSxZQUFZO1FBQ1osa0JBQWtCO1FBQ2xCLGtCQUFrQjtRQUNsQix1QkFBdUIsYUFHakIseUJBQXlCLEVBQUUsNkJBQTZCO3FIQUV6RCxzQkFBc0IsWUFUdEI7WUFDTCxZQUFZO1lBQ1osa0JBQWtCO1lBQ2xCLGtCQUFrQjtZQUNsQix1QkFBdUI7U0FDMUI7NEZBSVEsc0JBQXNCO2tCQVZsQyxRQUFRO21CQUFDO29CQUNOLE9BQU8sRUFBRTt3QkFDTCxZQUFZO3dCQUNaLGtCQUFrQjt3QkFDbEIsa0JBQWtCO3dCQUNsQix1QkFBdUI7cUJBQzFCO29CQUNELFlBQVksRUFBRSxDQUFDLHlCQUF5QixFQUFFLDZCQUE2QixDQUFDO29CQUN4RSxPQUFPLEVBQUUsQ0FBQyx5QkFBeUIsRUFBRSw2QkFBNkIsQ0FBQztpQkFDdEUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbW1vbk1vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7TmdNb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtUdWlMaW5lQ2hhcnRNb2R1bGV9IGZyb20gJ0B0YWlnYS11aS9hZGRvbi1jaGFydHMvY29tcG9uZW50cy9saW5lLWNoYXJ0JztcbmltcG9ydCB7VHVpSGludENvbnRyb2xsZXJNb2R1bGV9IGZyb20gJ0B0YWlnYS11aS9jb3JlJztcbmltcG9ydCB7UG9seW1vcnBoZXVzTW9kdWxlfSBmcm9tICdAdGlua29mZi9uZy1wb2x5bW9ycGhldXMnO1xuXG5pbXBvcnQge1R1aUxpbmVEYXlzQ2hhcnRDb21wb25lbnR9IGZyb20gJy4vbGluZS1kYXlzLWNoYXJ0LmNvbXBvbmVudCc7XG5pbXBvcnQge1R1aUxpbmVEYXlzQ2hhcnRIaW50RGlyZWN0aXZlfSBmcm9tICcuL2xpbmUtZGF5cy1jaGFydC1oaW50LmRpcmVjdGl2ZSc7XG5cbkBOZ01vZHVsZSh7XG4gICAgaW1wb3J0czogW1xuICAgICAgICBDb21tb25Nb2R1bGUsXG4gICAgICAgIFR1aUxpbmVDaGFydE1vZHVsZSxcbiAgICAgICAgUG9seW1vcnBoZXVzTW9kdWxlLFxuICAgICAgICBUdWlIaW50Q29udHJvbGxlck1vZHVsZSxcbiAgICBdLFxuICAgIGRlY2xhcmF0aW9uczogW1R1aUxpbmVEYXlzQ2hhcnRDb21wb25lbnQsIFR1aUxpbmVEYXlzQ2hhcnRIaW50RGlyZWN0aXZlXSxcbiAgICBleHBvcnRzOiBbVHVpTGluZURheXNDaGFydENvbXBvbmVudCwgVHVpTGluZURheXNDaGFydEhpbnREaXJlY3RpdmVdLFxufSlcbmV4cG9ydCBjbGFzcyBUdWlMaW5lRGF5c0NoYXJ0TW9kdWxlIHt9XG4iXX0=
@@ -2,4 +2,4 @@
2
2
  * Generated bundle index. Do not edit.
3
3
  */
4
4
  export * from './index';
5
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFpZ2EtdWktYWRkb24tY2hhcnRzLWNvbXBvbmVudHMtbGluZS1kYXlzLWNoYXJ0LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHRhaWdhLXVpL2FkZG9uLWNoYXJ0cy9jb21wb25lbnRzL2xpbmUtZGF5cy1jaGFydC8iLCJzb3VyY2VzIjpbInRhaWdhLXVpLWFkZG9uLWNoYXJ0cy1jb21wb25lbnRzLWxpbmUtZGF5cy1jaGFydC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsU0FBUyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2luZGV4JztcbiJdfQ==
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFpZ2EtdWktYWRkb24tY2hhcnRzLWNvbXBvbmVudHMtbGluZS1kYXlzLWNoYXJ0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYWRkb24tY2hhcnRzL2NvbXBvbmVudHMvbGluZS1kYXlzLWNoYXJ0L3RhaWdhLXVpLWFkZG9uLWNoYXJ0cy1jb21wb25lbnRzLWxpbmUtZGF5cy1jaGFydC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsU0FBUyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2luZGV4JztcbiJdfQ==
@@ -1,4 +1,4 @@
1
1
  export * from './pie-chart.component';
2
2
  export * from './pie-chart.directive';
3
3
  export * from './pie-chart.module';
4
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AdGFpZ2EtdWkvYWRkb24tY2hhcnRzL2NvbXBvbmVudHMvcGllLWNoYXJ0LyIsInNvdXJjZXMiOlsiaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyx1QkFBdUIsQ0FBQztBQUN0QyxjQUFjLHVCQUF1QixDQUFDO0FBQ3RDLGNBQWMsb0JBQW9CLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL3BpZS1jaGFydC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9waWUtY2hhcnQuZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vcGllLWNoYXJ0Lm1vZHVsZSc7XG4iXX0=
4
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hZGRvbi1jaGFydHMvY29tcG9uZW50cy9waWUtY2hhcnQvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyx1QkFBdUIsQ0FBQztBQUN0QyxjQUFjLHVCQUF1QixDQUFDO0FBQ3RDLGNBQWMsb0JBQW9CLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL3BpZS1jaGFydC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9waWUtY2hhcnQuZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vcGllLWNoYXJ0Lm1vZHVsZSc7XG4iXX0=
@@ -1,10 +1,13 @@
1
- import { __decorate, __param } from "tslib";
1
+ import { __decorate } from "tslib";
2
2
  import { Location } from '@angular/common';
3
3
  import { ChangeDetectionStrategy, Component, EventEmitter, HostBinding, Inject, Input, Output, } from '@angular/core';
4
- import { DomSanitizer, SafeValue } from '@angular/platform-browser';
5
- import { TUI_DEFAULT_COLOR_HANDLER } from '@taiga-ui/addon-charts/constants';
6
- import { sum, TuiContextWithImplicit, tuiDefaultProp, TuiIdService, tuiPure, } from '@taiga-ui/cdk';
7
- import { colorFallback } from '@taiga-ui/core';
4
+ import { tuiDefaultProp, TuiIdService, tuiPure, tuiSum, } from '@taiga-ui/cdk';
5
+ import { tuiHintOptionsProvider } from '@taiga-ui/core';
6
+ import * as i0 from "@angular/core";
7
+ import * as i1 from "@taiga-ui/cdk";
8
+ import * as i2 from "./pie-chart.directive";
9
+ import * as i3 from "@taiga-ui/core";
10
+ import * as i4 from "@angular/common";
8
11
  const RADII = {
9
12
  xs: `50`,
10
13
  s: `50`,
@@ -19,14 +22,11 @@ const TRANSFORM = {
19
22
  l: 1.09,
20
23
  xl: 1.08,
21
24
  };
22
- // TODO: 3.0 Remove sanitizer when Angular version is bumped
23
- let TuiPieChartComponent = class TuiPieChartComponent {
24
- constructor(idService, locationRef, sanitizer) {
25
+ export class TuiPieChartComponent {
26
+ constructor(idService, locationRef) {
25
27
  this.locationRef = locationRef;
26
- this.sanitizer = sanitizer;
27
28
  this.value = [];
28
29
  this.size = `m`;
29
- this.colorHandler = TUI_DEFAULT_COLOR_HANDLER;
30
30
  this.hintContent = ``;
31
31
  this.masked = false;
32
32
  this.activeItemIndex = NaN;
@@ -56,17 +56,14 @@ let TuiPieChartComponent = class TuiPieChartComponent {
56
56
  : `scale(${TRANSFORM.xs})`;
57
57
  return index === this.activeItemIndex ? transform : null;
58
58
  }
59
- getHint(hint) {
60
- return this.hintContent ? hint : ``;
61
- }
62
59
  onHovered(hovered, index) {
63
60
  this.updateActiveItemIndex(hovered ? index : NaN);
64
61
  }
65
62
  getColor(index) {
66
- return this.sanitizer.bypassSecurityTrustStyle(`var(--tui-chart-${index}, ${colorFallback(this.colorHandler(index))})`);
63
+ return `var(--tui-chart-${index}`;
67
64
  }
68
65
  getSum(value) {
69
- return sum(...value);
66
+ return tuiSum(...value);
70
67
  }
71
68
  getSegments(value) {
72
69
  return value
@@ -86,59 +83,62 @@ let TuiPieChartComponent = class TuiPieChartComponent {
86
83
  this.activeItemIndex = index;
87
84
  this.activeItemIndexChange.next(index);
88
85
  }
89
- };
90
- TuiPieChartComponent.ctorParameters = () => [
91
- { type: TuiIdService, decorators: [{ type: Inject, args: [TuiIdService,] }] },
92
- { type: Location, decorators: [{ type: Inject, args: [Location,] }] },
93
- { type: DomSanitizer, decorators: [{ type: Inject, args: [DomSanitizer,] }] }
94
- ];
86
+ }
87
+ TuiPieChartComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiPieChartComponent, deps: [{ token: TuiIdService }, { token: Location }], target: i0.ɵɵFactoryTarget.Component });
88
+ TuiPieChartComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: TuiPieChartComponent, selector: "tui-pie-chart", inputs: { value: "value", size: "size", hintContent: "hintContent", masked: "masked", activeItemIndex: "activeItemIndex" }, outputs: { activeItemIndexChange: "activeItemIndexChange" }, host: { properties: { "attr.data-size": "this.size", "class._empty": "this.empty" } }, providers: [tuiHintOptionsProvider({ showDelay: 0, hideDelay: 0 })], ngImport: i0, template: "<svg\n xmlns=\"http://www.w3.org/2000/svg\"\n height=\"100%\"\n width=\"100%\"\n viewBox=\"-100 -100 200 200\"\n focusable=\"false\"\n class=\"t-svg\"\n>\n <defs>\n <mask [attr.id]=\"maskId\">\n <rect\n x=\"-200\"\n y=\"-200\"\n width=\"400\"\n height=\"400\"\n fill=\"white\"\n />\n <circle\n cx=\"0\"\n cy=\"0\"\n [attr.r]=\"radius\"\n />\n </mask>\n </defs>\n <g [style.mask]=\"mask\">\n <circle\n cx=\"0\"\n cy=\"0\"\n r=\"100\"\n class=\"t-placeholder\"\n />\n <path\n *tuiRepeatTimes=\"let index of segments.length\"\n fill=\"currentColor\"\n automation-id=\"tui-pie-chart__segment\"\n tuiHintPointer\n tuiHintAppearance=\"onDark\"\n tuiHintDirection=\"top-right\"\n d=\"\"\n class=\"t-segment\"\n [attr.transform]=\"getTransform(index)\"\n [style.color]=\"getColor(index)\"\n [tuiPieChart]=\"segments[index]\"\n [tuiHint]=\"hintContent\"\n [tuiHintContext]=\"{$implicit: index}\"\n (tuiHoveredChange)=\"onHovered($event, index)\"\n />\n </g>\n</svg>\n", styles: [":host{position:relative;display:block}:host[data-size=xs]{width:2rem;height:2rem;pointer-events:none}:host[data-size=s]{width:4rem;height:4rem}:host[data-size=m]{width:9rem;height:9rem}:host[data-size=l]{width:11rem;height:11rem}:host[data-size=xl]{width:16rem;height:16rem}.t-svg{position:relative;overflow:visible;transform:rotate(-90deg)}.t-segment{transition-property:transform;transition-duration:.3s;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out}:host._empty .t-segment{display:none}.t-placeholder{fill:var(--tui-base-03)}\n"], directives: [{ type: i1.TuiRepeatTimesDirective, selector: "[tuiRepeatTimes][tuiRepeatTimesOf]", inputs: ["tuiRepeatTimesOf"] }, { type: i2.TuiPieChartDirective, selector: "path[tuiPieChart]", inputs: ["tuiPieChart"] }, { type: i3.TuiHintDirective, selector: "[tuiHint]:not(ng-container)", inputs: ["tuiHintId", "tuiHint", "tuiHintContext", "tuiHintAppearance"] }, { type: i3.TuiHintDriverDirective, selector: "[tuiHint]" }, { type: i3.TuiHintHoverDirective, selector: "[tuiHint]:not(ng-container)", inputs: ["tuiHintShowDelay", "tuiHintHideDelay"] }, { type: i3.TuiHintPositionDirective, selector: "[tuiHint]:not([tuiHintCustomPosition])", inputs: ["tuiHintDirection"] }, { type: i3.TuiHintPointerDirective, selector: "[tuiHint][tuiHintPointer]" }, { type: i1.TuiHoveredDirective, selector: "[tuiHoveredChange]", outputs: ["tuiHoveredChange"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
95
89
  __decorate([
96
- Input(),
97
90
  tuiDefaultProp()
98
91
  ], TuiPieChartComponent.prototype, "value", void 0);
99
92
  __decorate([
100
- Input(),
101
- HostBinding(`attr.data-size`),
102
93
  tuiDefaultProp()
103
94
  ], TuiPieChartComponent.prototype, "size", void 0);
104
95
  __decorate([
105
- Input(),
106
- tuiDefaultProp()
107
- ], TuiPieChartComponent.prototype, "colorHandler", void 0);
108
- __decorate([
109
- Input(),
110
96
  tuiDefaultProp()
111
97
  ], TuiPieChartComponent.prototype, "hintContent", void 0);
112
98
  __decorate([
113
- Input(),
114
99
  tuiDefaultProp()
115
100
  ], TuiPieChartComponent.prototype, "masked", void 0);
116
101
  __decorate([
117
- Input(),
118
102
  tuiDefaultProp()
119
103
  ], TuiPieChartComponent.prototype, "activeItemIndex", void 0);
120
- __decorate([
121
- Output()
122
- ], TuiPieChartComponent.prototype, "activeItemIndexChange", void 0);
123
- __decorate([
124
- HostBinding(`class._empty`)
125
- ], TuiPieChartComponent.prototype, "empty", null);
126
104
  __decorate([
127
105
  tuiPure
128
106
  ], TuiPieChartComponent.prototype, "getSum", null);
129
107
  __decorate([
130
108
  tuiPure
131
109
  ], TuiPieChartComponent.prototype, "getSegments", null);
132
- TuiPieChartComponent = __decorate([
133
- Component({
134
- selector: `tui-pie-chart`,
135
- template: "<svg\n xmlns=\"http://www.w3.org/2000/svg\"\n height=\"100%\"\n width=\"100%\"\n viewBox=\"-100 -100 200 200\"\n focusable=\"false\"\n class=\"t-svg\"\n>\n <defs>\n <mask [attr.id]=\"maskId\">\n <rect\n x=\"-200\"\n y=\"-200\"\n width=\"400\"\n height=\"400\"\n fill=\"white\"\n />\n <circle\n cx=\"0\"\n cy=\"0\"\n [attr.r]=\"radius\"\n />\n </mask>\n </defs>\n <g [style.mask]=\"mask\">\n <circle\n cx=\"0\"\n cy=\"0\"\n r=\"100\"\n class=\"t-placeholder\"\n />\n <path\n *tuiRepeatTimes=\"let index of segments.length\"\n fill=\"currentColor\"\n automation-id=\"tui-pie-chart__segment\"\n tuiHintMode=\"onDark\"\n tuiHintDirection=\"top-right\"\n d=\"\"\n class=\"t-segment\"\n [attr.transform]=\"getTransform(index)\"\n [style.color]=\"getColor(index)\"\n [tuiPieChart]=\"segments[index]\"\n [tuiPointerHint]=\"getHint(hint)\"\n (tuiHoveredChange)=\"onHovered($event, index)\"\n >\n <ng-template #hint>\n <ng-container\n [ngTemplateOutlet]=\"template\"\n [ngTemplateOutletContext]=\"{$implicit: index}\"\n ></ng-container>\n </ng-template>\n </path>\n </g>\n</svg>\n<ng-template\n #template\n let-index\n>\n <div\n polymorpheus-outlet\n class=\"t-text\"\n [content]=\"hintContent\"\n [context]=\"{$implicit: index}\"\n ></div>\n</ng-template>\n",
136
- changeDetection: ChangeDetectionStrategy.OnPush,
137
- styles: [":host{position:relative;display:block}:host[data-size=xs]{width:2rem;height:2rem;pointer-events:none}:host[data-size='s']{width:4rem;height:4rem}:host[data-size='m']{width:9rem;height:9rem}:host[data-size='l']{width:11rem;height:11rem}:host[data-size=xl]{width:16rem;height:16rem}.t-svg{position:relative;overflow:visible;transform:rotate(-90deg)}.t-segment{transition-property:transform;transition-duration:var(--tui-duration,300ms);transition-timing-function:ease-in-out}:host._empty .t-segment{display:none}.t-placeholder{fill:var(--tui-base-03)}.t-text{white-space:pre-wrap}"]
138
- }),
139
- __param(0, Inject(TuiIdService)),
140
- __param(1, Inject(Location)),
141
- __param(2, Inject(DomSanitizer))
142
- ], TuiPieChartComponent);
143
- export { TuiPieChartComponent };
144
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGllLWNoYXJ0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0B0YWlnYS11aS9hZGRvbi1jaGFydHMvY29tcG9uZW50cy9waWUtY2hhcnQvIiwic291cmNlcyI6WyJwaWUtY2hhcnQuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDekMsT0FBTyxFQUNILHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsWUFBWSxFQUNaLFdBQVcsRUFDWCxNQUFNLEVBQ04sS0FBSyxFQUNMLE1BQU0sR0FDVCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUMsWUFBWSxFQUFFLFNBQVMsRUFBQyxNQUFNLDJCQUEyQixDQUFDO0FBQ2xFLE9BQU8sRUFBQyx5QkFBeUIsRUFBQyxNQUFNLGtDQUFrQyxDQUFDO0FBRTNFLE9BQU8sRUFDSCxHQUFHLEVBQ0gsc0JBQXNCLEVBQ3RCLGNBQWMsRUFDZCxZQUFZLEVBQ1osT0FBTyxHQUNWLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBQyxhQUFhLEVBQXVCLE1BQU0sZ0JBQWdCLENBQUM7QUFHbkUsTUFBTSxLQUFLLEdBQUc7SUFDVixFQUFFLEVBQUUsSUFBSTtJQUNSLENBQUMsRUFBRSxJQUFJO0lBQ1AsQ0FBQyxFQUFFLE1BQU07SUFDVCxDQUFDLEVBQUUsTUFBTTtJQUNULEVBQUUsRUFBRSxNQUFNO0NBQ2IsQ0FBQztBQUNGLE1BQU0sU0FBUyxHQUFHO0lBQ2QsRUFBRSxFQUFFLElBQUk7SUFDUixDQUFDLEVBQUUsSUFBSTtJQUNQLENBQUMsRUFBRSxJQUFJO0lBQ1AsQ0FBQyxFQUFFLElBQUk7SUFDUCxFQUFFLEVBQUUsSUFBSTtDQUNYLENBQUM7QUFFRiw0REFBNEQ7QUFPNUQsSUFBYSxvQkFBb0IsR0FBakMsTUFBYSxvQkFBb0I7SUErQjdCLFlBQzBCLFNBQXVCLEVBQ1YsV0FBcUIsRUFDakIsU0FBdUI7UUFEM0Is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QU0sRUFBRTttRUFDMEM7QUFXbkQ7SUFEQyxXQUFXLENBQUMsY0FBYyxDQUFDO2lEQUczQjtBQTZDRDtJQURDLE9BQU87a0RBR1A7QUFHRDtJQURDLE9BQU87dURBYVA7QUF4R1Esb0JBQW9CO0lBTmhDLFNBQVMsQ0FBQztRQUNQLFFBQVEsRUFBRSxlQUFlO1FBQ3pCLGl4REFBd0M7UUFFeEMsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07O0tBQ2xELENBQUM7SUFpQ08sV0FBQSxNQUFNLENBQUMsWUFBWSxDQUFDLENBQUE7SUFDcEIsV0FBQSxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUE7SUFDaEIsV0FBQSxNQUFNLENBQUMsWUFBWSxDQUFDLENBQUE7R0FsQ2hCLG9CQUFvQixDQXNIaEM7U0F0SFksb0JBQW9CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtMb2NhdGlvbn0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7XG4gICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gICAgQ29tcG9uZW50LFxuICAgIEV2ZW50RW1pdHRlcixcbiAgICBIb3N0QmluZGluZyxcbiAgICBJbmplY3QsXG4gICAgSW5wdXQsXG4gICAgT3V0cHV0LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7RG9tU2FuaXRpemVyLCBTYWZlVmFsdWV9IGZyb20gJ0Bhbmd1bGFyL3BsYXRmb3JtLWJyb3dzZXInO1xuaW1wb3J0IHtUVUlfREVGQVVMVF9DT0xPUl9IQU5ETEVSfSBmcm9tICdAdGFpZ2EtdWkvYWRkb24tY2hhcnRzL2NvbnN0YW50cyc7XG5pbXBvcnQge1R1aUNvbG9ySGFuZGxlcn0gZnJvbSAnQHRhaWdhLXVpL2FkZG9uLWNoYXJ0cy90eXBlcyc7XG5pbXBvcnQge1xuICAgIHN1bSxcbiAgICBUdWlDb250ZXh0V2l0aEltcGxpY2l0LFxuICAgIHR1aURlZmF1bHRQcm9wLFxuICAgIFR1aUlkU2VydmljZSxcbiAgICB0dWlQdXJlLFxufSBmcm9tICdAdGFpZ2EtdWkvY2RrJztcbmltcG9ydCB7Y29sb3JGYWxsYmFjaywgVHVpU2l6ZVhMLCBUdWlTaXplWFN9IGZyb20gJ0B0YWlnYS11aS9jb3JlJztcbmltcG9ydCB7UG9seW1vcnBoZXVzQ29udGVudH0gZnJvbSAnQHRpbmtvZmYvbmctcG9seW1vcnBoZXVzJztcblxuY29uc3QgUkFESUkgPSB7XG4gICAgeHM6IGA1MGAsXG4gICAgczogYDUwYCxcbiAgICBtOiBgNzcuOGAsXG4gICAgbDogYDgxLjlgLFxuICAgIHhsOiBgODEuM2AsXG59O1xuY29uc3QgVFJBTlNGT1JNID0ge1xuICAgIHhzOiAxLjE1LFxuICAgIHM6IDEuMjUsXG4gICAgbTogMS4xMSxcbiAgICBsOiAxLjA5LFxuICAgIHhsOiAxLjA4LFxufTtcblxuLy8gVE9ETzogMy4wIFJlbW92ZSBzYW5pdGl6ZXIgd2hlbiBBbmd1bGFyIHZlcnNpb24gaXMgYnVtcGVkXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogYHR1aS1waWUtY2hhcnRgLFxuICAgIHRlbXBsYXRlVXJsOiBgLi9waWUtY2hhcnQudGVtcGxhdGUuaHRtbGAsXG4gICAgc3R5bGVVcmxzOiBbYC4vcGllLWNoYXJ0LnN0eWxlLmxlc3NgXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgVHVpUGllQ2hhcnRDb21wb25lbnQge1xuICAgIHByaXZhdGUgcmVhZG9ubHkgYXV0b0lkU3RyaW5nOiBzdHJpbmc7XG5cbiAgICBASW5wdXQoKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgdmFsdWU6IHJlYWRvbmx5IG51bWJlcltdID0gW107XG5cbiAgICBASW5wdXQoKVxuICAgIEBIb3N0QmluZGluZyhgYXR0ci5kYXRhLXNpemVgKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgc2l6ZTogVHVpU2l6ZVhTIHwgVHVpU2l6ZVhMID0gYG1gO1xuXG4gICAgQElucHV0KClcbiAgICBAdHVpRGVmYXVsdFByb3AoKVxuICAgIGNvbG9ySGFuZGxlcjogVHVpQ29sb3JIYW5kbGVyID0gVFVJX0RFRkFVTFRfQ09MT1JfSEFORExFUjtcblxuICAgIEBJbnB1dCgpXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICBoaW50Q29udGVudDogUG9seW1vcnBoZXVzQ29udGVudDxUdWlDb250ZXh0V2l0aEltcGxpY2l0PG51bWJlcj4+ID0gYGA7XG5cbiAgICBASW5wdXQoKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgbWFza2VkID0gZmFsc2U7XG5cbiAgICBASW5wdXQoKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgYWN0aXZlSXRlbUluZGV4ID0gTmFOO1xuXG4gICAgQE91dHB1dCgpXG4gICAgYWN0aXZlSXRlbUluZGV4Q2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxudW1iZXI+KCk7XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgQEluamVjdChUdWlJZFNlcnZpY2UpIGlkU2VydmljZTogVHVpSWRTZXJ2aWNlLFxuICAgICAgICBASW5qZWN0KExvY2F0aW9uKSBwcml2YXRlIHJlYWRvbmx5IGxvY2F0aW9uUmVmOiBMb2NhdGlvbixcbiAgICAgICAgQEluamVjdChEb21TYW5pdGl6ZXIpIHByaXZhdGUgcmVhZG9ubHkgc2FuaXRpemVyOiBEb21TYW5pdGl6ZXIsXG4gICAgKSB7XG4gICAgICAgIHRoaXMuYXV0b0lkU3RyaW5nID0gaWRTZXJ2aWNlLmdlbmVyYXRlKCk7XG4gICAgfVxuXG4gICAgQEhvc3RCaW5kaW5nKGBjbGFzcy5fZW1wdHlgKVxuICAgIGdldCBlbXB0eSgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuICF0aGlzLmdldFN1bSh0aGlzLnZhbHVlKTtcbiAgICB9XG5cbiAgICBnZXQgbWFza0lkKCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiBgdHVpLXJpbmctY2hhcnQtJHt0aGlzLmF1dG9JZFN0cmluZ31gO1xuICAgIH1cblxuICAgIGdldCBtYXNrKCk6IHN0cmluZyB8IG51bGwge1xuICAgICAgICByZXR1cm4gdGhpcy5tYXNrZWRcbiAgICAgICAgICAgID8gYHVybCgke3RoaXMubG9jYXRpb25SZWYucHJlcGFyZUV4dGVybmFsVXJsKHRoaXMubG9jYXRpb25SZWYucGF0aCgpKX0jJHtcbiAgICAgICAgICAgICAgICAgIHRoaXMubWFza0lkXG4gICAgICAgICAgICAgIH0pYFxuICAgICAgICAgICAgOiBudWxsO1xuICAgIH1cblxuICAgIGdldCByYWRpdXMoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIFJBRElJW3RoaXMuc2l6ZV07XG4gICAgfVxuXG4gICAgZ2V0IHNlZ21lbnRzKCk6IFJlYWRvbmx5QXJyYXk8W251bWJlciwgbnVtYmVyXT4ge1xuICAgICAgICByZXR1cm4gdGhpcy5nZXRTZWdtZW50cyh0aGlzLnZhbHVlKTtcbiAgICB9XG5cbiAgICBnZXRUcmFuc2Zvcm0oaW5kZXg6IG51bWJlcik6IHN0cmluZyB8IG51bGwge1xuICAgICAgICBjb25zdCB0cmFuc2Zvcm0gPSB0aGlzLm1hc2tlZFxuICAgICAgICAgICAgPyBgc2NhbGUoJHtUUkFOU0ZPUk1bdGhpcy5zaXplXX0pYFxuICAgICAgICAgICAgOiBgc2NhbGUoJHtUUkFOU0ZPUk0ueHN9KWA7XG5cbiAgICAgICAgcmV0dXJuIGluZGV4ID09PSB0aGlzLmFjdGl2ZUl0ZW1JbmRleCA/IHRyYW5zZm9ybSA6IG51bGw7XG4gICAgfVxuXG4gICAgZ2V0SGludChoaW50OiBQb2x5bW9ycGhldXNDb250ZW50KTogUG9seW1vcnBoZXVzQ29udGVudCB7XG4gICAgICAgIHJldHVybiB0aGlzLmhpbnRDb250ZW50ID8gaGludCA6IGBgO1xuICAgIH1cblxuICAgIG9uSG92ZXJlZChob3ZlcmVkOiBib29sZWFuLCBpbmRleDogbnVtYmVyKTogdm9pZCB7XG4gICAgICAgIHRoaXMudXBkYXRlQWN0aXZlSXRlbUluZGV4KGhvdmVyZWQgPyBpbmRleCA6IE5hTik7XG4gICAgfVxuXG4gICAgZ2V0Q29sb3IoaW5kZXg6IG51bWJlcik6IFNhZmVWYWx1ZSB7XG4gICAgICAgIHJldHVybiB0aGlzLnNhbml0aXplci5ieXBhc3NTZWN1cml0eVRydXN0U3R5bGUoXG4gICAgICAgICAgICBgdmFyKC0tdHVpLWNoYXJ0LSR7aW5kZXh9LCAke2NvbG9yRmFsbGJhY2sodGhpcy5jb2xvckhhbmRsZXIoaW5kZXgpKX0pYCxcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBAdHVpUHVyZVxuICAgIHByaXZhdGUgZ2V0U3VtKHZhbHVlOiByZWFkb25seSBudW1iZXJbXSk6IG51bWJlciB7XG4gICAgICAgIHJldHVybiBzdW0oLi4udmFsdWUpO1xuICAgIH1cblxuICAgIEB0dWlQdXJlXG4gICAgcHJpdmF0ZSBnZXRTZWdtZW50cyh2YWx1ZTogcmVhZG9ubHkgbnVtYmVyW10pOiBSZWFkb25seUFycmF5PFtudW1iZXIsIG51bWJlcl0+IHtcbiAgICAgICAgcmV0dXJuIHZhbHVlXG4gICAgICAgICAgICAubWFwKChpbml0aWFsLCBpLCBhcnJheSkgPT5cbiAgICAgICAgICAgICAgICBhcnJheS5yZWR1Y2UoXG4gICAgICAgICAgICAgICAgICAgIChzdW0sIGN1cnJlbnQsIGopID0+IChqIDwgaSA/IHRoaXMuZ2V0RGVnKGN1cnJlbnQpICsgc3VtIDogc3VtKSxcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5nZXREZWcoaW5pdGlhbCksXG4gICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgIClcbiAgICAgICAgICAgIC5tYXAoKGFuZ2xlLCBpbmRleCwgYXJyYXkpID0+IFtcbiAgICAgICAgICAgICAgICBhcnJheVtpbmRleCAtIDFdIHx8IDAsXG4gICAgICAgICAgICAgICAgTWF0aC5taW4oYW5nbGUsIDM1OS45OTk5KSxcbiAgICAgICAgICAgIF0pO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0RGVnKHZhbHVlOiBudW1iZXIpOiBudW1iZXIge1xuICAgICAgICByZXR1cm4gMzYwICogKHZhbHVlIC8gdGhpcy5nZXRTdW0odGhpcy52YWx1ZSkpO1xuICAgIH1cblxuICAgIHByaXZhdGUgdXBkYXRlQWN0aXZlSXRlbUluZGV4KGluZGV4OiBudW1iZXIpOiB2b2lkIHtcbiAgICAgICAgaWYgKGluZGV4ID09PSB0aGlzLmFjdGl2ZUl0ZW1JbmRleCkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5hY3RpdmVJdGVtSW5kZXggPSBpbmRleDtcbiAgICAgICAgdGhpcy5hY3RpdmVJdGVtSW5kZXhDaGFuZ2UubmV4dChpbmRleCk7XG4gICAgfVxufVxuIl19
110
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiPieChartComponent, decorators: [{
111
+ type: Component,
112
+ args: [{
113
+ selector: `tui-pie-chart`,
114
+ templateUrl: `./pie-chart.template.html`,
115
+ styleUrls: [`./pie-chart.style.less`],
116
+ changeDetection: ChangeDetectionStrategy.OnPush,
117
+ providers: [tuiHintOptionsProvider({ showDelay: 0, hideDelay: 0 })],
118
+ }]
119
+ }], ctorParameters: function () { return [{ type: i1.TuiIdService, decorators: [{
120
+ type: Inject,
121
+ args: [TuiIdService]
122
+ }] }, { type: i4.Location, decorators: [{
123
+ type: Inject,
124
+ args: [Location]
125
+ }] }]; }, propDecorators: { value: [{
126
+ type: Input
127
+ }], size: [{
128
+ type: Input
129
+ }, {
130
+ type: HostBinding,
131
+ args: [`attr.data-size`]
132
+ }], hintContent: [{
133
+ type: Input
134
+ }], masked: [{
135
+ type: Input
136
+ }], activeItemIndex: [{
137
+ type: Input
138
+ }], activeItemIndexChange: [{
139
+ type: Output
140
+ }], empty: [{
141
+ type: HostBinding,
142
+ args: [`class._empty`]
143
+ }], getSum: [], getSegments: [] } });
144
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGllLWNoYXJ0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FkZG9uLWNoYXJ0cy9jb21wb25lbnRzL3BpZS1jaGFydC9waWUtY2hhcnQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYWRkb24tY2hhcnRzL2NvbXBvbmVudHMvcGllLWNoYXJ0L3BpZS1jaGFydC50ZW1wbGF0ZS5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDekMsT0FBTyxFQUNILHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsWUFBWSxFQUNaLFdBQVcsRUFDWCxNQUFNLEVBQ04sS0FBSyxFQUNMLE1BQU0sR0FDVCxNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBRUgsY0FBYyxFQUNkLFlBQVksRUFDWixPQUFPLEVBQ1AsTUFBTSxHQUNULE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBQyxzQkFBc0IsRUFBdUIsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7O0FBRzVFLE1BQU0sS0FBSyxHQUFHO0lBQ1YsRUFBRSxFQUFFLElBQUk7SUFDUixDQUFDLEVBQUUsSUFBSTtJQUNQLENBQUMsRUFBRSxNQUFNO0lBQ1QsQ0FBQyxFQUFFLE1BQU07SUFDVCxFQUFFLEVBQUUsTUFBTTtDQUNiLENBQUM7QUFDRixNQUFNLFNBQVMsR0FBRztJQUNkLEVBQUUsRUFBRSxJQUFJO0lBQ1IsQ0FBQyxFQUFFLElBQUk7SUFDUCxDQUFDLEVBQUUsSUFBSTtJQUNQLENBQUMsRUFBRSxJQUFJO0lBQ1AsRUFBRSxFQUFFLElBQUk7Q0FDWCxDQUFDO0FBU0YsTUFBTSxPQUFPLG9CQUFvQjtJQTJCN0IsWUFDMEIsU0FBdUIsRUFDVixXQUFxQjtRQUFyQixnQkFBVyxHQUFYLFdBQVcsQ0FBVTtRQXhCNUQsVUFBSyxHQUFzQixFQUFFLENBQUM7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S0FBSztnQkFNTixNQUFNO3NCQUZMLEtBQUs7Z0JBTU4sZUFBZTtzQkFGZCxLQUFLO2dCQUtOLHFCQUFxQjtzQkFEcEIsTUFBTTtnQkFXSCxLQUFLO3NCQURSLFdBQVc7dUJBQUMsY0FBYztnQkEwQ25CLE1BQU0sTUFLTixXQUFXIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtMb2NhdGlvbn0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7XG4gICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gICAgQ29tcG9uZW50LFxuICAgIEV2ZW50RW1pdHRlcixcbiAgICBIb3N0QmluZGluZyxcbiAgICBJbmplY3QsXG4gICAgSW5wdXQsXG4gICAgT3V0cHV0LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7U2FmZVZhbHVlfSBmcm9tICdAYW5ndWxhci9wbGF0Zm9ybS1icm93c2VyJztcbmltcG9ydCB7XG4gICAgVHVpQ29udGV4dFdpdGhJbXBsaWNpdCxcbiAgICB0dWlEZWZhdWx0UHJvcCxcbiAgICBUdWlJZFNlcnZpY2UsXG4gICAgdHVpUHVyZSxcbiAgICB0dWlTdW0sXG59IGZyb20gJ0B0YWlnYS11aS9jZGsnO1xuaW1wb3J0IHt0dWlIaW50T3B0aW9uc1Byb3ZpZGVyLCBUdWlTaXplWEwsIFR1aVNpemVYU30gZnJvbSAnQHRhaWdhLXVpL2NvcmUnO1xuaW1wb3J0IHtQb2x5bW9ycGhldXNDb250ZW50fSBmcm9tICdAdGlua29mZi9uZy1wb2x5bW9ycGhldXMnO1xuXG5jb25zdCBSQURJSSA9IHtcbiAgICB4czogYDUwYCxcbiAgICBzOiBgNTBgLFxuICAgIG06IGA3Ny44YCxcbiAgICBsOiBgODEuOWAsXG4gICAgeGw6IGA4MS4zYCxcbn07XG5jb25zdCBUUkFOU0ZPUk0gPSB7XG4gICAgeHM6IDEuMTUsXG4gICAgczogMS4yNSxcbiAgICBtOiAxLjExLFxuICAgIGw6IDEuMDksXG4gICAgeGw6IDEuMDgsXG59O1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogYHR1aS1waWUtY2hhcnRgLFxuICAgIHRlbXBsYXRlVXJsOiBgLi9waWUtY2hhcnQudGVtcGxhdGUuaHRtbGAsXG4gICAgc3R5bGVVcmxzOiBbYC4vcGllLWNoYXJ0LnN0eWxlLmxlc3NgXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICBwcm92aWRlcnM6IFt0dWlIaW50T3B0aW9uc1Byb3ZpZGVyKHtzaG93RGVsYXk6IDAsIGhpZGVEZWxheTogMH0pXSxcbn0pXG5leHBvcnQgY2xhc3MgVHVpUGllQ2hhcnRDb21wb25lbnQge1xuICAgIHByaXZhdGUgcmVhZG9ubHkgYXV0b0lkU3RyaW5nOiBzdHJpbmc7XG5cbiAgICBASW5wdXQoKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgdmFsdWU6IHJlYWRvbmx5IG51bWJlcltdID0gW107XG5cbiAgICBASW5wdXQoKVxuICAgIEBIb3N0QmluZGluZyhgYXR0ci5kYXRhLXNpemVgKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgc2l6ZTogVHVpU2l6ZVhTIHwgVHVpU2l6ZVhMID0gYG1gO1xuXG4gICAgQElucHV0KClcbiAgICBAdHVpRGVmYXVsdFByb3AoKVxuICAgIGhpbnRDb250ZW50OiBQb2x5bW9ycGhldXNDb250ZW50PFR1aUNvbnRleHRXaXRoSW1wbGljaXQ8bnVtYmVyPj4gPSBgYDtcblxuICAgIEBJbnB1dCgpXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICBtYXNrZWQgPSBmYWxzZTtcblxuICAgIEBJbnB1dCgpXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICBhY3RpdmVJdGVtSW5kZXggPSBOYU47XG5cbiAgICBAT3V0cHV0KClcbiAgICBhY3RpdmVJdGVtSW5kZXhDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPG51bWJlcj4oKTtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBASW5qZWN0KFR1aUlkU2VydmljZSkgaWRTZXJ2aWNlOiBUdWlJZFNlcnZpY2UsXG4gICAgICAgIEBJbmplY3QoTG9jYXRpb24pIHByaXZhdGUgcmVhZG9ubHkgbG9jYXRpb25SZWY6IExvY2F0aW9uLFxuICAgICkge1xuICAgICAgICB0aGlzLmF1dG9JZFN0cmluZyA9IGlkU2VydmljZS5nZW5lcmF0ZSgpO1xuICAgIH1cblxuICAgIEBIb3N0QmluZGluZyhgY2xhc3MuX2VtcHR5YClcbiAgICBnZXQgZW1wdHkoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAhdGhpcy5nZXRTdW0odGhpcy52YWx1ZSk7XG4gICAgfVxuXG4gICAgZ2V0IG1hc2tJZCgpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gYHR1aS1yaW5nLWNoYXJ0LSR7dGhpcy5hdXRvSWRTdHJpbmd9YDtcbiAgICB9XG5cbiAgICBnZXQgbWFzaygpOiBzdHJpbmcgfCBudWxsIHtcbiAgICAgICAgcmV0dXJuIHRoaXMubWFza2VkXG4gICAgICAgICAgICA/IGB1cmwoJHt0aGlzLmxvY2F0aW9uUmVmLnByZXBhcmVFeHRlcm5hbFVybCh0aGlzLmxvY2F0aW9uUmVmLnBhdGgoKSl9IyR7XG4gICAgICAgICAgICAgICAgICB0aGlzLm1hc2tJZFxuICAgICAgICAgICAgICB9KWBcbiAgICAgICAgICAgIDogbnVsbDtcbiAgICB9XG5cbiAgICBnZXQgcmFkaXVzKCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiBSQURJSVt0aGlzLnNpemVdO1xuICAgIH1cblxuICAgIGdldCBzZWdtZW50cygpOiBSZWFkb25seUFycmF5PFtudW1iZXIsIG51bWJlcl0+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZ2V0U2VnbWVudHModGhpcy52YWx1ZSk7XG4gICAgfVxuXG4gICAgZ2V0VHJhbnNmb3JtKGluZGV4OiBudW1iZXIpOiBzdHJpbmcgfCBudWxsIHtcbiAgICAgICAgY29uc3QgdHJhbnNmb3JtID0gdGhpcy5tYXNrZWRcbiAgICAgICAgICAgID8gYHNjYWxlKCR7VFJBTlNGT1JNW3RoaXMuc2l6ZV19KWBcbiAgICAgICAgICAgIDogYHNjYWxlKCR7VFJBTlNGT1JNLnhzfSlgO1xuXG4gICAgICAgIHJldHVybiBpbmRleCA9PT0gdGhpcy5hY3RpdmVJdGVtSW5kZXggPyB0cmFuc2Zvcm0gOiBudWxsO1xuICAgIH1cblxuICAgIG9uSG92ZXJlZChob3ZlcmVkOiBib29sZWFuLCBpbmRleDogbnVtYmVyKTogdm9pZCB7XG4gICAgICAgIHRoaXMudXBkYXRlQWN0aXZlSXRlbUluZGV4KGhvdmVyZWQgPyBpbmRleCA6IE5hTik7XG4gICAgfVxuXG4gICAgZ2V0Q29sb3IoaW5kZXg6IG51bWJlcik6IFNhZmVWYWx1ZSB7XG4gICAgICAgIHJldHVybiBgdmFyKC0tdHVpLWNoYXJ0LSR7aW5kZXh9YDtcbiAgICB9XG5cbiAgICBAdHVpUHVyZVxuICAgIHByaXZhdGUgZ2V0U3VtKHZhbHVlOiByZWFkb25seSBudW1iZXJbXSk6IG51bWJlciB7XG4gICAgICAgIHJldHVybiB0dWlTdW0oLi4udmFsdWUpO1xuICAgIH1cblxuICAgIEB0dWlQdXJlXG4gICAgcHJpdmF0ZSBnZXRTZWdtZW50cyh2YWx1ZTogcmVhZG9ubHkgbnVtYmVyW10pOiBSZWFkb25seUFycmF5PFtudW1iZXIsIG51bWJlcl0+IHtcbiAgICAgICAgcmV0dXJuIHZhbHVlXG4gICAgICAgICAgICAubWFwKChpbml0aWFsLCBpLCBhcnJheSkgPT5cbiAgICAgICAgICAgICAgICBhcnJheS5yZWR1Y2UoXG4gICAgICAgICAgICAgICAgICAgIChzdW0sIGN1cnJlbnQsIGopID0+IChqIDwgaSA/IHRoaXMuZ2V0RGVnKGN1cnJlbnQpICsgc3VtIDogc3VtKSxcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5nZXREZWcoaW5pdGlhbCksXG4gICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgIClcbiAgICAgICAgICAgIC5tYXAoKGFuZ2xlLCBpbmRleCwgYXJyYXkpID0+IFtcbiAgICAgICAgICAgICAgICBhcnJheVtpbmRleCAtIDFdIHx8IDAsXG4gICAgICAgICAgICAgICAgTWF0aC5taW4oYW5nbGUsIDM1OS45OTk5KSxcbiAgICAgICAgICAgIF0pO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0RGVnKHZhbHVlOiBudW1iZXIpOiBudW1iZXIge1xuICAgICAgICByZXR1cm4gMzYwICogKHZhbHVlIC8gdGhpcy5nZXRTdW0odGhpcy52YWx1ZSkpO1xuICAgIH1cblxuICAgIHByaXZhdGUgdXBkYXRlQWN0aXZlSXRlbUluZGV4KGluZGV4OiBudW1iZXIpOiB2b2lkIHtcbiAgICAgICAgaWYgKGluZGV4ID09PSB0aGlzLmFjdGl2ZUl0ZW1JbmRleCkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5hY3RpdmVJdGVtSW5kZXggPSBpbmRleDtcbiAgICAgICAgdGhpcy5hY3RpdmVJdGVtSW5kZXhDaGFuZ2UubmV4dChpbmRleCk7XG4gICAgfVxufVxuIiwiPHN2Z1xuICAgIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICAgIGhlaWdodD1cIjEwMCVcIlxuICAgIHdpZHRoPVwiMTAwJVwiXG4gICAgdmlld0JveD1cIi0xMDAgLTEwMCAyMDAgMjAwXCJcbiAgICBmb2N1c2FibGU9XCJmYWxzZVwiXG4gICAgY2xhc3M9XCJ0LXN2Z1wiXG4+XG4gICAgPGRlZnM+XG4gICAgICAgIDxtYXNrIFthdHRyLmlkXT1cIm1hc2tJZFwiPlxuICAgICAgICAgICAgPHJlY3RcbiAgICAgICAgICAgICAgICB4PVwiLTIwMFwiXG4gICAgICAgICAgICAgICAgeT1cIi0yMDBcIlxuICAgICAgICAgICAgICAgIHdpZHRoPVwiNDAwXCJcbiAgICAgICAgICAgICAgICBoZWlnaHQ9XCI0MDBcIlxuICAgICAgICAgICAgICAgIGZpbGw9XCJ3aGl0ZVwiXG4gICAgICAgICAgICAvPlxuICAgICAgICAgICAgPGNpcmNsZVxuICAgICAgICAgICAgICAgIGN4PVwiMFwiXG4gICAgICAgICAgICAgICAgY3k9XCIwXCJcbiAgICAgICAgICAgICAgICBbYXR0ci5yXT1cInJhZGl1c1wiXG4gICAgICAgICAgICAvPlxuICAgICAgICA8L21hc2s+XG4gICAgPC9kZWZzPlxuICAgIDxnIFtzdHlsZS5tYXNrXT1cIm1hc2tcIj5cbiAgICAgICAgPGNpcmNsZVxuICAgICAgICAgICAgY3g9XCIwXCJcbiAgICAgICAgICAgIGN5PVwiMFwiXG4gICAgICAgICAgICByPVwiMTAwXCJcbiAgICAgICAgICAgIGNsYXNzPVwidC1wbGFjZWhvbGRlclwiXG4gICAgICAgIC8+XG4gICAgICAgIDxwYXRoXG4gICAgICAgICAgICAqdHVpUmVwZWF0VGltZXM9XCJsZXQgaW5kZXggb2Ygc2VnbWVudHMubGVuZ3RoXCJcbiAgICAgICAgICAgIGZpbGw9XCJjdXJyZW50Q29sb3JcIlxuICAgICAgICAgICAgYXV0b21hdGlvbi1pZD1cInR1aS1waWUtY2hhcnRfX3NlZ21lbnRcIlxuICAgICAgICAgICAgdHVpSGludFBvaW50ZXJcbiAgICAgICAgICAgIHR1aUhpbnRBcHBlYXJhbmNlPVwib25EYXJrXCJcbiAgICAgICAgICAgIHR1aUhpbnREaXJlY3Rpb249XCJ0b3AtcmlnaHRcIlxuICAgICAgICAgICAgZD1cIlwiXG4gICAgICAgICAgICBjbGFzcz1cInQtc2VnbWVudFwiXG4gICAgICAgICAgICBbYXR0ci50cmFuc2Zvcm1dPVwiZ2V0VHJhbnNmb3JtKGluZGV4KVwiXG4gICAgICAgICAgICBbc3R5bGUuY29sb3JdPVwiZ2V0Q29sb3IoaW5kZXgpXCJcbiAgICAgICAgICAgIFt0dWlQaWVDaGFydF09XCJzZWdtZW50c1tpbmRleF1cIlxuICAgICAgICAgICAgW3R1aUhpbnRdPVwiaGludENvbnRlbnRcIlxuICAgICAgICAgICAgW3R1aUhpbnRDb250ZXh0XT1cInskaW1wbGljaXQ6IGluZGV4fVwiXG4gICAgICAgICAgICAodHVpSG92ZXJlZENoYW5nZSk9XCJvbkhvdmVyZWQoJGV2ZW50LCBpbmRleClcIlxuICAgICAgICAvPlxuICAgIDwvZz5cbjwvc3ZnPlxuIl19