@fluentui/react-charting 5.16.23 → 5.16.25

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 (794) hide show
  1. package/CHANGELOG.json +75 -1
  2. package/CHANGELOG.md +26 -2
  3. package/config/setup-env.js +1 -0
  4. package/docs/TestPlans/BasicDonutChart.png +0 -0
  5. package/docs/TestPlans/DonutChart/ComponentTests.md +35 -0
  6. package/lib/AreaChart.d.ts +1 -0
  7. package/lib/AreaChart.js +2 -0
  8. package/lib/AreaChart.js.map +1 -0
  9. package/lib/CartesianChart.d.ts +1 -0
  10. package/lib/CartesianChart.js +2 -0
  11. package/lib/CartesianChart.js.map +1 -0
  12. package/lib/DonutChart.d.ts +1 -0
  13. package/lib/DonutChart.js +2 -0
  14. package/lib/DonutChart.js.map +1 -0
  15. package/lib/GroupedVerticalBarChart.d.ts +1 -0
  16. package/lib/GroupedVerticalBarChart.js +2 -0
  17. package/lib/GroupedVerticalBarChart.js.map +1 -0
  18. package/lib/HeatMapChart.d.ts +1 -0
  19. package/lib/HeatMapChart.js +2 -0
  20. package/lib/HeatMapChart.js.map +1 -0
  21. package/lib/HorizontalBarChart.d.ts +1 -0
  22. package/lib/HorizontalBarChart.js +2 -0
  23. package/lib/HorizontalBarChart.js.map +1 -0
  24. package/lib/Legends.d.ts +1 -0
  25. package/lib/Legends.js +2 -0
  26. package/lib/Legends.js.map +1 -0
  27. package/lib/LineChart.d.ts +1 -0
  28. package/lib/LineChart.js +2 -0
  29. package/lib/LineChart.js.map +1 -0
  30. package/lib/PieChart.d.ts +1 -0
  31. package/lib/PieChart.js +2 -0
  32. package/lib/PieChart.js.map +1 -0
  33. package/lib/SankeyChart.d.ts +1 -0
  34. package/lib/SankeyChart.js +2 -0
  35. package/lib/SankeyChart.js.map +1 -0
  36. package/lib/Sparkline.d.ts +1 -0
  37. package/lib/Sparkline.js +2 -0
  38. package/lib/Sparkline.js.map +1 -0
  39. package/lib/StackedBarChart.d.ts +1 -0
  40. package/lib/StackedBarChart.js +2 -0
  41. package/lib/StackedBarChart.js.map +1 -0
  42. package/lib/Styling.d.ts +2 -0
  43. package/lib/Styling.js +8 -0
  44. package/lib/Styling.js.map +1 -0
  45. package/lib/TreeChart.d.ts +1 -0
  46. package/lib/TreeChart.js +2 -0
  47. package/lib/TreeChart.js.map +1 -0
  48. package/lib/Utilities.d.ts +2 -0
  49. package/lib/Utilities.js +20 -0
  50. package/lib/Utilities.js.map +1 -0
  51. package/lib/VerticalBarChart.d.ts +1 -0
  52. package/lib/VerticalBarChart.js +2 -0
  53. package/lib/VerticalBarChart.js.map +1 -0
  54. package/lib/VerticalStackedBarChart.d.ts +1 -0
  55. package/lib/VerticalStackedBarChart.js +2 -0
  56. package/lib/VerticalStackedBarChart.js.map +1 -0
  57. package/lib/components/AreaChart/AreaChart.base.d.ts +92 -0
  58. package/lib/components/AreaChart/AreaChart.base.js +562 -0
  59. package/lib/components/AreaChart/AreaChart.base.js.map +1 -0
  60. package/lib/components/AreaChart/AreaChart.d.ts +3 -0
  61. package/lib/components/AreaChart/AreaChart.js +6 -0
  62. package/lib/components/AreaChart/AreaChart.js.map +1 -0
  63. package/lib/components/AreaChart/AreaChart.styles.d.ts +2 -0
  64. package/lib/components/AreaChart/AreaChart.styles.js +7 -0
  65. package/lib/components/AreaChart/AreaChart.styles.js.map +1 -0
  66. package/lib/components/AreaChart/AreaChart.types.d.ts +37 -0
  67. package/lib/components/AreaChart/AreaChart.types.js +2 -0
  68. package/lib/components/AreaChart/AreaChart.types.js.map +1 -0
  69. package/lib/components/AreaChart/index.d.ts +2 -0
  70. package/lib/components/AreaChart/index.js +3 -0
  71. package/lib/components/AreaChart/index.js.map +1 -0
  72. package/lib/components/CommonComponents/CartesianChart.base.d.ts +43 -0
  73. package/lib/components/CommonComponents/CartesianChart.base.js +331 -0
  74. package/lib/components/CommonComponents/CartesianChart.base.js.map +1 -0
  75. package/lib/components/CommonComponents/CartesianChart.d.ts +3 -0
  76. package/lib/components/CommonComponents/CartesianChart.js +5 -0
  77. package/lib/components/CommonComponents/CartesianChart.js.map +1 -0
  78. package/lib/components/CommonComponents/CartesianChart.styles.d.ts +2 -0
  79. package/lib/components/CommonComponents/CartesianChart.styles.js +163 -0
  80. package/lib/components/CommonComponents/CartesianChart.styles.js.map +1 -0
  81. package/lib/components/CommonComponents/CartesianChart.types.d.ts +428 -0
  82. package/lib/components/CommonComponents/CartesianChart.types.js +2 -0
  83. package/lib/components/CommonComponents/CartesianChart.types.js.map +1 -0
  84. package/lib/components/CommonComponents/index.d.ts +2 -0
  85. package/lib/components/CommonComponents/index.js +3 -0
  86. package/lib/components/CommonComponents/index.js.map +1 -0
  87. package/lib/components/DonutChart/Arc/Arc.d.ts +21 -0
  88. package/lib/components/DonutChart/Arc/Arc.js +86 -0
  89. package/lib/components/DonutChart/Arc/Arc.js.map +1 -0
  90. package/lib/components/DonutChart/Arc/Arc.styles.d.ts +2 -0
  91. package/lib/components/DonutChart/Arc/Arc.styles.js +28 -0
  92. package/lib/components/DonutChart/Arc/Arc.styles.js.map +1 -0
  93. package/lib/components/DonutChart/Arc/Arc.types.d.ts +124 -0
  94. package/lib/components/DonutChart/Arc/Arc.types.js +2 -0
  95. package/lib/components/DonutChart/Arc/Arc.types.js.map +1 -0
  96. package/lib/components/DonutChart/Arc/index.d.ts +2 -0
  97. package/lib/components/DonutChart/Arc/index.js +3 -0
  98. package/lib/components/DonutChart/Arc/index.js.map +1 -0
  99. package/lib/components/DonutChart/DonutChart.base.d.ts +50 -0
  100. package/lib/components/DonutChart/DonutChart.base.js +211 -0
  101. package/lib/components/DonutChart/DonutChart.base.js.map +1 -0
  102. package/lib/components/DonutChart/DonutChart.d.ts +3 -0
  103. package/lib/components/DonutChart/DonutChart.js +6 -0
  104. package/lib/components/DonutChart/DonutChart.js.map +1 -0
  105. package/lib/components/DonutChart/DonutChart.styles.d.ts +2 -0
  106. package/lib/components/DonutChart/DonutChart.styles.js +30 -0
  107. package/lib/components/DonutChart/DonutChart.styles.js.map +1 -0
  108. package/lib/components/DonutChart/DonutChart.types.d.ts +63 -0
  109. package/lib/components/DonutChart/DonutChart.types.js +2 -0
  110. package/lib/components/DonutChart/DonutChart.types.js.map +1 -0
  111. package/lib/components/DonutChart/Pie/Pie.d.ts +15 -0
  112. package/lib/components/DonutChart/Pie/Pie.js +71 -0
  113. package/lib/components/DonutChart/Pie/Pie.js.map +1 -0
  114. package/lib/components/DonutChart/Pie/Pie.styles.d.ts +2 -0
  115. package/lib/components/DonutChart/Pie/Pie.styles.js +19 -0
  116. package/lib/components/DonutChart/Pie/Pie.styles.js.map +1 -0
  117. package/lib/components/DonutChart/Pie/Pie.types.d.ts +96 -0
  118. package/lib/components/DonutChart/Pie/Pie.types.js +2 -0
  119. package/lib/components/DonutChart/Pie/Pie.types.js.map +1 -0
  120. package/lib/components/DonutChart/Pie/index.d.ts +2 -0
  121. package/lib/components/DonutChart/Pie/index.js +3 -0
  122. package/lib/components/DonutChart/Pie/index.js.map +1 -0
  123. package/lib/components/DonutChart/index.d.ts +3 -0
  124. package/lib/components/DonutChart/index.js +4 -0
  125. package/lib/components/DonutChart/index.js.map +1 -0
  126. package/lib/components/GroupedVerticalBarChart/GroupedVerticalBarChart.base.d.ts +62 -0
  127. package/lib/components/GroupedVerticalBarChart/GroupedVerticalBarChart.base.js +381 -0
  128. package/lib/components/GroupedVerticalBarChart/GroupedVerticalBarChart.base.js.map +1 -0
  129. package/lib/components/GroupedVerticalBarChart/GroupedVerticalBarChart.d.ts +3 -0
  130. package/lib/components/GroupedVerticalBarChart/GroupedVerticalBarChart.js +6 -0
  131. package/lib/components/GroupedVerticalBarChart/GroupedVerticalBarChart.js.map +1 -0
  132. package/lib/components/GroupedVerticalBarChart/GroupedVerticalBarChart.styles.d.ts +2 -0
  133. package/lib/components/GroupedVerticalBarChart/GroupedVerticalBarChart.styles.js +17 -0
  134. package/lib/components/GroupedVerticalBarChart/GroupedVerticalBarChart.styles.js.map +1 -0
  135. package/lib/components/GroupedVerticalBarChart/GroupedVerticalBarChart.types.d.ts +83 -0
  136. package/lib/components/GroupedVerticalBarChart/GroupedVerticalBarChart.types.js +2 -0
  137. package/lib/components/GroupedVerticalBarChart/GroupedVerticalBarChart.types.js.map +1 -0
  138. package/lib/components/GroupedVerticalBarChart/index.d.ts +2 -0
  139. package/lib/components/GroupedVerticalBarChart/index.js +3 -0
  140. package/lib/components/GroupedVerticalBarChart/index.js.map +1 -0
  141. package/lib/components/HeatMapChart/HeatMapChart.base.d.ts +147 -0
  142. package/lib/components/HeatMapChart/HeatMapChart.base.js +498 -0
  143. package/lib/components/HeatMapChart/HeatMapChart.base.js.map +1 -0
  144. package/lib/components/HeatMapChart/HeatMapChart.d.ts +3 -0
  145. package/lib/components/HeatMapChart/HeatMapChart.js +5 -0
  146. package/lib/components/HeatMapChart/HeatMapChart.js.map +1 -0
  147. package/lib/components/HeatMapChart/HeatMapChart.styles.d.ts +2 -0
  148. package/lib/components/HeatMapChart/HeatMapChart.styles.js +24 -0
  149. package/lib/components/HeatMapChart/HeatMapChart.styles.js.map +1 -0
  150. package/lib/components/HeatMapChart/HeatMapChart.types.d.ts +110 -0
  151. package/lib/components/HeatMapChart/HeatMapChart.types.js +2 -0
  152. package/lib/components/HeatMapChart/HeatMapChart.types.js.map +1 -0
  153. package/lib/components/HeatMapChart/index.d.ts +2 -0
  154. package/lib/components/HeatMapChart/index.js +3 -0
  155. package/lib/components/HeatMapChart/index.js.map +1 -0
  156. package/lib/components/HorizontalBarChart/HorizontalBarChart.base.d.ts +36 -0
  157. package/lib/components/HorizontalBarChart/HorizontalBarChart.base.js +237 -0
  158. package/lib/components/HorizontalBarChart/HorizontalBarChart.base.js.map +1 -0
  159. package/lib/components/HorizontalBarChart/HorizontalBarChart.d.ts +3 -0
  160. package/lib/components/HorizontalBarChart/HorizontalBarChart.js +6 -0
  161. package/lib/components/HorizontalBarChart/HorizontalBarChart.js.map +1 -0
  162. package/lib/components/HorizontalBarChart/HorizontalBarChart.styles.d.ts +2 -0
  163. package/lib/components/HorizontalBarChart/HorizontalBarChart.styles.js +69 -0
  164. package/lib/components/HorizontalBarChart/HorizontalBarChart.styles.js.map +1 -0
  165. package/lib/components/HorizontalBarChart/HorizontalBarChart.types.d.ts +172 -0
  166. package/lib/components/HorizontalBarChart/HorizontalBarChart.types.js +6 -0
  167. package/lib/components/HorizontalBarChart/HorizontalBarChart.types.js.map +1 -0
  168. package/lib/components/HorizontalBarChart/index.d.ts +3 -0
  169. package/lib/components/HorizontalBarChart/index.js +4 -0
  170. package/lib/components/HorizontalBarChart/index.js.map +1 -0
  171. package/lib/components/Legends/Legends.base.d.ts +44 -0
  172. package/lib/components/Legends/Legends.base.js +293 -0
  173. package/lib/components/Legends/Legends.base.js.map +1 -0
  174. package/lib/components/Legends/Legends.d.ts +3 -0
  175. package/lib/components/Legends/Legends.js +5 -0
  176. package/lib/components/Legends/Legends.js.map +1 -0
  177. package/lib/components/Legends/Legends.styles.d.ts +2 -0
  178. package/lib/components/Legends/Legends.styles.js +103 -0
  179. package/lib/components/Legends/Legends.styles.js.map +1 -0
  180. package/lib/components/Legends/Legends.types.d.ts +169 -0
  181. package/lib/components/Legends/Legends.types.js +2 -0
  182. package/lib/components/Legends/Legends.types.js.map +1 -0
  183. package/lib/components/Legends/index.d.ts +3 -0
  184. package/lib/components/Legends/index.js +4 -0
  185. package/lib/components/Legends/index.js.map +1 -0
  186. package/lib/components/Legends/shape.d.ts +9 -0
  187. package/lib/components/Legends/shape.js +24 -0
  188. package/lib/components/Legends/shape.js.map +1 -0
  189. package/lib/components/LineChart/LineChart.base.d.ts +84 -0
  190. package/lib/components/LineChart/LineChart.base.js +815 -0
  191. package/lib/components/LineChart/LineChart.base.js.map +1 -0
  192. package/lib/components/LineChart/LineChart.d.ts +3 -0
  193. package/lib/components/LineChart/LineChart.js +6 -0
  194. package/lib/components/LineChart/LineChart.js.map +1 -0
  195. package/lib/components/LineChart/LineChart.styles.d.ts +2 -0
  196. package/lib/components/LineChart/LineChart.styles.js +7 -0
  197. package/lib/components/LineChart/LineChart.styles.js.map +1 -0
  198. package/lib/components/LineChart/LineChart.types.d.ts +72 -0
  199. package/lib/components/LineChart/LineChart.types.js +2 -0
  200. package/lib/components/LineChart/LineChart.types.js.map +1 -0
  201. package/lib/components/LineChart/eventAnnotation/EventAnnotation.d.ts +10 -0
  202. package/lib/components/LineChart/eventAnnotation/EventAnnotation.js +93 -0
  203. package/lib/components/LineChart/eventAnnotation/EventAnnotation.js.map +1 -0
  204. package/lib/components/LineChart/eventAnnotation/LabelLink.d.ts +22 -0
  205. package/lib/components/LineChart/eventAnnotation/LabelLink.js +37 -0
  206. package/lib/components/LineChart/eventAnnotation/LabelLink.js.map +1 -0
  207. package/lib/components/LineChart/eventAnnotation/Textbox.d.ts +13 -0
  208. package/lib/components/LineChart/eventAnnotation/Textbox.js +37 -0
  209. package/lib/components/LineChart/eventAnnotation/Textbox.js.map +1 -0
  210. package/lib/components/LineChart/index.d.ts +3 -0
  211. package/lib/components/LineChart/index.js +4 -0
  212. package/lib/components/LineChart/index.js.map +1 -0
  213. package/lib/components/PieChart/Arc/Arc.d.ts +12 -0
  214. package/lib/components/PieChart/Arc/Arc.js +57 -0
  215. package/lib/components/PieChart/Arc/Arc.js.map +1 -0
  216. package/lib/components/PieChart/Arc/Arc.styles.d.ts +2 -0
  217. package/lib/components/PieChart/Arc/Arc.styles.js +8 -0
  218. package/lib/components/PieChart/Arc/Arc.styles.js.map +1 -0
  219. package/lib/components/PieChart/Arc/Arc.types.d.ts +60 -0
  220. package/lib/components/PieChart/Arc/Arc.types.js +2 -0
  221. package/lib/components/PieChart/Arc/Arc.types.js.map +1 -0
  222. package/lib/components/PieChart/Arc/index.d.ts +2 -0
  223. package/lib/components/PieChart/Arc/index.js +3 -0
  224. package/lib/components/PieChart/Arc/index.js.map +1 -0
  225. package/lib/components/PieChart/Pie/Pie.d.ts +10 -0
  226. package/lib/components/PieChart/Pie/Pie.js +35 -0
  227. package/lib/components/PieChart/Pie/Pie.js.map +1 -0
  228. package/lib/components/PieChart/Pie/Pie.styles.d.ts +2 -0
  229. package/lib/components/PieChart/Pie/Pie.styles.js +6 -0
  230. package/lib/components/PieChart/Pie/Pie.styles.js.map +1 -0
  231. package/lib/components/PieChart/Pie/Pie.types.d.ts +46 -0
  232. package/lib/components/PieChart/Pie/Pie.types.js +2 -0
  233. package/lib/components/PieChart/Pie/Pie.types.js.map +1 -0
  234. package/lib/components/PieChart/Pie/index.d.ts +2 -0
  235. package/lib/components/PieChart/Pie/index.js +3 -0
  236. package/lib/components/PieChart/Pie/index.js.map +1 -0
  237. package/lib/components/PieChart/PieChart.base.d.ts +7 -0
  238. package/lib/components/PieChart/PieChart.base.js +34 -0
  239. package/lib/components/PieChart/PieChart.base.js.map +1 -0
  240. package/lib/components/PieChart/PieChart.d.ts +3 -0
  241. package/lib/components/PieChart/PieChart.js +6 -0
  242. package/lib/components/PieChart/PieChart.js.map +1 -0
  243. package/lib/components/PieChart/PieChart.styles.d.ts +2 -0
  244. package/lib/components/PieChart/PieChart.styles.js +29 -0
  245. package/lib/components/PieChart/PieChart.styles.js.map +1 -0
  246. package/lib/components/PieChart/PieChart.types.d.ts +63 -0
  247. package/lib/components/PieChart/PieChart.types.js +2 -0
  248. package/lib/components/PieChart/PieChart.types.js.map +1 -0
  249. package/lib/components/PieChart/index.d.ts +2 -0
  250. package/lib/components/PieChart/index.js +3 -0
  251. package/lib/components/PieChart/index.js.map +1 -0
  252. package/lib/components/SankeyChart/SankeyChart.base.d.ts +95 -0
  253. package/lib/components/SankeyChart/SankeyChart.base.js +674 -0
  254. package/lib/components/SankeyChart/SankeyChart.base.js.map +1 -0
  255. package/lib/components/SankeyChart/SankeyChart.d.ts +3 -0
  256. package/lib/components/SankeyChart/SankeyChart.js +6 -0
  257. package/lib/components/SankeyChart/SankeyChart.js.map +1 -0
  258. package/lib/components/SankeyChart/SankeyChart.styles.d.ts +2 -0
  259. package/lib/components/SankeyChart/SankeyChart.styles.js +58 -0
  260. package/lib/components/SankeyChart/SankeyChart.styles.js.map +1 -0
  261. package/lib/components/SankeyChart/SankeyChart.types.d.ts +83 -0
  262. package/lib/components/SankeyChart/SankeyChart.types.js +2 -0
  263. package/lib/components/SankeyChart/SankeyChart.types.js.map +1 -0
  264. package/lib/components/SankeyChart/index.d.ts +2 -0
  265. package/lib/components/SankeyChart/index.js +3 -0
  266. package/lib/components/SankeyChart/index.js.map +1 -0
  267. package/lib/components/Sparkline/Sparkline.base.d.ts +20 -0
  268. package/lib/components/Sparkline/Sparkline.base.js +76 -0
  269. package/lib/components/Sparkline/Sparkline.base.js.map +1 -0
  270. package/lib/components/Sparkline/Sparkline.d.ts +3 -0
  271. package/lib/components/Sparkline/Sparkline.js +6 -0
  272. package/lib/components/Sparkline/Sparkline.js.map +1 -0
  273. package/lib/components/Sparkline/Sparkline.styles.d.ts +2 -0
  274. package/lib/components/Sparkline/Sparkline.styles.js +10 -0
  275. package/lib/components/Sparkline/Sparkline.styles.js.map +1 -0
  276. package/lib/components/Sparkline/Sparkline.types.d.ts +51 -0
  277. package/lib/components/Sparkline/Sparkline.types.js +2 -0
  278. package/lib/components/Sparkline/Sparkline.types.js.map +1 -0
  279. package/lib/components/Sparkline/index.d.ts +2 -0
  280. package/lib/components/Sparkline/index.js +3 -0
  281. package/lib/components/Sparkline/index.js.map +1 -0
  282. package/lib/components/StackedBarChart/MultiStackedBarChart.base.d.ts +56 -0
  283. package/lib/components/StackedBarChart/MultiStackedBarChart.base.js +356 -0
  284. package/lib/components/StackedBarChart/MultiStackedBarChart.base.js.map +1 -0
  285. package/lib/components/StackedBarChart/MultiStackedBarChart.d.ts +3 -0
  286. package/lib/components/StackedBarChart/MultiStackedBarChart.js +6 -0
  287. package/lib/components/StackedBarChart/MultiStackedBarChart.js.map +1 -0
  288. package/lib/components/StackedBarChart/MultiStackedBarChart.styles.d.ts +2 -0
  289. package/lib/components/StackedBarChart/MultiStackedBarChart.styles.js +90 -0
  290. package/lib/components/StackedBarChart/MultiStackedBarChart.styles.js.map +1 -0
  291. package/lib/components/StackedBarChart/MultiStackedBarChart.types.d.ts +198 -0
  292. package/lib/components/StackedBarChart/MultiStackedBarChart.types.js +6 -0
  293. package/lib/components/StackedBarChart/MultiStackedBarChart.types.js.map +1 -0
  294. package/lib/components/StackedBarChart/StackedBarChart.base.d.ts +51 -0
  295. package/lib/components/StackedBarChart/StackedBarChart.base.js +311 -0
  296. package/lib/components/StackedBarChart/StackedBarChart.base.js.map +1 -0
  297. package/lib/components/StackedBarChart/StackedBarChart.d.ts +3 -0
  298. package/lib/components/StackedBarChart/StackedBarChart.js +6 -0
  299. package/lib/components/StackedBarChart/StackedBarChart.js.map +1 -0
  300. package/lib/components/StackedBarChart/StackedBarChart.styles.d.ts +2 -0
  301. package/lib/components/StackedBarChart/StackedBarChart.styles.js +104 -0
  302. package/lib/components/StackedBarChart/StackedBarChart.styles.js.map +1 -0
  303. package/lib/components/StackedBarChart/StackedBarChart.types.d.ts +210 -0
  304. package/lib/components/StackedBarChart/StackedBarChart.types.js +2 -0
  305. package/lib/components/StackedBarChart/StackedBarChart.types.js.map +1 -0
  306. package/lib/components/StackedBarChart/index.d.ts +5 -0
  307. package/lib/components/StackedBarChart/index.js +6 -0
  308. package/lib/components/StackedBarChart/index.js.map +1 -0
  309. package/lib/components/TreeChart/TreeChart.base.d.ts +18 -0
  310. package/lib/components/TreeChart/TreeChart.base.js +316 -0
  311. package/lib/components/TreeChart/TreeChart.base.js.map +1 -0
  312. package/lib/components/TreeChart/TreeChart.d.ts +3 -0
  313. package/lib/components/TreeChart/TreeChart.js +5 -0
  314. package/lib/components/TreeChart/TreeChart.js.map +1 -0
  315. package/lib/components/TreeChart/TreeChart.styles.d.ts +2 -0
  316. package/lib/components/TreeChart/TreeChart.styles.js +29 -0
  317. package/lib/components/TreeChart/TreeChart.styles.js.map +1 -0
  318. package/lib/components/TreeChart/TreeChart.types.d.ts +197 -0
  319. package/lib/components/TreeChart/TreeChart.types.js +23 -0
  320. package/lib/components/TreeChart/TreeChart.types.js.map +1 -0
  321. package/lib/components/TreeChart/index.d.ts +2 -0
  322. package/lib/components/TreeChart/index.js +3 -0
  323. package/lib/components/TreeChart/index.js.map +1 -0
  324. package/lib/components/VerticalBarChart/VerticalBarChart.base.d.ts +74 -0
  325. package/lib/components/VerticalBarChart/VerticalBarChart.base.js +536 -0
  326. package/lib/components/VerticalBarChart/VerticalBarChart.base.js.map +1 -0
  327. package/lib/components/VerticalBarChart/VerticalBarChart.d.ts +3 -0
  328. package/lib/components/VerticalBarChart/VerticalBarChart.js +6 -0
  329. package/lib/components/VerticalBarChart/VerticalBarChart.js.map +1 -0
  330. package/lib/components/VerticalBarChart/VerticalBarChart.styles.d.ts +2 -0
  331. package/lib/components/VerticalBarChart/VerticalBarChart.styles.js +28 -0
  332. package/lib/components/VerticalBarChart/VerticalBarChart.styles.js.map +1 -0
  333. package/lib/components/VerticalBarChart/VerticalBarChart.types.d.ts +114 -0
  334. package/lib/components/VerticalBarChart/VerticalBarChart.types.js +2 -0
  335. package/lib/components/VerticalBarChart/VerticalBarChart.types.js.map +1 -0
  336. package/lib/components/VerticalBarChart/index.d.ts +2 -0
  337. package/lib/components/VerticalBarChart/index.js +3 -0
  338. package/lib/components/VerticalBarChart/index.js.map +1 -0
  339. package/lib/components/VerticalStackedBarChart/VerticalStackedBarChart.base.d.ts +85 -0
  340. package/lib/components/VerticalStackedBarChart/VerticalStackedBarChart.base.js +666 -0
  341. package/lib/components/VerticalStackedBarChart/VerticalStackedBarChart.base.js.map +1 -0
  342. package/lib/components/VerticalStackedBarChart/VerticalStackedBarChart.d.ts +3 -0
  343. package/lib/components/VerticalStackedBarChart/VerticalStackedBarChart.js +6 -0
  344. package/lib/components/VerticalStackedBarChart/VerticalStackedBarChart.js.map +1 -0
  345. package/lib/components/VerticalStackedBarChart/VerticalStackedBarChart.styles.d.ts +2 -0
  346. package/lib/components/VerticalStackedBarChart/VerticalStackedBarChart.styles.js +18 -0
  347. package/lib/components/VerticalStackedBarChart/VerticalStackedBarChart.styles.js.map +1 -0
  348. package/lib/components/VerticalStackedBarChart/VerticalStackedBarChart.types.d.ts +142 -0
  349. package/lib/components/VerticalStackedBarChart/VerticalStackedBarChart.types.js +2 -0
  350. package/lib/components/VerticalStackedBarChart/VerticalStackedBarChart.types.js.map +1 -0
  351. package/lib/components/VerticalStackedBarChart/index.d.ts +2 -0
  352. package/lib/components/VerticalStackedBarChart/index.js +3 -0
  353. package/lib/components/VerticalStackedBarChart/index.js.map +1 -0
  354. package/lib/index.d.ts +19 -0
  355. package/lib/index.js +20 -0
  356. package/lib/index.js.map +1 -0
  357. package/lib/types/IDataPoint.d.ts +545 -0
  358. package/lib/types/IDataPoint.js +2 -0
  359. package/lib/types/IDataPoint.js.map +1 -0
  360. package/lib/types/IEventAnnotation.d.ts +6 -0
  361. package/lib/types/IEventAnnotation.js +2 -0
  362. package/lib/types/IEventAnnotation.js.map +1 -0
  363. package/lib/types/ILegendDataItem.d.ts +10 -0
  364. package/lib/types/ILegendDataItem.js +2 -0
  365. package/lib/types/ILegendDataItem.js.map +1 -0
  366. package/lib/types/index.d.ts +2 -0
  367. package/lib/types/index.js +3 -0
  368. package/lib/types/index.js.map +1 -0
  369. package/lib/utilities/ChartHoverCard/ChartHoverCard.base.d.ts +6 -0
  370. package/lib/utilities/ChartHoverCard/ChartHoverCard.base.js +38 -0
  371. package/lib/utilities/ChartHoverCard/ChartHoverCard.base.js.map +1 -0
  372. package/lib/utilities/ChartHoverCard/ChartHoverCard.d.ts +3 -0
  373. package/lib/utilities/ChartHoverCard/ChartHoverCard.js +6 -0
  374. package/lib/utilities/ChartHoverCard/ChartHoverCard.js.map +1 -0
  375. package/lib/utilities/ChartHoverCard/ChartHoverCard.styles.d.ts +2 -0
  376. package/lib/utilities/ChartHoverCard/ChartHoverCard.styles.js +82 -0
  377. package/lib/utilities/ChartHoverCard/ChartHoverCard.styles.js.map +1 -0
  378. package/lib/utilities/ChartHoverCard/ChartHoverCard.types.d.ts +105 -0
  379. package/lib/utilities/ChartHoverCard/ChartHoverCard.types.js +2 -0
  380. package/lib/utilities/ChartHoverCard/ChartHoverCard.types.js.map +1 -0
  381. package/lib/utilities/ChartHoverCard/index.d.ts +3 -0
  382. package/lib/utilities/ChartHoverCard/index.js +4 -0
  383. package/lib/utilities/ChartHoverCard/index.js.map +1 -0
  384. package/lib/utilities/FocusableTooltipText.d.ts +27 -0
  385. package/lib/utilities/FocusableTooltipText.js +54 -0
  386. package/lib/utilities/FocusableTooltipText.js.map +1 -0
  387. package/lib/utilities/colors.d.ts +51 -0
  388. package/lib/utilities/colors.js +132 -0
  389. package/lib/utilities/colors.js.map +1 -0
  390. package/lib/utilities/index.d.ts +3 -0
  391. package/lib/utilities/index.js +4 -0
  392. package/lib/utilities/index.js.map +1 -0
  393. package/lib/utilities/utilities.d.ts +377 -0
  394. package/lib/utilities/utilities.js +864 -0
  395. package/lib/utilities/utilities.js.map +1 -0
  396. package/lib/version.d.ts +1 -0
  397. package/lib/version.js +5 -0
  398. package/lib/version.js.map +1 -0
  399. package/lib-amd/AreaChart.d.ts +1 -0
  400. package/lib-amd/AreaChart.js +6 -0
  401. package/lib-amd/AreaChart.js.map +1 -0
  402. package/lib-amd/CartesianChart.d.ts +1 -0
  403. package/lib-amd/CartesianChart.js +6 -0
  404. package/lib-amd/CartesianChart.js.map +1 -0
  405. package/lib-amd/DonutChart.d.ts +1 -0
  406. package/lib-amd/DonutChart.js +6 -0
  407. package/lib-amd/DonutChart.js.map +1 -0
  408. package/lib-amd/GroupedVerticalBarChart.d.ts +1 -0
  409. package/lib-amd/GroupedVerticalBarChart.js +6 -0
  410. package/lib-amd/GroupedVerticalBarChart.js.map +1 -0
  411. package/lib-amd/HeatMapChart.d.ts +1 -0
  412. package/lib-amd/HeatMapChart.js +6 -0
  413. package/lib-amd/HeatMapChart.js.map +1 -0
  414. package/lib-amd/HorizontalBarChart.d.ts +1 -0
  415. package/lib-amd/HorizontalBarChart.js +6 -0
  416. package/lib-amd/HorizontalBarChart.js.map +1 -0
  417. package/lib-amd/Legends.d.ts +1 -0
  418. package/lib-amd/Legends.js +6 -0
  419. package/lib-amd/Legends.js.map +1 -0
  420. package/lib-amd/LineChart.d.ts +1 -0
  421. package/lib-amd/LineChart.js +6 -0
  422. package/lib-amd/LineChart.js.map +1 -0
  423. package/lib-amd/PieChart.d.ts +1 -0
  424. package/lib-amd/PieChart.js +6 -0
  425. package/lib-amd/PieChart.js.map +1 -0
  426. package/lib-amd/SankeyChart.d.ts +1 -0
  427. package/lib-amd/SankeyChart.js +6 -0
  428. package/lib-amd/SankeyChart.js.map +1 -0
  429. package/lib-amd/Sparkline.d.ts +1 -0
  430. package/lib-amd/Sparkline.js +6 -0
  431. package/lib-amd/Sparkline.js.map +1 -0
  432. package/lib-amd/StackedBarChart.d.ts +1 -0
  433. package/lib-amd/StackedBarChart.js +6 -0
  434. package/lib-amd/StackedBarChart.js.map +1 -0
  435. package/lib-amd/Styling.d.ts +2 -0
  436. package/lib-amd/Styling.js +75 -0
  437. package/lib-amd/Styling.js.map +1 -0
  438. package/lib-amd/TreeChart.d.ts +1 -0
  439. package/lib-amd/TreeChart.js +6 -0
  440. package/lib-amd/TreeChart.js.map +1 -0
  441. package/lib-amd/Utilities.d.ts +2 -0
  442. package/lib-amd/Utilities.js +183 -0
  443. package/lib-amd/Utilities.js.map +1 -0
  444. package/lib-amd/VerticalBarChart.d.ts +1 -0
  445. package/lib-amd/VerticalBarChart.js +6 -0
  446. package/lib-amd/VerticalBarChart.js.map +1 -0
  447. package/lib-amd/VerticalStackedBarChart.d.ts +1 -0
  448. package/lib-amd/VerticalStackedBarChart.js +6 -0
  449. package/lib-amd/VerticalStackedBarChart.js.map +1 -0
  450. package/lib-amd/components/AreaChart/AreaChart.base.d.ts +92 -0
  451. package/lib-amd/components/AreaChart/AreaChart.base.js +555 -0
  452. package/lib-amd/components/AreaChart/AreaChart.base.js.map +1 -0
  453. package/lib-amd/components/AreaChart/AreaChart.d.ts +3 -0
  454. package/lib-amd/components/AreaChart/AreaChart.js +8 -0
  455. package/lib-amd/components/AreaChart/AreaChart.js.map +1 -0
  456. package/lib-amd/components/AreaChart/AreaChart.styles.d.ts +2 -0
  457. package/lib-amd/components/AreaChart/AreaChart.styles.js +12 -0
  458. package/lib-amd/components/AreaChart/AreaChart.styles.js.map +1 -0
  459. package/lib-amd/components/AreaChart/AreaChart.types.d.ts +37 -0
  460. package/lib-amd/components/AreaChart/AreaChart.types.js +5 -0
  461. package/lib-amd/components/AreaChart/AreaChart.types.js.map +1 -0
  462. package/lib-amd/components/AreaChart/index.d.ts +2 -0
  463. package/lib-amd/components/AreaChart/index.js +7 -0
  464. package/lib-amd/components/AreaChart/index.js.map +1 -0
  465. package/lib-amd/components/CommonComponents/CartesianChart.base.d.ts +43 -0
  466. package/lib-amd/components/CommonComponents/CartesianChart.base.js +329 -0
  467. package/lib-amd/components/CommonComponents/CartesianChart.base.js.map +1 -0
  468. package/lib-amd/components/CommonComponents/CartesianChart.d.ts +3 -0
  469. package/lib-amd/components/CommonComponents/CartesianChart.js +7 -0
  470. package/lib-amd/components/CommonComponents/CartesianChart.js.map +1 -0
  471. package/lib-amd/components/CommonComponents/CartesianChart.styles.d.ts +2 -0
  472. package/lib-amd/components/CommonComponents/CartesianChart.styles.js +166 -0
  473. package/lib-amd/components/CommonComponents/CartesianChart.styles.js.map +1 -0
  474. package/lib-amd/components/CommonComponents/CartesianChart.types.d.ts +428 -0
  475. package/lib-amd/components/CommonComponents/CartesianChart.types.js +5 -0
  476. package/lib-amd/components/CommonComponents/CartesianChart.types.js.map +1 -0
  477. package/lib-amd/components/CommonComponents/index.d.ts +2 -0
  478. package/lib-amd/components/CommonComponents/index.js +7 -0
  479. package/lib-amd/components/CommonComponents/index.js.map +1 -0
  480. package/lib-amd/components/DonutChart/Arc/Arc.d.ts +21 -0
  481. package/lib-amd/components/DonutChart/Arc/Arc.js +85 -0
  482. package/lib-amd/components/DonutChart/Arc/Arc.js.map +1 -0
  483. package/lib-amd/components/DonutChart/Arc/Arc.styles.d.ts +2 -0
  484. package/lib-amd/components/DonutChart/Arc/Arc.styles.js +33 -0
  485. package/lib-amd/components/DonutChart/Arc/Arc.styles.js.map +1 -0
  486. package/lib-amd/components/DonutChart/Arc/Arc.types.d.ts +124 -0
  487. package/lib-amd/components/DonutChart/Arc/Arc.types.js +5 -0
  488. package/lib-amd/components/DonutChart/Arc/Arc.types.js.map +1 -0
  489. package/lib-amd/components/DonutChart/Arc/index.d.ts +2 -0
  490. package/lib-amd/components/DonutChart/Arc/index.js +7 -0
  491. package/lib-amd/components/DonutChart/Arc/index.js.map +1 -0
  492. package/lib-amd/components/DonutChart/DonutChart.base.d.ts +50 -0
  493. package/lib-amd/components/DonutChart/DonutChart.base.js +208 -0
  494. package/lib-amd/components/DonutChart/DonutChart.base.js.map +1 -0
  495. package/lib-amd/components/DonutChart/DonutChart.d.ts +3 -0
  496. package/lib-amd/components/DonutChart/DonutChart.js +8 -0
  497. package/lib-amd/components/DonutChart/DonutChart.js.map +1 -0
  498. package/lib-amd/components/DonutChart/DonutChart.styles.d.ts +2 -0
  499. package/lib-amd/components/DonutChart/DonutChart.styles.js +36 -0
  500. package/lib-amd/components/DonutChart/DonutChart.styles.js.map +1 -0
  501. package/lib-amd/components/DonutChart/DonutChart.types.d.ts +63 -0
  502. package/lib-amd/components/DonutChart/DonutChart.types.js +5 -0
  503. package/lib-amd/components/DonutChart/DonutChart.types.js.map +1 -0
  504. package/lib-amd/components/DonutChart/Pie/Pie.d.ts +15 -0
  505. package/lib-amd/components/DonutChart/Pie/Pie.js +69 -0
  506. package/lib-amd/components/DonutChart/Pie/Pie.js.map +1 -0
  507. package/lib-amd/components/DonutChart/Pie/Pie.styles.d.ts +2 -0
  508. package/lib-amd/components/DonutChart/Pie/Pie.styles.js +24 -0
  509. package/lib-amd/components/DonutChart/Pie/Pie.styles.js.map +1 -0
  510. package/lib-amd/components/DonutChart/Pie/Pie.types.d.ts +96 -0
  511. package/lib-amd/components/DonutChart/Pie/Pie.types.js +5 -0
  512. package/lib-amd/components/DonutChart/Pie/Pie.types.js.map +1 -0
  513. package/lib-amd/components/DonutChart/Pie/index.d.ts +2 -0
  514. package/lib-amd/components/DonutChart/Pie/index.js +7 -0
  515. package/lib-amd/components/DonutChart/Pie/index.js.map +1 -0
  516. package/lib-amd/components/DonutChart/index.d.ts +3 -0
  517. package/lib-amd/components/DonutChart/index.js +8 -0
  518. package/lib-amd/components/DonutChart/index.js.map +1 -0
  519. package/lib-amd/components/GroupedVerticalBarChart/GroupedVerticalBarChart.base.d.ts +62 -0
  520. package/lib-amd/components/GroupedVerticalBarChart/GroupedVerticalBarChart.base.js +375 -0
  521. package/lib-amd/components/GroupedVerticalBarChart/GroupedVerticalBarChart.base.js.map +1 -0
  522. package/lib-amd/components/GroupedVerticalBarChart/GroupedVerticalBarChart.d.ts +3 -0
  523. package/lib-amd/components/GroupedVerticalBarChart/GroupedVerticalBarChart.js +8 -0
  524. package/lib-amd/components/GroupedVerticalBarChart/GroupedVerticalBarChart.js.map +1 -0
  525. package/lib-amd/components/GroupedVerticalBarChart/GroupedVerticalBarChart.styles.d.ts +2 -0
  526. package/lib-amd/components/GroupedVerticalBarChart/GroupedVerticalBarChart.styles.js +21 -0
  527. package/lib-amd/components/GroupedVerticalBarChart/GroupedVerticalBarChart.styles.js.map +1 -0
  528. package/lib-amd/components/GroupedVerticalBarChart/GroupedVerticalBarChart.types.d.ts +83 -0
  529. package/lib-amd/components/GroupedVerticalBarChart/GroupedVerticalBarChart.types.js +5 -0
  530. package/lib-amd/components/GroupedVerticalBarChart/GroupedVerticalBarChart.types.js.map +1 -0
  531. package/lib-amd/components/GroupedVerticalBarChart/index.d.ts +2 -0
  532. package/lib-amd/components/GroupedVerticalBarChart/index.js +7 -0
  533. package/lib-amd/components/GroupedVerticalBarChart/index.js.map +1 -0
  534. package/lib-amd/components/HeatMapChart/HeatMapChart.base.d.ts +147 -0
  535. package/lib-amd/components/HeatMapChart/HeatMapChart.base.js +492 -0
  536. package/lib-amd/components/HeatMapChart/HeatMapChart.base.js.map +1 -0
  537. package/lib-amd/components/HeatMapChart/HeatMapChart.d.ts +3 -0
  538. package/lib-amd/components/HeatMapChart/HeatMapChart.js +7 -0
  539. package/lib-amd/components/HeatMapChart/HeatMapChart.js.map +1 -0
  540. package/lib-amd/components/HeatMapChart/HeatMapChart.styles.d.ts +2 -0
  541. package/lib-amd/components/HeatMapChart/HeatMapChart.styles.js +29 -0
  542. package/lib-amd/components/HeatMapChart/HeatMapChart.styles.js.map +1 -0
  543. package/lib-amd/components/HeatMapChart/HeatMapChart.types.d.ts +110 -0
  544. package/lib-amd/components/HeatMapChart/HeatMapChart.types.js +5 -0
  545. package/lib-amd/components/HeatMapChart/HeatMapChart.types.js.map +1 -0
  546. package/lib-amd/components/HeatMapChart/index.d.ts +2 -0
  547. package/lib-amd/components/HeatMapChart/index.js +7 -0
  548. package/lib-amd/components/HeatMapChart/index.js.map +1 -0
  549. package/lib-amd/components/HorizontalBarChart/HorizontalBarChart.base.d.ts +36 -0
  550. package/lib-amd/components/HorizontalBarChart/HorizontalBarChart.base.js +233 -0
  551. package/lib-amd/components/HorizontalBarChart/HorizontalBarChart.base.js.map +1 -0
  552. package/lib-amd/components/HorizontalBarChart/HorizontalBarChart.d.ts +3 -0
  553. package/lib-amd/components/HorizontalBarChart/HorizontalBarChart.js +8 -0
  554. package/lib-amd/components/HorizontalBarChart/HorizontalBarChart.js.map +1 -0
  555. package/lib-amd/components/HorizontalBarChart/HorizontalBarChart.styles.d.ts +2 -0
  556. package/lib-amd/components/HorizontalBarChart/HorizontalBarChart.styles.js +72 -0
  557. package/lib-amd/components/HorizontalBarChart/HorizontalBarChart.styles.js.map +1 -0
  558. package/lib-amd/components/HorizontalBarChart/HorizontalBarChart.types.d.ts +172 -0
  559. package/lib-amd/components/HorizontalBarChart/HorizontalBarChart.types.js +11 -0
  560. package/lib-amd/components/HorizontalBarChart/HorizontalBarChart.types.js.map +1 -0
  561. package/lib-amd/components/HorizontalBarChart/index.d.ts +3 -0
  562. package/lib-amd/components/HorizontalBarChart/index.js +8 -0
  563. package/lib-amd/components/HorizontalBarChart/index.js.map +1 -0
  564. package/lib-amd/components/Legends/Legends.base.d.ts +44 -0
  565. package/lib-amd/components/Legends/Legends.base.js +290 -0
  566. package/lib-amd/components/Legends/Legends.base.js.map +1 -0
  567. package/lib-amd/components/Legends/Legends.d.ts +3 -0
  568. package/lib-amd/components/Legends/Legends.js +7 -0
  569. package/lib-amd/components/Legends/Legends.js.map +1 -0
  570. package/lib-amd/components/Legends/Legends.styles.d.ts +2 -0
  571. package/lib-amd/components/Legends/Legends.styles.js +107 -0
  572. package/lib-amd/components/Legends/Legends.styles.js.map +1 -0
  573. package/lib-amd/components/Legends/Legends.types.d.ts +169 -0
  574. package/lib-amd/components/Legends/Legends.types.js +5 -0
  575. package/lib-amd/components/Legends/Legends.types.js.map +1 -0
  576. package/lib-amd/components/Legends/index.d.ts +3 -0
  577. package/lib-amd/components/Legends/index.js +8 -0
  578. package/lib-amd/components/Legends/index.js.map +1 -0
  579. package/lib-amd/components/Legends/shape.d.ts +9 -0
  580. package/lib-amd/components/Legends/shape.js +27 -0
  581. package/lib-amd/components/Legends/shape.js.map +1 -0
  582. package/lib-amd/components/LineChart/LineChart.base.d.ts +84 -0
  583. package/lib-amd/components/LineChart/LineChart.base.js +809 -0
  584. package/lib-amd/components/LineChart/LineChart.base.js.map +1 -0
  585. package/lib-amd/components/LineChart/LineChart.d.ts +3 -0
  586. package/lib-amd/components/LineChart/LineChart.js +8 -0
  587. package/lib-amd/components/LineChart/LineChart.js.map +1 -0
  588. package/lib-amd/components/LineChart/LineChart.styles.d.ts +2 -0
  589. package/lib-amd/components/LineChart/LineChart.styles.js +12 -0
  590. package/lib-amd/components/LineChart/LineChart.styles.js.map +1 -0
  591. package/lib-amd/components/LineChart/LineChart.types.d.ts +72 -0
  592. package/lib-amd/components/LineChart/LineChart.types.js +5 -0
  593. package/lib-amd/components/LineChart/LineChart.types.js.map +1 -0
  594. package/lib-amd/components/LineChart/eventAnnotation/EventAnnotation.d.ts +10 -0
  595. package/lib-amd/components/LineChart/eventAnnotation/EventAnnotation.js +95 -0
  596. package/lib-amd/components/LineChart/eventAnnotation/EventAnnotation.js.map +1 -0
  597. package/lib-amd/components/LineChart/eventAnnotation/LabelLink.d.ts +22 -0
  598. package/lib-amd/components/LineChart/eventAnnotation/LabelLink.js +40 -0
  599. package/lib-amd/components/LineChart/eventAnnotation/LabelLink.js.map +1 -0
  600. package/lib-amd/components/LineChart/eventAnnotation/Textbox.d.ts +13 -0
  601. package/lib-amd/components/LineChart/eventAnnotation/Textbox.js +40 -0
  602. package/lib-amd/components/LineChart/eventAnnotation/Textbox.js.map +1 -0
  603. package/lib-amd/components/LineChart/index.d.ts +3 -0
  604. package/lib-amd/components/LineChart/index.js +8 -0
  605. package/lib-amd/components/LineChart/index.js.map +1 -0
  606. package/lib-amd/components/PieChart/Arc/Arc.d.ts +12 -0
  607. package/lib-amd/components/PieChart/Arc/Arc.js +56 -0
  608. package/lib-amd/components/PieChart/Arc/Arc.js.map +1 -0
  609. package/lib-amd/components/PieChart/Arc/Arc.styles.d.ts +2 -0
  610. package/lib-amd/components/PieChart/Arc/Arc.styles.js +13 -0
  611. package/lib-amd/components/PieChart/Arc/Arc.styles.js.map +1 -0
  612. package/lib-amd/components/PieChart/Arc/Arc.types.d.ts +60 -0
  613. package/lib-amd/components/PieChart/Arc/Arc.types.js +5 -0
  614. package/lib-amd/components/PieChart/Arc/Arc.types.js.map +1 -0
  615. package/lib-amd/components/PieChart/Arc/index.d.ts +2 -0
  616. package/lib-amd/components/PieChart/Arc/index.js +7 -0
  617. package/lib-amd/components/PieChart/Arc/index.js.map +1 -0
  618. package/lib-amd/components/PieChart/Pie/Pie.d.ts +10 -0
  619. package/lib-amd/components/PieChart/Pie/Pie.js +35 -0
  620. package/lib-amd/components/PieChart/Pie/Pie.js.map +1 -0
  621. package/lib-amd/components/PieChart/Pie/Pie.styles.d.ts +2 -0
  622. package/lib-amd/components/PieChart/Pie/Pie.styles.js +12 -0
  623. package/lib-amd/components/PieChart/Pie/Pie.styles.js.map +1 -0
  624. package/lib-amd/components/PieChart/Pie/Pie.types.d.ts +46 -0
  625. package/lib-amd/components/PieChart/Pie/Pie.types.js +5 -0
  626. package/lib-amd/components/PieChart/Pie/Pie.types.js.map +1 -0
  627. package/lib-amd/components/PieChart/Pie/index.d.ts +2 -0
  628. package/lib-amd/components/PieChart/Pie/index.js +7 -0
  629. package/lib-amd/components/PieChart/Pie/index.js.map +1 -0
  630. package/lib-amd/components/PieChart/PieChart.base.d.ts +7 -0
  631. package/lib-amd/components/PieChart/PieChart.base.js +35 -0
  632. package/lib-amd/components/PieChart/PieChart.base.js.map +1 -0
  633. package/lib-amd/components/PieChart/PieChart.d.ts +3 -0
  634. package/lib-amd/components/PieChart/PieChart.js +8 -0
  635. package/lib-amd/components/PieChart/PieChart.js.map +1 -0
  636. package/lib-amd/components/PieChart/PieChart.styles.d.ts +2 -0
  637. package/lib-amd/components/PieChart/PieChart.styles.js +34 -0
  638. package/lib-amd/components/PieChart/PieChart.styles.js.map +1 -0
  639. package/lib-amd/components/PieChart/PieChart.types.d.ts +63 -0
  640. package/lib-amd/components/PieChart/PieChart.types.js +5 -0
  641. package/lib-amd/components/PieChart/PieChart.types.js.map +1 -0
  642. package/lib-amd/components/PieChart/index.d.ts +2 -0
  643. package/lib-amd/components/PieChart/index.js +7 -0
  644. package/lib-amd/components/PieChart/index.js.map +1 -0
  645. package/lib-amd/components/SankeyChart/SankeyChart.base.d.ts +95 -0
  646. package/lib-amd/components/SankeyChart/SankeyChart.base.js +669 -0
  647. package/lib-amd/components/SankeyChart/SankeyChart.base.js.map +1 -0
  648. package/lib-amd/components/SankeyChart/SankeyChart.d.ts +3 -0
  649. package/lib-amd/components/SankeyChart/SankeyChart.js +8 -0
  650. package/lib-amd/components/SankeyChart/SankeyChart.js.map +1 -0
  651. package/lib-amd/components/SankeyChart/SankeyChart.styles.d.ts +2 -0
  652. package/lib-amd/components/SankeyChart/SankeyChart.styles.js +62 -0
  653. package/lib-amd/components/SankeyChart/SankeyChart.styles.js.map +1 -0
  654. package/lib-amd/components/SankeyChart/SankeyChart.types.d.ts +83 -0
  655. package/lib-amd/components/SankeyChart/SankeyChart.types.js +5 -0
  656. package/lib-amd/components/SankeyChart/SankeyChart.types.js.map +1 -0
  657. package/lib-amd/components/SankeyChart/index.d.ts +2 -0
  658. package/lib-amd/components/SankeyChart/index.js +7 -0
  659. package/lib-amd/components/SankeyChart/index.js.map +1 -0
  660. package/lib-amd/components/Sparkline/Sparkline.base.d.ts +20 -0
  661. package/lib-amd/components/Sparkline/Sparkline.base.js +74 -0
  662. package/lib-amd/components/Sparkline/Sparkline.base.js.map +1 -0
  663. package/lib-amd/components/Sparkline/Sparkline.d.ts +3 -0
  664. package/lib-amd/components/Sparkline/Sparkline.js +8 -0
  665. package/lib-amd/components/Sparkline/Sparkline.js.map +1 -0
  666. package/lib-amd/components/Sparkline/Sparkline.styles.d.ts +2 -0
  667. package/lib-amd/components/Sparkline/Sparkline.styles.js +15 -0
  668. package/lib-amd/components/Sparkline/Sparkline.styles.js.map +1 -0
  669. package/lib-amd/components/Sparkline/Sparkline.types.d.ts +51 -0
  670. package/lib-amd/components/Sparkline/Sparkline.types.js +5 -0
  671. package/lib-amd/components/Sparkline/Sparkline.types.js.map +1 -0
  672. package/lib-amd/components/Sparkline/index.d.ts +2 -0
  673. package/lib-amd/components/Sparkline/index.js +7 -0
  674. package/lib-amd/components/Sparkline/index.js.map +1 -0
  675. package/lib-amd/components/StackedBarChart/MultiStackedBarChart.base.d.ts +56 -0
  676. package/lib-amd/components/StackedBarChart/MultiStackedBarChart.base.js +351 -0
  677. package/lib-amd/components/StackedBarChart/MultiStackedBarChart.base.js.map +1 -0
  678. package/lib-amd/components/StackedBarChart/MultiStackedBarChart.d.ts +3 -0
  679. package/lib-amd/components/StackedBarChart/MultiStackedBarChart.js +8 -0
  680. package/lib-amd/components/StackedBarChart/MultiStackedBarChart.js.map +1 -0
  681. package/lib-amd/components/StackedBarChart/MultiStackedBarChart.styles.d.ts +2 -0
  682. package/lib-amd/components/StackedBarChart/MultiStackedBarChart.styles.js +93 -0
  683. package/lib-amd/components/StackedBarChart/MultiStackedBarChart.styles.js.map +1 -0
  684. package/lib-amd/components/StackedBarChart/MultiStackedBarChart.types.d.ts +198 -0
  685. package/lib-amd/components/StackedBarChart/MultiStackedBarChart.types.js +11 -0
  686. package/lib-amd/components/StackedBarChart/MultiStackedBarChart.types.js.map +1 -0
  687. package/lib-amd/components/StackedBarChart/StackedBarChart.base.d.ts +51 -0
  688. package/lib-amd/components/StackedBarChart/StackedBarChart.base.js +308 -0
  689. package/lib-amd/components/StackedBarChart/StackedBarChart.base.js.map +1 -0
  690. package/lib-amd/components/StackedBarChart/StackedBarChart.d.ts +3 -0
  691. package/lib-amd/components/StackedBarChart/StackedBarChart.js +8 -0
  692. package/lib-amd/components/StackedBarChart/StackedBarChart.js.map +1 -0
  693. package/lib-amd/components/StackedBarChart/StackedBarChart.styles.d.ts +2 -0
  694. package/lib-amd/components/StackedBarChart/StackedBarChart.styles.js +108 -0
  695. package/lib-amd/components/StackedBarChart/StackedBarChart.styles.js.map +1 -0
  696. package/lib-amd/components/StackedBarChart/StackedBarChart.types.d.ts +210 -0
  697. package/lib-amd/components/StackedBarChart/StackedBarChart.types.js +5 -0
  698. package/lib-amd/components/StackedBarChart/StackedBarChart.types.js.map +1 -0
  699. package/lib-amd/components/StackedBarChart/index.d.ts +5 -0
  700. package/lib-amd/components/StackedBarChart/index.js +10 -0
  701. package/lib-amd/components/StackedBarChart/index.js.map +1 -0
  702. package/lib-amd/components/TreeChart/TreeChart.base.d.ts +18 -0
  703. package/lib-amd/components/TreeChart/TreeChart.base.js +314 -0
  704. package/lib-amd/components/TreeChart/TreeChart.base.js.map +1 -0
  705. package/lib-amd/components/TreeChart/TreeChart.d.ts +3 -0
  706. package/lib-amd/components/TreeChart/TreeChart.js +7 -0
  707. package/lib-amd/components/TreeChart/TreeChart.js.map +1 -0
  708. package/lib-amd/components/TreeChart/TreeChart.styles.d.ts +2 -0
  709. package/lib-amd/components/TreeChart/TreeChart.styles.js +34 -0
  710. package/lib-amd/components/TreeChart/TreeChart.styles.js.map +1 -0
  711. package/lib-amd/components/TreeChart/TreeChart.types.d.ts +197 -0
  712. package/lib-amd/components/TreeChart/TreeChart.types.js +28 -0
  713. package/lib-amd/components/TreeChart/TreeChart.types.js.map +1 -0
  714. package/lib-amd/components/TreeChart/index.d.ts +2 -0
  715. package/lib-amd/components/TreeChart/index.js +7 -0
  716. package/lib-amd/components/TreeChart/index.js.map +1 -0
  717. package/lib-amd/components/VerticalBarChart/VerticalBarChart.base.d.ts +74 -0
  718. package/lib-amd/components/VerticalBarChart/VerticalBarChart.base.js +529 -0
  719. package/lib-amd/components/VerticalBarChart/VerticalBarChart.base.js.map +1 -0
  720. package/lib-amd/components/VerticalBarChart/VerticalBarChart.d.ts +3 -0
  721. package/lib-amd/components/VerticalBarChart/VerticalBarChart.js +8 -0
  722. package/lib-amd/components/VerticalBarChart/VerticalBarChart.js.map +1 -0
  723. package/lib-amd/components/VerticalBarChart/VerticalBarChart.styles.d.ts +2 -0
  724. package/lib-amd/components/VerticalBarChart/VerticalBarChart.styles.js +32 -0
  725. package/lib-amd/components/VerticalBarChart/VerticalBarChart.styles.js.map +1 -0
  726. package/lib-amd/components/VerticalBarChart/VerticalBarChart.types.d.ts +114 -0
  727. package/lib-amd/components/VerticalBarChart/VerticalBarChart.types.js +5 -0
  728. package/lib-amd/components/VerticalBarChart/VerticalBarChart.types.js.map +1 -0
  729. package/lib-amd/components/VerticalBarChart/index.d.ts +2 -0
  730. package/lib-amd/components/VerticalBarChart/index.js +7 -0
  731. package/lib-amd/components/VerticalBarChart/index.js.map +1 -0
  732. package/lib-amd/components/VerticalStackedBarChart/VerticalStackedBarChart.base.d.ts +85 -0
  733. package/lib-amd/components/VerticalStackedBarChart/VerticalStackedBarChart.base.js +659 -0
  734. package/lib-amd/components/VerticalStackedBarChart/VerticalStackedBarChart.base.js.map +1 -0
  735. package/lib-amd/components/VerticalStackedBarChart/VerticalStackedBarChart.d.ts +3 -0
  736. package/lib-amd/components/VerticalStackedBarChart/VerticalStackedBarChart.js +8 -0
  737. package/lib-amd/components/VerticalStackedBarChart/VerticalStackedBarChart.js.map +1 -0
  738. package/lib-amd/components/VerticalStackedBarChart/VerticalStackedBarChart.styles.d.ts +2 -0
  739. package/lib-amd/components/VerticalStackedBarChart/VerticalStackedBarChart.styles.js +22 -0
  740. package/lib-amd/components/VerticalStackedBarChart/VerticalStackedBarChart.styles.js.map +1 -0
  741. package/lib-amd/components/VerticalStackedBarChart/VerticalStackedBarChart.types.d.ts +142 -0
  742. package/lib-amd/components/VerticalStackedBarChart/VerticalStackedBarChart.types.js +5 -0
  743. package/lib-amd/components/VerticalStackedBarChart/VerticalStackedBarChart.types.js.map +1 -0
  744. package/lib-amd/components/VerticalStackedBarChart/index.d.ts +2 -0
  745. package/lib-amd/components/VerticalStackedBarChart/index.js +7 -0
  746. package/lib-amd/components/VerticalStackedBarChart/index.js.map +1 -0
  747. package/lib-amd/index.d.ts +19 -0
  748. package/lib-amd/index.js +23 -0
  749. package/lib-amd/index.js.map +1 -0
  750. package/lib-amd/types/IDataPoint.d.ts +545 -0
  751. package/lib-amd/types/IDataPoint.js +5 -0
  752. package/lib-amd/types/IDataPoint.js.map +1 -0
  753. package/lib-amd/types/IEventAnnotation.d.ts +6 -0
  754. package/lib-amd/types/IEventAnnotation.js +5 -0
  755. package/lib-amd/types/IEventAnnotation.js.map +1 -0
  756. package/lib-amd/types/ILegendDataItem.d.ts +10 -0
  757. package/lib-amd/types/ILegendDataItem.js +5 -0
  758. package/lib-amd/types/ILegendDataItem.js.map +1 -0
  759. package/lib-amd/types/index.d.ts +2 -0
  760. package/lib-amd/types/index.js +7 -0
  761. package/lib-amd/types/index.js.map +1 -0
  762. package/lib-amd/utilities/ChartHoverCard/ChartHoverCard.base.d.ts +6 -0
  763. package/lib-amd/utilities/ChartHoverCard/ChartHoverCard.base.js +39 -0
  764. package/lib-amd/utilities/ChartHoverCard/ChartHoverCard.base.js.map +1 -0
  765. package/lib-amd/utilities/ChartHoverCard/ChartHoverCard.d.ts +3 -0
  766. package/lib-amd/utilities/ChartHoverCard/ChartHoverCard.js +8 -0
  767. package/lib-amd/utilities/ChartHoverCard/ChartHoverCard.js.map +1 -0
  768. package/lib-amd/utilities/ChartHoverCard/ChartHoverCard.styles.d.ts +2 -0
  769. package/lib-amd/utilities/ChartHoverCard/ChartHoverCard.styles.js +87 -0
  770. package/lib-amd/utilities/ChartHoverCard/ChartHoverCard.styles.js.map +1 -0
  771. package/lib-amd/utilities/ChartHoverCard/ChartHoverCard.types.d.ts +105 -0
  772. package/lib-amd/utilities/ChartHoverCard/ChartHoverCard.types.js +5 -0
  773. package/lib-amd/utilities/ChartHoverCard/ChartHoverCard.types.js.map +1 -0
  774. package/lib-amd/utilities/ChartHoverCard/index.d.ts +3 -0
  775. package/lib-amd/utilities/ChartHoverCard/index.js +8 -0
  776. package/lib-amd/utilities/ChartHoverCard/index.js.map +1 -0
  777. package/lib-amd/utilities/FocusableTooltipText.d.ts +27 -0
  778. package/lib-amd/utilities/FocusableTooltipText.js +54 -0
  779. package/lib-amd/utilities/FocusableTooltipText.js.map +1 -0
  780. package/lib-amd/utilities/colors.d.ts +51 -0
  781. package/lib-amd/utilities/colors.js +139 -0
  782. package/lib-amd/utilities/colors.js.map +1 -0
  783. package/lib-amd/utilities/index.d.ts +3 -0
  784. package/lib-amd/utilities/index.js +8 -0
  785. package/lib-amd/utilities/index.js.map +1 -0
  786. package/lib-amd/utilities/utilities.d.ts +377 -0
  787. package/lib-amd/utilities/utilities.js +888 -0
  788. package/lib-amd/utilities/utilities.js.map +1 -0
  789. package/lib-amd/version.d.ts +1 -0
  790. package/lib-amd/version.js +6 -0
  791. package/lib-amd/version.js.map +1 -0
  792. package/lib-commonjs/version.js +1 -1
  793. package/lib-commonjs/version.js.map +1 -1
  794. package/package.json +7 -6
