@semcore/d3-chart 16.5.0 → 17.0.0-prerelease.8

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 (439) hide show
  1. package/CHANGELOG.md +10 -0
  2. package/lib/cjs/AnimatedClipPath.js +28 -41
  3. package/lib/cjs/AnimatedClipPath.js.map +1 -1
  4. package/lib/cjs/Area.js +187 -223
  5. package/lib/cjs/Area.js.map +1 -1
  6. package/lib/cjs/Axis.js +248 -327
  7. package/lib/cjs/Axis.js.map +1 -1
  8. package/lib/cjs/Bar.js +162 -185
  9. package/lib/cjs/Bar.js.map +1 -1
  10. package/lib/cjs/Bubble.js +219 -248
  11. package/lib/cjs/Bubble.js.map +1 -1
  12. package/lib/cjs/CompactHorizontalBar.js +448 -482
  13. package/lib/cjs/CompactHorizontalBar.js.map +1 -1
  14. package/lib/cjs/Donut.js +349 -396
  15. package/lib/cjs/Donut.js.map +1 -1
  16. package/lib/cjs/Dots.js +67 -86
  17. package/lib/cjs/Dots.js.map +1 -1
  18. package/lib/cjs/GroupBar.js +78 -93
  19. package/lib/cjs/GroupBar.js.map +1 -1
  20. package/lib/cjs/HorizontalBar.js +149 -167
  21. package/lib/cjs/HorizontalBar.js.map +1 -1
  22. package/lib/cjs/Hover.js +178 -207
  23. package/lib/cjs/Hover.js.map +1 -1
  24. package/lib/cjs/Line.js +182 -222
  25. package/lib/cjs/Line.js.map +1 -1
  26. package/lib/cjs/Pattern.js +124 -126
  27. package/lib/cjs/Pattern.js.map +1 -1
  28. package/lib/cjs/Plot.js +100 -126
  29. package/lib/cjs/Plot.js.map +1 -1
  30. package/lib/cjs/Radar.js +576 -681
  31. package/lib/cjs/Radar.js.map +1 -1
  32. package/lib/cjs/RadialTree.js +518 -571
  33. package/lib/cjs/RadialTree.js.map +1 -1
  34. package/lib/cjs/Reference.js +147 -178
  35. package/lib/cjs/Reference.js.map +1 -1
  36. package/lib/cjs/ResponsiveContainer.js +64 -82
  37. package/lib/cjs/ResponsiveContainer.js.map +1 -1
  38. package/lib/cjs/ScatterPlot.js +169 -199
  39. package/lib/cjs/ScatterPlot.js.map +1 -1
  40. package/lib/cjs/StackBar.js +135 -177
  41. package/lib/cjs/StackBar.js.map +1 -1
  42. package/lib/cjs/StackedArea.js +60 -73
  43. package/lib/cjs/StackedArea.js.map +1 -1
  44. package/lib/cjs/Tooltip.js +193 -208
  45. package/lib/cjs/Tooltip.js.map +1 -1
  46. package/lib/cjs/Venn.js +182 -217
  47. package/lib/cjs/Venn.js.map +1 -1
  48. package/lib/cjs/a11y/DataAccessibilityTable.js +45 -83
  49. package/lib/cjs/a11y/DataAccessibilityTable.js.map +1 -1
  50. package/lib/cjs/a11y/PlotA11yModule.js +37 -97
  51. package/lib/cjs/a11y/PlotA11yModule.js.map +1 -1
  52. package/lib/cjs/a11y/PlotA11yView.js +97 -91
  53. package/lib/cjs/a11y/PlotA11yView.js.map +1 -1
  54. package/lib/cjs/a11y/bezier.js +17 -23
  55. package/lib/cjs/a11y/bezier.js.map +1 -1
  56. package/lib/cjs/a11y/focus.js +16 -16
  57. package/lib/cjs/a11y/focus.js.map +1 -1
  58. package/lib/cjs/a11y/hints.js +72 -75
  59. package/lib/cjs/a11y/hints.js.map +1 -1
  60. package/lib/cjs/a11y/insights.js +354 -525
  61. package/lib/cjs/a11y/insights.js.map +1 -1
  62. package/lib/cjs/a11y/intl.js +5 -5
  63. package/lib/cjs/a11y/intl.js.map +1 -1
  64. package/lib/cjs/a11y/locale.js +12 -19
  65. package/lib/cjs/a11y/locale.js.map +1 -1
  66. package/lib/cjs/a11y/serialize.js +164 -203
  67. package/lib/cjs/a11y/serialize.js.map +1 -1
  68. package/lib/cjs/a11y/summarize.js +7 -6
  69. package/lib/cjs/a11y/summarize.js.map +1 -1
  70. package/lib/cjs/a11y/translations/module/__intergalactic-dynamic-locales.js +16 -16
  71. package/lib/cjs/a11y/translations/module/__intergalactic-dynamic-locales.js.map +1 -1
  72. package/lib/cjs/a11y/translations/module/de.json +2 -2
  73. package/lib/cjs/a11y/translations/module/en.json +2 -2
  74. package/lib/cjs/a11y/translations/module/es.json +2 -2
  75. package/lib/cjs/a11y/translations/module/fr.json +2 -2
  76. package/lib/cjs/a11y/translations/module/it.json +2 -2
  77. package/lib/cjs/a11y/translations/module/ja.json +2 -2
  78. package/lib/cjs/a11y/translations/module/ko.json +2 -2
  79. package/lib/cjs/a11y/translations/module/nl.json +2 -2
  80. package/lib/cjs/a11y/translations/module/pl.json +2 -2
  81. package/lib/cjs/a11y/translations/module/pt.json +2 -2
  82. package/lib/cjs/a11y/translations/module/sv.json +2 -2
  83. package/lib/cjs/a11y/translations/module/tr.json +2 -2
  84. package/lib/cjs/a11y/translations/module/vi.json +2 -2
  85. package/lib/cjs/a11y/translations/module/zh.json +2 -2
  86. package/lib/cjs/a11y/translations/view/__intergalactic-dynamic-locales.js +16 -16
  87. package/lib/cjs/a11y/translations/view/__intergalactic-dynamic-locales.js.map +1 -1
  88. package/lib/cjs/color.js +1 -1
  89. package/lib/cjs/color.js.map +1 -1
  90. package/lib/cjs/component/Chart/AbstractChart.js +421 -466
  91. package/lib/cjs/component/Chart/AbstractChart.js.map +1 -1
  92. package/lib/cjs/component/Chart/AbstractChart.type.js.map +1 -1
  93. package/lib/cjs/component/Chart/AreaChart.js +97 -115
  94. package/lib/cjs/component/Chart/AreaChart.js.map +1 -1
  95. package/lib/cjs/component/Chart/AreaChart.type.js.map +1 -1
  96. package/lib/cjs/component/Chart/BarChart.js +229 -216
  97. package/lib/cjs/component/Chart/BarChart.js.map +1 -1
  98. package/lib/cjs/component/Chart/BarChart.type.js.map +1 -1
  99. package/lib/cjs/component/Chart/BubbleChart.js +114 -136
  100. package/lib/cjs/component/Chart/BubbleChart.js.map +1 -1
  101. package/lib/cjs/component/Chart/BubbleChart.type.js.map +1 -1
  102. package/lib/cjs/component/Chart/CigaretteChart.js +280 -305
  103. package/lib/cjs/component/Chart/CigaretteChart.js.map +1 -1
  104. package/lib/cjs/component/Chart/CompactHorizontalBarChart.js +76 -108
  105. package/lib/cjs/component/Chart/CompactHorizontalBarChart.js.map +1 -1
  106. package/lib/cjs/component/Chart/CompactHorizontalBarChart.type.js.map +1 -1
  107. package/lib/cjs/component/Chart/DonutChart.js +80 -95
  108. package/lib/cjs/component/Chart/DonutChart.js.map +1 -1
  109. package/lib/cjs/component/Chart/DonutChart.type.js.map +1 -1
  110. package/lib/cjs/component/Chart/HistogramChart.js +126 -148
  111. package/lib/cjs/component/Chart/HistogramChart.js.map +1 -1
  112. package/lib/cjs/component/Chart/HistogramChart.type.js.map +1 -1
  113. package/lib/cjs/component/Chart/LineChart.js +95 -113
  114. package/lib/cjs/component/Chart/LineChart.js.map +1 -1
  115. package/lib/cjs/component/Chart/LineChart.type.js.map +1 -1
  116. package/lib/cjs/component/Chart/RadarChart.js +84 -110
  117. package/lib/cjs/component/Chart/RadarChart.js.map +1 -1
  118. package/lib/cjs/component/Chart/RadarChart.type.js.map +1 -1
  119. package/lib/cjs/component/Chart/ScatterPlotChart.js +119 -143
  120. package/lib/cjs/component/Chart/ScatterPlotChart.js.map +1 -1
  121. package/lib/cjs/component/Chart/ScatterPlotChart.type.js.map +1 -1
  122. package/lib/cjs/component/Chart/VennChart.js +103 -122
  123. package/lib/cjs/component/Chart/VennChart.js.map +1 -1
  124. package/lib/cjs/component/Chart/VennChart.type.js.map +1 -1
  125. package/lib/cjs/component/Chart/index.js +2 -2
  126. package/lib/cjs/component/Chart/index.js.map +1 -1
  127. package/lib/cjs/component/ChartLegend/BaseLegend.js +72 -105
  128. package/lib/cjs/component/ChartLegend/BaseLegend.js.map +1 -1
  129. package/lib/cjs/component/ChartLegend/BaseLegend.type.js.map +1 -1
  130. package/lib/cjs/component/ChartLegend/LegendFlex/LegendFlex.js +58 -70
  131. package/lib/cjs/component/ChartLegend/LegendFlex/LegendFlex.js.map +1 -1
  132. package/lib/cjs/component/ChartLegend/LegendFlex/LegendFlex.type.js.map +1 -1
  133. package/lib/cjs/component/ChartLegend/LegendItem/LegendItem.js +208 -221
  134. package/lib/cjs/component/ChartLegend/LegendItem/LegendItem.js.map +1 -1
  135. package/lib/cjs/component/ChartLegend/LegendItem/LegendItem.type.js +1 -1
  136. package/lib/cjs/component/ChartLegend/LegendItem/LegendItem.type.js.map +1 -1
  137. package/lib/cjs/component/ChartLegend/LegendTable/LegendTable.js +63 -73
  138. package/lib/cjs/component/ChartLegend/LegendTable/LegendTable.js.map +1 -1
  139. package/lib/cjs/component/ChartLegend/LegendTable/LegendTable.type.js.map +1 -1
  140. package/lib/cjs/component/ChartLegend/index.js +4 -4
  141. package/lib/cjs/component/ChartLegend/index.js.map +1 -1
  142. package/lib/cjs/component/Cigarette/Cigarette.js +115 -129
  143. package/lib/cjs/component/Cigarette/Cigarette.js.map +1 -1
  144. package/lib/cjs/component/StackGroupBar/StackGroupBar.js +107 -137
  145. package/lib/cjs/component/StackGroupBar/StackGroupBar.js.map +1 -1
  146. package/lib/cjs/component/SvgElement.js +7 -7
  147. package/lib/cjs/component/SvgElement.js.map +1 -1
  148. package/lib/cjs/createElement.js +66 -65
  149. package/lib/cjs/createElement.js.map +1 -1
  150. package/lib/cjs/index.js +62 -62
  151. package/lib/cjs/style/axis.shadow.css +3 -0
  152. package/lib/cjs/style/plot.shadow.css +1 -3
  153. package/lib/cjs/style/plotA11yModule.shadow.css +10 -11
  154. package/lib/cjs/style/plotA11yView.shadow.css +13 -26
  155. package/lib/cjs/translations/__intergalactic-dynamic-locales.js +15 -15
  156. package/lib/cjs/translations/__intergalactic-dynamic-locales.js.map +1 -1
  157. package/lib/cjs/types/Axis.d.js.map +1 -1
  158. package/lib/cjs/types/CompactHorizontalBar.d.js.map +1 -1
  159. package/lib/cjs/types/Hover.d.js.map +1 -1
  160. package/lib/cjs/types/Line.d.js.map +1 -1
  161. package/lib/cjs/types/Plot.d.js.map +1 -1
  162. package/lib/cjs/types/Radar.d.js.map +1 -1
  163. package/lib/cjs/types/ResponsiveContainer.d.js.map +1 -1
  164. package/lib/cjs/types/Tooltip.d.js.map +1 -1
  165. package/lib/cjs/types/Venn.d.js.map +1 -1
  166. package/lib/cjs/types/index.d.js +80 -80
  167. package/lib/cjs/types/index.d.js.map +1 -1
  168. package/lib/cjs/utils.js +122 -145
  169. package/lib/cjs/utils.js.map +1 -1
  170. package/lib/es6/AnimatedClipPath.js +24 -37
  171. package/lib/es6/AnimatedClipPath.js.map +1 -1
  172. package/lib/es6/Area.js +179 -215
  173. package/lib/es6/Area.js.map +1 -1
  174. package/lib/es6/Axis.js +242 -321
  175. package/lib/es6/Axis.js.map +1 -1
  176. package/lib/es6/Bar.js +154 -177
  177. package/lib/es6/Bar.js.map +1 -1
  178. package/lib/es6/Bubble.js +206 -235
  179. package/lib/es6/Bubble.js.map +1 -1
  180. package/lib/es6/CompactHorizontalBar.js +433 -467
  181. package/lib/es6/CompactHorizontalBar.js.map +1 -1
  182. package/lib/es6/Donut.js +337 -384
  183. package/lib/es6/Donut.js.map +1 -1
  184. package/lib/es6/Dots.js +60 -79
  185. package/lib/es6/Dots.js.map +1 -1
  186. package/lib/es6/GroupBar.js +74 -89
  187. package/lib/es6/GroupBar.js.map +1 -1
  188. package/lib/es6/HorizontalBar.js +141 -159
  189. package/lib/es6/HorizontalBar.js.map +1 -1
  190. package/lib/es6/Hover.js +174 -203
  191. package/lib/es6/Hover.js.map +1 -1
  192. package/lib/es6/Line.js +173 -213
  193. package/lib/es6/Line.js.map +1 -1
  194. package/lib/es6/Pattern.js +68 -74
  195. package/lib/es6/Pattern.js.map +1 -1
  196. package/lib/es6/Plot.js +95 -121
  197. package/lib/es6/Plot.js.map +1 -1
  198. package/lib/es6/Radar.js +554 -659
  199. package/lib/es6/Radar.js.map +1 -1
  200. package/lib/es6/RadialTree.js +500 -553
  201. package/lib/es6/RadialTree.js.map +1 -1
  202. package/lib/es6/Reference.js +140 -171
  203. package/lib/es6/Reference.js.map +1 -1
  204. package/lib/es6/ResponsiveContainer.js +58 -76
  205. package/lib/es6/ResponsiveContainer.js.map +1 -1
  206. package/lib/es6/ScatterPlot.js +161 -191
  207. package/lib/es6/ScatterPlot.js.map +1 -1
  208. package/lib/es6/StackBar.js +130 -172
  209. package/lib/es6/StackBar.js.map +1 -1
  210. package/lib/es6/StackedArea.js +56 -69
  211. package/lib/es6/StackedArea.js.map +1 -1
  212. package/lib/es6/Tooltip.js +183 -198
  213. package/lib/es6/Tooltip.js.map +1 -1
  214. package/lib/es6/Venn.js +169 -204
  215. package/lib/es6/Venn.js.map +1 -1
  216. package/lib/es6/a11y/DataAccessibilityTable.js +41 -80
  217. package/lib/es6/a11y/DataAccessibilityTable.js.map +1 -1
  218. package/lib/es6/a11y/PlotA11yModule.js +35 -95
  219. package/lib/es6/a11y/PlotA11yModule.js.map +1 -1
  220. package/lib/es6/a11y/PlotA11yView.js +89 -84
  221. package/lib/es6/a11y/PlotA11yView.js.map +1 -1
  222. package/lib/es6/a11y/bezier.js +16 -23
  223. package/lib/es6/a11y/bezier.js.map +1 -1
  224. package/lib/es6/a11y/focus.js +15 -16
  225. package/lib/es6/a11y/focus.js.map +1 -1
  226. package/lib/es6/a11y/hints.js +67 -73
  227. package/lib/es6/a11y/hints.js.map +1 -1
  228. package/lib/es6/a11y/insights.js +353 -524
  229. package/lib/es6/a11y/insights.js.map +1 -1
  230. package/lib/es6/a11y/intl.js +4 -5
  231. package/lib/es6/a11y/intl.js.map +1 -1
  232. package/lib/es6/a11y/locale.js +11 -18
  233. package/lib/es6/a11y/locale.js.map +1 -1
  234. package/lib/es6/a11y/serialize.js +162 -203
  235. package/lib/es6/a11y/serialize.js.map +1 -1
  236. package/lib/es6/a11y/summarize.js +6 -6
  237. package/lib/es6/a11y/summarize.js.map +1 -1
  238. package/lib/es6/a11y/translations/module/__intergalactic-dynamic-locales.js +15 -15
  239. package/lib/es6/a11y/translations/module/__intergalactic-dynamic-locales.js.map +1 -1
  240. package/lib/es6/a11y/translations/module/de.json +2 -2
  241. package/lib/es6/a11y/translations/module/en.json +2 -2
  242. package/lib/es6/a11y/translations/module/es.json +2 -2
  243. package/lib/es6/a11y/translations/module/fr.json +2 -2
  244. package/lib/es6/a11y/translations/module/it.json +2 -2
  245. package/lib/es6/a11y/translations/module/ja.json +2 -2
  246. package/lib/es6/a11y/translations/module/ko.json +2 -2
  247. package/lib/es6/a11y/translations/module/nl.json +2 -2
  248. package/lib/es6/a11y/translations/module/pl.json +2 -2
  249. package/lib/es6/a11y/translations/module/pt.json +2 -2
  250. package/lib/es6/a11y/translations/module/sv.json +2 -2
  251. package/lib/es6/a11y/translations/module/tr.json +2 -2
  252. package/lib/es6/a11y/translations/module/vi.json +2 -2
  253. package/lib/es6/a11y/translations/module/zh.json +2 -2
  254. package/lib/es6/a11y/translations/view/__intergalactic-dynamic-locales.js +15 -15
  255. package/lib/es6/a11y/translations/view/__intergalactic-dynamic-locales.js.map +1 -1
  256. package/lib/es6/color.js +1 -1
  257. package/lib/es6/color.js.map +1 -1
  258. package/lib/es6/component/Chart/AbstractChart.js +416 -462
  259. package/lib/es6/component/Chart/AbstractChart.js.map +1 -1
  260. package/lib/es6/component/Chart/AbstractChart.type.js.map +1 -1
  261. package/lib/es6/component/Chart/AreaChart.js +92 -111
  262. package/lib/es6/component/Chart/AreaChart.js.map +1 -1
  263. package/lib/es6/component/Chart/AreaChart.type.js.map +1 -1
  264. package/lib/es6/component/Chart/BarChart.js +225 -213
  265. package/lib/es6/component/Chart/BarChart.js.map +1 -1
  266. package/lib/es6/component/Chart/BarChart.type.js.map +1 -1
  267. package/lib/es6/component/Chart/BubbleChart.js +109 -132
  268. package/lib/es6/component/Chart/BubbleChart.js.map +1 -1
  269. package/lib/es6/component/Chart/BubbleChart.type.js.map +1 -1
  270. package/lib/es6/component/Chart/CigaretteChart.js +276 -301
  271. package/lib/es6/component/Chart/CigaretteChart.js.map +1 -1
  272. package/lib/es6/component/Chart/CompactHorizontalBarChart.js +70 -103
  273. package/lib/es6/component/Chart/CompactHorizontalBarChart.js.map +1 -1
  274. package/lib/es6/component/Chart/CompactHorizontalBarChart.type.js.map +1 -1
  275. package/lib/es6/component/Chart/DonutChart.js +74 -90
  276. package/lib/es6/component/Chart/DonutChart.js.map +1 -1
  277. package/lib/es6/component/Chart/DonutChart.type.js.map +1 -1
  278. package/lib/es6/component/Chart/HistogramChart.js +121 -144
  279. package/lib/es6/component/Chart/HistogramChart.js.map +1 -1
  280. package/lib/es6/component/Chart/HistogramChart.type.js.map +1 -1
  281. package/lib/es6/component/Chart/LineChart.js +90 -109
  282. package/lib/es6/component/Chart/LineChart.js.map +1 -1
  283. package/lib/es6/component/Chart/LineChart.type.js.map +1 -1
  284. package/lib/es6/component/Chart/RadarChart.js +80 -107
  285. package/lib/es6/component/Chart/RadarChart.js.map +1 -1
  286. package/lib/es6/component/Chart/RadarChart.type.js.map +1 -1
  287. package/lib/es6/component/Chart/ScatterPlotChart.js +113 -138
  288. package/lib/es6/component/Chart/ScatterPlotChart.js.map +1 -1
  289. package/lib/es6/component/Chart/ScatterPlotChart.type.js.map +1 -1
  290. package/lib/es6/component/Chart/VennChart.js +97 -117
  291. package/lib/es6/component/Chart/VennChart.js.map +1 -1
  292. package/lib/es6/component/Chart/VennChart.type.js.map +1 -1
  293. package/lib/es6/component/ChartLegend/BaseLegend.js +70 -104
  294. package/lib/es6/component/ChartLegend/BaseLegend.js.map +1 -1
  295. package/lib/es6/component/ChartLegend/BaseLegend.type.js.map +1 -1
  296. package/lib/es6/component/ChartLegend/LegendFlex/LegendFlex.js +53 -65
  297. package/lib/es6/component/ChartLegend/LegendFlex/LegendFlex.js.map +1 -1
  298. package/lib/es6/component/ChartLegend/LegendFlex/LegendFlex.type.js.map +1 -1
  299. package/lib/es6/component/ChartLegend/LegendItem/LegendItem.js +198 -211
  300. package/lib/es6/component/ChartLegend/LegendItem/LegendItem.js.map +1 -1
  301. package/lib/es6/component/ChartLegend/LegendItem/LegendItem.type.js +1 -1
  302. package/lib/es6/component/ChartLegend/LegendItem/LegendItem.type.js.map +1 -1
  303. package/lib/es6/component/ChartLegend/LegendTable/LegendTable.js +58 -68
  304. package/lib/es6/component/ChartLegend/LegendTable/LegendTable.js.map +1 -1
  305. package/lib/es6/component/ChartLegend/LegendTable/LegendTable.type.js.map +1 -1
  306. package/lib/es6/component/Cigarette/Cigarette.js +108 -122
  307. package/lib/es6/component/Cigarette/Cigarette.js.map +1 -1
  308. package/lib/es6/component/StackGroupBar/StackGroupBar.js +100 -130
  309. package/lib/es6/component/StackGroupBar/StackGroupBar.js.map +1 -1
  310. package/lib/es6/component/SvgElement.js +4 -5
  311. package/lib/es6/component/SvgElement.js.map +1 -1
  312. package/lib/es6/createElement.js +55 -54
  313. package/lib/es6/createElement.js.map +1 -1
  314. package/lib/es6/style/axis.shadow.css +3 -0
  315. package/lib/es6/style/plot.shadow.css +1 -3
  316. package/lib/es6/style/plotA11yModule.shadow.css +10 -11
  317. package/lib/es6/style/plotA11yView.shadow.css +13 -26
  318. package/lib/es6/translations/__intergalactic-dynamic-locales.js +14 -14
  319. package/lib/es6/translations/__intergalactic-dynamic-locales.js.map +1 -1
  320. package/lib/es6/types/Axis.d.js.map +1 -1
  321. package/lib/es6/types/CompactHorizontalBar.d.js.map +1 -1
  322. package/lib/es6/types/Hover.d.js.map +1 -1
  323. package/lib/es6/types/Line.d.js.map +1 -1
  324. package/lib/es6/types/Plot.d.js.map +1 -1
  325. package/lib/es6/types/Radar.d.js.map +1 -1
  326. package/lib/es6/types/ResponsiveContainer.d.js.map +1 -1
  327. package/lib/es6/types/Tooltip.d.js.map +1 -1
  328. package/lib/es6/types/Venn.d.js.map +1 -1
  329. package/lib/es6/utils.js +105 -144
  330. package/lib/es6/utils.js.map +1 -1
  331. package/lib/esm/AnimatedClipPath.mjs +24 -36
  332. package/lib/esm/Area.mjs +178 -149
  333. package/lib/esm/Axis.mjs +241 -242
  334. package/lib/esm/Bar.mjs +155 -137
  335. package/lib/esm/Bubble.mjs +205 -171
  336. package/lib/esm/CompactHorizontalBar.mjs +428 -383
  337. package/lib/esm/Donut.mjs +315 -266
  338. package/lib/esm/Dots.mjs +60 -49
  339. package/lib/esm/GroupBar.mjs +71 -75
  340. package/lib/esm/HorizontalBar.mjs +142 -120
  341. package/lib/esm/Hover.mjs +173 -163
  342. package/lib/esm/Line.mjs +174 -145
  343. package/lib/esm/Pattern.mjs +67 -63
  344. package/lib/esm/Plot.mjs +98 -95
  345. package/lib/esm/Radar.mjs +550 -498
  346. package/lib/esm/RadialTree.mjs +512 -416
  347. package/lib/esm/Reference.mjs +137 -122
  348. package/lib/esm/ResponsiveContainer.mjs +58 -69
  349. package/lib/esm/ScatterPlot.mjs +163 -162
  350. package/lib/esm/StackBar.mjs +126 -147
  351. package/lib/esm/StackedArea.mjs +53 -61
  352. package/lib/esm/Tooltip.mjs +185 -175
  353. package/lib/esm/Venn.mjs +170 -170
  354. package/lib/esm/a11y/DataAccessibilityTable.mjs +46 -73
  355. package/lib/esm/a11y/PlotA11yModule.mjs +37 -80
  356. package/lib/esm/a11y/PlotA11yView.mjs +99 -74
  357. package/lib/esm/a11y/bezier.mjs +16 -23
  358. package/lib/esm/a11y/focus.mjs +15 -16
  359. package/lib/esm/a11y/hints.mjs +65 -71
  360. package/lib/esm/a11y/insights.mjs +347 -495
  361. package/lib/esm/a11y/intl.mjs +4 -5
  362. package/lib/esm/a11y/locale.mjs +12 -14
  363. package/lib/esm/a11y/serialize.mjs +139 -152
  364. package/lib/esm/a11y/summarize.mjs +3 -3
  365. package/lib/esm/a11y/translations/module/__intergalactic-dynamic-locales.mjs +1 -1
  366. package/lib/esm/a11y/translations/module/de.json.mjs +2 -4
  367. package/lib/esm/a11y/translations/module/en.json.mjs +2 -4
  368. package/lib/esm/a11y/translations/module/es.json.mjs +2 -4
  369. package/lib/esm/a11y/translations/module/fr.json.mjs +2 -4
  370. package/lib/esm/a11y/translations/module/it.json.mjs +2 -4
  371. package/lib/esm/a11y/translations/module/ja.json.mjs +2 -4
  372. package/lib/esm/a11y/translations/module/ko.json.mjs +2 -4
  373. package/lib/esm/a11y/translations/module/nl.json.mjs +2 -4
  374. package/lib/esm/a11y/translations/module/pl.json.mjs +2 -4
  375. package/lib/esm/a11y/translations/module/pt.json.mjs +2 -4
  376. package/lib/esm/a11y/translations/module/sv.json.mjs +2 -4
  377. package/lib/esm/a11y/translations/module/tr.json.mjs +2 -4
  378. package/lib/esm/a11y/translations/module/vi.json.mjs +2 -4
  379. package/lib/esm/a11y/translations/module/zh.json.mjs +2 -4
  380. package/lib/esm/a11y/translations/view/__intergalactic-dynamic-locales.mjs +1 -1
  381. package/lib/esm/color.mjs +1 -1
  382. package/lib/esm/component/Chart/AbstractChart.mjs +422 -415
  383. package/lib/esm/component/Chart/AreaChart.mjs +92 -91
  384. package/lib/esm/component/Chart/BarChart.mjs +225 -177
  385. package/lib/esm/component/Chart/BubbleChart.mjs +110 -118
  386. package/lib/esm/component/Chart/CigaretteChart.mjs +277 -268
  387. package/lib/esm/component/Chart/CompactHorizontalBarChart.mjs +70 -87
  388. package/lib/esm/component/Chart/DonutChart.mjs +74 -84
  389. package/lib/esm/component/Chart/HistogramChart.mjs +121 -117
  390. package/lib/esm/component/Chart/LineChart.mjs +90 -89
  391. package/lib/esm/component/Chart/RadarChart.mjs +81 -97
  392. package/lib/esm/component/Chart/ScatterPlotChart.mjs +113 -111
  393. package/lib/esm/component/Chart/VennChart.mjs +98 -111
  394. package/lib/esm/component/ChartLegend/BaseLegend.mjs +75 -97
  395. package/lib/esm/component/ChartLegend/LegendFlex/LegendFlex.mjs +54 -55
  396. package/lib/esm/component/ChartLegend/LegendItem/LegendItem.mjs +194 -165
  397. package/lib/esm/component/ChartLegend/LegendItem/LegendItem.type.mjs +1 -1
  398. package/lib/esm/component/ChartLegend/LegendTable/LegendTable.mjs +60 -58
  399. package/lib/esm/component/Cigarette/Cigarette.mjs +109 -99
  400. package/lib/esm/component/StackGroupBar/StackGroupBar.mjs +97 -111
  401. package/lib/esm/component/SvgElement.mjs +4 -4
  402. package/lib/esm/createElement.mjs +54 -37
  403. package/lib/esm/style/axis.shadow.css +3 -0
  404. package/lib/esm/style/plot.shadow.css +1 -3
  405. package/lib/esm/style/plotA11yModule.shadow.css +10 -11
  406. package/lib/esm/style/plotA11yView.shadow.css +13 -26
  407. package/lib/esm/translations/__intergalactic-dynamic-locales.mjs +1 -1
  408. package/lib/esm/utils.mjs +103 -138
  409. package/lib/types/Axis.d.ts +4 -0
  410. package/lib/types/CompactHorizontalBar.d.ts +1 -1
  411. package/lib/types/Hover.d.ts +1 -1
  412. package/lib/types/Line.d.ts +1 -1
  413. package/lib/types/Plot.d.ts +1 -1
  414. package/lib/types/Radar.d.ts +1 -1
  415. package/lib/types/ResponsiveContainer.d.ts +1 -1
  416. package/lib/types/Tooltip.d.ts +1 -3
  417. package/lib/types/Venn.d.ts +1 -1
  418. package/lib/types/a11y/PlotA11yModule.d.ts +4 -11
  419. package/lib/types/a11y/PlotA11yView.d.ts +12 -1
  420. package/lib/types/a11y/translations/module/__intergalactic-dynamic-locales.d.ts +14 -14
  421. package/lib/types/component/Chart/AbstractChart.d.ts +1 -1
  422. package/lib/types/component/Chart/AbstractChart.type.d.ts +1 -1
  423. package/lib/types/component/Chart/AreaChart.type.d.ts +1 -1
  424. package/lib/types/component/Chart/BarChart.type.d.ts +1 -1
  425. package/lib/types/component/Chart/BubbleChart.type.d.ts +1 -1
  426. package/lib/types/component/Chart/CompactHorizontalBarChart.type.d.ts +1 -1
  427. package/lib/types/component/Chart/DonutChart.type.d.ts +1 -1
  428. package/lib/types/component/Chart/HistogramChart.type.d.ts +1 -1
  429. package/lib/types/component/Chart/LineChart.type.d.ts +1 -1
  430. package/lib/types/component/Chart/RadarChart.type.d.ts +1 -1
  431. package/lib/types/component/Chart/ScatterPlotChart.type.d.ts +1 -1
  432. package/lib/types/component/Chart/VennChart.type.d.ts +1 -1
  433. package/lib/types/component/ChartLegend/BaseLegend.d.ts +1 -1
  434. package/lib/types/component/ChartLegend/BaseLegend.type.d.ts +1 -1
  435. package/lib/types/component/ChartLegend/LegendFlex/LegendFlex.type.d.ts +1 -1
  436. package/lib/types/component/ChartLegend/LegendItem/LegendItem.type.d.ts +1 -1
  437. package/lib/types/component/ChartLegend/LegendTable/LegendTable.type.d.ts +1 -1
  438. package/lib/types/utils.d.ts +10 -10
  439. package/package.json +11 -14
