@mui/x-charts 8.0.0-alpha.1 → 8.0.0-alpha.11

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 (1050) hide show
  1. package/BarChart/AnimatedBarElement.js +1 -0
  2. package/BarChart/BarChart.d.ts +1 -2
  3. package/BarChart/BarChart.js +30 -17
  4. package/BarChart/BarChart.plugins.d.ts +12 -0
  5. package/BarChart/BarChart.plugins.js +5 -0
  6. package/BarChart/BarElement.js +1 -1
  7. package/BarChart/BarLabel/BarLabel.d.ts +2 -480
  8. package/BarChart/BarLabel/BarLabelItem.js +1 -1
  9. package/BarChart/BarLabel/BarLabelPlot.js +1 -1
  10. package/BarChart/BarLabel/barLabelClasses.d.ts +1 -1
  11. package/BarChart/BarPlot.js +8 -9
  12. package/BarChart/extremums.d.ts +3 -3
  13. package/BarChart/formatter.d.ts +2 -2
  14. package/BarChart/formatter.js +2 -1
  15. package/BarChart/getColor.d.ts +1 -1
  16. package/BarChart/legend.d.ts +1 -1
  17. package/BarChart/legend.js +1 -0
  18. package/BarChart/plugin.d.ts +2 -2
  19. package/BarChart/plugin.js +5 -2
  20. package/BarChart/tooltip.d.ts +3 -0
  21. package/BarChart/tooltip.js +25 -0
  22. package/BarChart/useBarChartProps.d.ts +6 -5
  23. package/BarChart/useBarChartProps.js +21 -11
  24. package/CHANGELOG.md +2007 -230
  25. package/ChartContainer/ChartContainer.d.ts +32 -4
  26. package/ChartContainer/ChartContainer.js +51 -21
  27. package/ChartContainer/useChartContainerProps.d.ts +7 -5
  28. package/ChartContainer/useChartContainerProps.js +18 -13
  29. package/ChartDataProvider/ChartDataProvider.d.ts +41 -0
  30. package/ChartDataProvider/ChartDataProvider.js +97 -0
  31. package/{ChartsOnAxisClickHandler → ChartDataProvider}/package.json +1 -1
  32. package/ChartDataProvider/useChartDataProviderProps.d.ts +11 -0
  33. package/ChartDataProvider/useChartDataProviderProps.js +45 -0
  34. package/ChartsAxis/ChartsAxis.js +5 -7
  35. package/ChartsAxis/axisClasses.js +2 -1
  36. package/ChartsAxisHighlight/ChartsXAxisHighlight.js +3 -3
  37. package/ChartsAxisHighlight/ChartsYAxisHighlight.js +3 -3
  38. package/ChartsGrid/ChartsGrid.js +9 -5
  39. package/ChartsGrid/ChartsHorizontalGrid.d.ts +2 -2
  40. package/ChartsGrid/ChartsHorizontalGrid.js +4 -3
  41. package/ChartsGrid/ChartsVerticalGrid.d.ts +2 -2
  42. package/ChartsGrid/ChartsVerticalGrid.js +4 -3
  43. package/ChartsLabel/ChartsLabel.d.ts +18 -0
  44. package/ChartsLabel/ChartsLabel.js +43 -0
  45. package/ChartsLabel/ChartsLabelGradient.d.ts +41 -0
  46. package/ChartsLabel/ChartsLabelGradient.js +135 -0
  47. package/ChartsLabel/ChartsLabelMark.d.ts +26 -0
  48. package/ChartsLabel/ChartsLabelMark.js +111 -0
  49. package/ChartsLabel/index.d.ts +7 -0
  50. package/ChartsLabel/index.js +6 -0
  51. package/ChartsLabel/labelClasses.d.ts +8 -0
  52. package/ChartsLabel/labelClasses.js +13 -0
  53. package/ChartsLabel/labelGradientClasses.d.ts +16 -0
  54. package/ChartsLabel/labelGradientClasses.js +18 -0
  55. package/ChartsLabel/labelMarkClasses.d.ts +18 -0
  56. package/ChartsLabel/labelMarkClasses.js +18 -0
  57. package/ChartsLabel/package.json +6 -0
  58. package/ChartsLegend/ChartsLegend.d.ts +18 -22
  59. package/ChartsLegend/ChartsLegend.js +100 -109
  60. package/ChartsLegend/ContinuousColorLegend.d.ts +29 -38
  61. package/ChartsLegend/ContinuousColorLegend.js +198 -321
  62. package/ChartsLegend/PiecewiseColorLegend.d.ts +27 -19
  63. package/ChartsLegend/PiecewiseColorLegend.js +201 -111
  64. package/ChartsLegend/chartsLegend.types.d.ts +17 -60
  65. package/ChartsLegend/chartsLegendClasses.d.ts +7 -8
  66. package/ChartsLegend/chartsLegendClasses.js +18 -3
  67. package/ChartsLegend/colorLegend.types.d.ts +13 -0
  68. package/ChartsLegend/continuousColorLegendClasses.d.ts +26 -0
  69. package/ChartsLegend/continuousColorLegendClasses.js +23 -0
  70. package/ChartsLegend/direction.d.ts +1 -0
  71. package/ChartsLegend/index.d.ts +13 -3
  72. package/ChartsLegend/index.js +9 -3
  73. package/ChartsLegend/legend.types.d.ts +6 -59
  74. package/ChartsLegend/legendContext.types.d.ts +55 -0
  75. package/ChartsLegend/onClickContextBuilder.d.ts +2 -0
  76. package/ChartsLegend/onClickContextBuilder.js +7 -0
  77. package/ChartsLegend/piecewiseColorDefaultLabelFormatter.d.ts +2 -0
  78. package/ChartsLegend/piecewiseColorDefaultLabelFormatter.js +9 -0
  79. package/ChartsLegend/piecewiseColorLegend.types.d.ts +26 -0
  80. package/ChartsLegend/piecewiseColorLegendClasses.d.ts +28 -0
  81. package/ChartsLegend/piecewiseColorLegendClasses.js +23 -0
  82. package/ChartsLegend/useAxis.d.ts +1 -1
  83. package/ChartsLegend/useAxis.js +7 -6
  84. package/ChartsReferenceLine/ChartsXReferenceLine.d.ts +1 -1
  85. package/ChartsReferenceLine/ChartsYReferenceLine.d.ts +1 -1
  86. package/ChartsSurface/ChartsSurface.d.ts +14 -6
  87. package/ChartsSurface/ChartsSurface.js +46 -34
  88. package/ChartsTooltip/ChartsAxisTooltipContent.js +11 -6
  89. package/ChartsTooltip/ChartsItemTooltipContent.js +6 -3
  90. package/ChartsTooltip/ChartsTooltip.js +2 -20
  91. package/ChartsTooltip/ChartsTooltipContainer.js +7 -25
  92. package/ChartsTooltip/ChartsTooltipTable.d.ts +0 -6
  93. package/ChartsTooltip/ChartsTooltipTable.js +15 -33
  94. package/ChartsTooltip/chartsTooltipClasses.d.ts +3 -1
  95. package/ChartsTooltip/chartsTooltipClasses.js +3 -2
  96. package/ChartsTooltip/index.d.ts +1 -0
  97. package/ChartsTooltip/index.js +2 -1
  98. package/ChartsTooltip/useAxisTooltip.d.ts +3 -1
  99. package/ChartsTooltip/useAxisTooltip.js +16 -13
  100. package/ChartsTooltip/useItemTooltip.d.ts +8 -6
  101. package/ChartsTooltip/useItemTooltip.js +20 -45
  102. package/ChartsTooltip/utils.js +2 -0
  103. package/ChartsVoronoiHandler/ChartsVoronoiHandler.js +22 -20
  104. package/ChartsXAxis/ChartsXAxis.js +14 -25
  105. package/ChartsYAxis/ChartsYAxis.js +10 -22
  106. package/Gauge/Gauge.d.ts +1 -1
  107. package/Gauge/Gauge.js +5 -7
  108. package/Gauge/GaugeContainer.d.ts +4 -11
  109. package/Gauge/GaugeContainer.js +44 -83
  110. package/Gauge/GaugeProvider.js +2 -0
  111. package/LineChart/AnimatedArea.js +2 -1
  112. package/LineChart/AnimatedLine.js +2 -1
  113. package/LineChart/AppearingMask.js +2 -1
  114. package/LineChart/AreaElement.js +1 -1
  115. package/LineChart/AreaPlot.js +60 -26
  116. package/LineChart/CircleMarkElement.d.ts +0 -4
  117. package/LineChart/CircleMarkElement.js +7 -11
  118. package/LineChart/LineChart.d.ts +1 -6
  119. package/LineChart/LineChart.js +33 -24
  120. package/LineChart/LineChart.plugins.d.ts +12 -0
  121. package/LineChart/LineChart.plugins.js +5 -0
  122. package/LineChart/LineElement.js +1 -1
  123. package/LineChart/LineHighlightElement.d.ts +5 -1
  124. package/LineChart/LineHighlightElement.js +29 -9
  125. package/LineChart/LineHighlightPlot.js +21 -16
  126. package/LineChart/LinePlot.js +60 -25
  127. package/LineChart/MarkElement.js +7 -5
  128. package/LineChart/MarkPlot.d.ts +0 -6
  129. package/LineChart/MarkPlot.js +20 -23
  130. package/LineChart/extremums.d.ts +3 -3
  131. package/LineChart/formatter.d.ts +2 -2
  132. package/LineChart/formatter.js +3 -1
  133. package/LineChart/getColor.d.ts +1 -1
  134. package/LineChart/legend.d.ts +1 -1
  135. package/LineChart/legend.js +1 -0
  136. package/LineChart/plugin.d.ts +2 -2
  137. package/LineChart/plugin.js +5 -2
  138. package/LineChart/tooltip.d.ts +3 -0
  139. package/LineChart/tooltip.js +25 -0
  140. package/LineChart/useLineChartProps.d.ts +6 -5
  141. package/LineChart/useLineChartProps.js +22 -14
  142. package/PieChart/PieArc.js +14 -6
  143. package/PieChart/PieArcLabel.js +13 -9
  144. package/PieChart/PieArcLabelPlot.js +4 -3
  145. package/PieChart/PieArcPlot.js +13 -16
  146. package/PieChart/PieChart.d.ts +3 -1
  147. package/PieChart/PieChart.js +61 -162
  148. package/PieChart/PieChart.plugins.d.ts +5 -0
  149. package/PieChart/PieChart.plugins.js +3 -0
  150. package/PieChart/PiePlot.js +2 -2
  151. package/PieChart/dataTransform/transition.d.ts +2 -2
  152. package/PieChart/dataTransform/transition.js +8 -8
  153. package/PieChart/dataTransform/useTransformData.d.ts +1 -0
  154. package/PieChart/dataTransform/useTransformData.js +3 -2
  155. package/PieChart/formatter.d.ts +2 -2
  156. package/PieChart/formatter.js +4 -1
  157. package/PieChart/getColor.d.ts +1 -1
  158. package/PieChart/getPieCoordinates.d.ts +2 -2
  159. package/PieChart/legend.d.ts +1 -1
  160. package/PieChart/legend.js +4 -3
  161. package/PieChart/plugin.d.ts +2 -2
  162. package/PieChart/plugin.js +5 -2
  163. package/PieChart/tooltip.d.ts +3 -0
  164. package/PieChart/tooltip.js +29 -0
  165. package/README.md +1 -1
  166. package/ScatterChart/Scatter.js +12 -10
  167. package/ScatterChart/ScatterChart.d.ts +1 -2
  168. package/ScatterChart/ScatterChart.js +39 -21
  169. package/ScatterChart/ScatterChart.plugins.d.ts +12 -0
  170. package/ScatterChart/ScatterChart.plugins.js +5 -0
  171. package/ScatterChart/ScatterPlot.js +11 -10
  172. package/ScatterChart/extremums.d.ts +3 -3
  173. package/ScatterChart/extremums.js +1 -1
  174. package/ScatterChart/formatter.d.ts +2 -2
  175. package/ScatterChart/formatter.js +7 -5
  176. package/ScatterChart/getColor.d.ts +1 -1
  177. package/ScatterChart/legend.d.ts +1 -1
  178. package/ScatterChart/legend.js +1 -0
  179. package/ScatterChart/plugin.d.ts +2 -2
  180. package/ScatterChart/plugin.js +5 -2
  181. package/ScatterChart/tooltip.d.ts +3 -0
  182. package/ScatterChart/tooltip.js +25 -0
  183. package/ScatterChart/useScatterChartProps.d.ts +6 -5
  184. package/ScatterChart/useScatterChartProps.js +19 -7
  185. package/SparkLineChart/SparkLineChart.d.ts +14 -2
  186. package/SparkLineChart/SparkLineChart.js +40 -17
  187. package/colorPalettes/colorPalettes.d.ts +5 -0
  188. package/colorPalettes/colorPalettes.js +3 -0
  189. package/constants/index.d.ts +1 -0
  190. package/constants/index.js +2 -1
  191. package/context/AnimationProvider/AnimationProvider.js +1 -1
  192. package/context/ChartProvider/ChartContext.d.ts +6 -0
  193. package/context/ChartProvider/ChartContext.js +8 -0
  194. package/context/ChartProvider/ChartProvider.d.ts +8 -0
  195. package/context/ChartProvider/ChartProvider.js +40 -0
  196. package/context/ChartProvider/ChartProvider.types.d.ts +40 -0
  197. package/context/ChartProvider/index.d.ts +3 -0
  198. package/context/ChartProvider/index.js +3 -0
  199. package/context/ChartProvider/useChartContext.d.ts +3 -0
  200. package/context/ChartProvider/useChartContext.js +11 -0
  201. package/context/PolarProvider/PolarProvider.d.ts +0 -4
  202. package/context/PolarProvider/PolarProvider.js +59 -47
  203. package/context/PolarProvider/getAxisExtremum.d.ts +0 -4
  204. package/context/PolarProvider/getAxisExtremum.js +48 -20
  205. package/context/PolarProvider/usePolarContext.d.ts +0 -2
  206. package/context/PolarProvider/usePolarContext.js +9 -8
  207. package/context/index.d.ts +1 -5
  208. package/context/index.js +1 -3
  209. package/hooks/index.d.ts +5 -0
  210. package/hooks/index.js +6 -1
  211. package/hooks/useAxis.d.ts +9 -1
  212. package/hooks/useAxis.js +32 -6
  213. package/hooks/useAxisEvents.d.ts +0 -1
  214. package/hooks/useAxisEvents.js +0 -161
  215. package/hooks/useChartGradientId.d.ts +31 -0
  216. package/hooks/useChartGradientId.js +47 -0
  217. package/hooks/useChartId.d.ts +1 -1
  218. package/hooks/useChartId.js +5 -6
  219. package/hooks/useColorScale.js +5 -6
  220. package/hooks/useDrawingArea.d.ts +16 -2
  221. package/hooks/useDrawingArea.js +5 -20
  222. package/hooks/useInteractionItemProps.js +10 -27
  223. package/hooks/useItemHighlighted.d.ts +23 -0
  224. package/hooks/useItemHighlighted.js +23 -0
  225. package/hooks/useItemHighlightedGetter.d.ts +12 -0
  226. package/hooks/useItemHighlightedGetter.js +23 -0
  227. package/hooks/useLegend.d.ts +13 -0
  228. package/hooks/useLegend.js +30 -0
  229. package/hooks/useSeries.d.ts +11 -6
  230. package/hooks/useSeries.js +5 -10
  231. package/hooks/useSvgRef.d.ts +1 -1
  232. package/hooks/useSvgRef.js +4 -8
  233. package/hooks/useZAxis.d.ts +7 -0
  234. package/hooks/useZAxis.js +27 -0
  235. package/index.d.ts +2 -1
  236. package/index.js +4 -3
  237. package/internals/calculateMargins.d.ts +7 -0
  238. package/internals/calculateMargins.js +25 -0
  239. package/internals/components/ChartsAxesGradients/ChartsAxesGradients.d.ts +0 -2
  240. package/internals/components/ChartsAxesGradients/ChartsAxesGradients.js +65 -32
  241. package/internals/components/ChartsAxesGradients/ChartsContinuousGradient.js +6 -6
  242. package/internals/components/ChartsAxesGradients/ChartsContinuousGradientObjectBound.d.ts +13 -0
  243. package/internals/components/ChartsAxesGradients/ChartsContinuousGradientObjectBound.js +61 -0
  244. package/internals/components/ChartsAxesGradients/ChartsPiecewiseGradient.d.ts +1 -1
  245. package/internals/components/ChartsAxesGradients/ChartsPiecewiseGradient.js +6 -0
  246. package/internals/components/ChartsWrapper/ChartsWrapper.d.ts +18 -0
  247. package/internals/components/ChartsWrapper/ChartsWrapper.js +66 -0
  248. package/internals/components/ChartsWrapper/index.d.ts +1 -0
  249. package/internals/components/ChartsWrapper/index.js +1 -0
  250. package/internals/consumeSlots.d.ts +48 -0
  251. package/internals/consumeSlots.js +101 -0
  252. package/internals/consumeThemeProps.d.ts +50 -0
  253. package/internals/consumeThemeProps.js +70 -0
  254. package/internals/defaultizeColor.d.ts +29 -22
  255. package/internals/defaultizeColor.js +1 -2
  256. package/internals/getCurve.d.ts +2 -2
  257. package/internals/getCurve.js +14 -26
  258. package/internals/index.d.ts +18 -13
  259. package/internals/index.js +21 -14
  260. package/internals/plugins/allPlugins.d.ts +14 -0
  261. package/internals/plugins/allPlugins.js +7 -0
  262. package/internals/plugins/corePlugins/corePlugins.d.ts +10 -0
  263. package/internals/plugins/corePlugins/corePlugins.js +9 -0
  264. package/internals/plugins/corePlugins/index.d.ts +2 -0
  265. package/internals/plugins/corePlugins/index.js +1 -0
  266. package/internals/plugins/corePlugins/useChartDimensions/index.d.ts +3 -0
  267. package/internals/plugins/corePlugins/useChartDimensions/index.js +2 -0
  268. package/internals/plugins/corePlugins/useChartDimensions/useChartDimensions.d.ts +3 -0
  269. package/internals/plugins/corePlugins/useChartDimensions/useChartDimensions.js +175 -0
  270. package/internals/plugins/corePlugins/useChartDimensions/useChartDimensions.selectors.d.ts +264 -0
  271. package/internals/plugins/corePlugins/useChartDimensions/useChartDimensions.selectors.js +25 -0
  272. package/internals/plugins/corePlugins/useChartDimensions/useChartDimensions.types.d.ts +99 -0
  273. package/internals/plugins/corePlugins/useChartId/index.d.ts +3 -0
  274. package/internals/plugins/corePlugins/useChartId/index.js +2 -0
  275. package/internals/plugins/corePlugins/useChartId/useChartId.d.ts +3 -0
  276. package/internals/plugins/corePlugins/useChartId/useChartId.js +32 -0
  277. package/internals/plugins/corePlugins/useChartId/useChartId.selectors.d.ts +36 -0
  278. package/internals/plugins/corePlugins/useChartId/useChartId.selectors.js +9 -0
  279. package/internals/plugins/corePlugins/useChartId/useChartId.types.d.ts +20 -0
  280. package/internals/plugins/corePlugins/useChartId/useChartId.utils.d.ts +1 -0
  281. package/internals/plugins/corePlugins/useChartId/useChartId.utils.js +5 -0
  282. package/internals/plugins/corePlugins/useChartSeries/index.d.ts +3 -0
  283. package/internals/plugins/corePlugins/useChartSeries/index.js +2 -0
  284. package/internals/plugins/corePlugins/useChartSeries/processSeries.d.ts +18 -0
  285. package/{modern/context/SeriesProvider → internals/plugins/corePlugins/useChartSeries}/processSeries.js +9 -6
  286. package/internals/plugins/corePlugins/useChartSeries/useChartSeries.d.ts +3 -0
  287. package/internals/plugins/corePlugins/useChartSeries/useChartSeries.js +72 -0
  288. package/internals/plugins/corePlugins/useChartSeries/useChartSeries.selectors.d.ts +61 -0
  289. package/internals/plugins/corePlugins/useChartSeries/useChartSeries.selectors.js +4 -0
  290. package/internals/plugins/corePlugins/useChartSeries/useChartSeries.types.d.ts +54 -0
  291. package/internals/plugins/corePlugins/useChartSeries/useColorProcessor.d.ts +10 -0
  292. package/internals/plugins/corePlugins/useChartSeries/useColorProcessor.js +21 -0
  293. package/internals/plugins/featurePlugins/useChartCartesianAxis/computeAxisValue.d.ts +29 -0
  294. package/internals/{computeAxisValue.js → plugins/featurePlugins/useChartCartesianAxis/computeAxisValue.js} +19 -27
  295. package/internals/plugins/featurePlugins/useChartCartesianAxis/createAxisFilterMapper.d.ts +18 -0
  296. package/internals/plugins/featurePlugins/useChartCartesianAxis/createAxisFilterMapper.js +61 -0
  297. package/internals/plugins/featurePlugins/useChartCartesianAxis/defaultizeAxis.d.ts +39 -0
  298. package/{modern/context/ChartDataProvider/useDefaultizeAxis.js → internals/plugins/featurePlugins/useChartCartesianAxis/defaultizeAxis.js} +3 -11
  299. package/internals/plugins/featurePlugins/useChartCartesianAxis/getAxisExtremum.d.ts +6 -0
  300. package/internals/plugins/featurePlugins/useChartCartesianAxis/getAxisExtremum.js +22 -0
  301. package/internals/plugins/featurePlugins/useChartCartesianAxis/getAxisValue.d.ts +9 -0
  302. package/internals/plugins/featurePlugins/useChartCartesianAxis/getAxisValue.js +59 -0
  303. package/internals/plugins/featurePlugins/useChartCartesianAxis/index.d.ts +6 -0
  304. package/internals/plugins/featurePlugins/useChartCartesianAxis/index.js +5 -0
  305. package/internals/plugins/featurePlugins/useChartCartesianAxis/useChartCartesianAxis.d.ts +3 -0
  306. package/internals/plugins/featurePlugins/useChartCartesianAxis/useChartCartesianAxis.js +205 -0
  307. package/internals/plugins/featurePlugins/useChartCartesianAxis/useChartCartesianAxis.selectors.d.ts +1336 -0
  308. package/internals/plugins/featurePlugins/useChartCartesianAxis/useChartCartesianAxis.selectors.js +89 -0
  309. package/internals/plugins/featurePlugins/useChartCartesianAxis/useChartCartesianAxis.types.d.ts +92 -0
  310. package/internals/plugins/featurePlugins/useChartCartesianAxis/zoom.types.d.ts +18 -0
  311. package/internals/plugins/featurePlugins/useChartHighlight/createIsFaded.d.ts +3 -0
  312. package/internals/plugins/featurePlugins/useChartHighlight/createIsFaded.js +12 -0
  313. package/internals/plugins/featurePlugins/useChartHighlight/createIsHighlighted.d.ts +3 -0
  314. package/internals/plugins/featurePlugins/useChartHighlight/createIsHighlighted.js +12 -0
  315. package/internals/plugins/featurePlugins/useChartHighlight/highlightConfig.types.d.ts +20 -0
  316. package/internals/plugins/featurePlugins/useChartHighlight/index.d.ts +4 -0
  317. package/internals/plugins/featurePlugins/useChartHighlight/index.js +2 -0
  318. package/internals/plugins/featurePlugins/useChartHighlight/useChartHighlight.d.ts +3 -0
  319. package/internals/plugins/featurePlugins/useChartHighlight/useChartHighlight.js +44 -0
  320. package/internals/plugins/featurePlugins/useChartHighlight/useChartHighlight.selectors.d.ts +678 -0
  321. package/internals/plugins/featurePlugins/useChartHighlight/useChartHighlight.selectors.js +31 -0
  322. package/internals/plugins/featurePlugins/useChartHighlight/useChartHighlight.types.d.ts +71 -0
  323. package/internals/plugins/featurePlugins/useChartInteraction/index.d.ts +3 -0
  324. package/internals/plugins/featurePlugins/useChartInteraction/index.js +2 -0
  325. package/internals/plugins/featurePlugins/useChartInteraction/useChartInteraction.d.ts +3 -0
  326. package/internals/plugins/featurePlugins/useChartInteraction/useChartInteraction.js +90 -0
  327. package/internals/plugins/featurePlugins/useChartInteraction/useChartInteraction.selectors.d.ts +376 -0
  328. package/{context/InteractionSelectors.js → internals/plugins/featurePlugins/useChartInteraction/useChartInteraction.selectors.js} +2 -4
  329. package/internals/plugins/featurePlugins/useChartInteraction/useChartInteraction.types.d.ts +62 -0
  330. package/internals/plugins/featurePlugins/useChartZAxis/index.d.ts +3 -0
  331. package/internals/plugins/featurePlugins/useChartZAxis/index.js +2 -0
  332. package/internals/plugins/featurePlugins/useChartZAxis/useChartZAxis.d.ts +3 -0
  333. package/internals/plugins/featurePlugins/useChartZAxis/useChartZAxis.js +86 -0
  334. package/internals/plugins/featurePlugins/useChartZAxis/useChartZAxis.selectors.d.ts +45 -0
  335. package/internals/plugins/featurePlugins/useChartZAxis/useChartZAxis.selectors.js +3 -0
  336. package/internals/plugins/featurePlugins/useChartZAxis/useChartZAxis.types.d.ts +39 -0
  337. package/internals/plugins/featurePlugins/useChartZAxis/utils.d.ts +0 -0
  338. package/internals/plugins/featurePlugins/useChartZAxis/utils.js +0 -0
  339. package/internals/plugins/models/chart.d.ts +14 -0
  340. package/internals/plugins/models/helpers.d.ts +7 -0
  341. package/internals/plugins/models/index.d.ts +4 -35
  342. package/internals/plugins/models/index.js +4 -1
  343. package/internals/plugins/models/plugin.d.ts +105 -0
  344. package/internals/plugins/models/seriesConfig/colorProcessor.types.d.ts +5 -0
  345. package/internals/plugins/models/seriesConfig/extremumGetter.types.d.ts +22 -0
  346. package/internals/plugins/models/seriesConfig/extremumGetter.types.js +1 -0
  347. package/internals/plugins/models/seriesConfig/index.d.ts +6 -0
  348. package/internals/plugins/models/seriesConfig/index.js +6 -0
  349. package/internals/plugins/models/seriesConfig/legendGetter.types.d.ts +4 -0
  350. package/internals/plugins/models/seriesConfig/legendGetter.types.js +1 -0
  351. package/internals/plugins/models/seriesConfig/seriesConfig.types.d.ts +18 -0
  352. package/internals/plugins/models/seriesConfig/seriesConfig.types.js +1 -0
  353. package/internals/plugins/models/seriesConfig/seriesProcessor.types.d.ts +16 -0
  354. package/internals/plugins/models/seriesConfig/seriesProcessor.types.js +1 -0
  355. package/internals/plugins/models/seriesConfig/tooltipGetter.types.d.ts +7 -0
  356. package/internals/plugins/models/seriesConfig/tooltipGetter.types.js +1 -0
  357. package/internals/plugins/utils/ChartStore.d.ts +9 -8
  358. package/internals/plugins/utils/ChartStore.js +0 -2
  359. package/internals/plugins/utils/selectors.d.ts +2 -2
  360. package/internals/store/extractPluginParamsFromProps.d.ts +7 -0
  361. package/internals/store/extractPluginParamsFromProps.js +28 -0
  362. package/internals/store/useChartModels.d.ts +7 -0
  363. package/internals/store/useChartModels.js +64 -0
  364. package/internals/store/useCharts.d.ts +16 -0
  365. package/internals/store/useCharts.js +83 -0
  366. package/internals/store/useCharts.types.d.ts +5 -0
  367. package/internals/store/useCharts.types.js +1 -0
  368. package/internals/store/useSelector.d.ts +4 -0
  369. package/internals/store/useStore.d.ts +9 -0
  370. package/internals/store/useStore.js +9 -0
  371. package/models/axis.d.ts +18 -13
  372. package/models/axis.js +5 -1
  373. package/models/curve.d.ts +6 -0
  374. package/models/curve.js +1 -0
  375. package/models/index.d.ts +3 -1
  376. package/models/layout.d.ts +2 -1
  377. package/models/position.d.ts +10 -0
  378. package/models/position.js +1 -0
  379. package/models/seriesType/common.d.ts +8 -1
  380. package/models/seriesType/line.d.ts +12 -1
  381. package/models/seriesType/pie.d.ts +7 -1
  382. package/models/seriesType/scatter.d.ts +3 -3
  383. package/modern/BarChart/AnimatedBarElement.js +1 -0
  384. package/modern/BarChart/BarChart.js +30 -17
  385. package/modern/BarChart/BarChart.plugins.js +5 -0
  386. package/modern/BarChart/BarElement.js +1 -1
  387. package/modern/BarChart/BarLabel/BarLabelItem.js +1 -1
  388. package/modern/BarChart/BarLabel/BarLabelPlot.js +1 -1
  389. package/modern/BarChart/BarPlot.js +8 -9
  390. package/modern/BarChart/formatter.js +2 -1
  391. package/modern/BarChart/legend.js +1 -0
  392. package/modern/BarChart/plugin.js +5 -2
  393. package/modern/BarChart/tooltip.js +25 -0
  394. package/modern/BarChart/useBarChartProps.js +21 -11
  395. package/modern/ChartContainer/ChartContainer.js +51 -21
  396. package/modern/ChartContainer/useChartContainerProps.js +18 -13
  397. package/modern/ChartDataProvider/ChartDataProvider.js +97 -0
  398. package/modern/ChartDataProvider/useChartDataProviderProps.js +45 -0
  399. package/modern/ChartsAxis/ChartsAxis.js +5 -7
  400. package/modern/ChartsAxis/axisClasses.js +2 -1
  401. package/modern/ChartsAxisHighlight/ChartsXAxisHighlight.js +3 -3
  402. package/modern/ChartsAxisHighlight/ChartsYAxisHighlight.js +3 -3
  403. package/modern/ChartsGrid/ChartsGrid.js +9 -5
  404. package/modern/ChartsGrid/ChartsHorizontalGrid.js +4 -3
  405. package/modern/ChartsGrid/ChartsVerticalGrid.js +4 -3
  406. package/modern/ChartsLabel/ChartsLabel.js +43 -0
  407. package/modern/ChartsLabel/ChartsLabelGradient.js +135 -0
  408. package/modern/ChartsLabel/ChartsLabelMark.js +111 -0
  409. package/modern/ChartsLabel/index.js +6 -0
  410. package/modern/ChartsLabel/labelClasses.js +13 -0
  411. package/modern/ChartsLabel/labelGradientClasses.js +18 -0
  412. package/modern/ChartsLabel/labelMarkClasses.js +18 -0
  413. package/modern/ChartsLegend/ChartsLegend.js +100 -109
  414. package/modern/ChartsLegend/ContinuousColorLegend.js +198 -321
  415. package/modern/ChartsLegend/PiecewiseColorLegend.js +201 -111
  416. package/modern/ChartsLegend/chartsLegendClasses.js +18 -3
  417. package/modern/ChartsLegend/colorLegend.types.js +1 -0
  418. package/modern/ChartsLegend/continuousColorLegendClasses.js +23 -0
  419. package/modern/ChartsLegend/direction.js +1 -0
  420. package/modern/ChartsLegend/index.js +9 -3
  421. package/modern/ChartsLegend/legendContext.types.js +1 -0
  422. package/modern/ChartsLegend/onClickContextBuilder.js +7 -0
  423. package/modern/ChartsLegend/piecewiseColorDefaultLabelFormatter.js +9 -0
  424. package/modern/ChartsLegend/piecewiseColorLegend.types.js +1 -0
  425. package/modern/ChartsLegend/piecewiseColorLegendClasses.js +23 -0
  426. package/modern/ChartsLegend/useAxis.js +7 -6
  427. package/modern/ChartsSurface/ChartsSurface.js +46 -34
  428. package/modern/ChartsTooltip/ChartsAxisTooltipContent.js +11 -6
  429. package/modern/ChartsTooltip/ChartsItemTooltipContent.js +6 -3
  430. package/modern/ChartsTooltip/ChartsTooltip.js +2 -20
  431. package/modern/ChartsTooltip/ChartsTooltipContainer.js +7 -25
  432. package/modern/ChartsTooltip/ChartsTooltipTable.js +15 -33
  433. package/modern/ChartsTooltip/chartsTooltipClasses.js +3 -2
  434. package/modern/ChartsTooltip/index.js +2 -1
  435. package/modern/ChartsTooltip/useAxisTooltip.js +16 -13
  436. package/modern/ChartsTooltip/useItemTooltip.js +20 -45
  437. package/modern/ChartsTooltip/utils.js +2 -0
  438. package/modern/ChartsVoronoiHandler/ChartsVoronoiHandler.js +22 -20
  439. package/modern/ChartsXAxis/ChartsXAxis.js +14 -25
  440. package/modern/ChartsYAxis/ChartsYAxis.js +10 -22
  441. package/modern/Gauge/Gauge.js +5 -7
  442. package/modern/Gauge/GaugeContainer.js +44 -83
  443. package/modern/Gauge/GaugeProvider.js +2 -0
  444. package/modern/LineChart/AnimatedArea.js +2 -1
  445. package/modern/LineChart/AnimatedLine.js +2 -1
  446. package/modern/LineChart/AppearingMask.js +2 -1
  447. package/modern/LineChart/AreaElement.js +1 -1
  448. package/modern/LineChart/AreaPlot.js +60 -26
  449. package/modern/LineChart/CircleMarkElement.js +7 -11
  450. package/modern/LineChart/LineChart.js +33 -24
  451. package/modern/LineChart/LineChart.plugins.js +5 -0
  452. package/modern/LineChart/LineElement.js +1 -1
  453. package/modern/LineChart/LineHighlightElement.js +29 -9
  454. package/modern/LineChart/LineHighlightPlot.js +21 -16
  455. package/modern/LineChart/LinePlot.js +60 -25
  456. package/modern/LineChart/MarkElement.js +7 -5
  457. package/modern/LineChart/MarkPlot.js +20 -23
  458. package/modern/LineChart/formatter.js +3 -1
  459. package/modern/LineChart/legend.js +1 -0
  460. package/modern/LineChart/plugin.js +5 -2
  461. package/modern/LineChart/tooltip.js +25 -0
  462. package/modern/LineChart/useLineChartProps.js +22 -14
  463. package/modern/PieChart/PieArc.js +14 -6
  464. package/modern/PieChart/PieArcLabel.js +13 -9
  465. package/modern/PieChart/PieArcLabelPlot.js +4 -3
  466. package/modern/PieChart/PieArcPlot.js +13 -16
  467. package/modern/PieChart/PieChart.js +61 -162
  468. package/modern/PieChart/PieChart.plugins.js +3 -0
  469. package/modern/PieChart/PiePlot.js +2 -2
  470. package/modern/PieChart/dataTransform/transition.js +8 -8
  471. package/modern/PieChart/dataTransform/useTransformData.js +3 -2
  472. package/modern/PieChart/formatter.js +4 -1
  473. package/modern/PieChart/legend.js +4 -3
  474. package/modern/PieChart/plugin.js +5 -2
  475. package/modern/PieChart/tooltip.js +29 -0
  476. package/modern/ScatterChart/Scatter.js +12 -10
  477. package/modern/ScatterChart/ScatterChart.js +39 -21
  478. package/modern/ScatterChart/ScatterChart.plugins.js +5 -0
  479. package/modern/ScatterChart/ScatterPlot.js +11 -10
  480. package/modern/ScatterChart/extremums.js +1 -1
  481. package/modern/ScatterChart/formatter.js +7 -5
  482. package/modern/ScatterChart/legend.js +1 -0
  483. package/modern/ScatterChart/plugin.js +5 -2
  484. package/modern/ScatterChart/tooltip.js +25 -0
  485. package/modern/ScatterChart/useScatterChartProps.js +19 -7
  486. package/modern/SparkLineChart/SparkLineChart.js +40 -17
  487. package/modern/colorPalettes/colorPalettes.js +3 -0
  488. package/modern/constants/index.js +2 -1
  489. package/modern/context/AnimationProvider/AnimationProvider.js +1 -1
  490. package/modern/context/ChartProvider/ChartContext.js +8 -0
  491. package/modern/context/ChartProvider/ChartProvider.js +40 -0
  492. package/modern/context/ChartProvider/ChartProvider.types.js +1 -0
  493. package/modern/context/ChartProvider/index.js +3 -0
  494. package/modern/context/ChartProvider/useChartContext.js +11 -0
  495. package/modern/context/PolarProvider/PolarProvider.js +59 -47
  496. package/modern/context/PolarProvider/getAxisExtremum.js +48 -20
  497. package/modern/context/PolarProvider/usePolarContext.js +9 -8
  498. package/modern/context/index.js +1 -3
  499. package/modern/hooks/index.js +6 -1
  500. package/modern/hooks/useAxis.js +32 -6
  501. package/modern/hooks/useAxisEvents.js +0 -161
  502. package/modern/hooks/useChartGradientId.js +47 -0
  503. package/modern/hooks/useChartId.js +5 -6
  504. package/modern/hooks/useColorScale.js +5 -6
  505. package/modern/hooks/useDrawingArea.js +5 -20
  506. package/modern/hooks/useInteractionItemProps.js +10 -27
  507. package/modern/hooks/useItemHighlighted.js +23 -0
  508. package/modern/hooks/useItemHighlightedGetter.js +23 -0
  509. package/modern/hooks/useLegend.js +30 -0
  510. package/modern/hooks/useSeries.js +5 -10
  511. package/modern/hooks/useSvgRef.js +4 -8
  512. package/modern/hooks/useZAxis.js +27 -0
  513. package/modern/index.js +4 -3
  514. package/modern/internals/calculateMargins.js +25 -0
  515. package/modern/internals/components/ChartsAxesGradients/ChartsAxesGradients.js +65 -32
  516. package/modern/internals/components/ChartsAxesGradients/ChartsContinuousGradient.js +6 -6
  517. package/modern/internals/components/ChartsAxesGradients/ChartsContinuousGradientObjectBound.js +61 -0
  518. package/modern/internals/components/ChartsAxesGradients/ChartsPiecewiseGradient.js +6 -0
  519. package/modern/internals/components/ChartsWrapper/ChartsWrapper.js +66 -0
  520. package/modern/internals/components/ChartsWrapper/index.js +1 -0
  521. package/modern/internals/consumeSlots.js +101 -0
  522. package/modern/internals/consumeThemeProps.js +70 -0
  523. package/modern/internals/defaultizeColor.js +1 -2
  524. package/modern/internals/getCurve.js +14 -26
  525. package/modern/internals/index.js +21 -14
  526. package/modern/internals/plugins/allPlugins.js +7 -0
  527. package/modern/internals/plugins/corePlugins/corePlugins.js +9 -0
  528. package/modern/internals/plugins/corePlugins/index.js +1 -0
  529. package/modern/internals/plugins/corePlugins/useChartDimensions/index.js +2 -0
  530. package/modern/internals/plugins/corePlugins/useChartDimensions/useChartDimensions.js +175 -0
  531. package/modern/internals/plugins/corePlugins/useChartDimensions/useChartDimensions.selectors.js +25 -0
  532. package/modern/internals/plugins/corePlugins/useChartDimensions/useChartDimensions.types.js +1 -0
  533. package/modern/internals/plugins/corePlugins/useChartId/index.js +2 -0
  534. package/modern/internals/plugins/corePlugins/useChartId/useChartId.js +32 -0
  535. package/modern/internals/plugins/corePlugins/useChartId/useChartId.selectors.js +9 -0
  536. package/modern/internals/plugins/corePlugins/useChartId/useChartId.types.js +1 -0
  537. package/modern/internals/plugins/corePlugins/useChartId/useChartId.utils.js +5 -0
  538. package/modern/internals/plugins/corePlugins/useChartSeries/index.js +2 -0
  539. package/{context/SeriesProvider → modern/internals/plugins/corePlugins/useChartSeries}/processSeries.js +9 -6
  540. package/modern/internals/plugins/corePlugins/useChartSeries/useChartSeries.js +72 -0
  541. package/modern/internals/plugins/corePlugins/useChartSeries/useChartSeries.selectors.js +4 -0
  542. package/modern/internals/plugins/corePlugins/useChartSeries/useChartSeries.types.js +1 -0
  543. package/modern/internals/plugins/corePlugins/useChartSeries/useColorProcessor.js +21 -0
  544. package/modern/internals/{computeAxisValue.js → plugins/featurePlugins/useChartCartesianAxis/computeAxisValue.js} +19 -27
  545. package/modern/internals/plugins/featurePlugins/useChartCartesianAxis/createAxisFilterMapper.js +61 -0
  546. package/{context/ChartDataProvider/useDefaultizeAxis.js → modern/internals/plugins/featurePlugins/useChartCartesianAxis/defaultizeAxis.js} +3 -11
  547. package/modern/internals/plugins/featurePlugins/useChartCartesianAxis/getAxisExtremum.js +22 -0
  548. package/modern/internals/plugins/featurePlugins/useChartCartesianAxis/getAxisValue.js +59 -0
  549. package/modern/internals/plugins/featurePlugins/useChartCartesianAxis/index.js +5 -0
  550. package/modern/internals/plugins/featurePlugins/useChartCartesianAxis/useChartCartesianAxis.js +205 -0
  551. package/modern/internals/plugins/featurePlugins/useChartCartesianAxis/useChartCartesianAxis.selectors.js +89 -0
  552. package/modern/internals/plugins/featurePlugins/useChartCartesianAxis/useChartCartesianAxis.types.js +1 -0
  553. package/modern/internals/plugins/featurePlugins/useChartCartesianAxis/zoom.types.js +1 -0
  554. package/modern/internals/plugins/featurePlugins/useChartHighlight/createIsFaded.js +12 -0
  555. package/modern/internals/plugins/featurePlugins/useChartHighlight/createIsHighlighted.js +12 -0
  556. package/modern/internals/plugins/featurePlugins/useChartHighlight/highlightConfig.types.js +1 -0
  557. package/modern/internals/plugins/featurePlugins/useChartHighlight/index.js +2 -0
  558. package/modern/internals/plugins/featurePlugins/useChartHighlight/useChartHighlight.js +44 -0
  559. package/modern/internals/plugins/featurePlugins/useChartHighlight/useChartHighlight.selectors.js +31 -0
  560. package/modern/internals/plugins/featurePlugins/useChartHighlight/useChartHighlight.types.js +1 -0
  561. package/modern/internals/plugins/featurePlugins/useChartInteraction/index.js +2 -0
  562. package/modern/internals/plugins/featurePlugins/useChartInteraction/useChartInteraction.js +90 -0
  563. package/modern/{context/InteractionSelectors.js → internals/plugins/featurePlugins/useChartInteraction/useChartInteraction.selectors.js} +2 -4
  564. package/modern/internals/plugins/featurePlugins/useChartInteraction/useChartInteraction.types.js +1 -0
  565. package/modern/internals/plugins/featurePlugins/useChartZAxis/index.js +2 -0
  566. package/modern/internals/plugins/featurePlugins/useChartZAxis/useChartZAxis.js +86 -0
  567. package/modern/internals/plugins/featurePlugins/useChartZAxis/useChartZAxis.selectors.js +3 -0
  568. package/modern/internals/plugins/featurePlugins/useChartZAxis/useChartZAxis.types.js +1 -0
  569. package/modern/internals/plugins/featurePlugins/useChartZAxis/utils.js +0 -0
  570. package/modern/internals/plugins/models/chart.js +1 -0
  571. package/modern/internals/plugins/models/helpers.js +1 -0
  572. package/modern/internals/plugins/models/index.js +4 -1
  573. package/modern/internals/plugins/models/plugin.js +1 -0
  574. package/modern/internals/plugins/models/seriesConfig/colorProcessor.types.js +1 -0
  575. package/modern/internals/plugins/models/seriesConfig/extremumGetter.types.js +1 -0
  576. package/modern/internals/plugins/models/seriesConfig/index.js +6 -0
  577. package/modern/internals/plugins/models/seriesConfig/legendGetter.types.js +1 -0
  578. package/modern/internals/plugins/models/seriesConfig/seriesConfig.types.js +1 -0
  579. package/modern/internals/plugins/models/seriesConfig/seriesProcessor.types.js +1 -0
  580. package/modern/internals/plugins/models/seriesConfig/tooltipGetter.types.js +1 -0
  581. package/modern/internals/plugins/utils/ChartStore.js +0 -2
  582. package/modern/internals/store/extractPluginParamsFromProps.js +28 -0
  583. package/modern/internals/store/useChartModels.js +64 -0
  584. package/modern/internals/store/useCharts.js +83 -0
  585. package/modern/internals/store/useCharts.types.js +1 -0
  586. package/modern/internals/store/useStore.js +9 -0
  587. package/modern/models/axis.js +5 -1
  588. package/modern/models/curve.js +1 -0
  589. package/modern/models/position.js +1 -0
  590. package/node/BarChart/AnimatedBarElement.js +1 -0
  591. package/node/BarChart/BarChart.js +30 -17
  592. package/node/BarChart/BarChart.plugins.js +11 -0
  593. package/node/BarChart/BarElement.js +2 -2
  594. package/node/BarChart/BarLabel/BarLabelItem.js +2 -2
  595. package/node/BarChart/BarLabel/BarLabelPlot.js +1 -1
  596. package/node/BarChart/BarPlot.js +6 -6
  597. package/node/BarChart/formatter.js +2 -1
  598. package/node/BarChart/legend.js +1 -0
  599. package/node/BarChart/plugin.js +5 -2
  600. package/node/BarChart/tooltip.js +31 -0
  601. package/node/BarChart/useBarChartProps.js +20 -11
  602. package/node/ChartContainer/ChartContainer.js +51 -21
  603. package/node/ChartContainer/useChartContainerProps.js +18 -13
  604. package/node/ChartDataProvider/ChartDataProvider.js +103 -0
  605. package/node/ChartDataProvider/useChartDataProviderProps.js +52 -0
  606. package/node/ChartsAxis/ChartsAxis.js +5 -7
  607. package/node/ChartsAxis/axisClasses.js +5 -3
  608. package/node/ChartsAxisHighlight/ChartsXAxisHighlight.js +4 -4
  609. package/node/ChartsAxisHighlight/ChartsYAxisHighlight.js +4 -4
  610. package/node/ChartsGrid/ChartsGrid.js +9 -5
  611. package/node/ChartsGrid/ChartsHorizontalGrid.js +4 -3
  612. package/node/ChartsGrid/ChartsVerticalGrid.js +4 -3
  613. package/node/ChartsLabel/ChartsLabel.js +49 -0
  614. package/node/ChartsLabel/ChartsLabelGradient.js +141 -0
  615. package/node/ChartsLabel/ChartsLabelMark.js +117 -0
  616. package/node/ChartsLabel/index.js +26 -0
  617. package/node/ChartsLabel/labelClasses.js +22 -0
  618. package/node/ChartsLabel/labelGradientClasses.js +27 -0
  619. package/node/ChartsLabel/labelMarkClasses.js +27 -0
  620. package/node/ChartsLegend/ChartsLegend.js +99 -108
  621. package/node/ChartsLegend/ContinuousColorLegend.js +199 -322
  622. package/node/ChartsLegend/PiecewiseColorLegend.js +201 -111
  623. package/node/ChartsLegend/chartsLegendClasses.js +21 -5
  624. package/node/ChartsLegend/continuousColorLegendClasses.js +31 -0
  625. package/node/ChartsLegend/index.js +80 -16
  626. package/node/ChartsLegend/onClickContextBuilder.js +14 -0
  627. package/node/ChartsLegend/piecewiseColorDefaultLabelFormatter.js +15 -0
  628. package/node/ChartsLegend/piecewiseColorLegendClasses.js +31 -0
  629. package/node/ChartsLegend/useAxis.js +7 -7
  630. package/node/ChartsSurface/ChartsSurface.js +46 -34
  631. package/node/ChartsTooltip/ChartsAxisTooltipContent.js +10 -5
  632. package/node/ChartsTooltip/ChartsItemTooltipContent.js +5 -2
  633. package/node/ChartsTooltip/ChartsTooltip.js +2 -20
  634. package/node/ChartsTooltip/ChartsTooltipContainer.js +7 -25
  635. package/node/ChartsTooltip/ChartsTooltipTable.js +16 -34
  636. package/node/ChartsTooltip/chartsTooltipClasses.js +3 -2
  637. package/node/ChartsTooltip/index.js +13 -1
  638. package/node/ChartsTooltip/useAxisTooltip.js +16 -14
  639. package/node/ChartsTooltip/useItemTooltip.js +20 -47
  640. package/node/ChartsTooltip/utils.js +1 -0
  641. package/node/ChartsVoronoiHandler/ChartsVoronoiHandler.js +24 -22
  642. package/node/ChartsXAxis/ChartsXAxis.js +14 -25
  643. package/node/ChartsYAxis/ChartsYAxis.js +10 -22
  644. package/node/Gauge/Gauge.js +5 -7
  645. package/node/Gauge/GaugeContainer.js +44 -83
  646. package/node/Gauge/GaugeProvider.js +2 -2
  647. package/node/LineChart/AnimatedArea.js +2 -1
  648. package/node/LineChart/AnimatedLine.js +2 -1
  649. package/node/LineChart/AppearingMask.js +2 -1
  650. package/node/LineChart/AreaElement.js +2 -2
  651. package/node/LineChart/AreaPlot.js +60 -26
  652. package/node/LineChart/CircleMarkElement.js +9 -13
  653. package/node/LineChart/LineChart.js +33 -24
  654. package/node/LineChart/LineChart.plugins.js +11 -0
  655. package/node/LineChart/LineElement.js +2 -2
  656. package/node/LineChart/LineHighlightElement.js +29 -9
  657. package/node/LineChart/LineHighlightPlot.js +22 -17
  658. package/node/LineChart/LinePlot.js +60 -25
  659. package/node/LineChart/MarkElement.js +9 -7
  660. package/node/LineChart/MarkPlot.js +20 -23
  661. package/node/LineChart/formatter.js +3 -1
  662. package/node/LineChart/legend.js +1 -0
  663. package/node/LineChart/plugin.js +5 -2
  664. package/node/LineChart/tooltip.js +31 -0
  665. package/node/LineChart/useLineChartProps.js +21 -14
  666. package/node/PieChart/PieArc.js +14 -6
  667. package/node/PieChart/PieArcLabel.js +13 -9
  668. package/node/PieChart/PieArcLabelPlot.js +3 -2
  669. package/node/PieChart/PieArcPlot.js +12 -15
  670. package/node/PieChart/PieChart.js +61 -162
  671. package/node/PieChart/PieChart.plugins.js +9 -0
  672. package/node/PieChart/PiePlot.js +2 -2
  673. package/node/PieChart/dataTransform/transition.js +11 -9
  674. package/node/PieChart/dataTransform/useTransformData.js +3 -2
  675. package/node/PieChart/formatter.js +4 -1
  676. package/node/PieChart/legend.js +4 -3
  677. package/node/PieChart/plugin.js +5 -2
  678. package/node/PieChart/tooltip.js +36 -0
  679. package/node/ScatterChart/Scatter.js +13 -11
  680. package/node/ScatterChart/ScatterChart.js +39 -21
  681. package/node/ScatterChart/ScatterChart.plugins.js +11 -0
  682. package/node/ScatterChart/ScatterPlot.js +11 -10
  683. package/node/ScatterChart/extremums.js +1 -1
  684. package/node/ScatterChart/formatter.js +7 -5
  685. package/node/ScatterChart/legend.js +1 -0
  686. package/node/ScatterChart/plugin.js +5 -2
  687. package/node/ScatterChart/tooltip.js +31 -0
  688. package/node/ScatterChart/useScatterChartProps.js +18 -7
  689. package/node/SparkLineChart/SparkLineChart.js +39 -16
  690. package/node/colorPalettes/colorPalettes.js +5 -1
  691. package/node/constants/index.js +3 -2
  692. package/node/context/AnimationProvider/AnimationProvider.js +1 -1
  693. package/node/context/{SeriesProvider/SeriesContext.js → ChartProvider/ChartContext.js} +6 -6
  694. package/node/context/ChartProvider/ChartProvider.js +46 -0
  695. package/node/context/ChartProvider/index.js +38 -0
  696. package/node/context/ChartProvider/useChartContext.js +18 -0
  697. package/node/context/PolarProvider/PolarProvider.js +59 -51
  698. package/node/context/PolarProvider/getAxisExtremum.js +49 -27
  699. package/node/context/PolarProvider/usePolarContext.js +9 -14
  700. package/node/context/index.js +1 -31
  701. package/node/hooks/index.js +65 -2
  702. package/node/hooks/useAxis.js +34 -6
  703. package/node/hooks/useAxisEvents.js +1 -169
  704. package/node/hooks/useChartGradientId.js +56 -0
  705. package/node/hooks/useChartId.js +5 -7
  706. package/node/hooks/useColorScale.js +5 -7
  707. package/node/hooks/useDrawingArea.js +5 -21
  708. package/node/hooks/useInteractionItemProps.js +10 -28
  709. package/node/hooks/useItemHighlighted.js +28 -0
  710. package/node/hooks/useItemHighlightedGetter.js +27 -0
  711. package/node/hooks/useLegend.js +35 -0
  712. package/node/hooks/useSeries.js +5 -9
  713. package/node/hooks/useSvgRef.js +4 -9
  714. package/node/hooks/useZAxis.js +33 -0
  715. package/node/index.js +23 -12
  716. package/node/internals/calculateMargins.js +33 -0
  717. package/node/internals/components/ChartsAxesGradients/ChartsAxesGradients.js +64 -32
  718. package/node/internals/components/ChartsAxesGradients/ChartsContinuousGradient.js +6 -6
  719. package/node/internals/components/ChartsAxesGradients/ChartsContinuousGradientObjectBound.js +69 -0
  720. package/node/internals/components/ChartsAxesGradients/ChartsPiecewiseGradient.js +6 -0
  721. package/node/internals/components/ChartsWrapper/ChartsWrapper.js +72 -0
  722. package/node/internals/components/ChartsWrapper/index.js +16 -0
  723. package/node/internals/consumeSlots.js +109 -0
  724. package/node/internals/consumeThemeProps.js +78 -0
  725. package/node/internals/defaultizeColor.js +1 -2
  726. package/node/internals/getCurve.js +13 -25
  727. package/node/internals/index.js +135 -75
  728. package/node/internals/plugins/allPlugins.js +13 -0
  729. package/node/internals/plugins/corePlugins/corePlugins.js +14 -0
  730. package/node/internals/plugins/corePlugins/index.js +12 -0
  731. package/node/internals/plugins/corePlugins/useChartDimensions/index.js +27 -0
  732. package/node/internals/plugins/corePlugins/useChartDimensions/useChartDimensions.js +183 -0
  733. package/node/internals/plugins/corePlugins/useChartDimensions/useChartDimensions.selectors.js +32 -0
  734. package/node/internals/plugins/corePlugins/useChartId/index.js +27 -0
  735. package/node/internals/plugins/corePlugins/useChartId/useChartId.js +41 -0
  736. package/node/internals/plugins/corePlugins/useChartId/useChartId.selectors.js +15 -0
  737. package/node/internals/plugins/corePlugins/useChartId/useChartId.utils.js +12 -0
  738. package/node/internals/plugins/corePlugins/useChartSeries/index.js +27 -0
  739. package/node/{context/SeriesProvider → internals/plugins/corePlugins/useChartSeries}/processSeries.js +9 -6
  740. package/node/internals/plugins/corePlugins/useChartSeries/useChartSeries.js +80 -0
  741. package/node/internals/plugins/corePlugins/useChartSeries/useChartSeries.selectors.js +11 -0
  742. package/node/internals/plugins/corePlugins/useChartSeries/useColorProcessor.js +27 -0
  743. package/node/internals/{computeAxisValue.js → plugins/featurePlugins/useChartCartesianAxis/computeAxisValue.js} +19 -27
  744. package/node/internals/plugins/featurePlugins/useChartCartesianAxis/createAxisFilterMapper.js +69 -0
  745. package/node/{context/ChartDataProvider/useDefaultizeAxis.js → internals/plugins/featurePlugins/useChartCartesianAxis/defaultizeAxis.js} +4 -13
  746. package/node/internals/plugins/featurePlugins/useChartCartesianAxis/getAxisExtremum.js +29 -0
  747. package/node/internals/plugins/featurePlugins/useChartCartesianAxis/getAxisValue.js +65 -0
  748. package/node/internals/plugins/featurePlugins/useChartCartesianAxis/index.js +59 -0
  749. package/node/internals/plugins/featurePlugins/useChartCartesianAxis/useChartCartesianAxis.js +213 -0
  750. package/node/internals/plugins/featurePlugins/useChartCartesianAxis/useChartCartesianAxis.selectors.js +98 -0
  751. package/node/internals/plugins/featurePlugins/useChartCartesianAxis/zoom.types.js +5 -0
  752. package/node/internals/plugins/featurePlugins/useChartHighlight/createIsFaded.js +19 -0
  753. package/node/{context/HighlightedProvider → internals/plugins/featurePlugins/useChartHighlight}/createIsHighlighted.js +4 -4
  754. package/node/internals/plugins/featurePlugins/useChartHighlight/highlightConfig.types.js +5 -0
  755. package/node/internals/plugins/featurePlugins/useChartHighlight/index.js +27 -0
  756. package/node/internals/plugins/featurePlugins/useChartHighlight/useChartHighlight.js +52 -0
  757. package/node/internals/plugins/featurePlugins/useChartHighlight/useChartHighlight.selectors.js +37 -0
  758. package/node/internals/plugins/featurePlugins/useChartHighlight/useChartHighlight.types.js +5 -0
  759. package/node/internals/plugins/featurePlugins/useChartInteraction/index.js +27 -0
  760. package/node/internals/plugins/featurePlugins/useChartInteraction/useChartInteraction.js +98 -0
  761. package/node/{context/InteractionSelectors.js → internals/plugins/featurePlugins/useChartInteraction/useChartInteraction.selectors.js} +2 -4
  762. package/node/internals/plugins/featurePlugins/useChartInteraction/useChartInteraction.types.js +5 -0
  763. package/node/internals/plugins/featurePlugins/useChartZAxis/index.js +27 -0
  764. package/node/internals/plugins/featurePlugins/useChartZAxis/useChartZAxis.js +94 -0
  765. package/node/internals/plugins/featurePlugins/useChartZAxis/useChartZAxis.selectors.js +9 -0
  766. package/node/internals/plugins/featurePlugins/useChartZAxis/useChartZAxis.types.js +5 -0
  767. package/node/internals/plugins/featurePlugins/useChartZAxis/utils.js +1 -0
  768. package/node/internals/plugins/models/chart.js +5 -0
  769. package/node/internals/plugins/models/helpers.js +5 -0
  770. package/node/internals/plugins/models/index.js +44 -0
  771. package/node/internals/plugins/models/plugin.js +5 -0
  772. package/node/internals/plugins/models/seriesConfig/colorProcessor.types.js +5 -0
  773. package/node/internals/plugins/models/seriesConfig/extremumGetter.types.js +5 -0
  774. package/node/internals/plugins/models/seriesConfig/index.js +71 -0
  775. package/node/internals/plugins/models/seriesConfig/legendGetter.types.js +5 -0
  776. package/node/internals/plugins/models/seriesConfig/seriesConfig.types.js +5 -0
  777. package/node/internals/plugins/models/seriesConfig/seriesProcessor.types.js +5 -0
  778. package/node/internals/plugins/models/seriesConfig/tooltipGetter.types.js +5 -0
  779. package/node/internals/plugins/utils/ChartStore.js +0 -2
  780. package/node/internals/store/extractPluginParamsFromProps.js +36 -0
  781. package/node/internals/store/useChartModels.js +73 -0
  782. package/node/internals/store/useCharts.js +92 -0
  783. package/node/internals/store/useCharts.types.js +5 -0
  784. package/node/internals/store/useStore.js +15 -0
  785. package/node/models/axis.js +5 -1
  786. package/node/models/curve.js +5 -0
  787. package/node/models/position.js +5 -0
  788. package/package.json +6 -5
  789. package/ChartContainer/ResizableContainer.d.ts +0 -22
  790. package/ChartContainer/ResizableContainer.js +0 -60
  791. package/ChartsLegend/ChartsLegendItem.d.ts +0 -26
  792. package/ChartsLegend/ChartsLegendItem.js +0 -65
  793. package/ChartsLegend/DefaultChartsLegend.d.ts +0 -25
  794. package/ChartsLegend/DefaultChartsLegend.js +0 -112
  795. package/ChartsLegend/LegendPerItem.d.ts +0 -65
  796. package/ChartsLegend/LegendPerItem.js +0 -129
  797. package/ChartsLegend/legendItemsPlacement.d.ts +0 -3
  798. package/ChartsLegend/legendItemsPlacement.js +0 -72
  799. package/ChartsLegend/utils.d.ts +0 -2
  800. package/ChartsLegend/utils.js +0 -16
  801. package/ChartsOnAxisClickHandler/ChartsOnAxisClickHandler.d.ts +0 -20
  802. package/ChartsOnAxisClickHandler/ChartsOnAxisClickHandler.js +0 -81
  803. package/ChartsOnAxisClickHandler/index.d.ts +0 -1
  804. package/ChartsOnAxisClickHandler/index.js +0 -1
  805. package/context/CartesianProvider/Cartesian.types.d.ts +0 -59
  806. package/context/CartesianProvider/CartesianContext.d.ts +0 -4
  807. package/context/CartesianProvider/CartesianContext.js +0 -13
  808. package/context/CartesianProvider/CartesianProvider.d.ts +0 -4
  809. package/context/CartesianProvider/CartesianProvider.js +0 -49
  810. package/context/CartesianProvider/defaultizeAxis.d.ts +0 -40
  811. package/context/CartesianProvider/defaultizeAxis.js +0 -13
  812. package/context/CartesianProvider/getAxisExtremum.d.ts +0 -5
  813. package/context/CartesianProvider/getAxisExtremum.js +0 -21
  814. package/context/CartesianProvider/index.d.ts +0 -4
  815. package/context/CartesianProvider/index.js +0 -4
  816. package/context/CartesianProvider/useCartesianContext.d.ts +0 -2
  817. package/context/CartesianProvider/useCartesianContext.js +0 -10
  818. package/context/ChartDataProvider/ChartDataProvider.d.ts +0 -31
  819. package/context/ChartDataProvider/ChartDataProvider.js +0 -250
  820. package/context/ChartDataProvider/useChartDataProviderProps.d.ts +0 -94
  821. package/context/ChartDataProvider/useChartDataProviderProps.js +0 -66
  822. package/context/ChartDataProvider/useDefaultizeAxis.d.ts +0 -41
  823. package/context/DrawingAreaProvider/DrawingArea.types.d.ts +0 -51
  824. package/context/DrawingAreaProvider/DrawingAreaContext.d.ts +0 -8
  825. package/context/DrawingAreaProvider/DrawingAreaContext.js +0 -16
  826. package/context/DrawingAreaProvider/DrawingAreaProvider.d.ts +0 -3
  827. package/context/DrawingAreaProvider/DrawingAreaProvider.js +0 -48
  828. package/context/DrawingAreaProvider/index.d.ts +0 -3
  829. package/context/DrawingAreaProvider/index.js +0 -3
  830. package/context/HighlightedProvider/HighlightedContext.d.ts +0 -58
  831. package/context/HighlightedProvider/HighlightedContext.js +0 -32
  832. package/context/HighlightedProvider/HighlightedProvider.d.ts +0 -20
  833. package/context/HighlightedProvider/HighlightedProvider.js +0 -79
  834. package/context/HighlightedProvider/createIsFaded.d.ts +0 -2
  835. package/context/HighlightedProvider/createIsFaded.js +0 -12
  836. package/context/HighlightedProvider/createIsHighlighted.d.ts +0 -2
  837. package/context/HighlightedProvider/createIsHighlighted.js +0 -12
  838. package/context/HighlightedProvider/index.d.ts +0 -4
  839. package/context/HighlightedProvider/index.js +0 -4
  840. package/context/HighlightedProvider/useHighlighted.d.ts +0 -9
  841. package/context/HighlightedProvider/useHighlighted.js +0 -22
  842. package/context/HighlightedProvider/useItemHighlighted.d.ts +0 -21
  843. package/context/HighlightedProvider/useItemHighlighted.js +0 -27
  844. package/context/InteractionProvider.d.ts +0 -7
  845. package/context/InteractionProvider.js +0 -22
  846. package/context/InteractionSelectors.d.ts +0 -359
  847. package/context/PluginProvider/ColorProcessor.types.d.ts +0 -8
  848. package/context/PluginProvider/ExtremumGetter.types.d.ts +0 -25
  849. package/context/PluginProvider/Plugin.types.d.ts +0 -29
  850. package/context/PluginProvider/PluginContext.d.ts +0 -4
  851. package/context/PluginProvider/PluginContext.js +0 -15
  852. package/context/PluginProvider/PluginProvider.d.ts +0 -4
  853. package/context/PluginProvider/PluginProvider.js +0 -21
  854. package/context/PluginProvider/SeriesFormatter.types.d.ts +0 -21
  855. package/context/PluginProvider/index.d.ts +0 -12
  856. package/context/PluginProvider/index.js +0 -12
  857. package/context/PluginProvider/mergePlugins.d.ts +0 -46
  858. package/context/PluginProvider/mergePlugins.js +0 -40
  859. package/context/PluginProvider/useColorProcessor.d.ts +0 -4
  860. package/context/PluginProvider/useColorProcessor.js +0 -17
  861. package/context/PluginProvider/useRadiusExtremumGetter.d.ts +0 -4
  862. package/context/PluginProvider/useRadiusExtremumGetter.js +0 -17
  863. package/context/PluginProvider/useRotationExtremumGetter.d.ts +0 -4
  864. package/context/PluginProvider/useRotationExtremumGetter.js +0 -17
  865. package/context/PluginProvider/useSeriesFormatter.d.ts +0 -4
  866. package/context/PluginProvider/useSeriesFormatter.js +0 -17
  867. package/context/PluginProvider/useXExtremumGetter.d.ts +0 -4
  868. package/context/PluginProvider/useXExtremumGetter.js +0 -15
  869. package/context/PluginProvider/useYExtremumGetter.d.ts +0 -4
  870. package/context/PluginProvider/useYExtremumGetter.js +0 -15
  871. package/context/SeriesProvider/Series.types.d.ts +0 -26
  872. package/context/SeriesProvider/SeriesContext.d.ts +0 -4
  873. package/context/SeriesProvider/SeriesContext.js +0 -8
  874. package/context/SeriesProvider/SeriesProvider.d.ts +0 -5
  875. package/context/SeriesProvider/SeriesProvider.js +0 -33
  876. package/context/SeriesProvider/index.d.ts +0 -12
  877. package/context/SeriesProvider/index.js +0 -8
  878. package/context/SeriesProvider/processSeries.d.ts +0 -18
  879. package/context/SizeProvider/Size.types.d.ts +0 -30
  880. package/context/SizeProvider/SizeContext.d.ts +0 -4
  881. package/context/SizeProvider/SizeContext.js +0 -13
  882. package/context/SizeProvider/SizeProvider.d.ts +0 -11
  883. package/context/SizeProvider/SizeProvider.js +0 -26
  884. package/context/SizeProvider/index.d.ts +0 -4
  885. package/context/SizeProvider/index.js +0 -4
  886. package/context/SizeProvider/useChartContainerDimensions.d.ts +0 -9
  887. package/context/SizeProvider/useChartContainerDimensions.js +0 -104
  888. package/context/SizeProvider/useSize.d.ts +0 -5
  889. package/context/SizeProvider/useSize.js +0 -13
  890. package/context/SvgRefProvider/SvgRef.types.d.ts +0 -8
  891. package/context/SvgRefProvider/SvgRefContext.d.ts +0 -4
  892. package/context/SvgRefProvider/SvgRefContext.js +0 -17
  893. package/context/SvgRefProvider/SvgRefProvider.d.ts +0 -3
  894. package/context/SvgRefProvider/SvgRefProvider.js +0 -24
  895. package/context/SvgRefProvider/index.d.ts +0 -4
  896. package/context/SvgRefProvider/index.js +0 -4
  897. package/context/SvgRefProvider/useSurfaceRef.d.ts +0 -2
  898. package/context/SvgRefProvider/useSurfaceRef.js +0 -14
  899. package/context/ZAxisContextProvider.d.ts +0 -33
  900. package/context/ZAxisContextProvider.js +0 -96
  901. package/internals/computeAxisValue.d.ts +0 -38
  902. package/internals/plugins/utils/ChartsStore.d.ts +0 -12
  903. package/internals/plugins/utils/ChartsStore.js +0 -26
  904. package/internals/useCharts.d.ts +0 -6
  905. package/internals/useCharts.js +0 -29
  906. package/internals/useSelector.d.ts +0 -4
  907. package/internals/useStore.d.ts +0 -2
  908. package/internals/useStore.js +0 -17
  909. package/modern/ChartContainer/ResizableContainer.js +0 -60
  910. package/modern/ChartsLegend/ChartsLegendItem.js +0 -65
  911. package/modern/ChartsLegend/DefaultChartsLegend.js +0 -112
  912. package/modern/ChartsLegend/LegendPerItem.js +0 -129
  913. package/modern/ChartsLegend/legendItemsPlacement.js +0 -72
  914. package/modern/ChartsLegend/utils.js +0 -16
  915. package/modern/ChartsOnAxisClickHandler/ChartsOnAxisClickHandler.js +0 -81
  916. package/modern/ChartsOnAxisClickHandler/index.js +0 -1
  917. package/modern/context/CartesianProvider/CartesianContext.js +0 -13
  918. package/modern/context/CartesianProvider/CartesianProvider.js +0 -49
  919. package/modern/context/CartesianProvider/defaultizeAxis.js +0 -13
  920. package/modern/context/CartesianProvider/getAxisExtremum.js +0 -21
  921. package/modern/context/CartesianProvider/index.js +0 -4
  922. package/modern/context/CartesianProvider/useCartesianContext.js +0 -10
  923. package/modern/context/ChartDataProvider/ChartDataProvider.js +0 -250
  924. package/modern/context/ChartDataProvider/useChartDataProviderProps.js +0 -66
  925. package/modern/context/DrawingAreaProvider/DrawingAreaContext.js +0 -16
  926. package/modern/context/DrawingAreaProvider/DrawingAreaProvider.js +0 -48
  927. package/modern/context/DrawingAreaProvider/index.js +0 -3
  928. package/modern/context/HighlightedProvider/HighlightedContext.js +0 -32
  929. package/modern/context/HighlightedProvider/HighlightedProvider.js +0 -79
  930. package/modern/context/HighlightedProvider/createIsFaded.js +0 -12
  931. package/modern/context/HighlightedProvider/createIsHighlighted.js +0 -12
  932. package/modern/context/HighlightedProvider/index.js +0 -4
  933. package/modern/context/HighlightedProvider/useHighlighted.js +0 -22
  934. package/modern/context/HighlightedProvider/useItemHighlighted.js +0 -27
  935. package/modern/context/InteractionProvider.js +0 -22
  936. package/modern/context/PluginProvider/PluginContext.js +0 -15
  937. package/modern/context/PluginProvider/PluginProvider.js +0 -21
  938. package/modern/context/PluginProvider/index.js +0 -12
  939. package/modern/context/PluginProvider/mergePlugins.js +0 -40
  940. package/modern/context/PluginProvider/useColorProcessor.js +0 -17
  941. package/modern/context/PluginProvider/useRadiusExtremumGetter.js +0 -17
  942. package/modern/context/PluginProvider/useRotationExtremumGetter.js +0 -17
  943. package/modern/context/PluginProvider/useSeriesFormatter.js +0 -17
  944. package/modern/context/PluginProvider/useXExtremumGetter.js +0 -15
  945. package/modern/context/PluginProvider/useYExtremumGetter.js +0 -15
  946. package/modern/context/SeriesProvider/SeriesContext.js +0 -8
  947. package/modern/context/SeriesProvider/SeriesProvider.js +0 -33
  948. package/modern/context/SeriesProvider/index.js +0 -8
  949. package/modern/context/SizeProvider/SizeContext.js +0 -13
  950. package/modern/context/SizeProvider/SizeProvider.js +0 -26
  951. package/modern/context/SizeProvider/index.js +0 -4
  952. package/modern/context/SizeProvider/useChartContainerDimensions.js +0 -104
  953. package/modern/context/SizeProvider/useSize.js +0 -13
  954. package/modern/context/SvgRefProvider/SvgRefContext.js +0 -17
  955. package/modern/context/SvgRefProvider/SvgRefProvider.js +0 -24
  956. package/modern/context/SvgRefProvider/index.js +0 -4
  957. package/modern/context/SvgRefProvider/useSurfaceRef.js +0 -14
  958. package/modern/context/ZAxisContextProvider.js +0 -96
  959. package/modern/internals/plugins/utils/ChartsStore.js +0 -26
  960. package/modern/internals/useCharts.js +0 -29
  961. package/modern/internals/useStore.js +0 -17
  962. package/node/ChartContainer/ResizableContainer.js +0 -68
  963. package/node/ChartsLegend/ChartsLegendItem.js +0 -72
  964. package/node/ChartsLegend/DefaultChartsLegend.js +0 -118
  965. package/node/ChartsLegend/LegendPerItem.js +0 -137
  966. package/node/ChartsLegend/legendItemsPlacement.js +0 -79
  967. package/node/ChartsLegend/utils.js +0 -23
  968. package/node/ChartsOnAxisClickHandler/ChartsOnAxisClickHandler.js +0 -87
  969. package/node/ChartsOnAxisClickHandler/index.js +0 -16
  970. package/node/context/CartesianProvider/CartesianContext.js +0 -20
  971. package/node/context/CartesianProvider/CartesianProvider.js +0 -54
  972. package/node/context/CartesianProvider/defaultizeAxis.js +0 -21
  973. package/node/context/CartesianProvider/getAxisExtremum.js +0 -28
  974. package/node/context/CartesianProvider/index.js +0 -49
  975. package/node/context/CartesianProvider/useCartesianContext.js +0 -17
  976. package/node/context/ChartDataProvider/ChartDataProvider.js +0 -256
  977. package/node/context/ChartDataProvider/useChartDataProviderProps.js +0 -72
  978. package/node/context/DrawingAreaProvider/DrawingAreaContext.js +0 -22
  979. package/node/context/DrawingAreaProvider/DrawingAreaProvider.js +0 -55
  980. package/node/context/DrawingAreaProvider/index.js +0 -38
  981. package/node/context/HighlightedProvider/HighlightedContext.js +0 -38
  982. package/node/context/HighlightedProvider/HighlightedProvider.js +0 -85
  983. package/node/context/HighlightedProvider/createIsFaded.js +0 -19
  984. package/node/context/HighlightedProvider/index.js +0 -49
  985. package/node/context/HighlightedProvider/useHighlighted.js +0 -27
  986. package/node/context/HighlightedProvider/useItemHighlighted.js +0 -32
  987. package/node/context/InteractionProvider.js +0 -28
  988. package/node/context/PluginProvider/PluginContext.js +0 -22
  989. package/node/context/PluginProvider/PluginProvider.js +0 -26
  990. package/node/context/PluginProvider/index.js +0 -137
  991. package/node/context/PluginProvider/mergePlugins.js +0 -47
  992. package/node/context/PluginProvider/useColorProcessor.js +0 -23
  993. package/node/context/PluginProvider/useRadiusExtremumGetter.js +0 -23
  994. package/node/context/PluginProvider/useRotationExtremumGetter.js +0 -23
  995. package/node/context/PluginProvider/useSeriesFormatter.js +0 -23
  996. package/node/context/PluginProvider/useXExtremumGetter.js +0 -22
  997. package/node/context/PluginProvider/useYExtremumGetter.js +0 -22
  998. package/node/context/SeriesProvider/SeriesProvider.js +0 -38
  999. package/node/context/SeriesProvider/index.js +0 -49
  1000. package/node/context/SizeProvider/SizeContext.js +0 -20
  1001. package/node/context/SizeProvider/SizeProvider.js +0 -29
  1002. package/node/context/SizeProvider/index.js +0 -49
  1003. package/node/context/SizeProvider/useChartContainerDimensions.js +0 -112
  1004. package/node/context/SizeProvider/useSize.js +0 -20
  1005. package/node/context/SvgRefProvider/SvgRefContext.js +0 -23
  1006. package/node/context/SvgRefProvider/SvgRefProvider.js +0 -31
  1007. package/node/context/SvgRefProvider/index.js +0 -49
  1008. package/node/context/SvgRefProvider/useSurfaceRef.js +0 -20
  1009. package/node/context/ZAxisContextProvider.js +0 -103
  1010. package/node/internals/plugins/utils/ChartsStore.js +0 -33
  1011. package/node/internals/useCharts.js +0 -36
  1012. package/node/internals/useStore.js +0 -24
  1013. /package/{context/ChartDataProvider → ChartDataProvider}/index.d.ts +0 -0
  1014. /package/{context/ChartDataProvider → ChartDataProvider}/index.js +0 -0
  1015. /package/{context/CartesianProvider/Cartesian.types.js → ChartsLegend/colorLegend.types.js} +0 -0
  1016. /package/{context/DrawingAreaProvider/DrawingArea.types.js → ChartsLegend/direction.js} +0 -0
  1017. /package/{context/PluginProvider/ColorProcessor.types.js → ChartsLegend/legendContext.types.js} +0 -0
  1018. /package/{context/PluginProvider/ExtremumGetter.types.js → ChartsLegend/piecewiseColorLegend.types.js} +0 -0
  1019. /package/context/{PluginProvider/Plugin.types.js → ChartProvider/ChartProvider.types.js} +0 -0
  1020. /package/{context/PluginProvider/SeriesFormatter.types.js → internals/plugins/corePlugins/useChartDimensions/useChartDimensions.types.js} +0 -0
  1021. /package/{context/SeriesProvider/Series.types.js → internals/plugins/corePlugins/useChartId/useChartId.types.js} +0 -0
  1022. /package/{context/SizeProvider/Size.types.js → internals/plugins/corePlugins/useChartSeries/useChartSeries.types.js} +0 -0
  1023. /package/{context/SvgRefProvider/SvgRef.types.js → internals/plugins/featurePlugins/useChartCartesianAxis/useChartCartesianAxis.types.js} +0 -0
  1024. /package/{context/CartesianProvider → internals/plugins/featurePlugins/useChartCartesianAxis}/zoom.d.ts +0 -0
  1025. /package/{context/CartesianProvider → internals/plugins/featurePlugins/useChartCartesianAxis}/zoom.js +0 -0
  1026. /package/{modern/context/CartesianProvider/Cartesian.types.js → internals/plugins/featurePlugins/useChartCartesianAxis/zoom.types.js} +0 -0
  1027. /package/{modern/context/DrawingAreaProvider/DrawingArea.types.js → internals/plugins/featurePlugins/useChartHighlight/highlightConfig.types.js} +0 -0
  1028. /package/{modern/context/PluginProvider/ColorProcessor.types.js → internals/plugins/featurePlugins/useChartHighlight/useChartHighlight.types.js} +0 -0
  1029. /package/{modern/context/PluginProvider/ExtremumGetter.types.js → internals/plugins/featurePlugins/useChartInteraction/useChartInteraction.types.js} +0 -0
  1030. /package/{modern/context/PluginProvider/Plugin.types.js → internals/plugins/featurePlugins/useChartZAxis/useChartZAxis.types.js} +0 -0
  1031. /package/{modern/context/PluginProvider/SeriesFormatter.types.js → internals/plugins/models/chart.js} +0 -0
  1032. /package/{modern/context/SeriesProvider/Series.types.js → internals/plugins/models/helpers.js} +0 -0
  1033. /package/{modern/context/SizeProvider/Size.types.js → internals/plugins/models/plugin.js} +0 -0
  1034. /package/{modern/context/SvgRefProvider/SvgRef.types.js → internals/plugins/models/seriesConfig/colorProcessor.types.js} +0 -0
  1035. /package/internals/{useSelector.js → store/useSelector.js} +0 -0
  1036. /package/modern/{context/ChartDataProvider → ChartDataProvider}/index.js +0 -0
  1037. /package/modern/{context/CartesianProvider → internals/plugins/featurePlugins/useChartCartesianAxis}/zoom.js +0 -0
  1038. /package/modern/internals/{useSelector.js → store/useSelector.js} +0 -0
  1039. /package/node/{context/ChartDataProvider → ChartDataProvider}/index.js +0 -0
  1040. /package/node/{context/CartesianProvider/Cartesian.types.js → ChartsLegend/colorLegend.types.js} +0 -0
  1041. /package/node/{context/DrawingAreaProvider/DrawingArea.types.js → ChartsLegend/direction.js} +0 -0
  1042. /package/node/{context/PluginProvider/ColorProcessor.types.js → ChartsLegend/legendContext.types.js} +0 -0
  1043. /package/node/{context/PluginProvider/ExtremumGetter.types.js → ChartsLegend/piecewiseColorLegend.types.js} +0 -0
  1044. /package/node/context/{PluginProvider/Plugin.types.js → ChartProvider/ChartProvider.types.js} +0 -0
  1045. /package/node/{context/PluginProvider/SeriesFormatter.types.js → internals/plugins/corePlugins/useChartDimensions/useChartDimensions.types.js} +0 -0
  1046. /package/node/{context/SeriesProvider/Series.types.js → internals/plugins/corePlugins/useChartId/useChartId.types.js} +0 -0
  1047. /package/node/{context/SizeProvider/Size.types.js → internals/plugins/corePlugins/useChartSeries/useChartSeries.types.js} +0 -0
  1048. /package/node/{context/SvgRefProvider/SvgRef.types.js → internals/plugins/featurePlugins/useChartCartesianAxis/useChartCartesianAxis.types.js} +0 -0
  1049. /package/node/{context/CartesianProvider → internals/plugins/featurePlugins/useChartCartesianAxis}/zoom.js +0 -0
  1050. /package/node/internals/{useSelector.js → store/useSelector.js} +0 -0