@@ -0,0 +1,381 @@
1
+ import { __assign, __extends } from "tslib";
2
+ import * as React from 'react';
3
+ import { max as d3Max } from 'd3-array';
4
+ import { select as d3Select } from 'd3-selection';
5
+ import { scaleBand as d3ScaleBand, scaleLinear as d3ScaleLinear } from 'd3-scale';
6
+ import { classNamesFunction, getId, getRTL, memoizeFunction, warnDeprecations } from '@fluentui/react/lib/Utilities';
7
+ import { DirectionalHint } from '@fluentui/react/lib/Callout';
8
+ import { FocusZoneDirection } from '@fluentui/react-focus';
9
+ import { ChartTypes, getAccessibleDataObject, tooltipOfXAxislabels, getTypeOfAxis, } from '../../utilities/index';
10
+ import { CartesianChart, Legends, } from '../../index';
11
+ import { formatPrefix as d3FormatPrefix } from 'd3-format';
12
+ var COMPONENT_NAME = 'GROUPED VERTICAL BAR CHART';
13
+ var getClassNames = classNamesFunction();
14
+ var MIN_DOMAIN_MARGIN = 8;
15
+ var X1_INNER_PADDING = 0.1;
16
+ // x1_inner_padding = space_between_bars / (space_between_bars + bar_width)
17
+ // => space_between_bars = (x1_inner_padding / (1 - x1_inner_padding)) * bar_width
18
+ /** Rate at which the space between the bars in a group changes wrt the bar width */
19
+ var BAR_GAP_RATE = X1_INNER_PADDING / (1 - X1_INNER_PADDING);
20
+ var GroupedVerticalBarChartBase = /** @class */ (function (_super) {
21
+ __extends(GroupedVerticalBarChartBase, _super);
22
+ function GroupedVerticalBarChartBase(props) {
23
+ var _this = _super.call(this, props) || this;
24
+ _this._isRtl = getRTL();
25
+ _this._getGraphData = function (xScale, yScale, containerHeight, containerWidth, xElement) {
26
+ var xScale0 = _this._createX0Scale(containerWidth);
27
+ var xScale1 = _this._createX1Scale(xScale0);
28
+ var allGroupsBars = [];
29
+ _this._datasetForBars.forEach(function (singleSet) {
30
+ allGroupsBars.push(_this._buildGraph(singleSet, xScale0, xScale1, containerHeight, xElement));
31
+ });
32
+ _this._groupedVerticalBarGraph = allGroupsBars;
33
+ };
34
+ _this._getMargins = function (margins) { return (_this.margins = margins); };
35
+ _this._createDataSetOfGVBC = function (points) {
36
+ var keys = [];
37
+ var xAxisLabels = points.map(function (singlePoint) { return singlePoint.name; });
38
+ points[0].series.forEach(function (singleKey) {
39
+ keys.push(singleKey.key);
40
+ });
41
+ var datasetForBars = _this._createDataset(points);
42
+ return {
43
+ keys: keys,
44
+ xAxisLabels: xAxisLabels,
45
+ datasetForBars: datasetForBars,
46
+ };
47
+ };
48
+ _this._getCustomizedCallout = function () {
49
+ return _this.props.onRenderCalloutPerDataPoint
50
+ ? _this.props.onRenderCalloutPerDataPoint(_this.state.dataPointCalloutProps)
51
+ : null;
52
+ };
53
+ _this._getOpacity = function (legendTitle) {
54
+ var opacity = _this._legendHighlighted(legendTitle) || _this._noLegendHighlighted() ? '' : '0.1';
55
+ return opacity;
56
+ };
57
+ _this._onBarHover = function (pointData,
58
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
59
+ groupData, mouseEvent) {
60
+ mouseEvent.persist();
61
+ if (_this._calloutAnchorPoint !== pointData) {
62
+ _this._calloutAnchorPoint = pointData;
63
+ _this.setState({
64
+ refSelected: mouseEvent,
65
+ /** Show the callout if highlighted bar is hovered and Hide it if unhighlighted bar is hovered */
66
+ isCalloutVisible: _this.state.selectedLegend === '' || _this.state.selectedLegend === pointData.legend,
67
+ calloutLegend: pointData.legend,
68
+ dataForHoverCard: pointData.data,
69
+ color: pointData.color,
70
+ xCalloutValue: pointData.xAxisCalloutData,
71
+ yCalloutValue: pointData.yAxisCalloutData,
72
+ dataPointCalloutProps: pointData,
73
+ callOutAccessibilityData: _this.props.isCalloutForStack
74
+ ? groupData.stackCallOutAccessibilityData
75
+ : pointData.callOutAccessibilityData,
76
+ YValueHover: groupData.groupSeries,
77
+ hoverXValue: pointData.xAxisCalloutData,
78
+ });
79
+ }
80
+ };
81
+ _this._onBarLeave = function () {
82
+ /**/
83
+ };
84
+ _this._handleChartMouseLeave = function () {
85
+ _this._calloutAnchorPoint = null;
86
+ _this.setState({ isCalloutVisible: false });
87
+ };
88
+ _this._onBarFocus = function (pointData,
89
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
90
+ groupData, refArrayIndexNumber) {
91
+ _this._refArray.forEach(function (obj, index) {
92
+ if (obj.index === pointData.legend && refArrayIndexNumber === index) {
93
+ _this.setState({
94
+ refSelected: obj.refElement,
95
+ /** Show the callout if highlighted bar is focused and Hide it if unhighlighted bar is focused */
96
+ isCalloutVisible: _this.state.selectedLegend === '' || _this.state.selectedLegend === pointData.legend,
97
+ calloutLegend: pointData.legend,
98
+ dataForHoverCard: pointData.data,
99
+ color: pointData.color,
100
+ xCalloutValue: pointData.xAxisCalloutData,
101
+ yCalloutValue: pointData.yAxisCalloutData,
102
+ dataPointCalloutProps: pointData,
103
+ callOutAccessibilityData: _this.props.isCalloutForStack
104
+ ? groupData.stackCallOutAccessibilityData
105
+ : pointData.callOutAccessibilityData,
106
+ YValueHover: groupData.groupSeries,
107
+ hoverXValue: pointData.xAxisCalloutData,
108
+ });
109
+ }
110
+ });
111
+ };
112
+ _this._redirectToUrl = function (href) {
113
+ href ? (window.location.href = href) : '';
114
+ };
115
+ _this._buildGraph = function (
116
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
117
+ singleSet,
118
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
119
+ xScale0,
120
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
121
+ xScale1, containerHeight, xElement) {
122
+ var singleGroup = [];
123
+ var barLabelsForGroup = [];
124
+ var yBarScale = d3ScaleLinear()
125
+ .domain([0, _this._yMax])
126
+ .range([0, containerHeight - _this.margins.bottom - _this.margins.top]);
127
+ var tempDataSet = Object.keys(_this._datasetForBars[0]).splice(0, _this._keys.length);
128
+ tempDataSet.forEach(function (datasetKey, index) {
129
+ var refIndexNumber = singleSet.indexNum * tempDataSet.length + index;
130
+ var pointData = singleSet[datasetKey];
131
+ var xPoint = xScale1(datasetKey);
132
+ var yPoint = Math.max(containerHeight - _this.margins.bottom - yBarScale(pointData.data), 0);
133
+ // Not rendering data with 0.
134
+ pointData.data &&
135
+ singleGroup.push(React.createElement("rect", { className: _this._classNames.opacityChangeOnHover, key: singleSet.indexNum + "-" + index, height: Math.max(yBarScale(pointData.data), 0), width: _this._barWidth, x: xPoint, y: yPoint, "data-is-focusable": !_this.props.hideTooltip, opacity: _this._getOpacity(pointData.legend), ref: function (e) {
136
+ _this._refCallback(e, pointData.legend, refIndexNumber);
137
+ }, fill: pointData.color, onMouseOver: _this._onBarHover.bind(_this, pointData, singleSet), onMouseMove: _this._onBarHover.bind(_this, pointData, singleSet), onMouseOut: _this._onBarLeave, onFocus: _this._onBarFocus.bind(_this, pointData, singleSet, refIndexNumber), onBlur: _this._onBarLeave, onClick: _this.props.href ? _this._redirectToUrl.bind(_this, _this.props.href) : pointData.onClick, "aria-label": _this._getAriaLabel(pointData, singleSet.xAxisPoint), role: "img" }));
138
+ if (pointData.data && !_this.props.hideLabels && _this._barWidth >= 16) {
139
+ barLabelsForGroup.push(React.createElement("text", { x: xPoint + _this._barWidth / 2, y: yPoint - 6, textAnchor: "middle", className: _this._classNames.barLabel, "aria-hidden": true }, d3FormatPrefix(pointData.data < 1000 ? '.2~' : '.1', pointData.data)(pointData.data)));
140
+ }
141
+ });
142
+ // Used to display tooltip at x axis labels.
143
+ if (!_this.props.wrapXAxisLables && _this.props.showXAxisLablesTooltip) {
144
+ var xAxisElement = d3Select(xElement).call(xScale0);
145
+ try {
146
+ document.getElementById(_this._tooltipId) && document.getElementById(_this._tooltipId).remove();
147
+ // eslint-disable-next-line no-empty
148
+ }
149
+ catch (e) { }
150
+ var tooltipProps = {
151
+ tooltipCls: _this._classNames.tooltip,
152
+ id: _this._tooltipId,
153
+ xAxis: xAxisElement,
154
+ };
155
+ xAxisElement && tooltipOfXAxislabels(tooltipProps);
156
+ }
157
+ return (React.createElement("g", { key: singleSet.indexNum, transform: "translate(" + xScale0(singleSet.xAxisPoint) + ", 0)" },
158
+ singleGroup,
159
+ barLabelsForGroup));
160
+ };
161
+ _this._createDataset = function (points) {
162
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
163
+ var datasetForBars = [];
164
+ var dataset = [];
165
+ points.forEach(function (point, index) {
166
+ var singleDatasetPoint = {};
167
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
168
+ var singleDatasetPointForBars = {};
169
+ var singleDataSeries = [];
170
+ point.series.forEach(function (seriesPoint) {
171
+ singleDatasetPoint[seriesPoint.key] = seriesPoint.data;
172
+ singleDatasetPointForBars[seriesPoint.key] = __assign({}, seriesPoint);
173
+ singleDataSeries.push(seriesPoint);
174
+ });
175
+ singleDatasetPointForBars.xAxisPoint = point.name;
176
+ singleDatasetPointForBars.indexNum = index;
177
+ singleDatasetPointForBars.groupSeries = singleDataSeries;
178
+ singleDatasetPointForBars.stackCallOutAccessibilityData = point.stackCallOutAccessibilityData;
179
+ datasetForBars.push(singleDatasetPointForBars);
180
+ dataset.push(singleDatasetPoint);
181
+ });
182
+ _this._dataset = dataset;
183
+ return datasetForBars;
184
+ };
185
+ // For grouped vertical bar chart, First need to define total scale (from start to end)
186
+ // From that need to define scale for single group of bars - done by createX1Scale
187
+ _this._createX0Scale = function (containerWidth) {
188
+ var x0Axis = d3ScaleBand()
189
+ .domain(_this._xAxisLabels)
190
+ .range(_this._isRtl
191
+ ? [containerWidth - _this.margins.right - _this._domainMargin, _this.margins.left + _this._domainMargin]
192
+ : [_this.margins.left + _this._domainMargin, containerWidth - _this.margins.right - _this._domainMargin])
193
+ // x0_inner_padding = space_between_groups / (space_between_groups + group_width)
194
+ // space_between_groups = 2 * bar_width
195
+ // group_width = this._keys.length * bar_width + (this._keys.length - 1) * space_between_bars
196
+ .paddingInner(2 / (2 + _this._keys.length + (_this._keys.length - 1) * BAR_GAP_RATE));
197
+ return x0Axis;
198
+ };
199
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
200
+ _this._createX1Scale = function (xScale0) {
201
+ var bandWidth = xScale0.bandwidth();
202
+ return d3ScaleBand()
203
+ .domain(_this._keys)
204
+ .range(_this._isRtl ? [bandWidth, 0] : [0, bandWidth])
205
+ .paddingInner(X1_INNER_PADDING);
206
+ };
207
+ _this._closeCallout = function () {
208
+ _this.setState({
209
+ isCalloutVisible: false,
210
+ });
211
+ };
212
+ _this._getLegendData = function (points, palette) {
213
+ var data = points;
214
+ var defaultPalette = [palette.blueLight, palette.blue, palette.blueMid, palette.red, palette.black];
215
+ var actions = [];
216
+ data.forEach(function (singleChartData) {
217
+ singleChartData.series.forEach(function (point) {
218
+ var color = point.color ? point.color : defaultPalette[Math.floor(Math.random() * 4 + 1)];
219
+ var checkSimilarLegends = actions.filter(function (leg) { return leg.title === point.legend && leg.color === color; });
220
+ if (checkSimilarLegends.length > 0) {
221
+ return;
222
+ }
223
+ var legend = {
224
+ title: point.legend,
225
+ color: color,
226
+ action: function () {
227
+ _this._onLegendClick(point.legend);
228
+ },
229
+ hoverAction: function () {
230
+ _this._handleChartMouseLeave();
231
+ _this._onLegendHover(point.legend);
232
+ },
233
+ onMouseOutAction: function () {
234
+ _this._onLegendLeave();
235
+ },
236
+ };
237
+ actions.push(legend);
238
+ });
239
+ });
240
+ return (React.createElement(Legends, __assign({ legends: actions, overflowProps: _this.props.legendsOverflowProps, enabledWrapLines: _this.props.enabledLegendsWrapLines, focusZonePropsInHoverCard: _this.props.focusZonePropsForLegendsInHoverCard }, _this.props.legendProps)));
241
+ };
242
+ _this._getAxisData = function (yAxisData) {
243
+ if (yAxisData && yAxisData.yAxisDomainValues.length) {
244
+ var domainValue = yAxisData.yAxisDomainValues;
245
+ _this._yMax = Math.max(domainValue[domainValue.length - 1], _this.props.yMaxValue || 0);
246
+ }
247
+ };
248
+ /**
249
+ * This function checks if the given legend is highlighted or not.
250
+ * A legend can be highlighted in 2 ways:
251
+ * 1. selection: if the user clicks on it
252
+ * 2. hovering: if there is no selected legend and the user hovers over it
253
+ */
254
+ _this._legendHighlighted = function (legendTitle) {
255
+ return (_this.state.selectedLegend === legendTitle ||
256
+ (_this.state.selectedLegend === '' && _this.state.activeLegend === legendTitle));
257
+ };
258
+ /**
259
+ * This function checks if none of the legends is selected or hovered.
260
+ */
261
+ _this._noLegendHighlighted = function () {
262
+ return _this.state.selectedLegend === '' && _this.state.activeLegend === '';
263
+ };
264
+ _this._getAriaLabel = function (point, xAxisPoint) {
265
+ var _a;
266
+ var xValue = point.xAxisCalloutData || xAxisPoint;
267
+ var legend = point.legend;
268
+ var yValue = point.yAxisCalloutData || point.data;
269
+ return ((_a = point.callOutAccessibilityData) === null || _a === void 0 ? void 0 : _a.ariaLabel) || xValue + ". " + legend + ", " + yValue + ".";
270
+ };
271
+ _this._getDomainMargins = function (containerWidth) {
272
+ /** Total width available to render the bars */
273
+ var totalWidth = containerWidth - (_this.margins.left + MIN_DOMAIN_MARGIN) - (_this.margins.right + MIN_DOMAIN_MARGIN);
274
+ var barWidth = Math.min(_this.props.barwidth || 16, 24);
275
+ var groupWidth = _this._keys.length * barWidth + (_this._keys.length - 1) * BAR_GAP_RATE * barWidth; // (i)
276
+ /** Total width required to render the bars. Directly proportional to bar width */
277
+ var reqWidth = _this._xAxisLabels.length * groupWidth + (_this._xAxisLabels.length - 1) * 2 * barWidth; // (ii)
278
+ _this._domainMargin = MIN_DOMAIN_MARGIN;
279
+ if (totalWidth >= reqWidth) {
280
+ // Center align the chart by setting equal left and right margins for domain
281
+ _this._domainMargin += (totalWidth - reqWidth) / 2;
282
+ }
283
+ else {
284
+ // From (i) and (ii)
285
+ /** Maximum possible group width to maintain 2:1 spacing */
286
+ var maxBandwidth = totalWidth /
287
+ (_this._xAxisLabels.length +
288
+ (_this._xAxisLabels.length - 1) * (2 / (_this._keys.length + (_this._keys.length - 1) * BAR_GAP_RATE)));
289
+ groupWidth = maxBandwidth;
290
+ // From (i)
291
+ barWidth = groupWidth / (_this._keys.length + (_this._keys.length - 1) * BAR_GAP_RATE);
292
+ }
293
+ _this._barWidth = barWidth;
294
+ return __assign(__assign({}, _this.margins), { left: _this.margins.left + _this._domainMargin, right: _this.margins.right + _this._domainMargin });
295
+ };
296
+ _this._createSet = memoizeFunction(function (data) { return _this._createDataSetOfGVBC(data); });
297
+ _this.state = {
298
+ color: '',
299
+ dataForHoverCard: 0,
300
+ isCalloutVisible: false,
301
+ refSelected: null,
302
+ selectedLegend: '',
303
+ xCalloutValue: '',
304
+ yCalloutValue: '',
305
+ YValueHover: [],
306
+ hoverXValue: '',
307
+ calloutLegend: '',
308
+ activeLegend: '',
309
+ };
310
+ warnDeprecations(COMPONENT_NAME, props, {
311
+ showYAxisGridLines: 'Dont use this property. Lines are drawn by default',
312
+ showXAxisPath: 'Dont use this property. Axis line removed default.',
313
+ showYAxisPath: 'Dont use this property. No need to display Y axis path. Handling default',
314
+ showXAxisGridLines: 'Dont use this property. Handling with default value.',
315
+ legendColor: 'Dont use this property. colour will pick from given data.',
316
+ });
317
+ _this._refArray = [];
318
+ _this._calloutId = getId('callout');
319
+ _this._tooltipId = getId('GVBCTooltipId_');
320
+ _this._domainMargin = MIN_DOMAIN_MARGIN;
321
+ return _this;
322
+ }
323
+ GroupedVerticalBarChartBase.prototype.render = function () {
324
+ var _this = this;
325
+ var points = this.props.data;
326
+ var _a = this._createSet(points), keys = _a.keys, xAxisLabels = _a.xAxisLabels, datasetForBars = _a.datasetForBars;
327
+ this._keys = keys;
328
+ this._xAxisLabels = xAxisLabels;
329
+ this._datasetForBars = datasetForBars;
330
+ this._xAxisType = getTypeOfAxis(points[0].name, true);
331
+ var legends = this._getLegendData(points, this.props.theme.palette);
332
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
333
+ var yMax = d3Max(this._dataset, function (point) { return d3Max(_this._keys, function (key) { return point[key]; }); });
334
+ this._yMax = Math.max(yMax, this.props.yMaxValue || 0);
335
+ this._classNames = getClassNames(this.props.styles, {
336
+ theme: this.props.theme,
337
+ href: this.props.href,
338
+ });
339
+ var calloutProps = __assign(__assign(__assign({ target: this.state.refSelected, isCalloutVisible: this.state.isCalloutVisible, directionalHint: DirectionalHint.topAutoEdge, id: "toolTip" + this._calloutId, gapSpace: 15, isBeakVisible: false, setInitialFocus: true, color: this.state.color, Legend: this.state.calloutLegend, XValue: this.state.xCalloutValue, YValue: this.state.yCalloutValue ? this.state.yCalloutValue : this.state.dataForHoverCard, YValueHover: this.state.YValueHover, hoverXValue: this.state.hoverXValue, onDismiss: this._closeCallout }, this.props.calloutProps), { preventDismissOnLostFocus: true }), getAccessibleDataObject(this.state.callOutAccessibilityData, 'text', false));
340
+ var tickParams = {
341
+ tickValues: this.props.tickValues,
342
+ tickFormat: this.props.tickFormat,
343
+ };
344
+ return (React.createElement(CartesianChart, __assign({}, this.props, { points: this._datasetForBars, chartType: ChartTypes.GroupedVerticalBarChart, calloutProps: calloutProps, legendBars: legends, xAxisType: this._xAxisType, datasetForXAxisDomain: this._xAxisLabels, tickParams: tickParams, tickPadding: this.props.tickPadding || 5, maxOfYVal: this._yMax, svgFocusZoneProps: {
345
+ direction: FocusZoneDirection.horizontal,
346
+ }, customizedCallout: this._getCustomizedCallout(), getmargins: this._getMargins, getGraphData: this._getGraphData, getAxisData: this._getAxisData, onChartMouseLeave: this._handleChartMouseLeave, getDomainMargins: this._getDomainMargins, xAxisInnerPadding: 2 / (2 + this._keys.length + (this._keys.length - 1) * BAR_GAP_RATE), xAxisOuterPadding: 0,
347
+ /* eslint-disable react/jsx-no-bind */
348
+ // eslint-disable-next-line react/no-children-prop
349
+ children: function () {
350
+ return React.createElement("g", null, _this._groupedVerticalBarGraph);
351
+ } })));
352
+ };
353
+ GroupedVerticalBarChartBase.prototype._refCallback = function (element, legendTitle, refIndexNumber) {
354
+ this._refArray[refIndexNumber] = { index: legendTitle, refElement: element };
355
+ };
356
+ GroupedVerticalBarChartBase.prototype._onLegendClick = function (legendTitle) {
357
+ if (this.state.selectedLegend === legendTitle) {
358
+ this.setState({
359
+ selectedLegend: '',
360
+ });
361
+ }
362
+ else {
363
+ this.setState({
364
+ selectedLegend: legendTitle,
365
+ });
366
+ }
367
+ };
368
+ GroupedVerticalBarChartBase.prototype._onLegendHover = function (legendTitle) {
369
+ this.setState({
370
+ activeLegend: legendTitle,
371
+ });
372
+ };
373
+ GroupedVerticalBarChartBase.prototype._onLegendLeave = function () {
374
+ this.setState({
375
+ activeLegend: '',
376
+ });
377
+ };
378
+ return GroupedVerticalBarChartBase;
379
+ }(React.Component));
380
+ export { GroupedVerticalBarChartBase };
381
+ //# sourceMappingURL=GroupedVerticalBarChart.base.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"GroupedVerticalBarChart.base.js","sourceRoot":"../src/","sources":["components/GroupedVerticalBarChart/GroupedVerticalBarChart.base.tsx"],"names":[],"mappings":"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","sourcesContent":["import * as React from 'react';\nimport { max as d3Max } from 'd3-array';\nimport { select as d3Select } from 'd3-selection';\nimport { Axis as D3Axis } from 'd3-axis';\nimport { scaleBand as d3ScaleBand, scaleLinear as d3ScaleLinear } from 'd3-scale';\nimport { classNamesFunction, getId, getRTL, memoizeFunction, warnDeprecations } from '@fluentui/react/lib/Utilities';\nimport { IProcessedStyleSet, IPalette } from '@fluentui/react/lib/Styling';\nimport { DirectionalHint } from '@fluentui/react/lib/Callout';\nimport { FocusZoneDirection } from '@fluentui/react-focus';\nimport {\n ChartTypes,\n IAxisData,\n getAccessibleDataObject,\n tooltipOfXAxislabels,\n XAxisTypes,\n getTypeOfAxis,\n} from '../../utilities/index';\nimport {\n IAccessibilityProps,\n CartesianChart,\n ILegend,\n IGroupedVerticalBarChartData,\n IGroupedVerticalBarChartProps,\n IGroupedVerticalBarChartStyleProps,\n IGroupedVerticalBarChartStyles,\n IGVBarChartSeriesPoint,\n IMargins,\n IBasestate,\n IRefArrayData,\n Legends,\n} from '../../index';\nimport { formatPrefix as d3FormatPrefix } from 'd3-format';\n\nconst COMPONENT_NAME = 'GROUPED VERTICAL BAR CHART';\nconst getClassNames = classNamesFunction<IGroupedVerticalBarChartStyleProps, IGroupedVerticalBarChartStyles>();\ntype StringAxis = D3Axis<string>;\ntype NumericAxis = D3Axis<number | { valueOf(): number }>;\n\nconst MIN_DOMAIN_MARGIN = 8;\nconst X1_INNER_PADDING = 0.1;\n// x1_inner_padding = space_between_bars / (space_between_bars + bar_width)\n// => space_between_bars = (x1_inner_padding / (1 - x1_inner_padding)) * bar_width\n/** Rate at which the space between the bars in a group changes wrt the bar width */\nconst BAR_GAP_RATE = X1_INNER_PADDING / (1 - X1_INNER_PADDING);\n\n// This interface used for - While forming datapoints from given prop \"data\" in code\ninterface IGVDataPoint {\n [key: string]: number | string;\n}\n\n// While forming datapoints from given prop \"data\" in code. These datapoints are used for to draw graph easily.\ninterface IGVSingleDataPoint {\n [key: string]: IGVDataPoint;\n}\nexport interface IGroupedVerticalBarChartState extends IBasestate {\n dataPointCalloutProps?: IGVBarChartSeriesPoint;\n callOutAccessibilityData?: IAccessibilityProps;\n calloutLegend: string;\n}\n\nexport class GroupedVerticalBarChartBase extends React.Component<\n IGroupedVerticalBarChartProps,\n IGroupedVerticalBarChartState\n> {\n private _createSet: (\n data: IGroupedVerticalBarChartData[],\n ) => // eslint-disable-next-line @typescript-eslint/no-explicit-any\n { keys: string[]; xAxisLabels: string[]; datasetForBars: any };\n private _dataset: IGVDataPoint[];\n private _keys: string[];\n private _xAxisLabels: string[];\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n private _datasetForBars: any;\n private margins: IMargins;\n private _groupedVerticalBarGraph: JSX.Element[];\n private _classNames: IProcessedStyleSet<IGroupedVerticalBarChartStyles>;\n private _refArray: IRefArrayData[];\n private _yMax: number;\n private _calloutId: string;\n private _tooltipId: string;\n private _xAxisType: XAxisTypes;\n private _isRtl: boolean = getRTL();\n private _calloutAnchorPoint: IGVBarChartSeriesPoint | null;\n private _barWidth: number;\n private _domainMargin: number;\n\n public constructor(props: IGroupedVerticalBarChartProps) {\n super(props);\n this._createSet = memoizeFunction((data: IGroupedVerticalBarChartData[]) => this._createDataSetOfGVBC(data));\n this.state = {\n color: '',\n dataForHoverCard: 0,\n isCalloutVisible: false,\n refSelected: null,\n selectedLegend: '',\n xCalloutValue: '',\n yCalloutValue: '',\n YValueHover: [],\n hoverXValue: '',\n calloutLegend: '',\n activeLegend: '',\n };\n warnDeprecations(COMPONENT_NAME, props, {\n showYAxisGridLines: 'Dont use this property. Lines are drawn by default',\n showXAxisPath: 'Dont use this property. Axis line removed default.',\n showYAxisPath: 'Dont use this property. No need to display Y axis path. Handling default',\n showXAxisGridLines: 'Dont use this property. Handling with default value.',\n legendColor: 'Dont use this property. colour will pick from given data.',\n });\n this._refArray = [];\n this._calloutId = getId('callout');\n this._tooltipId = getId('GVBCTooltipId_');\n this._domainMargin = MIN_DOMAIN_MARGIN;\n }\n\n public render(): React.ReactNode {\n const points = this.props.data;\n const { keys, xAxisLabels, datasetForBars } = this._createSet(points);\n this._keys = keys;\n this._xAxisLabels = xAxisLabels;\n this._datasetForBars = datasetForBars;\n this._xAxisType = getTypeOfAxis(points[0].name, true) as XAxisTypes;\n const legends: JSX.Element = this._getLegendData(points, this.props.theme!.palette);\n\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const yMax = d3Max(this._dataset, (point: any) => d3Max(this._keys, (key: string) => point[key]));\n this._yMax = Math.max(yMax, this.props.yMaxValue || 0);\n this._classNames = getClassNames(this.props.styles!, {\n theme: this.props.theme!,\n href: this.props.href!,\n });\n const calloutProps = {\n target: this.state.refSelected,\n isCalloutVisible: this.state.isCalloutVisible,\n directionalHint: DirectionalHint.topAutoEdge,\n id: `toolTip${this._calloutId}`,\n gapSpace: 15,\n isBeakVisible: false,\n setInitialFocus: true,\n color: this.state.color,\n Legend: this.state.calloutLegend,\n XValue: this.state.xCalloutValue,\n YValue: this.state.yCalloutValue ? this.state.yCalloutValue : this.state.dataForHoverCard,\n YValueHover: this.state.YValueHover,\n hoverXValue: this.state.hoverXValue,\n onDismiss: this._closeCallout,\n ...this.props.calloutProps,\n preventDismissOnLostFocus: true,\n ...getAccessibleDataObject(this.state.callOutAccessibilityData, 'text', false),\n };\n const tickParams = {\n tickValues: this.props.tickValues!,\n tickFormat: this.props.tickFormat!,\n };\n\n return (\n <CartesianChart\n {...this.props}\n points={this._datasetForBars}\n chartType={ChartTypes.GroupedVerticalBarChart}\n calloutProps={calloutProps}\n legendBars={legends}\n xAxisType={this._xAxisType}\n datasetForXAxisDomain={this._xAxisLabels}\n tickParams={tickParams}\n tickPadding={this.props.tickPadding || 5}\n maxOfYVal={this._yMax}\n svgFocusZoneProps={{\n direction: FocusZoneDirection.horizontal,\n }}\n customizedCallout={this._getCustomizedCallout()}\n getmargins={this._getMargins}\n getGraphData={this._getGraphData}\n getAxisData={this._getAxisData}\n onChartMouseLeave={this._handleChartMouseLeave}\n getDomainMargins={this._getDomainMargins}\n xAxisInnerPadding={2 / (2 + this._keys.length + (this._keys.length - 1) * BAR_GAP_RATE)}\n xAxisOuterPadding={0}\n /* eslint-disable react/jsx-no-bind */\n // eslint-disable-next-line react/no-children-prop\n children={() => {\n return <g>{this._groupedVerticalBarGraph}</g>;\n }}\n />\n );\n }\n\n private _getGraphData = (\n xScale: StringAxis | NumericAxis,\n yScale: NumericAxis,\n containerHeight: number,\n containerWidth: number,\n xElement?: SVGElement | null,\n ) => {\n const xScale0 = this._createX0Scale(containerWidth);\n const xScale1 = this._createX1Scale(xScale0);\n const allGroupsBars: JSX.Element[] = [];\n this._datasetForBars.forEach((singleSet: IGVSingleDataPoint) => {\n allGroupsBars.push(this._buildGraph(singleSet, xScale0, xScale1, containerHeight, xElement!));\n });\n this._groupedVerticalBarGraph = allGroupsBars;\n };\n\n private _getMargins = (margins: IMargins) => (this.margins = margins);\n\n private _createDataSetOfGVBC = (points: IGroupedVerticalBarChartData[]) => {\n const keys: string[] = [];\n const xAxisLabels: string[] = points.map(singlePoint => singlePoint.name);\n points[0].series.forEach((singleKey: IGVBarChartSeriesPoint) => {\n keys.push(singleKey.key);\n });\n const datasetForBars = this._createDataset(points);\n return {\n keys,\n xAxisLabels,\n datasetForBars,\n };\n };\n\n private _getCustomizedCallout = () => {\n return this.props.onRenderCalloutPerDataPoint\n ? this.props.onRenderCalloutPerDataPoint(this.state.dataPointCalloutProps)\n : null;\n };\n\n private _getOpacity = (legendTitle: string): string => {\n const opacity = this._legendHighlighted(legendTitle) || this._noLegendHighlighted() ? '' : '0.1';\n return opacity;\n };\n\n private _onBarHover = (\n pointData: IGVBarChartSeriesPoint,\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n groupData: any,\n mouseEvent: React.MouseEvent<SVGElement>,\n ): void => {\n mouseEvent.persist();\n if (this._calloutAnchorPoint !== pointData) {\n this._calloutAnchorPoint = pointData;\n this.setState({\n refSelected: mouseEvent,\n /** Show the callout if highlighted bar is hovered and Hide it if unhighlighted bar is hovered */\n isCalloutVisible: this.state.selectedLegend === '' || this.state.selectedLegend === pointData.legend,\n calloutLegend: pointData.legend,\n dataForHoverCard: pointData.data,\n color: pointData.color,\n xCalloutValue: pointData.xAxisCalloutData,\n yCalloutValue: pointData.yAxisCalloutData,\n dataPointCalloutProps: pointData,\n callOutAccessibilityData: this.props.isCalloutForStack\n ? groupData.stackCallOutAccessibilityData\n : pointData.callOutAccessibilityData,\n YValueHover: groupData.groupSeries,\n hoverXValue: pointData.xAxisCalloutData,\n });\n }\n };\n\n private _onBarLeave = (): void => {\n /**/\n };\n\n private _handleChartMouseLeave = (): void => {\n this._calloutAnchorPoint = null;\n this.setState({ isCalloutVisible: false });\n };\n\n private _onBarFocus = (\n pointData: IGVBarChartSeriesPoint,\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n groupData: any,\n refArrayIndexNumber: number,\n ): void => {\n this._refArray.forEach((obj: IRefArrayData, index: number) => {\n if (obj.index === pointData.legend && refArrayIndexNumber === index) {\n this.setState({\n refSelected: obj.refElement,\n /** Show the callout if highlighted bar is focused and Hide it if unhighlighted bar is focused */\n isCalloutVisible: this.state.selectedLegend === '' || this.state.selectedLegend === pointData.legend,\n calloutLegend: pointData.legend,\n dataForHoverCard: pointData.data,\n color: pointData.color,\n xCalloutValue: pointData.xAxisCalloutData,\n yCalloutValue: pointData.yAxisCalloutData,\n dataPointCalloutProps: pointData,\n callOutAccessibilityData: this.props.isCalloutForStack\n ? groupData.stackCallOutAccessibilityData\n : pointData.callOutAccessibilityData,\n YValueHover: groupData.groupSeries,\n hoverXValue: pointData.xAxisCalloutData,\n });\n }\n });\n };\n\n private _redirectToUrl = (href: string | undefined): void => {\n href ? (window.location.href = href) : '';\n };\n\n private _refCallback(element: SVGRectElement, legendTitle: string, refIndexNumber: number): void {\n this._refArray[refIndexNumber] = { index: legendTitle, refElement: element };\n }\n\n private _buildGraph = (\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n singleSet: any,\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n xScale0: any,\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n xScale1: any,\n containerHeight: number,\n xElement: SVGElement,\n ): JSX.Element => {\n const singleGroup: JSX.Element[] = [];\n const barLabelsForGroup: JSX.Element[] = [];\n\n const yBarScale = d3ScaleLinear()\n .domain([0, this._yMax])\n .range([0, containerHeight! - this.margins.bottom! - this.margins.top!]);\n\n const tempDataSet = Object.keys(this._datasetForBars[0]).splice(0, this._keys.length);\n tempDataSet.forEach((datasetKey: string, index: number) => {\n const refIndexNumber = singleSet.indexNum * tempDataSet.length + index;\n const pointData = singleSet[datasetKey];\n const xPoint = xScale1(datasetKey)!;\n const yPoint = Math.max(containerHeight! - this.margins.bottom! - yBarScale(pointData.data), 0);\n // Not rendering data with 0.\n pointData.data &&\n singleGroup.push(\n <rect\n className={this._classNames.opacityChangeOnHover}\n key={`${singleSet.indexNum}-${index}`}\n height={Math.max(yBarScale(pointData.data), 0)}\n width={this._barWidth}\n x={xPoint}\n y={yPoint}\n data-is-focusable={!this.props.hideTooltip}\n opacity={this._getOpacity(pointData.legend)}\n ref={(e: SVGRectElement | null) => {\n this._refCallback(e!, pointData.legend, refIndexNumber);\n }}\n fill={pointData.color}\n onMouseOver={this._onBarHover.bind(this, pointData, singleSet)}\n onMouseMove={this._onBarHover.bind(this, pointData, singleSet)}\n onMouseOut={this._onBarLeave}\n onFocus={this._onBarFocus.bind(this, pointData, singleSet, refIndexNumber)}\n onBlur={this._onBarLeave}\n onClick={this.props.href ? this._redirectToUrl.bind(this, this.props.href!) : pointData.onClick}\n aria-label={this._getAriaLabel(pointData, singleSet.xAxisPoint)}\n role=\"img\"\n />,\n );\n if (pointData.data && !this.props.hideLabels && this._barWidth >= 16) {\n barLabelsForGroup.push(\n <text\n x={xPoint + this._barWidth / 2}\n y={yPoint - 6}\n textAnchor=\"middle\"\n className={this._classNames.barLabel}\n aria-hidden={true}\n >\n {d3FormatPrefix(pointData.data < 1000 ? '.2~' : '.1', pointData.data)(pointData.data)}\n </text>,\n );\n }\n });\n // Used to display tooltip at x axis labels.\n if (!this.props.wrapXAxisLables && this.props.showXAxisLablesTooltip) {\n const xAxisElement = d3Select(xElement).call(xScale0);\n try {\n document.getElementById(this._tooltipId) && document.getElementById(this._tooltipId)!.remove();\n // eslint-disable-next-line no-empty\n } catch (e) {}\n const tooltipProps = {\n tooltipCls: this._classNames.tooltip!,\n id: this._tooltipId,\n xAxis: xAxisElement,\n };\n xAxisElement && tooltipOfXAxislabels(tooltipProps);\n }\n return (\n <g key={singleSet.indexNum} transform={`translate(${xScale0(singleSet.xAxisPoint)}, 0)`}>\n {singleGroup}\n {barLabelsForGroup}\n </g>\n );\n };\n\n private _createDataset = (points: IGroupedVerticalBarChartData[]) => {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const datasetForBars: any = [];\n const dataset: IGVDataPoint[] = [];\n\n points.forEach((point: IGroupedVerticalBarChartData, index: number) => {\n const singleDatasetPoint: IGVDataPoint = {};\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const singleDatasetPointForBars: any = {};\n const singleDataSeries: IGVBarChartSeriesPoint[] = [];\n\n point.series.forEach((seriesPoint: IGVBarChartSeriesPoint) => {\n singleDatasetPoint[seriesPoint.key] = seriesPoint.data;\n singleDatasetPointForBars[seriesPoint.key] = {\n ...seriesPoint,\n };\n singleDataSeries.push(seriesPoint);\n });\n\n singleDatasetPointForBars.xAxisPoint = point.name;\n singleDatasetPointForBars.indexNum = index;\n singleDatasetPointForBars.groupSeries = singleDataSeries;\n singleDatasetPointForBars.stackCallOutAccessibilityData = point.stackCallOutAccessibilityData;\n datasetForBars.push(singleDatasetPointForBars);\n dataset.push(singleDatasetPoint);\n });\n this._dataset = dataset;\n return datasetForBars;\n };\n\n // For grouped vertical bar chart, First need to define total scale (from start to end)\n // From that need to define scale for single group of bars - done by createX1Scale\n private _createX0Scale = (containerWidth: number) => {\n const x0Axis = d3ScaleBand()\n .domain(this._xAxisLabels)\n .range(\n this._isRtl\n ? [containerWidth! - this.margins.right! - this._domainMargin, this.margins.left! + this._domainMargin]\n : [this.margins.left! + this._domainMargin, containerWidth! - this.margins.right! - this._domainMargin],\n )\n // x0_inner_padding = space_between_groups / (space_between_groups + group_width)\n // space_between_groups = 2 * bar_width\n // group_width = this._keys.length * bar_width + (this._keys.length - 1) * space_between_bars\n .paddingInner(2 / (2 + this._keys.length + (this._keys.length - 1) * BAR_GAP_RATE));\n return x0Axis;\n };\n\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n private _createX1Scale = (xScale0: any): any => {\n const bandWidth = xScale0.bandwidth();\n\n return d3ScaleBand()\n .domain(this._keys)\n .range(this._isRtl ? [bandWidth, 0] : [0, bandWidth])\n .paddingInner(X1_INNER_PADDING);\n };\n\n private _closeCallout = () => {\n this.setState({\n isCalloutVisible: false,\n });\n };\n\n private _onLegendClick(legendTitle: string): void {\n if (this.state.selectedLegend === legendTitle) {\n this.setState({\n selectedLegend: '',\n });\n } else {\n this.setState({\n selectedLegend: legendTitle,\n });\n }\n }\n\n private _onLegendHover(legendTitle: string): void {\n this.setState({\n activeLegend: legendTitle,\n });\n }\n\n private _onLegendLeave(): void {\n this.setState({\n activeLegend: '',\n });\n }\n\n private _getLegendData = (points: IGroupedVerticalBarChartData[], palette: IPalette): JSX.Element => {\n const data = points;\n const defaultPalette: string[] = [palette.blueLight, palette.blue, palette.blueMid, palette.red, palette.black];\n const actions: ILegend[] = [];\n\n data.forEach((singleChartData: IGroupedVerticalBarChartData) => {\n singleChartData.series.forEach((point: IGVBarChartSeriesPoint) => {\n const color: string = point.color ? point.color : defaultPalette[Math.floor(Math.random() * 4 + 1)];\n const checkSimilarLegends = actions.filter((leg: ILegend) => leg.title === point.legend && leg.color === color);\n if (checkSimilarLegends!.length > 0) {\n return;\n }\n const legend: ILegend = {\n title: point.legend,\n color: color,\n action: () => {\n this._onLegendClick(point.legend);\n },\n hoverAction: () => {\n this._handleChartMouseLeave();\n this._onLegendHover(point.legend);\n },\n onMouseOutAction: () => {\n this._onLegendLeave();\n },\n };\n\n actions.push(legend);\n });\n });\n return (\n <Legends\n legends={actions}\n overflowProps={this.props.legendsOverflowProps}\n enabledWrapLines={this.props.enabledLegendsWrapLines}\n focusZonePropsInHoverCard={this.props.focusZonePropsForLegendsInHoverCard}\n {...this.props.legendProps}\n />\n );\n };\n\n private _getAxisData = (yAxisData: IAxisData) => {\n if (yAxisData && yAxisData.yAxisDomainValues.length) {\n const { yAxisDomainValues: domainValue } = yAxisData;\n this._yMax = Math.max(domainValue[domainValue.length - 1], this.props.yMaxValue || 0);\n }\n };\n\n /**\n * This function checks if the given legend is highlighted or not.\n * A legend can be highlighted in 2 ways:\n * 1. selection: if the user clicks on it\n * 2. hovering: if there is no selected legend and the user hovers over it\n */\n private _legendHighlighted = (legendTitle: string) => {\n return (\n this.state.selectedLegend === legendTitle ||\n (this.state.selectedLegend === '' && this.state.activeLegend === legendTitle)\n );\n };\n\n /**\n * This function checks if none of the legends is selected or hovered.\n */\n private _noLegendHighlighted = () => {\n return this.state.selectedLegend === '' && this.state.activeLegend === '';\n };\n\n private _getAriaLabel = (point: IGVBarChartSeriesPoint, xAxisPoint: string): string => {\n const xValue = point.xAxisCalloutData || xAxisPoint;\n const legend = point.legend;\n const yValue = point.yAxisCalloutData || point.data;\n return point.callOutAccessibilityData?.ariaLabel || `${xValue}. ${legend}, ${yValue}.`;\n };\n\n private _getDomainMargins = (containerWidth: number): IMargins => {\n /** Total width available to render the bars */\n const totalWidth =\n containerWidth - (this.margins.left! + MIN_DOMAIN_MARGIN) - (this.margins.right! + MIN_DOMAIN_MARGIN);\n let barWidth = Math.min(this.props.barwidth || 16, 24);\n let groupWidth = this._keys.length * barWidth + (this._keys.length - 1) * BAR_GAP_RATE * barWidth; // (i)\n /** Total width required to render the bars. Directly proportional to bar width */\n const reqWidth = this._xAxisLabels.length * groupWidth + (this._xAxisLabels.length - 1) * 2 * barWidth; // (ii)\n\n this._domainMargin = MIN_DOMAIN_MARGIN;\n if (totalWidth >= reqWidth) {\n // Center align the chart by setting equal left and right margins for domain\n this._domainMargin += (totalWidth - reqWidth) / 2;\n } else {\n // From (i) and (ii)\n /** Maximum possible group width to maintain 2:1 spacing */\n const maxBandwidth =\n totalWidth /\n (this._xAxisLabels.length +\n (this._xAxisLabels.length - 1) * (2 / (this._keys.length + (this._keys.length - 1) * BAR_GAP_RATE)));\n groupWidth = maxBandwidth;\n // From (i)\n barWidth = groupWidth / (this._keys.length + (this._keys.length - 1) * BAR_GAP_RATE);\n }\n this._barWidth = barWidth;\n\n return {\n ...this.margins,\n left: this.margins.left! + this._domainMargin,\n right: this.margins.right! + this._domainMargin,\n };\n };\n}\n"]}
@@ -0,0 +1,3 @@
1
+ import * as React from 'react';
2
+ import { IGroupedVerticalBarChartProps } from '../../index';
3
+ export declare const GroupedVerticalBarChart: React.FunctionComponent<IGroupedVerticalBarChartProps>;
@@ -0,0 +1,6 @@
1
+ import { styled } from '../../Utilities';
2
+ import { GroupedVerticalBarChartBase } from './GroupedVerticalBarChart.base';
3
+ import { getStyles } from './GroupedVerticalBarChart.styles';
4
+ // Create a GroupedVerticalBarChart variant which uses these default styles and this styled subcomponent.
5
+ export var GroupedVerticalBarChart = styled(GroupedVerticalBarChartBase, getStyles);
6
+ //# sourceMappingURL=GroupedVerticalBarChart.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"GroupedVerticalBarChart.js","sourceRoot":"../src/","sources":["components/GroupedVerticalBarChart/GroupedVerticalBarChart.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAMzC,OAAO,EAAE,2BAA2B,EAAE,MAAM,gCAAgC,CAAC;AAC7E,OAAO,EAAE,SAAS,EAAE,MAAM,kCAAkC,CAAC;AAE7D,yGAAyG;AACzG,MAAM,CAAC,IAAM,uBAAuB,GAA2D,MAAM,CAInG,2BAA2B,EAAE,SAAS,CAAC,CAAC","sourcesContent":["import * as React from 'react';\nimport { styled } from '../../Utilities';\nimport {\n IGroupedVerticalBarChartProps,\n IGroupedVerticalBarChartStyleProps,\n IGroupedVerticalBarChartStyles,\n} from '../../index';\nimport { GroupedVerticalBarChartBase } from './GroupedVerticalBarChart.base';\nimport { getStyles } from './GroupedVerticalBarChart.styles';\n\n// Create a GroupedVerticalBarChart variant which uses these default styles and this styled subcomponent.\nexport const GroupedVerticalBarChart: React.FunctionComponent<IGroupedVerticalBarChartProps> = styled<\n IGroupedVerticalBarChartProps,\n IGroupedVerticalBarChartStyleProps,\n IGroupedVerticalBarChartStyles\n>(GroupedVerticalBarChartBase, getStyles);\n"]}
@@ -0,0 +1,2 @@
1
+ import { IGroupedVerticalBarChartStyleProps, IGroupedVerticalBarChartStyles } from '../../index';
2
+ export declare const getStyles: (props: IGroupedVerticalBarChartStyleProps) => IGroupedVerticalBarChartStyles;
@@ -0,0 +1,17 @@
1
+ import { __assign } from "tslib";
2
+ import { FontSizes, FontWeights } from '@fluentui/react/lib/Styling';
3
+ export var getStyles = function (props) {
4
+ var theme = props.theme, href = props.href;
5
+ return {
6
+ opacityChangeOnHover: {
7
+ cursor: href ? 'pointer' : 'default',
8
+ },
9
+ tooltip: __assign(__assign({}, theme.fonts.medium), { display: 'flex', flexDirection: 'column', padding: '8px', position: 'absolute', textAlign: 'center', top: '0px', background: theme.semanticColors.bodyBackground, borderRadius: '2px', pointerEvents: 'none' }),
10
+ barLabel: {
11
+ fontSize: FontSizes.small,
12
+ fontWeight: FontWeights.semibold,
13
+ fill: theme.palette.neutralPrimary,
14
+ },
15
+ };
16
+ };
17
+ //# sourceMappingURL=GroupedVerticalBarChart.styles.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"GroupedVerticalBarChart.styles.js","sourceRoot":"../src/","sources":["components/GroupedVerticalBarChart/GroupedVerticalBarChart.styles.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAGrE,MAAM,CAAC,IAAM,SAAS,GAAG,UAAC,KAAyC;IACzD,IAAA,KAAK,GAAW,KAAK,MAAhB,EAAE,IAAI,GAAK,KAAK,KAAV,CAAW;IAC9B,OAAO;QACL,oBAAoB,EAAE;YACpB,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS;SACrC;QAED,OAAO,wBACF,KAAK,CAAC,KAAK,CAAC,MAAM,KACrB,OAAO,EAAE,MAAM,EACf,aAAa,EAAE,QAAQ,EACvB,OAAO,EAAE,KAAK,EACd,QAAQ,EAAE,UAAU,EACpB,SAAS,EAAE,QAAQ,EACnB,GAAG,EAAE,KAAK,EACV,UAAU,EAAE,KAAK,CAAC,cAAc,CAAC,cAAc,EAC/C,YAAY,EAAE,KAAK,EACnB,aAAa,EAAE,MAAM,GACtB;QAED,QAAQ,EAAE;YACR,QAAQ,EAAE,SAAS,CAAC,KAAK;YACzB,UAAU,EAAE,WAAW,CAAC,QAAQ;YAChC,IAAI,EAAE,KAAK,CAAC,OAAO,CAAC,cAAc;SACnC;KACF,CAAC;AACJ,CAAC,CAAC","sourcesContent":["import { FontSizes, FontWeights } from '@fluentui/react/lib/Styling';\nimport { IGroupedVerticalBarChartStyleProps, IGroupedVerticalBarChartStyles } from '../../index';\n\nexport const getStyles = (props: IGroupedVerticalBarChartStyleProps): IGroupedVerticalBarChartStyles => {\n const { theme, href } = props;\n return {\n opacityChangeOnHover: {\n cursor: href ? 'pointer' : 'default',\n },\n\n tooltip: {\n ...theme.fonts.medium,\n display: 'flex',\n flexDirection: 'column',\n padding: '8px',\n position: 'absolute',\n textAlign: 'center',\n top: '0px',\n background: theme.semanticColors.bodyBackground,\n borderRadius: '2px',\n pointerEvents: 'none',\n },\n\n barLabel: {\n fontSize: FontSizes.small,\n fontWeight: FontWeights.semibold,\n fill: theme.palette.neutralPrimary,\n },\n };\n};\n"]}
@@ -0,0 +1,83 @@
1
+ import { IStyle } from '@fluentui/react/lib/Styling';
2
+ import { IRenderFunction, IStyleFunctionOrObject } from '@fluentui/react/lib/Utilities';
3
+ import { ICartesianChartStyles, ICartesianChartStyleProps, ICartesianChartProps, IGroupedVerticalBarChartData, IGVBarChartSeriesPoint } from '../../index';
4
+ export interface IGroupedVerticalBarChartProps extends ICartesianChartProps {
5
+ /**
6
+ * chart title for the chart
7
+ */
8
+ chartTitle?: string;
9
+ /**
10
+ * Data to render in the chart.
11
+ */
12
+ data: IGroupedVerticalBarChartData[];
13
+ /**
14
+ * Barwidth automacally adjusted based upon given parent width, data and scale.
15
+ * If barwidth given through prop, then is shold be less than given formula.
16
+ * If not, graph will adjust and your value may not be reflected.
17
+ * Formula: width of parent div / (Number Of Groups * (Number Of single bars in group + 2))
18
+ * Note: By changing barwidth manually it may cause some spatial and graph override issues,
19
+ * better to avoid using this prop.
20
+ */
21
+ barwidth?: number;
22
+ /**
23
+ * Call to provide customized styling that will layer on top of the variant rules.
24
+ */
25
+ styles?: IStyleFunctionOrObject<IGroupedVerticalBarChartStyleProps, IGroupedVerticalBarChartStyles>;
26
+ /**
27
+ * color of the datapoint legend
28
+ * @deprecated
29
+ */
30
+ legendColor?: string;
31
+ /**
32
+ * This prop used to draw X axis grid line on tha chart. Default value will be false
33
+ * @deprecated
34
+ */
35
+ showXAxisGridLines?: boolean;
36
+ /**
37
+ * This prop used to draw Y axis grid lines on the chart. Default value will be true
38
+ * @deprecated
39
+ */
40
+ showYAxisGridLines?: boolean;
41
+ /**
42
+ * This prop takes the boolean value and used for to display x-axis path or transparent.
43
+ * This is a optional prop and default value is false. It dont show X-Axis path as tranparent.
44
+ * @deprecated
45
+ */
46
+ showXAxisPath?: boolean;
47
+ /**
48
+ * This prop takes the boolean value and used for to display y-axis path or transparent.
49
+ * This is a optional prop and default value is false. It dont show X-Axis path as tranparent.
50
+ * @deprecated
51
+ */
52
+ showYAxisPath?: boolean;
53
+ /**
54
+ * Define a custom callout renderer for a stack
55
+ */
56
+ onRenderCalloutPerDataPoint?: IRenderFunction<IGVBarChartSeriesPoint>;
57
+ /**
58
+ * The prop used to define the culture to localized the numbers
59
+ */
60
+ culture?: string;
61
+ /**
62
+ * To display multi stack callout or single callout
63
+ * @default false
64
+ */
65
+ isCalloutForStack?: boolean;
66
+ /**
67
+ * Prop to hide the bar labels
68
+ * @default false
69
+ */
70
+ hideLabels?: boolean;
71
+ }
72
+ export interface IGroupedVerticalBarChartStyleProps extends ICartesianChartStyleProps {
73
+ }
74
+ export interface IGroupedVerticalBarChartStyles extends ICartesianChartStyles {
75
+ /**
76
+ * Style to change the opacity of bars in dataviz when we hover on a single bar or legends
77
+ */
78
+ opacityChangeOnHover: IStyle;
79
+ /**
80
+ * Style for the bar labels
81
+ */
82
+ barLabel: IStyle;
83
+ }
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=GroupedVerticalBarChart.types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"GroupedVerticalBarChart.types.js","sourceRoot":"../src/","sources":["components/GroupedVerticalBarChart/GroupedVerticalBarChart.types.tsx"],"names":[],"mappings":"","sourcesContent":["import { IStyle } from '@fluentui/react/lib/Styling';\nimport { IRenderFunction, IStyleFunctionOrObject } from '@fluentui/react/lib/Utilities';\nimport {\n ICartesianChartStyles,\n ICartesianChartStyleProps,\n ICartesianChartProps,\n IGroupedVerticalBarChartData,\n IGVBarChartSeriesPoint,\n} from '../../index';\n\nexport interface IGroupedVerticalBarChartProps extends ICartesianChartProps {\n /**\n * chart title for the chart\n */\n chartTitle?: string;\n /**\n * Data to render in the chart.\n */\n data: IGroupedVerticalBarChartData[];\n\n /**\n * Barwidth automacally adjusted based upon given parent width, data and scale.\n * If barwidth given through prop, then is shold be less than given formula.\n * If not, graph will adjust and your value may not be reflected.\n * Formula: width of parent div / (Number Of Groups * (Number Of single bars in group + 2))\n * Note: By changing barwidth manually it may cause some spatial and graph override issues,\n * better to avoid using this prop.\n */\n barwidth?: number;\n\n /**\n * Call to provide customized styling that will layer on top of the variant rules.\n */\n styles?: IStyleFunctionOrObject<IGroupedVerticalBarChartStyleProps, IGroupedVerticalBarChartStyles>;\n\n /**\n * color of the datapoint legend\n * @deprecated\n */\n legendColor?: string;\n\n /**\n * This prop used to draw X axis grid line on tha chart. Default value will be false\n * @deprecated\n */\n showXAxisGridLines?: boolean;\n\n /**\n * This prop used to draw Y axis grid lines on the chart. Default value will be true\n * @deprecated\n */\n showYAxisGridLines?: boolean;\n\n /**\n * This prop takes the boolean value and used for to display x-axis path or transparent.\n * This is a optional prop and default value is false. It dont show X-Axis path as tranparent.\n * @deprecated\n */\n showXAxisPath?: boolean;\n\n /**\n * This prop takes the boolean value and used for to display y-axis path or transparent.\n * This is a optional prop and default value is false. It dont show X-Axis path as tranparent.\n * @deprecated\n */\n showYAxisPath?: boolean;\n\n /**\n * Define a custom callout renderer for a stack\n */\n onRenderCalloutPerDataPoint?: IRenderFunction<IGVBarChartSeriesPoint>;\n\n /**\n * The prop used to define the culture to localized the numbers\n */\n culture?: string;\n\n /**\n * To display multi stack callout or single callout\n * @default false\n */\n isCalloutForStack?: boolean;\n\n /**\n * Prop to hide the bar labels\n * @default false\n */\n hideLabels?: boolean;\n}\n\nexport interface IGroupedVerticalBarChartStyleProps extends ICartesianChartStyleProps {}\n\nexport interface IGroupedVerticalBarChartStyles extends ICartesianChartStyles {\n /**\n * Style to change the opacity of bars in dataviz when we hover on a single bar or legends\n */\n opacityChangeOnHover: IStyle;\n\n /**\n * Style for the bar labels\n */\n barLabel: IStyle;\n}\n"]}
@@ -0,0 +1,2 @@
1
+ export * from './GroupedVerticalBarChart';
2
+ export * from './GroupedVerticalBarChart.types';
@@ -0,0 +1,3 @@
1
+ export * from './GroupedVerticalBarChart';
2
+ export * from './GroupedVerticalBarChart.types';
3
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"../src/","sources":["components/GroupedVerticalBarChart/index.ts"],"names":[],"mappings":"AAAA,cAAc,2BAA2B,CAAC;AAC1C,cAAc,iCAAiC,CAAC","sourcesContent":["export * from './GroupedVerticalBarChart';\nexport * from './GroupedVerticalBarChart.types';\n"]}