@mui/x-charts 8.0.0-alpha.13 → 8.0.0-alpha.14

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 (452) hide show
  1. package/BarChart/BarPlot.js +10 -7
  2. package/BarChart/checkScaleErrors.d.ts +4 -1
  3. package/BarChart/checkScaleErrors.js +7 -1
  4. package/BarChart/seriesConfig/extremums.d.ts +1 -1
  5. package/BarChart/seriesConfig/getSeriesWithDefaultValues.d.ts +3 -0
  6. package/{internals/defaultizeColor.js → BarChart/seriesConfig/getSeriesWithDefaultValues.js} +6 -11
  7. package/BarChart/seriesConfig/index.js +3 -1
  8. package/CHANGELOG.md +131 -0
  9. package/ChartContainer/ChartContainer.d.ts +1 -1
  10. package/ChartContainer/ChartContainer.js +107 -0
  11. package/ChartContainer/useChartContainerProps.d.ts +1 -1
  12. package/ChartContainer/useChartContainerProps.js +6 -2
  13. package/ChartDataProvider/useChartDataProviderProps.d.ts +1 -1
  14. package/ChartsXAxis/ChartsXAxis.js +38 -8
  15. package/ChartsYAxis/ChartsYAxis.js +12 -7
  16. package/LineChart/LinePlot.js +2 -1
  17. package/LineChart/seriesConfig/extremums.d.ts +1 -1
  18. package/LineChart/seriesConfig/getSeriesWithDefaultValues.d.ts +3 -0
  19. package/LineChart/seriesConfig/getSeriesWithDefaultValues.js +15 -0
  20. package/LineChart/seriesConfig/index.js +3 -1
  21. package/PieChart/seriesConfig/getSeriesWithDefaultValues.d.ts +3 -0
  22. package/PieChart/seriesConfig/getSeriesWithDefaultValues.js +18 -0
  23. package/PieChart/seriesConfig/index.js +3 -1
  24. package/RadarChart/RadarChart.d.ts +24 -0
  25. package/RadarChart/RadarChart.js +150 -0
  26. package/RadarChart/RadarDataProvider/RadarDataProvider.d.ts +24 -0
  27. package/RadarChart/RadarDataProvider/RadarDataProvider.js +168 -0
  28. package/RadarChart/RadarDataProvider/index.d.ts +1 -0
  29. package/RadarChart/RadarDataProvider/index.js +16 -0
  30. package/RadarChart/RadarDataProvider/radar.types.d.ts +32 -0
  31. package/RadarChart/RadarGrid/RadarGrid.d.ts +13 -0
  32. package/RadarChart/RadarGrid/RadarGrid.js +51 -0
  33. package/RadarChart/RadarGrid/index.d.ts +1 -0
  34. package/RadarChart/RadarGrid/index.js +16 -0
  35. package/RadarChart/RadarGrid/useRadarGridData.d.ts +10 -0
  36. package/RadarChart/RadarGrid/useRadarGridData.js +35 -0
  37. package/RadarChart/RadarSeriesPlot/RadarSeriesArea.d.ts +7 -0
  38. package/RadarChart/RadarSeriesPlot/RadarSeriesArea.js +46 -0
  39. package/RadarChart/RadarSeriesPlot/RadarSeriesMarks.d.ts +7 -0
  40. package/RadarChart/RadarSeriesPlot/RadarSeriesMarks.js +45 -0
  41. package/RadarChart/RadarSeriesPlot/RadarSeriesPlot.d.ts +7 -0
  42. package/RadarChart/RadarSeriesPlot/RadarSeriesPlot.js +48 -0
  43. package/RadarChart/RadarSeriesPlot/RadarSeriesPlot.types.d.ts +12 -0
  44. package/RadarChart/RadarSeriesPlot/getAreaPath.d.ts +4 -0
  45. package/RadarChart/RadarSeriesPlot/getAreaPath.js +9 -0
  46. package/RadarChart/RadarSeriesPlot/index.d.ts +4 -0
  47. package/RadarChart/RadarSeriesPlot/index.js +38 -0
  48. package/RadarChart/RadarSeriesPlot/useRadarSeriesData.d.ts +27 -0
  49. package/RadarChart/RadarSeriesPlot/useRadarSeriesData.js +67 -0
  50. package/RadarChart/index.d.ts +6 -0
  51. package/RadarChart/index.js +47 -0
  52. package/RadarChart/seriesConfig/extremums.d.ts +3 -0
  53. package/RadarChart/seriesConfig/extremums.js +26 -0
  54. package/RadarChart/seriesConfig/formatter.d.ts +3 -0
  55. package/RadarChart/seriesConfig/formatter.js +18 -0
  56. package/RadarChart/seriesConfig/getColor.d.ts +3 -0
  57. package/RadarChart/seriesConfig/getColor.js +10 -0
  58. package/RadarChart/seriesConfig/getSeriesWithDefaultValues.d.ts +3 -0
  59. package/RadarChart/seriesConfig/getSeriesWithDefaultValues.js +15 -0
  60. package/RadarChart/seriesConfig/index.d.ts +2 -0
  61. package/RadarChart/seriesConfig/index.js +22 -0
  62. package/RadarChart/seriesConfig/legend.d.ts +3 -0
  63. package/RadarChart/seriesConfig/legend.js +28 -0
  64. package/RadarChart/seriesConfig/tooltip.d.ts +3 -0
  65. package/RadarChart/seriesConfig/tooltip.js +31 -0
  66. package/RadarChart/useRadarChartProps.d.ts +23 -0
  67. package/RadarChart/useRadarChartProps.js +74 -0
  68. package/ScatterChart/seriesConfig/extremums.d.ts +1 -1
  69. package/ScatterChart/seriesConfig/getSeriesWithDefaultValues.d.ts +3 -0
  70. package/ScatterChart/seriesConfig/getSeriesWithDefaultValues.js +15 -0
  71. package/ScatterChart/seriesConfig/index.js +3 -1
  72. package/SparkLineChart/SparkLineChart.d.ts +1 -1
  73. package/constants/index.d.ts +3 -6
  74. package/constants/index.js +6 -7
  75. package/esm/BarChart/BarPlot.js +10 -7
  76. package/esm/BarChart/checkScaleErrors.d.ts +4 -1
  77. package/esm/BarChart/checkScaleErrors.js +7 -1
  78. package/esm/BarChart/seriesConfig/extremums.d.ts +1 -1
  79. package/esm/BarChart/seriesConfig/getSeriesWithDefaultValues.d.ts +3 -0
  80. package/esm/BarChart/seriesConfig/getSeriesWithDefaultValues.js +8 -0
  81. package/esm/BarChart/seriesConfig/index.js +3 -1
  82. package/esm/ChartContainer/ChartContainer.d.ts +1 -1
  83. package/esm/ChartContainer/ChartContainer.js +107 -0
  84. package/esm/ChartContainer/useChartContainerProps.d.ts +1 -1
  85. package/esm/ChartContainer/useChartContainerProps.js +6 -2
  86. package/esm/ChartDataProvider/useChartDataProviderProps.d.ts +1 -1
  87. package/esm/ChartsXAxis/ChartsXAxis.js +38 -8
  88. package/esm/ChartsYAxis/ChartsYAxis.js +13 -8
  89. package/esm/LineChart/LinePlot.js +2 -1
  90. package/esm/LineChart/seriesConfig/extremums.d.ts +1 -1
  91. package/esm/LineChart/seriesConfig/getSeriesWithDefaultValues.d.ts +3 -0
  92. package/esm/LineChart/seriesConfig/getSeriesWithDefaultValues.js +8 -0
  93. package/esm/LineChart/seriesConfig/index.js +3 -1
  94. package/esm/PieChart/seriesConfig/getSeriesWithDefaultValues.d.ts +3 -0
  95. package/esm/PieChart/seriesConfig/getSeriesWithDefaultValues.js +11 -0
  96. package/esm/PieChart/seriesConfig/index.js +3 -1
  97. package/esm/RadarChart/RadarChart.d.ts +24 -0
  98. package/esm/RadarChart/RadarChart.js +144 -0
  99. package/esm/RadarChart/RadarDataProvider/RadarDataProvider.d.ts +24 -0
  100. package/esm/RadarChart/RadarDataProvider/RadarDataProvider.js +162 -0
  101. package/esm/RadarChart/RadarDataProvider/index.d.ts +1 -0
  102. package/esm/RadarChart/RadarDataProvider/index.js +1 -0
  103. package/esm/RadarChart/RadarDataProvider/radar.types.d.ts +32 -0
  104. package/esm/RadarChart/RadarGrid/RadarGrid.d.ts +13 -0
  105. package/esm/RadarChart/RadarGrid/RadarGrid.js +44 -0
  106. package/esm/RadarChart/RadarGrid/index.d.ts +1 -0
  107. package/esm/RadarChart/RadarGrid/index.js +1 -0
  108. package/esm/RadarChart/RadarGrid/useRadarGridData.d.ts +10 -0
  109. package/esm/RadarChart/RadarGrid/useRadarGridData.js +29 -0
  110. package/esm/RadarChart/RadarSeriesPlot/RadarSeriesArea.d.ts +7 -0
  111. package/esm/RadarChart/RadarSeriesPlot/RadarSeriesArea.js +39 -0
  112. package/esm/RadarChart/RadarSeriesPlot/RadarSeriesMarks.d.ts +7 -0
  113. package/esm/RadarChart/RadarSeriesPlot/RadarSeriesMarks.js +38 -0
  114. package/esm/RadarChart/RadarSeriesPlot/RadarSeriesPlot.d.ts +7 -0
  115. package/esm/RadarChart/RadarSeriesPlot/RadarSeriesPlot.js +41 -0
  116. package/esm/RadarChart/RadarSeriesPlot/RadarSeriesPlot.types.d.ts +12 -0
  117. package/esm/RadarChart/RadarSeriesPlot/getAreaPath.d.ts +4 -0
  118. package/esm/RadarChart/RadarSeriesPlot/getAreaPath.js +3 -0
  119. package/esm/RadarChart/RadarSeriesPlot/index.d.ts +4 -0
  120. package/esm/RadarChart/RadarSeriesPlot/index.js +3 -0
  121. package/esm/RadarChart/RadarSeriesPlot/useRadarSeriesData.d.ts +27 -0
  122. package/esm/RadarChart/RadarSeriesPlot/useRadarSeriesData.js +60 -0
  123. package/esm/RadarChart/index.d.ts +6 -0
  124. package/esm/RadarChart/index.js +4 -0
  125. package/esm/RadarChart/seriesConfig/extremums.d.ts +3 -0
  126. package/esm/RadarChart/seriesConfig/extremums.js +18 -0
  127. package/esm/RadarChart/seriesConfig/formatter.d.ts +3 -0
  128. package/esm/RadarChart/seriesConfig/formatter.js +12 -0
  129. package/esm/RadarChart/seriesConfig/getColor.d.ts +3 -0
  130. package/esm/RadarChart/seriesConfig/getColor.js +4 -0
  131. package/esm/RadarChart/seriesConfig/getSeriesWithDefaultValues.d.ts +3 -0
  132. package/esm/RadarChart/seriesConfig/getSeriesWithDefaultValues.js +8 -0
  133. package/esm/RadarChart/seriesConfig/index.d.ts +2 -0
  134. package/esm/RadarChart/seriesConfig/index.js +15 -0
  135. package/esm/RadarChart/seriesConfig/legend.d.ts +3 -0
  136. package/esm/RadarChart/seriesConfig/legend.js +22 -0
  137. package/esm/RadarChart/seriesConfig/tooltip.d.ts +3 -0
  138. package/esm/RadarChart/seriesConfig/tooltip.js +25 -0
  139. package/esm/RadarChart/useRadarChartProps.d.ts +23 -0
  140. package/esm/RadarChart/useRadarChartProps.js +67 -0
  141. package/esm/ScatterChart/seriesConfig/extremums.d.ts +1 -1
  142. package/esm/ScatterChart/seriesConfig/getSeriesWithDefaultValues.d.ts +3 -0
  143. package/esm/ScatterChart/seriesConfig/getSeriesWithDefaultValues.js +8 -0
  144. package/esm/ScatterChart/seriesConfig/index.js +3 -1
  145. package/esm/SparkLineChart/SparkLineChart.d.ts +1 -1
  146. package/esm/constants/index.d.ts +3 -6
  147. package/esm/constants/index.js +5 -6
  148. package/esm/hooks/useAxis.d.ts +11 -1
  149. package/esm/hooks/useAxis.js +41 -0
  150. package/esm/hooks/useRadarSeries.d.ts +35 -0
  151. package/esm/hooks/useRadarSeries.js +42 -0
  152. package/esm/hooks/useScale.d.ts +3 -1
  153. package/esm/hooks/useScale.js +9 -1
  154. package/esm/hooks/useTicks.js +17 -11
  155. package/esm/index.d.ts +1 -0
  156. package/esm/index.js +2 -1
  157. package/esm/internals/clampAngle.d.ts +2 -0
  158. package/esm/internals/clampAngle.js +4 -0
  159. package/esm/internals/components/AxisSharedComponents.js +2 -2
  160. package/esm/internals/configInit.d.ts +11 -4
  161. package/esm/internals/configInit.js +22 -4
  162. package/esm/internals/index.d.ts +5 -0
  163. package/esm/internals/index.js +5 -0
  164. package/esm/internals/invertTextAnchor.d.ts +2 -0
  165. package/esm/internals/invertTextAnchor.js +10 -0
  166. package/esm/internals/isPolar.d.ts +7 -0
  167. package/esm/internals/isPolar.js +7 -0
  168. package/esm/internals/plugins/allPlugins.d.ts +3 -2
  169. package/esm/internals/plugins/allPlugins.js +2 -1
  170. package/esm/internals/plugins/corePlugins/useChartSeries/processSeries.js +7 -13
  171. package/esm/internals/plugins/featurePlugins/useChartCartesianAxis/computeAxisValue.js +5 -2
  172. package/esm/internals/plugins/featurePlugins/useChartCartesianAxis/defaultizeAxis.d.ts +2 -2
  173. package/esm/internals/plugins/featurePlugins/useChartCartesianAxis/defaultizeAxis.js +59 -19
  174. package/esm/internals/plugins/featurePlugins/useChartCartesianAxis/index.d.ts +1 -1
  175. package/esm/internals/plugins/featurePlugins/useChartCartesianAxis/index.js +1 -1
  176. package/esm/internals/plugins/featurePlugins/useChartCartesianAxis/useChartCartesianAxis.js +5 -5
  177. package/esm/internals/plugins/featurePlugins/useChartCartesianAxis/useChartCartesianAxis.types.d.ts +0 -18
  178. package/esm/internals/plugins/featurePlugins/useChartInteraction/useChartInteraction.selectors.d.ts +10 -10
  179. package/esm/internals/plugins/featurePlugins/useChartPolarAxis/computeAxisValue.d.ts +27 -0
  180. package/esm/internals/plugins/featurePlugins/useChartPolarAxis/computeAxisValue.js +133 -0
  181. package/esm/internals/plugins/featurePlugins/useChartPolarAxis/defaultizeAxis.d.ts +5 -0
  182. package/esm/internals/plugins/featurePlugins/useChartPolarAxis/defaultizeAxis.js +24 -0
  183. package/esm/internals/plugins/featurePlugins/useChartPolarAxis/getAxisExtremum.d.ts +5 -0
  184. package/esm/internals/plugins/featurePlugins/useChartPolarAxis/getAxisExtremum.js +21 -0
  185. package/esm/internals/plugins/featurePlugins/useChartPolarAxis/index.d.ts +3 -0
  186. package/esm/internals/plugins/featurePlugins/useChartPolarAxis/index.js +2 -0
  187. package/esm/internals/plugins/featurePlugins/useChartPolarAxis/useChartPolarAxis.d.ts +3 -0
  188. package/esm/internals/plugins/featurePlugins/useChartPolarAxis/useChartPolarAxis.js +57 -0
  189. package/esm/internals/plugins/featurePlugins/useChartPolarAxis/useChartPolarAxis.selectors.d.ts +1453 -0
  190. package/esm/internals/plugins/featurePlugins/useChartPolarAxis/useChartPolarAxis.selectors.js +26 -0
  191. package/esm/internals/plugins/featurePlugins/useChartPolarAxis/useChartPolarAxis.types.d.ts +55 -0
  192. package/esm/internals/plugins/models/seriesConfig/getSeriesWithDefaultValues.types.d.ts +3 -0
  193. package/esm/internals/plugins/models/seriesConfig/getSeriesWithDefaultValues.types.js +1 -0
  194. package/esm/internals/plugins/models/seriesConfig/index.d.ts +4 -2
  195. package/esm/internals/plugins/models/seriesConfig/index.js +4 -2
  196. package/esm/internals/plugins/models/seriesConfig/polarExtremumGetter.types.d.ts +16 -0
  197. package/esm/internals/plugins/models/seriesConfig/polarExtremumGetter.types.js +1 -0
  198. package/esm/internals/plugins/models/seriesConfig/seriesConfig.types.d.ts +8 -2
  199. package/esm/internals/stackSeries.d.ts +4 -6
  200. package/esm/models/axis.d.ts +27 -12
  201. package/esm/models/axis.js +4 -0
  202. package/esm/models/seriesType/config.d.ts +19 -9
  203. package/esm/models/seriesType/index.d.ts +1 -0
  204. package/esm/models/seriesType/index.js +1 -0
  205. package/esm/models/seriesType/radar.d.ts +24 -0
  206. package/esm/models/seriesType/radar.js +1 -0
  207. package/hooks/useAxis.d.ts +11 -1
  208. package/hooks/useAxis.js +45 -0
  209. package/hooks/useRadarSeries.d.ts +35 -0
  210. package/hooks/useRadarSeries.js +48 -0
  211. package/hooks/useScale.d.ts +3 -1
  212. package/hooks/useScale.js +10 -0
  213. package/hooks/useTicks.js +17 -11
  214. package/index.d.ts +1 -0
  215. package/index.js +12 -1
  216. package/internals/clampAngle.d.ts +2 -0
  217. package/internals/clampAngle.js +10 -0
  218. package/internals/components/AxisSharedComponents.js +2 -2
  219. package/internals/configInit.d.ts +11 -4
  220. package/internals/configInit.js +23 -5
  221. package/internals/index.d.ts +5 -0
  222. package/internals/index.js +60 -0
  223. package/internals/invertTextAnchor.d.ts +2 -0
  224. package/internals/invertTextAnchor.js +16 -0
  225. package/internals/isPolar.d.ts +7 -0
  226. package/internals/isPolar.js +14 -0
  227. package/internals/plugins/allPlugins.d.ts +3 -2
  228. package/internals/plugins/allPlugins.js +2 -1
  229. package/internals/plugins/corePlugins/useChartSeries/processSeries.js +7 -14
  230. package/internals/plugins/featurePlugins/useChartCartesianAxis/computeAxisValue.js +5 -2
  231. package/internals/plugins/featurePlugins/useChartCartesianAxis/defaultizeAxis.d.ts +2 -2
  232. package/internals/plugins/featurePlugins/useChartCartesianAxis/defaultizeAxis.js +60 -19
  233. package/internals/plugins/featurePlugins/useChartCartesianAxis/index.d.ts +1 -1
  234. package/internals/plugins/featurePlugins/useChartCartesianAxis/index.js +10 -3
  235. package/internals/plugins/featurePlugins/useChartCartesianAxis/useChartCartesianAxis.js +4 -4
  236. package/internals/plugins/featurePlugins/useChartCartesianAxis/useChartCartesianAxis.types.d.ts +0 -18
  237. package/internals/plugins/featurePlugins/useChartInteraction/useChartInteraction.selectors.d.ts +10 -10
  238. package/internals/plugins/featurePlugins/useChartPolarAxis/computeAxisValue.d.ts +27 -0
  239. package/internals/plugins/featurePlugins/useChartPolarAxis/computeAxisValue.js +140 -0
  240. package/internals/plugins/featurePlugins/useChartPolarAxis/defaultizeAxis.d.ts +5 -0
  241. package/internals/plugins/featurePlugins/useChartPolarAxis/defaultizeAxis.js +31 -0
  242. package/internals/plugins/featurePlugins/useChartPolarAxis/getAxisExtremum.d.ts +5 -0
  243. package/internals/plugins/featurePlugins/useChartPolarAxis/getAxisExtremum.js +28 -0
  244. package/internals/plugins/featurePlugins/useChartPolarAxis/index.d.ts +3 -0
  245. package/internals/plugins/featurePlugins/useChartPolarAxis/index.js +27 -0
  246. package/internals/plugins/featurePlugins/useChartPolarAxis/useChartPolarAxis.d.ts +3 -0
  247. package/internals/plugins/featurePlugins/useChartPolarAxis/useChartPolarAxis.js +65 -0
  248. package/internals/plugins/featurePlugins/useChartPolarAxis/useChartPolarAxis.selectors.d.ts +1453 -0
  249. package/internals/plugins/featurePlugins/useChartPolarAxis/useChartPolarAxis.selectors.js +33 -0
  250. package/internals/plugins/featurePlugins/useChartPolarAxis/useChartPolarAxis.types.d.ts +55 -0
  251. package/internals/plugins/featurePlugins/useChartPolarAxis/useChartPolarAxis.types.js +5 -0
  252. package/internals/plugins/models/seriesConfig/cartesianExtremumGetter.types.js +5 -0
  253. package/internals/plugins/models/seriesConfig/getSeriesWithDefaultValues.types.d.ts +3 -0
  254. package/internals/plugins/models/seriesConfig/getSeriesWithDefaultValues.types.js +5 -0
  255. package/internals/plugins/models/seriesConfig/index.d.ts +4 -2
  256. package/internals/plugins/models/seriesConfig/index.js +26 -4
  257. package/internals/plugins/models/seriesConfig/polarExtremumGetter.types.d.ts +16 -0
  258. package/internals/plugins/models/seriesConfig/polarExtremumGetter.types.js +5 -0
  259. package/internals/plugins/models/seriesConfig/seriesConfig.types.d.ts +8 -2
  260. package/internals/stackSeries.d.ts +4 -6
  261. package/models/axis.d.ts +27 -12
  262. package/models/axis.js +4 -0
  263. package/models/seriesType/config.d.ts +19 -9
  264. package/models/seriesType/index.d.ts +1 -0
  265. package/models/seriesType/index.js +12 -0
  266. package/models/seriesType/radar.d.ts +24 -0
  267. package/models/seriesType/radar.js +5 -0
  268. package/modern/BarChart/BarPlot.js +10 -7
  269. package/modern/BarChart/checkScaleErrors.d.ts +4 -1
  270. package/modern/BarChart/checkScaleErrors.js +7 -1
  271. package/modern/BarChart/seriesConfig/extremums.d.ts +1 -1
  272. package/modern/BarChart/seriesConfig/getSeriesWithDefaultValues.d.ts +3 -0
  273. package/modern/BarChart/seriesConfig/getSeriesWithDefaultValues.js +8 -0
  274. package/modern/BarChart/seriesConfig/index.js +3 -1
  275. package/modern/ChartContainer/ChartContainer.d.ts +1 -1
  276. package/modern/ChartContainer/ChartContainer.js +107 -0
  277. package/modern/ChartContainer/useChartContainerProps.d.ts +1 -1
  278. package/modern/ChartContainer/useChartContainerProps.js +6 -2
  279. package/modern/ChartDataProvider/useChartDataProviderProps.d.ts +1 -1
  280. package/modern/ChartsXAxis/ChartsXAxis.js +38 -8
  281. package/modern/ChartsYAxis/ChartsYAxis.js +13 -8
  282. package/modern/LineChart/LinePlot.js +2 -1
  283. package/modern/LineChart/seriesConfig/extremums.d.ts +1 -1
  284. package/modern/LineChart/seriesConfig/getSeriesWithDefaultValues.d.ts +3 -0
  285. package/modern/LineChart/seriesConfig/getSeriesWithDefaultValues.js +8 -0
  286. package/modern/LineChart/seriesConfig/index.js +3 -1
  287. package/modern/PieChart/seriesConfig/getSeriesWithDefaultValues.d.ts +3 -0
  288. package/modern/PieChart/seriesConfig/getSeriesWithDefaultValues.js +11 -0
  289. package/modern/PieChart/seriesConfig/index.js +3 -1
  290. package/modern/RadarChart/RadarChart.d.ts +24 -0
  291. package/modern/RadarChart/RadarChart.js +144 -0
  292. package/modern/RadarChart/RadarDataProvider/RadarDataProvider.d.ts +24 -0
  293. package/modern/RadarChart/RadarDataProvider/RadarDataProvider.js +162 -0
  294. package/modern/RadarChart/RadarDataProvider/index.d.ts +1 -0
  295. package/modern/RadarChart/RadarDataProvider/index.js +1 -0
  296. package/modern/RadarChart/RadarDataProvider/radar.types.d.ts +32 -0
  297. package/modern/RadarChart/RadarDataProvider/radar.types.js +1 -0
  298. package/modern/RadarChart/RadarGrid/RadarGrid.d.ts +13 -0
  299. package/modern/RadarChart/RadarGrid/RadarGrid.js +44 -0
  300. package/modern/RadarChart/RadarGrid/index.d.ts +1 -0
  301. package/modern/RadarChart/RadarGrid/index.js +1 -0
  302. package/modern/RadarChart/RadarGrid/useRadarGridData.d.ts +10 -0
  303. package/modern/RadarChart/RadarGrid/useRadarGridData.js +29 -0
  304. package/modern/RadarChart/RadarSeriesPlot/RadarSeriesArea.d.ts +7 -0
  305. package/modern/RadarChart/RadarSeriesPlot/RadarSeriesArea.js +39 -0
  306. package/modern/RadarChart/RadarSeriesPlot/RadarSeriesMarks.d.ts +7 -0
  307. package/modern/RadarChart/RadarSeriesPlot/RadarSeriesMarks.js +38 -0
  308. package/modern/RadarChart/RadarSeriesPlot/RadarSeriesPlot.d.ts +7 -0
  309. package/modern/RadarChart/RadarSeriesPlot/RadarSeriesPlot.js +41 -0
  310. package/modern/RadarChart/RadarSeriesPlot/RadarSeriesPlot.types.d.ts +12 -0
  311. package/modern/RadarChart/RadarSeriesPlot/RadarSeriesPlot.types.js +1 -0
  312. package/modern/RadarChart/RadarSeriesPlot/getAreaPath.d.ts +4 -0
  313. package/modern/RadarChart/RadarSeriesPlot/getAreaPath.js +3 -0
  314. package/modern/RadarChart/RadarSeriesPlot/index.d.ts +4 -0
  315. package/modern/RadarChart/RadarSeriesPlot/index.js +3 -0
  316. package/modern/RadarChart/RadarSeriesPlot/useRadarSeriesData.d.ts +27 -0
  317. package/modern/RadarChart/RadarSeriesPlot/useRadarSeriesData.js +60 -0
  318. package/modern/RadarChart/index.d.ts +6 -0
  319. package/modern/RadarChart/index.js +4 -0
  320. package/modern/RadarChart/seriesConfig/extremums.d.ts +3 -0
  321. package/modern/RadarChart/seriesConfig/extremums.js +18 -0
  322. package/modern/RadarChart/seriesConfig/formatter.d.ts +3 -0
  323. package/modern/RadarChart/seriesConfig/formatter.js +12 -0
  324. package/modern/RadarChart/seriesConfig/getColor.d.ts +3 -0
  325. package/modern/RadarChart/seriesConfig/getColor.js +4 -0
  326. package/modern/RadarChart/seriesConfig/getSeriesWithDefaultValues.d.ts +3 -0
  327. package/modern/RadarChart/seriesConfig/getSeriesWithDefaultValues.js +8 -0
  328. package/modern/RadarChart/seriesConfig/index.d.ts +2 -0
  329. package/modern/RadarChart/seriesConfig/index.js +15 -0
  330. package/modern/RadarChart/seriesConfig/legend.d.ts +3 -0
  331. package/modern/RadarChart/seriesConfig/legend.js +22 -0
  332. package/modern/RadarChart/seriesConfig/tooltip.d.ts +3 -0
  333. package/modern/RadarChart/seriesConfig/tooltip.js +25 -0
  334. package/modern/RadarChart/useRadarChartProps.d.ts +23 -0
  335. package/modern/RadarChart/useRadarChartProps.js +67 -0
  336. package/modern/ScatterChart/seriesConfig/extremums.d.ts +1 -1
  337. package/modern/ScatterChart/seriesConfig/getSeriesWithDefaultValues.d.ts +3 -0
  338. package/modern/ScatterChart/seriesConfig/getSeriesWithDefaultValues.js +8 -0
  339. package/modern/ScatterChart/seriesConfig/index.js +3 -1
  340. package/modern/SparkLineChart/SparkLineChart.d.ts +1 -1
  341. package/modern/constants/index.d.ts +3 -6
  342. package/modern/constants/index.js +5 -6
  343. package/modern/hooks/useAxis.d.ts +11 -1
  344. package/modern/hooks/useAxis.js +41 -0
  345. package/modern/hooks/useRadarSeries.d.ts +35 -0
  346. package/modern/hooks/useRadarSeries.js +42 -0
  347. package/modern/hooks/useScale.d.ts +3 -1
  348. package/modern/hooks/useScale.js +9 -1
  349. package/modern/hooks/useTicks.js +17 -11
  350. package/modern/index.d.ts +1 -0
  351. package/modern/index.js +2 -1
  352. package/modern/internals/clampAngle.d.ts +2 -0
  353. package/modern/internals/clampAngle.js +4 -0
  354. package/modern/internals/components/AxisSharedComponents.js +2 -2
  355. package/modern/internals/configInit.d.ts +11 -4
  356. package/modern/internals/configInit.js +22 -4
  357. package/modern/internals/index.d.ts +5 -0
  358. package/modern/internals/index.js +5 -0
  359. package/modern/internals/invertTextAnchor.d.ts +2 -0
  360. package/modern/internals/invertTextAnchor.js +10 -0
  361. package/modern/internals/isPolar.d.ts +7 -0
  362. package/modern/internals/isPolar.js +7 -0
  363. package/modern/internals/plugins/allPlugins.d.ts +3 -2
  364. package/modern/internals/plugins/allPlugins.js +2 -1
  365. package/modern/internals/plugins/corePlugins/useChartSeries/processSeries.js +7 -13
  366. package/modern/internals/plugins/featurePlugins/useChartCartesianAxis/computeAxisValue.js +5 -2
  367. package/modern/internals/plugins/featurePlugins/useChartCartesianAxis/defaultizeAxis.d.ts +2 -2
  368. package/modern/internals/plugins/featurePlugins/useChartCartesianAxis/defaultizeAxis.js +59 -19
  369. package/modern/internals/plugins/featurePlugins/useChartCartesianAxis/index.d.ts +1 -1
  370. package/modern/internals/plugins/featurePlugins/useChartCartesianAxis/index.js +1 -1
  371. package/modern/internals/plugins/featurePlugins/useChartCartesianAxis/useChartCartesianAxis.js +5 -5
  372. package/modern/internals/plugins/featurePlugins/useChartCartesianAxis/useChartCartesianAxis.types.d.ts +0 -18
  373. package/modern/internals/plugins/featurePlugins/useChartInteraction/useChartInteraction.selectors.d.ts +10 -10
  374. package/modern/internals/plugins/featurePlugins/useChartPolarAxis/computeAxisValue.d.ts +27 -0
  375. package/modern/internals/plugins/featurePlugins/useChartPolarAxis/computeAxisValue.js +133 -0
  376. package/modern/internals/plugins/featurePlugins/useChartPolarAxis/defaultizeAxis.d.ts +5 -0
  377. package/modern/internals/plugins/featurePlugins/useChartPolarAxis/defaultizeAxis.js +24 -0
  378. package/modern/internals/plugins/featurePlugins/useChartPolarAxis/getAxisExtremum.d.ts +5 -0
  379. package/modern/internals/plugins/featurePlugins/useChartPolarAxis/getAxisExtremum.js +21 -0
  380. package/modern/internals/plugins/featurePlugins/useChartPolarAxis/index.d.ts +3 -0
  381. package/modern/internals/plugins/featurePlugins/useChartPolarAxis/index.js +2 -0
  382. package/modern/internals/plugins/featurePlugins/useChartPolarAxis/useChartPolarAxis.d.ts +3 -0
  383. package/modern/internals/plugins/featurePlugins/useChartPolarAxis/useChartPolarAxis.js +57 -0
  384. package/modern/internals/plugins/featurePlugins/useChartPolarAxis/useChartPolarAxis.selectors.d.ts +1453 -0
  385. package/modern/internals/plugins/featurePlugins/useChartPolarAxis/useChartPolarAxis.selectors.js +26 -0
  386. package/modern/internals/plugins/featurePlugins/useChartPolarAxis/useChartPolarAxis.types.d.ts +55 -0
  387. package/modern/internals/plugins/featurePlugins/useChartPolarAxis/useChartPolarAxis.types.js +1 -0
  388. package/modern/internals/plugins/models/seriesConfig/cartesianExtremumGetter.types.js +1 -0
  389. package/modern/internals/plugins/models/seriesConfig/getSeriesWithDefaultValues.types.d.ts +3 -0
  390. package/modern/internals/plugins/models/seriesConfig/getSeriesWithDefaultValues.types.js +1 -0
  391. package/modern/internals/plugins/models/seriesConfig/index.d.ts +4 -2
  392. package/modern/internals/plugins/models/seriesConfig/index.js +4 -2
  393. package/modern/internals/plugins/models/seriesConfig/polarExtremumGetter.types.d.ts +16 -0
  394. package/modern/internals/plugins/models/seriesConfig/polarExtremumGetter.types.js +1 -0
  395. package/modern/internals/plugins/models/seriesConfig/seriesConfig.types.d.ts +8 -2
  396. package/modern/internals/stackSeries.d.ts +4 -6
  397. package/modern/models/axis.d.ts +27 -12
  398. package/modern/models/axis.js +4 -0
  399. package/modern/models/seriesType/config.d.ts +19 -9
  400. package/modern/models/seriesType/index.d.ts +1 -0
  401. package/modern/models/seriesType/index.js +1 -0
  402. package/modern/models/seriesType/radar.d.ts +24 -0
  403. package/modern/models/seriesType/radar.js +1 -0
  404. package/package.json +1 -1
  405. package/tsconfig.build.tsbuildinfo +1 -1
  406. package/context/PolarProvider/Polar.types.d.ts +0 -43
  407. package/context/PolarProvider/PolarContext.d.ts +0 -4
  408. package/context/PolarProvider/PolarContext.js +0 -20
  409. package/context/PolarProvider/PolarProvider.d.ts +0 -0
  410. package/context/PolarProvider/PolarProvider.js +0 -62
  411. package/context/PolarProvider/getAxisExtremum.d.ts +0 -0
  412. package/context/PolarProvider/getAxisExtremum.js +0 -49
  413. package/context/PolarProvider/index.d.ts +0 -0
  414. package/context/PolarProvider/index.js +0 -1
  415. package/context/PolarProvider/usePolarContext.d.ts +0 -0
  416. package/context/PolarProvider/usePolarContext.js +0 -12
  417. package/esm/context/PolarProvider/Polar.types.d.ts +0 -43
  418. package/esm/context/PolarProvider/PolarContext.d.ts +0 -4
  419. package/esm/context/PolarProvider/PolarContext.js +0 -13
  420. package/esm/context/PolarProvider/PolarProvider.d.ts +0 -0
  421. package/esm/context/PolarProvider/PolarProvider.js +0 -61
  422. package/esm/context/PolarProvider/getAxisExtremum.d.ts +0 -0
  423. package/esm/context/PolarProvider/getAxisExtremum.js +0 -48
  424. package/esm/context/PolarProvider/index.d.ts +0 -0
  425. package/esm/context/PolarProvider/index.js +0 -0
  426. package/esm/context/PolarProvider/usePolarContext.d.ts +0 -0
  427. package/esm/context/PolarProvider/usePolarContext.js +0 -11
  428. package/esm/internals/defaultizeColor.d.ts +0 -107
  429. package/esm/internals/defaultizeColor.js +0 -13
  430. package/internals/defaultizeColor.d.ts +0 -107
  431. package/modern/context/PolarProvider/Polar.types.d.ts +0 -43
  432. package/modern/context/PolarProvider/PolarContext.d.ts +0 -4
  433. package/modern/context/PolarProvider/PolarContext.js +0 -13
  434. package/modern/context/PolarProvider/PolarProvider.d.ts +0 -0
  435. package/modern/context/PolarProvider/PolarProvider.js +0 -61
  436. package/modern/context/PolarProvider/getAxisExtremum.d.ts +0 -0
  437. package/modern/context/PolarProvider/getAxisExtremum.js +0 -48
  438. package/modern/context/PolarProvider/index.d.ts +0 -0
  439. package/modern/context/PolarProvider/index.js +0 -0
  440. package/modern/context/PolarProvider/usePolarContext.d.ts +0 -0
  441. package/modern/context/PolarProvider/usePolarContext.js +0 -11
  442. package/modern/internals/defaultizeColor.d.ts +0 -107
  443. package/modern/internals/defaultizeColor.js +0 -13
  444. /package/{context/PolarProvider/Polar.types.js → RadarChart/RadarDataProvider/radar.types.js} +0 -0
  445. /package/{internals/plugins/models/seriesConfig/extremumGetter.types.js → RadarChart/RadarSeriesPlot/RadarSeriesPlot.types.js} +0 -0
  446. /package/esm/{context/PolarProvider/Polar.types.js → RadarChart/RadarDataProvider/radar.types.js} +0 -0
  447. /package/esm/{internals/plugins/models/seriesConfig/extremumGetter.types.js → RadarChart/RadarSeriesPlot/RadarSeriesPlot.types.js} +0 -0
  448. /package/{modern/context/PolarProvider/Polar.types.js → esm/internals/plugins/featurePlugins/useChartPolarAxis/useChartPolarAxis.types.js} +0 -0
  449. /package/esm/internals/plugins/models/seriesConfig/{extremumGetter.types.d.ts → cartesianExtremumGetter.types.d.ts} +0 -0
  450. /package/{modern/internals/plugins/models/seriesConfig/extremumGetter.types.js → esm/internals/plugins/models/seriesConfig/cartesianExtremumGetter.types.js} +0 -0
  451. /package/internals/plugins/models/seriesConfig/{extremumGetter.types.d.ts → cartesianExtremumGetter.types.d.ts} +0 -0
  452. /package/modern/internals/plugins/models/seriesConfig/{extremumGetter.types.d.ts → cartesianExtremumGetter.types.d.ts} +0 -0