@@ -1 +1 @@
1
- {"version":3,"file":"Donut.js","names":["Component","Root","sstyled","callAllEventHandlers","canUseDOM","getOriginChildren","uniqueIDEnhancement","interpolate","arc","pie","transition","React","createElement","PatternFill","style","_sstyled","insert","Tooltip","getChartDefaultColorName","DEFAULT_INSTANCE","Symbol","transitionAnglePie","_ref6","selector","duration","halfsize","d3Arc","d3ArcOut","arcs","activeIndexPie","selection","selectAll","interrupt","attrTween","_","ind","d","Object","assign","self","initAngle","Math","PI","prevStartAngle","prevEndAngle","startAngle","endAngle","iStartAngle","iEndAngle","t","transitionRadiusPie","_ref7","data","element","innerRadius","outerRadiusStartEnd","paddingAngle","select","_outerRadiusStartEnd","_slicedToArray","start","end","iOuterRadius","outerRadiusPX","dataset","outerRadius","padAngle","increaseFactor","getOuterRadius","_ref8","size","_size","width","height","minORmax","max","min","DonutRoot","_Component","_this","_classCallCheck","_len","arguments","length","args","Array","_key","_callSuper","concat","_defineProperty","document","undefined","visible","props","tooltipProps","_ref9","clientX","clientY","_this$asProps","asProps","eventEmitter","plotId","emit","_ref0","active","_this$asProps2","canAnimatedHover","id","clearTimeout","animationTimeout","setTimeout","_this$asProps3","on","_inherits","_createClass","key","get","_this$asProps4","uid","value","generateGetBoundingClientRect","x","y","top","right","bottom","left","getArcs","_this$asProps5","Children","d3Pie","pieData","entries","keys","toArray","reduce","acc","child","isValidElement","type","Donut","Pie","push","dataKey","filter","_ref1","_ref10","includes","sort","_ref11","_ref12","_ref13","a","_ref14","b","indexOf","minValue","cur","map","handlerOnClick","_this2","e","stopPropagation","onClick","getPieProps","index","_this3","_this$asProps6","resolveColor","patterns","find","name","color","transparent","$animationActivePie","animationActivePie","onMouseMove","bindHandlerTooltip","onMouseLeave","onMouseOver","target","getAttribute","onMouseOut","onClickPieRoot","getEmptyDataProps","componentDidUpdate","prevProps","$rootProps","animationUpdatePie","componentDidMount","render","_this$asProps7","dataHintsHandler","establishDataType","_size2","Element","k","childrenPosition","transform","_ref18","_ref18$innerRadius","_ref18$paddingAngle","_ref18$halfsize","_ref19","_ref20","_ref15","_ref2","SPie","styles","other","_objectWithoutProperties","_excluded","_React$useState","useState","_React$useState2","isMount","setIsMount","pieRef","useRef","useEffect","current","Boolean","describeValueEntity","Fragment","cn","EmptyData","_ref16","_ref3","SEmptyData","Label","_ref17","_ref4","SLabel","children","label","_ref17$x","_ref17$y","setTitle","DonutTooltip","_ref","arguments[0]","_ref5","SDonutTooltip","_objectSpread","_assignProps","_______childrenComponents"],"sources":["../../src/Donut.jsx"],"sourcesContent":["import { Component, Root, sstyled } from '@semcore/core';\nimport { callAllEventHandlers } from '@semcore/core/lib/utils/assignProps';\nimport canUseDOM from '@semcore/core/lib/utils/canUseDOM';\nimport getOriginChildren from '@semcore/core/lib/utils/getOriginChildren';\nimport uniqueIDEnhancement from '@semcore/core/lib/utils/uniqueID';\nimport { interpolate } from 'd3-interpolate';\nimport { arc, pie } from 'd3-shape';\nimport { transition } from 'd3-transition';\nimport React from 'react';\n\nimport createElement from './createElement';\nimport { PatternFill } from './Pattern';\nimport style from './style/donut.shadow.css';\nimport Tooltip from './Tooltip';\nimport { getChartDefaultColorName } from './utils';\n\nconst DEFAULT_INSTANCE = Symbol('DEFAULT_INSTANCE');\n\nfunction transitionAnglePie({\n selector,\n duration,\n halfsize,\n d3Arc,\n d3ArcOut,\n arcs,\n activeIndexPie,\n}) {\n return transition()\n .selection()\n .selectAll(selector)\n .interrupt()\n .transition()\n .duration(duration)\n .attrTween('d', function (_, ind) {\n if (!arcs[ind]) return () => '';\n const d = Object.assign({}, arcs[ind]);\n const self = this;\n const initAngle = halfsize ? -Math.PI / 2 : 0;\n let prevStartAngle = initAngle;\n let prevEndAngle = initAngle;\n if (self.arc) {\n prevStartAngle = self.arc.startAngle;\n prevEndAngle = self.arc.endAngle;\n }\n const iStartAngle = interpolate(prevStartAngle, d.startAngle);\n const iEndAngle = interpolate(prevEndAngle, d.endAngle);\n return function (t) {\n d.startAngle = iStartAngle(t);\n d.endAngle = iEndAngle(t);\n self.arc = d;\n return ind === activeIndexPie ? d3ArcOut(self.arc) : d3Arc(self.arc);\n };\n });\n}\n\nfunction transitionRadiusPie({\n data,\n selector,\n element,\n duration,\n innerRadius,\n outerRadiusStartEnd,\n paddingAngle,\n}) {\n return transition()\n .selection()\n .select(selector)\n .interrupt()\n .transition()\n .duration(duration)\n .attrTween('d', function () {\n const [start, end] = outerRadiusStartEnd;\n const iOuterRadius = interpolate(start, end);\n return function (t) {\n const outerRadiusPX = iOuterRadius(t);\n element.dataset['currentRadius'] = outerRadiusPX;\n const d3ArcOut = arc()\n .innerRadius(innerRadius)\n .outerRadius(outerRadiusPX)\n .padAngle(paddingAngle);\n return d3ArcOut(data);\n };\n });\n}\n\nconst increaseFactor = 8;\n\nfunction getOuterRadius({ size, halfsize }) {\n const [width, height] = size;\n const minORmax = halfsize ? Math.max : Math.min;\n return minORmax(width - increaseFactor * 2, height - increaseFactor * 2) / 2;\n}\n\nclass DonutRoot extends Component {\n static displayName = 'Donut';\n static style = style;\n static enhance = [uniqueIDEnhancement()];\n\n static defaultProps = ({\n innerRadius = 0,\n paddingAngle = 0,\n outerRadius,\n halfsize = false,\n $rootProps: { size },\n }) => {\n const d3Arc = arc()\n .outerRadius(outerRadius || getOuterRadius({ size, halfsize, outerRadius }))\n .innerRadius(innerRadius)\n .padAngle(paddingAngle);\n\n const d3ArcOut = arc()\n .outerRadius((outerRadius || getOuterRadius({ size, halfsize })) + increaseFactor)\n .innerRadius(innerRadius)\n .padAngle(paddingAngle);\n\n let d3Pie = pie()\n .sort(null)\n .value(([, value]) => value);\n d3Pie[DEFAULT_INSTANCE] = true;\n\n if (halfsize) {\n d3Pie = d3Pie.startAngle(-Math.PI / 2).endAngle(Math.PI / 2);\n }\n return {\n d3Pie,\n d3Arc,\n d3ArcOut,\n duration: 500,\n paddingAngle,\n innerRadius,\n };\n };\n\n get id() {\n const { uid, id } = this.asProps;\n return id || uid;\n }\n\n virtualElement = canUseDOM() ? document.createElement('div') : {};\n activeIndexPie = undefined;\n canAnimatedHover = false;\n\n generateGetBoundingClientRect(x = 0, y = 0) {\n return () => ({ width: 0, height: 0, top: y, right: x, bottom: y, left: x });\n }\n\n getArcs() {\n const { Children, data, d3Pie } = this.asProps;\n let pieData = Object.entries(data);\n\n if (d3Pie[DEFAULT_INSTANCE]) {\n const keys = React.Children.toArray(getOriginChildren(Children)).reduce((acc, child) => {\n if (React.isValidElement(child) && child.type === Donut.Pie) {\n acc.push(child.props.dataKey);\n }\n return acc;\n }, []);\n pieData = Object.entries(data)\n .filter(([key, value]) => keys.includes(key) && value > 0)\n .sort(([a], [b]) => (keys.indexOf(a) > keys.indexOf(b) ? 1 : -1));\n }\n const minValue =\n pieData.reduce((acc, cur) => {\n if (cur[1]) acc += cur[1];\n return acc;\n }, 0) / 100;\n pieData = pieData.map((d) => {\n if (d[1] && d[1] < minValue) d[1] = minValue;\n return d;\n });\n return d3Pie(pieData);\n }\n\n bindHandlerTooltip = (visible, props, tooltipProps) => ({ clientX, clientY }) => {\n const { eventEmitter, plotId } = this.asProps;\n\n eventEmitter.emit(`setTooltipPosition_${plotId}`, clientX, clientY);\n eventEmitter.emit(`setTooltipRenderingProps_${plotId}`, props, tooltipProps);\n eventEmitter.emit(`setTooltipVisible_${plotId}`, visible);\n };\n\n animationActivePie = ({ data, active, selector, element }) => {\n const { duration, innerRadius, d3Arc, paddingAngle } = this.asProps;\n const outerRadius = d3Arc.outerRadius()();\n const outerRadiusStartEnd = active\n ? [+element.dataset['currentRadius'] || outerRadius, outerRadius + increaseFactor]\n : [+element.dataset['currentRadius'] || outerRadius, outerRadius];\n if (this.canAnimatedHover && duration > 0) {\n transitionRadiusPie({\n data,\n selector: `#${this.id} ${selector}`,\n element,\n duration: duration === 0 ? 0 : 300,\n innerRadius,\n outerRadiusStartEnd,\n paddingAngle,\n });\n }\n };\n\n animationTimeout = null;\n animationUpdatePie = () => {\n clearTimeout(this.animationTimeout);\n this.animationTimeout = setTimeout(() => {\n const { duration, d3Arc, halfsize, d3ArcOut } = this.asProps;\n this.canAnimatedHover = false;\n if (duration > 0) {\n transitionAnglePie({\n selector: `#${this.id} [data-ui-name=\"Donut.Pie\"]`,\n duration,\n arcs: this.arcs,\n halfsize,\n d3Arc,\n d3ArcOut,\n activeIndexPie: this.activeIndexPie,\n }).on('end', () => {\n this.canAnimatedHover = true;\n });\n } else {\n this.canAnimatedHover = true;\n }\n }, 0);\n };\n\n handlerOnClick(key) {\n return (e) => {\n e.stopPropagation();\n\n const { onClick } = this.asProps;\n\n if (!onClick) return;\n\n onClick(key, e);\n };\n }\n\n getPieProps(props, index) {\n const { d3Arc, d3ArcOut, innerRadius, outerRadius, halfsize, resolveColor, uid, patterns } =\n this.asProps;\n const { active } = props;\n const data = this.arcs.find((arc) => arc.data[0] === props.dataKey);\n if (active) {\n this.activeIndexPie = index;\n }\n const tooltipProps = {\n dataKey: props.dataKey,\n name: props.name,\n resolveColor,\n color: props.color || getChartDefaultColorName(index),\n active: props.active,\n transparent: props.transparent,\n patterns,\n };\n\n return {\n data,\n d3Arc,\n d3ArcOut,\n innerRadius,\n outerRadius,\n uid: `${uid}-${index}`,\n patterns,\n halfsize,\n color: props.color || getChartDefaultColorName(index),\n resolveColor,\n $animationActivePie: this.animationActivePie,\n onMouseMove: this.bindHandlerTooltip(true, props, tooltipProps),\n onMouseLeave: this.bindHandlerTooltip(false, props, tooltipProps),\n onMouseOver: (e) => {\n if (!active) {\n this.animationActivePie({\n active: true,\n data,\n selector: `[d=\"${e.target.getAttribute('d')}\"]`,\n element: e.target,\n });\n }\n },\n onMouseOut: (e) => {\n if (!active) {\n this.animationActivePie({\n active: false,\n data,\n selector: `[d=\"${e.target.getAttribute('d')}\"]`,\n element: e.target,\n });\n }\n },\n onClickPieRoot: this.handlerOnClick(props.dataKey),\n };\n }\n\n getEmptyDataProps() {\n const { d3Arc } = this.asProps;\n return {\n d3Arc,\n };\n }\n\n componentDidUpdate(prevProps) {\n const { data } = this.asProps;\n if (prevProps.$rootProps.data !== data) {\n this.animationUpdatePie();\n }\n }\n\n componentDidMount() {\n this.animationUpdatePie();\n }\n\n render() {\n const { halfsize, size } = this.asProps;\n this.asProps.dataHintsHandler.establishDataType('values-set');\n const [width, height] = size;\n const Element = this.Element;\n const k = halfsize ? 1 : 2;\n this.arcs = this.getArcs();\n return (\n <Element\n aria-hidden\n id={this.id}\n render='g'\n childrenPosition='inside'\n transform={`translate(${width / 2},${height / k})`}\n />\n );\n }\n}\n\nfunction Pie({\n Element: SPie,\n styles,\n d3Arc,\n data,\n color,\n $animationActivePie,\n active,\n d3ArcOut,\n name,\n dataKey,\n dataHintsHandler,\n transparent,\n innerRadius,\n outerRadius,\n resolveColor,\n halfsize,\n uid,\n patterns,\n onClick,\n onClickPieRoot,\n ...other\n}) {\n const [isMount, setIsMount] = React.useState(false);\n const pieRef = React.useRef(null);\n\n React.useEffect(() => {\n if (!pieRef.current) return;\n pieRef.current.dataset['currentRadius'] = (active ? d3ArcOut : d3Arc).outerRadius()();\n\n // do not run animation on first render\n if (!isMount) {\n setIsMount(true);\n return;\n }\n if (active !== undefined && active !== null) {\n $animationActivePie({\n active,\n data,\n selector: `[name=\"${other.name}\"]`,\n element: pieRef.current,\n });\n }\n }, [active, Boolean(data)]);\n React.useEffect(() => {\n if (!pieRef.current) return;\n pieRef.current.dataset['currentRadius'] = (active ? d3ArcOut : d3Arc).outerRadius()();\n }, [active, innerRadius, outerRadius, halfsize, Boolean(data)]);\n\n if (!data) return null;\n\n dataHintsHandler.establishDataType('values-set');\n dataHintsHandler.describeValueEntity(dataKey, name);\n\n return (\n <React.Fragment>\n {sstyled(styles)(\n <SPie\n render='path'\n ref={pieRef}\n color={resolveColor(color)}\n pattern={patterns ? `url(#${uid}-pattern)` : undefined}\n d={active ? d3ArcOut(data) : d3Arc(data)}\n transparent={transparent}\n use:onClick={callAllEventHandlers(onClickPieRoot, onClick)}\n />,\n )}\n {patterns && (\n <PatternFill\n id={`${uid}-pattern`}\n patternKey={color}\n color={resolveColor(color)}\n patterns={patterns}\n />\n )}\n </React.Fragment>\n );\n}\n\nfunction EmptyData({ Element: SEmptyData, styles, d3Arc, color, resolveColor }) {\n return sstyled(styles)(\n <SEmptyData\n render='path'\n color={resolveColor(color)}\n d={d3Arc({ endAngle: Math.PI * 2, startAngle: 0 })}\n />,\n );\n}\n\nfunction Label({\n Element: SLabel,\n styles,\n Children,\n children,\n label,\n dataHintsHandler,\n x = 0,\n y = 0,\n}) {\n dataHintsHandler.setTitle('vertical', label || children);\n\n return sstyled(styles)(\n <SLabel render='text' x={x} y={y} aria-hidden>\n <Children />\n </SLabel>,\n );\n}\n\nfunction DonutTooltip(props) {\n const SDonutTooltip = Root;\n return sstyled(props.styles)(<SDonutTooltip render={Tooltip} excludeAnchorProps />);\n};\n\nconst Donut = createElement(DonutRoot, {\n Pie,\n Label,\n EmptyData,\n Tooltip: [DonutTooltip, Tooltip._______childrenComponents],\n});\n\nexport default Donut;\n"],"mappings":";;;;;;;;;;;AAAA,SAASA,SAAS,EAAEC,IAAI,EAAEC,OAAO,QAAQ,eAAe;AACxD,SAASC,oBAAoB,QAAQ,qCAAqC;AAC1E,OAAOC,SAAS,MAAM,mCAAmC;AACzD,OAAOC,iBAAiB,MAAM,2CAA2C;AACzE,OAAOC,mBAAmB,MAAM,kCAAkC;AAClE,SAASC,WAAW,QAAQ,gBAAgB;AAC5C,SAASC,GAAG,EAAEC,GAAG,QAAQ,UAAU;AACnC,SAASC,UAAU,QAAQ,eAAe;AAC1C,OAAOC,KAAK,MAAM,OAAO;AAEzB,OAAOC,aAAa,MAAM,iBAAiB;AAC3C,SAASC,WAAW,QAAQ,WAAW;AAAC;AAAA,IAAAC,KAAA,8BAAAC,QAAA,CAAAC,MAAA;AAAA;AAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;AAAA;AAExC,OAAOC,OAAO,MAAM,WAAW;AAC/B,SAASC,wBAAwB,QAAQ,SAAS;AAElD,IAAMC,gBAAgB,GAAGC,MAAM,CAAC,kBAAkB,CAAC;AAEnD,SAASC,kBAAkBA,CAAAC,KAAA,EAQxB;EAAA,IAPDC,QAAQ,GAAAD,KAAA,CAARC,QAAQ;IACRC,QAAQ,GAAAF,KAAA,CAARE,QAAQ;IACRC,QAAQ,GAAAH,KAAA,CAARG,QAAQ;IACRC,KAAK,GAAAJ,KAAA,CAALI,KAAK;IACLC,QAAQ,GAAAL,KAAA,CAARK,QAAQ;IACRC,IAAI,GAAAN,KAAA,CAAJM,IAAI;IACJC,cAAc,GAAAP,KAAA,CAAdO,cAAc;EAEd,OAAOnB,UAAU,CAAC,CAAC,CAChBoB,SAAS,CAAC,CAAC,CACXC,SAAS,CAACR,QAAQ,CAAC,CACnBS,SAAS,CAAC,CAAC,CACXtB,UAAU,CAAC,CAAC,CACZc,QAAQ,CAACA,QAAQ,CAAC,CAClBS,SAAS,CAAC,GAAG,EAAE,UAAUC,CAAC,EAAEC,GAAG,EAAE;IAChC,IAAI,CAACP,IAAI,CAACO,GAAG,CAAC,EAAE,OAAO;MAAA,OAAM,EAAE;IAAA;IAC/B,IAAMC,CAAC,GAAGC,MAAM,CAACC,MAAM,CAAC,CAAC,CAAC,EAAEV,IAAI,CAACO,GAAG,CAAC,CAAC;IACtC,IAAMI,IAAI,GAAG,IAAI;IACjB,IAAMC,SAAS,GAAGf,QAAQ,GAAG,CAACgB,IAAI,CAACC,EAAE,GAAG,CAAC,GAAG,CAAC;IAC7C,IAAIC,cAAc,GAAGH,SAAS;IAC9B,IAAII,YAAY,GAAGJ,SAAS;IAC5B,IAAID,IAAI,CAAC/B,GAAG,EAAE;MACZmC,cAAc,GAAGJ,IAAI,CAAC/B,GAAG,CAACqC,UAAU;MACpCD,YAAY,GAAGL,IAAI,CAAC/B,GAAG,CAACsC,QAAQ;IAClC;IACA,IAAMC,WAAW,GAAGxC,WAAW,CAACoC,cAAc,EAAEP,CAAC,CAACS,UAAU,CAAC;IAC7D,IAAMG,SAAS,GAAGzC,WAAW,CAACqC,YAAY,EAAER,CAAC,CAACU,QAAQ,CAAC;IACvD,OAAO,UAAUG,CAAC,EAAE;MAClBb,CAAC,CAACS,UAAU,GAAGE,WAAW,CAACE,CAAC,CAAC;MAC7Bb,CAAC,CAACU,QAAQ,GAAGE,SAAS,CAACC,CAAC,CAAC;MACzBV,IAAI,CAAC/B,GAAG,GAAG4B,CAAC;MACZ,OAAOD,GAAG,KAAKN,cAAc,GAAGF,QAAQ,CAACY,IAAI,CAAC/B,GAAG,CAAC,GAAGkB,KAAK,CAACa,IAAI,CAAC/B,GAAG,CAAC;IACtE,CAAC;EACH,CAAC,CAAC;AACN;AAEA,SAAS0C,mBAAmBA,CAAAC,KAAA,EAQzB;EAAA,IAPDC,IAAI,GAAAD,KAAA,CAAJC,IAAI;IACJ7B,QAAQ,GAAA4B,KAAA,CAAR5B,QAAQ;IACR8B,OAAO,GAAAF,KAAA,CAAPE,OAAO;IACP7B,QAAQ,GAAA2B,KAAA,CAAR3B,QAAQ;IACR8B,WAAW,GAAAH,KAAA,CAAXG,WAAW;IACXC,mBAAmB,GAAAJ,KAAA,CAAnBI,mBAAmB;IACnBC,YAAY,GAAAL,KAAA,CAAZK,YAAY;EAEZ,OAAO9C,UAAU,CAAC,CAAC,CAChBoB,SAAS,CAAC,CAAC,CACX2B,MAAM,CAAClC,QAAQ,CAAC,CAChBS,SAAS,CAAC,CAAC,CACXtB,UAAU,CAAC,CAAC,CACZc,QAAQ,CAACA,QAAQ,CAAC,CAClBS,SAAS,CAAC,GAAG,EAAE,YAAY;IAC1B,IAAAyB,oBAAA,GAAAC,cAAA,CAAqBJ,mBAAmB;MAAjCK,KAAK,GAAAF,oBAAA;MAAEG,GAAG,GAAAH,oBAAA;IACjB,IAAMI,YAAY,GAAGvD,WAAW,CAACqD,KAAK,EAAEC,GAAG,CAAC;IAC5C,OAAO,UAAUZ,CAAC,EAAE;MAClB,IAAMc,aAAa,GAAGD,YAAY,CAACb,CAAC,CAAC;MACrCI,OAAO,CAACW,OAAO,CAAC,eAAe,CAAC,GAAGD,aAAa;MAChD,IAAMpC,QAAQ,GAAGnB,GAAG,CAAC,CAAC,CACnB8C,WAAW,CAACA,WAAW,CAAC,CACxBW,WAAW,CAACF,aAAa,CAAC,CAC1BG,QAAQ,CAACV,YAAY,CAAC;MACzB,OAAO7B,QAAQ,CAACyB,IAAI,CAAC;IACvB,CAAC;EACH,CAAC,CAAC;AACN;AAEA,IAAMe,cAAc,GAAG,CAAC;AAExB,SAASC,cAAcA,CAAAC,KAAA,EAAqB;EAAA,IAAlBC,IAAI,GAAAD,KAAA,CAAJC,IAAI;IAAE7C,QAAQ,GAAA4C,KAAA,CAAR5C,QAAQ;EACtC,IAAA8C,KAAA,GAAAZ,cAAA,CAAwBW,IAAI;IAArBE,KAAK,GAAAD,KAAA;IAAEE,MAAM,GAAAF,KAAA;EACpB,IAAMG,QAAQ,GAAGjD,QAAQ,GAAGgB,IAAI,CAACkC,GAAG,GAAGlC,IAAI,CAACmC,GAAG;EAC/C,OAAOF,QAAQ,CAACF,KAAK,GAAGL,cAAc,GAAG,CAAC,EAAEM,MAAM,GAAGN,cAAc,GAAG,CAAC,CAAC,GAAG,CAAC;AAC9E;AAAC,IAEKU,SAAS,0BAAAC,UAAA;EAAA,SAAAD,UAAA;IAAA,IAAAE,KAAA;IAAAC,eAAA,OAAAH,SAAA;IAAA,SAAAI,IAAA,GAAAC,SAAA,CAAAC,MAAA,EAAAC,IAAA,OAAAC,KAAA,CAAAJ,IAAA,GAAAK,IAAA,MAAAA,IAAA,GAAAL,IAAA,EAAAK,IAAA;MAAAF,IAAA,CAAAE,IAAA,IAAAJ,SAAA,CAAAI,IAAA;IAAA;IAAAP,KAAA,GAAAQ,UAAA,OAAAV,SAAA,KAAAW,MAAA,CAAAJ,IAAA;IAAAK,eAAA,CAAAV,KAAA,oBA6CI3E,SAAS,CAAC,CAAC,GAAGsF,QAAQ,CAAC9E,aAAa,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAAA6E,eAAA,CAAAV,KAAA,oBAChDY,SAAS;IAAAF,eAAA,CAAAV,KAAA,sBACP,KAAK;IAAAU,eAAA,CAAAV,KAAA,wBAiCH,UAACa,OAAO,EAAEC,KAAK,EAAEC,YAAY;MAAA,OAAK,UAAAC,KAAA,EAA0B;QAAA,IAAvBC,OAAO,GAAAD,KAAA,CAAPC,OAAO;UAAEC,OAAO,GAAAF,KAAA,CAAPE,OAAO;QACxE,IAAAC,aAAA,GAAiCnB,KAAA,CAAKoB,OAAO;UAArCC,YAAY,GAAAF,aAAA,CAAZE,YAAY;UAAEC,MAAM,GAAAH,aAAA,CAANG,MAAM;QAE5BD,YAAY,CAACE,IAAI,uBAAAd,MAAA,CAAuBa,MAAM,GAAIL,OAAO,EAAEC,OAAO,CAAC;QACnEG,YAAY,CAACE,IAAI,6BAAAd,MAAA,CAA6Ba,MAAM,GAAIR,KAAK,EAAEC,YAAY,CAAC;QAC5EM,YAAY,CAACE,IAAI,sBAAAd,MAAA,CAAsBa,MAAM,GAAIT,OAAO,CAAC;MAC3D,CAAC;IAAA;IAAAH,eAAA,CAAAV,KAAA,wBAEoB,UAAAwB,KAAA,EAAyC;MAAA,IAAtCnD,IAAI,GAAAmD,KAAA,CAAJnD,IAAI;QAAEoD,MAAM,GAAAD,KAAA,CAANC,MAAM;QAAEjF,QAAQ,GAAAgF,KAAA,CAARhF,QAAQ;QAAE8B,OAAO,GAAAkD,KAAA,CAAPlD,OAAO;MACrD,IAAAoD,cAAA,GAAuD1B,KAAA,CAAKoB,OAAO;QAA3D3E,QAAQ,GAAAiF,cAAA,CAARjF,QAAQ;QAAE8B,WAAW,GAAAmD,cAAA,CAAXnD,WAAW;QAAE5B,KAAK,GAAA+E,cAAA,CAAL/E,KAAK;QAAE8B,YAAY,GAAAiD,cAAA,CAAZjD,YAAY;MAClD,IAAMS,WAAW,GAAGvC,KAAK,CAACuC,WAAW,CAAC,CAAC,CAAC,CAAC;MACzC,IAAMV,mBAAmB,GAAGiD,MAAM,GAC9B,CAAC,CAACnD,OAAO,CAACW,OAAO,CAAC,eAAe,CAAC,IAAIC,WAAW,EAAEA,WAAW,GAAGE,cAAc,CAAC,GAChF,CAAC,CAACd,OAAO,CAACW,OAAO,CAAC,eAAe,CAAC,IAAIC,WAAW,EAAEA,WAAW,CAAC;MACnE,IAAIc,KAAA,CAAK2B,gBAAgB,IAAIlF,QAAQ,GAAG,CAAC,EAAE;QACzC0B,mBAAmB,CAAC;UAClBE,IAAI,EAAJA,IAAI;UACJ7B,QAAQ,MAAAiE,MAAA,CAAMT,KAAA,CAAK4B,EAAE,OAAAnB,MAAA,CAAIjE,QAAQ,CAAE;UACnC8B,OAAO,EAAPA,OAAO;UACP7B,QAAQ,EAAEA,QAAQ,KAAK,CAAC,GAAG,CAAC,GAAG,GAAG;UAClC8B,WAAW,EAAXA,WAAW;UACXC,mBAAmB,EAAnBA,mBAAmB;UACnBC,YAAY,EAAZA;QACF,CAAC,CAAC;MACJ;IACF,CAAC;IAAAiC,eAAA,CAAAV,KAAA,sBAEkB,IAAI;IAAAU,eAAA,CAAAV,KAAA,wBACF,YAAM;MACzB6B,YAAY,CAAC7B,KAAA,CAAK8B,gBAAgB,CAAC;MACnC9B,KAAA,CAAK8B,gBAAgB,GAAGC,UAAU,CAAC,YAAM;QACvC,IAAAC,cAAA,GAAgDhC,KAAA,CAAKoB,OAAO;UAApD3E,QAAQ,GAAAuF,cAAA,CAARvF,QAAQ;UAAEE,KAAK,GAAAqF,cAAA,CAALrF,KAAK;UAAED,QAAQ,GAAAsF,cAAA,CAARtF,QAAQ;UAAEE,QAAQ,GAAAoF,cAAA,CAARpF,QAAQ;QAC3CoD,KAAA,CAAK2B,gBAAgB,GAAG,KAAK;QAC7B,IAAIlF,QAAQ,GAAG,CAAC,EAAE;UAChBH,kBAAkB,CAAC;YACjBE,QAAQ,MAAAiE,MAAA,CAAMT,KAAA,CAAK4B,EAAE,kCAA6B;YAClDnF,QAAQ,EAARA,QAAQ;YACRI,IAAI,EAAEmD,KAAA,CAAKnD,IAAI;YACfH,QAAQ,EAARA,QAAQ;YACRC,KAAK,EAALA,KAAK;YACLC,QAAQ,EAARA,QAAQ;YACRE,cAAc,EAAEkD,KAAA,CAAKlD;UACvB,CAAC,CAAC,CAACmF,EAAE,CAAC,KAAK,EAAE,YAAM;YACjBjC,KAAA,CAAK2B,gBAAgB,GAAG,IAAI;UAC9B,CAAC,CAAC;QACJ,CAAC,MAAM;UACL3B,KAAA,CAAK2B,gBAAgB,GAAG,IAAI;QAC9B;MACF,CAAC,EAAE,CAAC,CAAC;IACP,CAAC;IAAA,OAAA3B,KAAA;EAAA;EAAAkC,SAAA,CAAApC,SAAA,EAAAC,UAAA;EAAA,OAAAoC,YAAA,CAAArC,SAAA;IAAAsC,GAAA;IAAAC,GAAA,EAzFD,SAAAA,IAAA,EAAS;MACP,IAAAC,cAAA,GAAoB,IAAI,CAAClB,OAAO;QAAxBmB,GAAG,GAAAD,cAAA,CAAHC,GAAG;QAAEX,EAAE,GAAAU,cAAA,CAAFV,EAAE;MACf,OAAOA,EAAE,IAAIW,GAAG;IAClB;EAAC;IAAAH,GAAA;IAAAI,KAAA,EAMD,SAAAC,6BAA6BA,CAAA,EAAe;MAAA,IAAdC,CAAC,GAAAvC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAS,SAAA,GAAAT,SAAA,MAAG,CAAC;MAAA,IAAEwC,CAAC,GAAAxC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAS,SAAA,GAAAT,SAAA,MAAG,CAAC;MACxC,OAAO;QAAA,OAAO;UAAEV,KAAK,EAAE,CAAC;UAAEC,MAAM,EAAE,CAAC;UAAEkD,GAAG,EAAED,CAAC;UAAEE,KAAK,EAAEH,CAAC;UAAEI,MAAM,EAAEH,CAAC;UAAEI,IAAI,EAAEL;QAAE,CAAC;MAAA,CAAC;IAC9E;EAAC;IAAAN,GAAA;IAAAI,KAAA,EAED,SAAAQ,OAAOA,CAAA,EAAG;MACR,IAAAC,cAAA,GAAkC,IAAI,CAAC7B,OAAO;QAAtC8B,QAAQ,GAAAD,cAAA,CAARC,QAAQ;QAAE7E,IAAI,GAAA4E,cAAA,CAAJ5E,IAAI;QAAE8E,KAAK,GAAAF,cAAA,CAALE,KAAK;MAC7B,IAAIC,OAAO,GAAG9F,MAAM,CAAC+F,OAAO,CAAChF,IAAI,CAAC;MAElC,IAAI8E,KAAK,CAAC/G,gBAAgB,CAAC,EAAE;QAC3B,IAAMkH,IAAI,GAAG1H,KAAK,CAACsH,QAAQ,CAACK,OAAO,CAACjI,iBAAiB,CAAC4H,QAAQ,CAAC,CAAC,CAACM,MAAM,CAAC,UAACC,GAAG,EAAEC,KAAK,EAAK;UACtF,IAAI,aAAA9H,KAAK,CAAC+H,cAAc,CAACD,KAAK,CAAC,IAAIA,KAAK,CAACE,IAAI,KAAKC,KAAK,CAACC,GAAG,EAAE;YAC3DL,GAAG,CAACM,IAAI,CAACL,KAAK,CAAC5C,KAAK,CAACkD,OAAO,CAAC;UAC/B;UACA,OAAOP,GAAG;QACZ,CAAC,EAAE,EAAE,CAAC;QACNL,OAAO,GAAG9F,MAAM,CAAC+F,OAAO,CAAChF,IAAI,CAAC,CAC3B4F,MAAM,CAAC,UAAAC,KAAA;UAAA,IAAAC,MAAA,GAAAvF,cAAA,CAAAsF,KAAA;YAAE9B,GAAG,GAAA+B,MAAA;YAAE3B,KAAK,GAAA2B,MAAA;UAAA,OAAMb,IAAI,CAACc,QAAQ,CAAChC,GAAG,CAAC,IAAII,KAAK,GAAG,CAAC;QAAA,EAAC,CACzD6B,IAAI,CAAC,UAAAC,MAAA,EAAAC,MAAA;UAAA,IAAAC,MAAA,GAAA5F,cAAA,CAAA0F,MAAA;YAAEG,CAAC,GAAAD,MAAA;UAAA,IAAAE,MAAA,GAAA9F,cAAA,CAAA2F,MAAA;YAAII,CAAC,GAAAD,MAAA;UAAA,OAAOpB,IAAI,CAACsB,OAAO,CAACH,CAAC,CAAC,GAAGnB,IAAI,CAACsB,OAAO,CAACD,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAAA,CAAC,CAAC;MACrE;MACA,IAAME,QAAQ,GACZzB,OAAO,CAACI,MAAM,CAAC,UAACC,GAAG,EAAEqB,GAAG,EAAK;QAC3B,IAAIA,GAAG,CAAC,CAAC,CAAC,EAAErB,GAAG,IAAIqB,GAAG,CAAC,CAAC,CAAC;QACzB,OAAOrB,GAAG;MACZ,CAAC,EAAE,CAAC,CAAC,GAAG,GAAG;MACbL,OAAO,GAAGA,OAAO,CAAC2B,GAAG,CAAC,UAAC1H,CAAC,EAAK;QAC3B,IAAIA,CAAC,CAAC,CAAC,CAAC,IAAIA,CAAC,CAAC,CAAC,CAAC,GAAGwH,QAAQ,EAAExH,CAAC,CAAC,CAAC,CAAC,GAAGwH,QAAQ;QAC5C,OAAOxH,CAAC;MACV,CAAC,CAAC;MACF,OAAO8F,KAAK,CAACC,OAAO,CAAC;IACvB;EAAC;IAAAhB,GAAA;IAAAI,KAAA,EAqDD,SAAAwC,cAAcA,CAAC5C,GAAG,EAAE;MAAA,IAAA6C,MAAA;MAClB,OAAO,UAACC,CAAC,EAAK;QACZA,CAAC,CAACC,eAAe,CAAC,CAAC;QAEnB,IAAQC,OAAO,GAAKH,MAAI,CAAC7D,OAAO,CAAxBgE,OAAO;QAEf,IAAI,CAACA,OAAO,EAAE;QAEdA,OAAO,CAAChD,GAAG,EAAE8C,CAAC,CAAC;MACjB,CAAC;IACH;EAAC;IAAA9C,GAAA;IAAAI,KAAA,EAED,SAAA6C,WAAWA,CAACvE,KAAK,EAAEwE,KAAK,EAAE;MAAA,IAAAC,MAAA;MACxB,IAAAC,cAAA,GACE,IAAI,CAACpE,OAAO;QADNzE,KAAK,GAAA6I,cAAA,CAAL7I,KAAK;QAAEC,QAAQ,GAAA4I,cAAA,CAAR5I,QAAQ;QAAE2B,WAAW,GAAAiH,cAAA,CAAXjH,WAAW;QAAEW,WAAW,GAAAsG,cAAA,CAAXtG,WAAW;QAAExC,QAAQ,GAAA8I,cAAA,CAAR9I,QAAQ;QAAE+I,YAAY,GAAAD,cAAA,CAAZC,YAAY;QAAElD,GAAG,GAAAiD,cAAA,CAAHjD,GAAG;QAAEmD,QAAQ,GAAAF,cAAA,CAARE,QAAQ;MAExF,IAAQjE,MAAM,GAAKX,KAAK,CAAhBW,MAAM;MACd,IAAMpD,IAAI,GAAG,IAAI,CAACxB,IAAI,CAAC8I,IAAI,CAAC,UAAClK,GAAG;QAAA,OAAKA,GAAG,CAAC4C,IAAI,CAAC,CAAC,CAAC,KAAKyC,KAAK,CAACkD,OAAO;MAAA,EAAC;MACnE,IAAIvC,MAAM,EAAE;QACV,IAAI,CAAC3E,cAAc,GAAGwI,KAAK;MAC7B;MACA,IAAMvE,YAAY,GAAG;QACnBiD,OAAO,EAAElD,KAAK,CAACkD,OAAO;QACtB4B,IAAI,EAAE9E,KAAK,CAAC8E,IAAI;QAChBH,YAAY,EAAZA,YAAY;QACZI,KAAK,EAAE/E,KAAK,CAAC+E,KAAK,IAAI1J,wBAAwB,CAACmJ,KAAK,CAAC;QACrD7D,MAAM,EAAEX,KAAK,CAACW,MAAM;QACpBqE,WAAW,EAAEhF,KAAK,CAACgF,WAAW;QAC9BJ,QAAQ,EAARA;MACF,CAAC;MAED,OAAO;QACLrH,IAAI,EAAJA,IAAI;QACJ1B,KAAK,EAALA,KAAK;QACLC,QAAQ,EAARA,QAAQ;QACR2B,WAAW,EAAXA,WAAW;QACXW,WAAW,EAAXA,WAAW;QACXqD,GAAG,KAAA9B,MAAA,CAAK8B,GAAG,OAAA9B,MAAA,CAAI6E,KAAK,CAAE;QACtBI,QAAQ,EAARA,QAAQ;QACRhJ,QAAQ,EAARA,QAAQ;QACRmJ,KAAK,EAAE/E,KAAK,CAAC+E,KAAK,IAAI1J,wBAAwB,CAACmJ,KAAK,CAAC;QACrDG,YAAY,EAAZA,YAAY;QACZM,mBAAmB,EAAE,IAAI,CAACC,kBAAkB;QAC5CC,WAAW,EAAE,IAAI,CAACC,kBAAkB,CAAC,IAAI,EAAEpF,KAAK,EAAEC,YAAY,CAAC;QAC/DoF,YAAY,EAAE,IAAI,CAACD,kBAAkB,CAAC,KAAK,EAAEpF,KAAK,EAAEC,YAAY,CAAC;QACjEqF,WAAW,EAAE,SAAbA,WAAWA,CAAGlB,CAAC,EAAK;UAClB,IAAI,CAACzD,MAAM,EAAE;YACX8D,MAAI,CAACS,kBAAkB,CAAC;cACtBvE,MAAM,EAAE,IAAI;cACZpD,IAAI,EAAJA,IAAI;cACJ7B,QAAQ,UAAAiE,MAAA,CAASyE,CAAC,CAACmB,MAAM,CAACC,YAAY,CAAC,GAAG,CAAC,QAAI;cAC/ChI,OAAO,EAAE4G,CAAC,CAACmB;YACb,CAAC,CAAC;UACJ;QACF,CAAC;QACDE,UAAU,EAAE,SAAZA,UAAUA,CAAGrB,CAAC,EAAK;UACjB,IAAI,CAACzD,MAAM,EAAE;YACX8D,MAAI,CAACS,kBAAkB,CAAC;cACtBvE,MAAM,EAAE,KAAK;cACbpD,IAAI,EAAJA,IAAI;cACJ7B,QAAQ,UAAAiE,MAAA,CAASyE,CAAC,CAACmB,MAAM,CAACC,YAAY,CAAC,GAAG,CAAC,QAAI;cAC/ChI,OAAO,EAAE4G,CAAC,CAACmB;YACb,CAAC,CAAC;UACJ;QACF,CAAC;QACDG,cAAc,EAAE,IAAI,CAACxB,cAAc,CAAClE,KAAK,CAACkD,OAAO;MACnD,CAAC;IACH;EAAC;IAAA5B,GAAA;IAAAI,KAAA,EAED,SAAAiE,iBAAiBA,CAAA,EAAG;MAClB,IAAQ9J,KAAK,GAAK,IAAI,CAACyE,OAAO,CAAtBzE,KAAK;MACb,OAAO;QACLA,KAAK,EAALA;MACF,CAAC;IACH;EAAC;IAAAyF,GAAA;IAAAI,KAAA,EAED,SAAAkE,kBAAkBA,CAACC,SAAS,EAAE;MAC5B,IAAQtI,IAAI,GAAK,IAAI,CAAC+C,OAAO,CAArB/C,IAAI;MACZ,IAAIsI,SAAS,CAACC,UAAU,CAACvI,IAAI,KAAKA,IAAI,EAAE;QACtC,IAAI,CAACwI,kBAAkB,CAAC,CAAC;MAC3B;IACF;EAAC;IAAAzE,GAAA;IAAAI,KAAA,EAED,SAAAsE,iBAAiBA,CAAA,EAAG;MAClB,IAAI,CAACD,kBAAkB,CAAC,CAAC;IAC3B;EAAC;IAAAzE,GAAA;IAAAI,KAAA,EAED,SAAAuE,MAAMA,CAAA,EAAG;MACP,IAAAC,cAAA,GAA2B,IAAI,CAAC5F,OAAO;QAA/B1E,QAAQ,GAAAsK,cAAA,CAARtK,QAAQ;QAAE6C,IAAI,GAAAyH,cAAA,CAAJzH,IAAI;MACtB,IAAI,CAAC6B,OAAO,CAAC6F,gBAAgB,CAACC,iBAAiB,CAAC,YAAY,CAAC;MAC7D,IAAAC,MAAA,GAAAvI,cAAA,CAAwBW,IAAI;QAArBE,KAAK,GAAA0H,MAAA;QAAEzH,MAAM,GAAAyH,MAAA;MACpB,IAAMC,OAAO,GAAG,IAAI,CAACA,OAAO;MAC5B,IAAMC,CAAC,GAAG3K,QAAQ,GAAG,CAAC,GAAG,CAAC;MAC1B,IAAI,CAACG,IAAI,GAAG,IAAI,CAACmG,OAAO,CAAC,CAAC;MAC1B,oBACEpH,KAAA,CAAAC,aAAA,CAACuL,OAAO;QACN,mBAAW;QACXxF,EAAE,EAAE,IAAI,CAACA,EAAG;QACZmF,MAAM,EAAC,GAAG;QACVO,gBAAgB,EAAC,QAAQ;QACzBC,SAAS,eAAA9G,MAAA,CAAehB,KAAK,GAAG,CAAC,OAAAgB,MAAA,CAAIf,MAAM,GAAG2H,CAAC;MAAI,CACpD,CAAC;IAEN;EAAC;AAAA,EAzOqBpM,SAAS;AAAAyF,eAAA,CAA3BZ,SAAS,iBACQ,OAAO;AAAAY,eAAA,CADxBZ,SAAS,WAEE/D,KAAK;AAAA2E,eAAA,CAFhBZ,SAAS,aAGI,CAACvE,mBAAmB,CAAC,CAAC,CAAC;AAAAmF,eAAA,CAHpCZ,SAAS,kBAKS,UAAA0H,MAAA,EAMhB;EAAA,IAAAC,kBAAA,GAAAD,MAAA,CALJjJ,WAAW;IAAXA,WAAW,GAAAkJ,kBAAA,cAAG,CAAC,GAAAA,kBAAA;IAAAC,mBAAA,GAAAF,MAAA,CACf/I,YAAY;IAAZA,YAAY,GAAAiJ,mBAAA,cAAG,CAAC,GAAAA,mBAAA;IAChBxI,WAAW,GAAAsI,MAAA,CAAXtI,WAAW;IAAAyI,eAAA,GAAAH,MAAA,CACX9K,QAAQ;IAARA,QAAQ,GAAAiL,eAAA,cAAG,KAAK,GAAAA,eAAA;IACFpI,IAAI,GAAAiI,MAAA,CAAlBZ,UAAU,CAAIrH,IAAI;EAElB,IAAM5C,KAAK,GAAGlB,GAAG,CAAC,CAAC,CAChByD,WAAW,CAACA,WAAW,IAAIG,cAAc,CAAC;IAAEE,IAAI,EAAJA,IAAI;IAAE7C,QAAQ,EAARA,QAAQ;IAAEwC,WAAW,EAAXA;EAAY,CAAC,CAAC,CAAC,CAC3EX,WAAW,CAACA,WAAW,CAAC,CACxBY,QAAQ,CAACV,YAAY,CAAC;EAEzB,IAAM7B,QAAQ,GAAGnB,GAAG,CAAC,CAAC,CACnByD,WAAW,CAAC,CAACA,WAAW,IAAIG,cAAc,CAAC;IAAEE,IAAI,EAAJA,IAAI;IAAE7C,QAAQ,EAARA;EAAS,CAAC,CAAC,IAAI0C,cAAc,CAAC,CACjFb,WAAW,CAACA,WAAW,CAAC,CACxBY,QAAQ,CAACV,YAAY,CAAC;EAEzB,IAAI0E,KAAK,GAAGzH,GAAG,CAAC,CAAC,CACd2I,IAAI,CAAC,IAAI,CAAC,CACV7B,KAAK,CAAC,UAAAoF,MAAA;IAAA,IAAAC,MAAA,GAAAjJ,cAAA,CAAAgJ,MAAA;MAAIpF,KAAK,GAAAqF,MAAA;IAAA,OAAMrF,KAAK;EAAA,EAAC;EAC9BW,KAAK,CAAC/G,gBAAgB,CAAC,GAAG,IAAI;EAE9B,IAAIM,QAAQ,EAAE;IACZyG,KAAK,GAAGA,KAAK,CAACrF,UAAU,CAAC,CAACJ,IAAI,CAACC,EAAE,GAAG,CAAC,CAAC,CAACI,QAAQ,CAACL,IAAI,CAACC,EAAE,GAAG,CAAC,CAAC;EAC9D;EACA,OAAO;IACLwF,KAAK,EAALA,KAAK;IACLxG,KAAK,EAALA,KAAK;IACLC,QAAQ,EAARA,QAAQ;IACRH,QAAQ,EAAE,GAAG;IACbgC,YAAY,EAAZA,YAAY;IACZF,WAAW,EAAXA;EACF,CAAC;AACH,CAAC;AAsMH,SAASuF,GAAGA,CAAAgE,MAAA,EAsBT;EAAA,IAAAC,KAAA;EAAA,IArBQC,IAAI,GAAAF,MAAA,CAAbV,OAAO;IACPa,MAAM,GAAAH,MAAA,CAANG,MAAM;IACNtL,KAAK,GAAAmL,MAAA,CAALnL,KAAK;IACL0B,IAAI,GAAAyJ,MAAA,CAAJzJ,IAAI;IACJwH,KAAK,GAAAiC,MAAA,CAALjC,KAAK;IACLE,mBAAmB,GAAA+B,MAAA,CAAnB/B,mBAAmB;IACnBtE,MAAM,GAAAqG,MAAA,CAANrG,MAAM;IACN7E,QAAQ,GAAAkL,MAAA,CAARlL,QAAQ;IACRgJ,IAAI,GAAAkC,MAAA,CAAJlC,IAAI;IACJ5B,OAAO,GAAA8D,MAAA,CAAP9D,OAAO;IACPiD,gBAAgB,GAAAa,MAAA,CAAhBb,gBAAgB;IAChBnB,WAAW,GAAAgC,MAAA,CAAXhC,WAAW;IACXvH,WAAW,GAAAuJ,MAAA,CAAXvJ,WAAW;IACXW,WAAW,GAAA4I,MAAA,CAAX5I,WAAW;IACXuG,YAAY,GAAAqC,MAAA,CAAZrC,YAAY;IACZ/I,QAAQ,GAAAoL,MAAA,CAARpL,QAAQ;IACR6F,GAAG,GAAAuF,MAAA,CAAHvF,GAAG;IACHmD,QAAQ,GAAAoC,MAAA,CAARpC,QAAQ;IACRN,OAAO,GAAA0C,MAAA,CAAP1C,OAAO;IACPoB,cAAc,GAAAsB,MAAA,CAAdtB,cAAc;IACX0B,KAAK,GAAAC,wBAAA,CAAAL,MAAA,EAAAM,SAAA;EAER,IAAAC,eAAA,GAA8BzM,KAAK,CAAC0M,QAAQ,CAAC,KAAK,CAAC;IAAAC,gBAAA,GAAA3J,cAAA,CAAAyJ,eAAA;IAA5CG,OAAO,GAAAD,gBAAA;IAAEE,UAAU,GAAAF,gBAAA;EAC1B,IAAMG,MAAM,GAAG9M,KAAK,CAAC+M,MAAM,CAAC,IAAI,CAAC;EAEjC/M,KAAK,CAACgN,SAAS,CAAC,YAAM;IACpB,IAAI,CAACF,MAAM,CAACG,OAAO,EAAE;IACrBH,MAAM,CAACG,OAAO,CAAC5J,OAAO,CAAC,eAAe,CAAC,GAAG,CAACwC,MAAM,GAAG7E,QAAQ,GAAGD,KAAK,EAAEuC,WAAW,CAAC,CAAC,CAAC,CAAC;;IAErF;IACA,IAAI,CAACsJ,OAAO,EAAE;MACZC,UAAU,CAAC,IAAI,CAAC;MAChB;IACF;IACA,IAAIhH,MAAM,KAAKb,SAAS,IAAIa,MAAM,KAAK,IAAI,EAAE;MAC3CsE,mBAAmB,CAAC;QAClBtE,MAAM,EAANA,MAAM;QACNpD,IAAI,EAAJA,IAAI;QACJ7B,QAAQ,aAAAiE,MAAA,CAAYyH,KAAK,CAACtC,IAAI,QAAI;QAClCtH,OAAO,EAAEoK,MAAM,CAACG;MAClB,CAAC,CAAC;IACJ;EACF,CAAC,EAAE,CAACpH,MAAM,EAAEqH,OAAO,CAACzK,IAAI,CAAC,CAAC,CAAC;EAC3BzC,KAAK,CAACgN,SAAS,CAAC,YAAM;IACpB,IAAI,CAACF,MAAM,CAACG,OAAO,EAAE;IACrBH,MAAM,CAACG,OAAO,CAAC5J,OAAO,CAAC,eAAe,CAAC,GAAG,CAACwC,MAAM,GAAG7E,QAAQ,GAAGD,KAAK,EAAEuC,WAAW,CAAC,CAAC,CAAC,CAAC;EACvF,CAAC,EAAE,CAACuC,MAAM,EAAElD,WAAW,EAAEW,WAAW,EAAExC,QAAQ,EAAEoM,OAAO,CAACzK,IAAI,CAAC,CAAC,CAAC;EAE/D,IAAI,CAACA,IAAI,EAAE,OAAO,IAAI;EAEtB4I,gBAAgB,CAACC,iBAAiB,CAAC,YAAY,CAAC;EAChDD,gBAAgB,CAAC8B,mBAAmB,CAAC/E,OAAO,EAAE4B,IAAI,CAAC;EAEnD,oBACEhK,KAAA,CAAAC,aAAA,CAACD,KAAK,CAACoN,QAAQ,SAAAjB,KAAA,GACZ5M,OAAO,CAAC8M,MAAM,CAAC,eACdrM,KAAA,CAAAC,aAAA,CAACmM,IAAI,EAAAD,KAAA,CAAAkB,EAAA;IAAA,UACI,MAAM;IAAA,OACRP,MAAM;IAAA,SACJjD,YAAY,CAACI,KAAK,CAAC;IAAA,WACjBH,QAAQ,WAAAjF,MAAA,CAAW8B,GAAG,iBAAc3B,SAAS;IAAA,KACnDa,MAAM,GAAG7E,QAAQ,CAACyB,IAAI,CAAC,GAAG1B,KAAK,CAAC0B,IAAI,CAAC;IAAA,eAC3ByH,WAAW;IAAA,eACX1K,oBAAoB,CAACoL,cAAc,EAAEpB,OAAO;EAAC,EAC3D,CAAC,GAEHM,QAAQ,iBACP9J,KAAA,CAAAC,aAAA,CAACC,WAAW,EAAAiM,KAAA,CAAAkB,EAAA;IAAA,SAAAxI,MAAA,CACH8B,GAAG;IAAA,cACEsD,KAAK;IAAA,SACVJ,YAAY,CAACI,KAAK,CAAC;IAAA,YAChBH;EAAQ,EACnB,CAEW,CAAC;AAErB;AAEA,SAASwD,SAASA,CAAAC,MAAA,EAA8D;EAAA,IAAAC,KAAA;EAAA,IAAlDC,UAAU,GAAAF,MAAA,CAAnB/B,OAAO;IAAca,MAAM,GAAAkB,MAAA,CAANlB,MAAM;IAAEtL,KAAK,GAAAwM,MAAA,CAALxM,KAAK;IAAEkJ,KAAK,GAAAsD,MAAA,CAALtD,KAAK;IAAEJ,YAAY,GAAA0D,MAAA,CAAZ1D,YAAY;EAC1E,OAAA2D,KAAA,GAAOjO,OAAO,CAAC8M,MAAM,CAAC,eACpBrM,KAAA,CAAAC,aAAA,CAACwN,UAAU,EAAAD,KAAA,CAAAH,EAAA;IAAA,UACF,MAAM;IAAA,SACNxD,YAAY,CAACI,KAAK,CAAC;IAAA,KACvBlJ,KAAK,CAAC;MAAEoB,QAAQ,EAAEL,IAAI,CAACC,EAAE,GAAG,CAAC;MAAEG,UAAU,EAAE;IAAE,CAAC;EAAC,EACnD,CAAC;AAEN;AAEA,SAASwL,KAAKA,CAAAC,MAAA,EASX;EAAA,IAAAC,KAAA;EAAA,IARQC,MAAM,GAAAF,MAAA,CAAfnC,OAAO;IACPa,MAAM,GAAAsB,MAAA,CAANtB,MAAM;IACN/E,QAAQ,GAAAqG,MAAA,CAARrG,QAAQ;IACRwG,QAAQ,GAAAH,MAAA,CAARG,QAAQ;IACRC,KAAK,GAAAJ,MAAA,CAALI,KAAK;IACL1C,gBAAgB,GAAAsC,MAAA,CAAhBtC,gBAAgB;IAAA2C,QAAA,GAAAL,MAAA,CAChB7G,CAAC;IAADA,CAAC,GAAAkH,QAAA,cAAG,CAAC,GAAAA,QAAA;IAAAC,QAAA,GAAAN,MAAA,CACL5G,CAAC;IAADA,CAAC,GAAAkH,QAAA,cAAG,CAAC,GAAAA,QAAA;EAEL5C,gBAAgB,CAAC6C,QAAQ,CAAC,UAAU,EAAEH,KAAK,IAAID,QAAQ,CAAC;EAExD,OAAAF,KAAA,GAAOrO,OAAO,CAAC8M,MAAM,CAAC,eACpBrM,KAAA,CAAAC,aAAA,CAAC4N,MAAM,EAAAD,KAAA,CAAAP,EAAA;IAAA,UAAQ,MAAM;IAAA,KAAIvG,CAAC;IAAA,KAAKC,CAAC;IAAA;EAAA,iBAC9B/G,KAAA,CAAAC,aAAA,CAACqH,QAAQ,EAAAsG,KAAA,CAAAP,EAAA,gBAAE,CACL,CAAC;AAEb;AAEA,SAASc,YAAYA,CAACjJ,KAAK,EAAE;EAAA,IAAAkJ,IAAA,GAAAC,YAAA;IAAAC,KAAA;EAC3B,IAAMC,aAAa,GACiCjO,OAAO;EAA3D,OAAAgO,KAAA,GAAO/O,OAAO,CAAC2F,KAAK,CAACmH,MAAM,CAAC,eAACrM,KAAA,CAAAC,aAAA,CAACsO,aAAa,EAAAD,KAAA,CAAAjB,EAAA,kBAAAmB,aAAA,KAAAC,YAAA;IAAA;EAAA,GAAAL,IAAA,GAAsC,CAAC;AACpF;AAAC;AAED,IAAMnG,KAAK,GAAGhI,aAAa,CAACiE,SAAS,EAAE;EACrCgE,GAAG,EAAHA,GAAG;EACHwF,KAAK,EAALA,KAAK;EACLJ,SAAS,EAATA,SAAS;EACThN,OAAO,EAAE,CAAC6N,YAAY,EAAE7N,OAAO,CAACoO,yBAAyB;AAC3D,CAAC,CAAC;AAEF,eAAezG,KAAK","ignoreList":[]}
1
+ {"version":3,"file":"Donut.js","names":["Component","Root","sstyled","callAllEventHandlers","canUseDOM","getOriginChildren","uniqueIDEnhancement","interpolate","arc","pie","transition","React","createElement","PatternFill","style","_sstyled","insert","Tooltip","getChartDefaultColorName","DEFAULT_INSTANCE","Symbol","transitionAnglePie","selector","duration","halfsize","d3Arc","d3ArcOut","arcs","activeIndexPie","selection","selectAll","interrupt","attrTween","_","ind","d","Object","assign","self","initAngle","Math","PI","prevStartAngle","prevEndAngle","startAngle","endAngle","iStartAngle","iEndAngle","t","transitionRadiusPie","data","element","innerRadius","outerRadiusStartEnd","paddingAngle","select","start","end","iOuterRadius","outerRadiusPX","dataset","outerRadius","padAngle","increaseFactor","getOuterRadius","size","width","height","minORmax","max","min","DonutRoot","constructor","args","_defineProperty","document","undefined","visible","props","tooltipProps","clientX","clientY","eventEmitter","plotId","asProps","emit","active","canAnimatedHover","id","clearTimeout","animationTimeout","setTimeout","on","uid","generateGetBoundingClientRect","x","y","top","right","bottom","left","getArcs","Children","d3Pie","pieData","entries","keys","toArray","reduce","acc","child","isValidElement","type","Donut","Pie","push","dataKey","filter","key","value","includes","sort","a","b","indexOf","minValue","cur","map","handlerOnClick","e","stopPropagation","onClick","getPieProps","index","resolveColor","patterns","find","name","color","transparent","$animationActivePie","animationActivePie","onMouseMove","bindHandlerTooltip","onMouseLeave","onMouseOver","target","getAttribute","onMouseOut","onClickPieRoot","getEmptyDataProps","componentDidUpdate","prevProps","$rootProps","animationUpdatePie","componentDidMount","render","dataHintsHandler","establishDataType","Element","k","childrenPosition","transform","SPie","styles","other","_ref2","isMount","setIsMount","useState","pieRef","useRef","useEffect","current","Boolean","describeValueEntity","Fragment","cn","EmptyData","SEmptyData","_ref3","Label","SLabel","children","label","_ref4","setTitle","DonutTooltip","_ref","arguments[0]","_ref5","SDonutTooltip","_assignProps","_______childrenComponents"],"sources":["../../src/Donut.jsx"],"sourcesContent":["import { Component, Root, sstyled } from '@semcore/core';\nimport { callAllEventHandlers } from '@semcore/core/lib/utils/assignProps';\nimport canUseDOM from '@semcore/core/lib/utils/canUseDOM';\nimport getOriginChildren from '@semcore/core/lib/utils/getOriginChildren';\nimport uniqueIDEnhancement from '@semcore/core/lib/utils/uniqueID';\nimport { interpolate } from 'd3-interpolate';\nimport { arc, pie } from 'd3-shape';\nimport { transition } from 'd3-transition';\nimport React from 'react';\n\nimport createElement from './createElement';\nimport { PatternFill } from './Pattern';\nimport style from './style/donut.shadow.css';\nimport Tooltip from './Tooltip';\nimport { getChartDefaultColorName } from './utils';\n\nconst DEFAULT_INSTANCE = Symbol('DEFAULT_INSTANCE');\n\nfunction transitionAnglePie({\n selector,\n duration,\n halfsize,\n d3Arc,\n d3ArcOut,\n arcs,\n activeIndexPie,\n}) {\n return transition()\n .selection()\n .selectAll(selector)\n .interrupt()\n .transition()\n .duration(duration)\n .attrTween('d', function (_, ind) {\n if (!arcs[ind]) return () => '';\n const d = Object.assign({}, arcs[ind]);\n const self = this;\n const initAngle = halfsize ? -Math.PI / 2 : 0;\n let prevStartAngle = initAngle;\n let prevEndAngle = initAngle;\n if (self.arc) {\n prevStartAngle = self.arc.startAngle;\n prevEndAngle = self.arc.endAngle;\n }\n const iStartAngle = interpolate(prevStartAngle, d.startAngle);\n const iEndAngle = interpolate(prevEndAngle, d.endAngle);\n return function (t) {\n d.startAngle = iStartAngle(t);\n d.endAngle = iEndAngle(t);\n self.arc = d;\n return ind === activeIndexPie ? d3ArcOut(self.arc) : d3Arc(self.arc);\n };\n });\n}\n\nfunction transitionRadiusPie({\n data,\n selector,\n element,\n duration,\n innerRadius,\n outerRadiusStartEnd,\n paddingAngle,\n}) {\n return transition()\n .selection()\n .select(selector)\n .interrupt()\n .transition()\n .duration(duration)\n .attrTween('d', function () {\n const [start, end] = outerRadiusStartEnd;\n const iOuterRadius = interpolate(start, end);\n return function (t) {\n const outerRadiusPX = iOuterRadius(t);\n element.dataset['currentRadius'] = outerRadiusPX;\n const d3ArcOut = arc()\n .innerRadius(innerRadius)\n .outerRadius(outerRadiusPX)\n .padAngle(paddingAngle);\n return d3ArcOut(data);\n };\n });\n}\n\nconst increaseFactor = 8;\n\nfunction getOuterRadius({ size, halfsize }) {\n const [width, height] = size;\n const minORmax = halfsize ? Math.max : Math.min;\n return minORmax(width - increaseFactor * 2, height - increaseFactor * 2) / 2;\n}\n\nclass DonutRoot extends Component {\n static displayName = 'Donut';\n static style = style;\n static enhance = [uniqueIDEnhancement()];\n\n static defaultProps = ({\n innerRadius = 0,\n paddingAngle = 0,\n outerRadius,\n halfsize = false,\n $rootProps: { size },\n }) => {\n const d3Arc = arc()\n .outerRadius(outerRadius || getOuterRadius({ size, halfsize, outerRadius }))\n .innerRadius(innerRadius)\n .padAngle(paddingAngle);\n\n const d3ArcOut = arc()\n .outerRadius((outerRadius || getOuterRadius({ size, halfsize })) + increaseFactor)\n .innerRadius(innerRadius)\n .padAngle(paddingAngle);\n\n let d3Pie = pie()\n .sort(null)\n .value(([, value]) => value);\n d3Pie[DEFAULT_INSTANCE] = true;\n\n if (halfsize) {\n d3Pie = d3Pie.startAngle(-Math.PI / 2).endAngle(Math.PI / 2);\n }\n return {\n d3Pie,\n d3Arc,\n d3ArcOut,\n duration: 500,\n paddingAngle,\n innerRadius,\n };\n };\n\n get id() {\n const { uid, id } = this.asProps;\n return id || uid;\n }\n\n virtualElement = canUseDOM() ? document.createElement('div') : {};\n activeIndexPie = undefined;\n canAnimatedHover = false;\n\n generateGetBoundingClientRect(x = 0, y = 0) {\n return () => ({ width: 0, height: 0, top: y, right: x, bottom: y, left: x });\n }\n\n getArcs() {\n const { Children, data, d3Pie } = this.asProps;\n let pieData = Object.entries(data);\n\n if (d3Pie[DEFAULT_INSTANCE]) {\n const keys = React.Children.toArray(getOriginChildren(Children)).reduce((acc, child) => {\n if (React.isValidElement(child) && child.type === Donut.Pie) {\n acc.push(child.props.dataKey);\n }\n return acc;\n }, []);\n pieData = Object.entries(data)\n .filter(([key, value]) => keys.includes(key) && value > 0)\n .sort(([a], [b]) => (keys.indexOf(a) > keys.indexOf(b) ? 1 : -1));\n }\n const minValue =\n pieData.reduce((acc, cur) => {\n if (cur[1]) acc += cur[1];\n return acc;\n }, 0) / 100;\n pieData = pieData.map((d) => {\n if (d[1] && d[1] < minValue) d[1] = minValue;\n return d;\n });\n return d3Pie(pieData);\n }\n\n bindHandlerTooltip = (visible, props, tooltipProps) => ({ clientX, clientY }) => {\n const { eventEmitter, plotId } = this.asProps;\n\n eventEmitter.emit(`setTooltipPosition_${plotId}`, clientX, clientY);\n eventEmitter.emit(`setTooltipRenderingProps_${plotId}`, props, tooltipProps);\n eventEmitter.emit(`setTooltipVisible_${plotId}`, visible);\n };\n\n animationActivePie = ({ data, active, selector, element }) => {\n const { duration, innerRadius, d3Arc, paddingAngle } = this.asProps;\n const outerRadius = d3Arc.outerRadius()();\n const outerRadiusStartEnd = active\n ? [+element.dataset['currentRadius'] || outerRadius, outerRadius + increaseFactor]\n : [+element.dataset['currentRadius'] || outerRadius, outerRadius];\n if (this.canAnimatedHover && duration > 0) {\n transitionRadiusPie({\n data,\n selector: `#${this.id} ${selector}`,\n element,\n duration: duration === 0 ? 0 : 300,\n innerRadius,\n outerRadiusStartEnd,\n paddingAngle,\n });\n }\n };\n\n animationTimeout = null;\n animationUpdatePie = () => {\n clearTimeout(this.animationTimeout);\n this.animationTimeout = setTimeout(() => {\n const { duration, d3Arc, halfsize, d3ArcOut } = this.asProps;\n this.canAnimatedHover = false;\n if (duration > 0) {\n transitionAnglePie({\n selector: `#${this.id} [data-ui-name=\"Donut.Pie\"]`,\n duration,\n arcs: this.arcs,\n halfsize,\n d3Arc,\n d3ArcOut,\n activeIndexPie: this.activeIndexPie,\n }).on('end', () => {\n this.canAnimatedHover = true;\n });\n } else {\n this.canAnimatedHover = true;\n }\n }, 0);\n };\n\n handlerOnClick(key) {\n return (e) => {\n e.stopPropagation();\n\n const { onClick } = this.asProps;\n\n if (!onClick) return;\n\n onClick(key, e);\n };\n }\n\n getPieProps(props, index) {\n const { d3Arc, d3ArcOut, innerRadius, outerRadius, halfsize, resolveColor, uid, patterns } =\n this.asProps;\n const { active } = props;\n const data = this.arcs.find((arc) => arc.data[0] === props.dataKey);\n if (active) {\n this.activeIndexPie = index;\n }\n const tooltipProps = {\n dataKey: props.dataKey,\n name: props.name,\n resolveColor,\n color: props.color || getChartDefaultColorName(index),\n active: props.active,\n transparent: props.transparent,\n patterns,\n };\n\n return {\n data,\n d3Arc,\n d3ArcOut,\n innerRadius,\n outerRadius,\n uid: `${uid}-${index}`,\n patterns,\n halfsize,\n color: props.color || getChartDefaultColorName(index),\n resolveColor,\n $animationActivePie: this.animationActivePie,\n onMouseMove: this.bindHandlerTooltip(true, props, tooltipProps),\n onMouseLeave: this.bindHandlerTooltip(false, props, tooltipProps),\n onMouseOver: (e) => {\n if (!active) {\n this.animationActivePie({\n active: true,\n data,\n selector: `[d=\"${e.target.getAttribute('d')}\"]`,\n element: e.target,\n });\n }\n },\n onMouseOut: (e) => {\n if (!active) {\n this.animationActivePie({\n active: false,\n data,\n selector: `[d=\"${e.target.getAttribute('d')}\"]`,\n element: e.target,\n });\n }\n },\n onClickPieRoot: this.handlerOnClick(props.dataKey),\n };\n }\n\n getEmptyDataProps() {\n const { d3Arc } = this.asProps;\n return {\n d3Arc,\n };\n }\n\n componentDidUpdate(prevProps) {\n const { data } = this.asProps;\n if (prevProps.$rootProps.data !== data) {\n this.animationUpdatePie();\n }\n }\n\n componentDidMount() {\n this.animationUpdatePie();\n }\n\n render() {\n const { halfsize, size } = this.asProps;\n this.asProps.dataHintsHandler.establishDataType('values-set');\n const [width, height] = size;\n const Element = this.Element;\n const k = halfsize ? 1 : 2;\n this.arcs = this.getArcs();\n return (\n <Element\n aria-hidden\n id={this.id}\n render='g'\n childrenPosition='inside'\n transform={`translate(${width / 2},${height / k})`}\n />\n );\n }\n}\n\nfunction Pie({\n Element: SPie,\n styles,\n d3Arc,\n data,\n color,\n $animationActivePie,\n active,\n d3ArcOut,\n name,\n dataKey,\n dataHintsHandler,\n transparent,\n innerRadius,\n outerRadius,\n resolveColor,\n halfsize,\n uid,\n patterns,\n onClick,\n onClickPieRoot,\n ...other\n}) {\n const [isMount, setIsMount] = React.useState(false);\n const pieRef = React.useRef(null);\n\n React.useEffect(() => {\n if (!pieRef.current) return;\n pieRef.current.dataset['currentRadius'] = (active ? d3ArcOut : d3Arc).outerRadius()();\n\n // do not run animation on first render\n if (!isMount) {\n setIsMount(true);\n return;\n }\n if (active !== undefined && active !== null) {\n $animationActivePie({\n active,\n data,\n selector: `[name=\"${other.name}\"]`,\n element: pieRef.current,\n });\n }\n }, [active, Boolean(data)]);\n React.useEffect(() => {\n if (!pieRef.current) return;\n pieRef.current.dataset['currentRadius'] = (active ? d3ArcOut : d3Arc).outerRadius()();\n }, [active, innerRadius, outerRadius, halfsize, Boolean(data)]);\n\n if (!data) return null;\n\n dataHintsHandler.establishDataType('values-set');\n dataHintsHandler.describeValueEntity(dataKey, name);\n\n return (\n <React.Fragment>\n {sstyled(styles)(\n <SPie\n render='path'\n ref={pieRef}\n color={resolveColor(color)}\n pattern={patterns ? `url(#${uid}-pattern)` : undefined}\n d={active ? d3ArcOut(data) : d3Arc(data)}\n transparent={transparent}\n use:onClick={callAllEventHandlers(onClickPieRoot, onClick)}\n />,\n )}\n {patterns && (\n <PatternFill\n id={`${uid}-pattern`}\n patternKey={color}\n color={resolveColor(color)}\n patterns={patterns}\n />\n )}\n </React.Fragment>\n );\n}\n\nfunction EmptyData({ Element: SEmptyData, styles, d3Arc, color, resolveColor }) {\n return sstyled(styles)(\n <SEmptyData\n render='path'\n color={resolveColor(color)}\n d={d3Arc({ endAngle: Math.PI * 2, startAngle: 0 })}\n />,\n );\n}\n\nfunction Label({\n Element: SLabel,\n styles,\n Children,\n children,\n label,\n dataHintsHandler,\n x = 0,\n y = 0,\n}) {\n dataHintsHandler.setTitle('vertical', label || children);\n\n return sstyled(styles)(\n <SLabel render='text' x={x} y={y} aria-hidden>\n <Children />\n </SLabel>,\n );\n}\n\nfunction DonutTooltip(props) {\n const SDonutTooltip = Root;\n return sstyled(props.styles)(<SDonutTooltip render={Tooltip} excludeAnchorProps />);\n};\n\nconst Donut = createElement(DonutRoot, {\n Pie,\n Label,\n EmptyData,\n Tooltip: [DonutTooltip, Tooltip._______childrenComponents],\n});\n\nexport default Donut;\n"],"mappings":"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","ignoreList":[]}
package/lib/es6/Dots.js CHANGED
@@ -1,4 +1,3 @@
1
- import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
2
1
  import { sstyled as _sstyled } from "@semcore/core";