@@ -0,0 +1,23 @@
1
+ 'use client';
2
+
3
+ import { useSelector } from "../internals/store/useSelector.js";
4
+ import { useStore } from "../internals/store/useStore.js";
5
+ import { selectorChartsIsFadedCallback, selectorChartsIsHighlightedCallback } from "../internals/plugins/featurePlugins/useChartHighlight/useChartHighlight.selectors.js";
6
+
7
+ /**
8
+ * A hook to check the highlighted state of multiple items.
9
+ * If you're interested by a single one, consider using `useItemHighlighted`.
10
+ *
11
+ * Warning: highlighted and faded can both be true at the same time.
12
+ * We recommend to first test if item is highlighted: `const faded = !highlighted && isFaded(item)`
13
+ * @returns {{ isHighlighted, isFaded }} callbacks to get the state of the item.
14
+ */
15
+ export function useItemHighlightedGetter() {
16
+ const store = useStore();
17
+ const isHighlighted = useSelector(store, selectorChartsIsHighlightedCallback);
18
+ const isFaded = useSelector(store, selectorChartsIsFadedCallback);
19
+ return {
20
+ isHighlighted,
21
+ isFaded
22
+ };
23
+ }
@@ -0,0 +1,30 @@
1
+ 'use client';
2
+
3
+ import { selectorChartSeriesConfig } from "../internals/plugins/corePlugins/useChartSeries/index.js";
4
+ import { useSeries } from "./useSeries.js";
5
+ import { useStore } from "../internals/store/useStore.js";
6
+ import { useSelector } from "../internals/store/useSelector.js";
7
+ function getSeriesToDisplay(series, seriesConfig) {
8
+ return Object.keys(series).flatMap(seriesType => {
9
+ const getter = seriesConfig[seriesType].legendGetter;
10
+ return getter === undefined ? [] : getter(series[seriesType]);
11
+ });
12
+ }
13
+
14
+ /**
15
+ * Get the legend items to display.
16
+ *
17
+ * This hook is used by the `ChartsLegend` component. And will return the legend items formatted for display.
18
+ *
19
+ * An alternative is to use the `useSeries` hook and format the legend items yourself.
20
+ *
21
+ * @returns legend data
22
+ */
23
+ export function useLegend() {
24
+ const series = useSeries();
25
+ const store = useStore();
26
+ const seriesConfig = useSelector(store, selectorChartSeriesConfig);
27
+ return {
28
+ items: getSeriesToDisplay(series, seriesConfig)
29
+ };
30
+ }
@@ -1,8 +1,9 @@
1
1
  'use client';