@@ -0,0 +1,74 @@
1
+ "use strict";
2
+ 'use client';
3
+
4
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.useRadarChartProps = void 0;
9
+ var _objectWithoutPropertiesLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutPropertiesLoose"));
10
+ const _excluded = ["series", "radar", "width", "height", "margin", "colors", "sx", "children", "slots", "slotProps", "skipAnimation", "loading", "highlightedItem", "onHighlightChange", "hideLegend", "divisions"];
11
+ /**
12
+ * A helper function that extracts RadarChartProps from the input props
13
+ * and returns an object with props for the children components of RadarChart.
14
+ *
15
+ * @param props The input props for RadarChart
16
+ * @returns An object with props for the children components of RadarChart
17
+ */
18
+ const useRadarChartProps = props => {
19
+ const {
20
+ series,
21
+ radar,
22
+ width,
23
+ height,
24
+ margin,
25
+ colors,
26
+ sx,
27
+ children,
28
+ slots,
29
+ slotProps,
30
+ skipAnimation,
31
+ loading,
32
+ highlightedItem,
33
+ onHighlightChange,
34
+ divisions
35
+ } = props,
36
+ other = (0, _objectWithoutPropertiesLoose2.default)(props, _excluded);
37
+ const radarDataProviderProps = {
38
+ series,
39
+ radar,
40
+ width,
41
+ height,
42
+ margin,
43
+ colors,
44
+ highlightedItem,
45
+ onHighlightChange,
46
+ skipAnimation
47
+ };
48
+ const overlayProps = {
49
+ slots,
50
+ slotProps,
51
+ loading
52
+ };
53
+ const legendProps = {
54
+ slots,
55
+ slotProps
56
+ };
57
+ const chartsWrapperProps = {
58
+ sx
59
+ };
60
+ const radarGrid = {
61
+ divisions
62
+ };
63
+ const chartsSurfaceProps = other;
64
+ return {
65
+ chartsWrapperProps,
66
+ chartsSurfaceProps,
67
+ radarDataProviderProps,
68
+ radarGrid,
69
+ overlayProps,
70
+ legendProps,
71
+ children
72
+ };
73
+ };
74
+ exports.useRadarChartProps = useRadarChartProps;
@@ -1,3 +1,3 @@
1
- import { CartesianExtremumGetter } from "../../internals/plugins/models/seriesConfig/extremumGetter.types.js";
1
+ import { CartesianExtremumGetter } from "../../internals/plugins/models/seriesConfig/index.js";
2
2
  export declare const getExtremumX: CartesianExtremumGetter<'scatter'>;