3
2
  import { sstyled } from '@semcore/core';
4
3
  import trottle from '@semcore/core/lib/utils/rafTrottle';
@@ -7,101 +6,83 @@ import React from 'react';
7
6
  import createElement from './createElement';
8
7
  import { PatternSymbol, getPatternSymbolSize } from './Pattern';
9
8
  /*!__reshadow-styles__:"./style/dot.shadow.css"*/
10
- var style = (/*__reshadow_css_start__*/_sstyled.insert(/*__inner_css_start__*/".___SDots_wid14_gg_ .___SDot_wid14_gg_{transition-duration:var(--duration_wid14)}.___SDot_wid14_gg_{stroke-width:1px;stroke:var(--intergalactic-chart-grid-border, #ffffff);fill:var(--intergalactic-chart-palette-order-1, #2bb3ff);transition-property:cx,cy,x,y;transition-timing-function:ease-in-out}.___SDot_wid14_gg_.__hide_wid14_gg_{display:none}.___SDot_wid14_gg_.__color_wid14_gg_{fill:var(--color_wid14)}.___SDot_wid14_gg_.__transparent_wid14_gg_{opacity:.3}", /*__inner_css_end__*/"wid14_gg_"),
9
+ const style = (/*__reshadow_css_start__*/_sstyled.insert(/*__inner_css_start__*/".___SDots_kz49v_gg_ .___SDot_kz49v_gg_{transition-duration:var(--duration_kz49v)}.___SDot_kz49v_gg_{stroke-width:1px;stroke:var(--intergalactic-chart-grid-border, #ffffff);fill:var(--intergalactic-chart-palette-order-1, #2bb3ff);transition-property:cx,cy,x,y;transition-timing-function:ease-in-out}.___SDot_kz49v_gg_.__hide_kz49v_gg_{display:none}.___SDot_kz49v_gg_.__color_kz49v_gg_{fill:var(--color_kz49v)}.___SDot_kz49v_gg_.__transparent_kz49v_gg_{opacity:.3}", /*__inner_css_end__*/"kz49v_gg_"),
11
10
  /*__reshadow_css_end__*/
12
11
  {
13
- "__SDot": "___SDot_wid14_gg_",
14
- "_hide": "__hide_wid14_gg_",
15
- "_color": "__color_wid14_gg_",
16
- "--color": "--color_wid14",
17
- "_transparent": "__transparent_wid14_gg_",
18
- "__SDots": "___SDots_wid14_gg_",
19
- "--duration": "--duration_wid14"
12
+ "__SDot": "___SDot_kz49v_gg_",
13
+ "_hide": "__hide_kz49v_gg_",
14
+ "_color": "__color_kz49v_gg_",
15
+ "--color": "--color_kz49v",
16
+ "_transparent": "__transparent_kz49v_gg_",
17
+ "__SDots": "___SDots_kz49v_gg_",
18
+ "--duration": "--duration_kz49v"
20
19
  });
21
20
  import { eventToPoint, invert, interpolateValue, getChartDefaultColorName } from './utils';
22
21
  function Dots(props) {
23
22
  var _ref3;
24
- var SDot = props.Element,
25
- styles = props.styles,
26
- color = props.color,
27
- d3 = props.d3,
28
- x = props.x,
29
- y = props.y,
30
- eventEmitter = props.eventEmitter,
31
- display = props.display,
32
- hide = props.hide,
33
- rootRef = props.rootRef,
34
- scale = props.scale,
35
- _props$duration = props.duration,
36
- duration = _props$duration === void 0 ? 500 : _props$duration,
37
- transparent = props.transparent,
38
- _props$radius = props.radius,
39
- radiusBase = _props$radius === void 0 ? 4 : _props$radius,
40
- resolveColor = props.resolveColor,
41
- patterns = props.patterns,
42
- onClick = props.onClick;
43
- var bisect = bisector(function (d) {
44
- return d[x];
45
- }).center;
46
- var _React$useState = React.useState(null),
47
- _React$useState2 = _slicedToArray(_React$useState, 2),
48
- activeIndex = _React$useState2[0],
49
- setActiveIndex = _React$useState2[1];
50
- var patternKey = color || getChartDefaultColorName(0);
51
- var svgPatternId = "template_".concat(patternKey);
52
- var data = React.useMemo(function () {
53
- return props.data.filter(function (item) {
54
- return item[y] !== interpolateValue;
55
- });
56
- }, [props.data]);
57
- var handlerMouseMoveRoot = React.useCallback(trottle(function (e) {
58
- var _scale = _slicedToArray(scale, 1),
59
- xScale = _scale[0];
60
- var _eventToPoint = eventToPoint(e, rootRef.current),
61
- _eventToPoint2 = _slicedToArray(_eventToPoint, 1),
62
- pX = _eventToPoint2[0];
63
- var vX = invert(xScale, pX);
23
+ const {
24
+ Element: SDot,
25
+ styles,
26
+ color,
27
+ d3,
28
+ x,
29
+ y,
30
+ eventEmitter,
31
+ display,
32
+ hide,
33
+ rootRef,
34
+ scale,
35
+ duration = 500,
36
+ transparent,
37
+ radius: radiusBase = 4,
38
+ resolveColor,
39
+ patterns,
40
+ onClick
41
+ } = props;
42
+ const bisect = bisector(d => d[x]).center;
43
+ const [activeIndex, setActiveIndex] = React.useState(null);
44
+ const patternKey = color || getChartDefaultColorName(0);
45
+ const svgPatternId = `template_${patternKey}`;
46
+ const data = React.useMemo(() => props.data.filter(item => item[y] !== interpolateValue), [props.data]);
47
+ const handlerMouseMoveRoot = React.useCallback(trottle(e => {
48
+ const [xScale] = scale;
49
+ const [pX] = eventToPoint(e, rootRef.current);
50
+ const vX = invert(xScale, pX);
64
51
  setActiveIndex(bisect(data, vX));
65
52
  }), [scale, data]);
66
- var handlerMouseLeaveRoot = React.useCallback(trottle(function () {
53
+ const handlerMouseLeaveRoot = React.useCallback(trottle(() => {
67
54
  setActiveIndex(null);
68
55
  }), []);
69
- var handlerOnClick = React.useCallback(function (e) {
56
+ const handlerOnClick = React.useCallback(e => {
70
57
  e.stopPropagation();
71
58
  if (!onClick) return;
72
- var _scale2 = _slicedToArray(scale, 1),
73
- xScale = _scale2[0];
74
- var _eventToPoint3 = eventToPoint(e, rootRef.current),
75
- _eventToPoint4 = _slicedToArray(_eventToPoint3, 1),
76
- pX = _eventToPoint4[0];
77
- var vX = invert(xScale, pX);
78
- var index = bisect(data, vX);
59
+ const [xScale] = scale;
60
+ const [pX] = eventToPoint(e, rootRef.current);
61
+ const vX = invert(xScale, pX);
62
+ const index = bisect(data, vX);
79
63
  onClick(index, e);
80
64
  }, [scale, data, onClick]);
81
- React.useEffect(function () {
82
- var unsubscribeMouseMoveRoot = eventEmitter.subscribe('onMouseMoveChart', function (e) {
65
+ React.useEffect(() => {
66
+ const unsubscribeMouseMoveRoot = eventEmitter.subscribe('onMouseMoveChart', e => {
83
67
  e.persist();
84
68
  handlerMouseMoveRoot(e);
85
69
  });
86
- var unsubscribeMouseLeaveRoot = eventEmitter.subscribe('onMouseLeaveChart', handlerMouseLeaveRoot);
87
- return function () {
70
+ const unsubscribeMouseLeaveRoot = eventEmitter.subscribe('onMouseLeaveChart', handlerMouseLeaveRoot);
71
+ return () => {
88
72
  unsubscribeMouseMoveRoot();
89
73
  unsubscribeMouseLeaveRoot();
90
74
  };
91
75
  }, [eventEmitter, scale, data, x, y]);
92
- var _getPatternSymbolSize = getPatternSymbolSize({
93
- patternKey: patternKey,
94
- patterns: patterns
95
- }),
96
- _getPatternSymbolSize2 = _slicedToArray(_getPatternSymbolSize, 2),
97
- width = _getPatternSymbolSize2[0],
98
- height = _getPatternSymbolSize2[1];
99
- var dots = data.reduce(function (acc, d, i) {
100
- var isPrev = d3.defined()(data[i - 1] || {});
101
- var isNext = d3.defined()(data[i + 1] || {});
102
- var active = i === activeIndex;
103
- var visible = typeof display === 'function' ? display(i, i === activeIndex, !isPrev && !isNext) : display || i === activeIndex || !isPrev && !isNext;
104
- var radius = radiusBase * (active ? 5 / 4 : 1);
76
+ const [width, height] = getPatternSymbolSize({
77
+ patternKey,
78
+ patterns
79
+ });
80
+ const dots = data.reduce((acc, d, i) => {
81
+ const isPrev = d3.defined()(data[i - 1] || {});
82
+ const isNext = d3.defined()(data[i + 1] || {});
83
+ const active = i === activeIndex;
84
+ const visible = typeof display === 'function' ? display(i, i === activeIndex, !isPrev && !isNext) : display || i === activeIndex || !isPrev && !isNext;
85
+ const radius = radiusBase * (active ? 5 / 4 : 1);
105
86
  if (!d3.defined()(d)) return acc;
106
87
  if (!visible) return acc;
107
88
  if (!patterns) {
@@ -111,7 +92,7 @@ function Dots(props) {
111
92
  "color": resolveColor(color),
112
93
  "patternKey": patternKey,
113
94
  "patterns": patterns,
114
- "key": "".concat(i),
95
+ "key": `${i}`,
115
96
  "value": d,
116
97
  "visible": visible,
117
98
  "active": active,
@@ -127,7 +108,7 @@ function Dots(props) {
127
108
  acc.push((_ref2 = sstyled(styles), /*#__PURE__*/React.createElement(SDot, _ref2.cn("SDot", {
128
109
  "key": i,
129
110
  "render": 'use',
130
- "href": "#".concat(svgPatternId),
111
+ "href": `#${svgPatternId}`,
131
112
  "x": width + (d3.x()(d) - width / 2),
132
113
  "y": d3.y()(d) - height / 2,
133
114
  "value": d,
@@ -141,9 +122,9 @@ function Dots(props) {
141
122
  }
142
123
  return acc;
143
124
  }, []);
144
- var SDots = 'g';
125
+ const SDots = 'g';
145
126
  return _ref3 = sstyled(styles), /*#__PURE__*/React.createElement(SDots, _ref3.cn("SDots", {
146
- "duration": "".concat(duration, "ms"),
127
+ "duration": `${duration}ms`,
147
128
  "onClickCapture": handlerOnClick
148
129
  }), /*#__PURE__*/React.createElement(PatternSymbol, _ref3.cn("PatternSymbol", {
149
130
  "color": resolveColor(color),
@@ -1 +1 @@
1
- {"version":3,"file":"Dots.js","names":["sstyled","trottle","bisector","React","createElement","PatternSymbol","getPatternSymbolSize","style","_sstyled","insert","eventToPoint","invert","interpolateValue","getChartDefaultColorName","Dots","props","_ref3","SDot","Element","styles","color","d3","x","y","eventEmitter","display","hide","rootRef","scale","_props$duration","duration","transparent","_props$radius","radius","radiusBase","resolveColor","patterns","onClick","bisect","d","center","_React$useState","useState","_React$useState2","_slicedToArray","activeIndex","setActiveIndex","patternKey","svgPatternId","concat","data","useMemo","filter","item","handlerMouseMoveRoot","useCallback","e","_scale","xScale","_eventToPoint","current","_eventToPoint2","pX","vX","handlerMouseLeaveRoot","handlerOnClick","stopPropagation","_scale2","_eventToPoint3","_eventToPoint4","index","useEffect","unsubscribeMouseMoveRoot","subscribe","persist","unsubscribeMouseLeaveRoot","_getPatternSymbolSize","_getPatternSymbolSize2","width","height","dots","reduce","acc","i","isPrev","defined","isNext","active","visible","_ref","push","cn","_ref2","SDots"],"sources":["../../src/Dots.jsx"],"sourcesContent":["import { sstyled } from '@semcore/core';\nimport trottle from '@semcore/core/lib/utils/rafTrottle';\nimport { bisector } from 'd3-array';\nimport React from 'react';\n\nimport createElement from './createElement';\nimport { PatternSymbol, getPatternSymbolSize } from './Pattern';\nimport style from './style/dot.shadow.css';\nimport { eventToPoint, invert, interpolateValue, getChartDefaultColorName } from './utils';\n\nfunction Dots(props) {\n const {\n Element: SDot,\n styles,\n color,\n d3,\n x,\n y,\n eventEmitter,\n display,\n hide,\n rootRef,\n scale,\n duration = 500,\n transparent,\n radius: radiusBase = 4,\n resolveColor,\n patterns,\n onClick,\n } = props;\n const bisect = bisector((d) => d[x]).center;\n const [activeIndex, setActiveIndex] = React.useState(null);\n const patternKey = color || getChartDefaultColorName(0);\n const svgPatternId = `template_${patternKey}`;\n const data = React.useMemo(\n () => props.data.filter((item) => item[y] !== interpolateValue),\n [props.data],\n );\n\n const handlerMouseMoveRoot = React.useCallback(\n trottle((e) => {\n const [xScale] = scale;\n const [pX] = eventToPoint(e, rootRef.current);\n const vX = invert(xScale, pX);\n setActiveIndex(bisect(data, vX));\n }),\n [scale, data],\n );\n\n const handlerMouseLeaveRoot = React.useCallback(\n trottle(() => {\n setActiveIndex(null);\n }),\n [],\n );\n\n const handlerOnClick = React.useCallback((e) => {\n e.stopPropagation();\n\n if (!onClick) return;\n\n const [xScale] = scale;\n const [pX] = eventToPoint(e, rootRef.current);\n const vX = invert(xScale, pX);\n const index = bisect(data, vX);\n\n onClick(index, e);\n }, [scale, data, onClick]);\n\n React.useEffect(() => {\n const unsubscribeMouseMoveRoot = eventEmitter.subscribe('onMouseMoveChart', (e) => {\n e.persist();\n handlerMouseMoveRoot(e);\n });\n\n const unsubscribeMouseLeaveRoot = eventEmitter.subscribe(\n 'onMouseLeaveChart',\n handlerMouseLeaveRoot,\n );\n\n return () => {\n unsubscribeMouseMoveRoot();\n unsubscribeMouseLeaveRoot();\n };\n }, [eventEmitter, scale, data, x, y]);\n\n const [width, height] = getPatternSymbolSize({\n patternKey,\n patterns,\n });\n\n const dots = data.reduce((acc, d, i) => {\n const isPrev = d3.defined()(data[i - 1] || {});\n const isNext = d3.defined()(data[i + 1] || {});\n const active = i === activeIndex;\n const visible =\n typeof display === 'function'\n ? display(i, i === activeIndex, !isPrev && !isNext)\n : display || i === activeIndex || (!isPrev && !isNext);\n const radius = radiusBase * (active ? 5 / 4 : 1);\n if (!d3.defined()(d)) return acc;\n if (!visible) return acc;\n\n if (!patterns) {\n acc.push(\n sstyled(styles)(\n <SDot\n render='circle'\n color={resolveColor(color)}\n patternKey={patternKey}\n patterns={patterns}\n key={`${i}`}\n value={d}\n visible={visible}\n active={active}\n hide={hide}\n transparent={transparent}\n cx={d3.x()(d)}\n cy={d3.y()(d)}\n r={radius}\n __excludeProps={['display', 'data', 'scale']}\n />,\n ),\n );\n } else {\n acc.push(\n sstyled(styles)(\n <SDot\n key={i}\n render='use'\n href={`#${svgPatternId}`}\n x={width + (d3.x()(d) - width / 2)}\n y={d3.y()(d) - height / 2}\n value={d}\n transparent={transparent}\n radius={radius}\n visible={visible}\n active={active}\n hide={hide}\n __excludeProps={['display', 'data', 'scale']}\n />,\n ),\n );\n }\n return acc;\n }, []);\n const SDots = 'g';\n return sstyled(styles)(\n <SDots duration={`${duration}ms`} onClickCapture={handlerOnClick}>\n <PatternSymbol\n color={resolveColor(color)}\n patternKey={color}\n id={svgPatternId}\n patterns={patterns}\n x={-1 * width}\n />\n {dots}\n </SDots>,\n );\n}\n\nDots.style = style;\n\nexport default createElement(Dots);\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"Dots.js","names":["sstyled","trottle","bisector","React","createElement","PatternSymbol","getPatternSymbolSize","style","_sstyled","insert","eventToPoint","invert","interpolateValue","getChartDefaultColorName","Dots","props","_ref3","Element","SDot","styles","color","d3","x","y","eventEmitter","display","hide","rootRef","scale","duration","transparent","radius","radiusBase","resolveColor","patterns","onClick","bisect","d","center","activeIndex","setActiveIndex","useState","patternKey","svgPatternId","data","useMemo","filter","item","handlerMouseMoveRoot","useCallback","e","xScale","pX","current","vX","handlerMouseLeaveRoot","handlerOnClick","stopPropagation","index","useEffect","unsubscribeMouseMoveRoot","subscribe","persist","unsubscribeMouseLeaveRoot","width","height","dots","reduce","acc","i","isPrev","defined","isNext","active","visible","_ref","push","cn","_ref2","SDots"],"sources":["../../src/Dots.jsx"],"sourcesContent":["import { sstyled } from '@semcore/core';\nimport trottle from '@semcore/core/lib/utils/rafTrottle';\nimport { bisector } from 'd3-array';\nimport React from 'react';\n\nimport createElement from './createElement';\nimport { PatternSymbol, getPatternSymbolSize } from './Pattern';\nimport style from './style/dot.shadow.css';\nimport { eventToPoint, invert, interpolateValue, getChartDefaultColorName } from './utils';\n\nfunction Dots(props) {\n const {\n Element: SDot,\n styles,\n color,\n d3,\n x,\n y,\n eventEmitter,\n display,\n hide,\n rootRef,\n scale,\n duration = 500,\n transparent,\n radius: radiusBase = 4,\n resolveColor,\n patterns,\n onClick,\n } = props;\n const bisect = bisector((d) => d[x]).center;\n const [activeIndex, setActiveIndex] = React.useState(null);\n const patternKey = color || getChartDefaultColorName(0);\n const svgPatternId = `template_${patternKey}`;\n const data = React.useMemo(\n () => props.data.filter((item) => item[y] !== interpolateValue),\n [props.data],\n );\n\n const handlerMouseMoveRoot = React.useCallback(\n trottle((e) => {\n const [xScale] = scale;\n const [pX] = eventToPoint(e, rootRef.current);\n const vX = invert(xScale, pX);\n setActiveIndex(bisect(data, vX));\n }),\n [scale, data],\n );\n\n const handlerMouseLeaveRoot = React.useCallback(\n trottle(() => {\n setActiveIndex(null);\n }),\n [],\n );\n\n const handlerOnClick = React.useCallback((e) => {\n e.stopPropagation();\n\n if (!onClick) return;\n\n const [xScale] = scale;\n const [pX] = eventToPoint(e, rootRef.current);\n const vX = invert(xScale, pX);\n const index = bisect(data, vX);\n\n onClick(index, e);\n }, [scale, data, onClick]);\n\n React.useEffect(() => {\n const unsubscribeMouseMoveRoot = eventEmitter.subscribe('onMouseMoveChart', (e) => {\n e.persist();\n handlerMouseMoveRoot(e);\n });\n\n const unsubscribeMouseLeaveRoot = eventEmitter.subscribe(\n 'onMouseLeaveChart',\n handlerMouseLeaveRoot,\n );\n\n return () => {\n unsubscribeMouseMoveRoot();\n unsubscribeMouseLeaveRoot();\n };\n }, [eventEmitter, scale, data, x, y]);\n\n const [width, height] = getPatternSymbolSize({\n patternKey,\n patterns,\n });\n\n const dots = data.reduce((acc, d, i) => {\n const isPrev = d3.defined()(data[i - 1] || {});\n const isNext = d3.defined()(data[i + 1] || {});\n const active = i === activeIndex;\n const visible =\n typeof display === 'function'\n ? display(i, i === activeIndex, !isPrev && !isNext)\n : display || i === activeIndex || (!isPrev && !isNext);\n const radius = radiusBase * (active ? 5 / 4 : 1);\n if (!d3.defined()(d)) return acc;\n if (!visible) return acc;\n\n if (!patterns) {\n acc.push(\n sstyled(styles)(\n <SDot\n render='circle'\n color={resolveColor(color)}\n patternKey={patternKey}\n patterns={patterns}\n key={`${i}`}\n value={d}\n visible={visible}\n active={active}\n hide={hide}\n transparent={transparent}\n cx={d3.x()(d)}\n cy={d3.y()(d)}\n r={radius}\n __excludeProps={['display', 'data', 'scale']}\n />,\n ),\n );\n } else {\n acc.push(\n sstyled(styles)(\n <SDot\n key={i}\n render='use'\n href={`#${svgPatternId}`}\n x={width + (d3.x()(d) - width / 2)}\n y={d3.y()(d) - height / 2}\n value={d}\n transparent={transparent}\n radius={radius}\n visible={visible}\n active={active}\n hide={hide}\n __excludeProps={['display', 'data', 'scale']}\n />,\n ),\n );\n }\n return acc;\n }, []);\n const SDots = 'g';\n return sstyled(styles)(\n <SDots duration={`${duration}ms`} onClickCapture={handlerOnClick}>\n <PatternSymbol\n color={resolveColor(color)}\n patternKey={color}\n id={svgPatternId}\n patterns={patterns}\n x={-1 * width}\n />\n {dots}\n </SDots>,\n );\n}\n\nDots.style = style;\n\nexport default createElement(Dots);\n"],"mappings":"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","ignoreList":[]}
@@ -1,7 +1,3 @@
1
- import _classCallCheck from "@babel/runtime/helpers/classCallCheck";
2
- import _createClass from "@babel/runtime/helpers/createClass";
3
- import _callSuper from "@babel/runtime/helpers/callSuper";
4
- import _inherits from "@babel/runtime/helpers/inherits";
5
1
  import _defineProperty from "@babel/runtime/helpers/defineProperty";
6
2
  import { Component } from '@semcore/core';
7
3
  import getOriginChildren from '@semcore/core/lib/utils/getOriginChildren';
@@ -11,93 +7,82 @@ import Bar from './Bar';
11
7
  import createElement from './createElement';
12
8
  import HorizontalBar from './HorizontalBar';
13
9
  import { getChartDefaultColorName, scaleToBand } from './utils';
14
- var GroupBarRoot = /*#__PURE__*/function (_Component) {
15
- function GroupBarRoot() {
16
- _classCallCheck(this, GroupBarRoot);
17
- return _callSuper(this, GroupBarRoot, arguments);
10
+ class GroupBarRoot extends Component {
11
+ getScaleGroup() {
12
+ const {
13
+ Children,
14
+ scale,
15
+ scaleGroup,
16
+ x
17
+ } = this.asProps;
18
+ // TODO: love that hack (by lsroman) ❤�
19
+ const xyScale = x ? scale[0] : scale[1];
20
+ if (scaleGroup) return scaleGroup;
21
+ const domain = React.Children.toArray(getOriginChildren(Children)).reduce((acc, child) => {
22
+ if (/*#__PURE__*/React.isValidElement(child) && child.type === GroupBar.Bar && !child.props.hide) {
23
+ acc.push(child.props.y);
24
+ }
25
+ if (/*#__PURE__*/React.isValidElement(child) && child.type === GroupBar.HorizontalBar && !child.props.hide) {
26
+ acc.push(child.props.x);
27
+ }
28
+ return acc;
29
+ }, []);
30
+ return scaleBand().range([0, scaleToBand(xyScale).bandwidth()]).domain(domain).paddingInner(0.1).paddingOuter(0.1);
18
31
  }
19
- _inherits(GroupBarRoot, _Component);
20
- return _createClass(GroupBarRoot, [{
21
- key: "getScaleGroup",
22
- value: function getScaleGroup() {
23
- var _this$asProps = this.asProps,
24
- Children = _this$asProps.Children,
25
- scale = _this$asProps.scale,
26
- scaleGroup = _this$asProps.scaleGroup,
27
- x = _this$asProps.x;
28
- // TODO: love that hack (by lsroman) ❤�
29
- var xyScale = x ? scale[0] : scale[1];
30
- if (scaleGroup) return scaleGroup;
31
- var domain = React.Children.toArray(getOriginChildren(Children)).reduce(function (acc, child) {
32
- if (/*#__PURE__*/React.isValidElement(child) && child.type === GroupBar.Bar && !child.props.hide) {
33
- acc.push(child.props.y);
34
- }
35
- if (/*#__PURE__*/React.isValidElement(child) && child.type === GroupBar.HorizontalBar && !child.props.hide) {
36
- acc.push(child.props.x);
37
- }
38
- return acc;
39
- }, []);
40
- return scaleBand().range([0, scaleToBand(xyScale).bandwidth()]).domain(domain).paddingInner(0.1).paddingOuter(0.1);
41
- }
42
- }, {
43
- key: "getBarProps",
44
- value: function getBarProps(_ref, index) {
45
- var y = _ref.y;
46
- var _this$asProps2 = this.asProps,
47
- x = _this$asProps2.x,
48
- _this$asProps2$maxBar = _this$asProps2.maxBarSize,
49
- maxBarSize = _this$asProps2$maxBar === void 0 ? Number.POSITIVE_INFINITY : _this$asProps2$maxBar,
50
- patterns = _this$asProps2.patterns;
51
- var bandWidth = this.scaleGroup.bandwidth();
52
- var width = Math.min(bandWidth, maxBarSize);
53
- var offsetX = this.scaleGroup(y) + bandWidth / 2 - width / 2;
54
- return {
55
- offset: [offsetX, 0],
56
- width: width,
57
- color: getChartDefaultColorName(index),
58
- x: x,
59
- groupKey: x,
60
- patterns: patterns
61
- };
62
- }
63
- }, {
64
- key: "getHorizontalBarProps",
65
- value: function getHorizontalBarProps(_ref2, index) {
66
- var x = _ref2.x;
67
- var _this$asProps3 = this.asProps,
68
- y = _this$asProps3.y,
69
- _this$asProps3$maxBar = _this$asProps3.maxBarSize,
70
- maxBarSize = _this$asProps3$maxBar === void 0 ? Number.POSITIVE_INFINITY : _this$asProps3$maxBar;
71
- var bandWidth = this.scaleGroup.bandwidth();
72
- var height = Math.min(bandWidth, maxBarSize);
73
- var offsetY = this.scaleGroup(x) + bandWidth / 2 - height / 2;
74
- return {
75
- offset: [0, offsetY],
76
- height: height,
77
- color: getChartDefaultColorName(index),
78
- y: y,
79
- groupKey: y
80
- };
81
- }
82
- }, {
83
- key: "render",
84
- value: function render() {
85
- var Element = this.Element;
86
- this.scaleGroup = this.getScaleGroup();
87
- this.asProps.dataHintsHandler.establishDataType('grouped-values');
88
- return /*#__PURE__*/React.createElement(Element, {
89
- "aria-hidden": true,
90
- render: "g",
91
- childrenPosition: "inside",
92
- scaleGroup: this.scaleGroup
93
- });
94
- }
95
- }]);
96
- }(Component);
32
+ getBarProps({
33
+ y
34
+ }, index) {
35
+ const {
36
+ x,
37
+ maxBarSize = Number.POSITIVE_INFINITY,
38
+ patterns
39
+ } = this.asProps;
40
+ const bandWidth = this.scaleGroup.bandwidth();
41
+ const width = Math.min(bandWidth, maxBarSize);
42
+ const offsetX = this.scaleGroup(y) + bandWidth / 2 - width / 2;
43
+ return {
44
+ offset: [offsetX, 0],
45
+ width,
46
+ color: getChartDefaultColorName(index),
47
+ x,
48
+ groupKey: x,
49
+ patterns
50
+ };
51
+ }
52
+ getHorizontalBarProps({
53
+ x
54
+ }, index) {
55
+ const {
56
+ y,
57
+ maxBarSize = Number.POSITIVE_INFINITY
58
+ } = this.asProps;
59
+ const bandWidth = this.scaleGroup.bandwidth();
60
+ const height = Math.min(bandWidth, maxBarSize);
61
+ const offsetY = this.scaleGroup(x) + bandWidth / 2 - height / 2;
62
+ return {
63
+ offset: [0, offsetY],
64
+ height,
65
+ color: getChartDefaultColorName(index),
66
+ y,
67
+ groupKey: y
68
+ };
69
+ }
70
+ render() {
71
+ const Element = this.Element;
72
+ this.scaleGroup = this.getScaleGroup();
73
+ this.asProps.dataHintsHandler.establishDataType('grouped-values');
74
+ return /*#__PURE__*/React.createElement(Element, {
75
+ "aria-hidden": true,
76
+ render: "g",
77
+ childrenPosition: "inside",
78
+ scaleGroup: this.scaleGroup
79
+ });
80
+ }
81
+ }
97
82
  _defineProperty(GroupBarRoot, "displayName", 'GroupBar');
98
- var GroupBar = createElement(GroupBarRoot, {
99
- Bar: Bar,
100
- HorizontalBar: HorizontalBar
83
+ const GroupBar = createElement(GroupBarRoot, {
84
+ Bar,
85
+ HorizontalBar
101
86
  });
102
87
  export default GroupBar;
103
88
  //# sourceMappingURL=GroupBar.js.map