@taiga-ui/addon-charts 3.58.0 → 3.59.0-canary.10da730

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 (240) hide show
  1. package/components/arc-chart/arc-chart.component.d.ts +1 -1
  2. package/components/axes/axes.component.d.ts +1 -1
  3. package/components/bar/bar.component.d.ts +1 -1
  4. package/components/bar-chart/bar-chart.component.d.ts +1 -1
  5. package/components/bar-set/bar-set.component.d.ts +1 -1
  6. package/components/legend-item/legend-item.component.d.ts +1 -1
  7. package/components/line-chart/line-chart-hint.directive.d.ts +1 -1
  8. package/components/line-chart/line-chart.component.d.ts +1 -1
  9. package/components/line-days-chart/line-days-chart-hint.directive.d.ts +1 -1
  10. package/components/line-days-chart/line-days-chart.component.d.ts +1 -1
  11. package/components/pie-chart/pie-chart.component.d.ts +1 -1
  12. package/components/pie-chart/pie-chart.directive.d.ts +1 -1
  13. package/components/ring-chart/ring-chart.component.d.ts +1 -1
  14. package/esm2020/components/arc-chart/arc-chart.component.mjs +117 -0
  15. package/{esm2015/components/arc-chart/arc-chart.module.js → esm2020/components/arc-chart/arc-chart.module.mjs} +5 -5
  16. package/esm2020/components/axes/axes.component.mjs +83 -0
  17. package/{esm2015/components/axes/axes.module.js → esm2020/components/axes/axes.module.mjs} +5 -5
  18. package/{esm2015/components/bar/bar.component.js → esm2020/components/bar/bar.component.mjs} +5 -10
  19. package/{esm2015/components/bar/bar.module.js → esm2020/components/bar/bar.module.mjs} +5 -5
  20. package/esm2020/components/bar-chart/bar-chart.component.mjs +75 -0
  21. package/{esm2015/components/bar-chart/bar-chart.module.js → esm2020/components/bar-chart/bar-chart.module.mjs} +9 -11
  22. package/esm2020/components/bar-set/bar-set.component.mjs +52 -0
  23. package/{esm2015/components/bar-set/bar-set.module.js → esm2020/components/bar-set/bar-set.module.mjs} +5 -5
  24. package/esm2020/components/legend-item/legend-item.component.mjs +41 -0
  25. package/{esm2015/components/legend-item/legend-item.module.js → esm2020/components/legend-item/legend-item.module.mjs} +5 -5
  26. package/esm2020/components/line-chart/line-chart-hint.directive.mjs +78 -0
  27. package/esm2020/components/line-chart/line-chart.component.mjs +188 -0
  28. package/{esm2015/components/line-chart/line-chart.module.js → esm2020/components/line-chart/line-chart.module.mjs} +9 -11
  29. package/esm2020/components/line-days-chart/line-days-chart-hint.directive.mjs +77 -0
  30. package/{esm2015/components/line-days-chart/line-days-chart.component.js → esm2020/components/line-days-chart/line-days-chart.component.mjs} +28 -36
  31. package/{esm2015/components/line-days-chart/line-days-chart.module.js → esm2020/components/line-days-chart/line-days-chart.module.mjs} +5 -5
  32. package/esm2020/components/pie-chart/pie-chart.component.mjs +129 -0
  33. package/esm2020/components/pie-chart/pie-chart.directive.mjs +61 -0
  34. package/{esm2015/components/pie-chart/pie-chart.module.js → esm2020/components/pie-chart/pie-chart.module.mjs} +9 -11
  35. package/esm2020/components/ring-chart/ring-chart.component.mjs +39 -0
  36. package/{esm2015/components/ring-chart/ring-chart.module.js → esm2020/components/ring-chart/ring-chart.module.mjs} +5 -5
  37. package/{esm2015/utils/line-length.js → esm2020/utils/line-length.mjs} +2 -2
  38. package/fesm2015/taiga-ui-addon-charts-components-arc-chart.mjs +140 -0
  39. package/fesm2015/taiga-ui-addon-charts-components-arc-chart.mjs.map +1 -0
  40. package/fesm2015/taiga-ui-addon-charts-components-axes.mjs +107 -0
  41. package/fesm2015/taiga-ui-addon-charts-components-axes.mjs.map +1 -0
  42. package/fesm2015/taiga-ui-addon-charts-components-bar-chart.mjs +115 -0
  43. package/fesm2015/taiga-ui-addon-charts-components-bar-chart.mjs.map +1 -0
  44. package/fesm2015/{taiga-ui-addon-charts-components-bar-set.js → taiga-ui-addon-charts-components-bar-set.mjs} +12 -17
  45. package/fesm2015/taiga-ui-addon-charts-components-bar-set.mjs.map +1 -0
  46. package/fesm2015/{taiga-ui-addon-charts-components-bar.js → taiga-ui-addon-charts-components-bar.mjs} +9 -14
  47. package/fesm2015/taiga-ui-addon-charts-components-bar.mjs.map +1 -0
  48. package/fesm2015/{taiga-ui-addon-charts-components-legend-item.js → taiga-ui-addon-charts-components-legend-item.mjs} +9 -14
  49. package/fesm2015/taiga-ui-addon-charts-components-legend-item.mjs.map +1 -0
  50. package/fesm2015/taiga-ui-addon-charts-components-line-chart.mjs +310 -0
  51. package/fesm2015/taiga-ui-addon-charts-components-line-chart.mjs.map +1 -0
  52. package/fesm2015/taiga-ui-addon-charts-components-line-days-chart.mjs +290 -0
  53. package/fesm2015/taiga-ui-addon-charts-components-line-days-chart.mjs.map +1 -0
  54. package/fesm2015/taiga-ui-addon-charts-components-pie-chart.mjs +227 -0
  55. package/fesm2015/taiga-ui-addon-charts-components-pie-chart.mjs.map +1 -0
  56. package/fesm2015/{taiga-ui-addon-charts-components-ring-chart.js → taiga-ui-addon-charts-components-ring-chart.mjs} +9 -14
  57. package/fesm2015/taiga-ui-addon-charts-components-ring-chart.mjs.map +1 -0
  58. package/fesm2015/{taiga-ui-addon-charts-components.js → taiga-ui-addon-charts-components.mjs} +1 -1
  59. package/fesm2015/taiga-ui-addon-charts-components.mjs.map +1 -0
  60. package/fesm2015/{taiga-ui-addon-charts-constants.js → taiga-ui-addon-charts-constants.mjs} +1 -1
  61. package/fesm2015/taiga-ui-addon-charts-constants.mjs.map +1 -0
  62. package/fesm2015/taiga-ui-addon-charts-interfaces.mjs +4 -0
  63. package/fesm2015/taiga-ui-addon-charts-interfaces.mjs.map +1 -0
  64. package/fesm2015/taiga-ui-addon-charts-types.mjs +4 -0
  65. package/fesm2015/taiga-ui-addon-charts-types.mjs.map +1 -0
  66. package/fesm2015/{taiga-ui-addon-charts-utils.js → taiga-ui-addon-charts-utils.mjs} +1 -1
  67. package/fesm2015/taiga-ui-addon-charts-utils.mjs.map +1 -0
  68. package/fesm2015/{taiga-ui-addon-charts.js → taiga-ui-addon-charts.mjs} +1 -1
  69. package/fesm2015/taiga-ui-addon-charts.mjs.map +1 -0
  70. package/{fesm2015/taiga-ui-addon-charts-components-arc-chart.js → fesm2020/taiga-ui-addon-charts-components-arc-chart.mjs} +13 -19
  71. package/fesm2020/taiga-ui-addon-charts-components-arc-chart.mjs.map +1 -0
  72. package/{fesm2015/taiga-ui-addon-charts-components-axes.js → fesm2020/taiga-ui-addon-charts-components-axes.mjs} +13 -20
  73. package/fesm2020/taiga-ui-addon-charts-components-axes.mjs.map +1 -0
  74. package/{fesm2015/taiga-ui-addon-charts-components-bar-chart.js → fesm2020/taiga-ui-addon-charts-components-bar-chart.mjs} +21 -30
  75. package/fesm2020/taiga-ui-addon-charts-components-bar-chart.mjs.map +1 -0
  76. package/fesm2020/taiga-ui-addon-charts-components-bar-set.mjs +75 -0
  77. package/fesm2020/taiga-ui-addon-charts-components-bar-set.mjs.map +1 -0
  78. package/fesm2020/taiga-ui-addon-charts-components-bar.mjs +59 -0
  79. package/fesm2020/taiga-ui-addon-charts-components-bar.mjs.map +1 -0
  80. package/fesm2020/taiga-ui-addon-charts-components-legend-item.mjs +64 -0
  81. package/fesm2020/taiga-ui-addon-charts-components-legend-item.mjs.map +1 -0
  82. package/{fesm2015/taiga-ui-addon-charts-components-line-chart.js → fesm2020/taiga-ui-addon-charts-components-line-chart.mjs} +29 -41
  83. package/fesm2020/taiga-ui-addon-charts-components-line-chart.mjs.map +1 -0
  84. package/{fesm2015/taiga-ui-addon-charts-components-line-days-chart.js → fesm2020/taiga-ui-addon-charts-components-line-days-chart.mjs} +36 -44
  85. package/fesm2020/taiga-ui-addon-charts-components-line-days-chart.mjs.map +1 -0
  86. package/{fesm2015/taiga-ui-addon-charts-components-pie-chart.js → fesm2020/taiga-ui-addon-charts-components-pie-chart.mjs} +24 -34
  87. package/fesm2020/taiga-ui-addon-charts-components-pie-chart.mjs.map +1 -0
  88. package/fesm2020/taiga-ui-addon-charts-components-ring-chart.mjs +63 -0
  89. package/fesm2020/taiga-ui-addon-charts-components-ring-chart.mjs.map +1 -0
  90. package/fesm2020/taiga-ui-addon-charts-components.mjs +15 -0
  91. package/fesm2020/taiga-ui-addon-charts-components.mjs.map +1 -0
  92. package/fesm2020/taiga-ui-addon-charts-constants.mjs +11 -0
  93. package/fesm2020/taiga-ui-addon-charts-constants.mjs.map +1 -0
  94. package/fesm2020/taiga-ui-addon-charts-interfaces.mjs +4 -0
  95. package/fesm2020/taiga-ui-addon-charts-interfaces.mjs.map +1 -0
  96. package/fesm2020/taiga-ui-addon-charts-types.mjs +4 -0
  97. package/fesm2020/taiga-ui-addon-charts-types.mjs.map +1 -0
  98. package/fesm2020/taiga-ui-addon-charts-utils.mjs +87 -0
  99. package/fesm2020/taiga-ui-addon-charts-utils.mjs.map +1 -0
  100. package/fesm2020/taiga-ui-addon-charts.mjs +9 -0
  101. package/fesm2020/taiga-ui-addon-charts.mjs.map +1 -0
  102. package/package.json +165 -32
  103. package/types/line-handler.d.ts +1 -1
  104. package/types/line-type.d.ts +1 -1
  105. package/bundles/taiga-ui-addon-charts-components-arc-chart.umd.js +0 -508
  106. package/bundles/taiga-ui-addon-charts-components-arc-chart.umd.js.map +0 -1
  107. package/bundles/taiga-ui-addon-charts-components-axes.umd.js +0 -158
  108. package/bundles/taiga-ui-addon-charts-components-axes.umd.js.map +0 -1
  109. package/bundles/taiga-ui-addon-charts-components-bar-chart.umd.js +0 -477
  110. package/bundles/taiga-ui-addon-charts-components-bar-chart.umd.js.map +0 -1
  111. package/bundles/taiga-ui-addon-charts-components-bar-set.umd.js +0 -438
  112. package/bundles/taiga-ui-addon-charts-components-bar-set.umd.js.map +0 -1
  113. package/bundles/taiga-ui-addon-charts-components-bar.umd.js +0 -411
  114. package/bundles/taiga-ui-addon-charts-components-bar.umd.js.map +0 -1
  115. package/bundles/taiga-ui-addon-charts-components-legend-item.umd.js +0 -103
  116. package/bundles/taiga-ui-addon-charts-components-legend-item.umd.js.map +0 -1
  117. package/bundles/taiga-ui-addon-charts-components-line-chart.umd.js +0 -726
  118. package/bundles/taiga-ui-addon-charts-components-line-chart.umd.js.map +0 -1
  119. package/bundles/taiga-ui-addon-charts-components-line-days-chart.umd.js +0 -685
  120. package/bundles/taiga-ui-addon-charts-components-line-days-chart.umd.js.map +0 -1
  121. package/bundles/taiga-ui-addon-charts-components-pie-chart.umd.js +0 -611
  122. package/bundles/taiga-ui-addon-charts-components-pie-chart.umd.js.map +0 -1
  123. package/bundles/taiga-ui-addon-charts-components-ring-chart.umd.js +0 -97
  124. package/bundles/taiga-ui-addon-charts-components-ring-chart.umd.js.map +0 -1
  125. package/bundles/taiga-ui-addon-charts-components.umd.js +0 -75
  126. package/bundles/taiga-ui-addon-charts-components.umd.js.map +0 -1
  127. package/bundles/taiga-ui-addon-charts-constants.umd.js +0 -24
  128. package/bundles/taiga-ui-addon-charts-constants.umd.js.map +0 -1
  129. package/bundles/taiga-ui-addon-charts-interfaces.umd.js +0 -11
  130. package/bundles/taiga-ui-addon-charts-interfaces.umd.js.map +0 -1
  131. package/bundles/taiga-ui-addon-charts-types.umd.js +0 -11
  132. package/bundles/taiga-ui-addon-charts-types.umd.js.map +0 -1
  133. package/bundles/taiga-ui-addon-charts-utils.umd.js +0 -422
  134. package/bundles/taiga-ui-addon-charts-utils.umd.js.map +0 -1
  135. package/bundles/taiga-ui-addon-charts.umd.js +0 -39
  136. package/bundles/taiga-ui-addon-charts.umd.js.map +0 -1
  137. package/components/arc-chart/package.json +0 -10
  138. package/components/arc-chart/taiga-ui-addon-charts-components-arc-chart.d.ts +0 -5
  139. package/components/axes/package.json +0 -10
  140. package/components/axes/taiga-ui-addon-charts-components-axes.d.ts +0 -5
  141. package/components/bar/package.json +0 -10
  142. package/components/bar/taiga-ui-addon-charts-components-bar.d.ts +0 -5
  143. package/components/bar-chart/package.json +0 -10
  144. package/components/bar-chart/taiga-ui-addon-charts-components-bar-chart.d.ts +0 -5
  145. package/components/bar-set/package.json +0 -10
  146. package/components/bar-set/taiga-ui-addon-charts-components-bar-set.d.ts +0 -5
  147. package/components/legend-item/package.json +0 -10
  148. package/components/legend-item/taiga-ui-addon-charts-components-legend-item.d.ts +0 -5
  149. package/components/line-chart/package.json +0 -10
  150. package/components/line-chart/taiga-ui-addon-charts-components-line-chart.d.ts +0 -5
  151. package/components/line-days-chart/package.json +0 -10
  152. package/components/line-days-chart/taiga-ui-addon-charts-components-line-days-chart.d.ts +0 -5
  153. package/components/package.json +0 -10
  154. package/components/pie-chart/package.json +0 -10
  155. package/components/pie-chart/taiga-ui-addon-charts-components-pie-chart.d.ts +0 -5
  156. package/components/ring-chart/package.json +0 -10
  157. package/components/ring-chart/taiga-ui-addon-charts-components-ring-chart.d.ts +0 -5
  158. package/components/taiga-ui-addon-charts-components.d.ts +0 -5
  159. package/constants/package.json +0 -10
  160. package/constants/taiga-ui-addon-charts-constants.d.ts +0 -5
  161. package/esm2015/components/arc-chart/arc-chart.component.js +0 -123
  162. package/esm2015/components/axes/axes.component.js +0 -90
  163. package/esm2015/components/bar-chart/bar-chart.component.js +0 -82
  164. package/esm2015/components/bar-set/bar-set.component.js +0 -57
  165. package/esm2015/components/legend-item/legend-item.component.js +0 -46
  166. package/esm2015/components/line-chart/line-chart-hint.directive.js +0 -79
  167. package/esm2015/components/line-chart/line-chart.component.js +0 -198
  168. package/esm2015/components/line-days-chart/line-days-chart-hint.directive.js +0 -78
  169. package/esm2015/components/pie-chart/pie-chart.component.js +0 -136
  170. package/esm2015/components/pie-chart/pie-chart.directive.js +0 -62
  171. package/esm2015/components/ring-chart/ring-chart.component.js +0 -44
  172. package/fesm2015/taiga-ui-addon-charts-components-arc-chart.js.map +0 -1
  173. package/fesm2015/taiga-ui-addon-charts-components-axes.js.map +0 -1
  174. package/fesm2015/taiga-ui-addon-charts-components-bar-chart.js.map +0 -1
  175. package/fesm2015/taiga-ui-addon-charts-components-bar-set.js.map +0 -1
  176. package/fesm2015/taiga-ui-addon-charts-components-bar.js.map +0 -1
  177. package/fesm2015/taiga-ui-addon-charts-components-legend-item.js.map +0 -1
  178. package/fesm2015/taiga-ui-addon-charts-components-line-chart.js.map +0 -1
  179. package/fesm2015/taiga-ui-addon-charts-components-line-days-chart.js.map +0 -1
  180. package/fesm2015/taiga-ui-addon-charts-components-pie-chart.js.map +0 -1
  181. package/fesm2015/taiga-ui-addon-charts-components-ring-chart.js.map +0 -1
  182. package/fesm2015/taiga-ui-addon-charts-components.js.map +0 -1
  183. package/fesm2015/taiga-ui-addon-charts-constants.js.map +0 -1
  184. package/fesm2015/taiga-ui-addon-charts-interfaces.js +0 -4
  185. package/fesm2015/taiga-ui-addon-charts-interfaces.js.map +0 -1
  186. package/fesm2015/taiga-ui-addon-charts-types.js +0 -4
  187. package/fesm2015/taiga-ui-addon-charts-types.js.map +0 -1
  188. package/fesm2015/taiga-ui-addon-charts-utils.js.map +0 -1
  189. package/fesm2015/taiga-ui-addon-charts.js.map +0 -1
  190. package/interfaces/package.json +0 -10
  191. package/interfaces/taiga-ui-addon-charts-interfaces.d.ts +0 -5
  192. package/taiga-ui-addon-charts.d.ts +0 -5
  193. package/types/package.json +0 -10
  194. package/types/taiga-ui-addon-charts-types.d.ts +0 -5
  195. package/utils/package.json +0 -10
  196. package/utils/taiga-ui-addon-charts-utils.d.ts +0 -5
  197. /package/{esm2015/components/arc-chart/index.js → esm2020/components/arc-chart/index.mjs} +0 -0
  198. /package/{esm2015/components/arc-chart/taiga-ui-addon-charts-components-arc-chart.js → esm2020/components/arc-chart/taiga-ui-addon-charts-components-arc-chart.mjs} +0 -0
  199. /package/{esm2015/components/axes/index.js → esm2020/components/axes/index.mjs} +0 -0
  200. /package/{esm2015/components/axes/taiga-ui-addon-charts-components-axes.js → esm2020/components/axes/taiga-ui-addon-charts-components-axes.mjs} +0 -0
  201. /package/{esm2015/components/bar/index.js → esm2020/components/bar/index.mjs} +0 -0
  202. /package/{esm2015/components/bar/taiga-ui-addon-charts-components-bar.js → esm2020/components/bar/taiga-ui-addon-charts-components-bar.mjs} +0 -0
  203. /package/{esm2015/components/bar-chart/index.js → esm2020/components/bar-chart/index.mjs} +0 -0
  204. /package/{esm2015/components/bar-chart/taiga-ui-addon-charts-components-bar-chart.js → esm2020/components/bar-chart/taiga-ui-addon-charts-components-bar-chart.mjs} +0 -0
  205. /package/{esm2015/components/bar-set/index.js → esm2020/components/bar-set/index.mjs} +0 -0
  206. /package/{esm2015/components/bar-set/taiga-ui-addon-charts-components-bar-set.js → esm2020/components/bar-set/taiga-ui-addon-charts-components-bar-set.mjs} +0 -0
  207. /package/{esm2015/components/index.js → esm2020/components/index.mjs} +0 -0
  208. /package/{esm2015/components/legend-item/index.js → esm2020/components/legend-item/index.mjs} +0 -0
  209. /package/{esm2015/components/legend-item/taiga-ui-addon-charts-components-legend-item.js → esm2020/components/legend-item/taiga-ui-addon-charts-components-legend-item.mjs} +0 -0
  210. /package/{esm2015/components/line-chart/index.js → esm2020/components/line-chart/index.mjs} +0 -0
  211. /package/{esm2015/components/line-chart/line-chart.options.js → esm2020/components/line-chart/line-chart.options.mjs} +0 -0
  212. /package/{esm2015/components/line-chart/taiga-ui-addon-charts-components-line-chart.js → esm2020/components/line-chart/taiga-ui-addon-charts-components-line-chart.mjs} +0 -0
  213. /package/{esm2015/components/line-days-chart/index.js → esm2020/components/line-days-chart/index.mjs} +0 -0
  214. /package/{esm2015/components/line-days-chart/taiga-ui-addon-charts-components-line-days-chart.js → esm2020/components/line-days-chart/taiga-ui-addon-charts-components-line-days-chart.mjs} +0 -0
  215. /package/{esm2015/components/pie-chart/index.js → esm2020/components/pie-chart/index.mjs} +0 -0
  216. /package/{esm2015/components/pie-chart/taiga-ui-addon-charts-components-pie-chart.js → esm2020/components/pie-chart/taiga-ui-addon-charts-components-pie-chart.mjs} +0 -0
  217. /package/{esm2015/components/ring-chart/index.js → esm2020/components/ring-chart/index.mjs} +0 -0
  218. /package/{esm2015/components/ring-chart/taiga-ui-addon-charts-components-ring-chart.js → esm2020/components/ring-chart/taiga-ui-addon-charts-components-ring-chart.mjs} +0 -0
  219. /package/{esm2015/components/taiga-ui-addon-charts-components.js → esm2020/components/taiga-ui-addon-charts-components.mjs} +0 -0
  220. /package/{esm2015/constants/index.js → esm2020/constants/index.mjs} +0 -0
  221. /package/{esm2015/constants/line-handlers.js → esm2020/constants/line-handlers.mjs} +0 -0
  222. /package/{esm2015/constants/taiga-ui-addon-charts-constants.js → esm2020/constants/taiga-ui-addon-charts-constants.mjs} +0 -0
  223. /package/{esm2015/index.js → esm2020/index.mjs} +0 -0
  224. /package/{esm2015/interfaces/index.js → esm2020/interfaces/index.mjs} +0 -0
  225. /package/{esm2015/interfaces/line-chart-hint-context.js → esm2020/interfaces/line-chart-hint-context.mjs} +0 -0
  226. /package/{esm2015/interfaces/taiga-ui-addon-charts-interfaces.js → esm2020/interfaces/taiga-ui-addon-charts-interfaces.mjs} +0 -0
  227. /package/{esm2015/taiga-ui-addon-charts.js → esm2020/taiga-ui-addon-charts.mjs} +0 -0
  228. /package/{esm2015/types/index.js → esm2020/types/index.mjs} +0 -0
  229. /package/{esm2015/types/line-handler.js → esm2020/types/line-handler.mjs} +0 -0
  230. /package/{esm2015/types/line-type.js → esm2020/types/line-type.mjs} +0 -0
  231. /package/{esm2015/types/taiga-ui-addon-charts-types.js → esm2020/types/taiga-ui-addon-charts-types.mjs} +0 -0
  232. /package/{esm2015/utils/control-point.js → esm2020/utils/control-point.mjs} +0 -0
  233. /package/{esm2015/utils/describe-sector.js → esm2020/utils/describe-sector.mjs} +0 -0
  234. /package/{esm2015/utils/draw-curve.js → esm2020/utils/draw-curve.mjs} +0 -0
  235. /package/{esm2015/utils/draw-line.js → esm2020/utils/draw-line.mjs} +0 -0
  236. /package/{esm2015/utils/draw.js → esm2020/utils/draw.mjs} +0 -0
  237. /package/{esm2015/utils/index.js → esm2020/utils/index.mjs} +0 -0
  238. /package/{esm2015/utils/line-angle.js → esm2020/utils/line-angle.mjs} +0 -0
  239. /package/{esm2015/utils/prepare-external-url.js → esm2020/utils/prepare-external-url.mjs} +0 -0
  240. /package/{esm2015/utils/taiga-ui-addon-charts-utils.js → esm2020/utils/taiga-ui-addon-charts-utils.mjs} +0 -0