3
3
  export declare const getExtremumY: CartesianExtremumGetter<'scatter'>;
@@ -0,0 +1,3 @@
1
+ import type { GetSeriesWithDefaultValues } from '../../internals/plugins/models/seriesConfig';
2
+ declare const getSeriesWithDefaultValues: GetSeriesWithDefaultValues<'scatter'>;
3
+ export default getSeriesWithDefaultValues;
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.default = void 0;
8
+ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
9
+ const getSeriesWithDefaultValues = (seriesData, seriesIndex, colors) => {
10
+ return (0, _extends2.default)({
11
+ id: seriesData.id ?? `auto-generated-id-${seriesIndex}`,
12
+ color: colors[seriesIndex % colors.length]
13
+ }, seriesData);
14
+ };
15
+ var _default = exports.default = getSeriesWithDefaultValues;
@@ -10,11 +10,13 @@ var _seriesProcessor = _interopRequireDefault(require("./seriesProcessor"));
10
10
  var _getColor = _interopRequireDefault(require("./getColor"));
11
11
  var _legend = _interopRequireDefault(require("./legend"));
12
12
  var _tooltip = _interopRequireDefault(require("./tooltip"));
13
+ var _getSeriesWithDefaultValues = _interopRequireDefault(require("./getSeriesWithDefaultValues"));
13
14
  const seriesConfig = exports.seriesConfig = {
14
15
  seriesProcessor: _seriesProcessor.default,
15
16
  colorProcessor: _getColor.default,
16
17
  legendGetter: _legend.default,
17
18
  tooltipGetter: _tooltip.default,
18
19
  xExtremumGetter: _extremums.getExtremumX,
19
- yExtremumGetter: _extremums.getExtremumY
20
+ yExtremumGetter: _extremums.getExtremumY,
21
+ getSeriesWithDefaultValues: _getSeriesWithDefaultValues.default
20
22
  };
