@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
@@ -31,7 +31,7 @@ export declare const selectorChartsInteractionIsInitialized: ((state: import("..
31
31
  };
32
32
  export declare const selectorChartsInteractionItem: ((state: import("../../corePlugins/useChartId/useChartId.types").UseChartIdState & import("../../corePlugins/useChartDimensions/useChartDimensions.types").UseChartDimensionsState & import("../../corePlugins/useChartSeries/useChartSeries.types").UseChartSeriesState<keyof import("../../..").ChartsSeriesConfig> & Partial<import("./useChartInteraction.types").UseChartInteractionState> & {
33
33
  cacheKey: import("../../models").ChartStateCacheKey;
34
- }) => import("../../../..").ScatterItemIdentifier | import("../../../..").LineItemIdentifier | import("../../../..").BarItemIdentifier | import("../../../..").PieItemIdentifier | null) & {
34
+ }) => import("../../../..").ScatterItemIdentifier | import("../../../..").LineItemIdentifier | import("../../../..").BarItemIdentifier | import("../../../..").PieItemIdentifier | import("../../../..").RadarItemIdentifier | null) & {
35
35
  clearCache: () => void;
36
36
  resultsCount: () => number;
37
37
  resetResultsCount: () => void;
@@ -39,16 +39,16 @@ export declare const selectorChartsInteractionItem: ((state: import("../../coreP
39
39
  resultFunc: (resultFuncArgs_0: {
40
40
  item: null | import("../../..").ChartItemIdentifier<import("../../..").ChartSeriesType>;
41
41
  axis: AxisInteractionData;
42
- } | undefined) => import("../../../..").ScatterItemIdentifier | import("../../../..").LineItemIdentifier | import("../../../..").BarItemIdentifier | import("../../../..").PieItemIdentifier | null;
42
+ } | undefined) => import("../../../..").ScatterItemIdentifier | import("../../../..").LineItemIdentifier | import("../../../..").BarItemIdentifier | import("../../../..").PieItemIdentifier | import("../../../..").RadarItemIdentifier | null;
43
43
  memoizedResultFunc: ((resultFuncArgs_0: {
44
44
  item: null | import("../../..").ChartItemIdentifier<import("../../..").ChartSeriesType>;
45
45
  axis: AxisInteractionData;
46
- } | undefined) => import("../../../..").ScatterItemIdentifier | import("../../../..").LineItemIdentifier | import("../../../..").BarItemIdentifier | import("../../../..").PieItemIdentifier | null) & {
46
+ } | undefined) => import("../../../..").ScatterItemIdentifier | import("../../../..").LineItemIdentifier | import("../../../..").BarItemIdentifier | import("../../../..").PieItemIdentifier | import("../../../..").RadarItemIdentifier | null) & {
47
47
  clearCache: () => void;
48
48
  resultsCount: () => number;
49
49
  resetResultsCount: () => void;
50
50
  };
51
- lastResult: () => import("../../../..").ScatterItemIdentifier | import("../../../..").LineItemIdentifier | import("../../../..").BarItemIdentifier | import("../../../..").PieItemIdentifier | null;
51
+ lastResult: () => import("../../../..").ScatterItemIdentifier | import("../../../..").LineItemIdentifier | import("../../../..").BarItemIdentifier | import("../../../..").PieItemIdentifier | import("../../../..").RadarItemIdentifier | null;
52
52
  dependencies: [ChartOptionalRootSelector<UseChartInteractionSignature>];
53
53
  recomputations: () => number;
54
54
  resetRecomputations: () => void;
