@mui/x-charts 7.15.0 → 7.17.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 (516) hide show
  1. package/BarChart/BarChart.js +26 -12
  2. package/BarChart/BarClipPath.js +1 -1
  3. package/BarChart/BarElement.js +4 -2
  4. package/BarChart/BarLabel/BarLabel.js +3 -1
  5. package/BarChart/BarLabel/BarLabelItem.js +4 -4
  6. package/BarChart/BarLabel/BarLabelPlot.js +1 -1
  7. package/BarChart/BarLabel/index.js +2 -2
  8. package/BarChart/BarPlot.js +10 -8
  9. package/BarChart/checkScaleErrors.js +2 -2
  10. package/BarChart/formatter.js +2 -2
  11. package/BarChart/index.js +4 -4
  12. package/BarChart/legend.js +4 -3
  13. package/BarChart/plugin.js +3 -3
  14. package/BarChart/useBarChartProps.js +3 -1
  15. package/CHANGELOG.md +185 -1
  16. package/ChartContainer/ChartContainer.js +11 -9
  17. package/ChartContainer/index.js +1 -1
  18. package/ChartContainer/useChartContainerProps.js +4 -2
  19. package/ChartContainer/useDefaultizeAxis.js +3 -1
  20. package/ChartsAxis/ChartsAxis.js +5 -3
  21. package/ChartsAxis/index.js +2 -2
  22. package/ChartsAxisHighlight/ChartsAxisHighlight.js +6 -4
  23. package/ChartsAxisHighlight/index.js +1 -1
  24. package/ChartsClipPath/ChartsClipPath.js +3 -1
  25. package/ChartsClipPath/index.js +1 -1
  26. package/ChartsGrid/ChartsGrid.js +20 -66
  27. package/ChartsGrid/ChartsHorizontalGrid.d.ts +14 -0
  28. package/ChartsGrid/ChartsHorizontalGrid.js +36 -0
  29. package/ChartsGrid/ChartsVerticalGrid.d.ts +14 -0
  30. package/ChartsGrid/ChartsVerticalGrid.js +36 -0
  31. package/ChartsGrid/index.js +2 -2
  32. package/ChartsGrid/styledCommonents.d.ts +2 -0
  33. package/ChartsGrid/styledCommonents.js +22 -0
  34. package/ChartsLegend/ChartsLegend.d.ts +4 -13
  35. package/ChartsLegend/ChartsLegend.js +70 -26
  36. package/ChartsLegend/ChartsLegendItem.d.ts +26 -0
  37. package/ChartsLegend/ChartsLegendItem.js +65 -0
  38. package/ChartsLegend/ContinuousColorLegend.js +9 -7
  39. package/ChartsLegend/DefaultChartsLegend.d.ts +15 -2
  40. package/ChartsLegend/DefaultChartsLegend.js +31 -5
  41. package/ChartsLegend/LegendPerItem.d.ts +10 -6
  42. package/ChartsLegend/LegendPerItem.js +22 -35
  43. package/ChartsLegend/PiecewiseColorLegend.d.ts +9 -1
  44. package/ChartsLegend/PiecewiseColorLegend.js +31 -15
  45. package/ChartsLegend/chartsLegend.types.d.ts +39 -1
  46. package/ChartsLegend/chartsLegendClasses.d.ts +2 -0
  47. package/ChartsLegend/chartsLegendClasses.js +1 -1
  48. package/ChartsLegend/index.js +6 -6
  49. package/ChartsLegend/useAxis.js +4 -2
  50. package/ChartsLegend/utils.js +4 -4
  51. package/ChartsOnAxisClickHandler/ChartsOnAxisClickHandler.js +7 -5
  52. package/ChartsOnAxisClickHandler/index.js +1 -1
  53. package/ChartsOverlay/ChartsLoadingOverlay.js +3 -1
  54. package/ChartsOverlay/ChartsNoDataOverlay.js +3 -1
  55. package/ChartsOverlay/ChartsOverlay.js +5 -3
  56. package/ChartsOverlay/index.js +3 -3
  57. package/ChartsReferenceLine/ChartsReferenceLine.js +4 -2
  58. package/ChartsReferenceLine/ChartsXReferenceLine.js +7 -5
  59. package/ChartsReferenceLine/ChartsYReferenceLine.js +7 -5
  60. package/ChartsReferenceLine/common.js +1 -1
  61. package/ChartsReferenceLine/index.js +2 -2
  62. package/ChartsSurface/ChartsSurface.js +3 -1
  63. package/ChartsSurface/index.js +1 -1
  64. package/ChartsText/ChartsText.js +3 -1
  65. package/ChartsText/index.js +1 -1
  66. package/ChartsTooltip/ChartsAxisTooltipContent.js +6 -6
  67. package/ChartsTooltip/ChartsItemTooltipContent.d.ts +1 -1
  68. package/ChartsTooltip/ChartsItemTooltipContent.js +5 -5
  69. package/ChartsTooltip/ChartsTooltip.d.ts +2 -2
  70. package/ChartsTooltip/ChartsTooltip.js +15 -11
  71. package/ChartsTooltip/ChartsTooltipTable.js +10 -5
  72. package/ChartsTooltip/DefaultChartsAxisTooltipContent.js +7 -5
  73. package/ChartsTooltip/DefaultChartsItemTooltipContent.js +5 -3
  74. package/ChartsTooltip/chartsTooltipClasses.d.ts +2 -0
  75. package/ChartsTooltip/chartsTooltipClasses.js +1 -1
  76. package/ChartsTooltip/index.js +7 -7
  77. package/ChartsTooltip/utils.js +1 -1
  78. package/ChartsVoronoiHandler/ChartsVoronoiHandler.js +9 -7
  79. package/ChartsVoronoiHandler/index.js +1 -1
  80. package/ChartsXAxis/ChartsXAxis.js +20 -13
  81. package/ChartsXAxis/index.js +1 -1
  82. package/ChartsYAxis/ChartsYAxis.js +17 -10
  83. package/ChartsYAxis/index.js +1 -1
  84. package/Gauge/Gauge.js +7 -5
  85. package/Gauge/GaugeContainer.js +6 -4
  86. package/Gauge/GaugeProvider.js +3 -3
  87. package/Gauge/GaugeReferenceArc.js +3 -1
  88. package/Gauge/GaugeValueArc.js +3 -1
  89. package/Gauge/GaugeValueText.js +4 -2
  90. package/Gauge/index.js +7 -7
  91. package/LineChart/AnimatedArea.js +33 -14
  92. package/LineChart/AnimatedLine.js +34 -15
  93. package/LineChart/AreaElement.js +5 -3
  94. package/LineChart/AreaPlot.js +85 -78
  95. package/LineChart/CircleMarkElement.d.ts +34 -0
  96. package/LineChart/CircleMarkElement.js +107 -0
  97. package/LineChart/LineChart.d.ts +4 -0
  98. package/LineChart/LineChart.js +33 -15
  99. package/LineChart/LineElement.js +5 -3
  100. package/LineChart/LineHighlightElement.js +2 -0
  101. package/LineChart/LineHighlightPlot.js +10 -8
  102. package/LineChart/LinePlot.js +67 -60
  103. package/LineChart/MarkElement.d.ts +1 -19
  104. package/LineChart/MarkElement.js +7 -23
  105. package/LineChart/MarkPlot.d.ts +6 -0
  106. package/LineChart/MarkPlot.js +22 -12
  107. package/LineChart/formatter.js +2 -2
  108. package/LineChart/index.d.ts +2 -0
  109. package/LineChart/index.js +12 -11
  110. package/LineChart/legend.js +4 -3
  111. package/LineChart/markElementClasses.d.ts +20 -0
  112. package/LineChart/markElementClasses.js +19 -0
  113. package/LineChart/plugin.js +3 -3
  114. package/LineChart/useLineChartProps.js +8 -4
  115. package/PieChart/PieArc.js +3 -1
  116. package/PieChart/PieArcLabel.js +2 -0
  117. package/PieChart/PieArcLabelPlot.js +6 -4
  118. package/PieChart/PieArcPlot.js +6 -4
  119. package/PieChart/PieChart.js +22 -8
  120. package/PieChart/PiePlot.js +8 -6
  121. package/PieChart/dataTransform/useTransformData.js +3 -1
  122. package/PieChart/formatter.js +1 -1
  123. package/PieChart/getPieCoordinates.js +1 -1
  124. package/PieChart/index.js +7 -7
  125. package/PieChart/legend.js +4 -2
  126. package/PieChart/plugin.js +2 -2
  127. package/ResponsiveChartContainer/ResponsiveChartContainer.js +5 -3
  128. package/ResponsiveChartContainer/index.js +1 -1
  129. package/ResponsiveChartContainer/useChartContainerDimensions.js +3 -1
  130. package/ResponsiveChartContainer/useResponsiveChartContainerProps.js +3 -1
  131. package/ScatterChart/Scatter.js +7 -5
  132. package/ScatterChart/ScatterChart.js +26 -12
  133. package/ScatterChart/ScatterPlot.js +7 -5
  134. package/ScatterChart/formatter.js +1 -1
  135. package/ScatterChart/index.js +3 -3
  136. package/ScatterChart/legend.js +4 -3
  137. package/ScatterChart/plugin.js +3 -3
  138. package/ScatterChart/useScatterChartProps.js +2 -0
  139. package/SparkLineChart/SparkLineChart.js +8 -6
  140. package/SparkLineChart/index.js +1 -1
  141. package/colorPalettes/index.js +1 -1
  142. package/context/CartesianProvider/CartesianProvider.js +8 -6
  143. package/context/CartesianProvider/computeValue.js +6 -6
  144. package/context/CartesianProvider/defaultizeAxis.js +1 -1
  145. package/context/CartesianProvider/index.js +5 -5
  146. package/context/CartesianProvider/useCartesianContext.js +3 -1
  147. package/context/DrawingProvider.js +3 -1
  148. package/context/HighlightedProvider/HighlightedProvider.js +6 -4
  149. package/context/HighlightedProvider/index.js +4 -4
  150. package/context/HighlightedProvider/useHighlighted.js +3 -1
  151. package/context/HighlightedProvider/useItemHighlighted.js +3 -1
  152. package/context/InteractionProvider.js +2 -0
  153. package/context/PluginProvider/PluginProvider.js +4 -2
  154. package/context/PluginProvider/index.js +10 -10
  155. package/context/PluginProvider/mergePlugins.js +4 -4
  156. package/context/PluginProvider/useColorProcessor.js +3 -1
  157. package/context/PluginProvider/useSeriesFormatter.js +3 -1
  158. package/context/PluginProvider/useXExtremumGetter.js +1 -1
  159. package/context/PluginProvider/useYExtremumGetter.js +1 -1
  160. package/context/SeriesProvider/SeriesProvider.js +6 -4
  161. package/context/SeriesProvider/index.js +4 -4
  162. package/context/SeriesProvider/processSeries.js +1 -1
  163. package/context/ZAxisContextProvider.js +3 -1
  164. package/context/index.js +2 -2
  165. package/hooks/index.js +7 -7
  166. package/hooks/useAxis.js +3 -1
  167. package/hooks/useAxisEvents.js +8 -6
  168. package/hooks/useChartDimensions.js +3 -1
  169. package/hooks/useChartId.js +3 -1
  170. package/hooks/useColorScale.js +4 -2
  171. package/hooks/useDrawingArea.js +3 -1
  172. package/hooks/useInteractionItemProps.js +4 -2
  173. package/hooks/useMounted.js +2 -0
  174. package/hooks/useReducedMotion.js +15 -12
  175. package/hooks/useScale.js +4 -2
  176. package/hooks/useSeries.js +3 -1
  177. package/hooks/useSvgRef.js +3 -1
  178. package/hooks/useTicks.js +4 -2
  179. package/index.js +27 -27
  180. package/internals/components/AxisSharedComponents.js +1 -1
  181. package/internals/components/ChartsAxesGradients/ChartsAxesGradients.js +5 -5
  182. package/internals/components/ChartsAxesGradients/index.js +1 -1
  183. package/internals/getWordsByLines.js +1 -1
  184. package/internals/index.js +31 -31
  185. package/internals/isCartesian.js +1 -1
  186. package/internals/useStringInterpolator.d.ts +1 -0
  187. package/{modern/internals/useAnimatedPath.js → internals/useStringInterpolator.js} +2 -15
  188. package/models/index.d.ts +1 -0
  189. package/models/index.js +5 -3
  190. package/models/seriesType/index.js +4 -4
  191. package/modern/BarChart/BarChart.js +26 -12
  192. package/modern/BarChart/BarClipPath.js +1 -1
  193. package/modern/BarChart/BarElement.js +4 -2
  194. package/modern/BarChart/BarLabel/BarLabel.js +3 -1
  195. package/modern/BarChart/BarLabel/BarLabelItem.js +4 -4
  196. package/modern/BarChart/BarLabel/BarLabelPlot.js +1 -1
  197. package/modern/BarChart/BarLabel/index.js +2 -2
  198. package/modern/BarChart/BarPlot.js +10 -8
  199. package/modern/BarChart/checkScaleErrors.js +2 -2
  200. package/modern/BarChart/formatter.js +2 -2
  201. package/modern/BarChart/index.js +4 -4
  202. package/modern/BarChart/legend.js +4 -3
  203. package/modern/BarChart/plugin.js +3 -3
  204. package/modern/BarChart/useBarChartProps.js +3 -1
  205. package/modern/ChartContainer/ChartContainer.js +11 -9
  206. package/modern/ChartContainer/index.js +1 -1
  207. package/modern/ChartContainer/useChartContainerProps.js +4 -2
  208. package/modern/ChartContainer/useDefaultizeAxis.js +3 -1
  209. package/modern/ChartsAxis/ChartsAxis.js +5 -3
  210. package/modern/ChartsAxis/index.js +2 -2
  211. package/modern/ChartsAxisHighlight/ChartsAxisHighlight.js +6 -4
  212. package/modern/ChartsAxisHighlight/index.js +1 -1
  213. package/modern/ChartsClipPath/ChartsClipPath.js +3 -1
  214. package/modern/ChartsClipPath/index.js +1 -1
  215. package/modern/ChartsGrid/ChartsGrid.js +20 -66
  216. package/modern/ChartsGrid/ChartsHorizontalGrid.js +36 -0
  217. package/modern/ChartsGrid/ChartsVerticalGrid.js +36 -0
  218. package/modern/ChartsGrid/index.js +2 -2
  219. package/modern/ChartsGrid/styledCommonents.js +22 -0
  220. package/modern/ChartsLegend/ChartsLegend.js +70 -26
  221. package/modern/ChartsLegend/ChartsLegendItem.js +65 -0
  222. package/modern/ChartsLegend/ContinuousColorLegend.js +9 -7
  223. package/modern/ChartsLegend/DefaultChartsLegend.js +31 -5
  224. package/modern/ChartsLegend/LegendPerItem.js +22 -35
  225. package/modern/ChartsLegend/PiecewiseColorLegend.js +31 -15
  226. package/modern/ChartsLegend/chartsLegendClasses.js +1 -1
  227. package/modern/ChartsLegend/index.js +6 -6
  228. package/modern/ChartsLegend/useAxis.js +4 -2
  229. package/modern/ChartsLegend/utils.js +4 -4
  230. package/modern/ChartsOnAxisClickHandler/ChartsOnAxisClickHandler.js +7 -5
  231. package/modern/ChartsOnAxisClickHandler/index.js +1 -1
  232. package/modern/ChartsOverlay/ChartsLoadingOverlay.js +3 -1
  233. package/modern/ChartsOverlay/ChartsNoDataOverlay.js +3 -1
  234. package/modern/ChartsOverlay/ChartsOverlay.js +5 -3
  235. package/modern/ChartsOverlay/index.js +3 -3
  236. package/modern/ChartsReferenceLine/ChartsReferenceLine.js +4 -2
  237. package/modern/ChartsReferenceLine/ChartsXReferenceLine.js +7 -5
  238. package/modern/ChartsReferenceLine/ChartsYReferenceLine.js +7 -5
  239. package/modern/ChartsReferenceLine/common.js +1 -1
  240. package/modern/ChartsReferenceLine/index.js +2 -2
  241. package/modern/ChartsSurface/ChartsSurface.js +3 -1
  242. package/modern/ChartsSurface/index.js +1 -1
  243. package/modern/ChartsText/ChartsText.js +3 -1
  244. package/modern/ChartsText/index.js +1 -1
  245. package/modern/ChartsTooltip/ChartsAxisTooltipContent.js +6 -6
  246. package/modern/ChartsTooltip/ChartsItemTooltipContent.js +5 -5
  247. package/modern/ChartsTooltip/ChartsTooltip.js +15 -11
  248. package/modern/ChartsTooltip/ChartsTooltipTable.js +10 -5
  249. package/modern/ChartsTooltip/DefaultChartsAxisTooltipContent.js +7 -5
  250. package/modern/ChartsTooltip/DefaultChartsItemTooltipContent.js +5 -3
  251. package/modern/ChartsTooltip/chartsTooltipClasses.js +1 -1
  252. package/modern/ChartsTooltip/index.js +7 -7
  253. package/modern/ChartsTooltip/utils.js +1 -1
  254. package/modern/ChartsVoronoiHandler/ChartsVoronoiHandler.js +9 -7
  255. package/modern/ChartsVoronoiHandler/index.js +1 -1
  256. package/modern/ChartsXAxis/ChartsXAxis.js +20 -13
  257. package/modern/ChartsXAxis/index.js +1 -1
  258. package/modern/ChartsYAxis/ChartsYAxis.js +17 -10
  259. package/modern/ChartsYAxis/index.js +1 -1
  260. package/modern/Gauge/Gauge.js +7 -5
  261. package/modern/Gauge/GaugeContainer.js +6 -4
  262. package/modern/Gauge/GaugeProvider.js +3 -3
  263. package/modern/Gauge/GaugeReferenceArc.js +3 -1
  264. package/modern/Gauge/GaugeValueArc.js +3 -1
  265. package/modern/Gauge/GaugeValueText.js +4 -2
  266. package/modern/Gauge/index.js +7 -7
  267. package/modern/LineChart/AnimatedArea.js +33 -14
  268. package/modern/LineChart/AnimatedLine.js +34 -15
  269. package/modern/LineChart/AreaElement.js +5 -3
  270. package/modern/LineChart/AreaPlot.js +85 -78
  271. package/modern/LineChart/CircleMarkElement.js +107 -0
  272. package/modern/LineChart/LineChart.js +33 -15
  273. package/modern/LineChart/LineElement.js +5 -3
  274. package/modern/LineChart/LineHighlightElement.js +2 -0
  275. package/modern/LineChart/LineHighlightPlot.js +10 -8
  276. package/modern/LineChart/LinePlot.js +67 -60
  277. package/modern/LineChart/MarkElement.js +7 -23
  278. package/modern/LineChart/MarkPlot.js +22 -12
  279. package/modern/LineChart/formatter.js +2 -2
  280. package/modern/LineChart/index.js +12 -11
  281. package/modern/LineChart/legend.js +4 -3
  282. package/modern/LineChart/markElementClasses.js +19 -0
  283. package/modern/LineChart/plugin.js +3 -3
  284. package/modern/LineChart/useLineChartProps.js +8 -4
  285. package/modern/PieChart/PieArc.js +3 -1
  286. package/modern/PieChart/PieArcLabel.js +2 -0
  287. package/modern/PieChart/PieArcLabelPlot.js +6 -4
  288. package/modern/PieChart/PieArcPlot.js +6 -4
  289. package/modern/PieChart/PieChart.js +22 -8
  290. package/modern/PieChart/PiePlot.js +8 -6
  291. package/modern/PieChart/dataTransform/useTransformData.js +3 -1
  292. package/modern/PieChart/formatter.js +1 -1
  293. package/modern/PieChart/getPieCoordinates.js +1 -1
  294. package/modern/PieChart/index.js +7 -7
  295. package/modern/PieChart/legend.js +4 -2
  296. package/modern/PieChart/plugin.js +2 -2
  297. package/modern/ResponsiveChartContainer/ResponsiveChartContainer.js +5 -3
  298. package/modern/ResponsiveChartContainer/index.js +1 -1
  299. package/modern/ResponsiveChartContainer/useChartContainerDimensions.js +3 -1
  300. package/modern/ResponsiveChartContainer/useResponsiveChartContainerProps.js +3 -1
  301. package/modern/ScatterChart/Scatter.js +7 -5
  302. package/modern/ScatterChart/ScatterChart.js +26 -12
  303. package/modern/ScatterChart/ScatterPlot.js +7 -5
  304. package/modern/ScatterChart/formatter.js +1 -1
  305. package/modern/ScatterChart/index.js +3 -3
  306. package/modern/ScatterChart/legend.js +4 -3
  307. package/modern/ScatterChart/plugin.js +3 -3
  308. package/modern/ScatterChart/useScatterChartProps.js +2 -0
  309. package/modern/SparkLineChart/SparkLineChart.js +8 -6
  310. package/modern/SparkLineChart/index.js +1 -1
  311. package/modern/colorPalettes/index.js +1 -1
  312. package/modern/context/CartesianProvider/CartesianProvider.js +8 -6
  313. package/modern/context/CartesianProvider/computeValue.js +6 -6
  314. package/modern/context/CartesianProvider/defaultizeAxis.js +1 -1
  315. package/modern/context/CartesianProvider/index.js +5 -5
  316. package/modern/context/CartesianProvider/useCartesianContext.js +3 -1
  317. package/modern/context/DrawingProvider.js +3 -1
  318. package/modern/context/HighlightedProvider/HighlightedProvider.js +6 -4
  319. package/modern/context/HighlightedProvider/index.js +4 -4
  320. package/modern/context/HighlightedProvider/useHighlighted.js +3 -1
  321. package/modern/context/HighlightedProvider/useItemHighlighted.js +3 -1
  322. package/modern/context/InteractionProvider.js +2 -0
  323. package/modern/context/PluginProvider/PluginProvider.js +4 -2
  324. package/modern/context/PluginProvider/index.js +10 -10
  325. package/modern/context/PluginProvider/mergePlugins.js +4 -4
  326. package/modern/context/PluginProvider/useColorProcessor.js +3 -1
  327. package/modern/context/PluginProvider/useSeriesFormatter.js +3 -1
  328. package/modern/context/PluginProvider/useXExtremumGetter.js +1 -1
  329. package/modern/context/PluginProvider/useYExtremumGetter.js +1 -1
  330. package/modern/context/SeriesProvider/SeriesProvider.js +6 -4
  331. package/modern/context/SeriesProvider/index.js +4 -4
  332. package/modern/context/SeriesProvider/processSeries.js +1 -1
  333. package/modern/context/ZAxisContextProvider.js +3 -1
  334. package/modern/context/index.js +2 -2
  335. package/modern/hooks/index.js +7 -7
  336. package/modern/hooks/useAxis.js +3 -1
  337. package/modern/hooks/useAxisEvents.js +8 -6
  338. package/modern/hooks/useChartDimensions.js +3 -1
  339. package/modern/hooks/useChartId.js +3 -1
  340. package/modern/hooks/useColorScale.js +4 -2
  341. package/modern/hooks/useDrawingArea.js +3 -1
  342. package/modern/hooks/useInteractionItemProps.js +4 -2
  343. package/modern/hooks/useMounted.js +2 -0
  344. package/modern/hooks/useReducedMotion.js +15 -12
  345. package/modern/hooks/useScale.js +4 -2
  346. package/modern/hooks/useSeries.js +3 -1
  347. package/modern/hooks/useSvgRef.js +3 -1
  348. package/modern/hooks/useTicks.js +4 -2
  349. package/modern/index.js +27 -27
  350. package/modern/internals/components/AxisSharedComponents.js +1 -1
  351. package/modern/internals/components/ChartsAxesGradients/ChartsAxesGradients.js +5 -5
  352. package/modern/internals/components/ChartsAxesGradients/index.js +1 -1
  353. package/modern/internals/getWordsByLines.js +1 -1
  354. package/modern/internals/index.js +31 -31
  355. package/modern/internals/isCartesian.js +1 -1
  356. package/{internals/useAnimatedPath.js → modern/internals/useStringInterpolator.js} +2 -15
  357. package/modern/models/index.js +5 -3
  358. package/modern/models/seriesType/index.js +4 -4
  359. package/modern/themeAugmentation/index.js +0 -3
  360. package/node/BarChart/BarChart.js +16 -4
  361. package/node/BarChart/BarClipPath.js +2 -3
  362. package/node/BarChart/BarElement.js +3 -3
  363. package/node/BarChart/BarLabel/BarLabel.js +3 -3
  364. package/node/BarChart/BarLabel/BarLabelItem.js +2 -3
  365. package/node/BarChart/BarLabel/BarLabelPlot.js +2 -3
  366. package/node/BarChart/BarLabel/barLabelClasses.js +1 -1
  367. package/node/BarChart/BarPlot.js +3 -3
  368. package/node/BarChart/formatter.js +1 -1
  369. package/node/BarChart/legend.js +3 -2
  370. package/node/BarChart/plugin.js +1 -1
  371. package/node/BarChart/useBarChartProps.js +2 -1
  372. package/node/ChartContainer/ChartContainer.js +3 -3
  373. package/node/ChartContainer/useChartContainerProps.js +3 -3
  374. package/node/ChartContainer/useDefaultizeAxis.js +3 -3
  375. package/node/ChartsAxis/ChartsAxis.js +3 -3
  376. package/node/ChartsAxisHighlight/ChartsAxisHighlight.js +3 -3
  377. package/node/ChartsClipPath/ChartsClipPath.js +3 -3
  378. package/node/ChartsGrid/ChartsGrid.js +18 -66
  379. package/node/ChartsGrid/ChartsHorizontalGrid.js +43 -0
  380. package/node/ChartsGrid/ChartsVerticalGrid.js +43 -0
  381. package/node/ChartsGrid/chartsGridClasses.js +1 -1
  382. package/node/ChartsGrid/styledCommonents.js +28 -0
  383. package/node/ChartsLegend/ChartsLegend.js +66 -24
  384. package/node/ChartsLegend/ChartsLegendItem.js +72 -0
  385. package/node/ChartsLegend/ContinuousColorLegend.js +3 -3
  386. package/node/ChartsLegend/DefaultChartsLegend.js +31 -7
  387. package/node/ChartsLegend/LegendPerItem.js +20 -35
  388. package/node/ChartsLegend/PiecewiseColorLegend.js +29 -15
  389. package/node/ChartsLegend/chartsLegendClasses.js +1 -1
  390. package/node/ChartsLegend/legendItemsPlacement.js +1 -1
  391. package/node/ChartsLegend/useAxis.js +2 -2
  392. package/node/ChartsLegend/utils.js +1 -1
  393. package/node/ChartsOnAxisClickHandler/ChartsOnAxisClickHandler.js +4 -4
  394. package/node/ChartsOverlay/ChartsLoadingOverlay.js +3 -3
  395. package/node/ChartsOverlay/ChartsNoDataOverlay.js +3 -3
  396. package/node/ChartsOverlay/ChartsOverlay.js +3 -3
  397. package/node/ChartsReferenceLine/ChartsReferenceLine.js +3 -3
  398. package/node/ChartsReferenceLine/ChartsXReferenceLine.js +4 -4
  399. package/node/ChartsReferenceLine/ChartsYReferenceLine.js +4 -4
  400. package/node/ChartsReferenceLine/chartsReferenceLineClasses.js +1 -1
  401. package/node/ChartsReferenceLine/common.js +1 -1
  402. package/node/ChartsSurface/ChartsSurface.js +3 -3
  403. package/node/ChartsText/ChartsText.js +3 -3
  404. package/node/ChartsTooltip/ChartsAxisTooltipContent.js +2 -3
  405. package/node/ChartsTooltip/ChartsItemTooltipContent.js +2 -3
  406. package/node/ChartsTooltip/ChartsTooltip.js +11 -9
  407. package/node/ChartsTooltip/ChartsTooltipTable.js +9 -4
  408. package/node/ChartsTooltip/DefaultChartsAxisTooltipContent.js +4 -4
  409. package/node/ChartsTooltip/DefaultChartsItemTooltipContent.js +4 -4
  410. package/node/ChartsTooltip/chartsTooltipClasses.js +1 -1
  411. package/node/ChartsTooltip/utils.js +2 -3
  412. package/node/ChartsVoronoiHandler/ChartsVoronoiHandler.js +3 -3
  413. package/node/ChartsXAxis/ChartsXAxis.js +9 -4
  414. package/node/ChartsYAxis/ChartsYAxis.js +9 -4
  415. package/node/Gauge/Gauge.js +3 -3
  416. package/node/Gauge/GaugeContainer.js +3 -3
  417. package/node/Gauge/GaugeProvider.js +1 -2
  418. package/node/Gauge/GaugeReferenceArc.js +3 -3
  419. package/node/Gauge/GaugeValueArc.js +3 -3
  420. package/node/Gauge/GaugeValueText.js +3 -3
  421. package/node/Gauge/gaugeClasses.js +1 -1
  422. package/node/LineChart/AnimatedArea.js +31 -14
  423. package/node/LineChart/AnimatedLine.js +31 -14
  424. package/node/LineChart/AreaElement.js +3 -3
  425. package/node/LineChart/AreaPlot.js +79 -74
  426. package/node/LineChart/CircleMarkElement.js +113 -0
  427. package/node/LineChart/LineChart.js +20 -4
  428. package/node/LineChart/LineElement.js +3 -3
  429. package/node/LineChart/LineHighlightElement.js +3 -3
  430. package/node/LineChart/LineHighlightPlot.js +3 -3
  431. package/node/LineChart/LinePlot.js +61 -56
  432. package/node/LineChart/MarkElement.js +5 -25
  433. package/node/LineChart/MarkPlot.js +14 -6
  434. package/node/LineChart/formatter.js +1 -1
  435. package/node/LineChart/index.js +29 -1
  436. package/node/LineChart/legend.js +3 -2
  437. package/node/LineChart/markElementClasses.js +28 -0
  438. package/node/LineChart/plugin.js +1 -1
  439. package/node/LineChart/useLineChartProps.js +7 -4
  440. package/node/PieChart/PieArc.js +3 -3
  441. package/node/PieChart/PieArcLabel.js +3 -3
  442. package/node/PieChart/PieArcLabelPlot.js +3 -3
  443. package/node/PieChart/PieArcPlot.js +3 -3
  444. package/node/PieChart/PieChart.js +15 -3
  445. package/node/PieChart/PiePlot.js +3 -3
  446. package/node/PieChart/dataTransform/useTransformData.js +3 -3
  447. package/node/PieChart/formatter.js +1 -1
  448. package/node/PieChart/legend.js +3 -1
  449. package/node/PieChart/plugin.js +1 -1
  450. package/node/ResponsiveChartContainer/ResponsiveChartContainer.js +3 -3
  451. package/node/ResponsiveChartContainer/useChartContainerDimensions.js +4 -4
  452. package/node/ResponsiveChartContainer/useResponsiveChartContainerProps.js +2 -1
  453. package/node/ScatterChart/Scatter.js +3 -3
  454. package/node/ScatterChart/ScatterChart.js +16 -4
  455. package/node/ScatterChart/ScatterPlot.js +3 -3
  456. package/node/ScatterChart/legend.js +3 -2
  457. package/node/ScatterChart/plugin.js +1 -1
  458. package/node/ScatterChart/useScatterChartProps.js +2 -1
  459. package/node/SparkLineChart/SparkLineChart.js +3 -3
  460. package/node/context/CartesianProvider/CartesianContext.js +1 -2
  461. package/node/context/CartesianProvider/CartesianProvider.js +2 -2
  462. package/node/context/CartesianProvider/computeValue.js +1 -1
  463. package/node/context/CartesianProvider/defaultizeAxis.js +1 -1
  464. package/node/context/CartesianProvider/useCartesianContext.js +2 -2
  465. package/node/context/DrawingProvider.js +3 -3
  466. package/node/context/HighlightedProvider/HighlightedContext.js +1 -2
  467. package/node/context/HighlightedProvider/HighlightedProvider.js +3 -3
  468. package/node/context/HighlightedProvider/useHighlighted.js +2 -2
  469. package/node/context/HighlightedProvider/useItemHighlighted.js +1 -0
  470. package/node/context/InteractionProvider.js +3 -3
  471. package/node/context/PluginProvider/PluginContext.js +1 -2
  472. package/node/context/PluginProvider/PluginProvider.js +2 -2
  473. package/node/context/PluginProvider/useColorProcessor.js +2 -2
  474. package/node/context/PluginProvider/useSeriesFormatter.js +2 -2
  475. package/node/context/PluginProvider/useXExtremumGetter.js +1 -2
  476. package/node/context/PluginProvider/useYExtremumGetter.js +1 -2
  477. package/node/context/SeriesProvider/SeriesContext.js +1 -2
  478. package/node/context/SeriesProvider/SeriesProvider.js +2 -2
  479. package/node/context/SeriesProvider/processSeries.js +1 -1
  480. package/node/context/ZAxisContextProvider.js +3 -3
  481. package/node/hooks/useAxis.js +1 -0
  482. package/node/hooks/useAxisEvents.js +2 -2
  483. package/node/hooks/useChartDimensions.js +3 -3
  484. package/node/hooks/useChartId.js +2 -2
  485. package/node/hooks/useColorScale.js +2 -2
  486. package/node/hooks/useDrawingArea.js +2 -2
  487. package/node/hooks/useInteractionItemProps.js +2 -2
  488. package/node/hooks/useMounted.js +3 -3
  489. package/node/hooks/useReducedMotion.js +15 -12
  490. package/node/hooks/useScale.js +1 -0
  491. package/node/hooks/useSeries.js +2 -2
  492. package/node/hooks/useSvgRef.js +2 -2
  493. package/node/hooks/useTicks.js +2 -2
  494. package/node/index.js +1 -1
  495. package/node/internals/components/AxisSharedComponents.js +1 -1
  496. package/node/internals/components/ChartsAxesGradients/ChartsAxesGradients.js +2 -3
  497. package/node/internals/components/ChartsAxesGradients/ChartsContinuousGradient.js +1 -2
  498. package/node/internals/components/ChartsAxesGradients/ChartsPiecewiseGradient.js +1 -2
  499. package/node/internals/defaultizeColor.js +1 -1
  500. package/node/internals/defaultizeValueFormatter.js +1 -1
  501. package/node/internals/domUtils.js +1 -1
  502. package/node/internals/getWordsByLines.js +1 -1
  503. package/node/internals/useStringInterpolator.js +28 -0
  504. package/node/tests/firePointerEvent.js +1 -1
  505. package/node/themeAugmentation/index.js +1 -38
  506. package/package.json +4 -3
  507. package/themeAugmentation/components.d.ts +2 -0
  508. package/themeAugmentation/index.d.ts +3 -3
  509. package/themeAugmentation/index.js +0 -3
  510. package/themeAugmentation/overrides.d.ts +6 -4
  511. package/internals/useAnimatedPath.d.ts +0 -1
  512. package/internals/warning.d.ts +0 -2
  513. package/internals/warning.js +0 -21
  514. package/modern/internals/warning.js +0 -21
  515. package/node/internals/useAnimatedPath.js +0 -42
  516. package/node/internals/warning.js +0 -28