@@ -0,0 +1,75 @@
1
+ import { __decorate } from "tslib";
2
+ import { ChangeDetectionStrategy, Component, Inject, Input, Optional, ViewChildren, } from '@angular/core';
3
+ import { EMPTY_QUERY, TuiIdService, tuiPure, tuiSum, } from '@taiga-ui/cdk';
4
+ import { TuiHintHoverDirective, TuiHintOptionsDirective, tuiHintOptionsProvider, } from '@taiga-ui/core';
5
+ import * as i0 from "@angular/core";
6
+ import * as i1 from "@angular/common";
7
+ import * as i2 from "@taiga-ui/addon-charts/components/bar-set";
8
+ import * as i3 from "@taiga-ui/cdk";
9
+ import * as i4 from "@taiga-ui/core";
10
+ export class TuiBarChartComponent {
11
+ constructor(hintOptions, idService) {
12
+ this.hintOptions = hintOptions;
13
+ this.drivers = EMPTY_QUERY;
14
+ this.value = [];
15
+ this.max = NaN;
16
+ this.size = 'm';
17
+ this.collapsed = false;
18
+ this.percentMapper = (set, collapsed, max) => (100 * (collapsed ? tuiSum(...set) : Math.max(...set))) / max;
19
+ this.autoIdString = idService.generate();
20
+ }
21
+ get hintContent() {
22
+ return this.hintOptions?.content || '';
23
+ }
24
+ get transposed() {
25
+ return this.transpose(this.value);
26
+ }
27
+ get computedMax() {
28
+ return this.max || this.getMax(this.value, this.collapsed);
29
+ }
30
+ getHintId(index) {
31
+ return `${this.autoIdString}_${index}`;
32
+ }
33
+ transpose(value) {
34
+ return value.reduce((result, next) => next.map((_, index) => [...(result[index] || []), next[index]]), []);
35
+ }
36
+ getMax(values, collapsed) {
37
+ return collapsed
38
+ ? Math.max(
39
+ // eslint-disable-next-line no-restricted-syntax
40
+ ...values.reduce((result, next) => result.map((value, index) => value + next[index])))
41
+ : values.reduce((max, value) => Math.max(...value, max), 0);
42
+ }
43
+ }
44
+ TuiBarChartComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: TuiBarChartComponent, deps: [{ token: TuiHintOptionsDirective, optional: true }, { token: TuiIdService }], target: i0.ɵɵFactoryTarget.Component });
45
+ TuiBarChartComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: TuiBarChartComponent, selector: "tui-bar-chart", inputs: { value: "value", max: "max", size: "size", collapsed: "collapsed" }, viewQueries: [{ propertyName: "drivers", predicate: TuiHintHoverDirective, descendants: true }], ngImport: i0, template: "<div\n *ngFor=\"let set of transposed; let index = index\"\n class=\"t-wrapper\"\n [class.t-wrapper_hoverable]=\"!!hintContent\"\n [class.t-wrapper_hovered]=\"drivers.get(index) | async\"\n [tuiHint]=\"hintContent\"\n [tuiHintContext]=\"{$implicit: index}\"\n [tuiHintDescribe]=\"getHintId(index)\"\n [tuiHintHost]=\"hintHost\"\n (mouseenter.once)=\"(0)\"\n>\n <div\n class=\"t-container\"\n [style.height.%]=\"set | tuiMapper: percentMapper : collapsed : computedMax\"\n >\n <div\n #hintHost\n class=\"t-host\"\n ></div>\n <tui-bar-set\n class=\"t-set\"\n [collapsed]=\"collapsed\"\n [id]=\"getHintId(index)\"\n [size]=\"size\"\n [tuiFocusable]=\"!!hintContent\"\n [value]=\"set\"\n ></tui-bar-set>\n </div>\n</div>\n", styles: [":host{display:flex;flex:1;height:100%}.t-wrapper{transition-property:background-color;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;position:relative;display:flex;flex:1;align-items:flex-end;justify-content:center;height:100%}.t-wrapper_hoverable{cursor:pointer}.t-wrapper_hoverable:hover,.t-wrapper_hoverable.t-wrapper_hovered{background-color:#0000000d}.t-container{flex:1}.t-host{position:absolute;left:50%;right:50%}.t-set{border-radius:var(--tui-radius-m);pointer-events:none;outline:none}.t-set:focus{box-shadow:0 0 0 2px var(--tui-focus)}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "component", type: i2.TuiBarSetComponent, selector: "tui-bar-set", inputs: ["value", "size", "collapsed"] }, { kind: "directive", type: i3.TuiFocusableDirective, selector: "[tuiFocusable]", inputs: ["tuiFocusable"] }, { kind: "directive", type: i4.TuiHintDirective, selector: "[tuiHint]:not(ng-container):not(ng-template)", inputs: ["tuiHint", "tuiHintContext", "tuiHintAppearance"] }, { kind: "directive", type: i4.TuiHintDriverDirective, selector: "[tuiHint]:not(ng-container):not(ng-template)" }, { kind: "directive", type: i4.TuiHintHostDirective, selector: "[tuiHint][tuiHintHost]", inputs: ["tuiHintHost"] }, { kind: "directive", type: i4.TuiHintHoverDirective, selector: "[tuiHint]:not(ng-container):not(ng-template)", inputs: ["tuiHintShowDelay", "tuiHintHideDelay"], exportAs: ["tuiHintHover"] }, { kind: "directive", type: i4.TuiHintDescribeDirective, selector: "[tuiHintDescribe]", inputs: ["tuiHintDescribe"] }, { kind: "directive", type: i4.TuiHintPositionDirective, selector: "[tuiHint]:not([tuiHintCustomPosition]):not(ng-container):not(ng-template)", inputs: ["tuiHintDirection"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: i3.TuiMapperPipe, name: "tuiMapper" }], viewProviders: [tuiHintOptionsProvider({ direction: 'top' })], changeDetection: i0.ChangeDetectionStrategy.OnPush });
46
+ __decorate([
47
+ tuiPure
48
+ ], TuiBarChartComponent.prototype, "transpose", null);
49
+ __decorate([
50
+ tuiPure
51
+ ], TuiBarChartComponent.prototype, "getMax", null);
52
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: TuiBarChartComponent, decorators: [{
53
+ type: Component,
54
+ args: [{ selector: 'tui-bar-chart', changeDetection: ChangeDetectionStrategy.OnPush, viewProviders: [tuiHintOptionsProvider({ direction: 'top' })], template: "<div\n *ngFor=\"let set of transposed; let index = index\"\n class=\"t-wrapper\"\n [class.t-wrapper_hoverable]=\"!!hintContent\"\n [class.t-wrapper_hovered]=\"drivers.get(index) | async\"\n [tuiHint]=\"hintContent\"\n [tuiHintContext]=\"{$implicit: index}\"\n [tuiHintDescribe]=\"getHintId(index)\"\n [tuiHintHost]=\"hintHost\"\n (mouseenter.once)=\"(0)\"\n>\n <div\n class=\"t-container\"\n [style.height.%]=\"set | tuiMapper: percentMapper : collapsed : computedMax\"\n >\n <div\n #hintHost\n class=\"t-host\"\n ></div>\n <tui-bar-set\n class=\"t-set\"\n [collapsed]=\"collapsed\"\n [id]=\"getHintId(index)\"\n [size]=\"size\"\n [tuiFocusable]=\"!!hintContent\"\n [value]=\"set\"\n ></tui-bar-set>\n </div>\n</div>\n", styles: [":host{display:flex;flex:1;height:100%}.t-wrapper{transition-property:background-color;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;position:relative;display:flex;flex:1;align-items:flex-end;justify-content:center;height:100%}.t-wrapper_hoverable{cursor:pointer}.t-wrapper_hoverable:hover,.t-wrapper_hoverable.t-wrapper_hovered{background-color:#0000000d}.t-container{flex:1}.t-host{position:absolute;left:50%;right:50%}.t-set{border-radius:var(--tui-radius-m);pointer-events:none;outline:none}.t-set:focus{box-shadow:0 0 0 2px var(--tui-focus)}\n"] }]
55
+ }], ctorParameters: function () { return [{ type: i4.TuiHintOptionsDirective, decorators: [{
56
+ type: Optional
57
+ }, {
58
+ type: Inject,
59
+ args: [TuiHintOptionsDirective]
60
+ }] }, { type: i3.TuiIdService, decorators: [{
61
+ type: Inject,
62
+ args: [TuiIdService]
63
+ }] }]; }, propDecorators: { drivers: [{
64
+ type: ViewChildren,
65
+ args: [TuiHintHoverDirective]
66
+ }], value: [{
67
+ type: Input
68
+ }], max: [{
69
+ type: Input
70
+ }], size: [{
71
+ type: Input
72
+ }], collapsed: [{
73
+ type: Input
74
+ }], transpose: [], getMax: [] } });
75
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFyLWNoYXJ0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FkZG9uLWNoYXJ0cy9jb21wb25lbnRzL2Jhci1jaGFydC9iYXItY2hhcnQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYWRkb24tY2hhcnRzL2NvbXBvbmVudHMvYmFyLWNoYXJ0L2Jhci1jaGFydC50ZW1wbGF0ZS5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQ0gsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxNQUFNLEVBQ04sS0FBSyxFQUNMLFFBQVEsRUFFUixZQUFZLEdBQ2YsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUNILFdBQVcsRUFFWCxZQUFZLEVBQ1osT0FBTyxFQUNQLE1BQU0sR0FFVCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQ0gscUJBQXFCLEVBQ3JCLHVCQUF1QixFQUN2QixzQkFBc0IsR0FHekIsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7O0FBV3hCLE1BQU0sT0FBTyxvQkFBb0I7SUFrQjdCLFlBR3FCLFdBQTJDLEVBQ3RDLFNBQXVCO1FBRDVCLGdCQUFXLEdBQVgsV0FBVyxDQUFnQztRQWpCdkQsWUFBTyxHQUFtQyxXQUFXLENBQUM7UUFHL0QsVUFBSyxHQUFxQyxFQUFFLENBQUM7UUFHN0MsUUFBRyxHQUFHLEdBQUcsQ0FBQztRQUdWLFNBQUksR0FBK0IsR0FBRyxDQUFDO1FBR3ZDLGNBQVMsR0FBRyxLQUFLLENBQUM7UUF1QlQsa0JBQWEsR0FDbEIsQ0FBQyxHQUFHLEVBQUUsU0FBUyxFQUFFLEdBQUcsRUFBRSxFQUFFLENBQ3BCLENBQUMsR0FBRyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsR0FBRyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEdBQUcsQ0FBQyxDQUFDLENBQUMsR0FBRyxHQUFHLENBQUM7UUFqQmxFLElBQUksQ0FBQyxZQUFZLEdBQUcsU0FBUyxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQzdDLENBQUM7SUFFRCxJQUFJLFdBQVc7UUFDWCxPQUFPLElBQUksQ0FBQyxXQUFXLEVBQUUsT0FBTyxJQUFJLEVBQUUsQ0FBQztJQUMzQyxDQUFDO0lBRUQsSUFBSSxVQUFVO1FBQ1YsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUN0QyxDQUFDO0lBRUQsSUFBSSxXQUFXO1FBQ1gsT0FBTyxJQUFJLENBQUMsR0FBRyxJQUFJLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDL0QsQ0FBQztJQU1ELFNBQVMsQ0FBQyxLQUFhO1FBQ25CLE9BQU8sR0FBRyxJQUFJLENBQUMsWUFBWSxJQUFJLEtBQUssRUFBRSxDQUFDO0lBQzNDLENBQUM7SUFHTyxTQUFTLENBQ2IsS0FBdUM7UUFFdkMsT0FBTyxLQUFLLENBQUMsTUFBTSxDQUNmLENBQUMsTUFBTSxFQUFFLElBQUksRUFBRSxFQUFFLENBQ2IsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsSUFBSSxFQUFFLENBQUMsRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxFQUNuRSxFQUFFLENBQ0wsQ0FBQztJQUNOLENBQUM7SUFHTyxNQUFNLENBQUMsTUFBd0MsRUFBRSxTQUFrQjtRQUN2RSxPQUFPLFNBQVM7WUFDWixDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUc7WUFDSixnREFBZ0Q7WUFDaEQsR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsTUFBTSxFQUFFLElBQUksRUFBRSxFQUFFLENBQzlCLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxLQUFLLEVBQUUsS0FBSyxFQUFFLEVBQUUsQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQ3BELENBQ0o7WUFDSCxDQUFDLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLEdBQUcsRUFBRSxLQUFLLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxLQUFLLEVBQUUsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDcEUsQ0FBQzs7a0hBcEVRLG9CQUFvQixrQkFvQmpCLHVCQUF1Qiw2QkFFdkIsWUFBWTtzR0F0QmYsb0JBQW9CLCtKQUdmLHFCQUFxQixnRENyQ3ZDLHMzQkE2QkEsMDdEREdtQixDQUFDLHNCQUFzQixDQUFDLEVBQUMsU0FBUyxFQUFFLEtBQUssRUFBQyxDQUFDLENBQUM7QUFrRDNEO0lBREMsT0FBTztxREFTUDtBQUdEO0lBREMsT0FBTztrREFVUDs0RkFwRVEsb0JBQW9CO2tCQVBoQyxTQUFTOytCQUNJLGVBQWUsbUJBR1IsdUJBQXVCLENBQUMsTUFBTSxpQkFDaEMsQ0FBQyxzQkFBc0IsQ0FBQyxFQUFDLFNBQVMsRUFBRSxLQUFLLEVBQUMsQ0FBQyxDQUFDOzswQkFxQnRELFFBQVE7OzBCQUNSLE1BQU07MkJBQUMsdUJBQXVCOzswQkFFOUIsTUFBTTsyQkFBQyxZQUFZOzRDQWxCZixPQUFPO3NCQURmLFlBQVk7dUJBQUMscUJBQXFCO2dCQUluQyxLQUFLO3NCQURKLEtBQUs7Z0JBSU4sR0FBRztzQkFERixLQUFLO2dCQUlOLElBQUk7c0JBREgsS0FBSztnQkFJTixTQUFTO3NCQURSLEtBQUs7Z0JBaUNFLFNBQVMsTUFXVCxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBDb21wb25lbnQsXG4gICAgSW5qZWN0LFxuICAgIElucHV0LFxuICAgIE9wdGlvbmFsLFxuICAgIFF1ZXJ5TGlzdCxcbiAgICBWaWV3Q2hpbGRyZW4sXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgICBFTVBUWV9RVUVSWSxcbiAgICBUdWlDb250ZXh0V2l0aEltcGxpY2l0LFxuICAgIFR1aUlkU2VydmljZSxcbiAgICB0dWlQdXJlLFxuICAgIHR1aVN1bSxcbiAgICBUdWlUeXBlZE1hcHBlcixcbn0gZnJvbSAnQHRhaWdhLXVpL2Nkayc7XG5pbXBvcnQge1xuICAgIFR1aUhpbnRIb3ZlckRpcmVjdGl2ZSxcbiAgICBUdWlIaW50T3B0aW9uc0RpcmVjdGl2ZSxcbiAgICB0dWlIaW50T3B0aW9uc1Byb3ZpZGVyLFxuICAgIFR1aVNpemVMLFxuICAgIFR1aVNpemVTLFxufSBmcm9tICdAdGFpZ2EtdWkvY29yZSc7XG5pbXBvcnQge1BvbHltb3JwaGV1c0NvbnRlbnR9IGZyb20gJ0B0aW5rb2ZmL25nLXBvbHltb3JwaGV1cyc7XG5pbXBvcnQge09ic2VydmFibGV9IGZyb20gJ3J4anMnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ3R1aS1iYXItY2hhcnQnLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9iYXItY2hhcnQudGVtcGxhdGUuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vYmFyLWNoYXJ0LnN0eWxlLmxlc3MnXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICB2aWV3UHJvdmlkZXJzOiBbdHVpSGludE9wdGlvbnNQcm92aWRlcih7ZGlyZWN0aW9uOiAndG9wJ30pXSxcbn0pXG5leHBvcnQgY2xhc3MgVHVpQmFyQ2hhcnRDb21wb25lbnQge1xuICAgIHByaXZhdGUgcmVhZG9ubHkgYXV0b0lkU3RyaW5nOiBzdHJpbmc7XG5cbiAgICBAVmlld0NoaWxkcmVuKFR1aUhpbnRIb3ZlckRpcmVjdGl2ZSlcbiAgICByZWFkb25seSBkcml2ZXJzOiBRdWVyeUxpc3Q8T2JzZXJ2YWJsZTxib29sZWFuPj4gPSBFTVBUWV9RVUVSWTtcblxuICAgIEBJbnB1dCgpXG4gICAgdmFsdWU6IFJlYWRvbmx5QXJyYXk8cmVhZG9ubHkgbnVtYmVyW10+ID0gW107XG5cbiAgICBASW5wdXQoKVxuICAgIG1heCA9IE5hTjtcblxuICAgIEBJbnB1dCgpXG4gICAgc2l6ZTogVHVpU2l6ZUwgfCBUdWlTaXplUyB8IG51bGwgPSAnbSc7XG5cbiAgICBASW5wdXQoKVxuICAgIGNvbGxhcHNlZCA9IGZhbHNlO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIEBPcHRpb25hbCgpXG4gICAgICAgIEBJbmplY3QoVHVpSGludE9wdGlvbnNEaXJlY3RpdmUpXG4gICAgICAgIHByaXZhdGUgcmVhZG9ubHkgaGludE9wdGlvbnM6IFR1aUhpbnRPcHRpb25zRGlyZWN0aXZlIHwgbnVsbCxcbiAgICAgICAgQEluamVjdChUdWlJZFNlcnZpY2UpIGlkU2VydmljZTogVHVpSWRTZXJ2aWNlLFxuICAgICkge1xuICAgICAgICB0aGlzLmF1dG9JZFN0cmluZyA9IGlkU2VydmljZS5nZW5lcmF0ZSgpO1xuICAgIH1cblxuICAgIGdldCBoaW50Q29udGVudCgpOiBQb2x5bW9ycGhldXNDb250ZW50PFR1aUNvbnRleHRXaXRoSW1wbGljaXQ8bnVtYmVyPj4ge1xuICAgICAgICByZXR1cm4gdGhpcy5oaW50T3B0aW9ucz8uY29udGVudCB8fCAnJztcbiAgICB9XG5cbiAgICBnZXQgdHJhbnNwb3NlZCgpOiBSZWFkb25seUFycmF5PHJlYWRvbmx5IG51bWJlcltdPiB7XG4gICAgICAgIHJldHVybiB0aGlzLnRyYW5zcG9zZSh0aGlzLnZhbHVlKTtcbiAgICB9XG5cbiAgICBnZXQgY29tcHV0ZWRNYXgoKTogbnVtYmVyIHtcbiAgICAgICAgcmV0dXJuIHRoaXMubWF4IHx8IHRoaXMuZ2V0TWF4KHRoaXMudmFsdWUsIHRoaXMuY29sbGFwc2VkKTtcbiAgICB9XG5cbiAgICByZWFkb25seSBwZXJjZW50TWFwcGVyOiBUdWlUeXBlZE1hcHBlcjxbcmVhZG9ubHkgbnVtYmVyW10sIGJvb2xlYW4sIG51bWJlcl0sIG51bWJlcj4gPVxuICAgICAgICAoc2V0LCBjb2xsYXBzZWQsIG1heCkgPT5cbiAgICAgICAgICAgICgxMDAgKiAoY29sbGFwc2VkID8gdHVpU3VtKC4uLnNldCkgOiBNYXRoLm1heCguLi5zZXQpKSkgLyBtYXg7XG5cbiAgICBnZXRIaW50SWQoaW5kZXg6IG51bWJlcik6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiBgJHt0aGlzLmF1dG9JZFN0cmluZ31fJHtpbmRleH1gO1xuICAgIH1cblxuICAgIEB0dWlQdXJlXG4gICAgcHJpdmF0ZSB0cmFuc3Bvc2UoXG4gICAgICAgIHZhbHVlOiBSZWFkb25seUFycmF5PHJlYWRvbmx5IG51bWJlcltdPixcbiAgICApOiBSZWFkb25seUFycmF5PHJlYWRvbmx5IG51bWJlcltdPiB7XG4gICAgICAgIHJldHVybiB2YWx1ZS5yZWR1Y2U8UmVhZG9ubHlBcnJheTxyZWFkb25seSBudW1iZXJbXT4+KFxuICAgICAgICAgICAgKHJlc3VsdCwgbmV4dCkgPT5cbiAgICAgICAgICAgICAgICBuZXh0Lm1hcCgoXywgaW5kZXgpID0+IFsuLi4ocmVzdWx0W2luZGV4XSB8fCBbXSksIG5leHRbaW5kZXhdXSksXG4gICAgICAgICAgICBbXSxcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBAdHVpUHVyZVxuICAgIHByaXZhdGUgZ2V0TWF4KHZhbHVlczogUmVhZG9ubHlBcnJheTxyZWFkb25seSBudW1iZXJbXT4sIGNvbGxhcHNlZDogYm9vbGVhbik6IG51bWJlciB7XG4gICAgICAgIHJldHVybiBjb2xsYXBzZWRcbiAgICAgICAgICAgID8gTWF0aC5tYXgoXG4gICAgICAgICAgICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tcmVzdHJpY3RlZC1zeW50YXhcbiAgICAgICAgICAgICAgICAgIC4uLnZhbHVlcy5yZWR1Y2UoKHJlc3VsdCwgbmV4dCkgPT5cbiAgICAgICAgICAgICAgICAgICAgICByZXN1bHQubWFwKCh2YWx1ZSwgaW5kZXgpID0+IHZhbHVlICsgbmV4dFtpbmRleF0pLFxuICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgOiB2YWx1ZXMucmVkdWNlKChtYXgsIHZhbHVlKSA9PiBNYXRoLm1heCguLi52YWx1ZSwgbWF4KSwgMCk7XG4gICAgfVxufVxuIiwiPGRpdlxuICAgICpuZ0Zvcj1cImxldCBzZXQgb2YgdHJhbnNwb3NlZDsgbGV0IGluZGV4ID0gaW5kZXhcIlxuICAgIGNsYXNzPVwidC13cmFwcGVyXCJcbiAgICBbY2xhc3MudC13cmFwcGVyX2hvdmVyYWJsZV09XCIhIWhpbnRDb250ZW50XCJcbiAgICBbY2xhc3MudC13cmFwcGVyX2hvdmVyZWRdPVwiZHJpdmVycy5nZXQoaW5kZXgpIHwgYXN5bmNcIlxuICAgIFt0dWlIaW50XT1cImhpbnRDb250ZW50XCJcbiAgICBbdHVpSGludENvbnRleHRdPVwieyRpbXBsaWNpdDogaW5kZXh9XCJcbiAgICBbdHVpSGludERlc2NyaWJlXT1cImdldEhpbnRJZChpbmRleClcIlxuICAgIFt0dWlIaW50SG9zdF09XCJoaW50SG9zdFwiXG4gICAgKG1vdXNlZW50ZXIub25jZSk9XCIoMClcIlxuPlxuICAgIDxkaXZcbiAgICAgICAgY2xhc3M9XCJ0LWNvbnRhaW5lclwiXG4gICAgICAgIFtzdHlsZS5oZWlnaHQuJV09XCJzZXQgfCB0dWlNYXBwZXI6IHBlcmNlbnRNYXBwZXIgOiBjb2xsYXBzZWQgOiBjb21wdXRlZE1heFwiXG4gICAgPlxuICAgICAgICA8ZGl2XG4gICAgICAgICAgICAjaGludEhvc3RcbiAgICAgICAgICAgIGNsYXNzPVwidC1ob3N0XCJcbiAgICAgICAgPjwvZGl2PlxuICAgICAgICA8dHVpLWJhci1zZXRcbiAgICAgICAgICAgIGNsYXNzPVwidC1zZXRcIlxuICAgICAgICAgICAgW2NvbGxhcHNlZF09XCJjb2xsYXBzZWRcIlxuICAgICAgICAgICAgW2lkXT1cImdldEhpbnRJZChpbmRleClcIlxuICAgICAgICAgICAgW3NpemVdPVwic2l6ZVwiXG4gICAgICAgICAgICBbdHVpRm9jdXNhYmxlXT1cIiEhaGludENvbnRlbnRcIlxuICAgICAgICAgICAgW3ZhbHVlXT1cInNldFwiXG4gICAgICAgID48L3R1aS1iYXItc2V0PlxuICAgIDwvZGl2PlxuPC9kaXY+XG4iXX0=
@@ -7,20 +7,18 @@ import { TuiBarChartComponent } from './bar-chart.component';
7
7
  import * as i0 from "@angular/core";