@@ -220,8 +220,8 @@ export declare const selectorChartsInteractionItemIsDefined: ((state: import("..
220
220
  resultsCount: () => number;
221
221
  resetResultsCount: () => void;
222
222
  } & {
223
- resultFunc: (resultFuncArgs_0: import("../../../..").ScatterItemIdentifier | import("../../../..").LineItemIdentifier | import("../../../..").BarItemIdentifier | import("../../../..").PieItemIdentifier | null) => boolean;
224
- memoizedResultFunc: ((resultFuncArgs_0: import("../../../..").ScatterItemIdentifier | import("../../../..").LineItemIdentifier | import("../../../..").BarItemIdentifier | import("../../../..").PieItemIdentifier | null) => boolean) & {
223
+ resultFunc: (resultFuncArgs_0: import("../../../..").ScatterItemIdentifier | import("../../../..").LineItemIdentifier | import("../../../..").BarItemIdentifier | import("../../../..").PieItemIdentifier | import("../../../..").RadarItemIdentifier | null) => boolean;
224
+ memoizedResultFunc: ((resultFuncArgs_0: import("../../../..").ScatterItemIdentifier | import("../../../..").LineItemIdentifier | import("../../../..").BarItemIdentifier | import("../../../..").PieItemIdentifier | import("../../../..").RadarItemIdentifier | null) => boolean) & {
225
225
  clearCache: () => void;
226
226
  resultsCount: () => number;
227
227
  resetResultsCount: () => void;
@@ -229,7 +229,7 @@ export declare const selectorChartsInteractionItemIsDefined: ((state: import("..
229
229
  lastResult: () => boolean;
230
230
  dependencies: [((state: import("../../corePlugins/useChartId/useChartId.types").UseChartIdState & import("../../corePlugins/useChartDimensions/useChartDimensions.types").UseChartDimensionsState & import("../../corePlugins/useChartSeries/useChartSeries.types").UseChartSeriesState<keyof import("../../..").ChartsSeriesConfig> & Partial<import("./useChartInteraction.types").UseChartInteractionState> & {
231
231
  cacheKey: import("../../models").ChartStateCacheKey;
232
- }) => import("../../../..").ScatterItemIdentifier | import("../../../..").LineItemIdentifier | import("../../../..").BarItemIdentifier | import("../../../..").PieItemIdentifier | null) & {
232
+ }) => import("../../../..").ScatterItemIdentifier | import("../../../..").LineItemIdentifier | import("../../../..").BarItemIdentifier | import("../../../..").PieItemIdentifier | import("../../../..").RadarItemIdentifier | null) & {
233
233
  clearCache: () => void;
234
234
  resultsCount: () => number;
235
235
  resetResultsCount: () => void;
@@ -237,16 +237,16 @@ export declare const selectorChartsInteractionItemIsDefined: ((state: import("..
237
237
  resultFunc: (resultFuncArgs_0: {
238
238
  item: null | import("../../..").ChartItemIdentifier<import("../../..").ChartSeriesType>;
239
239
  axis: AxisInteractionData;
240
- } | undefined) => import("../../../..").ScatterItemIdentifier | import("../../../..").LineItemIdentifier | import("../../../..").BarItemIdentifier | import("../../../..").PieItemIdentifier | null;
240
+ } | undefined) => import("../../../..").ScatterItemIdentifier | import("../../../..").LineItemIdentifier | import("../../../..").BarItemIdentifier | import("../../../..").PieItemIdentifier | import("../../../..").RadarItemIdentifier | null;
241
241
  memoizedResultFunc: ((resultFuncArgs_0: {
242
242
  item: null | import("../../..").ChartItemIdentifier<import("../../..").ChartSeriesType>;
243
243
  axis: AxisInteractionData;
244
- } | undefined) => import("../../../..").ScatterItemIdentifier | import("../../../..").LineItemIdentifier | import("../../../..").BarItemIdentifier | import("../../../..").PieItemIdentifier | null) & {
244
+ } | undefined) => import("../../../..").ScatterItemIdentifier | import("../../../..").LineItemIdentifier | import("../../../..").BarItemIdentifier | import("../../../..").PieItemIdentifier | import("../../../..").RadarItemIdentifier | null) & {
245
245
  clearCache: () => void;
246
246
  resultsCount: () => number;
247
247
  resetResultsCount: () => void;
248
248
  };
249
- lastResult: () => import("../../../..").ScatterItemIdentifier | import("../../../..").LineItemIdentifier | import("../../../..").BarItemIdentifier | import("../../../..").PieItemIdentifier | null;
249
+ lastResult: () => import("../../../..").ScatterItemIdentifier | import("../../../..").LineItemIdentifier | import("../../../..").BarItemIdentifier | import("../../../..").PieItemIdentifier | import("../../../..").RadarItemIdentifier | null;
250
250
  dependencies: [ChartOptionalRootSelector<UseChartInteractionSignature>];
251
251
  recomputations: () => number;
252
252
  resetRecomputations: () => void;
@@ -0,0 +1,27 @@
1
+ import { AxisConfig, ScaleName } from "../../../../models/index.js";
2
+ import { ChartsAxisProps, ChartsYAxisProps, ChartsRotationAxisProps, ChartsRadiusAxisProps, PolarAxisDefaultized, AxisId } from "../../../../models/axis.js";
3
+ import { ChartSeriesType } from "../../../../models/seriesType/config.js";
4
+ import type { ChartDrawingArea } from '../../../../hooks';
5
+ import { ChartSeriesConfig } from "../../models/seriesConfig/index.js";
6
+ import { ProcessedSeries } from "../../corePlugins/useChartSeries/useChartSeries.types.js";
7
+ export type DefaultizedAxisConfig<AxisProps extends ChartsRotationAxisProps | ChartsRadiusAxisProps> = {
8
+ [axisId: AxisId]: PolarAxisDefaultized<ScaleName, any, AxisProps>;
9
+ };
10
+ type ComputeResult<T extends ChartsAxisProps> = {
11
+ axis: DefaultizedAxisConfig<T>;
12
+ axisIds: string[];
13
+ };
14
+ type ComputeCommonParams<T extends ChartSeriesType = ChartSeriesType> = {
15
+ drawingArea: ChartDrawingArea;
16
+ formattedSeries: ProcessedSeries<T>;
17
+ seriesConfig: ChartSeriesConfig<T>;
18
+ };
19
+ export declare function computeAxisValue<T extends ChartSeriesType>(options: ComputeCommonParams<T> & {
20
+ axis?: AxisConfig<'linear', any, ChartsRadiusAxisProps>[];
21
+ axisDirection: 'radius';
22
+ }): ComputeResult<ChartsYAxisProps>;
23
+ export declare function computeAxisValue<T extends ChartSeriesType>(options: ComputeCommonParams<T> & {
24
+ axis?: AxisConfig<ScaleName, any, ChartsRotationAxisProps>[];
25
+ axisDirection: 'rotation';
26
+ }): ComputeResult<ChartsAxisProps>;
27
+ export {};
@@ -0,0 +1,133 @@
1
+ import _extends from "@babel/runtime/helpers/esm/extends";
2
+ import { scaleBand, scalePoint, scaleTime } from '@mui/x-charts-vendor/d3-scale';
3
+ import { isBandScaleConfig, isPointScaleConfig } from "../../../../models/axis.js";
4
+ import { getColorScale, getOrdinalColorScale } from "../../../colorScale.js";
5
+ import { getTickNumber } from "../../../../hooks/useTicks.js";
6
+ import { getScale } from "../../../getScale.js";
7
+ import { getAxisExtremum } from "./getAxisExtremum.js";
8
+ const degreeToRad = (value, defaultRad) => {
9
+ if (value === undefined) {
10
+ return defaultRad;
11
+ }
12
+ return Math.PI * value / 180;
13
+ };
14
+ function getRange(drawingArea, axisDirection, axis) {
15
+ if (axisDirection === 'rotation') {
16
+ if (axis.scaleType === 'point') {
17
+ const angles = [degreeToRad(axis.startAngle, 0), degreeToRad(axis.endAngle, 2 * Math.PI)];
18
+ const diff = angles[1] - angles[0];
19
+ if (diff > Math.PI * 2 - 0.1) {
20
+ // If we cover a full circle, we remove a slice to avoid having data point at the same place.
21
+ angles[1] -= diff / axis.data.length;
22
+ }
23
+ return angles;
24
+ }
25
+ return [degreeToRad(axis.startAngle, 0), degreeToRad(axis.endAngle, 2 * Math.PI)];
26
+ }
27
+ return [0, Math.min(drawingArea.height, drawingArea.width) / 2];
28
+ }
29
+ const isDateData = data => data?.[0] instanceof Date;
30
+ function createDateFormatter(axis, range) {
31
+ const timeScale = scaleTime(axis.data, range);
32
+ return (v, {
33
+ location
34
+ }) => location === 'tick' ? timeScale.tickFormat(axis.tickNumber)(v) : `${v.toLocaleString()}`;
35
+ }
36
+ const DEFAULT_CATEGORY_GAP_RATIO = 0.2;
37
+ const DEFAULT_BAR_GAP_RATIO = 0.1;
38
+ export function computeAxisValue({
39
+ drawingArea,
40
+ formattedSeries,
41
+ axis: allAxis,
42
+ seriesConfig,
43
+ axisDirection
44
+ }) {
45
+ if (allAxis === undefined) {
46
+ return {
47
+ axis: {},
48
+ axisIds: []
49
+ };
50
+ }
51
+ const completeAxis = {};
52
+ allAxis.forEach((eachAxis, axisIndex) => {
53
+ const axis = eachAxis;
54
+ const range = getRange(drawingArea, axisDirection, axis);
55
+ const [minData, maxData] = getAxisExtremum(axis, axisDirection, seriesConfig, axisIndex, formattedSeries);
56
+ const data = axis.data ?? [];
57
+ if (isBandScaleConfig(axis)) {
58
+ const categoryGapRatio = axis.categoryGapRatio ?? DEFAULT_CATEGORY_GAP_RATIO;
59
+ const barGapRatio = axis.barGapRatio ?? DEFAULT_BAR_GAP_RATIO;
60
+ completeAxis[axis.id] = _extends({
61
+ offset: 0,
62
+ categoryGapRatio,
63
+ barGapRatio
64
+ }, axis, {
65
+ data,
66
+ scale: scaleBand(axis.data, range).paddingInner(categoryGapRatio).paddingOuter(categoryGapRatio / 2),
67
+ tickNumber: axis.data.length,
68
+ colorScale: axis.colorMap && (axis.colorMap.type === 'ordinal' ? getOrdinalColorScale(_extends({
69
+ values: axis.data
70
+ }, axis.colorMap)) : getColorScale(axis.colorMap))
71
+ });
72
+ if (isDateData(axis.data)) {
73
+ const dateFormatter = createDateFormatter(axis, range);
74
+ completeAxis[axis.id].valueFormatter = axis.valueFormatter ?? dateFormatter;
75
+ }
76
+ }
77
+ if (isPointScaleConfig(axis)) {
78
+ completeAxis[axis.id] = _extends({
79
+ offset: 0
80
+ }, axis, {
81
+ data,
82
+ scale: scalePoint(axis.data, range),
83
+ tickNumber: axis.data.length,
84
+ colorScale: axis.colorMap && (axis.colorMap.type === 'ordinal' ? getOrdinalColorScale(_extends({
85
+ values: axis.data
86
+ }, axis.colorMap)) : getColorScale(axis.colorMap))
87
+ });
88
+ if (isDateData(axis.data)) {
89
+ const dateFormatter = createDateFormatter(axis, range);
90
+ completeAxis[axis.id].valueFormatter = axis.valueFormatter ?? dateFormatter;
91
+ }
92
+ }
93
+ if (axis.scaleType === 'band' || axis.scaleType === 'point') {
94
+ // Could be merged with the two previous "if conditions" but then TS does not get that `axis.scaleType` can't be `band` or `point`.
95
+ return;
96
+ }
97
+ const scaleType = axis.scaleType ?? 'linear';
98
+ const domainLimit = axis.domainLimit ?? 'nice';
99
+ const axisExtremums = [axis.min ?? minData, axis.max ?? maxData];
100
+ if (typeof domainLimit === 'function') {
101
+ const {
102
+ min,
103
+ max
104
+ } = domainLimit(minData, maxData);
105
+ axisExtremums[0] = min;
106
+ axisExtremums[1] = max;
107
+ }
108
+ const rawTickNumber = getTickNumber(_extends({}, axis, {
109
+ range,
110
+ domain: axisExtremums
111
+ }));
112
+ const tickNumber = rawTickNumber / ((range[1] - range[0]) / 100);
113
+ const scale = getScale(scaleType, axisExtremums, range);
114
+ const finalScale = domainLimit === 'nice' ? scale.nice(rawTickNumber) : scale;
115
+ const [minDomain, maxDomain] = finalScale.domain();
116
+ const domain = [axis.min ?? minDomain, axis.max ?? maxDomain];
117
+ completeAxis[axis.id] = _extends({
118
+ offset: 0
119
+ }, axis, {
120
+ data,
121
+ scaleType: scaleType,
122
+ scale: finalScale.domain(domain),
123
+ tickNumber,
124
+ colorScale: axis.colorMap && getColorScale(axis.colorMap)
125
+ });
126
+ });
127
+ return {
128
+ axis: completeAxis,
129
+ axisIds: allAxis.map(({
130
+ id
131
+ }) => id)
132
+ };
133
+ }
@@ -0,0 +1,5 @@
1
+ import { MakeOptional } from '@mui/x-internals/types';
2
+ import { ScaleName } from "../../../../models/index.js";
3
+ import { PolarAxisConfig } from "../../../../models/axis.js";
4
+ import { DatasetType } from "../../../../models/seriesType/config.js";
5
+ export declare function defaultizeAxis<TScale extends ScaleName = ScaleName>(inAxis: MakeOptional<PolarAxisConfig<TScale, any>, 'id'>[] | undefined, dataset: Readonly<DatasetType> | undefined, axisName: 'rotation' | 'radius'): PolarAxisConfig<TScale, any>[];
@@ -0,0 +1,24 @@
1
+ import _extends from "@babel/runtime/helpers/esm/extends";
2
+ import { DEFAULT_ROTATION_AXIS_KEY } from "../../../../constants/index.js";
3
+ export function defaultizeAxis(inAxis, dataset, axisName) {
4
+ const DEFAULT_AXIS_KEY = axisName === 'rotation' ? DEFAULT_ROTATION_AXIS_KEY : 5;
5
+ const inputAxes = inAxis && inAxis.length > 0 ? inAxis : [{
6
+ id: DEFAULT_AXIS_KEY
7
+ }];
8
+ return inputAxes.map((axisConfig, index) => {
9
+ const id = `defaultized-${axisName}-axis-${index}`;
10
+ const dataKey = axisConfig.dataKey;
11
+ if (dataKey === undefined || axisConfig.data !== undefined) {
12
+ return _extends({
13
+ id
14
+ }, axisConfig);
15
+ }
16
+ if (dataset === undefined) {
17
+ throw new Error(`MUI X: ${axisName}-axis uses \`dataKey\` but no \`dataset\` is provided.`);
18
+ }
19
+ return _extends({
20
+ id,
21
+ data: dataset.map(d => d[dataKey])
22
+ }, axisConfig);
23
+ });
24
+ }
@@ -0,0 +1,5 @@
1
+ import { AxisConfig } from "../../../../models/axis.js";
2
+ import { PolarChartSeriesType } from "../../../../models/seriesType/config.js";
3
+ import { ChartSeriesConfig } from "../../models/seriesConfig/index.js";
4
+ import { ProcessedSeries } from "../../corePlugins/useChartSeries/useChartSeries.types.js";
5
+ export declare const getAxisExtremum: <TSeriesType extends PolarChartSeriesType>(axis: AxisConfig, axisDirection: "rotation" | "radius", seriesConfig: ChartSeriesConfig<TSeriesType>, axisIndex: number, formattedSeries: ProcessedSeries<TSeriesType>) => number[];
@@ -0,0 +1,21 @@
1
+ import { isPolarSeriesType } from "../../../isPolar.js";
2
+ const axisExtremumCallback = (acc, chartType, axis, axisDirection, seriesConfig, axisIndex, formattedSeries) => {
3
+ const getter = axisDirection === 'rotation' ? seriesConfig[chartType].rotationExtremumGetter : seriesConfig[chartType].radiusExtremumGetter;
4
+ const series = formattedSeries[chartType]?.series ?? {};
5
+ const [minChartTypeData, maxChartTypeData] = getter?.({
6
+ series,
7
+ axis,
8
+ axisIndex,
9
+ isDefaultAxis: axisIndex === 0
10
+ }) ?? [Infinity, -Infinity];
11
+ const [minData, maxData] = acc;
12
+ return [Math.min(minChartTypeData, minData), Math.max(maxChartTypeData, maxData)];
13
+ };
14
+ export const getAxisExtremum = (axis, axisDirection, seriesConfig, axisIndex, formattedSeries) => {
15
+ const polarSeriesTypes = Object.keys(seriesConfig).filter(isPolarSeriesType);
16
+ const extremums = polarSeriesTypes.reduce((acc, charType) => axisExtremumCallback(acc, charType, axis, axisDirection, seriesConfig, axisIndex, formattedSeries), [Infinity, -Infinity]);
17
+ if (Number.isNaN(extremums[0]) || Number.isNaN(extremums[1])) {
18
+ return [Infinity, -Infinity];
19
+ }
20
+ return extremums;
21
+ };
@@ -0,0 +1,3 @@
1
+ export { useChartPolarAxis } from "./useChartPolarAxis.js";
2
+ export type * from './useChartPolarAxis.types';
3
+ export * from "./useChartPolarAxis.selectors.js";
@@ -0,0 +1,2 @@
1
+ export { useChartPolarAxis } from "./useChartPolarAxis.js";
2
+ export * from "./useChartPolarAxis.selectors.js";
@@ -0,0 +1,3 @@
1
+ import { ChartPlugin } from "../../models/index.js";
2
+ import { UseChartPolarAxisSignature } from "./useChartPolarAxis.types.js";
3
+ export declare const useChartPolarAxis: ChartPlugin<UseChartPolarAxisSignature<any>>;
@@ -0,0 +1,57 @@
1
+ 'use client';
2
+
3
+ import _extends from "@babel/runtime/helpers/esm/extends";
4
+ import * as React from 'react';
5
+ import { warnOnce } from '@mui/x-internals/warning';
6
+ import { useSelector } from "../../../store/useSelector.js";
7
+ import { selectorChartDrawingArea } from "../../corePlugins/useChartDimensions/useChartDimensions.selectors.js";
8
+ import { selectorChartSeriesState } from "../../corePlugins/useChartSeries/useChartSeries.selectors.js";
9
+ import { defaultizeAxis } from "./defaultizeAxis.js";
10
+ export const useChartPolarAxis = ({
11
+ params,
12
+ store,
13
+ seriesConfig
14
+ }) => {
15
+ const {
16
+ rotationAxis,
17
+ radiusAxis,
18
+ dataset
19
+ } = params;
20
+ if (process.env.NODE_ENV !== 'production') {
21
+ const ids = [...(rotationAxis ?? []), ...(radiusAxis ?? [])].filter(axis => axis.id).map(axis => axis.id);
22
+ const duplicates = new Set(ids.filter((id, index) => ids.indexOf(id) !== index));
23
+ if (duplicates.size > 0) {
24
+ warnOnce([`MUI X: The following axis ids are duplicated: ${Array.from(duplicates).join(', ')}.`, `Please make sure that each axis has a unique id.`].join('\n'), 'error');
25
+ }
26
+ }
27
+ const drawingArea = useSelector(store, selectorChartDrawingArea);
28
+ const formattedSeries = useSelector(store, selectorChartSeriesState);
29
+
30
+ // The effect do not track any value defined synchronously during the 1st render by hooks called after `useChartPolarAxis`
31
+ // As a consequence, the state generated by the 1st run of this useEffect will always be equal to the initialization one
32
+ const isFirstRender = React.useRef(true);
33
+ React.useEffect(() => {
34
+ if (isFirstRender.current) {
35
+ isFirstRender.current = false;
36
+ return;
37
+ }
38
+ store.update(prev => _extends({}, prev, {
39
+ polarAxis: _extends({}, prev.polarAxis, {
40
+ rotation: defaultizeAxis(rotationAxis, dataset, 'rotation'),
41
+ radius: defaultizeAxis(radiusAxis, dataset, 'radius')
42
+ })
43
+ }));
44
+ }, [seriesConfig, drawingArea, formattedSeries, rotationAxis, radiusAxis, dataset, store]);
45
+ return {};
46
+ };
47
+ useChartPolarAxis.params = {
48
+ rotationAxis: true,
49
+ radiusAxis: true,
50
+ dataset: true
51
+ };
52
+ useChartPolarAxis.getInitialState = params => ({
53
+ polarAxis: {
54
+ rotation: defaultizeAxis(params.rotationAxis, params.dataset, 'rotation'),
55
+ radius: defaultizeAxis(params.radiusAxis, params.dataset, 'radius')
56
+ }
57
+ });