@mui/x-charts 7.14.0 → 7.15.0

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 (716) hide show
  1. package/BarChart/BarChart.js +180 -183
  2. package/BarChart/BarClipPath.js +17 -25
  3. package/BarChart/BarElement.js +33 -43
  4. package/BarChart/BarLabel/BarLabel.d.ts +1 -1
  5. package/BarChart/BarLabel/BarLabel.js +25 -34
  6. package/BarChart/BarLabel/BarLabel.types.js +1 -5
  7. package/BarChart/BarLabel/BarLabelItem.js +31 -39
  8. package/BarChart/BarLabel/BarLabelPlot.js +13 -21
  9. package/BarChart/BarLabel/barLabelClasses.d.ts +1 -1
  10. package/BarChart/BarLabel/barLabelClasses.js +9 -19
  11. package/BarChart/BarLabel/getBarLabel.js +2 -9
  12. package/BarChart/BarLabel/index.js +2 -25
  13. package/BarChart/BarPlot.js +36 -44
  14. package/BarChart/checkScaleErrors.js +6 -12
  15. package/BarChart/extremums.js +3 -11
  16. package/BarChart/formatter.js +9 -16
  17. package/BarChart/getColor.js +1 -7
  18. package/BarChart/getRadius.js +2 -9
  19. package/BarChart/index.js +4 -49
  20. package/BarChart/legend.js +3 -9
  21. package/BarChart/package.json +2 -2
  22. package/BarChart/plugin.js +8 -15
  23. package/BarChart/types.js +1 -5
  24. package/BarChart/useBarChartProps.js +17 -25
  25. package/CHANGELOG.md +69 -0
  26. package/ChartContainer/ChartContainer.js +164 -172
  27. package/ChartContainer/index.js +1 -16
  28. package/ChartContainer/package.json +2 -2
  29. package/ChartContainer/useChartContainerProps.d.ts +8 -8
  30. package/ChartContainer/useChartContainerProps.js +13 -23
  31. package/ChartContainer/useDefaultizeAxis.d.ts +4 -4
  32. package/ChartContainer/useDefaultizeAxis.js +8 -18
  33. package/ChartsAxis/ChartsAxis.js +24 -32
  34. package/ChartsAxis/axisClasses.js +4 -11
  35. package/ChartsAxis/index.js +2 -27
  36. package/ChartsAxis/package.json +2 -2
  37. package/ChartsAxisHighlight/ChartsAxisHighlight.js +34 -44
  38. package/ChartsAxisHighlight/index.js +1 -16
  39. package/ChartsAxisHighlight/package.json +2 -2
  40. package/ChartsClipPath/ChartsClipPath.js +17 -25
  41. package/ChartsClipPath/index.js +1 -16
  42. package/ChartsClipPath/package.json +2 -2
  43. package/ChartsGrid/ChartsGrid.d.ts +1 -1
  44. package/ChartsGrid/ChartsGrid.js +34 -42
  45. package/ChartsGrid/chartsGridClasses.js +5 -13
  46. package/ChartsGrid/index.js +2 -27
  47. package/ChartsGrid/package.json +2 -2
  48. package/ChartsLegend/ChartsLegend.js +33 -41
  49. package/ChartsLegend/ContinuousColorLegend.js +66 -73
  50. package/ChartsLegend/DefaultChartsLegend.js +38 -46
  51. package/ChartsLegend/LegendPerItem.js +30 -39
  52. package/ChartsLegend/PiecewiseColorLegend.js +36 -44
  53. package/ChartsLegend/chartsLegend.types.js +1 -5
  54. package/ChartsLegend/chartsLegendClasses.js +4 -11
  55. package/ChartsLegend/index.js +6 -71
  56. package/ChartsLegend/legend.types.js +1 -5
  57. package/ChartsLegend/legendItemsPlacement.js +6 -13
  58. package/ChartsLegend/package.json +2 -2
  59. package/ChartsLegend/useAxis.js +6 -14
  60. package/ChartsLegend/utils.js +9 -16
  61. package/ChartsOnAxisClickHandler/ChartsOnAxisClickHandler.js +15 -23
  62. package/ChartsOnAxisClickHandler/index.js +1 -16
  63. package/ChartsOnAxisClickHandler/package.json +2 -2
  64. package/ChartsOverlay/ChartsLoadingOverlay.js +12 -21
  65. package/ChartsOverlay/ChartsNoDataOverlay.js +12 -21
  66. package/ChartsOverlay/ChartsOverlay.js +13 -23
  67. package/ChartsOverlay/index.js +3 -26
  68. package/ChartsOverlay/package.json +2 -2
  69. package/ChartsReferenceLine/ChartsReferenceLine.js +21 -29
  70. package/ChartsReferenceLine/ChartsXReferenceLine.js +22 -31
  71. package/ChartsReferenceLine/ChartsYReferenceLine.js +22 -31
  72. package/ChartsReferenceLine/chartsReferenceLineClasses.js +5 -13
  73. package/ChartsReferenceLine/common.js +6 -13
  74. package/ChartsReferenceLine/index.js +2 -27
  75. package/ChartsReferenceLine/package.json +2 -2
  76. package/{modern → ChartsSurface}/ChartsSurface.js +7 -3
  77. package/ChartsSurface/index.d.ts +1 -0
  78. package/ChartsSurface/index.js +1 -0
  79. package/ChartsSurface/package.json +6 -0
  80. package/ChartsText/ChartsText.js +18 -26
  81. package/ChartsText/index.js +1 -12
  82. package/ChartsText/package.json +2 -2
  83. package/ChartsTooltip/ChartsAxisTooltipContent.js +22 -30
  84. package/ChartsTooltip/ChartsItemTooltipContent.js +18 -26
  85. package/ChartsTooltip/ChartsTooltip.js +34 -42
  86. package/ChartsTooltip/ChartsTooltipTable.js +11 -16
  87. package/ChartsTooltip/DefaultChartsAxisTooltipContent.js +44 -52
  88. package/ChartsTooltip/DefaultChartsItemTooltipContent.js +32 -40
  89. package/ChartsTooltip/chartsTooltipClasses.js +4 -11
  90. package/ChartsTooltip/index.js +7 -82
  91. package/ChartsTooltip/package.json +2 -2
  92. package/ChartsTooltip/utils.js +9 -21
  93. package/ChartsVoronoiHandler/ChartsVoronoiHandler.js +29 -37
  94. package/ChartsVoronoiHandler/index.js +1 -16
  95. package/ChartsVoronoiHandler/package.json +2 -2
  96. package/ChartsXAxis/ChartsXAxis.js +76 -84
  97. package/ChartsXAxis/index.js +1 -16
  98. package/ChartsXAxis/package.json +2 -2
  99. package/ChartsYAxis/ChartsYAxis.js +70 -77
  100. package/ChartsYAxis/index.js +1 -16
  101. package/ChartsYAxis/package.json +2 -2
  102. package/Gauge/Gauge.js +52 -60
  103. package/Gauge/GaugeContainer.js +51 -59
  104. package/Gauge/GaugeProvider.js +17 -28
  105. package/Gauge/GaugeReferenceArc.js +11 -20
  106. package/Gauge/GaugeValueArc.js +11 -20
  107. package/Gauge/GaugeValueText.js +18 -26
  108. package/Gauge/gaugeClasses.js +6 -14
  109. package/Gauge/index.js +7 -87
  110. package/Gauge/package.json +2 -2
  111. package/Gauge/utils.js +2 -9
  112. package/LineChart/AnimatedArea.js +35 -44
  113. package/LineChart/AnimatedLine.js +36 -45
  114. package/LineChart/AreaElement.js +33 -43
  115. package/LineChart/AreaPlot.js +30 -38
  116. package/LineChart/LineChart.js +185 -188
  117. package/LineChart/LineElement.js +33 -43
  118. package/LineChart/LineHighlightElement.js +20 -30
  119. package/LineChart/LineHighlightPlot.js +28 -36
  120. package/LineChart/LinePlot.js +30 -38
  121. package/LineChart/MarkElement.js +40 -48
  122. package/LineChart/MarkPlot.js +33 -41
  123. package/LineChart/extremums.js +3 -11
  124. package/LineChart/formatter.js +9 -16
  125. package/LineChart/getColor.js +1 -7
  126. package/LineChart/index.js +11 -126
  127. package/LineChart/legend.js +3 -9
  128. package/LineChart/package.json +2 -2
  129. package/LineChart/plugin.js +8 -15
  130. package/LineChart/useLineChartProps.js +14 -22
  131. package/PieChart/PieArc.js +34 -44
  132. package/PieChart/PieArcLabel.js +30 -40
  133. package/PieChart/PieArcLabelPlot.js +59 -67
  134. package/PieChart/PieArcPlot.js +56 -64
  135. package/PieChart/PieChart.js +180 -183
  136. package/PieChart/PiePlot.js +29 -37
  137. package/PieChart/dataTransform/transition.js +2 -8
  138. package/PieChart/dataTransform/useTransformData.js +7 -16
  139. package/PieChart/formatter.js +10 -17
  140. package/PieChart/getColor.js +1 -7
  141. package/PieChart/getPieCoordinates.js +4 -10
  142. package/PieChart/index.js +7 -82
  143. package/PieChart/legend.js +3 -9
  144. package/PieChart/package.json +2 -2
  145. package/PieChart/plugin.js +5 -12
  146. package/ResponsiveChartContainer/ResizableContainer.js +2 -8
  147. package/ResponsiveChartContainer/ResponsiveChartContainer.js +151 -159
  148. package/ResponsiveChartContainer/index.js +1 -16
  149. package/ResponsiveChartContainer/package.json +2 -2
  150. package/ResponsiveChartContainer/useChartContainerDimensions.js +7 -17
  151. package/ResponsiveChartContainer/useResponsiveChartContainerProps.js +8 -16
  152. package/ScatterChart/Scatter.js +26 -34
  153. package/ScatterChart/ScatterChart.js +198 -201
  154. package/ScatterChart/ScatterPlot.js +21 -29
  155. package/ScatterChart/extremums.js +3 -11
  156. package/ScatterChart/formatter.js +3 -9
  157. package/ScatterChart/getColor.js +1 -7
  158. package/ScatterChart/index.js +3 -38
  159. package/ScatterChart/legend.js +3 -9
  160. package/ScatterChart/package.json +2 -2
  161. package/ScatterChart/plugin.js +8 -15
  162. package/ScatterChart/useScatterChartProps.js +10 -18
  163. package/SparkLineChart/SparkLineChart.js +163 -171
  164. package/SparkLineChart/index.js +1 -16
  165. package/SparkLineChart/package.json +2 -2
  166. package/colorPalettes/colorPalettes.js +9 -18
  167. package/colorPalettes/index.js +1 -16
  168. package/colorPalettes/package.json +2 -2
  169. package/constants/package.json +6 -0
  170. package/context/CartesianProvider/Cartesian.types.js +1 -5
  171. package/context/CartesianProvider/CartesianContext.js +2 -10
  172. package/context/CartesianProvider/CartesianProvider.js +17 -24
  173. package/context/CartesianProvider/computeValue.js +28 -35
  174. package/context/CartesianProvider/defaultizeAxis.d.ts +4 -4
  175. package/context/CartesianProvider/defaultizeAxis.js +6 -14
  176. package/context/CartesianProvider/getAxisExtremum.js +2 -9
  177. package/context/CartesianProvider/index.js +8 -60
  178. package/context/CartesianProvider/useCartesianContext.js +5 -14
  179. package/context/CartesianProvider/zoom.js +2 -9
  180. package/context/DrawingProvider.js +13 -24
  181. package/context/HighlightedProvider/HighlightedContext.js +2 -9
  182. package/context/HighlightedProvider/HighlightedProvider.js +24 -32
  183. package/context/HighlightedProvider/createIsFaded.js +2 -9
  184. package/context/HighlightedProvider/createIsHighlighted.js +2 -9
  185. package/context/HighlightedProvider/index.js +4 -49
  186. package/context/HighlightedProvider/useHighlighted.js +4 -11
  187. package/context/HighlightedProvider/useItemHighlighted.js +3 -9
  188. package/context/InteractionProvider.d.ts +2 -2
  189. package/context/InteractionProvider.js +13 -22
  190. package/context/PluginProvider/ColorProcessor.types.js +1 -5
  191. package/context/PluginProvider/ExtremumGetter.types.js +1 -5
  192. package/context/PluginProvider/Plugin.types.js +1 -5
  193. package/context/PluginProvider/PluginContext.js +2 -10
  194. package/context/PluginProvider/PluginProvider.js +8 -15
  195. package/context/PluginProvider/SeriesFormatter.types.js +1 -5
  196. package/context/PluginProvider/index.js +10 -115
  197. package/context/PluginProvider/mergePlugins.d.ts +6 -6
  198. package/context/PluginProvider/mergePlugins.js +6 -13
  199. package/context/PluginProvider/useColorProcessor.js +4 -12
  200. package/context/PluginProvider/useSeriesFormatter.js +4 -12
  201. package/context/PluginProvider/useXExtremumGetter.js +4 -12
  202. package/context/PluginProvider/useYExtremumGetter.js +4 -12
  203. package/context/SeriesProvider/Series.types.js +1 -5
  204. package/context/SeriesProvider/SeriesContext.js +2 -10
  205. package/context/SeriesProvider/SeriesProvider.js +14 -21
  206. package/context/SeriesProvider/index.js +7 -48
  207. package/context/SeriesProvider/processSeries.js +6 -14
  208. package/context/ZAxisContextProvider.js +36 -45
  209. package/context/context.types.js +1 -5
  210. package/context/index.js +2 -27
  211. package/context/package.json +2 -2
  212. package/hooks/index.js +7 -115
  213. package/hooks/package.json +2 -2
  214. package/hooks/useAxis.js +5 -12
  215. package/hooks/useAxisEvents.js +17 -25
  216. package/hooks/useChartDimensions.js +5 -14
  217. package/hooks/useChartId.js +4 -12
  218. package/hooks/useColorScale.js +9 -19
  219. package/hooks/useDrawingArea.js +4 -12
  220. package/hooks/useInteractionItemProps.js +7 -16
  221. package/hooks/useMounted.js +4 -13
  222. package/hooks/useReducedMotion.js +6 -12
  223. package/hooks/useScale.js +8 -15
  224. package/hooks/useSeries.js +8 -19
  225. package/hooks/useSvgRef.js +4 -12
  226. package/hooks/useTicks.js +7 -16
  227. package/index.js +27 -292
  228. package/internals/SlotComponentPropsFromProps.js +1 -5
  229. package/internals/cleanId.js +1 -7
  230. package/internals/colorScale.js +8 -16
  231. package/internals/components/AxisSharedComponents.js +8 -15
  232. package/internals/components/ChartsAxesGradients/ChartsAxesGradients.js +17 -27
  233. package/internals/components/ChartsAxesGradients/ChartsContinuousGradient.js +7 -15
  234. package/internals/components/ChartsAxesGradients/ChartsPiecewiseGradient.js +7 -15
  235. package/internals/components/ChartsAxesGradients/index.js +1 -16
  236. package/internals/configInit.js +1 -7
  237. package/internals/defaultizeColor.d.ts +16 -16
  238. package/internals/defaultizeColor.js +5 -12
  239. package/internals/defaultizeValueFormatter.js +3 -10
  240. package/internals/domUtils.js +6 -16
  241. package/internals/geometry.js +1 -7
  242. package/internals/getCurve.js +11 -17
  243. package/internals/getLabel.js +1 -7
  244. package/internals/getPercentageValue.js +1 -7
  245. package/internals/getSVGPoint.js +1 -7
  246. package/internals/getScale.js +8 -14
  247. package/internals/getSymbol.js +1 -7
  248. package/internals/getWordsByLines.js +5 -12
  249. package/internals/index.d.ts +1 -0
  250. package/internals/index.js +40 -322
  251. package/internals/isBandScale.js +1 -7
  252. package/internals/isCartesian.js +4 -11
  253. package/internals/isDefined.js +1 -7
  254. package/internals/isInfinity.js +1 -7
  255. package/internals/notNull.js +1 -7
  256. package/internals/package.json +2 -2
  257. package/internals/stackSeries.js +16 -23
  258. package/internals/ts-generic.js +1 -5
  259. package/internals/useAnimatedPath.d.ts +1 -1
  260. package/internals/useAnimatedPath.js +21 -26
  261. package/internals/warning.js +2 -9
  262. package/models/axis.js +2 -9
  263. package/models/colorMapping.js +1 -5
  264. package/models/helpers.js +1 -5
  265. package/models/index.js +4 -38
  266. package/models/layout.js +1 -5
  267. package/models/package.json +2 -2
  268. package/models/seriesType/bar.js +1 -5
  269. package/models/seriesType/common.js +1 -5
  270. package/models/seriesType/config.js +1 -5
  271. package/models/seriesType/index.js +6 -61
  272. package/models/seriesType/line.js +1 -5
  273. package/models/seriesType/pie.js +1 -5
  274. package/models/seriesType/scatter.js +1 -5
  275. package/models/stacking.js +1 -5
  276. package/models/z-axis.js +1 -5
  277. package/modern/BarChart/BarChart.js +6 -1
  278. package/modern/BarChart/BarLabel/BarLabel.js +4 -4
  279. package/modern/ChartsGrid/ChartsGrid.js +6 -6
  280. package/modern/ChartsLegend/ContinuousColorLegend.js +3 -2
  281. package/modern/ChartsLegend/LegendPerItem.js +5 -4
  282. package/{esm → modern/ChartsSurface}/ChartsSurface.js +7 -3
  283. package/modern/ChartsSurface/index.js +1 -0
  284. package/modern/ChartsTooltip/ChartsAxisTooltipContent.js +1 -1
  285. package/modern/ChartsYAxis/ChartsYAxis.js +3 -2
  286. package/modern/LineChart/LineChart.js +6 -1
  287. package/modern/LineChart/MarkElement.js +4 -2
  288. package/modern/PieChart/PieChart.js +10 -5
  289. package/modern/ScatterChart/ScatterChart.js +6 -1
  290. package/modern/hooks/useAxisEvents.js +2 -1
  291. package/modern/index.js +1 -1
  292. package/modern/internals/index.js +1 -0
  293. package/modern/internals/useAnimatedPath.js +17 -13
  294. package/node/BarChart/BarChart.js +356 -0
  295. package/node/BarChart/BarClipPath.js +50 -0
  296. package/node/BarChart/BarElement.js +119 -0
  297. package/node/BarChart/BarLabel/BarLabel.js +60 -0
  298. package/node/BarChart/BarLabel/BarLabel.types.js +5 -0
  299. package/node/BarChart/BarLabel/BarLabelItem.js +127 -0
  300. package/node/BarChart/BarLabel/BarLabelPlot.js +83 -0
  301. package/node/BarChart/BarLabel/barLabelClasses.js +29 -0
  302. package/{esm → node}/BarChart/BarLabel/getBarLabel.js +9 -2
  303. package/node/BarChart/BarLabel/index.js +25 -0
  304. package/{esm → node}/BarChart/BarPlot.js +44 -36
  305. package/{esm → node}/BarChart/checkScaleErrors.js +12 -6
  306. package/{esm → node}/BarChart/extremums.js +11 -3
  307. package/{esm → node}/BarChart/formatter.js +16 -9
  308. package/{esm → node}/BarChart/getColor.js +7 -1
  309. package/{esm → node}/BarChart/getRadius.js +9 -2
  310. package/node/BarChart/index.js +49 -0
  311. package/{esm → node}/BarChart/legend.js +9 -3
  312. package/node/BarChart/plugin.js +17 -0
  313. package/node/BarChart/types.js +5 -0
  314. package/{esm → node}/BarChart/useBarChartProps.js +25 -17
  315. package/node/ChartContainer/ChartContainer.js +258 -0
  316. package/node/ChartContainer/index.js +16 -0
  317. package/node/ChartContainer/useChartContainerProps.js +92 -0
  318. package/node/ChartContainer/useDefaultizeAxis.js +40 -0
  319. package/{esm → node}/ChartsAxis/ChartsAxis.js +32 -24
  320. package/node/ChartsAxis/axisClasses.js +12 -0
  321. package/node/ChartsAxis/index.js +27 -0
  322. package/{esm → node}/ChartsAxisHighlight/ChartsAxisHighlight.js +44 -34
  323. package/node/ChartsAxisHighlight/index.js +16 -0
  324. package/node/ChartsClipPath/ChartsClipPath.js +59 -0
  325. package/node/ChartsClipPath/index.js +16 -0
  326. package/node/ChartsGrid/ChartsGrid.js +141 -0
  327. package/node/ChartsGrid/chartsGridClasses.js +14 -0
  328. package/node/ChartsGrid/index.js +27 -0
  329. package/node/ChartsLegend/ChartsLegend.js +114 -0
  330. package/{esm → node}/ChartsLegend/ContinuousColorLegend.js +74 -65
  331. package/node/ChartsLegend/DefaultChartsLegend.js +105 -0
  332. package/{esm → node}/ChartsLegend/LegendPerItem.js +40 -29
  333. package/{esm → node}/ChartsLegend/PiecewiseColorLegend.js +44 -36
  334. package/node/ChartsLegend/chartsLegend.types.js +5 -0
  335. package/node/ChartsLegend/chartsLegendClasses.js +12 -0
  336. package/node/ChartsLegend/index.js +71 -0
  337. package/node/ChartsLegend/legend.types.js +5 -0
  338. package/{esm → node}/ChartsLegend/legendItemsPlacement.js +13 -6
  339. package/node/ChartsLegend/useAxis.js +47 -0
  340. package/node/ChartsLegend/utils.js +23 -0
  341. package/{esm → node}/ChartsOnAxisClickHandler/ChartsOnAxisClickHandler.js +23 -15
  342. package/node/ChartsOnAxisClickHandler/index.js +16 -0
  343. package/node/ChartsOverlay/ChartsLoadingOverlay.js +43 -0
  344. package/node/ChartsOverlay/ChartsNoDataOverlay.js +43 -0
  345. package/node/ChartsOverlay/ChartsOverlay.js +41 -0
  346. package/node/ChartsOverlay/index.js +26 -0
  347. package/node/ChartsReferenceLine/ChartsReferenceLine.js +82 -0
  348. package/node/ChartsReferenceLine/ChartsXReferenceLine.js +109 -0
  349. package/node/ChartsReferenceLine/ChartsYReferenceLine.js +109 -0
  350. package/node/ChartsReferenceLine/chartsReferenceLineClasses.js +14 -0
  351. package/node/ChartsReferenceLine/common.js +27 -0
  352. package/node/ChartsReferenceLine/index.js +27 -0
  353. package/{ChartsSurface.js → node/ChartsSurface/ChartsSurface.js} +6 -2
  354. package/node/ChartsSurface/index.js +16 -0
  355. package/{esm → node}/ChartsText/ChartsText.js +26 -18
  356. package/node/ChartsText/index.js +12 -0
  357. package/node/ChartsTooltip/ChartsAxisTooltipContent.js +88 -0
  358. package/node/ChartsTooltip/ChartsItemTooltipContent.js +60 -0
  359. package/node/ChartsTooltip/ChartsTooltip.js +162 -0
  360. package/{esm → node}/ChartsTooltip/ChartsTooltipTable.js +16 -11
  361. package/node/ChartsTooltip/DefaultChartsAxisTooltipContent.js +129 -0
  362. package/node/ChartsTooltip/DefaultChartsItemTooltipContent.js +98 -0
  363. package/node/ChartsTooltip/chartsTooltipClasses.js +12 -0
  364. package/node/ChartsTooltip/index.js +82 -0
  365. package/{esm → node}/ChartsTooltip/utils.js +21 -9
  366. package/{esm → node}/ChartsVoronoiHandler/ChartsVoronoiHandler.js +37 -29
  367. package/node/ChartsVoronoiHandler/index.js +16 -0
  368. package/{esm → node}/ChartsXAxis/ChartsXAxis.js +84 -76
  369. package/node/ChartsXAxis/index.js +16 -0
  370. package/{esm → node}/ChartsYAxis/ChartsYAxis.js +78 -69
  371. package/node/ChartsYAxis/index.js +16 -0
  372. package/node/Gauge/Gauge.js +157 -0
  373. package/{esm → node}/Gauge/GaugeContainer.js +59 -51
  374. package/node/Gauge/GaugeProvider.js +99 -0
  375. package/node/Gauge/GaugeReferenceArc.js +44 -0
  376. package/node/Gauge/GaugeValueArc.js +51 -0
  377. package/node/Gauge/GaugeValueText.js +77 -0
  378. package/node/Gauge/gaugeClasses.js +15 -0
  379. package/node/Gauge/index.js +87 -0
  380. package/{esm → node}/Gauge/utils.js +9 -2
  381. package/node/LineChart/AnimatedArea.js +112 -0
  382. package/node/LineChart/AnimatedLine.js +115 -0
  383. package/node/LineChart/AreaElement.js +119 -0
  384. package/{esm → node}/LineChart/AreaPlot.js +38 -30
  385. package/node/LineChart/LineChart.js +357 -0
  386. package/node/LineChart/LineElement.js +119 -0
  387. package/node/LineChart/LineHighlightElement.js +90 -0
  388. package/node/LineChart/LineHighlightPlot.js +126 -0
  389. package/{esm → node}/LineChart/LinePlot.js +38 -30
  390. package/node/LineChart/MarkElement.js +140 -0
  391. package/{esm → node}/LineChart/MarkPlot.js +41 -33
  392. package/{esm → node}/LineChart/extremums.js +11 -3
  393. package/{esm → node}/LineChart/formatter.js +16 -9
  394. package/{esm → node}/LineChart/getColor.js +7 -1
  395. package/node/LineChart/index.js +126 -0
  396. package/{esm → node}/LineChart/legend.js +9 -3
  397. package/node/LineChart/plugin.js +17 -0
  398. package/{esm → node}/LineChart/useLineChartProps.js +22 -14
  399. package/node/PieChart/PieArc.js +117 -0
  400. package/node/PieChart/PieArcLabel.js +117 -0
  401. package/node/PieChart/PieArcLabelPlot.js +202 -0
  402. package/node/PieChart/PieArcPlot.js +184 -0
  403. package/node/PieChart/PieChart.js +401 -0
  404. package/{esm → node}/PieChart/PiePlot.js +37 -29
  405. package/{esm → node}/PieChart/dataTransform/transition.js +8 -2
  406. package/{esm → node}/PieChart/dataTransform/useTransformData.js +16 -7
  407. package/node/PieChart/formatter.js +53 -0
  408. package/node/PieChart/getColor.js +12 -0
  409. package/node/PieChart/getPieCoordinates.js +25 -0
  410. package/node/PieChart/index.js +82 -0
  411. package/{esm → node}/PieChart/legend.js +9 -3
  412. package/node/PieChart/plugin.js +14 -0
  413. package/{esm → node}/ResponsiveChartContainer/ResizableContainer.js +8 -2
  414. package/node/ResponsiveChartContainer/ResponsiveChartContainer.js +233 -0
  415. package/node/ResponsiveChartContainer/index.js +16 -0
  416. package/{esm → node}/ResponsiveChartContainer/useChartContainerDimensions.js +17 -7
  417. package/{esm → node}/ResponsiveChartContainer/useResponsiveChartContainerProps.js +16 -8
  418. package/{esm → node}/ScatterChart/Scatter.js +34 -26
  419. package/node/ScatterChart/ScatterChart.js +363 -0
  420. package/node/ScatterChart/ScatterPlot.js +107 -0
  421. package/{esm → node}/ScatterChart/extremums.js +11 -3
  422. package/node/ScatterChart/formatter.js +17 -0
  423. package/{esm → node}/ScatterChart/getColor.js +7 -1
  424. package/node/ScatterChart/index.js +38 -0
  425. package/{esm → node}/ScatterChart/legend.js +9 -3
  426. package/node/ScatterChart/plugin.js +17 -0
  427. package/{esm → node}/ScatterChart/useScatterChartProps.js +18 -10
  428. package/node/SparkLineChart/SparkLineChart.js +356 -0
  429. package/node/SparkLineChart/index.js +16 -0
  430. package/node/colorPalettes/colorPalettes.js +18 -0
  431. package/node/colorPalettes/index.js +16 -0
  432. package/node/context/CartesianProvider/Cartesian.types.js +5 -0
  433. package/node/context/CartesianProvider/CartesianContext.js +21 -0
  434. package/node/context/CartesianProvider/CartesianProvider.js +54 -0
  435. package/{esm → node}/context/CartesianProvider/computeValue.js +35 -28
  436. package/node/context/CartesianProvider/defaultizeAxis.js +21 -0
  437. package/{esm → node}/context/CartesianProvider/getAxisExtremum.js +9 -2
  438. package/node/context/CartesianProvider/index.js +61 -0
  439. package/node/context/CartesianProvider/useCartesianContext.js +17 -0
  440. package/{esm → node}/context/CartesianProvider/zoom.js +9 -2
  441. package/node/context/DrawingProvider.js +87 -0
  442. package/node/context/HighlightedProvider/HighlightedContext.js +39 -0
  443. package/node/context/HighlightedProvider/HighlightedProvider.js +100 -0
  444. package/{esm → node}/context/HighlightedProvider/createIsFaded.js +9 -2
  445. package/{esm → node}/context/HighlightedProvider/createIsHighlighted.js +9 -2
  446. package/node/context/HighlightedProvider/index.js +49 -0
  447. package/node/context/HighlightedProvider/useHighlighted.js +27 -0
  448. package/{esm → node}/context/HighlightedProvider/useItemHighlighted.js +9 -3
  449. package/node/context/InteractionProvider.js +85 -0
  450. package/node/context/PluginProvider/ColorProcessor.types.js +5 -0
  451. package/node/context/PluginProvider/ExtremumGetter.types.js +5 -0
  452. package/node/context/PluginProvider/Plugin.types.js +5 -0
  453. package/node/context/PluginProvider/PluginContext.js +21 -0
  454. package/node/context/PluginProvider/PluginProvider.js +26 -0
  455. package/node/context/PluginProvider/SeriesFormatter.types.js +5 -0
  456. package/node/context/PluginProvider/index.js +115 -0
  457. package/{esm → node}/context/PluginProvider/mergePlugins.js +13 -6
  458. package/node/context/PluginProvider/useColorProcessor.js +23 -0
  459. package/node/context/PluginProvider/useSeriesFormatter.js +23 -0
  460. package/node/context/PluginProvider/useXExtremumGetter.js +23 -0
  461. package/node/context/PluginProvider/useYExtremumGetter.js +23 -0
  462. package/node/context/SeriesProvider/Series.types.js +5 -0
  463. package/node/context/SeriesProvider/SeriesContext.js +16 -0
  464. package/node/context/SeriesProvider/SeriesProvider.js +38 -0
  465. package/node/context/SeriesProvider/index.js +49 -0
  466. package/{esm → node}/context/SeriesProvider/processSeries.js +14 -6
  467. package/node/context/ZAxisContextProvider.js +103 -0
  468. package/node/context/context.types.js +5 -0
  469. package/node/context/index.js +27 -0
  470. package/node/hooks/index.js +115 -0
  471. package/node/hooks/useAxis.js +24 -0
  472. package/{esm → node}/hooks/useAxisEvents.js +26 -16
  473. package/node/hooks/useChartDimensions.js +25 -0
  474. package/node/hooks/useChartId.js +16 -0
  475. package/node/hooks/useColorScale.js +37 -0
  476. package/node/hooks/useDrawingArea.js +30 -0
  477. package/node/hooks/useInteractionItemProps.js +55 -0
  478. package/node/hooks/useMounted.js +25 -0
  479. package/{esm → node}/hooks/useReducedMotion.js +12 -6
  480. package/node/hooks/useScale.js +30 -0
  481. package/{esm → node}/hooks/useSeries.js +19 -8
  482. package/node/hooks/useSvgRef.js +20 -0
  483. package/{esm → node}/hooks/useTicks.js +16 -7
  484. package/node/index.js +298 -0
  485. package/node/internals/SlotComponentPropsFromProps.js +5 -0
  486. package/node/internals/cleanId.js +12 -0
  487. package/node/internals/colorScale.js +24 -0
  488. package/node/internals/components/AxisSharedComponents.js +33 -0
  489. package/node/internals/components/ChartsAxesGradients/ChartsAxesGradients.js +105 -0
  490. package/node/internals/components/ChartsAxesGradients/ChartsContinuousGradient.js +64 -0
  491. package/node/internals/components/ChartsAxesGradients/ChartsPiecewiseGradient.js +48 -0
  492. package/node/internals/components/ChartsAxesGradients/index.js +16 -0
  493. package/{esm → node}/internals/configInit.js +7 -1
  494. package/node/internals/defaultizeColor.js +21 -0
  495. package/node/internals/defaultizeValueFormatter.js +17 -0
  496. package/{esm → node}/internals/domUtils.js +16 -6
  497. package/{esm → node}/internals/geometry.js +7 -1
  498. package/node/internals/getCurve.js +45 -0
  499. package/node/internals/getLabel.js +9 -0
  500. package/{esm → node}/internals/getPercentageValue.js +7 -1
  501. package/{esm → node}/internals/getSVGPoint.js +7 -1
  502. package/node/internals/getScale.js +23 -0
  503. package/{esm → node}/internals/getSymbol.js +7 -1
  504. package/node/internals/getWordsByLines.js +21 -0
  505. package/node/internals/index.js +335 -0
  506. package/node/internals/isBandScale.js +9 -0
  507. package/node/internals/isCartesian.js +14 -0
  508. package/node/internals/isDefined.js +9 -0
  509. package/node/internals/isInfinity.js +9 -0
  510. package/node/internals/notNull.js +9 -0
  511. package/{esm → node}/internals/stackSeries.js +23 -16
  512. package/node/internals/ts-generic.js +5 -0
  513. package/node/internals/useAnimatedPath.js +42 -0
  514. package/{esm → node}/internals/warning.js +9 -2
  515. package/node/models/axis.js +18 -0
  516. package/node/models/colorMapping.js +5 -0
  517. package/node/models/helpers.js +5 -0
  518. package/node/models/index.js +38 -0
  519. package/node/models/layout.js +5 -0
  520. package/node/models/seriesType/bar.js +5 -0
  521. package/node/models/seriesType/common.js +5 -0
  522. package/node/models/seriesType/config.js +5 -0
  523. package/node/models/seriesType/index.js +71 -0
  524. package/node/models/seriesType/line.js +5 -0
  525. package/node/models/seriesType/pie.js +5 -0
  526. package/node/models/seriesType/scatter.js +5 -0
  527. package/node/models/stacking.js +5 -0
  528. package/node/models/z-axis.js +5 -0
  529. package/{esm → node}/tests/firePointerEvent.js +12 -5
  530. package/node/themeAugmentation/index.js +38 -0
  531. package/package.json +7 -7
  532. package/tests/firePointerEvent.js +5 -12
  533. package/themeAugmentation/components.d.ts +2 -12
  534. package/themeAugmentation/index.js +3 -38
  535. package/themeAugmentation/overrides.d.ts +6 -7
  536. package/themeAugmentation/package.json +2 -2
  537. package/themeAugmentation/props.d.ts +3 -14
  538. package/esm/BarChart/BarChart.js +0 -343
  539. package/esm/BarChart/BarClipPath.js +0 -42
  540. package/esm/BarChart/BarElement.js +0 -109
  541. package/esm/BarChart/BarLabel/BarLabel.js +0 -51
  542. package/esm/BarChart/BarLabel/BarLabel.types.js +0 -1
  543. package/esm/BarChart/BarLabel/BarLabelItem.js +0 -119
  544. package/esm/BarChart/BarLabel/BarLabelPlot.js +0 -75
  545. package/esm/BarChart/BarLabel/barLabelClasses.js +0 -19
  546. package/esm/BarChart/BarLabel/index.js +0 -2
  547. package/esm/BarChart/index.js +0 -4
  548. package/esm/BarChart/plugin.js +0 -10
  549. package/esm/BarChart/types.js +0 -1
  550. package/esm/ChartContainer/ChartContainer.js +0 -250
  551. package/esm/ChartContainer/index.js +0 -1
  552. package/esm/ChartContainer/useChartContainerProps.js +0 -82
  553. package/esm/ChartContainer/useDefaultizeAxis.js +0 -30
  554. package/esm/ChartsAxis/axisClasses.js +0 -5
  555. package/esm/ChartsAxis/index.js +0 -2
  556. package/esm/ChartsAxisHighlight/index.js +0 -1
  557. package/esm/ChartsClipPath/ChartsClipPath.js +0 -51
  558. package/esm/ChartsClipPath/index.js +0 -1
  559. package/esm/ChartsGrid/ChartsGrid.js +0 -133
  560. package/esm/ChartsGrid/chartsGridClasses.js +0 -6
  561. package/esm/ChartsGrid/index.js +0 -2
  562. package/esm/ChartsLegend/ChartsLegend.js +0 -106
  563. package/esm/ChartsLegend/DefaultChartsLegend.js +0 -97
  564. package/esm/ChartsLegend/chartsLegend.types.js +0 -1
  565. package/esm/ChartsLegend/chartsLegendClasses.js +0 -5
  566. package/esm/ChartsLegend/index.js +0 -6
  567. package/esm/ChartsLegend/legend.types.js +0 -1
  568. package/esm/ChartsLegend/useAxis.js +0 -39
  569. package/esm/ChartsLegend/utils.js +0 -16
  570. package/esm/ChartsOnAxisClickHandler/index.js +0 -1
  571. package/esm/ChartsOverlay/ChartsLoadingOverlay.js +0 -34
  572. package/esm/ChartsOverlay/ChartsNoDataOverlay.js +0 -34
  573. package/esm/ChartsOverlay/ChartsOverlay.js +0 -31
  574. package/esm/ChartsOverlay/index.js +0 -3
  575. package/esm/ChartsReferenceLine/ChartsReferenceLine.js +0 -74
  576. package/esm/ChartsReferenceLine/ChartsXReferenceLine.js +0 -100
  577. package/esm/ChartsReferenceLine/ChartsYReferenceLine.js +0 -100
  578. package/esm/ChartsReferenceLine/chartsReferenceLineClasses.js +0 -6
  579. package/esm/ChartsReferenceLine/common.js +0 -20
  580. package/esm/ChartsReferenceLine/index.js +0 -2
  581. package/esm/ChartsText/index.js +0 -1
  582. package/esm/ChartsTooltip/ChartsAxisTooltipContent.js +0 -80
  583. package/esm/ChartsTooltip/ChartsItemTooltipContent.js +0 -52
  584. package/esm/ChartsTooltip/ChartsTooltip.js +0 -154
  585. package/esm/ChartsTooltip/DefaultChartsAxisTooltipContent.js +0 -121
  586. package/esm/ChartsTooltip/DefaultChartsItemTooltipContent.js +0 -90
  587. package/esm/ChartsTooltip/chartsTooltipClasses.js +0 -5
  588. package/esm/ChartsTooltip/index.js +0 -7
  589. package/esm/ChartsVoronoiHandler/index.js +0 -1
  590. package/esm/ChartsXAxis/index.js +0 -1
  591. package/esm/ChartsYAxis/index.js +0 -1
  592. package/esm/Gauge/Gauge.js +0 -149
  593. package/esm/Gauge/GaugeProvider.js +0 -88
  594. package/esm/Gauge/GaugeReferenceArc.js +0 -35
  595. package/esm/Gauge/GaugeValueArc.js +0 -42
  596. package/esm/Gauge/GaugeValueText.js +0 -69
  597. package/esm/Gauge/gaugeClasses.js +0 -7
  598. package/esm/Gauge/index.js +0 -7
  599. package/esm/LineChart/AnimatedArea.js +0 -103
  600. package/esm/LineChart/AnimatedLine.js +0 -106
  601. package/esm/LineChart/AreaElement.js +0 -109
  602. package/esm/LineChart/LineChart.js +0 -344
  603. package/esm/LineChart/LineElement.js +0 -109
  604. package/esm/LineChart/LineHighlightElement.js +0 -80
  605. package/esm/LineChart/LineHighlightPlot.js +0 -118
  606. package/esm/LineChart/MarkElement.js +0 -128
  607. package/esm/LineChart/index.js +0 -11
  608. package/esm/LineChart/plugin.js +0 -10
  609. package/esm/PieChart/PieArc.js +0 -107
  610. package/esm/PieChart/PieArcLabel.js +0 -107
  611. package/esm/PieChart/PieArcLabelPlot.js +0 -194
  612. package/esm/PieChart/PieArcPlot.js +0 -176
  613. package/esm/PieChart/PieChart.js +0 -388
  614. package/esm/PieChart/formatter.js +0 -46
  615. package/esm/PieChart/getColor.js +0 -6
  616. package/esm/PieChart/getPieCoordinates.js +0 -19
  617. package/esm/PieChart/index.js +0 -7
  618. package/esm/PieChart/plugin.js +0 -7
  619. package/esm/ResponsiveChartContainer/ResponsiveChartContainer.js +0 -225
  620. package/esm/ResponsiveChartContainer/index.js +0 -1
  621. package/esm/ScatterChart/ScatterChart.js +0 -350
  622. package/esm/ScatterChart/ScatterPlot.js +0 -99
  623. package/esm/ScatterChart/formatter.js +0 -11
  624. package/esm/ScatterChart/index.js +0 -3
  625. package/esm/ScatterChart/plugin.js +0 -10
  626. package/esm/SparkLineChart/SparkLineChart.js +0 -348
  627. package/esm/SparkLineChart/index.js +0 -1
  628. package/esm/colorPalettes/colorPalettes.js +0 -9
  629. package/esm/colorPalettes/index.js +0 -1
  630. package/esm/context/CartesianProvider/Cartesian.types.js +0 -1
  631. package/esm/context/CartesianProvider/CartesianContext.js +0 -13
  632. package/esm/context/CartesianProvider/CartesianProvider.js +0 -47
  633. package/esm/context/CartesianProvider/defaultizeAxis.js +0 -13
  634. package/esm/context/CartesianProvider/index.js +0 -9
  635. package/esm/context/CartesianProvider/useCartesianContext.js +0 -8
  636. package/esm/context/DrawingProvider.js +0 -76
  637. package/esm/context/HighlightedProvider/HighlightedContext.js +0 -32
  638. package/esm/context/HighlightedProvider/HighlightedProvider.js +0 -92
  639. package/esm/context/HighlightedProvider/index.js +0 -4
  640. package/esm/context/HighlightedProvider/useHighlighted.js +0 -20
  641. package/esm/context/InteractionProvider.js +0 -76
  642. package/esm/context/PluginProvider/ColorProcessor.types.js +0 -1
  643. package/esm/context/PluginProvider/ExtremumGetter.types.js +0 -1
  644. package/esm/context/PluginProvider/Plugin.types.js +0 -1
  645. package/esm/context/PluginProvider/PluginContext.js +0 -13
  646. package/esm/context/PluginProvider/PluginProvider.js +0 -19
  647. package/esm/context/PluginProvider/SeriesFormatter.types.js +0 -1
  648. package/esm/context/PluginProvider/index.js +0 -10
  649. package/esm/context/PluginProvider/useColorProcessor.js +0 -15
  650. package/esm/context/PluginProvider/useSeriesFormatter.js +0 -15
  651. package/esm/context/PluginProvider/useXExtremumGetter.js +0 -15
  652. package/esm/context/PluginProvider/useYExtremumGetter.js +0 -15
  653. package/esm/context/SeriesProvider/Series.types.js +0 -1
  654. package/esm/context/SeriesProvider/SeriesContext.js +0 -8
  655. package/esm/context/SeriesProvider/SeriesProvider.js +0 -31
  656. package/esm/context/SeriesProvider/index.js +0 -8
  657. package/esm/context/ZAxisContextProvider.js +0 -94
  658. package/esm/context/context.types.js +0 -1
  659. package/esm/context/index.js +0 -2
  660. package/esm/hooks/index.js +0 -7
  661. package/esm/hooks/useAxis.js +0 -17
  662. package/esm/hooks/useChartDimensions.js +0 -16
  663. package/esm/hooks/useChartId.js +0 -8
  664. package/esm/hooks/useColorScale.js +0 -27
  665. package/esm/hooks/useDrawingArea.js +0 -22
  666. package/esm/hooks/useInteractionItemProps.js +0 -46
  667. package/esm/hooks/useMounted.js +0 -16
  668. package/esm/hooks/useScale.js +0 -23
  669. package/esm/hooks/useSvgRef.js +0 -12
  670. package/esm/index.js +0 -26
  671. package/esm/internals/SlotComponentPropsFromProps.js +0 -1
  672. package/esm/internals/cleanId.js +0 -6
  673. package/esm/internals/colorScale.js +0 -16
  674. package/esm/internals/components/AxisSharedComponents.js +0 -26
  675. package/esm/internals/components/ChartsAxesGradients/ChartsAxesGradients.js +0 -95
  676. package/esm/internals/components/ChartsAxesGradients/ChartsContinuousGradient.js +0 -56
  677. package/esm/internals/components/ChartsAxesGradients/ChartsPiecewiseGradient.js +0 -40
  678. package/esm/internals/components/ChartsAxesGradients/index.js +0 -1
  679. package/esm/internals/defaultizeColor.js +0 -14
  680. package/esm/internals/defaultizeValueFormatter.js +0 -10
  681. package/esm/internals/getCurve.js +0 -39
  682. package/esm/internals/getLabel.js +0 -3
  683. package/esm/internals/getScale.js +0 -17
  684. package/esm/internals/getWordsByLines.js +0 -14
  685. package/esm/internals/index.js +0 -40
  686. package/esm/internals/isBandScale.js +0 -3
  687. package/esm/internals/isCartesian.js +0 -7
  688. package/esm/internals/isDefined.js +0 -3
  689. package/esm/internals/isInfinity.js +0 -3
  690. package/esm/internals/notNull.js +0 -3
  691. package/esm/internals/ts-generic.js +0 -1
  692. package/esm/internals/useAnimatedPath.js +0 -29
  693. package/esm/internals/useIsRTL.js +0 -5
  694. package/esm/models/axis.js +0 -11
  695. package/esm/models/colorMapping.js +0 -1
  696. package/esm/models/helpers.js +0 -1
  697. package/esm/models/index.js +0 -4
  698. package/esm/models/layout.js +0 -1
  699. package/esm/models/seriesType/bar.js +0 -1
  700. package/esm/models/seriesType/common.js +0 -1
  701. package/esm/models/seriesType/config.js +0 -1
  702. package/esm/models/seriesType/index.js +0 -16
  703. package/esm/models/seriesType/line.js +0 -1
  704. package/esm/models/seriesType/pie.js +0 -1
  705. package/esm/models/seriesType/scatter.js +0 -1
  706. package/esm/models/stacking.js +0 -1
  707. package/esm/models/z-axis.js +0 -1
  708. package/esm/themeAugmentation/index.js +0 -3
  709. package/internals/useIsRTL.d.ts +0 -1
  710. package/internals/useIsRTL.js +0 -12
  711. package/modern/internals/useIsRTL.js +0 -5
  712. /package/{ChartsSurface.d.ts → ChartsSurface/ChartsSurface.d.ts} +0 -0
  713. /package/{constants.d.ts → constants/index.d.ts} +0 -0
  714. /package/{esm/constants.js → constants/index.js} +0 -0
  715. /package/modern/{constants.js → constants/index.js} +0 -0
  716. /package/{constants.js → node/constants/index.js} +0 -0