8
8
  export class TuiBarChartModule {
9
9
  }
10
- TuiBarChartModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiBarChartModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
11
- TuiBarChartModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiBarChartModule, declarations: [TuiBarChartComponent], imports: [CommonModule,
10
+ TuiBarChartModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: TuiBarChartModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
11
+ TuiBarChartModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.10", ngImport: i0, type: TuiBarChartModule, declarations: [TuiBarChartComponent], imports: [CommonModule,
12
12
  TuiBarSetModule,
13
13
  TuiFocusableModule,
14
14
  TuiHintModule,
15
15
  TuiMapperPipeModule], exports: [TuiBarChartComponent] });
16
- TuiBarChartModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiBarChartModule, imports: [[
17
- CommonModule,
18
- TuiBarSetModule,
19
- TuiFocusableModule,
20
- TuiHintModule,
21
- TuiMapperPipeModule,
22
- ]] });
23
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiBarChartModule, decorators: [{
16
+ TuiBarChartModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: TuiBarChartModule, imports: [CommonModule,
17
+ TuiBarSetModule,
18
+ TuiFocusableModule,
19
+ TuiHintModule,
20
+ TuiMapperPipeModule] });
21
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: TuiBarChartModule, decorators: [{
24
22
  type: NgModule,
25
23
  args: [{
26
24
  imports: [
@@ -34,4 +32,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
34
32
  exports: [TuiBarChartComponent],
35
33
  }]
36
34
  }] });
