@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,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;
@@ -0,0 +1,2 @@
1
+ import { ChartSeriesTypeConfig } from "../../internals/plugins/models/seriesConfig/index.js";
2
+ export declare const radarSeriesConfig: ChartSeriesTypeConfig<'radar'>;
@@ -0,0 +1,15 @@
1
+ import formatter from "./formatter.js";
2
+ import getColor from "./getColor.js";
3
+ import { radiusExtremumGetter, rotationExtremumGetter } from "./extremums.js";
4
+ import legendGetter from "./legend.js";
5
+ import tooltipGetter from "./tooltip.js";
6
+ import getSeriesWithDefaultValues from "./getSeriesWithDefaultValues.js";
7
+ export const radarSeriesConfig = {
8
+ colorProcessor: getColor,
9
+ seriesProcessor: formatter,
10
+ legendGetter,
11
+ tooltipGetter,
12
+ getSeriesWithDefaultValues,
13
+ radiusExtremumGetter,
14
+ rotationExtremumGetter
15
+ };
@@ -0,0 +1,3 @@
1
+ import { LegendGetter } from "../../internals/plugins/models/seriesConfig/index.js";
2
+ declare const legendGetter: LegendGetter<'radar'>;
3
+ export default legendGetter;
@@ -0,0 +1,22 @@
1
+ import { getLabel } from "../../internals/getLabel.js";
2
+ const legendGetter = params => {
3
+ const {
4
+ seriesOrder,
5
+ series
6
+ } = params;
7
+ return seriesOrder.reduce((acc, seriesId) => {
8
+ const formattedLabel = getLabel(series[seriesId].label, 'legend');
9
+ if (formattedLabel === undefined) {
10
+ return acc;
11
+ }
12
+ acc.push({
13
+ id: seriesId,
14
+ seriesId,
15
+ color: series[seriesId].color,
16
+ label: formattedLabel,
17
+ markType: series[seriesId].labelMarkType ?? 'square'
18
+ });
19
+ return acc;
20
+ }, []);
21
+ };
22
+ export default legendGetter;
@@ -0,0 +1,3 @@
1
+ import type { TooltipGetter } from '../../internals/plugins/models';
2
+ declare const tooltipGetter: TooltipGetter<'radar'>;
3
+ export default tooltipGetter;
@@ -0,0 +1,25 @@
1
+ import { getLabel } from "../../internals/getLabel.js";
2
+ const tooltipGetter = params => {
3
+ const {
4
+ series,
5
+ getColor,
6
+ identifier
7
+ } = params;
8
+ if (!identifier || identifier.dataIndex === undefined) {
9
+ return null;
10
+ }
11
+ const label = getLabel(series.label, 'tooltip');
12
+ const value = series.data[identifier.dataIndex];
13
+ const formattedValue = series.valueFormatter(value, {
14
+ dataIndex: identifier.dataIndex
15
+ });
16
+ return {
17
+ identifier,
18
+ color: getColor(identifier.dataIndex),
19
+ label,
20
+ value,
21
+ formattedValue,
22
+ markType: series.labelMarkType
23
+ };
24
+ };
25
+ export default tooltipGetter;
@@ -0,0 +1,23 @@
1
+ import type { RadarChartProps } from './RadarChart';
2
+ import { ChartsOverlayProps } from "../ChartsOverlay/index.js";
3
+ import { ChartsLegendSlotExtension } from "../ChartsLegend/index.js";
4
+ import type { ChartsWrapperProps } from '../internals/components/ChartsWrapper';
5
+ import { RadarDataProviderProps } from "./RadarDataProvider/RadarDataProvider.js";
6
+ import { ChartsSurfaceProps } from "../ChartsSurface/index.js";
7
+ import { RadarGridProps } from "./RadarGrid/RadarGrid.js";
8
+ /**
9
+ * A helper function that extracts RadarChartProps from the input props
10
+ * and returns an object with props for the children components of RadarChart.
11
+ *
12
+ * @param props The input props for RadarChart
13
+ * @returns An object with props for the children components of RadarChart
14
+ */
15
+ export declare const useRadarChartProps: (props: RadarChartProps) => {
16
+ chartsWrapperProps: Omit<ChartsWrapperProps, "children">;
17
+ chartsSurfaceProps: ChartsSurfaceProps;
18
+ radarDataProviderProps: RadarDataProviderProps;
19
+ radarGrid: RadarGridProps;
20
+ overlayProps: ChartsOverlayProps;
21
+ legendProps: ChartsLegendSlotExtension;
22
+ children: import("react").ReactNode;
23
+ };
@@ -0,0 +1,67 @@
1
+ 'use client';
2
+
3
+ import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
4
+ const _excluded = ["series", "radar", "width", "height", "margin", "colors", "sx", "children", "slots", "slotProps", "skipAnimation", "loading", "highlightedItem", "onHighlightChange", "hideLegend", "divisions"];
5
+ /**
6
+ * A helper function that extracts RadarChartProps from the input props
7
+ * and returns an object with props for the children components of RadarChart.
8
+ *
9
+ * @param props The input props for RadarChart
10
+ * @returns An object with props for the children components of RadarChart
11
+ */
12
+ export const useRadarChartProps = props => {
13
+ const {
14
+ series,
15
+ radar,
16
+ width,
17
+ height,
18
+ margin,
19
+ colors,
20
+ sx,
21
+ children,
22
+ slots,
23
+ slotProps,
24
+ skipAnimation,
25
+ loading,
26
+ highlightedItem,
27
+ onHighlightChange,
28
+ divisions
29
+ } = props,
30
+ other = _objectWithoutPropertiesLoose(props, _excluded);
31
+ const radarDataProviderProps = {
32
+ series,
33
+ radar,
34
+ width,
35
+ height,
36
+ margin,
37
+ colors,
38
+ highlightedItem,
39
+ onHighlightChange,
40
+ skipAnimation
41
+ };
42
+ const overlayProps = {
43
+ slots,
44
+ slotProps,
45
+ loading
46
+ };
47
+ const legendProps = {
48
+ slots,
49
+ slotProps
50
+ };
51
+ const chartsWrapperProps = {
52
+ sx
53
+ };
54
+ const radarGrid = {
55
+ divisions
56
+ };
57
+ const chartsSurfaceProps = other;
58
+ return {
59
+ chartsWrapperProps,
60
+ chartsSurfaceProps,
61
+ radarDataProviderProps,
62
+ radarGrid,
63
+ overlayProps,
64
+ legendProps,
65
+ children
66
+ };
67
+ };
@@ -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,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 getColor from "./getColor.js";
4
4
  import legendGetter from "./legend.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
  };
