@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,162 @@
1
+ 'use client';
2
+
3
+ import _extends from "@babel/runtime/helpers/esm/extends";
4
+ import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
5
+ const _excluded = ["series", "children", "width", "height", "colors", "highlightedItem", "onHighlightChange", "className", "skipAnimation", "margin", "radar"];
6
+ import * as React from 'react';
7
+ import PropTypes from 'prop-types';
8
+ import { ChartDataProvider } from "../../ChartDataProvider/index.js";
9
+ import { defaultizeMargin } from "../../internals/defaultizeMargin.js";
10
+ import { useChartPolarAxis } from "../../internals/plugins/featurePlugins/useChartPolarAxis/index.js";
11
+ import { useChartHighlight } from "../../internals/plugins/featurePlugins/useChartHighlight/index.js";
12
+ import { radarSeriesConfig } from "../seriesConfig/index.js";
13
+ import { DEFAULT_MARGINS } from "../../constants/index.js";
14
+ import { jsx as _jsx } from "react/jsx-runtime";
15
+ const RADAR_SERIES_CONFIG = {
16
+ radar: radarSeriesConfig
17
+ };
18
+ const RADAR_PLUGINS = [useChartPolarAxis, useChartHighlight];
19
+ function RadarDataProvider(props) {
20
+ const {
21
+ series,
22
+ children,
23
+ width,
24
+ height,
25
+ colors,
26
+ highlightedItem,
27
+ onHighlightChange,
28
+ skipAnimation,
29
+ margin,
30
+ radar
31
+ } = props,
32
+ other = _objectWithoutPropertiesLoose(props, _excluded);
33
+ const rotationAxes = React.useMemo(() => [{
34
+ id: 'radar-rotation-axis',
35
+ scaleType: 'point',
36
+ data: radar.metrics.map(metric => typeof metric === 'string' ? metric : metric.name),
37
+ startAngle: radar.startAngle,
38
+ endAngle: radar.startAngle !== undefined ? radar.startAngle + 360 : undefined
39
+ }], [radar]);
40
+ const radiusAxis = React.useMemo(() => radar.metrics.map(m => {
41
+ const {
42
+ name,
43
+ min = 0,
44
+ max = radar.max
45
+ } = typeof m === 'string' ? {
46
+ name: m
47
+ } : m;
48
+ return {
49
+ id: name,
50
+ label: name,
51
+ scaleType: 'linear',
52
+ min,
53
+ max
54
+ };
55
+ }), [radar]);
56
+ const defaultizedSeries = React.useMemo(() => series.map(s => _extends({
57
+ type: 'radar'
58
+ }, s)), [series]);
59
+ const defaultizedMargin = React.useMemo(() => defaultizeMargin(margin, DEFAULT_MARGINS), [margin]);
60
+ return /*#__PURE__*/_jsx(ChartDataProvider, _extends({}, other, {
61
+ series: defaultizedSeries,
62
+ width: width,
63
+ height: height,
64
+ margin: defaultizedMargin,
65
+ colors: colors,
66
+ highlightedItem: highlightedItem,
67
+ onHighlightChange: onHighlightChange,
68
+ skipAnimation: skipAnimation,
69
+ plugins: RADAR_PLUGINS,
70
+ rotationAxis: rotationAxes,
71
+ radiusAxis: radiusAxis,
72
+ seriesConfig: RADAR_SERIES_CONFIG,
73
+ children: children
74
+ }));
75
+ }
76
+ process.env.NODE_ENV !== "production" ? RadarDataProvider.propTypes = {
77
+ // ----------------------------- Warning --------------------------------
78
+ // | These PropTypes are generated from the TypeScript type definitions |
79
+ // | To update them edit the TypeScript types and run "pnpm proptypes" |
80
+ // ----------------------------------------------------------------------
81
+ apiRef: PropTypes.shape({
82
+ current: PropTypes.object
83
+ }),
84
+ children: PropTypes.node,
85
+ className: PropTypes.string,
86
+ /**
87
+ * Color palette used to colorize multiple series.
88
+ * @default rainbowSurgePalette
89
+ */
90
+ colors: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.string), PropTypes.func]),
91
+ desc: PropTypes.string,
92
+ /**
93
+ * The height of the chart in px. If not defined, it takes the height of the parent element.
94
+ */
95
+ height: PropTypes.number,
96
+ /**
97
+ * The highlighted item.
98
+ * Used when the highlight is controlled.
99
+ */
100
+ highlightedItem: PropTypes.shape({
101
+ dataIndex: PropTypes.number,
102
+ seriesId: PropTypes.oneOfType([PropTypes.number, PropTypes.string]).isRequired
103
+ }),
104
+ /**
105
+ * This prop is used to help implement the accessibility logic.
106
+ * If you don't provide this prop. It falls back to a randomly generated id.
107
+ */
108
+ id: PropTypes.string,
109
+ /**
110
+ * The margin between the SVG and the drawing area.
111
+ * It's used for leaving some space for extra information such as the x- and y-axis or legend.
112
+ *
113
+ * Accepts a `number` to be used on all sides or an object with the optional properties: `top`, `bottom`, `left`, and `right`.
114
+ */
115
+ margin: PropTypes.oneOfType([PropTypes.number, PropTypes.shape({
116
+ bottom: PropTypes.number,
117
+ left: PropTypes.number,
118
+ right: PropTypes.number,
119
+ top: PropTypes.number
120
+ })]),
121
+ /**
122
+ * The callback fired when the highlighted item changes.
123
+ *
124
+ * @param {HighlightItemData | null} highlightedItem The newly highlighted item.
125
+ */
126
+ onHighlightChange: PropTypes.func,
127
+ /**
128
+ * The configuration of the radar scales.
129
+ */
130
+ radar: PropTypes.shape({
131
+ max: PropTypes.number,
132
+ metrics: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.string), PropTypes.arrayOf(PropTypes.shape({
133
+ max: PropTypes.number,
134
+ min: PropTypes.number,
135
+ name: PropTypes.string.isRequired
136
+ }))]).isRequired,
137
+ startAngle: PropTypes.number
138
+ }).isRequired,
139
+ /**
140
+ * The series to display in the bar chart.
141
+ * An array of [[RadarSeriesType]] objects.
142
+ */
143
+ series: PropTypes.arrayOf(PropTypes.object).isRequired,
144
+ /**
145
+ * The configuration helpers used to compute attributes according to the serries type.
146
+ * @ignore Unstable props for internal usage.
147
+ */
148
+ seriesConfig: PropTypes.object,
149
+ /**
150
+ * If `true`, animations are skipped.
151
+ * If unset or `false`, the animations respects the user's `prefers-reduced-motion` setting.
152
+ */
153
+ skipAnimation: PropTypes.bool,
154
+ sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),
155
+ theme: PropTypes.oneOf(['dark', 'light']),
156
+ title: PropTypes.string,
157
+ /**
158
+ * The width of the chart in px. If not defined, it takes the width of the parent element.
159
+ */
160
+ width: PropTypes.number
161
+ } : void 0;
162
+ export { RadarDataProvider };
@@ -0,0 +1 @@
1
+ export * from "./RadarDataProvider.js";
@@ -0,0 +1 @@
1
+ export * from "./RadarDataProvider.js";
@@ -0,0 +1,32 @@
1
+ export interface MetricConfig {
2
+ /**
3
+ * The name of the metric.
4
+ */
5
+ name: string;
6
+ /**
7
+ * The minimum value of the domain.
8
+ * @default 0
9
+ */
10
+ min?: number;
11
+ /**
12
+ * The maximum value of the domain.
13
+ * If not provided, it gets computed to display the entire chart data.
14
+ */
15
+ max?: number;
16
+ }
17
+ export interface RadarConfig {
18
+ /**
19
+ * The metrics shown by radar.
20
+ */
21
+ metrics: string[] | MetricConfig[];
22
+ /**
23
+ * The default max value for radius axes.
24
+ * It will be overridden if `metrics` contains a `max` property.
25
+ */
26
+ max?: number;
27
+ /**
28
+ * The starting angle of the rotation axis (in degrees)
29
+ * @default 0
30
+ */
31
+ startAngle?: number;
32
+ }
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,13 @@
1
+ import * as React from 'react';
2
+ export interface RadarGridProps {
3
+ /**
4
+ * The number of divisions in the radar grid.
5
+ * @default 5
6
+ */
7
+ divisions?: number;
8
+ }
9
+ declare function RadarGrid(props: RadarGridProps): React.JSX.Element;
10
+ declare namespace RadarGrid {
11
+ var propTypes: any;
12
+ }
13
+ export { RadarGrid };
@@ -0,0 +1,44 @@
1
+ import * as React from 'react';
2
+ import PropTypes from 'prop-types';
3
+ import { useRadarGridData } from "./useRadarGridData.js";
4
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
5
+ function RadarGrid(props) {
6
+ const {
7
+ divisions = 5
8
+ } = props;
9
+ const {
10
+ center,
11
+ corners
12
+ } = useRadarGridData();
13
+ const divisionRatio = Array.from({
14
+ length: divisions
15
+ }, (_, index) => (index + 1) / divisions);
16
+ return /*#__PURE__*/_jsxs(React.Fragment, {
17
+ children: [corners.map(({
18
+ x,
19
+ y
20
+ }, i) => /*#__PURE__*/_jsx("path", {
21
+ d: `M ${center.x} ${center.y} L ${x} ${y}`,
22
+ stroke: "black"
23
+ }, i)), divisionRatio.map(ratio => /*#__PURE__*/_jsx("path", {
24
+ d: `M ${corners.map(({
25
+ x,
26
+ y
27
+ }) => `${center.x * (1 - ratio) + ratio * x} ${center.y * (1 - ratio) + ratio * y}`).join(' L ')} Z`,
28
+ stroke: "black",
29
+ fill: "none"
30
+ }, ratio))]
31
+ });
32
+ }
33
+ process.env.NODE_ENV !== "production" ? RadarGrid.propTypes = {
34
+ // ----------------------------- Warning --------------------------------
35
+ // | These PropTypes are generated from the TypeScript type definitions |
36
+ // | To update them edit the TypeScript types and run "pnpm proptypes" |
37
+ // ----------------------------------------------------------------------
38
+ /**
39
+ * The number of divisions in the radar grid.
40
+ * @default 5
41
+ */
42
+ divisions: PropTypes.number
43
+ } : void 0;
44
+ export { RadarGrid };
@@ -0,0 +1 @@
1
+ export * from "./RadarGrid.js";
@@ -0,0 +1 @@
1
+ export * from "./RadarGrid.js";
@@ -0,0 +1,10 @@
1
+ export declare function useRadarGridData(): {
2
+ center: {
3
+ x: number;
4
+ y: number;
5
+ };
6
+ corners: {
7
+ x: number;
8
+ y: number;
9
+ }[];
10
+ };
@@ -0,0 +1,29 @@
1
+ import { useRotationScale } from "../../hooks/useScale.js";
2
+ import { useDrawingArea } from "../../hooks/useDrawingArea.js";
3
+ import { useRadiusAxes } from "../../hooks/index.js";
4
+ export function useRadarGridData() {
5
+ const rotationScale = useRotationScale();
6
+ const {
7
+ radiusAxis
8
+ } = useRadiusAxes();
9
+ const drawingArea = useDrawingArea();
10
+ const cx = drawingArea.left + drawingArea.width / 2;
11
+ const cy = drawingArea.top + drawingArea.height / 2;
12
+ const metrics = rotationScale.domain();
13
+ const angles = metrics.map(key => rotationScale(key));
14
+ return {
15
+ center: {
16
+ x: cx,
17
+ y: cy
18
+ },
19
+ corners: metrics.map((metric, dataIndex) => {
20
+ const radiusScale = radiusAxis[metric].scale;
21
+ const r = radiusScale.range()[1];
22
+ const angle = angles[dataIndex];
23
+ return {
24
+ x: cx + r * Math.sin(angle),
25
+ y: cy - r * Math.cos(angle)
26
+ };
27
+ })
28
+ };
29
+ }
@@ -0,0 +1,7 @@
1
+ import * as React from 'react';
2
+ import { RadarSeriesAreaProps } from "./RadarSeriesPlot.types.js";
3
+ declare function RadarSeriesArea(props: RadarSeriesAreaProps): React.JSX.Element;
4
+ declare namespace RadarSeriesArea {
5
+ var propTypes: any;
6
+ }
7
+ export { RadarSeriesArea };
@@ -0,0 +1,39 @@
1
+ import _extends from "@babel/runtime/helpers/esm/extends";
2
+ import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
3
+ const _excluded = ["seriesId"];
4
+ import * as React from 'react';
5
+ import PropTypes from 'prop-types';
6
+ import { useRadarSeriesData } from "./useRadarSeriesData.js";
7
+ import { getAreaPath } from "./getAreaPath.js";
8
+ import { jsx as _jsx } from "react/jsx-runtime";
9
+ function RadarSeriesArea(props) {
10
+ const {
11
+ seriesId
12
+ } = props,
13
+ other = _objectWithoutPropertiesLoose(props, _excluded);
14
+ const seriesCoordinates = useRadarSeriesData(seriesId);
15
+ return /*#__PURE__*/_jsx(React.Fragment, {
16
+ children: seriesCoordinates?.map(({
17
+ seriesId: id,
18
+ points,
19
+ color
20
+ }) => /*#__PURE__*/_jsx("path", _extends({
21
+ d: getAreaPath(points),
22
+ fill: color,
23
+ stroke: color,
24
+ fillOpacity: 0.4
25
+ }, other), id))
26
+ });
27
+ }
28
+ process.env.NODE_ENV !== "production" ? RadarSeriesArea.propTypes = {
29
+ // ----------------------------- Warning --------------------------------
30
+ // | These PropTypes are generated from the TypeScript type definitions |
31
+ // | To update them edit the TypeScript types and run "pnpm proptypes" |
32
+ // ----------------------------------------------------------------------
33
+ /**
34
+ * The id of the series to display.
35
+ * If undefined all series are displayed.
36
+ */
37
+ seriesId: PropTypes.string
38
+ } : void 0;
39
+ export { RadarSeriesArea };
@@ -0,0 +1,7 @@
1
+ import * as React from 'react';
2
+ import { RadarSeriesMarksProps } from "./RadarSeriesPlot.types.js";
3
+ declare function RadarSeriesMarks(props: RadarSeriesMarksProps): React.JSX.Element;
4
+ declare namespace RadarSeriesMarks {
5
+ var propTypes: any;
6
+ }
7
+ export { RadarSeriesMarks };
@@ -0,0 +1,38 @@
1
+ import _extends from "@babel/runtime/helpers/esm/extends";
2
+ import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
3
+ const _excluded = ["seriesId"];
4
+ import * as React from 'react';
5
+ import PropTypes from 'prop-types';
6
+ import { useRadarSeriesData } from "./useRadarSeriesData.js";
7
+ import { jsx as _jsx } from "react/jsx-runtime";
8
+ function RadarSeriesMarks(props) {
9
+ const other = _objectWithoutPropertiesLoose(props, _excluded);
10
+ const seriesCoordinates = useRadarSeriesData(props.seriesId);
11
+ return /*#__PURE__*/_jsx(React.Fragment, {
12
+ children: seriesCoordinates?.map(({
13
+ seriesId: id,
14
+ points,
15
+ color
16
+ }) => /*#__PURE__*/_jsx("g", {
17
+ children: points.map((point, index) => /*#__PURE__*/_jsx("circle", _extends({
18
+ cx: point.x,
19
+ cy: point.y,
20
+ r: 5,
21
+ fill: color,
22
+ stroke: color
23
+ }, other), index))
24
+ }, id))
25
+ });
26
+ }
27
+ process.env.NODE_ENV !== "production" ? RadarSeriesMarks.propTypes = {
28
+ // ----------------------------- Warning --------------------------------
29
+ // | These PropTypes are generated from the TypeScript type definitions |
30
+ // | To update them edit the TypeScript types and run "pnpm proptypes" |
31
+ // ----------------------------------------------------------------------
32
+ /**
33
+ * The id of the series to display.
34
+ * If undefined all series are displayed.
35
+ */
36
+ seriesId: PropTypes.string
37
+ } : void 0;
38
+ export { RadarSeriesMarks };
@@ -0,0 +1,7 @@
1
+ import * as React from 'react';
2
+ import { RadarSeriesPlotProps } from "./RadarSeriesPlot.types.js";
3
+ declare function RadarSeriesPlot(props: RadarSeriesPlotProps): React.JSX.Element;
4
+ declare namespace RadarSeriesPlot {
5
+ var propTypes: any;
6
+ }
7
+ export { RadarSeriesPlot };
@@ -0,0 +1,41 @@
1
+ import * as React from 'react';
2
+ import PropTypes from 'prop-types';
3
+ import { useRadarSeriesData } from "./useRadarSeriesData.js";
4
+ import { getAreaPath } from "./getAreaPath.js";
5
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
6
+ function RadarSeriesPlot(props) {
7
+ const seriesCoordinates = useRadarSeriesData(props.seriesId);
8
+ return /*#__PURE__*/_jsx(React.Fragment, {
9
+ children: seriesCoordinates?.map(({
10
+ seriesId,
11
+ points,
12
+ color,
13
+ showMark
14
+ }) => /*#__PURE__*/_jsxs("g", {
15
+ children: [/*#__PURE__*/_jsx("path", {
16
+ d: getAreaPath(points),
17
+ fill: color,
18
+ stroke: color,
19
+ fillOpacity: 0.4
20
+ }, seriesId), showMark && points.map((point, index) => /*#__PURE__*/_jsx("circle", {
21
+ cx: point.x,
22
+ cy: point.y,
23
+ r: 5,
24
+ fill: color,
25
+ stroke: color
26
+ }, index))]
27
+ }, seriesId))
28
+ });
29
+ }
30
+ process.env.NODE_ENV !== "production" ? RadarSeriesPlot.propTypes = {
31
+ // ----------------------------- Warning --------------------------------
32
+ // | These PropTypes are generated from the TypeScript type definitions |
33
+ // | To update them edit the TypeScript types and run "pnpm proptypes" |
34
+ // ----------------------------------------------------------------------
35
+ /**
36
+ * The id of the series to display.
37
+ * If undefined all series are displayed.
38
+ */
39
+ seriesId: PropTypes.string
40
+ } : void 0;
41
+ export { RadarSeriesPlot };
@@ -0,0 +1,12 @@
1
+ import * as React from 'react';
2
+ interface CommonRadarSeriesPlotProps {
3
+ /**
4
+ * The id of the series to display.
5
+ * If undefined all series are displayed.
6
+ */
7
+ seriesId?: string;
8
+ }
9
+ export interface RadarSeriesPlotProps extends CommonRadarSeriesPlotProps {}
10
+ export interface RadarSeriesMarksProps extends CommonRadarSeriesPlotProps, React.SVGAttributes<SVGCircleElement> {}
11
+ export interface RadarSeriesAreaProps extends CommonRadarSeriesPlotProps, React.SVGAttributes<SVGPathElement> {}
12
+ export {};
@@ -0,0 +1,4 @@
1
+ export declare function getAreaPath(points: {
2
+ x: number;
3
+ y: number;
4
+ }[]): string;
@@ -0,0 +1,3 @@
1
+ export function getAreaPath(points) {
2
+ return `M ${points.map(p => `${p.x} ${p.y}`).join('L')} Z`;
3
+ }
@@ -0,0 +1,4 @@
1
+ export * from "./RadarSeriesPlot.js";
2
+ export type * from './RadarSeriesPlot.types';
3
+ export * from "./RadarSeriesArea.js";
4
+ export * from "./RadarSeriesMarks.js";
@@ -0,0 +1,3 @@
1
+ export * from "./RadarSeriesPlot.js";
2
+ export * from "./RadarSeriesArea.js";
3
+ export * from "./RadarSeriesMarks.js";
@@ -0,0 +1,27 @@
1
+ import { SeriesId } from "../../models/seriesType/common.js";
2
+ /**
3
+ * This hook provides all the data needed to display radar series.
4
+ * @param querySeriesId The id of the series to display
5
+ * @returns
6
+ */
7
+ export declare function useRadarSeriesData(querySeriesId?: SeriesId): {
8
+ seriesId: SeriesId;
9
+ isSeriesHighlighted: boolean;
10
+ isSeriesFaded: boolean;
11
+ points: {
12
+ x: number;
13
+ y: number;
14
+ isItemHighlighted: boolean;
15
+ isItemFaded: boolean;
16
+ dataIndex: number;
17
+ }[];
18
+ type: "radar";
19
+ label?: string | ((location: "tooltip" | "legend") => string) | undefined;
20
+ highlightScope?: Partial<import("../..").HighlightScope> | undefined;
21
+ labelMarkType?: "line" | "square" | "circle" | import("react").ComponentType<import("../..").ChartsLabelCustomMarkProps> | undefined;
22
+ showMark?: boolean | undefined;
23
+ data: number[];
24
+ color: string;
25
+ id: SeriesId;
26
+ valueFormatter: import("../../internals").SeriesValueFormatter<number>;
27
+ }[];
@@ -0,0 +1,60 @@
1
+ import _extends from "@babel/runtime/helpers/esm/extends";
2
+ import { useRotationScale } from "../../hooks/useScale.js";
3
+ import { useDrawingArea } from "../../hooks/useDrawingArea.js";
4
+ import { useRadarSeries } from "../../hooks/useRadarSeries.js";
5
+ import { useRadiusAxes } from "../../hooks/useAxis.js";
6
+ import { useItemHighlightedGetter } from "../../hooks/useItemHighlightedGetter.js";
7
+ /**
8
+ * This hook provides all the data needed to display radar series.
9
+ * @param querySeriesId The id of the series to display
10
+ * @returns
11
+ */
12
+ export function useRadarSeriesData(querySeriesId) {
13
+ const rotationScale = useRotationScale();
14
+ const {
15
+ radiusAxis
16
+ } = useRadiusAxes();
17
+ const radarSeries = useRadarSeries(querySeriesId === undefined ? undefined : [querySeriesId]);
18
+ const drawingArea = useDrawingArea();
19
+ const {
20
+ isFaded: isItemFaded,
21
+ isHighlighted: isItemHighlighted
22
+ } = useItemHighlightedGetter();
23
+ const cx = drawingArea.left + drawingArea.width / 2;
24
+ const cy = drawingArea.top + drawingArea.height / 2;
25
+ const metrics = rotationScale.domain();
26
+ const angles = metrics.map(key => rotationScale(key));
27
+ return radarSeries.map(series => {
28
+ const seriesId = series.id;
29
+ const isSeriesHighlighted = isItemHighlighted({
30
+ seriesId
31
+ });
32
+ const isSeriesFaded = !isSeriesHighlighted && isItemFaded({
33
+ seriesId
34
+ });
35
+ return _extends({}, series, {
36
+ seriesId: series.id,
37
+ isSeriesHighlighted,
38
+ isSeriesFaded,
39
+ points: series.data.map((value, dataIndex) => {
40
+ const highlighted = isItemHighlighted({
41
+ seriesId,
42
+ dataIndex
43
+ });
44
+ const faded = !highlighted && isItemFaded({
45
+ seriesId,
46
+ dataIndex
47
+ });
48
+ const r = radiusAxis[metrics[dataIndex]].scale(value);
49
+ const angle = angles[dataIndex];
50
+ return {
51
+ x: cx + r * Math.sin(angle),
52
+ y: cy - r * Math.cos(angle),
53
+ isItemHighlighted: highlighted,
54
+ isItemFaded: faded,
55
+ dataIndex
56
+ };
57
+ })
58
+ });
59
+ });
60
+ }
@@ -0,0 +1,6 @@
1
+ export { RadarChart as Unstable_RadarChart } from "./RadarChart.js";
2
+ export { RadarDataProvider as Unstable_RadarDataProvider } from "./RadarDataProvider/index.js";
3
+ export type { RadarChartProps } from './RadarChart';
4
+ export type { RadarDataProviderProps } from './RadarDataProvider';
5
+ export * from "./RadarGrid/index.js";
6
+ export * from "./RadarSeriesPlot/index.js";
@@ -0,0 +1,4 @@
1
+ export { RadarChart as Unstable_RadarChart } from "./RadarChart.js";
2
+ export { RadarDataProvider as Unstable_RadarDataProvider } from "./RadarDataProvider/index.js";
3
+ export * from "./RadarGrid/index.js";
4
+ export * from "./RadarSeriesPlot/index.js";
@@ -0,0 +1,3 @@
1
+ import { PolarExtremumGetter } from "../../internals/plugins/models/seriesConfig/index.js";
2
+ export declare const radiusExtremumGetter: PolarExtremumGetter<'radar'>;
3
+ export declare const rotationExtremumGetter: PolarExtremumGetter<'radar'>;
@@ -0,0 +1,18 @@
1
+ export const radiusExtremumGetter = ({
2
+ series,
3
+ axisIndex
4
+ }) => {
5
+ return Object.keys(series).filter(seriesId => series[seriesId].type === 'radar').reduce((acc, seriesId) => {
6
+ const {
7
+ data
8
+ } = series[seriesId];
9
+ return [Math.min(data[axisIndex], acc[0]), Math.max(data[axisIndex], acc[1])];
10
+ }, [Infinity, -Infinity]);
11
+ };
12
+ export const rotationExtremumGetter = ({
13
+ axis
14
+ }) => {
15
+ const min = Math.min(...(axis.data ?? []));
16
+ const max = Math.max(...(axis.data ?? []));
17
+ return [min, max];
18
+ };
@@ -0,0 +1,3 @@
1
+ import { SeriesProcessor } from "../../internals/plugins/models/seriesConfig/index.js";
2
+ declare const formatter: SeriesProcessor<'radar'>;
3
+ export default formatter;
@@ -0,0 +1,12 @@
1
+ import { defaultizeValueFormatter } from "../../internals/defaultizeValueFormatter.js";
2
+ const formatter = params => {
3
+ const {
4
+ seriesOrder,
5
+ series
6
+ } = params;
7
+ return {
8
+ seriesOrder,
9
+ series: defaultizeValueFormatter(series, v => v == null ? '' : v.toLocaleString())
10
+ };
11
+ };
12
+ export default formatter;
@@ -0,0 +1,3 @@
1
+ import { ColorProcessor } from "../../internals/plugins/models/seriesConfig/index.js";
2
+ declare const getColor: ColorProcessor<'radar'>;
3
+ export default getColor;
@@ -0,0 +1,4 @@
1
+ const getColor = series => {
2
+ return () => series.color;
3
+ };
4
+ export default getColor;
@@ -0,0 +1,3 @@
1
+ import type { GetSeriesWithDefaultValues } from '../../internals/plugins/models/seriesConfig';
2
+ declare const getSeriesWithDefaultValues: GetSeriesWithDefaultValues<'radar'>;
3
+ export default getSeriesWithDefaultValues;