37
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFyLWNoYXJ0Lm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FkZG9uLWNoYXJ0cy9jb21wb25lbnRzL2Jhci1jaGFydC9iYXItY2hhcnQubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUM3QyxPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3ZDLE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSwyQ0FBMkMsQ0FBQztBQUMxRSxPQUFPLEVBQUMsa0JBQWtCLEVBQUUsbUJBQW1CLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDdEUsT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBRTdDLE9BQU8sRUFBQyxvQkFBb0IsRUFBQyxNQUFNLHVCQUF1QixDQUFDOztBQWEzRCxNQUFNLE9BQU8saUJBQWlCOzsrR0FBakIsaUJBQWlCO2dIQUFqQixpQkFBaUIsaUJBSFgsb0JBQW9CLGFBTi9CLFlBQVk7UUFDWixlQUFlO1FBQ2Ysa0JBQWtCO1FBQ2xCLGFBQWE7UUFDYixtQkFBbUIsYUFHYixvQkFBb0I7Z0hBRXJCLGlCQUFpQixZQVZqQjtZQUNMLFlBQVk7WUFDWixlQUFlO1lBQ2Ysa0JBQWtCO1lBQ2xCLGFBQWE7WUFDYixtQkFBbUI7U0FDdEI7NEZBSVEsaUJBQWlCO2tCQVg3QixRQUFRO21CQUFDO29CQUNOLE9BQU8sRUFBRTt3QkFDTCxZQUFZO3dCQUNaLGVBQWU7d0JBQ2Ysa0JBQWtCO3dCQUNsQixhQUFhO3dCQUNiLG1CQUFtQjtxQkFDdEI7b0JBQ0QsWUFBWSxFQUFFLENBQUMsb0JBQW9CLENBQUM7b0JBQ3BDLE9BQU8sRUFBRSxDQUFDLG9CQUFvQixDQUFDO2lCQUNsQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29tbW9uTW9kdWxlfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtOZ01vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1R1aUJhclNldE1vZHVsZX0gZnJvbSAnQHRhaWdhLXVpL2FkZG9uLWNoYXJ0cy9jb21wb25lbnRzL2Jhci1zZXQnO1xuaW1wb3J0IHtUdWlGb2N1c2FibGVNb2R1bGUsIFR1aU1hcHBlclBpcGVNb2R1bGV9IGZyb20gJ0B0YWlnYS11aS9jZGsnO1xuaW1wb3J0IHtUdWlIaW50TW9kdWxlfSBmcm9tICdAdGFpZ2EtdWkvY29yZSc7XG5cbmltcG9ydCB7VHVpQmFyQ2hhcnRDb21wb25lbnR9IGZyb20gJy4vYmFyLWNoYXJ0LmNvbXBvbmVudCc7XG5cbkBOZ01vZHVsZSh7XG4gICAgaW1wb3J0czogW1xuICAgICAgICBDb21tb25Nb2R1bGUsXG4gICAgICAgIFR1aUJhclNldE1vZHVsZSxcbiAgICAgICAgVHVpRm9jdXNhYmxlTW9kdWxlLFxuICAgICAgICBUdWlIaW50TW9kdWxlLFxuICAgICAgICBUdWlNYXBwZXJQaXBlTW9kdWxlLFxuICAgIF0sXG4gICAgZGVjbGFyYXRpb25zOiBbVHVpQmFyQ2hhcnRDb21wb25lbnRdLFxuICAgIGV4cG9ydHM6IFtUdWlCYXJDaGFydENvbXBvbmVudF0sXG59KVxuZXhwb3J0IGNsYXNzIFR1aUJhckNoYXJ0TW9kdWxlIHt9XG4iXX0=
35
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFyLWNoYXJ0Lm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FkZG9uLWNoYXJ0cy9jb21wb25lbnRzL2Jhci1jaGFydC9iYXItY2hhcnQubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUM3QyxPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3ZDLE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSwyQ0FBMkMsQ0FBQztBQUMxRSxPQUFPLEVBQUMsa0JBQWtCLEVBQUUsbUJBQW1CLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDdEUsT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBRTdDLE9BQU8sRUFBQyxvQkFBb0IsRUFBQyxNQUFNLHVCQUF1QixDQUFDOztBQWEzRCxNQUFNLE9BQU8saUJBQWlCOzsrR0FBakIsaUJBQWlCO2dIQUFqQixpQkFBaUIsaUJBSFgsb0JBQW9CLGFBTi9CLFlBQVk7UUFDWixlQUFlO1FBQ2Ysa0JBQWtCO1FBQ2xCLGFBQWE7UUFDYixtQkFBbUIsYUFHYixvQkFBb0I7Z0hBRXJCLGlCQUFpQixZQVR0QixZQUFZO1FBQ1osZUFBZTtRQUNmLGtCQUFrQjtRQUNsQixhQUFhO1FBQ2IsbUJBQW1COzRGQUtkLGlCQUFpQjtrQkFYN0IsUUFBUTttQkFBQztvQkFDTixPQUFPLEVBQUU7d0JBQ0wsWUFBWTt3QkFDWixlQUFlO3dCQUNmLGtCQUFrQjt3QkFDbEIsYUFBYTt3QkFDYixtQkFBbUI7cUJBQ3RCO29CQUNELFlBQVksRUFBRSxDQUFDLG9CQUFvQixDQUFDO29CQUNwQyxPQUFPLEVBQUUsQ0FBQyxvQkFBb0IsQ0FBQztpQkFDbEMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbW1vbk1vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7TmdNb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtUdWlCYXJTZXRNb2R1bGV9IGZyb20gJ0B0YWlnYS11aS9hZGRvbi1jaGFydHMvY29tcG9uZW50cy9iYXItc2V0JztcbmltcG9ydCB7VHVpRm9jdXNhYmxlTW9kdWxlLCBUdWlNYXBwZXJQaXBlTW9kdWxlfSBmcm9tICdAdGFpZ2EtdWkvY2RrJztcbmltcG9ydCB7VHVpSGludE1vZHVsZX0gZnJvbSAnQHRhaWdhLXVpL2NvcmUnO1xuXG5pbXBvcnQge1R1aUJhckNoYXJ0Q29tcG9uZW50fSBmcm9tICcuL2Jhci1jaGFydC5jb21wb25lbnQnO1xuXG5ATmdNb2R1bGUoe1xuICAgIGltcG9ydHM6IFtcbiAgICAgICAgQ29tbW9uTW9kdWxlLFxuICAgICAgICBUdWlCYXJTZXRNb2R1bGUsXG4gICAgICAgIFR1aUZvY3VzYWJsZU1vZHVsZSxcbiAgICAgICAgVHVpSGludE1vZHVsZSxcbiAgICAgICAgVHVpTWFwcGVyUGlwZU1vZHVsZSxcbiAgICBdLFxuICAgIGRlY2xhcmF0aW9uczogW1R1aUJhckNoYXJ0Q29tcG9uZW50XSxcbiAgICBleHBvcnRzOiBbVHVpQmFyQ2hhcnRDb21wb25lbnRdLFxufSlcbmV4cG9ydCBjbGFzcyBUdWlCYXJDaGFydE1vZHVsZSB7fVxuIl19
@@ -0,0 +1,52 @@
1
+ import { __decorate } from "tslib";
2
+ import { ChangeDetectionStrategy, Component, Input } from '@angular/core';
3
+ import { tuiPure } from '@taiga-ui/cdk';
4
+ import * as i0 from "@angular/core";
5
+ import * as i1 from "@angular/common";
6
+ import * as i2 from "@taiga-ui/addon-charts/components/bar";
7
+ const PERCENT = 100;
8
+ const EMPTY_ARRAY = [];
9
+ const FILLER_ARRAY = [1];
10
+ export class TuiBarSetComponent {
11
+ constructor() {
12
+ this.value = [];
13
+ this.size = 'm';
14
+ this.collapsed = false;
15
+ }
16
+ get computedValue() {
17
+ return this.collapsed ? FILLER_ARRAY : this.value;
18
+ }
19
+ get computedSegments() {
20
+ return this.collapsed ? this.value : EMPTY_ARRAY;
21
+ }
22
+ get computedSize() {
23
+ return this.size || 'm';
24
+ }
25
+ getHeight(value) {
26
+ return Math.abs((PERCENT * value) / this.getLargest(this.computedValue));
27
+ }
28
+ getColor(index) {
29
+ return `var(--tui-chart-${index})`;
30
+ }
31
+ getLargest(value) {
32
+ return value.some(a => a > 0)
33
+ ? value.reduce((a, b) => (a > b ? a : b), 0)
34
+ : Math.abs(value.reduce((a, b) => (a < b ? a : b), 0));
35
+ }
36
+ }
37
+ TuiBarSetComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: TuiBarSetComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
38
+ TuiBarSetComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: TuiBarSetComponent, selector: "tui-bar-set", inputs: { value: "value", size: "size", collapsed: "collapsed" }, ngImport: i0, template: "<ng-container *ngIf=\"size; else flexible\">\n <ng-container\n *ngFor=\"let item of computedValue; let index = index\"\n [ngTemplateOutlet]=\"bar\"\n [ngTemplateOutletContext]=\"{$implicit: item, index: index, flexible: false}\"\n ></ng-container>\n</ng-container>\n<ng-template #flexible>\n <div\n *ngFor=\"let item of computedValue; let index = index\"\n class=\"t-wrapper\"\n >\n <ng-container\n [ngTemplateOutlet]=\"bar\"\n [ngTemplateOutletContext]=\"{$implicit: item, index: index, flexible: true}\"\n ></ng-container>\n </div>\n</ng-template>\n<ng-template\n #bar\n let-flexible=\"flexible\"\n let-index=\"index\"\n let-item\n>\n <tui-bar\n automation-id=\"tui-bar-set__bar\"\n class=\"t-bar\"\n [class.t-bar_flexible]=\"flexible\"\n [class.t-bar_negative]=\"item < 0\"\n [size]=\"computedSize\"\n [style.background]=\"getColor(index)\"\n [style.height.%]=\"getHeight(item)\"\n [value]=\"computedSegments\"\n ></tui-bar>\n</ng-template>\n<span class=\"t-label\">\n <ng-content></ng-content>\n</span>\n", styles: [":host{position:relative;display:flex;height:100%;align-items:flex-end;justify-content:center}.t-wrapper{display:flex;flex:1;height:100%;align-items:flex-end}.t-wrapper:first-of-type{margin-left:25%}.t-wrapper:last-of-type{margin-right:25%}.t-bar{transform-origin:bottom center}.t-bar_negative{transform:rotate(180deg);opacity:var(--tui-disabled-opacity)}.t-bar.t-bar_flexible{max-width:none;width:75%;margin:0 auto}.t-label{position:absolute;top:-1.5rem;font:var(--tui-font-text-xs);color:var(--tui-text-02)}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2.TuiBarComponent, selector: "tui-bar", inputs: ["value", "size"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
39
+ __decorate([
40
+ tuiPure
41
+ ], TuiBarSetComponent.prototype, "getLargest", null);
42
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: TuiBarSetComponent, decorators: [{
43
+ type: Component,
44
+ args: [{ selector: 'tui-bar-set', changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-container *ngIf=\"size; else flexible\">\n <ng-container\n *ngFor=\"let item of computedValue; let index = index\"\n [ngTemplateOutlet]=\"bar\"\n [ngTemplateOutletContext]=\"{$implicit: item, index: index, flexible: false}\"\n ></ng-container>\n</ng-container>\n<ng-template #flexible>\n <div\n *ngFor=\"let item of computedValue; let index = index\"\n class=\"t-wrapper\"\n >\n <ng-container\n [ngTemplateOutlet]=\"bar\"\n [ngTemplateOutletContext]=\"{$implicit: item, index: index, flexible: true}\"\n ></ng-container>\n </div>\n</ng-template>\n<ng-template\n #bar\n let-flexible=\"flexible\"\n let-index=\"index\"\n let-item\n>\n <tui-bar\n automation-id=\"tui-bar-set__bar\"\n class=\"t-bar\"\n [class.t-bar_flexible]=\"flexible\"\n [class.t-bar_negative]=\"item < 0\"\n [size]=\"computedSize\"\n [style.background]=\"getColor(index)\"\n [style.height.%]=\"getHeight(item)\"\n [value]=\"computedSegments\"\n ></tui-bar>\n</ng-template>\n<span class=\"t-label\">\n <ng-content></ng-content>\n</span>\n", styles: [":host{position:relative;display:flex;height:100%;align-items:flex-end;justify-content:center}.t-wrapper{display:flex;flex:1;height:100%;align-items:flex-end}.t-wrapper:first-of-type{margin-left:25%}.t-wrapper:last-of-type{margin-right:25%}.t-bar{transform-origin:bottom center}.t-bar_negative{transform:rotate(180deg);opacity:var(--tui-disabled-opacity)}.t-bar.t-bar_flexible{max-width:none;width:75%;margin:0 auto}.t-label{position:absolute;top:-1.5rem;font:var(--tui-font-text-xs);color:var(--tui-text-02)}\n"] }]
45
+ }], propDecorators: { value: [{
46
+ type: Input
47
+ }], size: [{
48
+ type: Input
49
+ }], collapsed: [{
50
+ type: Input
51
+ }], getLargest: [] } });
52
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFyLXNldC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hZGRvbi1jaGFydHMvY29tcG9uZW50cy9iYXItc2V0L2Jhci1zZXQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYWRkb24tY2hhcnRzL2NvbXBvbmVudHMvYmFyLXNldC9iYXItc2V0LnRlbXBsYXRlLmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBQyx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBRXhFLE9BQU8sRUFBQyxPQUFPLEVBQUMsTUFBTSxlQUFlLENBQUM7Ozs7QUFHdEMsTUFBTSxPQUFPLEdBQUcsR0FBRyxDQUFDO0FBQ3BCLE1BQU0sV0FBVyxHQUFzQixFQUFFLENBQUM7QUFDMUMsTUFBTSxZQUFZLEdBQXNCLENBQUMsQ0FBQyxDQUFDLENBQUM7QUFRNUMsTUFBTSxPQUFPLGtCQUFrQjtJQU4vQjtRQVFJLFVBQUssR0FBc0IsRUFBRSxDQUFDO1FBRzlCLFNBQUksR0FBK0IsR0FBRyxDQUFDO1FBR3ZDLGNBQVMsR0FBRyxLQUFLLENBQUM7S0E0QnJCO0lBMUJHLElBQUksYUFBYTtRQUNiLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDO0lBQ3RELENBQUM7SUFFRCxJQUFJLGdCQUFnQjtRQUNoQixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLFdBQVcsQ0FBQztJQUNyRCxDQUFDO0lBRUQsSUFBSSxZQUFZO1FBQ1osT0FBTyxJQUFJLENBQUMsSUFBSSxJQUFJLEdBQUcsQ0FBQztJQUM1QixDQUFDO0lBRUQsU0FBUyxDQUFDLEtBQWE7UUFDbkIsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQyxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUM7SUFDN0UsQ0FBQztJQUVELFFBQVEsQ0FBQyxLQUFhO1FBQ2xCLE9BQU8sbUJBQW1CLEtBQUssR0FBRyxDQUFDO0lBQ3ZDLENBQUM7SUFHTyxVQUFVLENBQUMsS0FBd0I7UUFDdkMsT0FBTyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUN6QixDQUFDLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUM7WUFDNUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQy9ELENBQUM7O2dIQW5DUSxrQkFBa0I7b0dBQWxCLGtCQUFrQixxSENmL0IscXBDQXNDQTtBRFFJO0lBREMsT0FBTztvREFLUDs0RkFuQ1Esa0JBQWtCO2tCQU45QixTQUFTOytCQUNJLGFBQWEsbUJBR04sdUJBQXVCLENBQUMsTUFBTTs4QkFJL0MsS0FBSztzQkFESixLQUFLO2dCQUlOLElBQUk7c0JBREgsS0FBSztnQkFJTixTQUFTO3NCQURSLEtBQUs7Z0JBd0JFLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIElucHV0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7U2FmZVZhbHVlfSBmcm9tICdAYW5ndWxhci9wbGF0Zm9ybS1icm93c2VyJztcbmltcG9ydCB7dHVpUHVyZX0gZnJvbSAnQHRhaWdhLXVpL2Nkayc7XG5pbXBvcnQge1R1aVNpemVMLCBUdWlTaXplU30gZnJvbSAnQHRhaWdhLXVpL2NvcmUnO1xuXG5jb25zdCBQRVJDRU5UID0gMTAwO1xuY29uc3QgRU1QVFlfQVJSQVk6IHJlYWRvbmx5IG51bWJlcltdID0gW107XG5jb25zdCBGSUxMRVJfQVJSQVk6IHJlYWRvbmx5IG51bWJlcltdID0gWzFdO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ3R1aS1iYXItc2V0JyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vYmFyLXNldC50ZW1wbGF0ZS5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9iYXItc2V0LnN0eWxlLmxlc3MnXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgVHVpQmFyU2V0Q29tcG9uZW50IHtcbiAgICBASW5wdXQoKVxuICAgIHZhbHVlOiByZWFkb25seSBudW1iZXJbXSA9IFtdO1xuXG4gICAgQElucHV0KClcbiAgICBzaXplOiBUdWlTaXplTCB8IFR1aVNpemVTIHwgbnVsbCA9ICdtJztcblxuICAgIEBJbnB1dCgpXG4gICAgY29sbGFwc2VkID0gZmFsc2U7XG5cbiAgICBnZXQgY29tcHV0ZWRWYWx1ZSgpOiByZWFkb25seSBudW1iZXJbXSB7XG4gICAgICAgIHJldHVybiB0aGlzLmNvbGxhcHNlZCA/IEZJTExFUl9BUlJBWSA6IHRoaXMudmFsdWU7XG4gICAgfVxuXG4gICAgZ2V0IGNvbXB1dGVkU2VnbWVudHMoKTogcmVhZG9ubHkgbnVtYmVyW10ge1xuICAgICAgICByZXR1cm4gdGhpcy5jb2xsYXBzZWQgPyB0aGlzLnZhbHVlIDogRU1QVFlfQVJSQVk7XG4gICAgfVxuXG4gICAgZ2V0IGNvbXB1dGVkU2l6ZSgpOiBUdWlTaXplTCB8IFR1aVNpemVTIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuc2l6ZSB8fCAnbSc7XG4gICAgfVxuXG4gICAgZ2V0SGVpZ2h0KHZhbHVlOiBudW1iZXIpOiBudW1iZXIge1xuICAgICAgICByZXR1cm4gTWF0aC5hYnMoKFBFUkNFTlQgKiB2YWx1ZSkgLyB0aGlzLmdldExhcmdlc3QodGhpcy5jb21wdXRlZFZhbHVlKSk7XG4gICAgfVxuXG4gICAgZ2V0Q29sb3IoaW5kZXg6IG51bWJlcik6IFNhZmVWYWx1ZSB7XG4gICAgICAgIHJldHVybiBgdmFyKC0tdHVpLWNoYXJ0LSR7aW5kZXh9KWA7XG4gICAgfVxuXG4gICAgQHR1aVB1cmVcbiAgICBwcml2YXRlIGdldExhcmdlc3QodmFsdWU6IHJlYWRvbmx5IG51bWJlcltdKTogbnVtYmVyIHtcbiAgICAgICAgcmV0dXJuIHZhbHVlLnNvbWUoYSA9PiBhID4gMClcbiAgICAgICAgICAgID8gdmFsdWUucmVkdWNlKChhLCBiKSA9PiAoYSA+IGIgPyBhIDogYiksIDApXG4gICAgICAgICAgICA6IE1hdGguYWJzKHZhbHVlLnJlZHVjZSgoYSwgYikgPT4gKGEgPCBiID8gYSA6IGIpLCAwKSk7XG4gICAgfVxufVxuIiwiPG5nLWNvbnRhaW5lciAqbmdJZj1cInNpemU7IGVsc2UgZmxleGlibGVcIj5cbiAgICA8bmctY29udGFpbmVyXG4gICAgICAgICpuZ0Zvcj1cImxldCBpdGVtIG9mIGNvbXB1dGVkVmFsdWU7IGxldCBpbmRleCA9IGluZGV4XCJcbiAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRdPVwiYmFyXCJcbiAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRDb250ZXh0XT1cInskaW1wbGljaXQ6IGl0ZW0sIGluZGV4OiBpbmRleCwgZmxleGlibGU6IGZhbHNlfVwiXG4gICAgPjwvbmctY29udGFpbmVyPlxuPC9uZy1jb250YWluZXI+XG48bmctdGVtcGxhdGUgI2ZsZXhpYmxlPlxuICAgIDxkaXZcbiAgICAgICAgKm5nRm9yPVwibGV0IGl0ZW0gb2YgY29tcHV0ZWRWYWx1ZTsgbGV0IGluZGV4ID0gaW5kZXhcIlxuICAgICAgICBjbGFzcz1cInQtd3JhcHBlclwiXG4gICAgPlxuICAgICAgICA8bmctY29udGFpbmVyXG4gICAgICAgICAgICBbbmdUZW1wbGF0ZU91dGxldF09XCJiYXJcIlxuICAgICAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRDb250ZXh0XT1cInskaW1wbGljaXQ6IGl0ZW0sIGluZGV4OiBpbmRleCwgZmxleGlibGU6IHRydWV9XCJcbiAgICAgICAgPjwvbmctY29udGFpbmVyPlxuICAgIDwvZGl2PlxuPC9uZy10ZW1wbGF0ZT5cbjxuZy10ZW1wbGF0ZVxuICAgICNiYXJcbiAgICBsZXQtZmxleGlibGU9XCJmbGV4aWJsZVwiXG4gICAgbGV0LWluZGV4PVwiaW5kZXhcIlxuICAgIGxldC1pdGVtXG4+XG4gICAgPHR1aS1iYXJcbiAgICAgICAgYXV0b21hdGlvbi1pZD1cInR1aS1iYXItc2V0X19iYXJcIlxuICAgICAgICBjbGFzcz1cInQtYmFyXCJcbiAgICAgICAgW2NsYXNzLnQtYmFyX2ZsZXhpYmxlXT1cImZsZXhpYmxlXCJcbiAgICAgICAgW2NsYXNzLnQtYmFyX25lZ2F0aXZlXT1cIml0ZW0gPCAwXCJcbiAgICAgICAgW3NpemVdPVwiY29tcHV0ZWRTaXplXCJcbiAgICAgICAgW3N0eWxlLmJhY2tncm91bmRdPVwiZ2V0Q29sb3IoaW5kZXgpXCJcbiAgICAgICAgW3N0eWxlLmhlaWdodC4lXT1cImdldEhlaWdodChpdGVtKVwiXG4gICAgICAgIFt2YWx1ZV09XCJjb21wdXRlZFNlZ21lbnRzXCJcbiAgICA+PC90dWktYmFyPlxuPC9uZy10ZW1wbGF0ZT5cbjxzcGFuIGNsYXNzPVwidC1sYWJlbFwiPlxuICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbjwvc3Bhbj5cbiJdfQ==
@@ -5,10 +5,10 @@ import { TuiBarSetComponent } from './bar-set.component';
5
5
  import * as i0 from "@angular/core";