@@ -1,5 +1,6 @@
1
1
  "use strict";
2
2
 
3
+ var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
3
4
  Object.defineProperty(exports, "__esModule", {
4
5
  value: true
5
6
  });
@@ -11,8 +12,6 @@ var _getPercentageValue = require("../internals/getPercentageValue");
11
12
  var _utils = require("./utils");
12
13
  var _useDrawingArea = require("../hooks/useDrawingArea");
13
14
  var _jsxRuntime = require("react/jsx-runtime");
14
- function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
15
- function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
16
15
  // @ignore - do not document.
17
16
 
18
17
  const GaugeContext = exports.GaugeContext = /*#__PURE__*/React.createContext({
@@ -1,6 +1,8 @@
1
1
  "use strict";
2
+ 'use client';
2
3
 
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
5
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
6
  Object.defineProperty(exports, "__esModule", {
5
7
  value: true
6
8
  });
@@ -11,8 +13,6 @@ var _d3Shape = require("@mui/x-charts-vendor/d3-shape");
11
13
  var _styles = require("@mui/material/styles");
12
14
  var _GaugeProvider = require("./GaugeProvider");
13
15
  var _jsxRuntime = require("react/jsx-runtime");
14
- function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
15
- function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
16
16
  const StyledPath = (0, _styles.styled)('path', {
17
17
  name: 'MuiGauge',
18
18
  slot: 'ReferenceArc',
@@ -1,6 +1,8 @@
1
1
  "use strict";
2
+ 'use client';
2
3
 
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
5
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
6
  Object.defineProperty(exports, "__esModule", {
5
7
  value: true
6
8
  });
@@ -11,8 +13,6 @@ var _d3Shape = require("@mui/x-charts-vendor/d3-shape");
11
13
  var _styles = require("@mui/material/styles");
12
14
  var _GaugeProvider = require("./GaugeProvider");
13
15
  var _jsxRuntime = require("react/jsx-runtime");
14
- function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
15
- function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
16
16
  const StyledPath = (0, _styles.styled)('path', {
17
17
  name: 'MuiGauge',
18
18
  slot: 'ReferenceArc',
@@ -1,6 +1,8 @@
1
1
  "use strict";
2
+ 'use client';
2
3
 
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
5
+ var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
4
6
  Object.defineProperty(exports, "__esModule", {
5
7
  value: true
6
8
  });
@@ -13,8 +15,6 @@ var _GaugeProvider = require("./GaugeProvider");
13
15
  var _ChartsText = require("../ChartsText");
14
16
  var _jsxRuntime = require("react/jsx-runtime");
15
17
  const _excluded = ["text", "className"];
16
- function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
17
- function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
18
18
  function defaultFormatter({
19
19
  value
20
20
  }) {
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
 
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
4
  Object.defineProperty(exports, "__esModule", {
5
5
  value: true
6
6
  });
@@ -1,6 +1,8 @@
1
1
  "use strict";
2
+ 'use client';
2
3
 
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
5
+ var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
4
6
  Object.defineProperty(exports, "__esModule", {
5
7
  value: true
6
8
  });
@@ -13,13 +15,11 @@ var _propTypes = _interopRequireDefault(require("prop-types"));
13
15
  var _styles = require("@mui/material/styles");
14
16
  var _web = require("@react-spring/web");
15
17
  var _d3Color = require("@mui/x-charts-vendor/d3-color");
16
- var _useAnimatedPath = require("../internals/useAnimatedPath");
17
18
  var _cleanId = require("../internals/cleanId");
18
19
  var _hooks = require("../hooks");
20
+ var _useStringInterpolator = require("../internals/useStringInterpolator");
19
21
  var _jsxRuntime = require("react/jsx-runtime");
20
22
  const _excluded = ["d", "skipAnimation", "ownerState"];
21
- function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
22
- function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
23
23
  const AreaElementPath = exports.AreaElementPath = (0, _styles.styled)(_web.animated.path, {
24
24
  name: 'MuiAreaElement',
25
25
  slot: 'Root',
@@ -58,16 +58,33 @@ function AnimatedArea(props) {
58
58
  height
59
59
  } = (0, _hooks.useDrawingArea)();
60
60
  const chartId = (0, _hooks.useChartId)();
61
- const path = (0, _useAnimatedPath.useAnimatedPath)(d, skipAnimation);
62
- const {
63
- animatedWidth
64
- } = (0, _web.useSpring)({
61
+ const stringInterpolator = (0, _useStringInterpolator.useStringInterpolator)(d);
62
+ const transitionAppear = (0, _web.useTransition)([1], {
65
63
  from: {
66
64
  animatedWidth: left
67
65
  },
68
66
  to: {
69
67
  animatedWidth: width + left + right
70
68
  },
69
+ enter: {
70
+ animatedWidth: width + left + right
71
+ },
72
+ leave: {
73
+ animatedWidth: left
74
+ },
75
+ reset: false,
76
+ immediate: skipAnimation
77
+ });
78
+ const transitionChange = (0, _web.useTransition)([stringInterpolator], {
79
+ from: {
80
+ value: 0
81
+ },
82
+ to: {
83
+ value: 1
84
+ },
85
+ enter: {
86
+ value: 1
87
+ },
71
88
  reset: false,
72
89
  immediate: skipAnimation
73
90
  });
@@ -75,18 +92,18 @@ function AnimatedArea(props) {
75
92
  return /*#__PURE__*/(0, _jsxRuntime.jsxs)(React.Fragment, {
76
93
  children: [/*#__PURE__*/(0, _jsxRuntime.jsx)("clipPath", {
77
94
  id: clipId,
78
- children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_web.animated.rect, {
95
+ children: transitionAppear(style => /*#__PURE__*/(0, _jsxRuntime.jsx)(_web.animated.rect, {
79
96
  x: 0,
80
97
  y: 0,
81
- width: animatedWidth,
98
+ width: style.animatedWidth,
82
99
  height: top + height + bottom
83
- })
100
+ }))
84
101
  }), /*#__PURE__*/(0, _jsxRuntime.jsx)("g", {
85
102
  clipPath: `url(#${clipId})`,
86
- children: /*#__PURE__*/(0, _jsxRuntime.jsx)(AreaElementPath, (0, _extends2.default)({}, other, {
103
+ children: transitionChange((style, interpolator) => /*#__PURE__*/(0, _jsxRuntime.jsx)(AreaElementPath, (0, _extends2.default)({}, other, {
87
104
  ownerState: ownerState,
88
- d: path
89
- }))
105
+ d: style.value.to(interpolator)
106
+ })))
90
107
  })]
91
108
  });
92
109
  }
@@ -1,6 +1,8 @@
1
1
  "use strict";
2
+ 'use client';
2
3
 
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
5
+ var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
4
6
  Object.defineProperty(exports, "__esModule", {
5
7
  value: true
6
8
  });
@@ -13,14 +15,12 @@ var _propTypes = _interopRequireDefault(require("prop-types"));
13
15
  var _web = require("@react-spring/web");
14
16
  var _d3Color = require("@mui/x-charts-vendor/d3-color");
15
17
  var _styles = require("@mui/material/styles");
16
- var _useAnimatedPath = require("../internals/useAnimatedPath");
17
18
  var _cleanId = require("../internals/cleanId");
18
19
  var _useChartId = require("../hooks/useChartId");
19
20
  var _useDrawingArea = require("../hooks/useDrawingArea");
21
+ var _useStringInterpolator = require("../internals/useStringInterpolator");
20
22
  var _jsxRuntime = require("react/jsx-runtime");
21
23
  const _excluded = ["d", "skipAnimation", "ownerState"];
22
- function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
23
- function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
24
24
  const LineElementPath = exports.LineElementPath = (0, _styles.styled)(_web.animated.path, {
25
25
  name: 'MuiLineElement',
26
26
  slot: 'Root',
@@ -61,16 +61,33 @@ function AnimatedLine(props) {
61
61
  right
62
62
  } = (0, _useDrawingArea.useDrawingArea)();
63
63
  const chartId = (0, _useChartId.useChartId)();
64
- const path = (0, _useAnimatedPath.useAnimatedPath)(d, skipAnimation);
65
- const {
66
- animatedWidth
67
- } = (0, _web.useSpring)({
64
+ const stringInterpolator = (0, _useStringInterpolator.useStringInterpolator)(d);
65
+ const transitionAppear = (0, _web.useTransition)([1], {
68
66
  from: {
69
67
  animatedWidth: left
70
68
  },
71
69
  to: {
72
70
  animatedWidth: width + left + right
73
71
  },
72
+ enter: {
73
+ animatedWidth: width + left + right
74
+ },
75
+ leave: {
76
+ animatedWidth: left
77
+ },
78
+ reset: false,
79
+ immediate: skipAnimation
80
+ });
81
+ const transitionChange = (0, _web.useTransition)([stringInterpolator], {
82
+ from: {
83
+ value: 0
84
+ },
85
+ to: {
86
+ value: 1
87
+ },
88
+ enter: {
89
+ value: 1
90
+ },
74
91
  reset: false,
75
92
  immediate: skipAnimation
76
93
  });
@@ -78,18 +95,18 @@ function AnimatedLine(props) {
78
95
  return /*#__PURE__*/(0, _jsxRuntime.jsxs)(React.Fragment, {
79
96
  children: [/*#__PURE__*/(0, _jsxRuntime.jsx)("clipPath", {
80
97
  id: clipId,
81
- children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_web.animated.rect, {
98
+ children: transitionAppear(style => /*#__PURE__*/(0, _jsxRuntime.jsx)(_web.animated.rect, {
82
99
  x: 0,
83
100
  y: 0,
84
- width: animatedWidth,
101
+ width: style.animatedWidth,
85
102
  height: top + height + bottom
86
- })
103
+ }))
87
104
  }), /*#__PURE__*/(0, _jsxRuntime.jsx)("g", {
88
105
  clipPath: `url(#${clipId})`,
89
- children: /*#__PURE__*/(0, _jsxRuntime.jsx)(LineElementPath, (0, _extends2.default)({}, other, {
106
+ children: transitionChange((style, interpolator) => /*#__PURE__*/(0, _jsxRuntime.jsx)(LineElementPath, (0, _extends2.default)({}, other, {
90
107
  ownerState: ownerState,
91
- d: path
92
- }))
108
+ d: style.value.to(interpolator)
109
+ })))
93
110
  })]
94
111
  });
95
112
  }
@@ -1,6 +1,8 @@
1
1
  "use strict";
2
+ 'use client';
2
3
 
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
5
+ var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
4
6
  Object.defineProperty(exports, "__esModule", {
5
7
  value: true
6
8
  });
@@ -20,8 +22,6 @@ var _AnimatedArea = require("./AnimatedArea");
20
22
  var _context = require("../context");
21
23
  var _jsxRuntime = require("react/jsx-runtime");
22
24
  const _excluded = ["id", "classes", "color", "gradientId", "slots", "slotProps", "onClick"];
23
- function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
24
- function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
25
25
  function getAreaElementUtilityClass(slot) {
26
26
  return (0, _generateUtilityClass.default)('MuiAreaElement', slot);
27
27
  }
@@ -1,6 +1,8 @@
1
1
  "use strict";
2
+ 'use client';
2
3
 
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
5
+ var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
4
6
  Object.defineProperty(exports, "__esModule", {
5
7
  value: true
6
8
  });
@@ -19,85 +21,88 @@ var _ChartsAxesGradients = require("../internals/components/ChartsAxesGradients"
19
21
  var _useSeries = require("../hooks/useSeries");
20
22
  var _jsxRuntime = require("react/jsx-runtime");
21
23
  const _excluded = ["slots", "slotProps", "onItemClick", "skipAnimation"];
22
- function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
23
- function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
24
24
  const useAggregatedData = () => {
25
25
  const seriesData = (0, _useSeries.useLineSeries)();
26
26
  const axisData = (0, _CartesianProvider.useCartesianContext)();
27
- if (seriesData === undefined) {
28
- return [];
29
- }
30
- const {
31
- series,
32
- stackingGroups
33
- } = seriesData;
34
- const {
35
- xAxis,
36
- yAxis,
37
- xAxisIds,
38
- yAxisIds
39
- } = axisData;
40
- const defaultXAxisId = xAxisIds[0];
41
- const defaultYAxisId = yAxisIds[0];
42
- return stackingGroups.flatMap(({
43
- ids: groupIds
44
- }) => {
45
- return [...groupIds].reverse() // Revert stacked area for a more pleasant animation
46
- .map(seriesId => {
47
- const {
48
- xAxisId: xAxisIdProp,
49
- yAxisId: yAxisIdProp,
50
- xAxisKey = defaultXAxisId,
51
- yAxisKey = defaultYAxisId,
52
- stackedData,
53
- data,
54
- connectNulls,
55
- baseline
56
- } = series[seriesId];
57
- const xAxisId = xAxisIdProp ?? xAxisKey;
58
- const yAxisId = yAxisIdProp ?? yAxisKey;
59
- const xScale = (0, _useScale.getValueToPositionMapper)(xAxis[xAxisId].scale);
60
- const yScale = yAxis[yAxisId].scale;
61
- const xData = xAxis[xAxisId].data;
62
- const gradientUsed = yAxis[yAxisId].colorScale && [yAxisId, 'y'] || xAxis[xAxisId].colorScale && [xAxisId, 'x'] || undefined;
63
- if (process.env.NODE_ENV !== 'production') {
64
- if (xData === undefined) {
65
- throw new Error(`MUI X: ${xAxisId === _constants.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.`);
66
- }
67
- if (xData.length < stackedData.length) {
68
- throw new Error(`MUI X: The data length of the x axis (${xData.length} items) is lower than the length of series (${stackedData.length} items).`);
69
- }
70
- }
71
- const areaPath = (0, _d3Shape.area)().x(d => xScale(d.x)).defined((_, i) => connectNulls || data[i] != null).y0(d => {
72
- if (typeof baseline === 'number') {
73
- return yScale(baseline);
74
- }
75
- if (baseline === 'max') {
76
- return yScale.range()[1];
77
- }
78
- if (baseline === 'min') {
79
- return yScale.range()[0];
80
- }
81
- const value = d.y && yScale(d.y[0]);
82
- if (Number.isNaN(value)) {
83
- return yScale.range()[0];
27
+
28
+ // This memo prevents odd line chart behavior when hydrating.
29
+ const allData = React.useMemo(() => {
30
+ if (seriesData === undefined) {
31
+ return [];
32
+ }
33
+ const {
34
+ series,
35
+ stackingGroups
36
+ } = seriesData;
37
+ const {
38
+ xAxis,
39
+ yAxis,
40
+ xAxisIds,
41
+ yAxisIds
42
+ } = axisData;
43
+ const defaultXAxisId = xAxisIds[0];
44
+ const defaultYAxisId = yAxisIds[0];
45
+ return stackingGroups.flatMap(({
46
+ ids: groupIds
47
+ }) => {
48
+ return [...groupIds].reverse() // Revert stacked area for a more pleasant animation
49
+ .map(seriesId => {
50
+ const {
51
+ xAxisId: xAxisIdProp,
52
+ yAxisId: yAxisIdProp,
53
+ xAxisKey = defaultXAxisId,
54
+ yAxisKey = defaultYAxisId,
55
+ stackedData,
56
+ data,
57
+ connectNulls,
58
+ baseline
59
+ } = series[seriesId];
60
+ const xAxisId = xAxisIdProp ?? xAxisKey;
61
+ const yAxisId = yAxisIdProp ?? yAxisKey;
62
+ const xScale = (0, _useScale.getValueToPositionMapper)(xAxis[xAxisId].scale);
63
+ const yScale = yAxis[yAxisId].scale;
64
+ const xData = xAxis[xAxisId].data;
65
+ const gradientUsed = yAxis[yAxisId].colorScale && [yAxisId, 'y'] || xAxis[xAxisId].colorScale && [xAxisId, 'x'] || undefined;
66
+ if (process.env.NODE_ENV !== 'production') {
67
+ if (xData === undefined) {
68
+ throw new Error(`MUI X: ${xAxisId === _constants.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.`);
69
+ }
70
+ if (xData.length < stackedData.length) {
71
+ throw new Error(`MUI X: The data length of the x axis (${xData.length} items) is lower than the length of series (${stackedData.length} items).`);
72
+ }
84
73
  }
85
- return value;
86
- }).y1(d => d.y && yScale(d.y[1]));
87
- const curve = (0, _getCurve.default)(series[seriesId].curve);
88
- const formattedData = xData?.map((x, index) => ({
89
- x,
90
- y: stackedData[index]
91
- })) ?? [];
92
- const d3Data = connectNulls ? formattedData.filter((_, i) => data[i] != null) : formattedData;
93
- const d = areaPath.curve(curve)(d3Data) || '';
94
- return (0, _extends2.default)({}, series[seriesId], {
95
- gradientUsed,
96
- d,
97
- seriesId
74
+ const areaPath = (0, _d3Shape.area)().x(d => xScale(d.x)).defined((_, i) => connectNulls || data[i] != null).y0(d => {
75
+ if (typeof baseline === 'number') {
76
+ return yScale(baseline);
77
+ }
78
+ if (baseline === 'max') {
79
+ return yScale.range()[1];
80
+ }
81
+ if (baseline === 'min') {
82
+ return yScale.range()[0];
83
+ }
84
+ const value = d.y && yScale(d.y[0]);
85
+ if (Number.isNaN(value)) {
86
+ return yScale.range()[0];
87
+ }
88
+ return value;
89
+ }).y1(d => d.y && yScale(d.y[1]));
90
+ const curve = (0, _getCurve.default)(series[seriesId].curve);
91
+ const formattedData = xData?.map((x, index) => ({
92
+ x,
93
+ y: stackedData[index]
94
+ })) ?? [];
95
+ const d3Data = connectNulls ? formattedData.filter((_, i) => data[i] != null) : formattedData;
96
+ const d = areaPath.curve(curve)(d3Data) || '';
97
+ return (0, _extends2.default)({}, series[seriesId], {
98
+ gradientUsed,
99
+ d,
100
+ seriesId
101
+ });
98
102
  });
99
103
  });
100
- });
104
+ }, [seriesData, axisData]);
105
+ return allData;
101
106
  };
102
107
 
103
108
  /**
@@ -0,0 +1,113 @@
1
+ "use strict";
2
+ 'use client';
3
+
4
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
5
+ var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
6
+ Object.defineProperty(exports, "__esModule", {
7
+ value: true
8
+ });
9
+ exports.CircleMarkElement = CircleMarkElement;
10
+ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
11
+ var _objectWithoutPropertiesLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutPropertiesLoose"));
12
+ var React = _interopRequireWildcard(require("react"));
13
+ var _propTypes = _interopRequireDefault(require("prop-types"));
14
+ var _styles = require("@mui/material/styles");
15
+ var _warning = require("@mui/x-internals/warning");
16
+ var _web = require("@react-spring/web");
17
+ var _InteractionProvider = require("../context/InteractionProvider");
18
+ var _useInteractionItemProps = require("../hooks/useInteractionItemProps");
19
+ var _context = require("../context");
20
+ var _markElementClasses = require("./markElementClasses");
21
+ var _jsxRuntime = require("react/jsx-runtime");
22
+ const _excluded = ["x", "y", "id", "classes", "color", "dataIndex", "onClick", "skipAnimation", "shape"];
23
+ /**
24
+ * The line mark element that only render circle for performance improvement.
25
+ *
26
+ * Demos:
27
+ *
28
+ * - [Lines](https://mui.com/x/react-charts/lines/)
29
+ * - [Line demonstration](https://mui.com/x/react-charts/line-demo/)
30
+ *
31
+ * API:
32
+ *
33
+ * - [CircleMarkElement API](https://mui.com/x/api/charts/circle-mark-element/)
34
+ */
35
+ function CircleMarkElement(props) {
36
+ const {
37
+ x,
38
+ y,
39
+ id,
40
+ classes: innerClasses,
41
+ color,
42
+ dataIndex,
43
+ onClick,
44
+ skipAnimation,
45
+ shape
46
+ } = props,
47
+ other = (0, _objectWithoutPropertiesLoose2.default)(props, _excluded);
48
+ if (shape !== 'circle') {
49
+ (0, _warning.warnOnce)([`MUI X: The mark element of your line chart have shape "${shape}" which is not supported when using \`experimentalRendering=true\`.`, 'Only "circle" are supported with `experimentalRendering`.'].join('\n'), 'error');
50
+ }
51
+ const theme = (0, _styles.useTheme)();
52
+ const getInteractionItemProps = (0, _useInteractionItemProps.useInteractionItemProps)();
53
+ const {
54
+ isFaded,
55
+ isHighlighted
56
+ } = (0, _context.useItemHighlighted)({
57
+ seriesId: id
58
+ });
59
+ const {
60
+ axis
61
+ } = React.useContext(_InteractionProvider.InteractionContext);
62
+ const position = (0, _web.useSpring)({
63
+ to: {
64
+ x,
65
+ y
66
+ },
67
+ immediate: skipAnimation
68
+ });
69
+ const ownerState = {
70
+ id,
71
+ classes: innerClasses,
72
+ isHighlighted: axis.x?.index === dataIndex || isHighlighted,
73
+ isFaded,
74
+ color
75
+ };
76
+ const classes = (0, _markElementClasses.useUtilityClasses)(ownerState);
77
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_web.animated.circle, (0, _extends2.default)({}, other, {
78
+ cx: position.x,
79
+ cy: position.y,
80
+ r: 5,
81
+ fill: (theme.vars || theme).palette.background.paper,
82
+ stroke: color,
83
+ strokeWidth: 2,
84
+ className: classes.root,
85
+ onClick: onClick,
86
+ cursor: onClick ? 'pointer' : 'unset'
87
+ }, getInteractionItemProps({
88
+ type: 'line',
89
+ seriesId: id,
90
+ dataIndex
91
+ })));
92
+ }
93
+ process.env.NODE_ENV !== "production" ? CircleMarkElement.propTypes = {
94
+ // ----------------------------- Warning --------------------------------
95
+ // | These PropTypes are generated from the TypeScript type definitions |
96
+ // | To update them edit the TypeScript types and run "pnpm proptypes" |
97
+ // ----------------------------------------------------------------------
98
+ classes: _propTypes.default.object,
99
+ /**
100
+ * The index to the element in the series' data array.
101
+ */
102
+ dataIndex: _propTypes.default.number.isRequired,
103
+ id: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.string]).isRequired,
104
+ /**
105
+ * The shape of the marker.
106
+ */
107
+ shape: _propTypes.default.oneOf(['circle', 'cross', 'diamond', 'square', 'star', 'triangle', 'wye']).isRequired,
108
+ /**
109
+ * If `true`, animations are skipped.
110
+ * @default false
111
+ */
112
+ skipAnimation: _propTypes.default.bool
113
+ } : void 0;
@@ -1,6 +1,8 @@
1
1
  "use strict";
2
+ 'use client';
2
3
 
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
5
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
6
  Object.defineProperty(exports, "__esModule", {
5
7
  value: true
6
8
  });
@@ -24,8 +26,6 @@ var _ChartsOnAxisClickHandler = require("../ChartsOnAxisClickHandler");
24
26
  var _ChartsOverlay = require("../ChartsOverlay");
25
27
  var _useLineChartProps = require("./useLineChartProps");
26
28
  var _jsxRuntime = require("react/jsx-runtime");
27
- function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
28
- function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
29
29
  /**
30
30
  * Demos:
31
31
  *
@@ -61,7 +61,7 @@ const LineChart = exports.LineChart = /*#__PURE__*/React.forwardRef(function Lin
61
61
  return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_ResponsiveChartContainer.ResponsiveChartContainer, (0, _extends2.default)({
62
62
  ref: ref
63
63
  }, chartContainerProps, {
64
- children: [props.onAxisClick && /*#__PURE__*/(0, _jsxRuntime.jsx)(_ChartsOnAxisClickHandler.ChartsOnAxisClickHandler, (0, _extends2.default)({}, axisClickHandlerProps)), props.grid && /*#__PURE__*/(0, _jsxRuntime.jsx)(_ChartsGrid.ChartsGrid, (0, _extends2.default)({}, gridProps)), /*#__PURE__*/(0, _jsxRuntime.jsxs)("g", (0, _extends2.default)({}, clipPathGroupProps, {
64
+ children: [props.onAxisClick && /*#__PURE__*/(0, _jsxRuntime.jsx)(_ChartsOnAxisClickHandler.ChartsOnAxisClickHandler, (0, _extends2.default)({}, axisClickHandlerProps)), /*#__PURE__*/(0, _jsxRuntime.jsx)(_ChartsGrid.ChartsGrid, (0, _extends2.default)({}, gridProps)), /*#__PURE__*/(0, _jsxRuntime.jsxs)("g", (0, _extends2.default)({}, clipPathGroupProps, {
65
65
  children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_AreaPlot.AreaPlot, (0, _extends2.default)({}, areaPlotProps)), /*#__PURE__*/(0, _jsxRuntime.jsx)(_LinePlot.LinePlot, (0, _extends2.default)({}, linePlotProps)), /*#__PURE__*/(0, _jsxRuntime.jsx)(_ChartsOverlay.ChartsOverlay, (0, _extends2.default)({}, overlayProps)), /*#__PURE__*/(0, _jsxRuntime.jsx)(_ChartsAxisHighlight.ChartsAxisHighlight, (0, _extends2.default)({}, axisHighlightProps))]
66
66
  })), /*#__PURE__*/(0, _jsxRuntime.jsx)(_ChartsAxis.ChartsAxis, (0, _extends2.default)({}, chartsAxisProps)), /*#__PURE__*/(0, _jsxRuntime.jsx)("g", {
67
67
  "data-drawing-container": true,
@@ -111,6 +111,10 @@ process.env.NODE_ENV !== "production" ? LineChart.propTypes = {
111
111
  * If `true`, render the line highlight item.
112
112
  */
113
113
  disableLineItemHighlight: _propTypes.default.bool,
114
+ /**
115
+ * If `true` marks will render `<circle />` instead of `<path />` and drop theme override for faster rendering.
116
+ */
117
+ experimentalMarkRendering: _propTypes.default.bool,
114
118
  /**
115
119
  * Option to display a cartesian grid in the background.
116
120
  */
@@ -142,6 +146,18 @@ process.env.NODE_ENV !== "production" ? LineChart.propTypes = {
142
146
  classes: _propTypes.default.object,
143
147
  direction: _propTypes.default.oneOf(['column', 'row']),
144
148
  hidden: _propTypes.default.bool,
149
+ itemGap: _propTypes.default.number,
150
+ itemMarkHeight: _propTypes.default.number,
151
+ itemMarkWidth: _propTypes.default.number,
152
+ labelStyle: _propTypes.default.object,
153
+ markGap: _propTypes.default.number,
154
+ onItemClick: _propTypes.default.func,
155
+ padding: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.shape({
156
+ bottom: _propTypes.default.number,
157
+ left: _propTypes.default.number,
158
+ right: _propTypes.default.number,
159
+ top: _propTypes.default.number
160
+ })]),
145
161
  position: _propTypes.default.shape({
146
162
  horizontal: _propTypes.default.oneOf(['left', 'middle', 'right']).isRequired,
147
163
  vertical: _propTypes.default.oneOf(['bottom', 'middle', 'top']).isRequired