@@ -14,7 +14,7 @@ import { BarPlotSlots, BarPlotSlotProps } from "../BarChart/BarPlot.js";
14
14
  import { ChartMargin } from "../internals/plugins/corePlugins/useChartDimensions/useChartDimensions.types.js";
15
15
  export interface SparkLineChartSlots extends AreaPlotSlots, LinePlotSlots, MarkPlotSlots, LineHighlightPlotSlots, Omit<BarPlotSlots, 'barLabel'>, ChartsTooltipSlots {}
16
16
  export interface SparkLineChartSlotProps extends AreaPlotSlotProps, LinePlotSlotProps, MarkPlotSlotProps, LineHighlightPlotSlotProps, BarPlotSlotProps, ChartsTooltipSlotProps {}
17
- export interface SparkLineChartProps extends Omit<ChartContainerProps, 'series' | 'xAxis' | 'yAxis' | 'zAxis' | 'margin' | 'plugins' | 'colors'> {
17
+ export interface SparkLineChartProps extends Omit<ChartContainerProps, 'series' | 'xAxis' | 'yAxis' | 'zAxis' | 'radiusAxis' | 'rotationAxis' | 'margin' | 'plugins' | 'colors'> {
18
18
  /**
19
19
  * The xAxis configuration.
20
20
  * Notice it is a single [[AxisConfig]] object, not an array of configuration.
@@ -1,5 +1,7 @@
1
1
  export declare const DEFAULT_X_AXIS_KEY = "DEFAULT_X_AXIS_KEY";
2
2
  export declare const DEFAULT_Y_AXIS_KEY = "DEFAULT_Y_AXIS_KEY";
3
+ export declare const DEFAULT_ROTATION_AXIS_KEY = "DEFAULT_ROTATION_AXIS_KEY";
4
+ export declare const DEFAULT_RADIUS_AXIS_KEY = "DEFAULT_RADIUS_AXIS_KEY";
3
5
  export declare const DEFAULT_MARGINS: {
4
6
  top: number;
5
7
  bottom: number;
@@ -8,9 +10,4 @@ export declare const DEFAULT_MARGINS: {
8
10
  };
9
11
  export declare const DEFAULT_AXIS_SIZE_WIDTH = 30;
10
12
  export declare const DEFAULT_AXIS_SIZE_HEIGHT = 25;
11
- export declare const EMPTY_SIDES: {
12
- top: number;
13
- bottom: number;
14
- left: number;
15
- right: number;
16
- };
13
+ export declare const AXIS_LABEL_DEFAULT_HEIGHT = 20;
@@ -3,9 +3,11 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.EMPTY_SIDES = exports.DEFAULT_Y_AXIS_KEY = exports.DEFAULT_X_AXIS_KEY = exports.DEFAULT_MARGINS = exports.DEFAULT_AXIS_SIZE_WIDTH = exports.DEFAULT_AXIS_SIZE_HEIGHT = void 0;
6
+ exports.DEFAULT_Y_AXIS_KEY = exports.DEFAULT_X_AXIS_KEY = exports.DEFAULT_ROTATION_AXIS_KEY = exports.DEFAULT_RADIUS_AXIS_KEY = exports.DEFAULT_MARGINS = exports.DEFAULT_AXIS_SIZE_WIDTH = exports.DEFAULT_AXIS_SIZE_HEIGHT = exports.AXIS_LABEL_DEFAULT_HEIGHT = void 0;
7
7
  const DEFAULT_X_AXIS_KEY = exports.DEFAULT_X_AXIS_KEY = 'DEFAULT_X_AXIS_KEY';
8
8
  const DEFAULT_Y_AXIS_KEY = exports.DEFAULT_Y_AXIS_KEY = 'DEFAULT_Y_AXIS_KEY';
9
+ const DEFAULT_ROTATION_AXIS_KEY = exports.DEFAULT_ROTATION_AXIS_KEY = 'DEFAULT_ROTATION_AXIS_KEY';
10
+ const DEFAULT_RADIUS_AXIS_KEY = exports.DEFAULT_RADIUS_AXIS_KEY = 'DEFAULT_RADIUS_AXIS_KEY';
9
11
  const DEFAULT_MARGINS = exports.DEFAULT_MARGINS = {
10
12
  top: 20,
11
13
  bottom: 20,
@@ -14,9 +16,6 @@ const DEFAULT_MARGINS = exports.DEFAULT_MARGINS = {
14
16
  };
15
17
  const DEFAULT_AXIS_SIZE_WIDTH = exports.DEFAULT_AXIS_SIZE_WIDTH = 30;
16
18
  const DEFAULT_AXIS_SIZE_HEIGHT = exports.DEFAULT_AXIS_SIZE_HEIGHT = 25;
17
- const EMPTY_SIDES = exports.EMPTY_SIDES = {
18
- top: 0,
19
- bottom: 0,
20
- left: 0,
21
- right: 0
22
- };
19
+
20
+ // How many pixels to add to the default axis size if that axis has a label
21
+ const AXIS_LABEL_DEFAULT_HEIGHT = exports.AXIS_LABEL_DEFAULT_HEIGHT = 20;
@@ -79,7 +79,7 @@ const useAggregatedData = () => {
79
79
  const xAxisConfig = xAxis[xAxisId];
80
80
  const yAxisConfig = yAxis[yAxisId];
81
81
  const verticalLayout = series[seriesId].layout === 'vertical';
82
- checkScaleErrors(verticalLayout, seriesId, xAxisId, xAxis, yAxisId, yAxis);
82
+ checkScaleErrors(verticalLayout, seriesId, series[seriesId], xAxisId, xAxis, yAxisId, yAxis);
83
83
  const baseScaleConfig = verticalLayout ? xAxisConfig : yAxisConfig;
84
84
  const xScale = xAxisConfig.scale;
85
85
  const yScale = yAxisConfig.scale;
@@ -95,9 +95,12 @@ const useAggregatedData = () => {
95
95
  });
96
96
  const barOffset = groupIndex * (barWidth + offset);
97
97
  const {
98
- stackedData
98
+ stackedData,
99
+ data: currentSeriesData,
100
+ layout
99
101
  } = series[seriesId];
100
- return stackedData.map((values, dataIndex) => {
102
+ return baseScaleConfig.data.map((baseValue, dataIndex) => {
103
+ const values = stackedData[dataIndex];
101
104
  const valueCoordinates = values.map(v => verticalLayout ? yScale(v) : xScale(v));
102
105
  const minValueCoord = Math.round(Math.min(...valueCoordinates));
103
106
  const maxValueCoord = Math.round(Math.max(...valueCoordinates));
@@ -105,15 +108,15 @@ const useAggregatedData = () => {
105
108
  const result = {
106
109
  seriesId,
107
110
  dataIndex,
108
- layout: series[seriesId].layout,
109
- x: verticalLayout ? xScale(xAxis[xAxisId].data?.[dataIndex]) + barOffset : minValueCoord,
110
- y: verticalLayout ? minValueCoord : yScale(yAxis[yAxisId].data?.[dataIndex]) + barOffset,
111
+ layout,
112
+ x: verticalLayout ? xScale(baseValue) + barOffset : minValueCoord,
113
+ y: verticalLayout ? minValueCoord : yScale(baseValue) + barOffset,
111
114
  xOrigin: xScale(0),
112
115
  yOrigin: yScale(0),
113
116
  height: verticalLayout ? maxValueCoord - minValueCoord : barWidth,
114
117
  width: verticalLayout ? barWidth : maxValueCoord - minValueCoord,
115
118
  color: colorGetter(dataIndex),
116
- value: series[seriesId].data[dataIndex],
119
+ value: currentSeriesData[dataIndex],
117
120
  maskId: `${chartId}_${stackId || seriesId}_${groupIndex}_${dataIndex}`
118
121
  };
119
122
  if (result.x > xMax || result.x + result.width < xMin || result.y > yMax || result.y + result.height < yMin) {
@@ -1,6 +1,9 @@
1
1
  import { AxisDefaultized, AxisId } from "../models/axis.js";
2
+ import { DefaultizedBarSeriesType } from "../models/seriesType/bar.js";
2
3
  import { SeriesId } from "../models/seriesType/common.js";
3
- export declare function checkScaleErrors(verticalLayout: boolean, seriesId: SeriesId, xAxisId: AxisId, xAxis: {
4
+ export declare function checkScaleErrors(verticalLayout: boolean, seriesId: SeriesId, series: DefaultizedBarSeriesType & {
5
+ stackedData: [number, number][];
6
+ }, xAxisId: AxisId, xAxis: {
4
7
  [axisId: AxisId]: AxisDefaultized;
5
8
  }, yAxisId: AxisId, yAxis: {
6
9
  [axisId: AxisId]: AxisDefaultized;
@@ -1,3 +1,4 @@
1
+ import { warnOnce } from '@mui/x-internals/warning';
1
2
  import { DEFAULT_X_AXIS_KEY, DEFAULT_Y_AXIS_KEY } from "../constants/index.js";
2
3
  import { isBandScaleConfig, isPointScaleConfig } from "../models/axis.js";
3
4
  const getAxisMessage = (axisDirection, axisId) => {
@@ -6,7 +7,7 @@ const getAxisMessage = (axisDirection, axisId) => {
6
7
  const axisDefaultKey = axisDirection === 'x' ? DEFAULT_X_AXIS_KEY : DEFAULT_Y_AXIS_KEY;
7
8
  return axisId === axisDefaultKey ? `The first \`${axisIdName}\`` : `The ${axisName} with id "${axisId}"`;
8
9
  };
9
- export function checkScaleErrors(verticalLayout, seriesId, xAxisId, xAxis, yAxisId, yAxis) {
10
+ export function checkScaleErrors(verticalLayout, seriesId, series, xAxisId, xAxis, yAxisId, yAxis) {
10
11
  const xAxisConfig = xAxis[xAxisId];
11
12
  const yAxisConfig = yAxis[yAxisId];
12
13
  const discreteAxisConfig = verticalLayout ? xAxisConfig : yAxisConfig;
@@ -24,4 +25,9 @@ export function checkScaleErrors(verticalLayout, seriesId, xAxisId, xAxis, yAxis
24
25
  if (isBandScaleConfig(continuousAxisConfig) || isPointScaleConfig(continuousAxisConfig)) {
25
26
  throw new Error(`MUI X: ${getAxisMessage(continuousAxisDirection, continuousAxisId)} should be a continuous type to display the bar series of id "${seriesId}".`);
26
27
  }
28
+ if (process.env.NODE_ENV !== 'production') {
29
+ if (discreteAxisConfig.data.length < series.stackedData.length) {
30
+ warnOnce([`MUI X: ${getAxisMessage(discreteAxisDirection, discreteAxisId)} has less data (${discreteAxisConfig.data.length} values) than the bar series of id "${seriesId}" (${series.stackedData.length} values).`, 'The axis data should have at least the same length than the series using it.'], 'error');
31
+ }
32
+ }
27
33
  }
@@ -1,3 +1,3 @@
1
- import { CartesianExtremumGetter } from "../../internals/plugins/models/seriesConfig/extremumGetter.types.js";
1
+ import { CartesianExtremumGetter } from "../../internals/plugins/models/seriesConfig/index.js";
2
2
  export declare const getExtremumX: CartesianExtremumGetter<'bar'>;
3
3
  export declare const getExtremumY: CartesianExtremumGetter<'bar'>;
@@ -0,0 +1,3 @@
1
+ import type { GetSeriesWithDefaultValues } from '../../internals/plugins/models/seriesConfig';
2
+ declare const getSeriesWithDefaultValues: GetSeriesWithDefaultValues<'bar'>;
3
+ export default getSeriesWithDefaultValues;
@@ -0,0 +1,8 @@
1
+ import _extends from "@babel/runtime/helpers/esm/extends";
2
+ const getSeriesWithDefaultValues = (seriesData, seriesIndex, colors) => {
3
+ return _extends({
4
+ id: seriesData.id ?? `auto-generated-id-${seriesIndex}`,
5
+ color: colors[seriesIndex % colors.length]
6
+ }, seriesData);
7
+ };
8
+ export default getSeriesWithDefaultValues;
@@ -3,11 +3,13 @@ import seriesProcessor from "./seriesProcessor.js";
3
3
  import legendGetter from "./legend.js";
4
4
  import getColor from "./getColor.js";
5
5
  import tooltipGetter from "./tooltip.js";
6
+ import getSeriesWithDefaultValues from "./getSeriesWithDefaultValues.js";
6
7
  export const seriesConfig = {
7
8
  seriesProcessor,
8
9
  colorProcessor: getColor,
9
10
  legendGetter,
10
11
  tooltipGetter,
11
12
  xExtremumGetter: getExtremumX,
12
- yExtremumGetter: getExtremumY
13
+ yExtremumGetter: getExtremumY,
14
+ getSeriesWithDefaultValues
13
15
  };
@@ -3,7 +3,7 @@ import { ChartSeriesType } from "../models/seriesType/config.js";
3
3
  import { ChartDataProviderProps } from "../ChartDataProvider/index.js";
4
4
  import { ChartsSurfaceProps } from "../ChartsSurface/index.js";
5
5
  import { AllPluginSignatures } from "../internals/plugins/allPlugins.js";
6
- import { ChartAnyPluginSignature } from "../internals/plugins/models/index.js";
6
+ import { ChartAnyPluginSignature } from "../internals/plugins/models/plugin.js";
7
7
  export type ChartContainerProps<SeriesType extends ChartSeriesType = ChartSeriesType, TSignatures extends readonly ChartAnyPluginSignature[] = AllPluginSignatures<SeriesType>> = Omit<ChartDataProviderProps<SeriesType, TSignatures>, 'children'> & ChartsSurfaceProps;
8
8
  /**
9
9
  * It sets up the data providers as well as the `<svg>` for the chart.
@@ -125,6 +125,113 @@ process.env.NODE_ENV !== "production" ? ChartContainer.propTypes = {
125
125
  * @param {ScatterItemIdentifier} scatterItemIdentifier Identify which item got clicked
126
126
  */
127
127
  onItemClick: PropTypes.func,
128
+ /**
129
+ * The configuration of the radial-axes.
130
+ * If not provided, a default axis config is used.
131
+ * An array of [[AxisConfig]] objects.
132
+ */
133
+ radiusAxis: PropTypes.arrayOf(PropTypes.shape({
134
+ classes: PropTypes.object,
135
+ colorMap: PropTypes.oneOfType([PropTypes.shape({
136
+ color: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.string.isRequired), PropTypes.func]).isRequired,
137
+ max: PropTypes.oneOfType([PropTypes.instanceOf(Date), PropTypes.number]),
138
+ min: PropTypes.oneOfType([PropTypes.instanceOf(Date), PropTypes.number]),
139
+ type: PropTypes.oneOf(['continuous']).isRequired
140
+ }), PropTypes.shape({
141
+ colors: PropTypes.arrayOf(PropTypes.string).isRequired,
142
+ thresholds: PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.instanceOf(Date), PropTypes.number]).isRequired).isRequired,
143
+ type: PropTypes.oneOf(['piecewise']).isRequired
144
+ })]),
145
+ data: PropTypes.array,
146
+ dataKey: PropTypes.string,
147
+ disableLine: PropTypes.bool,
148
+ disableTicks: PropTypes.bool,
149
+ domainLimit: PropTypes.oneOfType([PropTypes.oneOf(['nice', 'strict']), PropTypes.func]),
150
+ fill: PropTypes.string,
151
+ height: PropTypes.number,
152
+ hideTooltip: PropTypes.bool,
153
+ id: PropTypes.oneOfType([PropTypes.number, PropTypes.string]).isRequired,
154
+ label: PropTypes.string,
155
+ labelStyle: PropTypes.object,
156
+ max: PropTypes.oneOfType([PropTypes.instanceOf(Date), PropTypes.number]),
157
+ maxRadius: PropTypes.number,
158
+ min: PropTypes.oneOfType([PropTypes.instanceOf(Date), PropTypes.number]),
159
+ minRadius: PropTypes.number,
160
+ offset: PropTypes.number,
161
+ position: PropTypes.oneOf(['bottom', 'none', 'top']),
162
+ reverse: PropTypes.bool,
163
+ scaleType: PropTypes.oneOf(['linear']),
164
+ slotProps: PropTypes.object,
165
+ slots: PropTypes.object,
166
+ stroke: PropTypes.string,
167
+ sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),
168
+ tickInterval: PropTypes.oneOfType([PropTypes.oneOf(['auto']), PropTypes.array, PropTypes.func]),
169
+ tickLabelInterval: PropTypes.oneOfType([PropTypes.oneOf(['auto']), PropTypes.func]),
170
+ tickLabelPlacement: PropTypes.oneOf(['middle', 'tick']),
171
+ tickLabelStyle: PropTypes.object,
172
+ tickMaxStep: PropTypes.number,
173
+ tickMinStep: PropTypes.number,
174
+ tickNumber: PropTypes.number,
175
+ tickPlacement: PropTypes.oneOf(['end', 'extremities', 'middle', 'start']),
176
+ tickSize: PropTypes.number,
177
+ valueFormatter: PropTypes.func
178
+ })),
179
+ /**
180
+ * The configuration of the rotation-axes.
181
+ * If not provided, a default axis config is used.
182
+ * An array of [[AxisConfig]] objects.
183
+ */
184
+ rotationAxis: PropTypes.arrayOf(PropTypes.shape({
185
+ classes: PropTypes.object,
186
+ colorMap: PropTypes.oneOfType([PropTypes.shape({
187
+ colors: PropTypes.arrayOf(PropTypes.string).isRequired,
188
+ type: PropTypes.oneOf(['ordinal']).isRequired,
189
+ unknownColor: PropTypes.string,
190
+ values: PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.instanceOf(Date), PropTypes.number, PropTypes.string]).isRequired)
191
+ }), PropTypes.shape({
192
+ color: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.string.isRequired), PropTypes.func]).isRequired,
193
+ max: PropTypes.oneOfType([PropTypes.instanceOf(Date), PropTypes.number]),
194
+ min: PropTypes.oneOfType([PropTypes.instanceOf(Date), PropTypes.number]),
195
+ type: PropTypes.oneOf(['continuous']).isRequired
196
+ }), PropTypes.shape({
197
+ colors: PropTypes.arrayOf(PropTypes.string).isRequired,
198
+ thresholds: PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.instanceOf(Date), PropTypes.number]).isRequired).isRequired,
199
+ type: PropTypes.oneOf(['piecewise']).isRequired
200
+ })]),
201
+ data: PropTypes.array,
202
+ dataKey: PropTypes.string,
203
+ disableLine: PropTypes.bool,
204
+ disableTicks: PropTypes.bool,
205
+ domainLimit: PropTypes.oneOfType([PropTypes.oneOf(['nice', 'strict']), PropTypes.func]),
206
+ endAngle: PropTypes.number,
207
+ fill: PropTypes.string,
208
+ height: PropTypes.number,
209
+ hideTooltip: PropTypes.bool,
210
+ id: PropTypes.oneOfType([PropTypes.number, PropTypes.string]).isRequired,
211
+ label: PropTypes.string,
212
+ labelStyle: PropTypes.object,
213
+ max: PropTypes.oneOfType([PropTypes.instanceOf(Date), PropTypes.number]),
214
+ min: PropTypes.oneOfType([PropTypes.instanceOf(Date), PropTypes.number]),
215
+ offset: PropTypes.number,
216
+ position: PropTypes.oneOf(['bottom', 'none', 'top']),
217
+ reverse: PropTypes.bool,
218
+ scaleType: PropTypes.oneOf(['band', 'linear', 'log', 'point', 'pow', 'sqrt', 'time', 'utc']),
219
+ slotProps: PropTypes.object,
220
+ slots: PropTypes.object,
221
+ startAngle: PropTypes.number,
222
+ stroke: PropTypes.string,
223
+ sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),
224
+ tickInterval: PropTypes.oneOfType([PropTypes.oneOf(['auto']), PropTypes.array, PropTypes.func]),
225
+ tickLabelInterval: PropTypes.oneOfType([PropTypes.oneOf(['auto']), PropTypes.func]),
226
+ tickLabelPlacement: PropTypes.oneOf(['middle', 'tick']),
227
+ tickLabelStyle: PropTypes.object,
228
+ tickMaxStep: PropTypes.number,
229
+ tickMinStep: PropTypes.number,
230
+ tickNumber: PropTypes.number,
231
+ tickPlacement: PropTypes.oneOf(['end', 'extremities', 'middle', 'start']),
232
+ tickSize: PropTypes.number,
233
+ valueFormatter: PropTypes.func
234
+ })),
128
235
  /**
129
236
  * The array of series to display.
130
237
  * Each type of series has its own specificity.
@@ -12,4 +12,4 @@ export type UseChartContainerPropsReturnValue<TSeries extends ChartSeriesType, T
12
12
  };
13
13
  children: React.ReactNode;
14
14
  };
15
- export declare const useChartContainerProps: <TSeries extends ChartSeriesType = keyof import("../internals").ChartsSeriesConfig, TSignatures extends readonly ChartAnyPluginSignature[] = AllPluginSignatures<TSeries>>(props: ChartContainerProps<TSeries, TSignatures>, ref: React.Ref<SVGSVGElement>) => UseChartContainerPropsReturnValue<TSeries, TSignatures>;
15
+ export declare const useChartContainerProps: <TSeries extends ChartSeriesType = ChartSeriesType, TSignatures extends readonly ChartAnyPluginSignature[] = AllPluginSignatures<TSeries>>(props: ChartContainerProps<TSeries, TSignatures>, ref: React.Ref<SVGSVGElement>) => UseChartContainerPropsReturnValue<TSeries, TSignatures>;
@@ -2,7 +2,7 @@
2
2
 
3
3
  import _extends from "@babel/runtime/helpers/esm/extends";
4
4
  import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
5
- const _excluded = ["width", "height", "margin", "children", "series", "colors", "dataset", "desc", "onAxisClick", "disableVoronoi", "voronoiMaxRadius", "onItemClick", "disableAxisListener", "highlightedItem", "onHighlightChange", "sx", "title", "xAxis", "yAxis", "zAxis", "skipAnimation", "seriesConfig", "plugins"];
5
+ const _excluded = ["width", "height", "margin", "children", "series", "colors", "dataset", "desc", "onAxisClick", "disableVoronoi", "voronoiMaxRadius", "onItemClick", "disableAxisListener", "highlightedItem", "onHighlightChange", "sx", "title", "xAxis", "yAxis", "zAxis", "rotationAxis", "radiusAxis", "skipAnimation", "seriesConfig", "plugins"];
6
6
  import { ALL_PLUGINS } from "../internals/plugins/allPlugins.js";
7
7
  export const useChartContainerProps = (props, ref) => {
8
8
  const _ref = props,
@@ -27,6 +27,8 @@ export const useChartContainerProps = (props, ref) => {
27
27
  xAxis,
28
28
  yAxis,
29
29
  zAxis,
30
+ rotationAxis,
31
+ radiusAxis,
30
32
  skipAnimation,
31
33
  seriesConfig,
32
34
  plugins
@@ -43,6 +45,7 @@ export const useChartContainerProps = (props, ref) => {
43
45
  series,
44
46
  colors,
45
47
  dataset,
48
+ disableAxisListener,
46
49
  highlightedItem,
47
50
  onHighlightChange,
48
51
  onAxisClick,
@@ -52,10 +55,11 @@ export const useChartContainerProps = (props, ref) => {
52
55
  xAxis,
53
56
  yAxis,
54
57
  zAxis,
58
+ rotationAxis,
59
+ radiusAxis,
55
60
  skipAnimation,
56
61
  width,
57
62
  height,
58
- disableAxisListener,
59
63
  seriesConfig,
60
64
  plugins: plugins ?? ALL_PLUGINS
61
65
  };
@@ -4,7 +4,7 @@ import { ChartProviderProps } from "../context/ChartProvider/index.js";
4
4
  import { ChartAnyPluginSignature } from "../internals/plugins/models/index.js";
5
5
  import { ChartSeriesType } from "../models/seriesType/config.js";
6
6
  import { AllPluginSignatures } from "../internals/plugins/allPlugins.js";
7
- export declare const useChartDataProviderProps: <TSeries extends ChartSeriesType = keyof import("../internals").ChartsSeriesConfig, TSignatures extends readonly ChartAnyPluginSignature[] = AllPluginSignatures<TSeries>>(props: ChartDataProviderProps<TSeries, TSignatures>) => {
7
+ export declare const useChartDataProviderProps: <TSeries extends ChartSeriesType = ChartSeriesType, TSignatures extends readonly ChartAnyPluginSignature[] = AllPluginSignatures<TSeries>>(props: ChartDataProviderProps<TSeries, TSignatures>) => {
8
8
  children: import("react").ReactNode;
9
9
  animationProviderProps: Omit<AnimationProviderProps, "children">;
10
10
  chartProviderProps: Omit<ChartProviderProps<TSeries, TSignatures>, "children">;
@@ -8,6 +8,9 @@ import PropTypes from 'prop-types';
8
8
  import useSlotProps from '@mui/utils/useSlotProps';
9
9
  import composeClasses from '@mui/utils/composeClasses';
10
10
  import { useThemeProps, useTheme, styled } from '@mui/material/styles';
11
+ import { useRtl } from '@mui/system/RtlProvider';
12
+ import { clampAngle } from "../internals/clampAngle.js";
13
+ import { getStringSize } from "../internals/domUtils.js";
11
14
  import { useTicks } from "../hooks/useTicks.js";
12
15
  import { getAxisUtilityClass } from "../ChartsAxis/axisClasses.js";
13
16
  import { AxisRoot } from "../internals/components/AxisSharedComponents.js";
@@ -20,6 +23,7 @@ import { isInfinity } from "../internals/isInfinity.js";
20
23
  import { isBandScale } from "../internals/isBandScale.js";
21
24
  import { useChartContext } from "../context/ChartProvider/useChartContext.js";
22
25
  import { useXAxes } from "../hooks/useAxis.js";
26
+ import { invertTextAnchor } from "../internals/invertTextAnchor.js";
23
27
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
24
28
  const useUtilityClasses = ownerState => {
25
29
  const {
@@ -99,6 +103,26 @@ function getVisibleLabels(xTicks, {
99
103
  return true;
100
104
  }));
101
105
  }
106
+ function getDefaultTextAnchor(angle) {
107
+ const adjustedAngle = clampAngle(angle);
108
+ if (adjustedAngle === 0 || adjustedAngle === 180) {
109
+ return 'middle';
110
+ }
111
+ if (adjustedAngle < 180) {
112
+ return 'start';
113
+ }
114
+ return 'end';
115
+ }
116
+ function getDefaultBaseline(angle, position) {
117
+ const adjustedAngle = clampAngle(angle);
118
+ if (adjustedAngle === 0) {
119
+ return position === 'bottom' ? 'hanging' : 'auto';
120
+ }
121
+ if (adjustedAngle === 180) {
122
+ return position === 'bottom' ? 'auto' : 'hanging';
123
+ }
124
+ return 'central';
125
+ }
102
126
  const XAxisRoot = styled(AxisRoot, {
103
127
  name: 'MuiChartsXAxis',
104
128
  slot: 'Root',
@@ -155,9 +179,11 @@ function ChartsXAxis(inProps) {
155
179
  tickLabelPlacement,
156
180
  tickLabelMinGap,
157
181
  sx,
158
- offset
182
+ offset,
183
+ height: axisHeight
159
184
  } = defaultizedProps;
160
185
  const theme = useTheme();
186
+ const isRtl = useRtl();
161
187
  const classes = useUtilityClasses(defaultizedProps);
162
188
  const {
163
189
  left,
@@ -174,14 +200,16 @@ function ChartsXAxis(inProps) {
174
200
  const Tick = slots?.axisTick ?? 'line';
175
201
  const TickLabel = slots?.axisTickLabel ?? ChartsText;
176
202
  const Label = slots?.axisLabel ?? ChartsText;
203
+ const defaultTextAnchor = getDefaultTextAnchor(tickLabelStyle?.angle ?? 0);
204
+ const shouldInvertTextAnchor = isRtl && position !== 'top' || !isRtl && position === 'top';
177
205
  const axisTickLabelProps = useSlotProps({
178
206
  elementType: TickLabel,
179
207
  externalSlotProps: slotProps?.axisTickLabel,
180
208
  additionalProps: {
181
209
  style: _extends({}, theme.typography.caption, {
182
210
  fontSize: 12,
183
- textAnchor: 'middle',
184
- dominantBaseline: position === 'bottom' ? 'hanging' : 'auto'
211
+ textAnchor: shouldInvertTextAnchor ? invertTextAnchor(defaultTextAnchor) : defaultTextAnchor,
212
+ dominantBaseline: getDefaultBaseline(tickLabelStyle?.angle ?? 0, position)
185
213
  }, tickLabelStyle)
186
214
  },
187
215
  className: classes.tickLabel,
@@ -208,15 +236,12 @@ function ChartsXAxis(inProps) {
208
236
  direction: 'x'
209
237
  })
210
238
  });
211
- const labelRefPoint = {
212
- x: left + width / 2,
213
- y: positionSign * (tickSize + 22)
214
- };
215
239
  const axisLabelProps = useSlotProps({
216
240
  elementType: Label,
217
241
  externalSlotProps: slotProps?.axisLabel,
218
242
  additionalProps: {
219
- style: _extends({
243
+ style: _extends({}, theme.typography.body1, {
244
+ lineHeight: 1,
220
245
  fontSize: 14,
221
246
  textAnchor: 'middle',
222
247
  dominantBaseline: position === 'bottom' ? 'hanging' : 'auto'
@@ -233,6 +258,11 @@ function ChartsXAxis(inProps) {
233
258
  if (ordinalAxis && domain.length === 0 || !ordinalAxis && domain.some(isInfinity) || position === 'none') {
234
259
  return null;
235
260
  }
261
+ const labelHeight = label ? getStringSize(label, axisLabelProps.style).height : 0;
262
+ const labelRefPoint = {
263
+ x: left + width / 2,
264
+ y: positionSign * (axisHeight - labelHeight)
265
+ };
236
266
  return /*#__PURE__*/_jsxs(XAxisRoot, {
237
267
  transform: `translate(0, ${position === 'bottom' ? top + height + offset : top - offset})`,
238
268
  className: classes.root,
@@ -7,8 +7,9 @@ import * as React from 'react';
7
7
  import PropTypes from 'prop-types';
8
8
  import useSlotProps from '@mui/utils/useSlotProps';
9
9
  import composeClasses from '@mui/utils/composeClasses';
10
- import { useThemeProps, styled } from '@mui/material/styles';
10
+ import { useThemeProps, styled, useTheme } from '@mui/material/styles';
11
11
  import { useRtl } from '@mui/system/RtlProvider';
12
+ import { getStringSize } from "../internals/domUtils.js";
12
13
  import { useTicks } from "../hooks/useTicks.js";
13
14
  import { useDrawingArea } from "../hooks/useDrawingArea.js";
14
15
  import { AxisRoot } from "../internals/components/AxisSharedComponents.js";
@@ -86,8 +87,10 @@ function ChartsYAxis(inProps) {
86
87
  tickInterval,
87
88
  tickLabelInterval,
88
89
  sx,
89
- offset
90
+ offset,
91
+ width: axisWidth
90
92
  } = defaultizedProps;
93
+ const theme = useTheme();
91
94
  const isRtl = useRtl();
92
95
  const classes = useUtilityClasses(defaultizedProps);
93
96
  const {
@@ -110,10 +113,6 @@ function ChartsYAxis(inProps) {
110
113
  });
111
114
  const positionSign = position === 'right' ? 1 : -1;
112
115
  const tickFontSize = typeof tickLabelStyle?.fontSize === 'number' ? tickLabelStyle.fontSize : 12;
113
- const labelRefPoint = {
114
- x: positionSign * (tickFontSize + tickSize + 10),
115
- y: top + height / 2
116
- };
117
116
  const Line = slots?.axisLine ?? 'line';
118
117
  const Tick = slots?.axisTick ?? 'line';
119
118
  const TickLabel = slots?.axisTickLabel ?? ChartsText;
@@ -123,7 +122,7 @@ function ChartsYAxis(inProps) {
123
122
  elementType: TickLabel,
124
123
  externalSlotProps: slotProps?.axisTickLabel,
125
124
  additionalProps: {
126
- style: _extends({
125
+ style: _extends({}, theme.typography.caption, {
127
126
  fontSize: tickFontSize,
128
127
  textAnchor: revertAnchor ? 'start' : 'end',
129
128
  dominantBaseline: 'central'
@@ -136,7 +135,8 @@ function ChartsYAxis(inProps) {
136
135
  elementType: Label,
137
136
  externalSlotProps: slotProps?.axisLabel,
138
137
  additionalProps: {
139
- style: _extends({
138
+ style: _extends({}, theme.typography.body1, {
139
+ lineHeight: 1,
140
140
  fontSize: 14,
141
141
  angle: positionSign * 90,
142
142
  textAnchor: 'middle',
@@ -163,6 +163,11 @@ function ChartsYAxis(inProps) {
163
163
  if (ordinalAxis && domain.length === 0 || !ordinalAxis && domain.some(isInfinity) || position === 'none') {
164
164
  return null;
165
165
  }
166
+ const labelHeight = label ? getStringSize(label, axisLabelProps.style).height : 0;
167
+ const labelRefPoint = {
168
+ x: positionSign * (axisWidth - labelHeight),
169
+ y: top + height / 2
170
+ };
166
171
  return /*#__PURE__*/_jsxs(YAxisRoot, {
167
172
  transform: `translate(${position === 'right' ? left + width + offset : left - offset}, 0)`,
168
173
  className: classes.root,