@mui/x-charts 8.0.0-alpha.7 → 8.0.0-alpha.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (559) hide show
  1. package/BarChart/BarChart.d.ts +1 -1
  2. package/BarChart/BarChart.js +9 -1
  3. package/BarChart/BarLabel/BarLabelPlot.js +1 -1
  4. package/BarChart/BarPlot.js +8 -9
  5. package/BarChart/extremums.d.ts +3 -3
  6. package/BarChart/formatter.d.ts +2 -2
  7. package/BarChart/formatter.js +2 -1
  8. package/BarChart/getColor.d.ts +1 -1
  9. package/BarChart/legend.d.ts +1 -1
  10. package/BarChart/legend.js +1 -1
  11. package/BarChart/plugin.d.ts +2 -2
  12. package/BarChart/plugin.js +1 -2
  13. package/BarChart/useBarChartProps.d.ts +1 -1
  14. package/CHANGELOG.md +115 -0
  15. package/ChartContainer/ChartContainer.d.ts +6 -2
  16. package/ChartContainer/ChartContainer.js +13 -7
  17. package/ChartContainer/useChartContainerProps.d.ts +5 -3
  18. package/ChartContainer/useChartContainerProps.js +7 -5
  19. package/ChartsAxis/ChartsAxis.js +5 -3
  20. package/ChartsGrid/ChartsGrid.js +9 -5
  21. package/ChartsGrid/ChartsHorizontalGrid.d.ts +2 -2
  22. package/ChartsGrid/ChartsHorizontalGrid.js +4 -3
  23. package/ChartsGrid/ChartsVerticalGrid.d.ts +2 -2
  24. package/ChartsGrid/ChartsVerticalGrid.js +4 -3
  25. package/ChartsLabel/ChartsLabelGradient.js +11 -12
  26. package/ChartsLegend/ContinuousColorLegend.js +3 -3
  27. package/ChartsLegend/useAxis.js +7 -5
  28. package/ChartsOnAxisClickHandler/ChartsOnAxisClickHandler.js +7 -6
  29. package/ChartsSurface/ChartsSurface.js +16 -26
  30. package/ChartsTooltip/ChartsAxisTooltipContent.js +6 -3
  31. package/ChartsTooltip/ChartsItemTooltipContent.js +6 -3
  32. package/ChartsTooltip/ChartsTooltipTable.d.ts +0 -6
  33. package/ChartsTooltip/ChartsTooltipTable.js +0 -20
  34. package/ChartsTooltip/useAxisTooltip.d.ts +3 -1
  35. package/ChartsTooltip/useAxisTooltip.js +13 -9
  36. package/ChartsTooltip/useItemTooltip.d.ts +3 -1
  37. package/ChartsTooltip/useItemTooltip.js +14 -10
  38. package/ChartsVoronoiHandler/ChartsVoronoiHandler.js +16 -9
  39. package/ChartsXAxis/ChartsXAxis.js +11 -8
  40. package/ChartsYAxis/ChartsYAxis.js +8 -5
  41. package/Gauge/Gauge.js +5 -1
  42. package/Gauge/GaugeContainer.d.ts +3 -10
  43. package/Gauge/GaugeContainer.js +38 -38
  44. package/LineChart/AnimatedArea.js +1 -1
  45. package/LineChart/AnimatedLine.js +1 -1
  46. package/LineChart/AppearingMask.js +1 -1
  47. package/LineChart/AreaPlot.js +16 -15
  48. package/LineChart/LineChart.js +9 -1
  49. package/LineChart/LineHighlightPlot.js +14 -11
  50. package/LineChart/LinePlot.js +16 -15
  51. package/LineChart/MarkPlot.js +14 -11
  52. package/LineChart/extremums.d.ts +3 -3
  53. package/LineChart/formatter.d.ts +2 -2
  54. package/LineChart/formatter.js +3 -1
  55. package/LineChart/getColor.d.ts +1 -1
  56. package/LineChart/legend.d.ts +1 -1
  57. package/LineChart/legend.js +1 -1
  58. package/LineChart/plugin.d.ts +2 -2
  59. package/LineChart/plugin.js +1 -2
  60. package/LineChart/useLineChartProps.d.ts +1 -1
  61. package/PieChart/PieArcLabelPlot.js +2 -2
  62. package/PieChart/PieArcPlot.js +2 -2
  63. package/PieChart/PieChart.js +9 -1
  64. package/PieChart/dataTransform/transition.d.ts +2 -2
  65. package/PieChart/dataTransform/transition.js +6 -6
  66. package/PieChart/formatter.d.ts +2 -2
  67. package/PieChart/formatter.js +4 -1
  68. package/PieChart/getColor.d.ts +1 -1
  69. package/PieChart/getPieCoordinates.d.ts +2 -2
  70. package/PieChart/legend.d.ts +1 -1
  71. package/PieChart/legend.js +1 -1
  72. package/PieChart/plugin.d.ts +2 -2
  73. package/PieChart/plugin.js +1 -2
  74. package/ScatterChart/Scatter.js +6 -4
  75. package/ScatterChart/ScatterChart.d.ts +1 -2
  76. package/ScatterChart/ScatterChart.js +16 -12
  77. package/ScatterChart/ScatterPlot.js +11 -10
  78. package/ScatterChart/extremums.d.ts +3 -3
  79. package/ScatterChart/extremums.js +3 -1
  80. package/ScatterChart/formatter.d.ts +2 -2
  81. package/ScatterChart/formatter.js +3 -1
  82. package/ScatterChart/getColor.d.ts +1 -1
  83. package/ScatterChart/legend.d.ts +1 -1
  84. package/ScatterChart/legend.js +1 -1
  85. package/ScatterChart/plugin.d.ts +2 -2
  86. package/ScatterChart/plugin.js +1 -2
  87. package/ScatterChart/useScatterChartProps.d.ts +1 -3
  88. package/ScatterChart/useScatterChartProps.js +1 -4
  89. package/SparkLineChart/SparkLineChart.d.ts +2 -2
  90. package/SparkLineChart/SparkLineChart.js +11 -2
  91. package/context/ChartDataProvider/ChartDataProvider.d.ts +6 -22
  92. package/context/ChartDataProvider/ChartDataProvider.js +22 -184
  93. package/context/ChartDataProvider/useChartDataProviderProps.d.ts +6 -83
  94. package/context/ChartDataProvider/useChartDataProviderProps.js +33 -47
  95. package/context/ChartProvider/ChartProvider.d.ts +5 -1
  96. package/context/ChartProvider/ChartProvider.js +22 -2
  97. package/context/ChartProvider/ChartProvider.types.d.ts +17 -2
  98. package/context/InteractionSelectors.d.ts +33 -33
  99. package/context/PolarProvider/PolarProvider.d.ts +0 -4
  100. package/context/PolarProvider/PolarProvider.js +59 -47
  101. package/context/PolarProvider/getAxisExtremum.d.ts +0 -4
  102. package/context/PolarProvider/getAxisExtremum.js +48 -20
  103. package/context/PolarProvider/usePolarContext.d.ts +0 -2
  104. package/context/PolarProvider/usePolarContext.js +9 -8
  105. package/context/index.d.ts +0 -2
  106. package/context/index.js +0 -1
  107. package/hooks/index.d.ts +2 -0
  108. package/hooks/index.js +3 -1
  109. package/hooks/useAxis.d.ts +9 -1
  110. package/hooks/useAxis.js +32 -6
  111. package/hooks/useAxisEvents.js +12 -8
  112. package/hooks/useChartGradientId.d.ts +31 -0
  113. package/hooks/useChartGradientId.js +47 -0
  114. package/hooks/useColorScale.js +5 -5
  115. package/hooks/useDrawingArea.d.ts +16 -2
  116. package/hooks/useDrawingArea.js +5 -20
  117. package/hooks/useSeries.d.ts +11 -6
  118. package/hooks/useSeries.js +5 -10
  119. package/hooks/useZAxis.d.ts +3 -2
  120. package/hooks/useZAxis.js +25 -6
  121. package/index.js +1 -1
  122. package/internals/components/ChartsAxesGradients/ChartsAxesGradients.d.ts +0 -3
  123. package/internals/components/ChartsAxesGradients/ChartsAxesGradients.js +19 -27
  124. package/internals/components/ChartsAxesGradients/ChartsPiecewiseGradient.d.ts +1 -1
  125. package/internals/components/ChartsAxesGradients/ChartsPiecewiseGradient.js +3 -0
  126. package/internals/defaultizeColor.d.ts +22 -22
  127. package/internals/index.d.ts +13 -8
  128. package/internals/index.js +16 -9
  129. package/internals/plugins/allPlugins.d.ts +12 -1
  130. package/internals/plugins/allPlugins.js +5 -2
  131. package/internals/plugins/corePlugins/corePlugins.d.ts +1 -1
  132. package/internals/plugins/corePlugins/corePlugins.js +3 -1
  133. package/internals/plugins/corePlugins/useChartDimensions/index.d.ts +3 -0
  134. package/internals/plugins/corePlugins/useChartDimensions/index.js +2 -0
  135. package/internals/plugins/corePlugins/useChartDimensions/useChartDimensions.d.ts +3 -0
  136. package/internals/plugins/corePlugins/useChartDimensions/useChartDimensions.js +175 -0
  137. package/internals/plugins/corePlugins/useChartDimensions/useChartDimensions.selectors.d.ts +264 -0
  138. package/internals/plugins/corePlugins/useChartDimensions/useChartDimensions.selectors.js +25 -0
  139. package/internals/plugins/corePlugins/useChartDimensions/useChartDimensions.types.d.ts +99 -0
  140. package/internals/plugins/corePlugins/useChartId/index.d.ts +1 -0
  141. package/internals/plugins/corePlugins/useChartId/index.js +2 -1
  142. package/internals/plugins/corePlugins/useChartId/useChartId.js +1 -1
  143. package/internals/plugins/corePlugins/useChartId/useChartId.selectors.d.ts +2 -2
  144. package/internals/plugins/corePlugins/useChartId/useChartId.types.d.ts +1 -1
  145. package/internals/plugins/corePlugins/useChartSeries/index.d.ts +3 -0
  146. package/internals/plugins/corePlugins/useChartSeries/index.js +2 -0
  147. package/internals/plugins/corePlugins/useChartSeries/processSeries.d.ts +18 -0
  148. package/{modern/context/SeriesProvider → internals/plugins/corePlugins/useChartSeries}/processSeries.js +9 -6
  149. package/internals/plugins/corePlugins/useChartSeries/useChartSeries.d.ts +3 -0
  150. package/internals/plugins/corePlugins/useChartSeries/useChartSeries.js +72 -0
  151. package/internals/plugins/corePlugins/useChartSeries/useChartSeries.selectors.d.ts +61 -0
  152. package/internals/plugins/corePlugins/useChartSeries/useChartSeries.selectors.js +4 -0
  153. package/internals/plugins/corePlugins/useChartSeries/useChartSeries.types.d.ts +51 -0
  154. package/internals/plugins/corePlugins/useChartSeries/useColorProcessor.d.ts +10 -0
  155. package/internals/plugins/corePlugins/useChartSeries/useColorProcessor.js +21 -0
  156. package/internals/plugins/featurePlugins/useChartCartesianAxis/computeAxisValue.d.ts +29 -0
  157. package/internals/{computeAxisValue.js → plugins/featurePlugins/useChartCartesianAxis/computeAxisValue.js} +19 -27
  158. package/internals/plugins/featurePlugins/useChartCartesianAxis/createAxisFilterMapper.d.ts +18 -0
  159. package/internals/plugins/featurePlugins/useChartCartesianAxis/createAxisFilterMapper.js +61 -0
  160. package/internals/plugins/featurePlugins/useChartCartesianAxis/defaultizeAxis.d.ts +39 -0
  161. package/{modern/context/ChartDataProvider/useDefaultizeAxis.js → internals/plugins/featurePlugins/useChartCartesianAxis/defaultizeAxis.js} +3 -11
  162. package/internals/plugins/featurePlugins/useChartCartesianAxis/getAxisExtremum.d.ts +6 -0
  163. package/internals/plugins/featurePlugins/useChartCartesianAxis/getAxisExtremum.js +22 -0
  164. package/internals/plugins/featurePlugins/useChartCartesianAxis/index.d.ts +5 -0
  165. package/internals/plugins/featurePlugins/useChartCartesianAxis/index.js +4 -0
  166. package/internals/plugins/featurePlugins/useChartCartesianAxis/useChartCartesianAxis.d.ts +4 -0
  167. package/internals/plugins/featurePlugins/useChartCartesianAxis/useChartCartesianAxis.js +68 -0
  168. package/internals/plugins/featurePlugins/useChartCartesianAxis/useChartCartesianAxis.selectors.d.ts +1372 -0
  169. package/internals/plugins/featurePlugins/useChartCartesianAxis/useChartCartesianAxis.selectors.js +87 -0
  170. package/internals/plugins/featurePlugins/useChartCartesianAxis/useChartCartesianAxis.types.d.ts +76 -0
  171. package/internals/plugins/featurePlugins/useChartCartesianAxis/zoom.types.d.ts +18 -0
  172. package/internals/plugins/featurePlugins/useChartInteraction/useChartInteraction.selectors.d.ts +22 -22
  173. package/internals/plugins/featurePlugins/useChartZAxis/index.d.ts +3 -0
  174. package/internals/plugins/featurePlugins/useChartZAxis/index.js +2 -0
  175. package/internals/plugins/featurePlugins/useChartZAxis/useChartZAxis.d.ts +3 -0
  176. package/internals/plugins/featurePlugins/useChartZAxis/useChartZAxis.js +86 -0
  177. package/internals/plugins/featurePlugins/useChartZAxis/useChartZAxis.selectors.d.ts +45 -0
  178. package/internals/plugins/featurePlugins/useChartZAxis/useChartZAxis.selectors.js +3 -0
  179. package/internals/plugins/featurePlugins/useChartZAxis/useChartZAxis.types.d.ts +39 -0
  180. package/internals/plugins/featurePlugins/useChartZAxis/utils.d.ts +0 -0
  181. package/internals/plugins/featurePlugins/useChartZAxis/utils.js +0 -0
  182. package/internals/plugins/models/index.d.ts +1 -0
  183. package/internals/plugins/models/index.js +2 -1
  184. package/internals/plugins/models/plugin.d.ts +32 -2
  185. package/internals/plugins/models/seriesConfig/colorProcessor.types.d.ts +5 -0
  186. package/internals/plugins/models/seriesConfig/extremumGetter.types.d.ts +22 -0
  187. package/internals/plugins/models/seriesConfig/index.d.ts +4 -0
  188. package/internals/plugins/models/seriesConfig/index.js +4 -0
  189. package/internals/plugins/models/seriesConfig/seriesConfig.types.d.ts +14 -0
  190. package/internals/plugins/models/seriesConfig/seriesProcessor.types.d.ts +18 -0
  191. package/internals/store/extractPluginParamsFromProps.d.ts +7 -0
  192. package/internals/store/extractPluginParamsFromProps.js +28 -0
  193. package/internals/store/useChartModels.d.ts +7 -0
  194. package/internals/store/useChartModels.js +64 -0
  195. package/internals/store/useCharts.d.ts +4 -2
  196. package/internals/store/useCharts.js +14 -9
  197. package/internals/store/useCharts.types.d.ts +1 -1
  198. package/internals/store/useStore.d.ts +5 -1
  199. package/internals/store/useStore.js +1 -9
  200. package/models/layout.d.ts +2 -1
  201. package/modern/BarChart/BarChart.js +9 -1
  202. package/modern/BarChart/BarLabel/BarLabelPlot.js +1 -1
  203. package/modern/BarChart/BarPlot.js +8 -9
  204. package/modern/BarChart/formatter.js +2 -1
  205. package/modern/BarChart/legend.js +1 -1
  206. package/modern/BarChart/plugin.js +1 -2
  207. package/modern/ChartContainer/ChartContainer.js +13 -7
  208. package/modern/ChartContainer/useChartContainerProps.js +7 -5
  209. package/modern/ChartsAxis/ChartsAxis.js +5 -3
  210. package/modern/ChartsGrid/ChartsGrid.js +9 -5
  211. package/modern/ChartsGrid/ChartsHorizontalGrid.js +4 -3
  212. package/modern/ChartsGrid/ChartsVerticalGrid.js +4 -3
  213. package/modern/ChartsLabel/ChartsLabelGradient.js +11 -12
  214. package/modern/ChartsLegend/ContinuousColorLegend.js +3 -3
  215. package/modern/ChartsLegend/useAxis.js +7 -5
  216. package/modern/ChartsOnAxisClickHandler/ChartsOnAxisClickHandler.js +7 -6
  217. package/modern/ChartsSurface/ChartsSurface.js +16 -26
  218. package/modern/ChartsTooltip/ChartsAxisTooltipContent.js +6 -3
  219. package/modern/ChartsTooltip/ChartsItemTooltipContent.js +6 -3
  220. package/modern/ChartsTooltip/ChartsTooltipTable.js +0 -20
  221. package/modern/ChartsTooltip/useAxisTooltip.js +13 -9
  222. package/modern/ChartsTooltip/useItemTooltip.js +14 -10
  223. package/modern/ChartsVoronoiHandler/ChartsVoronoiHandler.js +16 -9
  224. package/modern/ChartsXAxis/ChartsXAxis.js +11 -8
  225. package/modern/ChartsYAxis/ChartsYAxis.js +8 -5
  226. package/modern/Gauge/Gauge.js +5 -1
  227. package/modern/Gauge/GaugeContainer.js +38 -38
  228. package/modern/LineChart/AnimatedArea.js +1 -1
  229. package/modern/LineChart/AnimatedLine.js +1 -1
  230. package/modern/LineChart/AppearingMask.js +1 -1
  231. package/modern/LineChart/AreaPlot.js +16 -15
  232. package/modern/LineChart/LineChart.js +9 -1
  233. package/modern/LineChart/LineHighlightPlot.js +14 -11
  234. package/modern/LineChart/LinePlot.js +16 -15
  235. package/modern/LineChart/MarkPlot.js +14 -11
  236. package/modern/LineChart/formatter.js +3 -1
  237. package/modern/LineChart/legend.js +1 -1
  238. package/modern/LineChart/plugin.js +1 -2
  239. package/modern/PieChart/PieArcLabelPlot.js +2 -2
  240. package/modern/PieChart/PieArcPlot.js +2 -2
  241. package/modern/PieChart/PieChart.js +9 -1
  242. package/modern/PieChart/dataTransform/transition.js +6 -6
  243. package/modern/PieChart/formatter.js +4 -1
  244. package/modern/PieChart/legend.js +1 -1
  245. package/modern/PieChart/plugin.js +1 -2
  246. package/modern/ScatterChart/Scatter.js +6 -4
  247. package/modern/ScatterChart/ScatterChart.js +16 -12
  248. package/modern/ScatterChart/ScatterPlot.js +11 -10
  249. package/modern/ScatterChart/extremums.js +3 -1
  250. package/modern/ScatterChart/formatter.js +3 -1
  251. package/modern/ScatterChart/legend.js +1 -1
  252. package/modern/ScatterChart/plugin.js +1 -2
  253. package/modern/ScatterChart/useScatterChartProps.js +1 -4
  254. package/modern/SparkLineChart/SparkLineChart.js +11 -2
  255. package/modern/context/ChartDataProvider/ChartDataProvider.js +22 -184
  256. package/modern/context/ChartDataProvider/useChartDataProviderProps.js +33 -47
  257. package/modern/context/ChartProvider/ChartProvider.js +22 -2
  258. package/modern/context/PolarProvider/PolarProvider.js +59 -47
  259. package/modern/context/PolarProvider/getAxisExtremum.js +48 -20
  260. package/modern/context/PolarProvider/usePolarContext.js +9 -8
  261. package/modern/context/index.js +0 -1
  262. package/modern/hooks/index.js +3 -1
  263. package/modern/hooks/useAxis.js +32 -6
  264. package/modern/hooks/useAxisEvents.js +12 -8
  265. package/modern/hooks/useChartGradientId.js +47 -0
  266. package/modern/hooks/useColorScale.js +5 -5
  267. package/modern/hooks/useDrawingArea.js +5 -20
  268. package/modern/hooks/useSeries.js +5 -10
  269. package/modern/hooks/useZAxis.js +25 -6
  270. package/modern/index.js +1 -1
  271. package/modern/internals/components/ChartsAxesGradients/ChartsAxesGradients.js +19 -27
  272. package/modern/internals/components/ChartsAxesGradients/ChartsPiecewiseGradient.js +3 -0
  273. package/modern/internals/index.js +16 -9
  274. package/modern/internals/plugins/allPlugins.js +5 -2
  275. package/modern/internals/plugins/corePlugins/corePlugins.js +3 -1
  276. package/modern/internals/plugins/corePlugins/useChartDimensions/index.js +2 -0
  277. package/modern/internals/plugins/corePlugins/useChartDimensions/useChartDimensions.js +175 -0
  278. package/modern/internals/plugins/corePlugins/useChartDimensions/useChartDimensions.selectors.js +25 -0
  279. package/modern/internals/plugins/corePlugins/useChartId/index.js +2 -1
  280. package/modern/internals/plugins/corePlugins/useChartId/useChartId.js +1 -1
  281. package/modern/internals/plugins/corePlugins/useChartSeries/index.js +2 -0
  282. package/{context/SeriesProvider → modern/internals/plugins/corePlugins/useChartSeries}/processSeries.js +9 -6
  283. package/modern/internals/plugins/corePlugins/useChartSeries/useChartSeries.js +72 -0
  284. package/modern/internals/plugins/corePlugins/useChartSeries/useChartSeries.selectors.js +4 -0
  285. package/modern/internals/plugins/corePlugins/useChartSeries/useColorProcessor.js +21 -0
  286. package/modern/internals/{computeAxisValue.js → plugins/featurePlugins/useChartCartesianAxis/computeAxisValue.js} +19 -27
  287. package/modern/internals/plugins/featurePlugins/useChartCartesianAxis/createAxisFilterMapper.js +61 -0
  288. package/{context/ChartDataProvider/useDefaultizeAxis.js → modern/internals/plugins/featurePlugins/useChartCartesianAxis/defaultizeAxis.js} +3 -11
  289. package/modern/internals/plugins/featurePlugins/useChartCartesianAxis/getAxisExtremum.js +22 -0
  290. package/modern/internals/plugins/featurePlugins/useChartCartesianAxis/index.js +4 -0
  291. package/modern/internals/plugins/featurePlugins/useChartCartesianAxis/useChartCartesianAxis.js +68 -0
  292. package/modern/internals/plugins/featurePlugins/useChartCartesianAxis/useChartCartesianAxis.selectors.js +87 -0
  293. package/modern/internals/plugins/featurePlugins/useChartZAxis/index.js +2 -0
  294. package/modern/internals/plugins/featurePlugins/useChartZAxis/useChartZAxis.js +86 -0
  295. package/modern/internals/plugins/featurePlugins/useChartZAxis/useChartZAxis.selectors.js +3 -0
  296. package/modern/internals/plugins/featurePlugins/useChartZAxis/utils.js +0 -0
  297. package/modern/internals/plugins/models/index.js +2 -1
  298. package/modern/internals/plugins/models/seriesConfig/index.js +4 -0
  299. package/modern/internals/plugins/models/seriesConfig/seriesConfig.types.js +1 -0
  300. package/modern/internals/plugins/models/seriesConfig/seriesProcessor.types.js +1 -0
  301. package/modern/internals/store/extractPluginParamsFromProps.js +28 -0
  302. package/modern/internals/store/useChartModels.js +64 -0
  303. package/modern/internals/store/useCharts.js +14 -9
  304. package/modern/internals/store/useStore.js +1 -9
  305. package/node/BarChart/BarChart.js +9 -1
  306. package/node/BarChart/BarLabel/BarLabelPlot.js +1 -1
  307. package/node/BarChart/BarPlot.js +6 -6
  308. package/node/BarChart/formatter.js +2 -1
  309. package/node/BarChart/legend.js +1 -1
  310. package/node/BarChart/plugin.js +1 -2
  311. package/node/ChartContainer/ChartContainer.js +13 -7
  312. package/node/ChartContainer/useChartContainerProps.js +7 -5
  313. package/node/ChartsAxis/ChartsAxis.js +5 -3
  314. package/node/ChartsGrid/ChartsGrid.js +9 -5
  315. package/node/ChartsGrid/ChartsHorizontalGrid.js +4 -3
  316. package/node/ChartsGrid/ChartsVerticalGrid.js +4 -3
  317. package/node/ChartsLabel/ChartsLabelGradient.js +11 -12
  318. package/node/ChartsLegend/ContinuousColorLegend.js +3 -3
  319. package/node/ChartsLegend/useAxis.js +6 -4
  320. package/node/ChartsOnAxisClickHandler/ChartsOnAxisClickHandler.js +6 -5
  321. package/node/ChartsSurface/ChartsSurface.js +17 -27
  322. package/node/ChartsTooltip/ChartsAxisTooltipContent.js +5 -2
  323. package/node/ChartsTooltip/ChartsItemTooltipContent.js +5 -2
  324. package/node/ChartsTooltip/ChartsTooltipTable.js +1 -21
  325. package/node/ChartsTooltip/useAxisTooltip.js +11 -7
  326. package/node/ChartsTooltip/useItemTooltip.js +13 -9
  327. package/node/ChartsVoronoiHandler/ChartsVoronoiHandler.js +19 -12
  328. package/node/ChartsXAxis/ChartsXAxis.js +11 -8
  329. package/node/ChartsYAxis/ChartsYAxis.js +8 -5
  330. package/node/Gauge/Gauge.js +5 -1
  331. package/node/Gauge/GaugeContainer.js +38 -38
  332. package/node/LineChart/AnimatedArea.js +1 -1
  333. package/node/LineChart/AnimatedLine.js +1 -1
  334. package/node/LineChart/AppearingMask.js +1 -1
  335. package/node/LineChart/AreaPlot.js +16 -15
  336. package/node/LineChart/LineChart.js +9 -1
  337. package/node/LineChart/LineHighlightPlot.js +14 -11
  338. package/node/LineChart/LinePlot.js +16 -15
  339. package/node/LineChart/MarkPlot.js +14 -11
  340. package/node/LineChart/formatter.js +3 -1
  341. package/node/LineChart/legend.js +1 -1
  342. package/node/LineChart/plugin.js +1 -2
  343. package/node/PieChart/PieArcLabelPlot.js +1 -1
  344. package/node/PieChart/PieArcPlot.js +1 -1
  345. package/node/PieChart/PieChart.js +9 -1
  346. package/node/PieChart/dataTransform/transition.js +9 -7
  347. package/node/PieChart/formatter.js +4 -1
  348. package/node/PieChart/legend.js +1 -1
  349. package/node/PieChart/plugin.js +1 -2
  350. package/node/ScatterChart/Scatter.js +6 -4
  351. package/node/ScatterChart/ScatterChart.js +16 -12
  352. package/node/ScatterChart/ScatterPlot.js +10 -9
  353. package/node/ScatterChart/extremums.js +3 -1
  354. package/node/ScatterChart/formatter.js +3 -1
  355. package/node/ScatterChart/legend.js +1 -1
  356. package/node/ScatterChart/plugin.js +1 -2
  357. package/node/ScatterChart/useScatterChartProps.js +1 -4
  358. package/node/SparkLineChart/SparkLineChart.js +10 -1
  359. package/node/context/ChartDataProvider/ChartDataProvider.js +22 -184
  360. package/node/context/ChartDataProvider/useChartDataProviderProps.js +34 -47
  361. package/node/context/ChartProvider/ChartProvider.js +23 -2
  362. package/node/context/PolarProvider/PolarProvider.js +59 -51
  363. package/node/context/PolarProvider/getAxisExtremum.js +49 -27
  364. package/node/context/PolarProvider/usePolarContext.js +9 -14
  365. package/node/context/index.js +0 -8
  366. package/node/hooks/index.js +29 -2
  367. package/node/hooks/useAxis.js +34 -6
  368. package/node/hooks/useAxisEvents.js +12 -8
  369. package/node/hooks/useChartGradientId.js +56 -0
  370. package/node/hooks/useColorScale.js +4 -4
  371. package/node/hooks/useDrawingArea.js +5 -21
  372. package/node/hooks/useSeries.js +5 -9
  373. package/node/hooks/useZAxis.js +27 -9
  374. package/node/index.js +1 -1
  375. package/node/internals/components/ChartsAxesGradients/ChartsAxesGradients.js +17 -27
  376. package/node/internals/components/ChartsAxesGradients/ChartsPiecewiseGradient.js +3 -0
  377. package/node/internals/index.js +122 -62
  378. package/node/internals/plugins/allPlugins.js +4 -2
  379. package/node/internals/plugins/corePlugins/corePlugins.js +3 -1
  380. package/node/internals/plugins/corePlugins/useChartDimensions/index.js +27 -0
  381. package/node/internals/plugins/corePlugins/useChartDimensions/useChartDimensions.js +183 -0
  382. package/node/internals/plugins/corePlugins/useChartDimensions/useChartDimensions.selectors.js +32 -0
  383. package/node/internals/plugins/corePlugins/useChartId/index.js +16 -1
  384. package/node/internals/plugins/corePlugins/useChartId/useChartId.js +1 -1
  385. package/node/internals/plugins/corePlugins/useChartSeries/index.js +27 -0
  386. package/node/{context/SeriesProvider → internals/plugins/corePlugins/useChartSeries}/processSeries.js +9 -6
  387. package/node/internals/plugins/corePlugins/useChartSeries/useChartSeries.js +80 -0
  388. package/node/internals/plugins/corePlugins/useChartSeries/useChartSeries.selectors.js +11 -0
  389. package/node/internals/plugins/corePlugins/useChartSeries/useColorProcessor.js +27 -0
  390. package/node/internals/{computeAxisValue.js → plugins/featurePlugins/useChartCartesianAxis/computeAxisValue.js} +19 -27
  391. package/node/internals/plugins/featurePlugins/useChartCartesianAxis/createAxisFilterMapper.js +69 -0
  392. package/node/{context/ChartDataProvider/useDefaultizeAxis.js → internals/plugins/featurePlugins/useChartCartesianAxis/defaultizeAxis.js} +4 -13
  393. package/node/internals/plugins/featurePlugins/useChartCartesianAxis/getAxisExtremum.js +29 -0
  394. package/node/internals/plugins/featurePlugins/useChartCartesianAxis/index.js +47 -0
  395. package/node/internals/plugins/featurePlugins/useChartCartesianAxis/useChartCartesianAxis.js +76 -0
  396. package/node/internals/plugins/featurePlugins/useChartCartesianAxis/useChartCartesianAxis.selectors.js +96 -0
  397. package/node/internals/plugins/featurePlugins/useChartZAxis/index.js +27 -0
  398. package/node/internals/plugins/featurePlugins/useChartZAxis/useChartZAxis.js +94 -0
  399. package/node/internals/plugins/featurePlugins/useChartZAxis/useChartZAxis.selectors.js +9 -0
  400. package/node/internals/plugins/featurePlugins/useChartZAxis/utils.js +1 -0
  401. package/node/internals/plugins/models/index.js +11 -0
  402. package/node/internals/plugins/models/seriesConfig/index.js +49 -0
  403. package/node/internals/plugins/models/seriesConfig/seriesProcessor.types.js +5 -0
  404. package/node/internals/store/extractPluginParamsFromProps.js +36 -0
  405. package/node/internals/store/useChartModels.js +73 -0
  406. package/node/internals/store/useCharts.js +14 -9
  407. package/node/internals/store/useStore.js +1 -9
  408. package/package.json +3 -3
  409. package/context/CartesianProvider/Cartesian.types.d.ts +0 -59
  410. package/context/CartesianProvider/CartesianContext.d.ts +0 -4
  411. package/context/CartesianProvider/CartesianContext.js +0 -13
  412. package/context/CartesianProvider/CartesianProvider.d.ts +0 -4
  413. package/context/CartesianProvider/CartesianProvider.js +0 -49
  414. package/context/CartesianProvider/defaultizeAxis.d.ts +0 -38
  415. package/context/CartesianProvider/defaultizeAxis.js +0 -13
  416. package/context/CartesianProvider/getAxisExtremum.d.ts +0 -5
  417. package/context/CartesianProvider/getAxisExtremum.js +0 -21
  418. package/context/CartesianProvider/index.d.ts +0 -4
  419. package/context/CartesianProvider/index.js +0 -4
  420. package/context/CartesianProvider/useCartesianContext.d.ts +0 -2
  421. package/context/CartesianProvider/useCartesianContext.js +0 -10
  422. package/context/ChartDataProvider/useDefaultizeAxis.d.ts +0 -39
  423. package/context/DrawingAreaProvider/DrawingArea.types.d.ts +0 -51
  424. package/context/DrawingAreaProvider/DrawingAreaContext.d.ts +0 -3
  425. package/context/DrawingAreaProvider/DrawingAreaContext.js +0 -15
  426. package/context/DrawingAreaProvider/DrawingAreaProvider.d.ts +0 -3
  427. package/context/DrawingAreaProvider/DrawingAreaProvider.js +0 -48
  428. package/context/DrawingAreaProvider/index.d.ts +0 -3
  429. package/context/DrawingAreaProvider/index.js +0 -3
  430. package/context/PluginProvider/ColorProcessor.types.d.ts +0 -8
  431. package/context/PluginProvider/ExtremumGetter.types.d.ts +0 -25
  432. package/context/PluginProvider/Plugin.types.d.ts +0 -29
  433. package/context/PluginProvider/PluginContext.d.ts +0 -4
  434. package/context/PluginProvider/PluginContext.js +0 -15
  435. package/context/PluginProvider/PluginProvider.d.ts +0 -4
  436. package/context/PluginProvider/PluginProvider.js +0 -21
  437. package/context/PluginProvider/SeriesFormatter.types.d.ts +0 -21
  438. package/context/PluginProvider/index.d.ts +0 -12
  439. package/context/PluginProvider/index.js +0 -12
  440. package/context/PluginProvider/mergePlugins.d.ts +0 -46
  441. package/context/PluginProvider/mergePlugins.js +0 -40
  442. package/context/PluginProvider/useColorProcessor.d.ts +0 -4
  443. package/context/PluginProvider/useColorProcessor.js +0 -17
  444. package/context/PluginProvider/useRadiusExtremumGetter.d.ts +0 -4
  445. package/context/PluginProvider/useRadiusExtremumGetter.js +0 -17
  446. package/context/PluginProvider/useRotationExtremumGetter.d.ts +0 -4
  447. package/context/PluginProvider/useRotationExtremumGetter.js +0 -17
  448. package/context/PluginProvider/useSeriesFormatter.d.ts +0 -4
  449. package/context/PluginProvider/useSeriesFormatter.js +0 -17
  450. package/context/PluginProvider/useXExtremumGetter.d.ts +0 -4
  451. package/context/PluginProvider/useXExtremumGetter.js +0 -15
  452. package/context/PluginProvider/useYExtremumGetter.d.ts +0 -4
  453. package/context/PluginProvider/useYExtremumGetter.js +0 -15
  454. package/context/SeriesProvider/Series.types.d.ts +0 -26
  455. package/context/SeriesProvider/SeriesContext.d.ts +0 -4
  456. package/context/SeriesProvider/SeriesContext.js +0 -8
  457. package/context/SeriesProvider/SeriesProvider.d.ts +0 -5
  458. package/context/SeriesProvider/SeriesProvider.js +0 -33
  459. package/context/SeriesProvider/index.d.ts +0 -12
  460. package/context/SeriesProvider/index.js +0 -8
  461. package/context/SeriesProvider/processSeries.d.ts +0 -18
  462. package/context/SizeProvider/Size.types.d.ts +0 -30
  463. package/context/SizeProvider/SizeContext.d.ts +0 -4
  464. package/context/SizeProvider/SizeContext.js +0 -15
  465. package/context/SizeProvider/SizeProvider.d.ts +0 -11
  466. package/context/SizeProvider/SizeProvider.js +0 -26
  467. package/context/SizeProvider/index.d.ts +0 -4
  468. package/context/SizeProvider/index.js +0 -4
  469. package/context/SizeProvider/useChartContainerDimensions.d.ts +0 -9
  470. package/context/SizeProvider/useChartContainerDimensions.js +0 -108
  471. package/context/SizeProvider/useSize.d.ts +0 -5
  472. package/context/SizeProvider/useSize.js +0 -13
  473. package/context/ZAxisContextProvider.d.ts +0 -33
  474. package/context/ZAxisContextProvider.js +0 -96
  475. package/internals/computeAxisValue.d.ts +0 -38
  476. package/modern/context/CartesianProvider/CartesianContext.js +0 -13
  477. package/modern/context/CartesianProvider/CartesianProvider.js +0 -49
  478. package/modern/context/CartesianProvider/defaultizeAxis.js +0 -13
  479. package/modern/context/CartesianProvider/getAxisExtremum.js +0 -21
  480. package/modern/context/CartesianProvider/index.js +0 -4
  481. package/modern/context/CartesianProvider/useCartesianContext.js +0 -10
  482. package/modern/context/DrawingAreaProvider/DrawingAreaContext.js +0 -15
  483. package/modern/context/DrawingAreaProvider/DrawingAreaProvider.js +0 -48
  484. package/modern/context/DrawingAreaProvider/index.js +0 -3
  485. package/modern/context/PluginProvider/PluginContext.js +0 -15
  486. package/modern/context/PluginProvider/PluginProvider.js +0 -21
  487. package/modern/context/PluginProvider/index.js +0 -12
  488. package/modern/context/PluginProvider/mergePlugins.js +0 -40
  489. package/modern/context/PluginProvider/useColorProcessor.js +0 -17
  490. package/modern/context/PluginProvider/useRadiusExtremumGetter.js +0 -17
  491. package/modern/context/PluginProvider/useRotationExtremumGetter.js +0 -17
  492. package/modern/context/PluginProvider/useSeriesFormatter.js +0 -17
  493. package/modern/context/PluginProvider/useXExtremumGetter.js +0 -15
  494. package/modern/context/PluginProvider/useYExtremumGetter.js +0 -15
  495. package/modern/context/SeriesProvider/SeriesContext.js +0 -8
  496. package/modern/context/SeriesProvider/SeriesProvider.js +0 -33
  497. package/modern/context/SeriesProvider/index.js +0 -8
  498. package/modern/context/SizeProvider/SizeContext.js +0 -15
  499. package/modern/context/SizeProvider/SizeProvider.js +0 -26
  500. package/modern/context/SizeProvider/index.js +0 -4
  501. package/modern/context/SizeProvider/useChartContainerDimensions.js +0 -108
  502. package/modern/context/SizeProvider/useSize.js +0 -13
  503. package/modern/context/ZAxisContextProvider.js +0 -96
  504. package/node/context/CartesianProvider/CartesianContext.js +0 -20
  505. package/node/context/CartesianProvider/CartesianProvider.js +0 -54
  506. package/node/context/CartesianProvider/defaultizeAxis.js +0 -21
  507. package/node/context/CartesianProvider/getAxisExtremum.js +0 -28
  508. package/node/context/CartesianProvider/index.js +0 -49
  509. package/node/context/CartesianProvider/useCartesianContext.js +0 -17
  510. package/node/context/DrawingAreaProvider/DrawingAreaContext.js +0 -21
  511. package/node/context/DrawingAreaProvider/DrawingAreaProvider.js +0 -55
  512. package/node/context/DrawingAreaProvider/index.js +0 -38
  513. package/node/context/PluginProvider/PluginContext.js +0 -22
  514. package/node/context/PluginProvider/PluginProvider.js +0 -26
  515. package/node/context/PluginProvider/index.js +0 -137
  516. package/node/context/PluginProvider/mergePlugins.js +0 -47
  517. package/node/context/PluginProvider/useColorProcessor.js +0 -23
  518. package/node/context/PluginProvider/useRadiusExtremumGetter.js +0 -23
  519. package/node/context/PluginProvider/useRotationExtremumGetter.js +0 -23
  520. package/node/context/PluginProvider/useSeriesFormatter.js +0 -23
  521. package/node/context/PluginProvider/useXExtremumGetter.js +0 -22
  522. package/node/context/PluginProvider/useYExtremumGetter.js +0 -22
  523. package/node/context/SeriesProvider/SeriesContext.js +0 -15
  524. package/node/context/SeriesProvider/SeriesProvider.js +0 -38
  525. package/node/context/SeriesProvider/index.js +0 -49
  526. package/node/context/SizeProvider/SizeContext.js +0 -22
  527. package/node/context/SizeProvider/SizeProvider.js +0 -29
  528. package/node/context/SizeProvider/index.js +0 -49
  529. package/node/context/SizeProvider/useChartContainerDimensions.js +0 -116
  530. package/node/context/SizeProvider/useSize.js +0 -20
  531. package/node/context/ZAxisContextProvider.js +0 -103
  532. /package/{context/CartesianProvider/Cartesian.types.js → internals/plugins/corePlugins/useChartDimensions/useChartDimensions.types.js} +0 -0
  533. /package/{context/DrawingAreaProvider/DrawingArea.types.js → internals/plugins/corePlugins/useChartSeries/useChartSeries.types.js} +0 -0
  534. /package/{context/PluginProvider/ColorProcessor.types.js → internals/plugins/featurePlugins/useChartCartesianAxis/useChartCartesianAxis.types.js} +0 -0
  535. /package/{context/CartesianProvider → internals/plugins/featurePlugins/useChartCartesianAxis}/zoom.d.ts +0 -0
  536. /package/{context/CartesianProvider → internals/plugins/featurePlugins/useChartCartesianAxis}/zoom.js +0 -0
  537. /package/{context/PluginProvider/ExtremumGetter.types.js → internals/plugins/featurePlugins/useChartCartesianAxis/zoom.types.js} +0 -0
  538. /package/{context/PluginProvider/Plugin.types.js → internals/plugins/featurePlugins/useChartZAxis/useChartZAxis.types.js} +0 -0
  539. /package/{context/PluginProvider/SeriesFormatter.types.js → internals/plugins/models/seriesConfig/colorProcessor.types.js} +0 -0
  540. /package/{context/SeriesProvider/Series.types.js → internals/plugins/models/seriesConfig/extremumGetter.types.js} +0 -0
  541. /package/{context/SizeProvider/Size.types.js → internals/plugins/models/seriesConfig/seriesConfig.types.js} +0 -0
  542. /package/{modern/context/CartesianProvider/Cartesian.types.js → internals/plugins/models/seriesConfig/seriesProcessor.types.js} +0 -0
  543. /package/modern/{context/DrawingAreaProvider/DrawingArea.types.js → internals/plugins/corePlugins/useChartDimensions/useChartDimensions.types.js} +0 -0
  544. /package/modern/{context/PluginProvider/ColorProcessor.types.js → internals/plugins/corePlugins/useChartSeries/useChartSeries.types.js} +0 -0
  545. /package/modern/{context/PluginProvider/ExtremumGetter.types.js → internals/plugins/featurePlugins/useChartCartesianAxis/useChartCartesianAxis.types.js} +0 -0
  546. /package/modern/{context/CartesianProvider → internals/plugins/featurePlugins/useChartCartesianAxis}/zoom.js +0 -0
  547. /package/modern/{context/PluginProvider/Plugin.types.js → internals/plugins/featurePlugins/useChartCartesianAxis/zoom.types.js} +0 -0
  548. /package/modern/{context/PluginProvider/SeriesFormatter.types.js → internals/plugins/featurePlugins/useChartZAxis/useChartZAxis.types.js} +0 -0
  549. /package/modern/{context/SeriesProvider/Series.types.js → internals/plugins/models/seriesConfig/colorProcessor.types.js} +0 -0
  550. /package/modern/{context/SizeProvider/Size.types.js → internals/plugins/models/seriesConfig/extremumGetter.types.js} +0 -0
  551. /package/node/{context/CartesianProvider/Cartesian.types.js → internals/plugins/corePlugins/useChartDimensions/useChartDimensions.types.js} +0 -0
  552. /package/node/{context/DrawingAreaProvider/DrawingArea.types.js → internals/plugins/corePlugins/useChartSeries/useChartSeries.types.js} +0 -0
  553. /package/node/{context/PluginProvider/ColorProcessor.types.js → internals/plugins/featurePlugins/useChartCartesianAxis/useChartCartesianAxis.types.js} +0 -0
  554. /package/node/{context/CartesianProvider → internals/plugins/featurePlugins/useChartCartesianAxis}/zoom.js +0 -0
  555. /package/node/{context/PluginProvider/ExtremumGetter.types.js → internals/plugins/featurePlugins/useChartCartesianAxis/zoom.types.js} +0 -0
  556. /package/node/{context/PluginProvider/Plugin.types.js → internals/plugins/featurePlugins/useChartZAxis/useChartZAxis.types.js} +0 -0
  557. /package/node/{context/PluginProvider/SeriesFormatter.types.js → internals/plugins/models/seriesConfig/colorProcessor.types.js} +0 -0
  558. /package/node/{context/SeriesProvider/Series.types.js → internals/plugins/models/seriesConfig/extremumGetter.types.js} +0 -0
  559. /package/node/{context/SizeProvider/Size.types.js → internals/plugins/models/seriesConfig/seriesConfig.types.js} +0 -0