6
6
  export class TuiBarSetModule {
7
7
  }
8
- TuiBarSetModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiBarSetModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
9
- TuiBarSetModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiBarSetModule, declarations: [TuiBarSetComponent], imports: [CommonModule, TuiBarModule], exports: [TuiBarSetComponent] });
10
- TuiBarSetModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiBarSetModule, imports: [[CommonModule, TuiBarModule]] });
11
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiBarSetModule, decorators: [{
8
+ TuiBarSetModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: TuiBarSetModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
9
+ TuiBarSetModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.10", ngImport: i0, type: TuiBarSetModule, declarations: [TuiBarSetComponent], imports: [CommonModule, TuiBarModule], exports: [TuiBarSetComponent] });
10
+ TuiBarSetModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: TuiBarSetModule, imports: [CommonModule, TuiBarModule] });
11
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: TuiBarSetModule, decorators: [{
12
12
  type: NgModule,
13
13
  args: [{
14
14
  imports: [CommonModule, TuiBarModule],
@@ -16,4 +16,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
16
16
  exports: [TuiBarSetComponent],
17
17
  }]
18
18
  }] });
19
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFyLXNldC5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hZGRvbi1jaGFydHMvY29tcG9uZW50cy9iYXItc2V0L2Jhci1zZXQubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUM3QyxPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3ZDLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSx1Q0FBdUMsQ0FBQztBQUVuRSxPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSxxQkFBcUIsQ0FBQzs7QUFPdkQsTUFBTSxPQUFPLGVBQWU7OzZHQUFmLGVBQWU7OEdBQWYsZUFBZSxpQkFIVCxrQkFBa0IsYUFEdkIsWUFBWSxFQUFFLFlBQVksYUFFMUIsa0JBQWtCOzhHQUVuQixlQUFlLFlBSmYsQ0FBQyxZQUFZLEVBQUUsWUFBWSxDQUFDOzRGQUk1QixlQUFlO2tCQUwzQixRQUFRO21CQUFDO29CQUNOLE9BQU8sRUFBRSxDQUFDLFlBQVksRUFBRSxZQUFZLENBQUM7b0JBQ3JDLFlBQVksRUFBRSxDQUFDLGtCQUFrQixDQUFDO29CQUNsQyxPQUFPLEVBQUUsQ0FBQyxrQkFBa0IsQ0FBQztpQkFDaEMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbW1vbk1vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7TmdNb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtUdWlCYXJNb2R1bGV9IGZyb20gJ0B0YWlnYS11aS9hZGRvbi1jaGFydHMvY29tcG9uZW50cy9iYXInO1xuXG5pbXBvcnQge1R1aUJhclNldENvbXBvbmVudH0gZnJvbSAnLi9iYXItc2V0LmNvbXBvbmVudCc7XG5cbkBOZ01vZHVsZSh7XG4gICAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgVHVpQmFyTW9kdWxlXSxcbiAgICBkZWNsYXJhdGlvbnM6IFtUdWlCYXJTZXRDb21wb25lbnRdLFxuICAgIGV4cG9ydHM6IFtUdWlCYXJTZXRDb21wb25lbnRdLFxufSlcbmV4cG9ydCBjbGFzcyBUdWlCYXJTZXRNb2R1bGUge31cbiJdfQ==
19
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFyLXNldC5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hZGRvbi1jaGFydHMvY29tcG9uZW50cy9iYXItc2V0L2Jhci1zZXQubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUM3QyxPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3ZDLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSx1Q0FBdUMsQ0FBQztBQUVuRSxPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSxxQkFBcUIsQ0FBQzs7QUFPdkQsTUFBTSxPQUFPLGVBQWU7OzZHQUFmLGVBQWU7OEdBQWYsZUFBZSxpQkFIVCxrQkFBa0IsYUFEdkIsWUFBWSxFQUFFLFlBQVksYUFFMUIsa0JBQWtCOzhHQUVuQixlQUFlLFlBSmQsWUFBWSxFQUFFLFlBQVk7NEZBSTNCLGVBQWU7a0JBTDNCLFFBQVE7bUJBQUM7b0JBQ04sT0FBTyxFQUFFLENBQUMsWUFBWSxFQUFFLFlBQVksQ0FBQztvQkFDckMsWUFBWSxFQUFFLENBQUMsa0JBQWtCLENBQUM7b0JBQ2xDLE9BQU8sRUFBRSxDQUFDLGtCQUFrQixDQUFDO2lCQUNoQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29tbW9uTW9kdWxlfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtOZ01vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1R1aUJhck1vZHVsZX0gZnJvbSAnQHRhaWdhLXVpL2FkZG9uLWNoYXJ0cy9jb21wb25lbnRzL2Jhcic7XG5cbmltcG9ydCB7VHVpQmFyU2V0Q29tcG9uZW50fSBmcm9tICcuL2Jhci1zZXQuY29tcG9uZW50JztcblxuQE5nTW9kdWxlKHtcbiAgICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBUdWlCYXJNb2R1bGVdLFxuICAgIGRlY2xhcmF0aW9uczogW1R1aUJhclNldENvbXBvbmVudF0sXG4gICAgZXhwb3J0czogW1R1aUJhclNldENvbXBvbmVudF0sXG59KVxuZXhwb3J0IGNsYXNzIFR1aUJhclNldE1vZHVsZSB7fVxuIl19
@@ -0,0 +1,41 @@
1
+ import { ChangeDetectionStrategy, Component, HostBinding, Input } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ import * as i1 from "@taiga-ui/core";
4
+ export class TuiLegendItemComponent {
5
+ constructor() {
6
+ this.active = false;
7
+ this.color = '';
8
+ this.text = '';
9
+ this.size = 'm';
10
+ this.disabled = false;
11
+ }
12
+ get computedColor() {
13
+ return this.color === 'var(--tui-primary)' ? null : this.color;
14
+ }
15
+ }
16
+ TuiLegendItemComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: TuiLegendItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
17
+ TuiLegendItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: TuiLegendItemComponent, selector: "tui-legend-item", inputs: { active: "active", color: "color", text: "text", size: "size", disabled: "disabled" }, host: { properties: { "attr.data-size": "this.size", "class._disabled": "this.disabled", "style.--tui-primary": "this.computedColor" } }, ngImport: i0, template: "<button\n appearance=\"whiteblock\"\n size=\"s\"\n tuiButton\n type=\"button\"\n class=\"t-button\"\n [pseudoHover]=\"active || null\"\n>\n <div class=\"t-wrapper\">\n <ng-content select=\"tui-primitive-checkbox\"></ng-content>\n <span\n class=\"t-dot\"\n [style.backgroundColor]=\"color || 'var(--tui-primary)'\"\n ></span>\n <span class=\"t-text\">{{ text }}</span>\n <ng-content></ng-content>\n </div>\n</button>\n", styles: [":host{display:inline-block}.t-button{height:2rem;font-weight:700}:host[data-size=m] .t-button{height:2.25rem;font:var(--tui-font-text-m);font-weight:700}.t-wrapper{display:flex;align-items:center;pointer-events:none}:host._disabled .t-wrapper{color:var(--tui-text-03)}.t-dot{width:.5rem;height:.5rem;border-radius:100%;flex-shrink:0}:host._disabled .t-dot{background:var(--tui-base-04)}.t-dot:not(:first-child){display:none}.t-text{margin:0 .5rem;font-weight:400}\n"], dependencies: [{ kind: "component", type: i1.TuiButtonComponent, selector: "button[tuiButton], button[tuiIconButton], a[tuiButton], a[tuiIconButton]", inputs: ["appearance", "disabled", "icon", "iconRight", "shape", "showLoader", "size"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
18
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: TuiLegendItemComponent, decorators: [{
19
+ type: Component,
20
+ args: [{ selector: 'tui-legend-item', changeDetection: ChangeDetectionStrategy.OnPush, template: "<button\n appearance=\"whiteblock\"\n size=\"s\"\n tuiButton\n type=\"button\"\n class=\"t-button\"\n [pseudoHover]=\"active || null\"\n>\n <div class=\"t-wrapper\">\n <ng-content select=\"tui-primitive-checkbox\"></ng-content>\n <span\n class=\"t-dot\"\n [style.backgroundColor]=\"color || 'var(--tui-primary)'\"\n ></span>\n <span class=\"t-text\">{{ text }}</span>\n <ng-content></ng-content>\n </div>\n</button>\n", styles: [":host{display:inline-block}.t-button{height:2rem;font-weight:700}:host[data-size=m] .t-button{height:2.25rem;font:var(--tui-font-text-m);font-weight:700}.t-wrapper{display:flex;align-items:center;pointer-events:none}:host._disabled .t-wrapper{color:var(--tui-text-03)}.t-dot{width:.5rem;height:.5rem;border-radius:100%;flex-shrink:0}:host._disabled .t-dot{background:var(--tui-base-04)}.t-dot:not(:first-child){display:none}.t-text{margin:0 .5rem;font-weight:400}\n"] }]
21
+ }], propDecorators: { active: [{
22
+ type: Input
23
+ }], color: [{
24
+ type: Input
25
+ }], text: [{
26
+ type: Input
27
+ }], size: [{
28
+ type: Input
29
+ }, {
30
+ type: HostBinding,
31
+ args: ['attr.data-size']
32
+ }], disabled: [{
33
+ type: Input
34
+ }, {
35
+ type: HostBinding,
36
+ args: ['class._disabled']
37
+ }], computedColor: [{
38
+ type: HostBinding,
39
+ args: ['style.--tui-primary']
40
+ }] } });
41
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGVnZW5kLWl0ZW0uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYWRkb24tY2hhcnRzL2NvbXBvbmVudHMvbGVnZW5kLWl0ZW0vbGVnZW5kLWl0ZW0uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYWRkb24tY2hhcnRzL2NvbXBvbmVudHMvbGVnZW5kLWl0ZW0vbGVnZW5kLWl0ZW0udGVtcGxhdGUuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLFdBQVcsRUFBRSxLQUFLLEVBQUMsTUFBTSxlQUFlLENBQUM7OztBQVNyRixNQUFNLE9BQU8sc0JBQXNCO0lBTm5DO1FBUUksV0FBTSxHQUFHLEtBQUssQ0FBQztRQUdmLFVBQUssR0FBRyxFQUFFLENBQUM7UUFHWCxTQUFJLEdBQUcsRUFBRSxDQUFDO1FBSVYsU0FBSSxHQUFhLEdBQUcsQ0FBQztRQUlyQixhQUFRLEdBQUcsS0FBSyxDQUFDO0tBTXBCO0lBSkcsSUFDSSxhQUFhO1FBQ2IsT0FBTyxJQUFJLENBQUMsS0FBSyxLQUFLLG9CQUFvQixDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUM7SUFDbkUsQ0FBQzs7b0hBckJRLHNCQUFzQjt3R0FBdEIsc0JBQXNCLGlTQ1RuQyxvZkFrQkE7NEZEVGEsc0JBQXNCO2tCQU5sQyxTQUFTOytCQUNJLGlCQUFpQixtQkFHVix1QkFBdUIsQ0FBQyxNQUFNOzhCQUkvQyxNQUFNO3NCQURMLEtBQUs7Z0JBSU4sS0FBSztzQkFESixLQUFLO2dCQUlOLElBQUk7c0JBREgsS0FBSztnQkFLTixJQUFJO3NCQUZILEtBQUs7O3NCQUNMLFdBQVc7dUJBQUMsZ0JBQWdCO2dCQUs3QixRQUFRO3NCQUZQLEtBQUs7O3NCQUNMLFdBQVc7dUJBQUMsaUJBQWlCO2dCQUkxQixhQUFhO3NCQURoQixXQUFXO3VCQUFDLHFCQUFxQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgSG9zdEJpbmRpbmcsIElucHV0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7VHVpU2l6ZVN9IGZyb20gJ0B0YWlnYS11aS9jb3JlJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICd0dWktbGVnZW5kLWl0ZW0nLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9sZWdlbmQtaXRlbS50ZW1wbGF0ZS5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9sZWdlbmQtaXRlbS5zdHlsZS5sZXNzJ10sXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIFR1aUxlZ2VuZEl0ZW1Db21wb25lbnQge1xuICAgIEBJbnB1dCgpXG4gICAgYWN0aXZlID0gZmFsc2U7XG5cbiAgICBASW5wdXQoKVxuICAgIGNvbG9yID0gJyc7XG5cbiAgICBASW5wdXQoKVxuICAgIHRleHQgPSAnJztcblxuICAgIEBJbnB1dCgpXG4gICAgQEhvc3RCaW5kaW5nKCdhdHRyLmRhdGEtc2l6ZScpXG4gICAgc2l6ZTogVHVpU2l6ZVMgPSAnbSc7XG5cbiAgICBASW5wdXQoKVxuICAgIEBIb3N0QmluZGluZygnY2xhc3MuX2Rpc2FibGVkJylcbiAgICBkaXNhYmxlZCA9IGZhbHNlO1xuXG4gICAgQEhvc3RCaW5kaW5nKCdzdHlsZS4tLXR1aS1wcmltYXJ5JylcbiAgICBnZXQgY29tcHV0ZWRDb2xvcigpOiBzdHJpbmcgfCBudWxsIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuY29sb3IgPT09ICd2YXIoLS10dWktcHJpbWFyeSknID8gbnVsbCA6IHRoaXMuY29sb3I7XG4gICAgfVxufVxuIiwiPGJ1dHRvblxuICAgIGFwcGVhcmFuY2U9XCJ3aGl0ZWJsb2NrXCJcbiAgICBzaXplPVwic1wiXG4gICAgdHVpQnV0dG9uXG4gICAgdHlwZT1cImJ1dHRvblwiXG4gICAgY2xhc3M9XCJ0LWJ1dHRvblwiXG4gICAgW3BzZXVkb0hvdmVyXT1cImFjdGl2ZSB8fCBudWxsXCJcbj5cbiAgICA8ZGl2IGNsYXNzPVwidC13cmFwcGVyXCI+XG4gICAgICAgIDxuZy1jb250ZW50IHNlbGVjdD1cInR1aS1wcmltaXRpdmUtY2hlY2tib3hcIj48L25nLWNvbnRlbnQ+XG4gICAgICAgIDxzcGFuXG4gICAgICAgICAgICBjbGFzcz1cInQtZG90XCJcbiAgICAgICAgICAgIFtzdHlsZS5iYWNrZ3JvdW5kQ29sb3JdPVwiY29sb3IgfHwgJ3ZhcigtLXR1aS1wcmltYXJ5KSdcIlxuICAgICAgICA+PC9zcGFuPlxuICAgICAgICA8c3BhbiBjbGFzcz1cInQtdGV4dFwiPnt7IHRleHQgfX08L3NwYW4+XG4gICAgICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbiAgICA8L2Rpdj5cbjwvYnV0dG9uPlxuIl19
@@ -5,10 +5,10 @@ import { TuiLegendItemComponent } from './legend-item.component';
5
5
  import * as i0 from "@angular/core";
6
6
  export class TuiLegendItemModule {
7
7
  }
8
- TuiLegendItemModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiLegendItemModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
9
- TuiLegendItemModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiLegendItemModule, declarations: [TuiLegendItemComponent], imports: [CommonModule, TuiButtonModule], exports: [TuiLegendItemComponent] });
10
- TuiLegendItemModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiLegendItemModule, imports: [[CommonModule, TuiButtonModule]] });
11
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiLegendItemModule, decorators: [{
8
+ TuiLegendItemModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: TuiLegendItemModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
9
+ TuiLegendItemModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.10", ngImport: i0, type: TuiLegendItemModule, declarations: [TuiLegendItemComponent], imports: [CommonModule, TuiButtonModule], exports: [TuiLegendItemComponent] });
10
+ TuiLegendItemModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: TuiLegendItemModule, imports: [CommonModule, TuiButtonModule] });
11
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: TuiLegendItemModule, decorators: [{
12
12
  type: NgModule,
13
13
  args: [{
14
14
  imports: [CommonModule, TuiButtonModule],
@@ -16,4 +16,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
16
16
  exports: [TuiLegendItemComponent],
17
17
  }]
18
18
  }] });