2
2
 
3
3
  import * as React from 'react';
4
- import { SeriesContext } from "../context/SeriesProvider/index.js";
5
-
4
+ import { useStore } from "../internals/store/useStore.js";
5
+ import { useSelector } from "../internals/store/useSelector.js";
6
+ import { selectorChartSeriesProcessed } from "../internals/plugins/corePlugins/useChartSeries/useChartSeries.selectors.js";
6
7
  /**
7
8
  * Get access to the internal state of series.
8
9
  * Structured by type of series:
@@ -10,14 +11,8 @@ import { SeriesContext } from "../context/SeriesProvider/index.js";
10
11
  * @returns FormattedSeries series
11
12
  */
12
13
  export function useSeries() {
13
- const {
14
- isInitialized,
15
- data
16
- } = React.useContext(SeriesContext);
17
- if (!isInitialized) {
18
- throw new Error(['MUI X: Could not find the series ref context.', 'It looks like you rendered your component outside of a ChartsContainer parent component.'].join('\n'));
19
- }
20
- return data;
14
+ const store = useStore();
15
+ return useSelector(store, selectorChartSeriesProcessed);
21
16
  }
22
17
 
23
18
  /**
@@ -1,14 +1,10 @@
1
1
  'use client';
2
2
 
3
- import * as React from 'react';
4
- import { SvgRefContext } from "../context/SvgRefProvider/index.js";
3
+ import { useChartContext } from "../context/ChartProvider/index.js";
5
4
  export function useSvgRef() {
6
- const {
7
- isInitialized,
8
- data
9
- } = React.useContext(SvgRefContext);
10
- if (!isInitialized) {
5
+ const context = useChartContext();
6
+ if (!context) {
11
7
  throw new Error(['MUI X: Could not find the svg ref context.', 'It looks like you rendered your component outside of a ChartsContainer parent component.'].join('\n'));
12
8
  }
13
- return data.svgRef;
9
+ return context.svgRef;
14
10
  }
@@ -0,0 +1,27 @@
1
+ 'use client';
2
+
3
+ import { useStore } from "../internals/store/useStore.js";
4
+ import { selectorChartZAxis } from "../internals/plugins/featurePlugins/useChartZAxis/index.js";
5
+ import { useSelector } from "../internals/store/useSelector.js";
6
+ export function useZAxes() {
7
+ const store = useStore();
8
+ const {
9
+ axis: zAxis,
10
+ axisIds: zAxisIds
11
+ } = useSelector(store, selectorChartZAxis) ?? {
12
+ axis: {},
13
+ axisIds: []
14
+ };
15
+ return {
16
+ zAxis,
17
+ zAxisIds
18
+ };
19
+ }
20
+ export function useZAxis(identifier) {
21
+ const {
22
+ zAxis,
23
+ zAxisIds
24
+ } = useZAxes();
25
+ const id = typeof identifier === 'string' ? identifier : zAxisIds[identifier ?? 0];
26
+ return zAxis[id];
27
+ }
package/modern/index.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @mui/x-charts v8.0.0-alpha.1
2
+ * @mui/x-charts v8.0.0-alpha.11
3
3
  *
4
4
  * @license MIT
5
5
  * This source code is licensed under the MIT license found in the
@@ -18,10 +18,10 @@ export * from "./ChartsYAxis/index.js";
18
18
  export * from "./ChartsGrid/index.js";
19
19
  export * from "./ChartsText/index.js";
20
20
  export * from "./ChartsTooltip/index.js";
21
+ export * from "./ChartsLabel/index.js";
21
22
  export * from "./ChartsLegend/index.js";
22
23
  export * from "./ChartsAxisHighlight/index.js";
23
24
  export * from "./ChartsVoronoiHandler/index.js";
24
- export * from "./ChartsOnAxisClickHandler/index.js";
25
25
  export * from "./BarChart/index.js";
26
26
  export * from "./LineChart/index.js";
27
27
  export * from "./PieChart/index.js";
@@ -29,4 +29,5 @@ export * from "./ScatterChart/index.js";
29
29
  export * from "./SparkLineChart/index.js";
30
30
  export * from "./Gauge/index.js";
31
31
  export * from "./ChartsSurface/index.js";
32
- export * from "./ChartContainer/index.js";
32
+ export * from "./ChartContainer/index.js";
33
+ export * from "./ChartDataProvider/index.js";
@@ -0,0 +1,25 @@
1
+ import _extends from "@babel/runtime/helpers/esm/extends";
2
+ import { DEFAULT_MARGINS, DEFAULT_LEGEND_FACING_MARGIN } from "../constants/index.js";
3
+ export const calculateMargins = props => {
4
+ if (props.hideLegend || !props.series?.some(s => s.label)) {
5
+ return _extends({}, DEFAULT_MARGINS, props.margin);
6
+ }
7
+ if (props.slotProps?.legend?.direction === 'vertical') {
8
+ if (props.slotProps?.legend?.position?.horizontal === 'start') {
9
+ return _extends({}, DEFAULT_MARGINS, {
10
+ left: DEFAULT_LEGEND_FACING_MARGIN
11
+ }, props.margin);
12
+ }
13
+ return _extends({}, DEFAULT_MARGINS, {
14
+ right: DEFAULT_LEGEND_FACING_MARGIN
15
+ }, props.margin);
16
+ }
17
+ if (props.slotProps?.legend?.position?.vertical === 'bottom') {
18
+ return _extends({}, DEFAULT_MARGINS, {
19
+ bottom: DEFAULT_LEGEND_FACING_MARGIN
20
+ }, props.margin);
21
+ }
22
+ return _extends({}, DEFAULT_MARGINS, {
23
+ top: DEFAULT_LEGEND_FACING_MARGIN
24
+ }, props.margin);
25
+ };
@@ -1,16 +1,11 @@
1
1
  import * as React from 'react';
2
- import { useCartesianContext } from "../../../context/CartesianProvider/index.js";
3
- import { DrawingAreaContext } from "../../../context/DrawingAreaProvider/index.js";
4
- import { useDrawingArea } from "../../../hooks/index.js";
2
+ import { useDrawingArea, useXAxes, useYAxes } from "../../../hooks/index.js";
5
3
  import ChartsPiecewiseGradient from "./ChartsPiecewiseGradient.js";
6
4
  import ChartsContinuousGradient from "./ChartsContinuousGradient.js";
5
+ import ChartsContinuousGradientObjectBound from "./ChartsContinuousGradientObjectBound.js";
6
+ import { useZAxes } from "../../../hooks/useZAxis.js";
7
+ import { useChartGradientIdBuilder, useChartGradientIdObjectBoundBuilder } from "../../../hooks/useChartGradientId.js";
7
8
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
8
- export function useChartGradient() {
9
- const {
10
- chartId
11
- } = React.useContext(DrawingAreaContext);
12
- return React.useCallback((axisId, direction) => `${chartId}-gradient-${direction}-${axisId}`, [chartId]);
13
- }
14
9
  export function ChartsAxesGradients() {
15
10
  const {
16
11
  top,
@@ -22,21 +17,30 @@ export function ChartsAxesGradients() {
22
17
  } = useDrawingArea();
23
18
  const svgHeight = top + height + bottom;
24
19
  const svgWidth = left + width + right;
25
- const getGradientId = useChartGradient();
20
+ const getGradientId = useChartGradientIdBuilder();
21
+ const getObjectBoundGradientId = useChartGradientIdObjectBoundBuilder();
26
22
  const {
27
- xAxisIds,
28
23
  xAxis,
29
- yAxisIds,
30
- yAxis
31
- } = useCartesianContext();
24
+ xAxisIds
25
+ } = useXAxes();
26
+ const {
27
+ yAxis,
28
+ yAxisIds
29
+ } = useYAxes();
30
+ const {
31
+ zAxis,
32
+ zAxisIds
33
+ } = useZAxes();
32
34
  const filteredYAxisIds = yAxisIds.filter(axisId => yAxis[axisId].colorMap !== undefined);
33
35
  const filteredXAxisIds = xAxisIds.filter(axisId => xAxis[axisId].colorMap !== undefined);
34
- if (filteredYAxisIds.length === 0 && filteredXAxisIds.length === 0) {
36
+ const filteredZAxisIds = zAxisIds.filter(axisId => zAxis[axisId].colorMap !== undefined);
37
+ if (filteredYAxisIds.length === 0 && filteredXAxisIds.length === 0 && filteredZAxisIds.length === 0) {
35
38
  return null;
36
39
  }
37
40
  return /*#__PURE__*/_jsxs("defs", {
38
41
  children: [filteredYAxisIds.map(axisId => {
39
- const gradientId = getGradientId(axisId, 'y');
42
+ const gradientId = getGradientId(axisId);
43
+ const objectBoundGradientId = getObjectBoundGradientId(axisId);
40
44
  const {
41
45
  colorMap,
42
46
  scale,
@@ -54,19 +58,27 @@ export function ChartsAxesGradients() {
54
58
  }, gradientId);
55
59
  }
56
60
  if (colorMap?.type === 'continuous') {
57
- return /*#__PURE__*/_jsx(ChartsContinuousGradient, {
58
- isReversed: !reverse,
59
- scale: scale,
60
- colorScale: colorScale,
61
- colorMap: colorMap,
62
- size: svgHeight,
63
- gradientId: gradientId,
64
- direction: "y"
61
+ return /*#__PURE__*/_jsxs(React.Fragment, {
62
+ children: [/*#__PURE__*/_jsx(ChartsContinuousGradient, {
63
+ isReversed: !reverse,
64
+ scale: scale,
65
+ colorScale: colorScale,
66
+ colorMap: colorMap,
67
+ size: svgHeight,
68
+ gradientId: gradientId,
69
+ direction: "y"
70
+ }), /*#__PURE__*/_jsx(ChartsContinuousGradientObjectBound, {
71
+ isReversed: reverse,
72
+ colorScale: colorScale,
73
+ colorMap: colorMap,
74
+ gradientId: objectBoundGradientId
75
+ })]
65
76
  }, gradientId);
66
77
  }
67
78
  return null;
68
79
  }), filteredXAxisIds.map(axisId => {
69
- const gradientId = getGradientId(axisId, 'x');
80
+ const gradientId = getGradientId(axisId);
81
+ const objectBoundGradientId = getObjectBoundGradientId(axisId);
70
82
  const {
71
83
  colorMap,
72
84
  scale,
@@ -84,15 +96,36 @@ export function ChartsAxesGradients() {
84
96
  }, gradientId);
85
97
  }
86
98
  if (colorMap?.type === 'continuous') {
87
- return /*#__PURE__*/_jsx(ChartsContinuousGradient, {
88
- isReversed: reverse,
89
- scale: scale,
99
+ return /*#__PURE__*/_jsxs(React.Fragment, {
100
+ children: [/*#__PURE__*/_jsx(ChartsContinuousGradient, {
101
+ isReversed: reverse,
102
+ scale: scale,
103
+ colorScale: colorScale,
104
+ colorMap: colorMap,
105
+ size: svgWidth,
106
+ gradientId: gradientId,
107
+ direction: "x"
108
+ }), /*#__PURE__*/_jsx(ChartsContinuousGradientObjectBound, {
109
+ isReversed: reverse,
110
+ colorScale: colorScale,
111
+ colorMap: colorMap,
112
+ gradientId: objectBoundGradientId
113
+ })]
114
+ }, gradientId);
115
+ }
116
+ return null;
117
+ }), filteredZAxisIds.map(axisId => {
118
+ const objectBoundGradientId = getObjectBoundGradientId(axisId);
119
+ const {
120
+ colorMap,
121
+ colorScale
122
+ } = zAxis[axisId];
123
+ if (colorMap?.type === 'continuous') {
124
+ return /*#__PURE__*/_jsx(ChartsContinuousGradientObjectBound, {
90
125
  colorScale: colorScale,
91
126
  colorMap: colorMap,
92
- size: svgWidth,
93
- gradientId: gradientId,
94
- direction: "x"
95
- }, gradientId);
127
+ gradientId: objectBoundGradientId
128
+ }, objectBoundGradientId);
96
129
  }
97
130
  return null;
98
131
  })]
@@ -13,14 +13,14 @@ export default function ChartsContinuousGradient(props) {
13
13
  colorScale,
14
14
  colorMap
15
15
  } = props;
16
- const extremValues = [colorMap.min ?? 0, colorMap.max ?? 100];
17
- const extremPositions = extremValues.map(scale).filter(p => p !== undefined);
18
- if (extremPositions.length !== 2) {
16
+ const extremumValues = [colorMap.min ?? 0, colorMap.max ?? 100];
17
+ const extremumPositions = extremumValues.map(scale).filter(p => p !== undefined);
18
+ if (extremumPositions.length !== 2) {
19
19
  return null;
20
20
  }
21
- const interpolator = typeof extremValues[0] === 'number' ? interpolateNumber(extremValues[0], extremValues[1]) : interpolateDate(extremValues[0], extremValues[1]);
22
- const numberOfPoints = Math.round((Math.max(...extremPositions) - Math.min(...extremPositions)) / PX_PRECISION);
23
- const keyPrefix = `${extremValues[0]}-${extremValues[1]}-`;
21
+ const interpolator = typeof extremumValues[0] === 'number' ? interpolateNumber(extremumValues[0], extremumValues[1]) : interpolateDate(extremumValues[0], extremumValues[1]);
22
+ const numberOfPoints = Math.round((Math.max(...extremumPositions) - Math.min(...extremumPositions)) / PX_PRECISION);
23
+ const keyPrefix = `${extremumValues[0]}-${extremumValues[1]}-`;
24
24
  return /*#__PURE__*/_jsx("linearGradient", {
25
25
  id: gradientId,
26
26
  x1: "0",
@@ -0,0 +1,61 @@
1
+ import _extends from "@babel/runtime/helpers/esm/extends";
2
+ import * as React from 'react';
3
+ import { interpolateDate, interpolateNumber } from '@mui/x-charts-vendor/d3-interpolate';
4
+ import { jsx as _jsx } from "react/jsx-runtime";
5
+ const PX_PRECISION = 10;
6
+ const getDirection = isReversed => {
7
+ if (isReversed) {
8
+ return {
9
+ x1: '1',
10
+ x2: '0',
11
+ y1: '0',
12
+ y2: '0'
13
+ };
14
+ }
15
+ return {
16
+ x1: '0',
17
+ x2: '1',
18
+ y1: '0',
19
+ y2: '0'
20
+ };
21
+ };
22
+
23
+ /**
24
+ * Generates gradients to be used in tooltips and legends.
25
+ */
26
+ export default function ChartsContinuousGradientObjectBound(props) {
27
+ const {
28
+ isReversed,
29
+ gradientId,
30
+ colorScale,
31
+ colorMap
32
+ } = props;
33
+ const extremumValues = [colorMap.min ?? 0, colorMap.max ?? 100];
34
+ const interpolator = typeof extremumValues[0] === 'number' ? interpolateNumber(extremumValues[0], extremumValues[1]) : interpolateDate(extremumValues[0], extremumValues[1]);
35
+ const numberOfPoints = PX_PRECISION;
36
+ const keyPrefix = `${extremumValues[0]}-${extremumValues[1]}-`;
37
+ return /*#__PURE__*/_jsx("linearGradient", _extends({
38
+ id: gradientId
39
+ }, getDirection(isReversed), {
40
+ gradientUnits: 'objectBoundingBox' // Use the SVG coordinate instead of the component ones.
41
+ ,
42
+ children: Array.from({
43
+ length: numberOfPoints + 1
44
+ }, (_, index) => {
45
+ const offset = index / numberOfPoints;
46
+ const value = interpolator(offset);
47
+ if (value === undefined) {
48
+ return null;
49
+ }
50
+ const color = colorScale(value);
51
+ if (color === null) {
52
+ return null;
53
+ }
54
+ return /*#__PURE__*/_jsx("stop", {
55
+ offset: offset,
56
+ stopColor: color,
57
+ stopOpacity: 1
58
+ }, keyPrefix + index);
59
+ })
60
+ }));
61
+ }
@@ -9,6 +9,9 @@ export default function ChartsPiecewiseGradient(props) {
9
9
  scale,
10
10
  colorMap
11
11
  } = props;
12
+ if (size <= 0) {
13
+ return null;
14
+ }
12
15
  return /*#__PURE__*/_jsx("linearGradient", {
13
16
  id: gradientId,
14
17
  x1: "0",
@@ -24,6 +27,9 @@ export default function ChartsPiecewiseGradient(props) {
24
27
  return null;
25
28
  }
26
29
  const offset = isReversed ? 1 - x / size : x / size;
30
+ if (Number.isNaN(offset)) {
31
+ return null;
32
+ }
27
33
  return /*#__PURE__*/_jsxs(React.Fragment, {
28
34
  children: [/*#__PURE__*/_jsx("stop", {
29
35
  offset: offset,
@@ -0,0 +1,66 @@
1
+ import * as React from 'react';
2
+ import { styled } from '@mui/material/styles';
3
+ import { jsx as _jsx } from "react/jsx-runtime";
4
+ const getDirection = (direction, position) => {
5
+ if (direction === 'vertical') {
6
+ if (position?.horizontal === 'start') {
7
+ return 'row';
8
+ }
9
+ return 'row-reverse';
10
+ }
11
+ if (position?.vertical === 'bottom') {
12
+ return 'column-reverse';
13
+ }
14
+ return 'column';
15
+ };
16
+ const getAlign = (direction, position) => {
17
+ if (direction === 'vertical') {
18
+ if (position?.vertical === 'top') {
19
+ return 'flex-start';
20
+ }
21
+ if (position?.vertical === 'bottom') {
22
+ return 'flex-end';
23
+ }
24
+ }
25
+ if (direction === 'horizontal') {
26
+ if (position?.horizontal === 'start') {
27
+ return 'flex-start';
28
+ }
29
+ if (position?.horizontal === 'end') {
30
+ return 'flex-end';
31
+ }
32
+ }
33
+ return 'center';
34
+ };
35
+ const Root = styled('div', {
36
+ name: 'MuiChartsWrapper',
37
+ slot: 'Root',
38
+ overridesResolver: (props, styles) => styles.root
39
+ })(({
40
+ ownerState
41
+ }) => ({
42
+ display: 'flex',
43
+ flexDirection: getDirection(ownerState.legendDirection, ownerState.legendPosition),
44
+ flex: 1,
45
+ justifyContent: 'center',
46
+ alignItems: getAlign(ownerState.legendDirection, ownerState.legendPosition)
47
+ }));
48
+
49
+ /**
50
+ * @ignore - internal component.
51
+ *
52
+ * Wrapper for the charts components.
53
+ * Its main purpose is to position the HTML legend in the correct place.
54
+ */
55
+ function ChartsWrapper(props) {
56
+ const {
57
+ children,
58
+ sx
59
+ } = props;
60
+ return /*#__PURE__*/_jsx(Root, {
61
+ ownerState: props,
62
+ sx: sx,
63
+ children: children
64
+ });
65
+ }
66
+ export { ChartsWrapper };
@@ -0,0 +1 @@
1
+ export * from "./ChartsWrapper.js";
@@ -0,0 +1,101 @@
1
+ import _extends from "@babel/runtime/helpers/esm/extends";
2
+ import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
3
+ const _excluded = ["slots", "slotProps"],
4
+ _excluded2 = ["ownerState"];
5
+ import { useTheme, useThemeProps } from '@mui/material/styles';
6
+ import resolveProps from '@mui/utils/resolveProps';
7
+ import useSlotProps from '@mui/utils/useSlotProps';
8
+ import * as React from 'react';
9
+
10
+ /**
11
+ * A higher order component that consumes a slot from the props and renders the component provided in the slot.
12
+ *
13
+ * This HOC will wrap a single component, and will render the component provided in the slot, if it exists.
14
+ *
15
+ * If you need to render multiple components, you can manually consume the slots from the props and render them in your component instead of using this HOC.
16
+ *
17
+ * In the example below, `MyComponent` will render the component provided in `mySlot` slot, if it exists. Otherwise, it will render the `DefaultComponent`.
18
+ *
19
+ * @example
20
+ *
21
+ * ```tsx
22
+ * type MyComponentProps = {
23
+ * direction: 'row' | 'column';
24
+ * slots?: {
25
+ * mySlot?: React.JSXElementConstructor<{ direction: 'row' | 'column' }>;
26
+ * }
27
+ * };
28
+ *
29
+ * const MyComponent = consumeSlots(
30
+ * 'MuiMyComponent',
31
+ * 'mySlot',
32
+ * function DefaultComponent(props: MyComponentProps) {
33
+ * return (
34
+ * <div className={props.classes.root}>
35
+ * {props.direction}
36
+ * </div>
37
+ * );
38
+ * }
39
+ * );
40
+ * ```
41
+ *
42
+ * @param {string} name The mui component name.
43
+ * @param {string} slotPropName The name of the prop to retrieve the slot from.
44
+ * @param {object} options Options for the HOC.
45
+ * @param {boolean} options.propagateSlots Whether to propagate the slots to the component, this is always false if the slot is provided.
46
+ * @param {Record<string, any>} options.defaultProps A set of defaults for the component, will be deep merged with the props.
47
+ * @param {Array<keyof Props>} options.omitProps An array of props to omit from the component.
48
+ * @param {Function} options.classesResolver A function that returns the classes for the component. It receives the props, after theme props and defaults have been applied. And the theme object as the second argument.
49
+ * @param InComponent The component to render if the slot is not provided.
50
+ */
51
+ import { jsx as _jsx } from "react/jsx-runtime";
52
+ export const consumeSlots = (name, slotPropName, options, InComponent) => {
53
+ function ConsumeSlotsInternal(props, ref) {
54
+ const themedProps = useThemeProps({
55
+ props,
56
+ // eslint-disable-next-line material-ui/mui-name-matches-component-name
57
+ name
58
+ });
59
+ const defaultProps = typeof options.defaultProps === 'function' ? options.defaultProps(themedProps) : options.defaultProps ?? {};
60
+ const defaultizedProps = resolveProps(defaultProps, themedProps);
61
+ const _ref = defaultizedProps,
62
+ {
63
+ slots,
64
+ slotProps
65
+ } = _ref,
66
+ other = _objectWithoutPropertiesLoose(_ref, _excluded);
67
+ const theme = useTheme();
68
+ const classes = options.classesResolver?.(defaultizedProps, theme);
69
+
70
+ // Can be a function component or a forward ref component.
71
+ const Component = slots?.[slotPropName] ?? InComponent;
72
+ const propagateSlots = options.propagateSlots && !slots?.[slotPropName];
73
+ const _useSlotProps = useSlotProps({
74
+ elementType: Component,
75
+ externalSlotProps: slotProps?.[slotPropName],
76
+ additionalProps: _extends({}, other, {
77
+ classes
78
+ }, propagateSlots && {
79
+ slots,
80
+ slotProps
81
+ }),
82
+ ownerState: {}
83
+ }),
84
+ originalOutProps = _objectWithoutPropertiesLoose(_useSlotProps, _excluded2);
85
+ const outProps = _extends({}, originalOutProps);
86
+ for (const prop of options.omitProps ?? []) {
87
+ delete outProps[prop];
88
+ }
89
+
90
+ // Component can be wrapped in React.forwardRef or just a function that accepts (props, ref).
91
+ // If it is a plain function which accepts two arguments, we need to wrap it in React.forwardRef.
92
+ const OutComponent = Component.length >= 2 ? /*#__PURE__*/React.forwardRef(Component) : Component;
93
+ if (process.env.NODE_ENV !== 'production') {
94
+ OutComponent.displayName = `${name}.slots.${slotPropName}`;
95
+ }
96
+ return /*#__PURE__*/_jsx(OutComponent, _extends({}, outProps, {
97
+ ref: ref
98
+ }));
99
+ }
100
+ return /*#__PURE__*/React.forwardRef(ConsumeSlotsInternal);
101
+ };
@@ -0,0 +1,70 @@
1
+ import _extends from "@babel/runtime/helpers/esm/extends";
2
+ import { useTheme, useThemeProps } from '@mui/material/styles';
3
+ import resolveProps from '@mui/utils/resolveProps';
4
+ import * as React from 'react';
5
+
6
+ /**
7
+ * A higher order component that consumes and merges the theme `defaultProps` and handles the `classes` and renders the component.
8
+ *
9
+ * This HOC will wrap a single component.
10
+ * If you need to render multiple components, you can manually consume the theme and render them in your component instead of using this HOC.
11
+ *
12
+ * In the example below, `MyComponent` will render the `DefaultComponent` with the `direction` prop set to `'row'` and the className set to `'my-custom-root'`.
13
+ *
14
+ * @example
15
+ * ```tsx
16
+ * createTheme({
17
+ * components: {
18
+ * MuiMyComponent: {
19
+ * defaultProps: {
20
+ * direction: 'row',
21
+ * },
22
+ * },
23
+ * },
24
+ * })
25
+ *
26
+ * type MyComponentProps = {
27
+ * direction: 'row' | 'column';
28
+ * classes?: Record<'root', string>;
29
+ * };
30
+ *
31
+ * const MyComponent = consumeThemeProps(
32
+ * 'MuiMyComponent',
33
+ * function DefaultComponent(props: MyComponentProps) {
34
+ * return (
35
+ * <div className={props.classes.root}>
36
+ * {props.direction}
37
+ * </div>
38
+ * );
39
+ * }
40
+ * );
41
+ *
42
+ * render(<MyComponent classes={{ root: 'my-custom-root' }} />);
43
+ * ```
44
+ *
45
+ * @param {string} name The mui component name.
46
+ * @param {object} options Options for the HOC.
47
+ * @param {Record<string, any>} options.defaultProps A set of defaults for the component, will be deep merged with the props.
48
+ * @param {Function} options.classesResolver A function that returns the classes for the component. It receives the props, after theme props and defaults have been applied. And the theme object as the second argument.
49
+ * @param InComponent The component to render if the slot is not provided.
50
+ */
51
+ import { jsx as _jsx } from "react/jsx-runtime";
52
+ export const consumeThemeProps = (name, options, InComponent) => /*#__PURE__*/React.forwardRef(function ConsumeThemeInternal(props, ref) {
53
+ const themedProps = useThemeProps({
54
+ props,
55
+ // eslint-disable-next-line material-ui/mui-name-matches-component-name
56
+ name
57
+ });
58
+ const defaultProps = typeof options.defaultProps === 'function' ? options.defaultProps(themedProps) : options.defaultProps ?? {};
59
+ const outProps = resolveProps(defaultProps, themedProps);
60
+ const theme = useTheme();
61
+ const classes = options.classesResolver?.(outProps, theme);
62
+ const OutComponent = /*#__PURE__*/React.forwardRef(InComponent);
63
+ if (process.env.NODE_ENV !== 'production') {
64
+ OutComponent.displayName = `consumeThemeProps(${name})`;
65
+ }
66
+ return /*#__PURE__*/_jsx(OutComponent, _extends({}, outProps, {
67
+ classes: classes,
68
+ ref: ref
69
+ }));
70
+ });