@@ -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;
@@ -1,5 +1,7 @@
1
1
  export const DEFAULT_X_AXIS_KEY = 'DEFAULT_X_AXIS_KEY';
2
2
  export const DEFAULT_Y_AXIS_KEY = 'DEFAULT_Y_AXIS_KEY';
3
+ export const DEFAULT_ROTATION_AXIS_KEY = 'DEFAULT_ROTATION_AXIS_KEY';
4
+ export const DEFAULT_RADIUS_AXIS_KEY = 'DEFAULT_RADIUS_AXIS_KEY';
3
5
  export const DEFAULT_MARGINS = {
4
6
  top: 20,
5
7
  bottom: 20,
@@ -8,9 +10,6 @@ export const DEFAULT_MARGINS = {
8
10
  };
9
11
  export const DEFAULT_AXIS_SIZE_WIDTH = 30;
10
12
  export const DEFAULT_AXIS_SIZE_HEIGHT = 25;
11
- export const EMPTY_SIDES = {
12
- top: 0,
13
- bottom: 0,
14
- left: 0,
15
- right: 0
16
- };
13
+
14
+ // How many pixels to add to the default axis size if that axis has a label
15
+ export const AXIS_LABEL_DEFAULT_HEIGHT = 20;
@@ -38,4 +38,14 @@ export declare function useXAxis(axisId?: AxisId): import("../internals").AxisDe
38
38
  * @param {AxisId | undefined} axisId - If provided returns the y axis with axisId, else returns the values for the default y axis.
39
39
  * @returns The Y axis.
40
40
  */
41
- export declare function useYAxis(axisId?: AxisId): import("../internals").AxisDefaultized<keyof import("../internals").AxisScaleConfig, any, import("..").ChartsYAxisProps>;
41
+ export declare function useYAxis(axisId?: AxisId): import("../internals").AxisDefaultized<keyof import("../internals").AxisScaleConfig, any, import("..").ChartsYAxisProps>;
42
+ export declare function useRotationAxes(): {
43
+ rotationAxis: import("../internals/plugins/featurePlugins/useChartPolarAxis/computeAxisValue").DefaultizedAxisConfig<import("../internals").ChartsAxisProps>;
44
+ rotationAxisIds: string[];
45
+ };
46
+ export declare function useRadiusAxes(): {
47
+ radiusAxis: import("../internals/plugins/featurePlugins/useChartPolarAxis/computeAxisValue").DefaultizedAxisConfig<import("..").ChartsYAxisProps>;
48
+ radiusAxisIds: string[];
49
+ };
50
+ export declare function useRotationAxis(identifier?: number | string): import("../internals").PolarAxisDefaultized<keyof import("../internals").AxisScaleConfig, any, import("../internals").ChartsAxisProps>;
51
+ export declare function useRadiusAxis(identifier?: number | string): import("../internals").PolarAxisDefaultized<keyof import("../internals").AxisScaleConfig, any, import("..").ChartsYAxisProps>;
@@ -1,6 +1,7 @@
1
1
  'use client';
2
2
 
3
3
  import { selectorChartXAxis, selectorChartYAxis } from "../internals/plugins/featurePlugins/useChartCartesianAxis/useChartCartesianAxisRendering.selectors.js";
4
+ import { selectorChartRadiusAxis, selectorChartRotationAxis } from "../internals/plugins/featurePlugins/useChartPolarAxis/index.js";
4
5
  import { useSelector } from "../internals/store/useSelector.js";
5
6
  import { useStore } from "../internals/store/useStore.js";
6
7
  /**
@@ -75,4 +76,44 @@ export function useYAxis(axisId) {
75
76
  } = useSelector(store, selectorChartYAxis);
76
77
  const id = axisId ?? yAxisIds[0];
77
78
  return yAxis[id];
79
+ }
80
+ export function useRotationAxes() {
81
+ const store = useStore();
82
+ const {
83
+ axis: rotationAxis,
84
+ axisIds: rotationAxisIds
85
+ } = useSelector(store, selectorChartRotationAxis);
86
+ return {
87
+ rotationAxis,
88
+ rotationAxisIds
89
+ };
90
+ }
91
+ export function useRadiusAxes() {
92
+ const store = useStore();
93
+ const {
94
+ axis: radiusAxis,
95
+ axisIds: radiusAxisIds
96
+ } = useSelector(store, selectorChartRadiusAxis);
97
+ return {
98
+ radiusAxis,
99
+ radiusAxisIds
100
+ };
101
+ }
102
+ export function useRotationAxis(identifier) {
103
+ const store = useStore();
104
+ const {
105
+ axis: rotationAxis,
106
+ axisIds: rotationAxisIds
107
+ } = useSelector(store, selectorChartRotationAxis);
108
+ const id = typeof identifier === 'string' ? identifier : rotationAxisIds[identifier ?? 0];
109
+ return rotationAxis[id];
110
+ }
111
+ export function useRadiusAxis(identifier) {
112
+ const store = useStore();
113
+ const {
114
+ axis: radiusAxis,
115
+ axisIds: radiusAxisIds
116
+ } = useSelector(store, selectorChartRadiusAxis);
117
+ const id = typeof identifier === 'string' ? identifier : radiusAxisIds[identifier ?? 0];
118
+ return radiusAxis[id];
78
119
  }
@@ -0,0 +1,35 @@
1
+ import { ProcessedSeries } from "../internals/plugins/corePlugins/useChartSeries/useChartSeries.types.js";
2
+ import { SeriesId } from "../models/seriesType/common.js";
3
+ import { ChartSeriesDefaultized } from "../models/seriesType/config.js";
4
+ export type UseRadarSeriesReturnValue = ChartSeriesDefaultized<'radar'>;
5
+ export type UseRadarSeriesContextReturnValue = ProcessedSeries['radar'];
6
+ /**
7
+ * Get access to the internal state of radar series.
8
+ *
9
+ * @param {SeriesId} seriesId The id of the series to get.
10
+ * @returns {UseRadarSeriesReturnValue} the radar series
11
+ */
12
+ export declare function useRadarSeries(seriesId: SeriesId): UseRadarSeriesReturnValue | undefined;
13
+ /**
14
+ * Get access to the internal state of radar series.
15
+ *
16
+ * When called without arguments, it returns all radar series.
17
+ *
18
+ * @returns {UseRadarSeriesReturnValue[]} the radar series
19
+ */
20
+ export declare function useRadarSeries(): UseRadarSeriesReturnValue[];
21
+ /**
22
+ * Get access to the internal state of radar series.
23
+ *
24
+ * @param {SeriesId[]} seriesIds The ids of the series to get. Order is preserved.
25
+ * @returns {UseRadarSeriesReturnValue[]} the radar series
26
+ */
27
+ export declare function useRadarSeries(seriesIds?: SeriesId[]): UseRadarSeriesReturnValue[];
28
+ /**
29
+ * Get access to the internal state of radar series.
30
+ * The returned object contains:
31
+ * - series: a mapping from ids to series attributes.
32
+ * - seriesOrder: the array of series ids.
33
+ * @returns the radar series
34
+ */
35
+ export declare function useRadarSeriesContext(): UseRadarSeriesContextReturnValue;
@@ -0,0 +1,42 @@
1
+ 'use client';
2
+
3
+ import { createSeriesSelectorsOfType, createAllSeriesSelectorOfType } from "../internals/createSeriesSelectorOfType.js";
4
+ const useSelectorSeries = createSeriesSelectorsOfType('radar');
5
+ const useSelectorSeriesContext = createAllSeriesSelectorOfType('radar');
6
+
7
+ /**
8
+ * Get access to the internal state of radar series.
9
+ *
10
+ * @param {SeriesId} seriesId The id of the series to get.
11
+ * @returns {UseRadarSeriesReturnValue} the radar series
12
+ */
13
+
14
+ /**
15
+ * Get access to the internal state of radar series.
16
+ *
17
+ * When called without arguments, it returns all radar series.
18
+ *
19
+ * @returns {UseRadarSeriesReturnValue[]} the radar series
20
+ */
21
+
22
+ /**
23
+ * Get access to the internal state of radar series.
24
+ *
25
+ * @param {SeriesId[]} seriesIds The ids of the series to get. Order is preserved.
26
+ * @returns {UseRadarSeriesReturnValue[]} the radar series
27
+ */
28
+
29
+ export function useRadarSeries(seriesIds) {
30
+ return useSelectorSeries(seriesIds);
31
+ }
32
+
33
+ /**
34
+ * Get access to the internal state of radar series.
35
+ * The returned object contains:
36
+ * - series: a mapping from ids to series attributes.
37
+ * - seriesOrder: the array of series ids.
38
+ * @returns the radar series
39
+ */
40
+ export function useRadarSeriesContext() {
41
+ return useSelectorSeriesContext();
42
+ }
@@ -19,4 +19,6 @@ export declare function useXScale<S extends ScaleName>(axisId?: AxisId): AxisSca
19
19
  * @param {AxisId | undefined} axisId - If provided returns the scale for the y axis with axisId, else returns the values for the default y axis.
20
20
  * @returns {AxisScaleConfig[S]['scale']} The scale for the specified Y axis.
21
21
  */
22
- export declare function useYScale<S extends ScaleName>(axisId?: AxisId): AxisScaleConfig[S]['scale'];
22
+ export declare function useYScale<S extends ScaleName>(axisId?: AxisId): AxisScaleConfig[S]['scale'];
23
+ export declare function useRotationScale<S extends ScaleName>(identifier?: number | string): AxisScaleConfig[S]['scale'];
24
+ export declare function useRadiusScale<S extends ScaleName>(identifier?: number | string): AxisScaleConfig[S]['scale'];
@@ -1,7 +1,7 @@
1
1
  'use client';
2
2
 
3
3
  import { isBandScale } from "../internals/isBandScale.js";
4
- import { useXAxis, useYAxis } from "./useAxis.js";
4
+ import { useRadiusAxis, useRotationAxis, useXAxis, useYAxis } from "./useAxis.js";
5
5
 
6
6
  /**
7
7
  * For a given scale return a function that map value to their position.
@@ -36,4 +36,12 @@ export function useXScale(axisId) {
36
36
  export function useYScale(axisId) {
37
37
  const axis = useYAxis(axisId);
38
38
  return axis.scale;
39
+ }
40
+ export function useRotationScale(identifier) {
41
+ const axis = useRotationAxis(identifier);
42
+ return axis.scale;
43
+ }
44
+ export function useRadiusScale(identifier) {
45
+ const axis = useRadiusAxis(identifier);
46
+ return axis.scale;
39
47
  }
@@ -29,12 +29,13 @@ export function useTicks(options) {
29
29
  valueFormatter,
30
30
  tickInterval,
31
31
  tickPlacement = 'extremities',
32
- tickLabelPlacement = 'middle'
32
+ tickLabelPlacement: tickLabelPlacementProp
33
33
  } = options;
34
34
  return React.useMemo(() => {
35
35
  // band scale
36
36
  if (isBandScale(scale)) {
37
37
  const domain = scale.domain();
38
+ const tickLabelPlacement = tickLabelPlacementProp ?? 'middle';
38
39
  if (scale.bandwidth() > 0) {
39
40
  // scale type = 'band'
40
41
  const filteredDomain = typeof tickInterval === 'function' && domain.filter(tickInterval) || typeof tickInterval === 'object' && tickInterval || domain;
@@ -71,15 +72,20 @@ export function useTicks(options) {
71
72
  if (domain.some(isInfinity)) {
72
73
  return [];
73
74
  }
75
+ const tickLabelPlacement = tickLabelPlacementProp;
74
76
  const ticks = typeof tickInterval === 'object' ? tickInterval : scale.ticks(tickNumber);
75
- return ticks.map(value => ({
76
- value,
77
- formattedValue: valueFormatter?.(value, {
78
- location: 'tick',
79
- scale
80
- }) ?? scale.tickFormat(tickNumber)(value),
81
- offset: scale(value),
82
- labelOffset: 0
83
- }));
84
- }, [scale, tickInterval, tickNumber, valueFormatter, tickPlacement, tickLabelPlacement]);
77
+ return ticks.map((value, i) => {
78
+ return {
79
+ value,
80
+ formattedValue: valueFormatter?.(value, {
81
+ location: 'tick',
82
+ scale
83
+ }) ?? scale.tickFormat(tickNumber)(value),
84
+ offset: scale(value),
85
+ // Allowing the label to be placed in the middle of a continuous scale is weird.
86
+ // But it is useful in some cases, like funnel categories with a linear scale.
87
+ labelOffset: tickLabelPlacement === 'middle' ? scale(ticks[i - 1] ?? 0) - (scale(value) + scale(ticks[i - 1] ?? 0)) / 2 : 0
88
+ };
89
+ });
90
+ }, [scale, tickInterval, tickNumber, valueFormatter, tickPlacement, tickLabelPlacementProp]);
85
91
  }
package/modern/index.d.ts CHANGED
@@ -20,6 +20,7 @@ export * from "./PieChart/index.js";
20
20
  export * from "./ScatterChart/index.js";
21
21
  export * from "./SparkLineChart/index.js";
22
22
  export * from "./Gauge/index.js";
23
+ export * from "./RadarChart/index.js";
23
24
  export * from "./ChartsSurface/index.js";
24
25
  export * from "./ChartContainer/index.js";
25
26
  export * from "./ChartDataProvider/index.js";
package/modern/index.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @mui/x-charts v8.0.0-alpha.13
2
+ * @mui/x-charts v8.0.0-alpha.14
3
3
  *
4
4
  * @license MIT
5
5
  * This source code is licensed under the MIT license found in the
@@ -27,6 +27,7 @@ export * from "./PieChart/index.js";
27
27
  export * from "./ScatterChart/index.js";
28
28
  export * from "./SparkLineChart/index.js";
29
29
  export * from "./Gauge/index.js";
30
+ export * from "./RadarChart/index.js";
30
31
  export * from "./ChartsSurface/index.js";
31
32
  export * from "./ChartContainer/index.js";
32
33
  export * from "./ChartDataProvider/index.js";
@@ -0,0 +1,2 @@
1
+ /** Clamp angle to [0, 360[. */
2
+ export declare function clampAngle(angle: number): number;
@@ -0,0 +1,4 @@
1
+ /** Clamp angle to [0, 360[. */
2
+ export function clampAngle(angle) {
3
+ return (angle % 360 + 360) % 360;
4
+ }
@@ -11,9 +11,9 @@ export const AxisRoot = styled('g', {
11
11
  [`& .${axisClasses.tickLabel}`]: _extends({}, theme.typography.caption, {
12
12
  fill: (theme.vars || theme).palette.text.primary
13
13
  }),
14
- [`& .${axisClasses.label}`]: _extends({}, theme.typography.body1, {
14
+ [`& .${axisClasses.label}`]: {
15
15
  fill: (theme.vars || theme).palette.text.primary
16
- }),
16
+ },
17
17
  [`& .${axisClasses.line}`]: {
18
18
  stroke: (theme.vars || theme).palette.text.primary,
19
19
  shapeRendering: 'crispEdges',
@@ -1,9 +1,16 @@
1
- import { ChartSeriesType } from "../models/seriesType/config.js";
1
+ import { CartesianChartSeriesType, PolarChartSeriesType } from "../models/seriesType/config.js";
2
2
  declare class CartesianSeriesTypes {
3
- types: Set<ChartSeriesType>;
3
+ types: Set<CartesianChartSeriesType>;
4
4
  constructor();
5
- addType(value: ChartSeriesType): void;
6
- getTypes(): Set<keyof import(".").ChartsSeriesConfig>;
5
+ addType(value: CartesianChartSeriesType): void;
6
+ getTypes(): Set<"line" | "scatter" | "bar">;
7
+ }
8
+ declare class PolarSeriesTypes {
9
+ types: Set<PolarChartSeriesType>;
10
+ constructor();
11
+ addType(value: PolarChartSeriesType): void;
12
+ getTypes(): Set<"radar">;
7
13
  }
8
14
  export declare const cartesianSeriesTypes: CartesianSeriesTypes;
15
+ export declare const polarSeriesTypes: PolarSeriesTypes;
9
16
  export {};
@@ -1,11 +1,27 @@
1
- let instance;
1
+ let cartesianInstance;
2
+ let polarInstance;
2
3
  class CartesianSeriesTypes {
3
4
  constructor() {
4
5
  this.types = new Set();
5
- if (instance) {
6
+ if (cartesianInstance) {
6
7
  throw new Error('You can only create one instance!');
7
8
  }
8
- instance = this.types;
9
+ cartesianInstance = this.types;
10
+ }
11
+ addType(value) {
12
+ this.types.add(value);
13
+ }
14
+ getTypes() {
15
+ return this.types;
16
+ }
17
+ }
18
+ class PolarSeriesTypes {
19
+ constructor() {
20
+ this.types = new Set();
21
+ if (polarInstance) {
22
+ throw new Error('You can only create one instance!');
23
+ }
24
+ polarInstance = this.types;
9
25
  }
10
26
  addType(value) {
11
27
  this.types.add(value);
@@ -17,4 +33,6 @@ class CartesianSeriesTypes {
17
33
  export const cartesianSeriesTypes = new CartesianSeriesTypes();
18
34
  cartesianSeriesTypes.addType('bar');
19
35
  cartesianSeriesTypes.addType('line');
20
- cartesianSeriesTypes.addType('scatter');
36
+ cartesianSeriesTypes.addType('scatter');
37
+ export const polarSeriesTypes = new PolarSeriesTypes();
38
+ polarSeriesTypes.addType('radar');
@@ -15,6 +15,7 @@ export * from "./plugins/corePlugins/useChartSeries/index.js";
15
15
  export * from "./plugins/corePlugins/useChartDimensions/index.js";
16
16
  export * from "./plugins/featurePlugins/useChartZAxis/index.js";
17
17
  export * from "./plugins/featurePlugins/useChartCartesianAxis/index.js";
18
+ export * from "./plugins/featurePlugins/useChartPolarAxis/index.js";
18
19
  export * from "./plugins/featurePlugins/useChartInteraction/index.js";
19
20
  export * from "./plugins/featurePlugins/useChartHighlight/index.js";
20
21
  export * from "./plugins/featurePlugins/useChartVoronoi/index.js";
@@ -32,7 +33,11 @@ export * from "./getSVGPoint.js";
32
33
  export * from "./isDefined.js";
33
34
  export { unstable_cleanupDOM } from "./domUtils.js";
34
35
  export * from "./getScale.js";
36
+ export * from "./stackSeries.js";
35
37
  export * from "./getCurve.js";
38
+ export * from "./consumeSlots.js";
39
+ export * from "./consumeThemeProps.js";
40
+ export * from "./defaultizeMargin.js";
36
41
  export * from "../context/AnimationProvider/index.js";
37
42
  export type * from '../context/context.types';
38
43
  export { getAxisExtremum } from "./plugins/featurePlugins/useChartCartesianAxis/getAxisExtremum.js";
@@ -20,6 +20,7 @@ export * from "./plugins/corePlugins/useChartSeries/index.js";
20
20
  export * from "./plugins/corePlugins/useChartDimensions/index.js";
21
21
  export * from "./plugins/featurePlugins/useChartZAxis/index.js";
22
22
  export * from "./plugins/featurePlugins/useChartCartesianAxis/index.js";
23
+ export * from "./plugins/featurePlugins/useChartPolarAxis/index.js";
23
24
  export * from "./plugins/featurePlugins/useChartInteraction/index.js";
24
25
  export * from "./plugins/featurePlugins/useChartHighlight/index.js";
25
26
  export * from "./plugins/featurePlugins/useChartVoronoi/index.js";
@@ -42,7 +43,11 @@ export * from "./getSVGPoint.js";
42
43
  export * from "./isDefined.js";
43
44
  export { unstable_cleanupDOM } from "./domUtils.js";
44
45
  export * from "./getScale.js";
46
+ export * from "./stackSeries.js";
45
47
  export * from "./getCurve.js";
48
+ export * from "./consumeSlots.js";
49
+ export * from "./consumeThemeProps.js";
50
+ export * from "./defaultizeMargin.js";
46
51
 
47
52
  // contexts
48
53
 
@@ -0,0 +1,2 @@
1
+ import { ChartsTextStyle } from "../ChartsText/index.js";
2
+ export declare function invertTextAnchor(textAnchor: ChartsTextStyle['textAnchor']): ChartsTextStyle['textAnchor'];