19
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGVnZW5kLWl0ZW0ubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYWRkb24tY2hhcnRzL2NvbXBvbmVudHMvbGVnZW5kLWl0ZW0vbGVnZW5kLWl0ZW0ubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUM3QyxPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3ZDLE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUUvQyxPQUFPLEVBQUMsc0JBQXNCLEVBQUMsTUFBTSx5QkFBeUIsQ0FBQzs7QUFPL0QsTUFBTSxPQUFPLG1CQUFtQjs7aUhBQW5CLG1CQUFtQjtrSEFBbkIsbUJBQW1CLGlCQUhiLHNCQUFzQixhQUQzQixZQUFZLEVBQUUsZUFBZSxhQUU3QixzQkFBc0I7a0hBRXZCLG1CQUFtQixZQUpuQixDQUFDLFlBQVksRUFBRSxlQUFlLENBQUM7NEZBSS9CLG1CQUFtQjtrQkFML0IsUUFBUTttQkFBQztvQkFDTixPQUFPLEVBQUUsQ0FBQyxZQUFZLEVBQUUsZUFBZSxDQUFDO29CQUN4QyxZQUFZLEVBQUUsQ0FBQyxzQkFBc0IsQ0FBQztvQkFDdEMsT0FBTyxFQUFFLENBQUMsc0JBQXNCLENBQUM7aUJBQ3BDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21tb25Nb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge05nTW9kdWxlfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7VHVpQnV0dG9uTW9kdWxlfSBmcm9tICdAdGFpZ2EtdWkvY29yZSc7XG5cbmltcG9ydCB7VHVpTGVnZW5kSXRlbUNvbXBvbmVudH0gZnJvbSAnLi9sZWdlbmQtaXRlbS5jb21wb25lbnQnO1xuXG5ATmdNb2R1bGUoe1xuICAgIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIFR1aUJ1dHRvbk1vZHVsZV0sXG4gICAgZGVjbGFyYXRpb25zOiBbVHVpTGVnZW5kSXRlbUNvbXBvbmVudF0sXG4gICAgZXhwb3J0czogW1R1aUxlZ2VuZEl0ZW1Db21wb25lbnRdLFxufSlcbmV4cG9ydCBjbGFzcyBUdWlMZWdlbmRJdGVtTW9kdWxlIHt9XG4iXX0=
19
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGVnZW5kLWl0ZW0ubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYWRkb24tY2hhcnRzL2NvbXBvbmVudHMvbGVnZW5kLWl0ZW0vbGVnZW5kLWl0ZW0ubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUM3QyxPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3ZDLE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUUvQyxPQUFPLEVBQUMsc0JBQXNCLEVBQUMsTUFBTSx5QkFBeUIsQ0FBQzs7QUFPL0QsTUFBTSxPQUFPLG1CQUFtQjs7aUhBQW5CLG1CQUFtQjtrSEFBbkIsbUJBQW1CLGlCQUhiLHNCQUFzQixhQUQzQixZQUFZLEVBQUUsZUFBZSxhQUU3QixzQkFBc0I7a0hBRXZCLG1CQUFtQixZQUpsQixZQUFZLEVBQUUsZUFBZTs0RkFJOUIsbUJBQW1CO2tCQUwvQixRQUFRO21CQUFDO29CQUNOLE9BQU8sRUFBRSxDQUFDLFlBQVksRUFBRSxlQUFlLENBQUM7b0JBQ3hDLFlBQVksRUFBRSxDQUFDLHNCQUFzQixDQUFDO29CQUN0QyxPQUFPLEVBQUUsQ0FBQyxzQkFBc0IsQ0FBQztpQkFDcEMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbW1vbk1vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7TmdNb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtUdWlCdXR0b25Nb2R1bGV9IGZyb20gJ0B0YWlnYS11aS9jb3JlJztcblxuaW1wb3J0IHtUdWlMZWdlbmRJdGVtQ29tcG9uZW50fSBmcm9tICcuL2xlZ2VuZC1pdGVtLmNvbXBvbmVudCc7XG5cbkBOZ01vZHVsZSh7XG4gICAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgVHVpQnV0dG9uTW9kdWxlXSxcbiAgICBkZWNsYXJhdGlvbnM6IFtUdWlMZWdlbmRJdGVtQ29tcG9uZW50XSxcbiAgICBleHBvcnRzOiBbVHVpTGVnZW5kSXRlbUNvbXBvbmVudF0sXG59KVxuZXhwb3J0IGNsYXNzIFR1aUxlZ2VuZEl0ZW1Nb2R1bGUge31cbiJdfQ==
@@ -0,0 +1,78 @@
1
+ import { __decorate } from "tslib";
2
+ import { ContentChildren, Directive, ElementRef, forwardRef, Inject, Input, NgZone, Renderer2, Self, } from '@angular/core';
3
+ import { EMPTY_QUERY, TuiDestroyService, TuiHoveredService, tuiPure, tuiQueryListChanges, tuiZonefree, } from '@taiga-ui/cdk';
4
+ import { combineLatest, distinctUntilChanged, filter, map, startWith, switchMap, takeUntil, } from 'rxjs';
5
+ import { TuiLineChartComponent } from './line-chart.component';
6
+ import * as i0 from "@angular/core";
7
+ import * as i1 from "@taiga-ui/cdk";
8
+ import * as i2 from "rxjs";
9
+ export class TuiLineChartHintDirective {
10
+ constructor(renderer, destroy$, zone, hovered$) {
11
+ this.renderer = renderer;
12
+ this.destroy$ = destroy$;
13
+ this.zone = zone;
14
+ this.hovered$ = hovered$;
15
+ this.charts = EMPTY_QUERY;
16
+ this.chartsRef = EMPTY_QUERY;
17
+ }
18
+ ngAfterViewInit() {
19
+ combineLatest([tuiLineChartDrivers(this.charts), this.hovered$])
20
+ .pipe(filter(result => !result.some(Boolean)), tuiZonefree(this.zone), takeUntil(this.destroy$))
21
+ .subscribe(() => {
22
+ this.charts.forEach(chart => chart.onHovered(NaN));
23
+ });
24
+ }
25
+ // _chart is required by TuiLineDaysChartComponent that impersonates this directive
26
+ getContext(index, _chart) {
27
+ return this.computeContext(...this.charts.map(({ value }) => value))[index];
28
+ }
29
+ // _chart is required by TuiLineDaysChartComponent that impersonates this directive
30
+ raise(index, _chart) {
31
+ const current = this.charts.map(chart => chart.value[index]);
32
+ const sorted = [...current].sort((a, b) => a[1] - b[1]);
33
+ this.charts.forEach(chart => chart.onHovered(index));
34
+ this.chartsRef.forEach(({ nativeElement }, index) => this.renderer.setStyle(nativeElement, 'z-index', sorted.indexOf(current[index])));
35
+ }
36
+ computeContext(...values) {
37
+ return (values[0] || []).map((_, index) => values.map(value => value[index]));
38
+ }
39
+ }
40
+ TuiLineChartHintDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: TuiLineChartHintDirective, deps: [{ token: Renderer2 }, { token: TuiDestroyService, self: true }, { token: NgZone }, { token: TuiHoveredService }], target: i0.ɵɵFactoryTarget.Directive });
41
+ TuiLineChartHintDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: TuiLineChartHintDirective, selector: "[tuiLineChartHint]", inputs: { hint: ["tuiLineChartHint", "hint"] }, providers: [TuiDestroyService, TuiHoveredService], queries: [{ propertyName: "charts", predicate: i0.forwardRef(function () { return TuiLineChartComponent; }) }, { propertyName: "chartsRef", predicate: i0.forwardRef(function () { return TuiLineChartComponent; }), read: ElementRef }], ngImport: i0 });
42
+ __decorate([
43
+ tuiPure
44
+ ], TuiLineChartHintDirective.prototype, "computeContext", null);
45
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: TuiLineChartHintDirective, decorators: [{
46
+ type: Directive,
47
+ args: [{
48
+ selector: '[tuiLineChartHint]',
49
+ providers: [TuiDestroyService, TuiHoveredService],
50
+ }]
51
+ }], ctorParameters: function () { return [{ type: i0.Renderer2, decorators: [{
52
+ type: Inject,
53
+ args: [Renderer2]
54
+ }] }, { type: i1.TuiDestroyService, decorators: [{
55
+ type: Self
56
+ }, {
57
+ type: Inject,
58
+ args: [TuiDestroyService]
59
+ }] }, { type: i0.NgZone, decorators: [{
60
+ type: Inject,
61
+ args: [NgZone]
62
+ }] }, { type: i2.Observable, decorators: [{
63
+ type: Inject,
64
+ args: [TuiHoveredService]
65
+ }] }]; }, propDecorators: { charts: [{
66
+ type: ContentChildren,
67
+ args: [forwardRef(() => TuiLineChartComponent)]
68
+ }], chartsRef: [{
69
+ type: ContentChildren,
70
+ args: [forwardRef(() => TuiLineChartComponent), { read: ElementRef }]
71
+ }], hint: [{
72
+ type: Input,
73
+ args: ['tuiLineChartHint']
74
+ }], computeContext: [] } });
75
+ export function tuiLineChartDrivers(charts) {
76
+ return combineLatest(charts.map(({ drivers }) => tuiQueryListChanges(drivers).pipe(map(drivers => drivers.map(driver => driver.pipe(startWith(false))))))).pipe(map(all => all.reduce((acc, drivers) => acc.concat(drivers), [])), switchMap(drivers => combineLatest(drivers)), map(values => values.some(Boolean)), distinctUntilChanged());
77
+ }
78
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGluZS1jaGFydC1oaW50LmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FkZG9uLWNoYXJ0cy9jb21wb25lbnRzL2xpbmUtY2hhcnQvbGluZS1jaGFydC1oaW50LmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUVILGVBQWUsRUFDZixTQUFTLEVBQ1QsVUFBVSxFQUNWLFVBQVUsRUFDVixNQUFNLEVBQ04sS0FBSyxFQUNMLE1BQU0sRUFFTixTQUFTLEVBQ1QsSUFBSSxHQUNQLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFDSCxXQUFXLEVBRVgsaUJBQWlCLEVBQ2pCLGlCQUFpQixFQUNqQixPQUFPLEVBQ1AsbUJBQW1CLEVBQ25CLFdBQVcsR0FDZCxNQUFNLGVBQWUsQ0FBQztBQUd2QixPQUFPLEVBQ0gsYUFBYSxFQUNiLG9CQUFvQixFQUNwQixNQUFNLEVBQ04sR0FBRyxFQUVILFNBQVMsRUFDVCxTQUFTLEVBQ1QsU0FBUyxHQUNaLE1BQU0sTUFBTSxDQUFDO0FBRWQsT0FBTyxFQUFDLHFCQUFxQixFQUFDLE1BQU0sd0JBQXdCLENBQUM7Ozs7QUFNN0QsTUFBTSxPQUFPLHlCQUF5QjtJQVVsQyxZQUN3QyxRQUFtQixFQUNILFFBQTJCLEVBQzlDLElBQVksRUFDRCxRQUE2QjtRQUhyQyxhQUFRLEdBQVIsUUFBUSxDQUFXO1FBQ0gsYUFBUSxHQUFSLFFBQVEsQ0FBbUI7UUFDOUMsU0FBSSxHQUFKLElBQUksQ0FBUTtRQUNELGFBQVEsR0FBUixRQUFRLENBQXFCO1FBWjVELFdBQU0sR0FBcUMsV0FBVyxDQUFDO1FBR3ZELGNBQVMsR0FBdUMsV0FBVyxDQUFDO0lBVTFFLENBQUM7SUFFSixlQUFlO1FBQ1gsYUFBYSxDQUFDLENBQUMsbUJBQW1CLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxFQUFFLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQzthQUMzRCxJQUFJLENBQ0QsTUFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLEVBQ3ZDLFdBQVcsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQ3RCLFNBQVMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQzNCO2FBQ0EsU0FBUyxDQUFDLEdBQUcsRUFBRTtZQUNaLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO1FBQ3ZELENBQUMsQ0FBQyxDQUFDO0lBQ1gsQ0FBQztJQUVELG1GQUFtRjtJQUNuRixVQUFVLENBQUMsS0FBYSxFQUFFLE1BQTZCO1FBQ25ELE9BQU8sSUFBSSxDQUFDLGNBQWMsQ0FBQyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsRUFBQyxLQUFLLEVBQUMsRUFBRSxFQUFFLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUM5RSxDQUFDO0lBRUQsbUZBQW1GO0lBQ25GLEtBQUssQ0FBQyxLQUFhLEVBQUUsTUFBNkI7UUFDOUMsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7UUFDN0QsTUFBTSxNQUFNLEdBQUcsQ0FBQyxHQUFHLE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUV4RCxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztRQUNyRCxJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxDQUFDLEVBQUMsYUFBYSxFQUFDLEVBQUUsS0FBSyxFQUFFLEVBQUUsQ0FDOUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQ2xCLGFBQWEsRUFDYixTQUFTLEVBQ1QsTUFBTSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FDakMsQ0FDSixDQUFDO0lBQ04sQ0FBQztJQUdPLGNBQWMsQ0FDbEIsR0FBRyxNQUEwQztRQUU3QyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxLQUFLLEVBQUUsRUFBRSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ2xGLENBQUM7O3VIQXREUSx5QkFBeUIsa0JBV3RCLFNBQVMsYUFDRCxpQkFBaUIseUJBQ3pCLE1BQU0sYUFDTixpQkFBaUI7MkdBZHBCLHlCQUF5Qiw2RkFGdkIsQ0FBQyxpQkFBaUIsRUFBRSxpQkFBaUIsQ0FBQyxvRkFHZixxQkFBcUIsbUZBR3JCLHFCQUFxQixZQUFVLFVBQVU7QUE4QzNFO0lBREMsT0FBTzsrREFLUDs0RkF0RFEseUJBQXlCO2tCQUpyQyxTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSxvQkFBb0I7b0JBQzlCLFNBQVMsRUFBRSxDQUFDLGlCQUFpQixFQUFFLGlCQUFpQixDQUFDO2lCQUNwRDs7MEJBWVEsTUFBTTsyQkFBQyxTQUFTOzswQkFDaEIsSUFBSTs7MEJBQUksTUFBTTsyQkFBQyxpQkFBaUI7OzBCQUNoQyxNQUFNOzJCQUFDLE1BQU07OzBCQUNiLE1BQU07MkJBQUMsaUJBQWlCOzRDQVpaLE1BQU07c0JBRHRCLGVBQWU7dUJBQUMsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLHFCQUFxQixDQUFDO2dCQUl2QyxTQUFTO3NCQUR6QixlQUFlO3VCQUFDLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxxQkFBcUIsQ0FBQyxFQUFFLEVBQUMsSUFBSSxFQUFFLFVBQVUsRUFBQztnQkFJNUUsSUFBSTtzQkFESCxLQUFLO3VCQUFDLGtCQUFrQjtnQkEyQ2pCLGNBQWM7QUFPMUIsTUFBTSxVQUFVLG1CQUFtQixDQUMvQixNQUE0RDtJQUU1RCxPQUFPLGFBQWEsQ0FDaEIsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQUMsT0FBTyxFQUFDLEVBQUUsRUFBRSxDQUNyQixtQkFBbUIsQ0FBQyxPQUFPLENBQUMsQ0FBQyxJQUFJLENBQzdCLEdBQUcsQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FDdkUsQ0FDSixDQUNKLENBQUMsSUFBSSxDQUNGLEdBQUcsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsQ0FBQyxHQUFHLEVBQUUsT0FBTyxFQUFFLEVBQUUsQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLEVBQ2pFLFNBQVMsQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQUMsQ0FBQyxFQUM1QyxHQUFHLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLEVBQ25DLG9CQUFvQixFQUFFLENBQ3pCLENBQUM7QUFDTixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBBZnRlclZpZXdJbml0LFxuICAgIENvbnRlbnRDaGlsZHJlbixcbiAgICBEaXJlY3RpdmUsXG4gICAgRWxlbWVudFJlZixcbiAgICBmb3J3YXJkUmVmLFxuICAgIEluamVjdCxcbiAgICBJbnB1dCxcbiAgICBOZ1pvbmUsXG4gICAgUXVlcnlMaXN0LFxuICAgIFJlbmRlcmVyMixcbiAgICBTZWxmLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gICAgRU1QVFlfUVVFUlksXG4gICAgVHVpQ29udGV4dFdpdGhJbXBsaWNpdCxcbiAgICBUdWlEZXN0cm95U2VydmljZSxcbiAgICBUdWlIb3ZlcmVkU2VydmljZSxcbiAgICB0dWlQdXJlLFxuICAgIHR1aVF1ZXJ5TGlzdENoYW5nZXMsXG4gICAgdHVpWm9uZWZyZWUsXG59IGZyb20gJ0B0YWlnYS11aS9jZGsnO1xuaW1wb3J0IHtUdWlQb2ludH0gZnJvbSAnQHRhaWdhLXVpL2NvcmUnO1xuaW1wb3J0IHtQb2x5bW9ycGhldXNDb250ZW50fSBmcm9tICdAdGlua29mZi9uZy1wb2x5bW9ycGhldXMnO1xuaW1wb3J0IHtcbiAgICBjb21iaW5lTGF0ZXN0LFxuICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkLFxuICAgIGZpbHRlcixcbiAgICBtYXAsXG4gICAgT2JzZXJ2YWJsZSxcbiAgICBzdGFydFdpdGgsXG4gICAgc3dpdGNoTWFwLFxuICAgIHRha2VVbnRpbCxcbn0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7VHVpTGluZUNoYXJ0Q29tcG9uZW50fSBmcm9tICcuL2xpbmUtY2hhcnQuY29tcG9uZW50JztcblxuQERpcmVjdGl2ZSh7XG4gICAgc2VsZWN0b3I6ICdbdHVpTGluZUNoYXJ0SGludF0nLFxuICAgIHByb3ZpZGVyczogW1R1aURlc3Ryb3lTZXJ2aWNlLCBUdWlIb3ZlcmVkU2VydmljZV0sXG59KVxuZXhwb3J0IGNsYXNzIFR1aUxpbmVDaGFydEhpbnREaXJlY3RpdmUgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0IHtcbiAgICBAQ29udGVudENoaWxkcmVuKGZvcndhcmRSZWYoKCkgPT4gVHVpTGluZUNoYXJ0Q29tcG9uZW50KSlcbiAgICBwcml2YXRlIHJlYWRvbmx5IGNoYXJ0czogUXVlcnlMaXN0PFR1aUxpbmVDaGFydENvbXBvbmVudD4gPSBFTVBUWV9RVUVSWTtcblxuICAgIEBDb250ZW50Q2hpbGRyZW4oZm9yd2FyZFJlZigoKSA9PiBUdWlMaW5lQ2hhcnRDb21wb25lbnQpLCB7cmVhZDogRWxlbWVudFJlZn0pXG4gICAgcHJpdmF0ZSByZWFkb25seSBjaGFydHNSZWY6IFF1ZXJ5TGlzdDxFbGVtZW50UmVmPEhUTUxFbGVtZW50Pj4gPSBFTVBUWV9RVUVSWTtcblxuICAgIEBJbnB1dCgndHVpTGluZUNoYXJ0SGludCcpXG4gICAgaGludDogUG9seW1vcnBoZXVzQ29udGVudDxUdWlDb250ZXh0V2l0aEltcGxpY2l0PHJlYWRvbmx5IFR1aVBvaW50W10+PjtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBASW5qZWN0KFJlbmRlcmVyMikgcHJpdmF0ZSByZWFkb25seSByZW5kZXJlcjogUmVuZGVyZXIyLFxuICAgICAgICBAU2VsZigpIEBJbmplY3QoVHVpRGVzdHJveVNlcnZpY2UpIHByaXZhdGUgcmVhZG9ubHkgZGVzdHJveSQ6IFR1aURlc3Ryb3lTZXJ2aWNlLFxuICAgICAgICBASW5qZWN0KE5nWm9uZSkgcHJpdmF0ZSByZWFkb25seSB6b25lOiBOZ1pvbmUsXG4gICAgICAgIEBJbmplY3QoVHVpSG92ZXJlZFNlcnZpY2UpIHByaXZhdGUgcmVhZG9ubHkgaG92ZXJlZCQ6IE9ic2VydmFibGU8Ym9vbGVhbj4sXG4gICAgKSB7fVxuXG4gICAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgICAgICBjb21iaW5lTGF0ZXN0KFt0dWlMaW5lQ2hhcnREcml2ZXJzKHRoaXMuY2hhcnRzKSwgdGhpcy5ob3ZlcmVkJF0pXG4gICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgICBmaWx0ZXIocmVzdWx0ID0+ICFyZXN1bHQuc29tZShCb29sZWFuKSksXG4gICAgICAgICAgICAgICAgdHVpWm9uZWZyZWUodGhpcy56b25lKSxcbiAgICAgICAgICAgICAgICB0YWtlVW50aWwodGhpcy5kZXN0cm95JCksXG4gICAgICAgICAgICApXG4gICAgICAgICAgICAuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLmNoYXJ0cy5mb3JFYWNoKGNoYXJ0ID0+IGNoYXJ0Lm9uSG92ZXJlZChOYU4pKTtcbiAgICAgICAgICAgIH0pO1xuICAgIH1cblxuICAgIC8vIF9jaGFydCBpcyByZXF1aXJlZCBieSBUdWlMaW5lRGF5c0NoYXJ0Q29tcG9uZW50IHRoYXQgaW1wZXJzb25hdGVzIHRoaXMgZGlyZWN0aXZlXG4gICAgZ2V0Q29udGV4dChpbmRleDogbnVtYmVyLCBfY2hhcnQ6IFR1aUxpbmVDaGFydENvbXBvbmVudCk6IHJlYWRvbmx5IFR1aVBvaW50W10ge1xuICAgICAgICByZXR1cm4gdGhpcy5jb21wdXRlQ29udGV4dCguLi50aGlzLmNoYXJ0cy5tYXAoKHt2YWx1ZX0pID0+IHZhbHVlKSlbaW5kZXhdO1xuICAgIH1cblxuICAgIC8vIF9jaGFydCBpcyByZXF1aXJlZCBieSBUdWlMaW5lRGF5c0NoYXJ0Q29tcG9uZW50IHRoYXQgaW1wZXJzb25hdGVzIHRoaXMgZGlyZWN0aXZlXG4gICAgcmFpc2UoaW5kZXg6IG51bWJlciwgX2NoYXJ0OiBUdWlMaW5lQ2hhcnRDb21wb25lbnQpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgY3VycmVudCA9IHRoaXMuY2hhcnRzLm1hcChjaGFydCA9PiBjaGFydC52YWx1ZVtpbmRleF0pO1xuICAgICAgICBjb25zdCBzb3J0ZWQgPSBbLi4uY3VycmVudF0uc29ydCgoYSwgYikgPT4gYVsxXSAtIGJbMV0pO1xuXG4gICAgICAgIHRoaXMuY2hhcnRzLmZvckVhY2goY2hhcnQgPT4gY2hhcnQub25Ib3ZlcmVkKGluZGV4KSk7XG4gICAgICAgIHRoaXMuY2hhcnRzUmVmLmZvckVhY2goKHtuYXRpdmVFbGVtZW50fSwgaW5kZXgpID0+XG4gICAgICAgICAgICB0aGlzLnJlbmRlcmVyLnNldFN0eWxlKFxuICAgICAgICAgICAgICAgIG5hdGl2ZUVsZW1lbnQsXG4gICAgICAgICAgICAgICAgJ3otaW5kZXgnLFxuICAgICAgICAgICAgICAgIHNvcnRlZC5pbmRleE9mKGN1cnJlbnRbaW5kZXhdKSxcbiAgICAgICAgICAgICksXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgQHR1aVB1cmVcbiAgICBwcml2YXRlIGNvbXB1dGVDb250ZXh0KFxuICAgICAgICAuLi52YWx1ZXM6IFJlYWRvbmx5QXJyYXk8cmVhZG9ubHkgVHVpUG9pbnRbXT5cbiAgICApOiBSZWFkb25seUFycmF5PHJlYWRvbmx5IFR1aVBvaW50W10+IHtcbiAgICAgICAgcmV0dXJuICh2YWx1ZXNbMF0gfHwgW10pLm1hcCgoXywgaW5kZXgpID0+IHZhbHVlcy5tYXAodmFsdWUgPT4gdmFsdWVbaW5kZXhdKSk7XG4gICAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gdHVpTGluZUNoYXJ0RHJpdmVycyhcbiAgICBjaGFydHM6IFF1ZXJ5TGlzdDx7ZHJpdmVyczogUXVlcnlMaXN0PE9ic2VydmFibGU8Ym9vbGVhbj4+fT4sXG4pOiBPYnNlcnZhYmxlPGJvb2xlYW4+IHtcbiAgICByZXR1cm4gY29tYmluZUxhdGVzdChcbiAgICAgICAgY2hhcnRzLm1hcCgoe2RyaXZlcnN9KSA9PlxuICAgICAgICAgICAgdHVpUXVlcnlMaXN0Q2hhbmdlcyhkcml2ZXJzKS5waXBlKFxuICAgICAgICAgICAgICAgIG1hcChkcml2ZXJzID0+IGRyaXZlcnMubWFwKGRyaXZlciA9PiBkcml2ZXIucGlwZShzdGFydFdpdGgoZmFsc2UpKSkpLFxuICAgICAgICAgICAgKSxcbiAgICAgICAgKSxcbiAgICApLnBpcGUoXG4gICAgICAgIG1hcChhbGwgPT4gYWxsLnJlZHVjZSgoYWNjLCBkcml2ZXJzKSA9PiBhY2MuY29uY2F0KGRyaXZlcnMpLCBbXSkpLFxuICAgICAgICBzd2l0Y2hNYXAoZHJpdmVycyA9PiBjb21iaW5lTGF0ZXN0KGRyaXZlcnMpKSxcbiAgICAgICAgbWFwKHZhbHVlcyA9PiB2YWx1ZXMuc29tZShCb29sZWFuKSksXG4gICAgICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKCksXG4gICAgKTtcbn1cbiJdfQ==