@@ -7,9 +7,7 @@ import * as React from 'react';
7
7
  import PropTypes from 'prop-types';
8
8
  import { styled } from '@mui/material/styles';
9
9
  import { ChartsSurface } from "../ChartsSurface/index.js";
10
- import { DrawingAreaProvider } from "../context/DrawingAreaProvider/index.js";
11
10
  import { GaugeProvider } from "./GaugeProvider.js";
12
- import { SizeProvider } from "../context/SizeProvider/index.js";
13
11
  import { ChartProvider } from "../context/ChartProvider/index.js";
14
12
  import { jsx as _jsx } from "react/jsx-runtime";
15
13
  const GStyled = styled('g')(({
@@ -40,44 +38,42 @@ const GaugeContainer = /*#__PURE__*/React.forwardRef(function GaugeContainer(pro
40
38
  } = props,
41
39
  other = _objectWithoutPropertiesLoose(props, _excluded);
42
40
  return /*#__PURE__*/_jsx(ChartProvider, {
43
- children: /*#__PURE__*/_jsx(SizeProvider, {
41
+ pluginParams: {
44
42
  width: inWidth,
45
43
  height: inHeight,
46
- children: /*#__PURE__*/_jsx(DrawingAreaProvider, {
47
- margin: _extends({
48
- left: 10,
49
- right: 10,
50
- top: 10,
51
- bottom: 10
52
- }, margin),
53
- children: /*#__PURE__*/_jsx(GaugeProvider, {
54
- value: value,
55
- valueMin: valueMin,
56
- valueMax: valueMax,
57
- startAngle: startAngle,
58
- endAngle: endAngle,
59
- outerRadius: outerRadius,
60
- innerRadius: innerRadius,
61
- cornerRadius: cornerRadius,
62
- cx: cx,
63
- cy: cy,
64
- children: /*#__PURE__*/_jsx(ChartsSurface, _extends({
65
- title: title,
66
- desc: desc,
67
- disableAxisListener: true,
68
- role: "meter",
69
- "aria-valuenow": value === null ? undefined : value,
70
- "aria-valuemin": valueMin,
71
- "aria-valuemax": valueMax
72
- }, other, {
73
- ref: ref,
74
- children: /*#__PURE__*/_jsx(GStyled, {
75
- "aria-hidden": "true",
76
- children: children
77
- })
78
- }))
44
+ margin: _extends({
45
+ left: 10,
46
+ right: 10,
47
+ top: 10,
48
+ bottom: 10
49
+ }, margin)
50
+ },
51
+ plugins: [],
52
+ children: /*#__PURE__*/_jsx(GaugeProvider, {
53
+ value: value,
54
+ valueMin: valueMin,
55
+ valueMax: valueMax,
56
+ startAngle: startAngle,
57
+ endAngle: endAngle,
58
+ outerRadius: outerRadius,
59
+ innerRadius: innerRadius,
60
+ cornerRadius: cornerRadius,
61
+ cx: cx,
62
+ cy: cy,
63
+ children: /*#__PURE__*/_jsx(ChartsSurface, _extends({
64
+ title: title,
65
+ desc: desc,
66
+ role: "meter",
67
+ "aria-valuenow": value === null ? undefined : value,
68
+ "aria-valuemin": valueMin,
69
+ "aria-valuemax": valueMax
70
+ }, other, {
71
+ ref: ref,
72
+ children: /*#__PURE__*/_jsx(GStyled, {
73
+ "aria-hidden": "true",
74
+ children: children
79
75
  })
80
- })
76
+ }))
81
77
  })
82
78
  });
83
79
  });
@@ -122,6 +118,11 @@ process.env.NODE_ENV !== "production" ? GaugeContainer.propTypes = {
122
118
  * The height of the chart in px. If not defined, it takes the height of the parent element.
123
119
  */
124
120
  height: PropTypes.number,
121
+ /**
122
+ * This prop is used to help implement the accessibility logic.
123
+ * If you don't provide this prop. It falls back to a randomly generated id.
124
+ */
125
+ id: PropTypes.string,
125
126
  /**
126
127
  * The radius between circle center and the beginning of the arc.
127
128
  * Can be a number (in px) or a string with a percentage such as '50%'.
@@ -133,7 +134,6 @@ process.env.NODE_ENV !== "production" ? GaugeContainer.propTypes = {
133
134
  * The margin between the SVG and the drawing area.
134
135
  * It's used for leaving some space for extra information such as the x- and y-axis or legend.
135
136
  * Accepts an object with the optional properties: `top`, `bottom`, `left`, and `right`.
136
- * @default object Depends on the charts type.
137
137
  */
138
138
  margin: PropTypes.shape({
139
139
  bottom: PropTypes.number,
@@ -28,7 +28,7 @@ function AnimatedArea(props) {
28
28
  other = _objectWithoutPropertiesLoose(props, _excluded);
29
29
  const stringInterpolator = useStringInterpolator(d);
30
30
  const transitionChange = useTransition([stringInterpolator], {
31
- from: {
31
+ from: skipAnimation ? undefined : {
32
32
  value: 0
33
33
  },
34
34
  to: {
@@ -28,7 +28,7 @@ function AnimatedLine(props) {
28
28
  other = _objectWithoutPropertiesLoose(props, _excluded);
29
29
  const stringInterpolator = useStringInterpolator(d);
30
30
  const transitionChange = useTransition([stringInterpolator], {
31
- from: {
31
+ from: skipAnimation ? undefined : {
32
32
  value: 0
33
33
  },
34
34
  to: {
@@ -12,7 +12,7 @@ export function AppearingMask(props) {
12
12
  const drawingArea = useDrawingArea();
13
13
  const chartId = useChartId();
14
14
  const transitionAppear = useTransition([drawingArea], {
15
- from: v => ({
15
+ from: props.skipAnimation ? undefined : v => ({
16
16
  animatedWidth: v.left
17
17
  }),
18
18
  enter: v => ({
@@ -7,14 +7,14 @@ import * as React from 'react';
7
7
  import PropTypes from 'prop-types';
8
8
  import { styled } from '@mui/material/styles';
9
9
  import { area as d3Area } from '@mui/x-charts-vendor/d3-shape';
10
- import { useCartesianContext } from "../context/CartesianProvider/index.js";
11
10
  import { AreaElement, areaElementClasses } from "./AreaElement.js";
12
11
  import { getValueToPositionMapper } from "../hooks/useScale.js";
13
12
  import getCurveFactory from "../internals/getCurve.js";
14
13
  import { DEFAULT_X_AXIS_KEY } from "../constants/index.js";
15
- import { useChartGradient } from "../internals/components/ChartsAxesGradients/index.js";
16
14
  import { useLineSeries } from "../hooks/useSeries.js";
17
15
  import { useSkipAnimation } from "../context/AnimationProvider/index.js";
16
+ import { useChartGradientIdBuilder } from "../hooks/useChartGradientId.js";
17
+ import { useXAxes, useYAxes } from "../hooks/useAxis.js";
18
18
  import { jsx as _jsx } from "react/jsx-runtime";
19
19
  const AreaPlotRoot = styled('g', {
20
20
  name: 'MuiAreaPlot',
@@ -27,7 +27,15 @@ const AreaPlotRoot = styled('g', {
27
27
  });
28
28
  const useAggregatedData = () => {
29
29
  const seriesData = useLineSeries();
30
- const axisData = useCartesianContext();
30
+ const {
31
+ xAxis,
32
+ xAxisIds
33
+ } = useXAxes();
34
+ const {
35
+ yAxis,
36
+ yAxisIds
37
+ } = useYAxes();
38
+ const getGradientId = useChartGradientIdBuilder();
31
39
 
32
40
  // This memo prevents odd line chart behavior when hydrating.
33
41
  const allData = React.useMemo(() => {
@@ -38,12 +46,6 @@ const useAggregatedData = () => {
38
46
  series,
39
47
  stackingGroups
40
48
  } = seriesData;
41
- const {
42
- xAxis,
43
- yAxis,
44
- xAxisIds,
45
- yAxisIds
46
- } = axisData;
47
49
  const defaultXAxisId = xAxisIds[0];
48
50
  const defaultYAxisId = yAxisIds[0];
49
51
  return stackingGroups.flatMap(({
@@ -62,7 +64,7 @@ const useAggregatedData = () => {
62
64
  const xScale = getValueToPositionMapper(xAxis[xAxisId].scale);
63
65
  const yScale = yAxis[yAxisId].scale;
64
66
  const xData = xAxis[xAxisId].data;
65
- const gradientUsed = yAxis[yAxisId].colorScale && [yAxisId, 'y'] || xAxis[xAxisId].colorScale && [xAxisId, 'x'] || undefined;
67
+ const gradientId = yAxis[yAxisId].colorScale && getGradientId(yAxisId) || xAxis[xAxisId].colorScale && getGradientId(xAxisId) || undefined;
66
68
  if (process.env.NODE_ENV !== 'production') {
67
69
  if (xData === undefined) {
68
70
  throw new Error(`MUI X: ${xAxisId === DEFAULT_X_AXIS_KEY ? 'The first `xAxis`' : `The x-axis with id "${xAxisId}"`} should have data property to be able to display a line plot.`);
@@ -95,13 +97,13 @@ const useAggregatedData = () => {
95
97
  const d3Data = connectNulls ? formattedData.filter((_, i) => data[i] != null) : formattedData;
96
98
  const d = areaPath.curve(curve)(d3Data) || '';
97
99
  return _extends({}, series[seriesId], {
98
- gradientUsed,
100
+ gradientId,
99
101
  d,
100
102
  seriesId
101
103
  });
102
104
  });
103
105
  });
104
- }, [seriesData, axisData]);
106
+ }, [seriesData, xAxisIds, yAxisIds, xAxis, yAxis, getGradientId]);
105
107
  return allData;
106
108
  };
107
109
 
@@ -125,7 +127,6 @@ function AreaPlot(props) {
125
127
  } = props,
126
128
  other = _objectWithoutPropertiesLoose(props, _excluded);
127
129
  const skipAnimation = useSkipAnimation(inSkipAnimation);
128
- const getGradientId = useChartGradient();
129
130
  const completedData = useAggregatedData();
130
131
  return /*#__PURE__*/_jsx(AreaPlotRoot, _extends({}, other, {
131
132
  children: completedData.map(({
@@ -133,12 +134,12 @@ function AreaPlot(props) {
133
134
  seriesId,
134
135
  color,
135
136
  area,
136
- gradientUsed
137
+ gradientId
137
138
  }) => !!area && /*#__PURE__*/_jsx(AreaElement, {
138
139
  id: seriesId,
139
140
  d: d,
140
141
  color: color,
141
- gradientId: gradientUsed && getGradientId(...gradientUsed),
142
+ gradientId: gradientId,
142
143
  slots: slots,
143
144
  slotProps: slotProps,
144
145
  onClick: onItemClick && (event => onItemClick(event, {
@@ -77,6 +77,9 @@ process.env.NODE_ENV !== "production" ? LineChart.propTypes = {
77
77
  // | These PropTypes are generated from the TypeScript type definitions |
78
78
  // | To update them edit the TypeScript types and run "pnpm proptypes" |
79
79
  // ----------------------------------------------------------------------
80
+ apiRef: PropTypes.shape({
81
+ current: PropTypes.object
82
+ }),
80
83
  /**
81
84
  * The configuration of axes highlight.
82
85
  * @see See {@link https://mui.com/x/react-charts/highlighting/ highlighting docs} for more details.
@@ -140,6 +143,11 @@ process.env.NODE_ENV !== "production" ? LineChart.propTypes = {
140
143
  dataIndex: PropTypes.number,
141
144
  seriesId: PropTypes.oneOfType([PropTypes.number, PropTypes.string])
142
145
  }),
146
+ /**
147
+ * This prop is used to help implement the accessibility logic.
148
+ * If you don't provide this prop. It falls back to a randomly generated id.
149
+ */
150
+ id: PropTypes.string,
143
151
  /**
144
152
  * Indicate which axis to display the left of the charts.
145
153
  * Can be a string (the id of the axis) or an object `ChartsYAxisProps`.
@@ -155,7 +163,6 @@ process.env.NODE_ENV !== "production" ? LineChart.propTypes = {
155
163
  * The margin between the SVG and the drawing area.
156
164
  * It's used for leaving some space for extra information such as the x- and y-axis or legend.
157
165
  * Accepts an object with the optional properties: `top`, `bottom`, `left`, and `right`.
158
- * @default object Depends on the charts type.
159
166
  */
160
167
  margin: PropTypes.shape({
161
168
  bottom: PropTypes.number,
@@ -215,6 +222,7 @@ process.env.NODE_ENV !== "production" ? LineChart.propTypes = {
215
222
  */
216
223
  slots: PropTypes.object,
217
224
  sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),
225
+ theme: PropTypes.oneOf(['dark', 'light']),
218
226
  title: PropTypes.string,
219
227
  /**
220
228
  * Indicate which axis to display the top of the charts.
@@ -7,14 +7,14 @@ import * as React from 'react';
7
7
  import PropTypes from 'prop-types';
8
8
  import { useStore } from "../internals/store/useStore.js";
9
9
  import { useSelector } from "../internals/store/useSelector.js";
10
- import { useCartesianContext } from "../context/CartesianProvider/index.js";
11
10
  import { LineHighlightElement } from "./LineHighlightElement.js";
12
11
  import { getValueToPositionMapper } from "../hooks/useScale.js";
13
12
  import { DEFAULT_X_AXIS_KEY } from "../constants/index.js";
14
13
  import getColor from "./getColor.js";
15
14
  import { useLineSeries } from "../hooks/useSeries.js";
16
- import { useDrawingArea } from "../hooks/useDrawingArea.js";
15
+ import { useChartContext } from "../context/ChartProvider/index.js";
17
16
  import { selectorChartsInteractionXAxis } from "../internals/plugins/featurePlugins/useChartInteraction/index.js";
17
+ import { useXAxes, useYAxes } from "../hooks/useAxis.js";
18
18
  import { jsx as _jsx } from "react/jsx-runtime";
19
19
  /**
20
20
  * Demos:
@@ -33,8 +33,17 @@ function LineHighlightPlot(props) {
33
33
  } = props,
34
34
  other = _objectWithoutPropertiesLoose(props, _excluded);
35
35
  const seriesData = useLineSeries();
36
- const axisData = useCartesianContext();
37
- const drawingArea = useDrawingArea();
36
+ const {
37
+ xAxis,
38
+ xAxisIds
39
+ } = useXAxes();
40
+ const {
41
+ yAxis,
42
+ yAxisIds
43
+ } = useYAxes();
44
+ const {
45
+ instance
46
+ } = useChartContext();
38
47
  const store = useStore();
39
48
  const xAxisIdentifier = useSelector(store, selectorChartsInteractionXAxis);
40
49
  const highlightedIndex = xAxisIdentifier?.index;
@@ -48,12 +57,6 @@ function LineHighlightPlot(props) {
48
57
  series,
49
58
  stackingGroups
50
59
  } = seriesData;
51
- const {
52
- xAxis,
53
- yAxis,
54
- xAxisIds,
55
- yAxisIds
56
- } = axisData;
57
60
  const defaultXAxisId = xAxisIds[0];
58
61
  const defaultYAxisId = yAxisIds[0];
59
62
  const Element = slots?.lineHighlight ?? LineHighlightElement;
@@ -81,7 +84,7 @@ function LineHighlightPlot(props) {
81
84
  const x = xScale(xData[highlightedIndex]);
82
85
  const y = yScale(stackedData[highlightedIndex][1]); // This should not be undefined since y should not be a band scale
83
86
 
84
- if (!drawingArea.isPointInside({
87
+ if (!instance.isPointInside({
85
88
  x,
86
89
  y
87
90
  })) {
@@ -7,14 +7,14 @@ import * as React from 'react';
7
7
  import PropTypes from 'prop-types';
8
8
  import { styled } from '@mui/material/styles';
9
9
  import { line as d3Line } from '@mui/x-charts-vendor/d3-shape';
10
- import { useCartesianContext } from "../context/CartesianProvider/index.js";
11
10
  import { LineElement, lineElementClasses } from "./LineElement.js";
12
11
  import { getValueToPositionMapper } from "../hooks/useScale.js";
13
12
  import getCurveFactory from "../internals/getCurve.js";
14
13
  import { DEFAULT_X_AXIS_KEY } from "../constants/index.js";
15
- import { useChartGradient } from "../internals/components/ChartsAxesGradients/index.js";
16
14
  import { useLineSeries } from "../hooks/useSeries.js";
17
15
  import { useSkipAnimation } from "../context/AnimationProvider/index.js";
16
+ import { useChartGradientIdBuilder } from "../hooks/useChartGradientId.js";
17
+ import { useXAxes, useYAxes } from "../hooks/index.js";
18
18
  import { jsx as _jsx } from "react/jsx-runtime";
19
19
  const LinePlotRoot = styled('g', {
20
20
  name: 'MuiAreaPlot',
@@ -27,7 +27,15 @@ const LinePlotRoot = styled('g', {
27
27
  });
28
28
  const useAggregatedData = () => {
29
29
  const seriesData = useLineSeries();
30
- const axisData = useCartesianContext();
30
+ const {
31
+ xAxis,
32
+ xAxisIds
33
+ } = useXAxes();
34
+ const {
35
+ yAxis,
36
+ yAxisIds
37
+ } = useYAxes();
38
+ const getGradientId = useChartGradientIdBuilder();
31
39
 
32
40
  // This memo prevents odd line chart behavior when hydrating.
33
41
  const allData = React.useMemo(() => {
@@ -38,12 +46,6 @@ const useAggregatedData = () => {
38
46
  series,
39
47
  stackingGroups
40
48
  } = seriesData;
41
- const {
42
- xAxis,
43
- yAxis,
44
- xAxisIds,
45
- yAxisIds
46
- } = axisData;
47
49
  const defaultXAxisId = xAxisIds[0];
48
50
  const defaultYAxisId = yAxisIds[0];
49
51
  return stackingGroups.flatMap(({
@@ -60,7 +62,7 @@ const useAggregatedData = () => {
60
62
  const xScale = getValueToPositionMapper(xAxis[xAxisId].scale);
61
63
  const yScale = yAxis[yAxisId].scale;
62
64
  const xData = xAxis[xAxisId].data;
63
- const gradientUsed = yAxis[yAxisId].colorScale && [yAxisId, 'y'] || xAxis[xAxisId].colorScale && [xAxisId, 'x'] || undefined;
65
+ const gradientId = yAxis[yAxisId].colorScale && getGradientId(yAxisId) || xAxis[xAxisId].colorScale && getGradientId(xAxisId) || undefined;
64
66
  if (process.env.NODE_ENV !== 'production') {
65
67
  if (xData === undefined) {
66
68
  throw new Error(`MUI X: ${xAxisId === DEFAULT_X_AXIS_KEY ? 'The first `xAxis`' : `The x-axis with id "${xAxisId}"`} should have data property to be able to display a line plot.`);
@@ -77,13 +79,13 @@ const useAggregatedData = () => {
77
79
  const d3Data = connectNulls ? formattedData.filter((_, i) => data[i] != null) : formattedData;
78
80
  const d = linePath.curve(getCurveFactory(series[seriesId].curve))(d3Data) || '';
79
81
  return _extends({}, series[seriesId], {
80
- gradientUsed,
82
+ gradientId,
81
83
  d,
82
84
  seriesId
83
85
  });
84
86
  });
85
87
  });
86
- }, [seriesData, axisData]);
88
+ }, [seriesData, xAxisIds, yAxisIds, xAxis, yAxis, getGradientId]);
87
89
  return allData;
88
90
  };
89
91
 
@@ -106,20 +108,19 @@ function LinePlot(props) {
106
108
  } = props,
107
109
  other = _objectWithoutPropertiesLoose(props, _excluded);
108
110
  const skipAnimation = useSkipAnimation(inSkipAnimation);
109
- const getGradientId = useChartGradient();
110
111
  const completedData = useAggregatedData();
111
112
  return /*#__PURE__*/_jsx(LinePlotRoot, _extends({}, other, {
112
113
  children: completedData.map(({
113
114
  d,
114
115
  seriesId,
115
116
  color,
116
- gradientUsed
117
+ gradientId
117
118
  }) => {
118
119
  return /*#__PURE__*/_jsx(LineElement, {
119
120
  id: seriesId,
120
121
  d: d,
121
122
  color: color,
122
- gradientId: gradientUsed && getGradientId(...gradientUsed),
123
+ gradientId: gradientId,
123
124
  skipAnimation: skipAnimation,
124
125
  slots: slots,
125
126
  slotProps: slotProps,
@@ -7,15 +7,15 @@ import PropTypes from 'prop-types';
7
7
  import * as React from 'react';
8
8
  import { DEFAULT_X_AXIS_KEY } from "../constants/index.js";
9
9
  import { useSkipAnimation } from "../context/AnimationProvider/index.js";
10
- import { useCartesianContext } from "../context/CartesianProvider/index.js";
11
10
  import { useChartId } from "../hooks/useChartId.js";
12
- import { useDrawingArea } from "../hooks/useDrawingArea.js";
13
11
  import { getValueToPositionMapper } from "../hooks/useScale.js";
14
12
  import { useLineSeries } from "../hooks/useSeries.js";
15
13
  import { cleanId } from "../internals/cleanId.js";
16
14
  import { CircleMarkElement } from "./CircleMarkElement.js";
17
15
  import getColor from "./getColor.js";
18
16
  import { MarkElement } from "./MarkElement.js";
17
+ import { useChartContext } from "../context/ChartProvider/index.js";
18
+ import { useXAxes, useYAxes } from "../hooks/index.js";
19
19
  import { jsx as _jsx } from "react/jsx-runtime";
20
20
  /**
21
21
  * Demos:
@@ -38,9 +38,18 @@ function MarkPlot(props) {
38
38
  other = _objectWithoutPropertiesLoose(props, _excluded);
39
39
  const skipAnimation = useSkipAnimation(inSkipAnimation);
40
40
  const seriesData = useLineSeries();
41
- const axisData = useCartesianContext();
41
+ const {
42
+ xAxis,
43
+ xAxisIds
44
+ } = useXAxes();
45
+ const {
46
+ yAxis,
47
+ yAxisIds
48
+ } = useYAxes();
42
49
  const chartId = useChartId();
43
- const drawingArea = useDrawingArea();
50
+ const {
51
+ instance
52
+ } = useChartContext();
44
53
  const Mark = slots?.mark ?? (experimentalRendering ? CircleMarkElement : MarkElement);
45
54
  if (seriesData === undefined) {
46
55
  return null;
@@ -49,12 +58,6 @@ function MarkPlot(props) {
49
58
  series,
50
59
  stackingGroups
51
60
  } = seriesData;
52
- const {
53
- xAxis,
54
- yAxis,
55
- xAxisIds,
56
- yAxisIds
57
- } = axisData;
58
61
  const defaultXAxisId = xAxisIds[0];
59
62
  const defaultYAxisId = yAxisIds[0];
60
63
  return /*#__PURE__*/_jsx("g", _extends({}, other, {
@@ -103,7 +106,7 @@ function MarkPlot(props) {
103
106
  // Remove missing data point
104
107
  return false;
105
108
  }
106
- if (!drawingArea.isPointInside({
109
+ if (!instance.isPointInside({
107
110
  x,
108
111
  y
109
112
  })) {
@@ -49,7 +49,9 @@ const formatter = (params, dataset) => {
49
49
  .order(stackingOrder).offset(stackingOffset)(d3Dataset);
50
50
  ids.forEach((id, index) => {
51
51
  const dataKey = series[id].dataKey;
52
- completedSeries[id] = _extends({}, series[id], {
52
+ completedSeries[id] = _extends({
53
+ labelMarkType: 'line'
54
+ }, series[id], {
53
55
  data: dataKey ? dataset.map(data => {
54
56
  const value = data[dataKey];
55
57
  if (typeof value !== 'number') {
@@ -10,7 +10,7 @@ const legendGetter = params => {
10
10
  return acc;
11
11
  }
12
12
  acc.push({
13
- markType: series[seriesId].labelMarkType ?? 'line',
13
+ markType: series[seriesId].labelMarkType,
14
14
  id: seriesId,
15
15
  seriesId,
16
16
  color: series[seriesId].color,
@@ -2,9 +2,8 @@ import { getExtremumX, getExtremumY } from "./extremums.js";
2
2
  import formatter from "./formatter.js";
3
3
  import getColor from "./getColor.js";
4
4
  export const plugin = {
5
- seriesType: 'line',
6
5
  colorProcessor: getColor,
7
- seriesFormatter: formatter,
6
+ seriesProcessor: formatter,
8
7
  xExtremumGetter: getExtremumX,
9
8
  yExtremumGetter: getExtremumY
10
9
  };
@@ -7,7 +7,7 @@ const _excluded = ["arcLabel", "arcLabelMinAngle", "arcLabelRadius", "cornerRadi
7
7
  import * as React from 'react';
8
8
  import PropTypes from 'prop-types';
9
9
  import { useTransition } from '@react-spring/web';
10
- import { defaultLabelTransitionConfig } from "./dataTransform/transition.js";
10
+ import { getDefaultLabelTransitionConfig } from "./dataTransform/transition.js";
11
11
  import { useTransformData } from "./dataTransform/useTransformData.js";
12
12
  import { PieArcLabel } from "./PieArcLabel.js";
13
13
  import { getLabel } from "../internals/getLabel.js";
@@ -65,7 +65,7 @@ function PieArcLabelPlot(props) {
65
65
  faded,
66
66
  data
67
67
  });
68
- const transition = useTransition(transformedData, _extends({}, defaultLabelTransitionConfig, {
68
+ const transition = useTransition(transformedData, _extends({}, getDefaultLabelTransitionConfig(skipAnimation), {
69
69
  immediate: skipAnimation
70
70
  }));
71
71
  if (data.length === 0) {
@@ -7,7 +7,7 @@ import * as React from 'react';
7
7
  import PropTypes from 'prop-types';
8
8
  import { useTransition } from '@react-spring/web';
9
9
  import { PieArc } from "./PieArc.js";
10
- import { defaultTransitionConfig } from "./dataTransform/transition.js";
10
+ import { getDefaultTransitionConfig } from "./dataTransform/transition.js";
11
11
  import { useTransformData } from "./dataTransform/useTransformData.js";
12
12
  import { jsx as _jsx } from "react/jsx-runtime";
13
13
  function PieArcPlot(props) {
@@ -38,7 +38,7 @@ function PieArcPlot(props) {
38
38
  faded,
39
39
  data
40
40
  });
41
- const transition = useTransition(transformedData, _extends({}, defaultTransitionConfig, {
41
+ const transition = useTransition(transformedData, _extends({}, getDefaultTransitionConfig(skipAnimation), {
42
42
  immediate: skipAnimation
43
43
  }));
44
44
  if (data.length === 0) {
@@ -105,6 +105,9 @@ process.env.NODE_ENV !== "production" ? PieChart.propTypes = {
105
105
  // | These PropTypes are generated from the TypeScript type definitions |
106
106
  // | To update them edit the TypeScript types and run "pnpm proptypes" |
107
107
  // ----------------------------------------------------------------------
108
+ apiRef: PropTypes.shape({
109
+ current: PropTypes.object
110
+ }),
108
111
  children: PropTypes.node,
109
112
  className: PropTypes.string,
110
113
  /**
@@ -138,6 +141,11 @@ process.env.NODE_ENV !== "production" ? PieChart.propTypes = {
138
141
  dataIndex: PropTypes.number,
139
142
  seriesId: PropTypes.oneOfType([PropTypes.number, PropTypes.string])
140
143
  }),
144
+ /**
145
+ * This prop is used to help implement the accessibility logic.
146
+ * If you don't provide this prop. It falls back to a randomly generated id.
147
+ */
148
+ id: PropTypes.string,
141
149
  /**
142
150
  * If `true`, a loading overlay is displayed.
143
151
  * @default false
@@ -147,7 +155,6 @@ process.env.NODE_ENV !== "production" ? PieChart.propTypes = {
147
155
  * The margin between the SVG and the drawing area.
148
156
  * It's used for leaving some space for extra information such as the x- and y-axis or legend.
149
157
  * Accepts an object with the optional properties: `top`, `bottom`, `left`, and `right`.
150
- * @default object Depends on the charts type.
151
158
  */
152
159
  margin: PropTypes.shape({
153
160
  bottom: PropTypes.number,
@@ -186,6 +193,7 @@ process.env.NODE_ENV !== "production" ? PieChart.propTypes = {
186
193
  */
187
194
  slots: PropTypes.object,
188
195
  sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),
196
+ theme: PropTypes.oneOf(['dark', 'light']),
189
197
  title: PropTypes.string,
190
198
  /**
191
199
  * The width of the chart in px. If not defined, it takes the width of the parent element.
@@ -1,6 +1,6 @@
1
- export const defaultTransitionConfig = {
1
+ export const getDefaultTransitionConfig = skipAnimation => ({
2
2
  keys: item => item.id,
3
- from: ({
3
+ from: skipAnimation ? undefined : ({
4
4
  innerRadius,
5
5
  outerRadius,
6
6
  cornerRadius,
@@ -64,10 +64,10 @@ export const defaultTransitionConfig = {
64
64
  friction: 14,
65
65
  clamp: true
66
66
  }
67
- };
68
- export const defaultLabelTransitionConfig = {
67
+ });
68
+ export const getDefaultLabelTransitionConfig = skipAnimation => ({
69
69
  keys: item => item.id,
70
- from: ({
70
+ from: skipAnimation ? undefined : ({
71
71
  innerRadius,
72
72
  outerRadius,
73
73
  arcLabelRadius,
@@ -134,4 +134,4 @@ export const defaultLabelTransitionConfig = {
134
134
  friction: 14,
135
135
  clamp: true
136
136
  }
137
- };
137
+ });
@@ -25,11 +25,14 @@ const formatter = params => {
25
25
  seriesOrder.forEach(seriesId => {
26
26
  const arcs = d3Pie().startAngle(2 * Math.PI * (series[seriesId].startAngle ?? 0) / 360).endAngle(2 * Math.PI * (series[seriesId].endAngle ?? 360) / 360).padAngle(2 * Math.PI * (series[seriesId].paddingAngle ?? 0) / 360).sortValues(getSortingComparator(series[seriesId].sortingValues ?? 'none'))(series[seriesId].data.map(piePoint => piePoint.value));
27
27
  defaultizedSeries[seriesId] = _extends({
28
+ labelMarkType: 'circle',
28
29
  valueFormatter: item => item.value.toLocaleString()
29
30
  }, series[seriesId], {
30
31
  data: series[seriesId].data.map((item, index) => _extends({}, item, {
31
32
  id: item.id ?? `auto-generated-pie-id-${seriesId}-${index}`
32
- }, arcs[index])).map((item, index) => _extends({}, item, {
33
+ }, arcs[index])).map((item, index) => _extends({
34
+ labelMarkType: 'circle'
35
+ }, item, {
33
36
  formattedValue: series[seriesId].valueFormatter?.(_extends({}, item, {
34
37
  label: getLabel(item.label, 'arc')
35
38
  }), {
@@ -11,7 +11,7 @@ const legendGetter = params => {
11
11
  return;
12
12
  }
13
13
  acc.push({
14
- markType: item.labelMarkType ?? series[seriesId].labelMarkType ?? 'circle',
14
+ markType: series[seriesId].labelMarkType,
15
15
  id: item.id,
16
16
  seriesId,
17
17
  color: item.color,
@@ -1,7 +1,6 @@
1
1
  import formatter from "./formatter.js";
2
2
  import getColor from "./getColor.js";
3
3
  export const plugin = {
4
- seriesType: 'pie',
5
4
  colorProcessor: getColor,
6
- seriesFormatter: formatter
5
+ seriesProcessor: formatter
7
6
  };