@@ -1,388 +0,0 @@
1
- import _extends from "@babel/runtime/helpers/esm/extends";
2
- import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
3
- const _excluded = ["xAxis", "yAxis", "series", "width", "height", "margin", "colors", "sx", "tooltip", "axisHighlight", "skipAnimation", "legend", "topAxis", "leftAxis", "rightAxis", "bottomAxis", "children", "slots", "slotProps", "onItemClick", "loading", "highlightedItem", "onHighlightChange", "className"];
4
- import * as React from 'react';
5
- import PropTypes from 'prop-types';
6
- import { ResponsiveChartContainer } from '../ResponsiveChartContainer';
7
- import { ChartsAxis } from '../ChartsAxis/ChartsAxis';
8
- import { DEFAULT_X_AXIS_KEY } from '../constants';
9
- import { ChartsTooltip } from '../ChartsTooltip';
10
- import { ChartsLegend } from '../ChartsLegend';
11
- import { ChartsAxisHighlight } from '../ChartsAxisHighlight';
12
- import { PiePlot } from './PiePlot';
13
- import { useIsRTL } from '../internals/useIsRTL';
14
- import { ChartsOverlay } from '../ChartsOverlay';
15
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
16
- const defaultMargin = {
17
- top: 5,
18
- bottom: 5,
19
- left: 5,
20
- right: 100
21
- };
22
- const defaultRTLMargin = {
23
- top: 5,
24
- bottom: 5,
25
- left: 100,
26
- right: 5
27
- };
28
-
29
- /**
30
- * Demos:
31
- *
32
- * - [Pie](https://mui.com/x/react-charts/pie/)
33
- * - [Pie demonstration](https://mui.com/x/react-charts/pie-demo/)
34
- *
35
- * API:
36
- *
37
- * - [PieChart API](https://mui.com/x/api/charts/pie-chart/)
38
- */
39
- const PieChart = /*#__PURE__*/React.forwardRef(function PieChart(props, ref) {
40
- const {
41
- xAxis,
42
- yAxis,
43
- series,
44
- width,
45
- height,
46
- margin: marginProps,
47
- colors,
48
- sx,
49
- tooltip = {
50
- trigger: 'item'
51
- },
52
- axisHighlight = {
53
- x: 'none',
54
- y: 'none'
55
- },
56
- skipAnimation,
57
- legend: legendProps,
58
- topAxis = null,
59
- leftAxis = null,
60
- rightAxis = null,
61
- bottomAxis = null,
62
- children,
63
- slots,
64
- slotProps,
65
- onItemClick,
66
- loading,
67
- highlightedItem,
68
- onHighlightChange,
69
- className
70
- } = props,
71
- other = _objectWithoutPropertiesLoose(props, _excluded);
72
- const isRTL = useIsRTL();
73
- const margin = _extends({}, isRTL ? defaultRTLMargin : defaultMargin, marginProps);
74
- const legend = _extends({
75
- direction: 'column',
76
- position: {
77
- vertical: 'middle',
78
- horizontal: isRTL ? 'left' : 'right'
79
- }
80
- }, legendProps);
81
- return /*#__PURE__*/_jsxs(ResponsiveChartContainer, _extends({}, other, {
82
- ref: ref,
83
- series: series.map(s => _extends({
84
- type: 'pie'
85
- }, s)),
86
- width: width,
87
- height: height,
88
- margin: margin,
89
- xAxis: xAxis ?? [{
90
- id: DEFAULT_X_AXIS_KEY,
91
- scaleType: 'point',
92
- data: [...new Array(Math.max(...series.map(s => s.data.length)))].map((_, index) => index)
93
- }],
94
- yAxis: yAxis,
95
- colors: colors,
96
- sx: sx,
97
- disableAxisListener: tooltip?.trigger !== 'axis' && axisHighlight?.x === 'none' && axisHighlight?.y === 'none',
98
- highlightedItem: highlightedItem,
99
- onHighlightChange: onHighlightChange,
100
- className: className,
101
- children: [/*#__PURE__*/_jsx(ChartsAxis, {
102
- topAxis: topAxis,
103
- leftAxis: leftAxis,
104
- rightAxis: rightAxis,
105
- bottomAxis: bottomAxis,
106
- slots: slots,
107
- slotProps: slotProps
108
- }), /*#__PURE__*/_jsx(PiePlot, {
109
- slots: slots,
110
- slotProps: slotProps,
111
- onItemClick: onItemClick,
112
- skipAnimation: skipAnimation
113
- }), /*#__PURE__*/_jsx(ChartsOverlay, {
114
- loading: loading,
115
- slots: slots,
116
- slotProps: slotProps
117
- }), /*#__PURE__*/_jsx(ChartsLegend, _extends({}, legend, {
118
- slots: slots,
119
- slotProps: slotProps
120
- })), /*#__PURE__*/_jsx(ChartsAxisHighlight, _extends({}, axisHighlight)), !loading && /*#__PURE__*/_jsx(ChartsTooltip, _extends({}, tooltip, {
121
- slots: slots,
122
- slotProps: slotProps
123
- })), children]
124
- }));
125
- });
126
- process.env.NODE_ENV !== "production" ? PieChart.propTypes = {
127
- // ----------------------------- Warning --------------------------------
128
- // | These PropTypes are generated from the TypeScript type definitions |
129
- // | To update them edit the TypeScript types and run "pnpm proptypes" |
130
- // ----------------------------------------------------------------------
131
- /**
132
- * The configuration of axes highlight.
133
- * @see See {@link https://mui.com/x/react-charts/tooltip/#highlights highlight docs} for more details.
134
- * @default { x: 'none', y: 'none' }
135
- */
136
- axisHighlight: PropTypes.shape({
137
- x: PropTypes.oneOf(['band', 'line', 'none']),
138
- y: PropTypes.oneOf(['band', 'line', 'none'])
139
- }),
140
- /**
141
- * Indicate which axis to display the bottom of the charts.
142
- * Can be a string (the id of the axis) or an object `ChartsXAxisProps`.
143
- * @default null
144
- */
145
- bottomAxis: PropTypes.oneOfType([PropTypes.object, PropTypes.string]),
146
- children: PropTypes.node,
147
- className: PropTypes.string,
148
- /**
149
- * Color palette used to colorize multiple series.
150
- * @default blueberryTwilightPalette
151
- */
152
- colors: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.string), PropTypes.func]),
153
- /**
154
- * An array of objects that can be used to populate series and axes data using their `dataKey` property.
155
- */
156
- dataset: PropTypes.arrayOf(PropTypes.object),
157
- desc: PropTypes.string,
158
- /**
159
- * If `true`, the charts will not listen to the mouse move event.
160
- * It might break interactive features, but will improve performance.
161
- * @default false
162
- */
163
- disableAxisListener: PropTypes.bool,
164
- /**
165
- * The height of the chart in px. If not defined, it takes the height of the parent element.
166
- */
167
- height: PropTypes.number,
168
- /**
169
- * The item currently highlighted. Turns highlighting into a controlled prop.
170
- */
171
- highlightedItem: PropTypes.shape({
172
- dataIndex: PropTypes.number,
173
- seriesId: PropTypes.oneOfType([PropTypes.number, PropTypes.string])
174
- }),
175
- /**
176
- * Indicate which axis to display the left of the charts.
177
- * Can be a string (the id of the axis) or an object `ChartsYAxisProps`.
178
- * @default null
179
- */
180
- leftAxis: PropTypes.oneOfType([PropTypes.object, PropTypes.string]),
181
- /**
182
- * The props of the legend.
183
- * @default { direction: 'column', position: { vertical: 'middle', horizontal: 'right' } }
184
- * @deprecated Consider using `slotProps.legend` instead.
185
- */
186
- legend: PropTypes.shape({
187
- classes: PropTypes.object,
188
- direction: PropTypes.oneOf(['column', 'row']),
189
- hidden: PropTypes.bool,
190
- position: PropTypes.shape({
191
- horizontal: PropTypes.oneOf(['left', 'middle', 'right']).isRequired,
192
- vertical: PropTypes.oneOf(['bottom', 'middle', 'top']).isRequired
193
- }),
194
- slotProps: PropTypes.object,
195
- slots: PropTypes.object
196
- }),
197
- /**
198
- * If `true`, a loading overlay is displayed.
199
- * @default false
200
- */
201
- loading: PropTypes.bool,
202
- /**
203
- * The margin between the SVG and the drawing area.
204
- * It's used for leaving some space for extra information such as the x- and y-axis or legend.
205
- * Accepts an object with the optional properties: `top`, `bottom`, `left`, and `right`.
206
- * @default object Depends on the charts type.
207
- */
208
- margin: PropTypes.shape({
209
- bottom: PropTypes.number,
210
- left: PropTypes.number,
211
- right: PropTypes.number,
212
- top: PropTypes.number
213
- }),
214
- /**
215
- * The callback fired when the highlighted item changes.
216
- *
217
- * @param {HighlightItemData | null} highlightedItem The newly highlighted item.
218
- */
219
- onHighlightChange: PropTypes.func,
220
- /**
221
- * Callback fired when a pie arc is clicked.
222
- */
223
- onItemClick: PropTypes.func,
224
- /**
225
- * Indicate which axis to display the right of the charts.
226
- * Can be a string (the id of the axis) or an object `ChartsYAxisProps`.
227
- * @default null
228
- */
229
- rightAxis: PropTypes.oneOfType([PropTypes.object, PropTypes.string]),
230
- /**
231
- * The series to display in the pie chart.
232
- * An array of [[PieSeriesType]] objects.
233
- */
234
- series: PropTypes.arrayOf(PropTypes.object).isRequired,
235
- /**
236
- * If `true`, animations are skipped.
237
- * @default false
238
- */
239
- skipAnimation: PropTypes.bool,
240
- /**
241
- * The props used for each component slot.
242
- * @default {}
243
- */
244
- slotProps: PropTypes.object,
245
- /**
246
- * Overridable component slots.
247
- * @default {}
248
- */
249
- slots: PropTypes.object,
250
- sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),
251
- title: PropTypes.string,
252
- /**
253
- * The configuration of the tooltip.
254
- * @see See {@link https://mui.com/x/react-charts/tooltip/ tooltip docs} for more details.
255
- * @default { trigger: 'item' }
256
- */
257
- tooltip: PropTypes.shape({
258
- axisContent: PropTypes.elementType,
259
- classes: PropTypes.object,
260
- itemContent: PropTypes.elementType,
261
- slotProps: PropTypes.object,
262
- slots: PropTypes.object,
263
- trigger: PropTypes.oneOf(['axis', 'item', 'none'])
264
- }),
265
- /**
266
- * Indicate which axis to display the top of the charts.
267
- * Can be a string (the id of the axis) or an object `ChartsXAxisProps`.
268
- * @default null
269
- */
270
- topAxis: PropTypes.oneOfType([PropTypes.object, PropTypes.string]),
271
- viewBox: PropTypes.shape({
272
- height: PropTypes.number,
273
- width: PropTypes.number,
274
- x: PropTypes.number,
275
- y: PropTypes.number
276
- }),
277
- /**
278
- * The width of the chart in px. If not defined, it takes the width of the parent element.
279
- */
280
- width: PropTypes.number,
281
- /**
282
- * The configuration of the x-axes.
283
- * If not provided, a default axis config is used.
284
- * An array of [[AxisConfig]] objects.
285
- */
286
- xAxis: PropTypes.arrayOf(PropTypes.shape({
287
- classes: PropTypes.object,
288
- colorMap: PropTypes.oneOfType([PropTypes.shape({
289
- colors: PropTypes.arrayOf(PropTypes.string).isRequired,
290
- type: PropTypes.oneOf(['ordinal']).isRequired,
291
- unknownColor: PropTypes.string,
292
- values: PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.instanceOf(Date), PropTypes.number, PropTypes.string]).isRequired)
293
- }), PropTypes.shape({
294
- color: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.string.isRequired), PropTypes.func]).isRequired,
295
- max: PropTypes.oneOfType([PropTypes.instanceOf(Date), PropTypes.number]),
296
- min: PropTypes.oneOfType([PropTypes.instanceOf(Date), PropTypes.number]),
297
- type: PropTypes.oneOf(['continuous']).isRequired
298
- }), PropTypes.shape({
299
- colors: PropTypes.arrayOf(PropTypes.string).isRequired,
300
- thresholds: PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.instanceOf(Date), PropTypes.number]).isRequired).isRequired,
301
- type: PropTypes.oneOf(['piecewise']).isRequired
302
- })]),
303
- data: PropTypes.array,
304
- dataKey: PropTypes.string,
305
- disableLine: PropTypes.bool,
306
- disableTicks: PropTypes.bool,
307
- fill: PropTypes.string,
308
- hideTooltip: PropTypes.bool,
309
- id: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),
310
- label: PropTypes.string,
311
- labelFontSize: PropTypes.number,
312
- labelStyle: PropTypes.object,
313
- max: PropTypes.oneOfType([PropTypes.instanceOf(Date), PropTypes.number]),
314
- min: PropTypes.oneOfType([PropTypes.instanceOf(Date), PropTypes.number]),
315
- position: PropTypes.oneOf(['bottom', 'top']),
316
- reverse: PropTypes.bool,
317
- scaleType: PropTypes.oneOf(['band', 'linear', 'log', 'point', 'pow', 'sqrt', 'time', 'utc']),
318
- slotProps: PropTypes.object,
319
- slots: PropTypes.object,
320
- stroke: PropTypes.string,
321
- sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),
322
- tickFontSize: PropTypes.number,
323
- tickInterval: PropTypes.oneOfType([PropTypes.oneOf(['auto']), PropTypes.array, PropTypes.func]),
324
- tickLabelInterval: PropTypes.oneOfType([PropTypes.oneOf(['auto']), PropTypes.func]),
325
- tickLabelPlacement: PropTypes.oneOf(['middle', 'tick']),
326
- tickLabelStyle: PropTypes.object,
327
- tickMaxStep: PropTypes.number,
328
- tickMinStep: PropTypes.number,
329
- tickNumber: PropTypes.number,
330
- tickPlacement: PropTypes.oneOf(['end', 'extremities', 'middle', 'start']),
331
- tickSize: PropTypes.number,
332
- valueFormatter: PropTypes.func
333
- })),
334
- /**
335
- * The configuration of the y-axes.
336
- * If not provided, a default axis config is used.
337
- * An array of [[AxisConfig]] objects.
338
- */
339
- yAxis: PropTypes.arrayOf(PropTypes.shape({
340
- classes: PropTypes.object,
341
- colorMap: PropTypes.oneOfType([PropTypes.shape({
342
- colors: PropTypes.arrayOf(PropTypes.string).isRequired,
343
- type: PropTypes.oneOf(['ordinal']).isRequired,
344
- unknownColor: PropTypes.string,
345
- values: PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.instanceOf(Date), PropTypes.number, PropTypes.string]).isRequired)
346
- }), PropTypes.shape({
347
- color: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.string.isRequired), PropTypes.func]).isRequired,
348
- max: PropTypes.oneOfType([PropTypes.instanceOf(Date), PropTypes.number]),
349
- min: PropTypes.oneOfType([PropTypes.instanceOf(Date), PropTypes.number]),
350
- type: PropTypes.oneOf(['continuous']).isRequired
351
- }), PropTypes.shape({
352
- colors: PropTypes.arrayOf(PropTypes.string).isRequired,
353
- thresholds: PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.instanceOf(Date), PropTypes.number]).isRequired).isRequired,
354
- type: PropTypes.oneOf(['piecewise']).isRequired
355
- })]),
356
- data: PropTypes.array,
357
- dataKey: PropTypes.string,
358
- disableLine: PropTypes.bool,
359
- disableTicks: PropTypes.bool,
360
- fill: PropTypes.string,
361
- hideTooltip: PropTypes.bool,
362
- id: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),
363
- label: PropTypes.string,
364
- labelFontSize: PropTypes.number,
365
- labelStyle: PropTypes.object,
366
- max: PropTypes.oneOfType([PropTypes.instanceOf(Date), PropTypes.number]),
367
- min: PropTypes.oneOfType([PropTypes.instanceOf(Date), PropTypes.number]),
368
- position: PropTypes.oneOf(['left', 'right']),
369
- reverse: PropTypes.bool,
370
- scaleType: PropTypes.oneOf(['band', 'linear', 'log', 'point', 'pow', 'sqrt', 'time', 'utc']),
371
- slotProps: PropTypes.object,
372
- slots: PropTypes.object,
373
- stroke: PropTypes.string,
374
- sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),
375
- tickFontSize: PropTypes.number,
376
- tickInterval: PropTypes.oneOfType([PropTypes.oneOf(['auto']), PropTypes.array, PropTypes.func]),
377
- tickLabelInterval: PropTypes.oneOfType([PropTypes.oneOf(['auto']), PropTypes.func]),
378
- tickLabelPlacement: PropTypes.oneOf(['middle', 'tick']),
379
- tickLabelStyle: PropTypes.object,
380
- tickMaxStep: PropTypes.number,
381
- tickMinStep: PropTypes.number,
382
- tickNumber: PropTypes.number,
383
- tickPlacement: PropTypes.oneOf(['end', 'extremities', 'middle', 'start']),
384
- tickSize: PropTypes.number,
385
- valueFormatter: PropTypes.func
386
- }))
387
- } : void 0;
388
- export { PieChart };
@@ -1,46 +0,0 @@
1
- import _extends from "@babel/runtime/helpers/esm/extends";
2
- import { pie as d3Pie } from '@mui/x-charts-vendor/d3-shape';
3
- import { getLabel } from '../internals/getLabel';
4
- const getSortingComparator = (comparator = 'none') => {
5
- if (typeof comparator === 'function') {
6
- return comparator;
7
- }
8
- switch (comparator) {
9
- case 'none':
10
- return null;
11
- case 'desc':
12
- return (a, b) => b - a;
13
- case 'asc':
14
- return (a, b) => a - b;
15
- default:
16
- return null;
17
- }
18
- };
19
- const formatter = params => {
20
- const {
21
- seriesOrder,
22
- series
23
- } = params;
24
- const defaultizedSeries = {};
25
- seriesOrder.forEach(seriesId => {
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
- defaultizedSeries[seriesId] = _extends({
28
- valueFormatter: item => item.value.toLocaleString()
29
- }, series[seriesId], {
30
- data: series[seriesId].data.map((item, index) => _extends({}, item, {
31
- id: item.id ?? `auto-generated-pie-id-${seriesId}-${index}`
32
- }, arcs[index])).map((item, index) => _extends({}, item, {
33
- formattedValue: series[seriesId].valueFormatter?.(_extends({}, item, {
34
- label: getLabel(item.label, 'arc')
35
- }), {
36
- dataIndex: index
37
- }) ?? item.value.toLocaleString()
38
- }))
39
- });
40
- });
41
- return {
42
- seriesOrder,
43
- series: defaultizedSeries
44
- };
45
- };
46
- export default formatter;
@@ -1,6 +0,0 @@
1
- const getColor = series => {
2
- return dataIndex => {
3
- return series.data[dataIndex].color;
4
- };
5
- };
6
- export default getColor;
@@ -1,19 +0,0 @@
1
- import { getPercentageValue } from '../internals/getPercentageValue';
2
- export function getPieCoordinates(series, drawing) {
3
- const {
4
- height,
5
- width
6
- } = drawing;
7
- const {
8
- cx: cxParam,
9
- cy: cyParam
10
- } = series;
11
- const availableRadius = Math.min(width, height) / 2;
12
- const cx = getPercentageValue(cxParam ?? '50%', width);
13
- const cy = getPercentageValue(cyParam ?? '50%', height);
14
- return {
15
- cx,
16
- cy,
17
- availableRadius
18
- };
19
- }
@@ -1,7 +0,0 @@
1
- export * from './PieChart';
2
- export * from './PiePlot';
3
- export * from './PieArcPlot';
4
- export * from './PieArcLabelPlot';
5
- export * from './PieArc';
6
- export * from './PieArcLabel';
7
- export * from './getPieCoordinates';
@@ -1,7 +0,0 @@
1
- import formatter from './formatter';
2
- import getColor from './getColor';
3
- export const plugin = {
4
- seriesType: 'pie',
5
- colorProcessor: getColor,
6
- seriesFormatter: formatter
7
- };