@mui/x-charts 8.0.0-alpha.7 → 8.0.0-alpha.9

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 (600) hide show
  1. package/BarChart/BarChart.d.ts +1 -1
  2. package/BarChart/BarChart.js +10 -2
  3. package/BarChart/BarLabel/BarLabelPlot.js +1 -1
  4. package/BarChart/BarPlot.js +8 -9
  5. package/BarChart/extremums.d.ts +3 -3
  6. package/BarChart/formatter.d.ts +2 -2
  7. package/BarChart/formatter.js +2 -1
  8. package/BarChart/getColor.d.ts +1 -1
  9. package/BarChart/legend.d.ts +1 -1
  10. package/BarChart/legend.js +1 -1
  11. package/BarChart/plugin.d.ts +2 -2
  12. package/BarChart/plugin.js +3 -2
  13. package/BarChart/useBarChartProps.d.ts +1 -1
  14. package/CHANGELOG.md +551 -3
  15. package/ChartContainer/ChartContainer.d.ts +8 -4
  16. package/ChartContainer/ChartContainer.js +15 -9
  17. package/ChartContainer/useChartContainerProps.d.ts +6 -4
  18. package/ChartContainer/useChartContainerProps.js +7 -5
  19. package/ChartDataProvider/ChartDataProvider.d.ts +42 -0
  20. package/ChartDataProvider/ChartDataProvider.js +108 -0
  21. package/ChartDataProvider/package.json +6 -0
  22. package/ChartDataProvider/useChartDataProviderProps.d.ts +13 -0
  23. package/ChartDataProvider/useChartDataProviderProps.js +52 -0
  24. package/ChartsAxis/ChartsAxis.js +5 -3
  25. package/ChartsGrid/ChartsGrid.js +9 -5
  26. package/ChartsGrid/ChartsHorizontalGrid.d.ts +2 -2
  27. package/ChartsGrid/ChartsHorizontalGrid.js +4 -3
  28. package/ChartsGrid/ChartsVerticalGrid.d.ts +2 -2
  29. package/ChartsGrid/ChartsVerticalGrid.js +4 -3
  30. package/ChartsLabel/ChartsLabelGradient.js +11 -12
  31. package/ChartsLegend/ContinuousColorLegend.js +3 -3
  32. package/ChartsLegend/useAxis.js +7 -5
  33. package/ChartsOnAxisClickHandler/ChartsOnAxisClickHandler.js +7 -6
  34. package/ChartsSurface/ChartsSurface.d.ts +1 -1
  35. package/ChartsSurface/ChartsSurface.js +17 -27
  36. package/ChartsTooltip/ChartsAxisTooltipContent.js +6 -3
  37. package/ChartsTooltip/ChartsItemTooltipContent.js +6 -3
  38. package/ChartsTooltip/ChartsTooltipTable.d.ts +0 -6
  39. package/ChartsTooltip/ChartsTooltipTable.js +0 -20
  40. package/ChartsTooltip/useAxisTooltip.d.ts +3 -1
  41. package/ChartsTooltip/useAxisTooltip.js +13 -9
  42. package/ChartsTooltip/useItemTooltip.d.ts +3 -1
  43. package/ChartsTooltip/useItemTooltip.js +14 -10
  44. package/ChartsTooltip/utils.js +2 -0
  45. package/ChartsVoronoiHandler/ChartsVoronoiHandler.js +16 -9
  46. package/ChartsXAxis/ChartsXAxis.js +11 -8
  47. package/ChartsYAxis/ChartsYAxis.js +8 -5
  48. package/Gauge/Gauge.js +5 -1
  49. package/Gauge/GaugeContainer.d.ts +3 -10
  50. package/Gauge/GaugeContainer.js +38 -38
  51. package/Gauge/GaugeProvider.js +2 -0
  52. package/LineChart/AnimatedArea.js +1 -1
  53. package/LineChart/AnimatedLine.js +1 -1
  54. package/LineChart/AppearingMask.js +1 -1
  55. package/LineChart/AreaPlot.js +59 -25
  56. package/LineChart/CircleMarkElement.d.ts +0 -4
  57. package/LineChart/CircleMarkElement.js +2 -7
  58. package/LineChart/LineChart.d.ts +0 -4
  59. package/LineChart/LineChart.js +10 -6
  60. package/LineChart/LineHighlightElement.d.ts +5 -1
  61. package/LineChart/LineHighlightElement.js +29 -9
  62. package/LineChart/LineHighlightPlot.js +18 -13
  63. package/LineChart/LinePlot.js +59 -24
  64. package/LineChart/MarkPlot.d.ts +0 -6
  65. package/LineChart/MarkPlot.js +20 -23
  66. package/LineChart/extremums.d.ts +3 -3
  67. package/LineChart/formatter.d.ts +2 -2
  68. package/LineChart/formatter.js +3 -1
  69. package/LineChart/getColor.d.ts +1 -1
  70. package/LineChart/legend.d.ts +1 -1
  71. package/LineChart/legend.js +1 -1
  72. package/LineChart/plugin.d.ts +2 -2
  73. package/LineChart/plugin.js +3 -2
  74. package/LineChart/useLineChartProps.d.ts +1 -1
  75. package/LineChart/useLineChartProps.js +3 -5
  76. package/PieChart/PieArcLabelPlot.js +2 -2
  77. package/PieChart/PieArcPlot.js +2 -2
  78. package/PieChart/PieChart.js +10 -2
  79. package/PieChart/dataTransform/transition.d.ts +2 -2
  80. package/PieChart/dataTransform/transition.js +6 -6
  81. package/PieChart/formatter.d.ts +2 -2
  82. package/PieChart/formatter.js +4 -1
  83. package/PieChart/getColor.d.ts +1 -1
  84. package/PieChart/getPieCoordinates.d.ts +2 -2
  85. package/PieChart/legend.d.ts +1 -1
  86. package/PieChart/legend.js +1 -1
  87. package/PieChart/plugin.d.ts +2 -2
  88. package/PieChart/plugin.js +3 -2
  89. package/ScatterChart/Scatter.js +6 -4
  90. package/ScatterChart/ScatterChart.d.ts +1 -2
  91. package/ScatterChart/ScatterChart.js +17 -13
  92. package/ScatterChart/ScatterPlot.js +11 -10
  93. package/ScatterChart/extremums.d.ts +3 -3
  94. package/ScatterChart/extremums.js +3 -1
  95. package/ScatterChart/formatter.d.ts +2 -2
  96. package/ScatterChart/formatter.js +3 -1
  97. package/ScatterChart/getColor.d.ts +1 -1
  98. package/ScatterChart/legend.d.ts +1 -1
  99. package/ScatterChart/legend.js +1 -1
  100. package/ScatterChart/plugin.d.ts +2 -2
  101. package/ScatterChart/plugin.js +3 -2
  102. package/ScatterChart/useScatterChartProps.d.ts +1 -3
  103. package/ScatterChart/useScatterChartProps.js +1 -4
  104. package/SparkLineChart/SparkLineChart.d.ts +2 -2
  105. package/SparkLineChart/SparkLineChart.js +11 -2
  106. package/context/AnimationProvider/AnimationProvider.js +1 -1
  107. package/context/ChartProvider/ChartProvider.d.ts +5 -1
  108. package/context/ChartProvider/ChartProvider.js +22 -2
  109. package/context/ChartProvider/ChartProvider.types.d.ts +17 -2
  110. package/context/InteractionSelectors.d.ts +22 -22
  111. package/context/PolarProvider/PolarProvider.d.ts +0 -4
  112. package/context/PolarProvider/PolarProvider.js +59 -47
  113. package/context/PolarProvider/getAxisExtremum.d.ts +0 -4
  114. package/context/PolarProvider/getAxisExtremum.js +48 -20
  115. package/context/PolarProvider/usePolarContext.d.ts +0 -2
  116. package/context/PolarProvider/usePolarContext.js +9 -8
  117. package/context/index.d.ts +0 -4
  118. package/context/index.js +1 -3
  119. package/hooks/index.d.ts +2 -0
  120. package/hooks/index.js +3 -1
  121. package/hooks/useAxis.d.ts +9 -1
  122. package/hooks/useAxis.js +32 -6
  123. package/hooks/useAxisEvents.js +12 -8
  124. package/hooks/useChartGradientId.d.ts +31 -0
  125. package/hooks/useChartGradientId.js +47 -0
  126. package/hooks/useColorScale.js +5 -5
  127. package/hooks/useDrawingArea.d.ts +16 -2
  128. package/hooks/useDrawingArea.js +5 -20
  129. package/hooks/useLegend.js +8 -13
  130. package/hooks/useSeries.d.ts +11 -6
  131. package/hooks/useSeries.js +5 -10
  132. package/hooks/useZAxis.d.ts +3 -2
  133. package/hooks/useZAxis.js +25 -6
  134. package/index.d.ts +1 -0
  135. package/index.js +3 -2
  136. package/internals/components/ChartsAxesGradients/ChartsAxesGradients.d.ts +0 -3
  137. package/internals/components/ChartsAxesGradients/ChartsAxesGradients.js +19 -27
  138. package/internals/components/ChartsAxesGradients/ChartsPiecewiseGradient.d.ts +1 -1
  139. package/internals/components/ChartsAxesGradients/ChartsPiecewiseGradient.js +3 -0
  140. package/internals/defaultizeColor.d.ts +24 -22
  141. package/internals/index.d.ts +14 -10
  142. package/internals/index.js +17 -11
  143. package/internals/plugins/allPlugins.d.ts +12 -1
  144. package/internals/plugins/allPlugins.js +5 -2
  145. package/internals/plugins/corePlugins/corePlugins.d.ts +1 -1
  146. package/internals/plugins/corePlugins/corePlugins.js +3 -1
  147. package/internals/plugins/corePlugins/useChartDimensions/index.d.ts +3 -0
  148. package/internals/plugins/corePlugins/useChartDimensions/index.js +2 -0
  149. package/internals/plugins/corePlugins/useChartDimensions/useChartDimensions.d.ts +3 -0
  150. package/internals/plugins/corePlugins/useChartDimensions/useChartDimensions.js +175 -0
  151. package/internals/plugins/corePlugins/useChartDimensions/useChartDimensions.selectors.d.ts +264 -0
  152. package/internals/plugins/corePlugins/useChartDimensions/useChartDimensions.selectors.js +25 -0
  153. package/internals/plugins/corePlugins/useChartDimensions/useChartDimensions.types.d.ts +99 -0
  154. package/internals/plugins/corePlugins/useChartId/index.d.ts +1 -0
  155. package/internals/plugins/corePlugins/useChartId/index.js +2 -1
  156. package/internals/plugins/corePlugins/useChartId/useChartId.js +1 -1
  157. package/internals/plugins/corePlugins/useChartId/useChartId.selectors.d.ts +1 -1
  158. package/internals/plugins/corePlugins/useChartId/useChartId.types.d.ts +1 -1
  159. package/internals/plugins/corePlugins/useChartSeries/index.d.ts +3 -0
  160. package/internals/plugins/corePlugins/useChartSeries/index.js +2 -0
  161. package/internals/plugins/corePlugins/useChartSeries/processSeries.d.ts +18 -0
  162. package/{modern/context/SeriesProvider → internals/plugins/corePlugins/useChartSeries}/processSeries.js +9 -6
  163. package/internals/plugins/corePlugins/useChartSeries/useChartSeries.d.ts +3 -0
  164. package/internals/plugins/corePlugins/useChartSeries/useChartSeries.js +72 -0
  165. package/internals/plugins/corePlugins/useChartSeries/useChartSeries.selectors.d.ts +61 -0
  166. package/internals/plugins/corePlugins/useChartSeries/useChartSeries.selectors.js +4 -0
  167. package/internals/plugins/corePlugins/useChartSeries/useChartSeries.types.d.ts +51 -0
  168. package/internals/plugins/corePlugins/useChartSeries/useColorProcessor.d.ts +10 -0
  169. package/internals/plugins/corePlugins/useChartSeries/useColorProcessor.js +21 -0
  170. package/internals/plugins/featurePlugins/useChartCartesianAxis/computeAxisValue.d.ts +29 -0
  171. package/internals/{computeAxisValue.js → plugins/featurePlugins/useChartCartesianAxis/computeAxisValue.js} +19 -27
  172. package/internals/plugins/featurePlugins/useChartCartesianAxis/createAxisFilterMapper.d.ts +18 -0
  173. package/internals/plugins/featurePlugins/useChartCartesianAxis/createAxisFilterMapper.js +61 -0
  174. package/internals/plugins/featurePlugins/useChartCartesianAxis/defaultizeAxis.d.ts +39 -0
  175. package/{modern/context/ChartDataProvider/useDefaultizeAxis.js → internals/plugins/featurePlugins/useChartCartesianAxis/defaultizeAxis.js} +3 -11
  176. package/internals/plugins/featurePlugins/useChartCartesianAxis/getAxisExtremum.d.ts +6 -0
  177. package/internals/plugins/featurePlugins/useChartCartesianAxis/getAxisExtremum.js +22 -0
  178. package/internals/plugins/featurePlugins/useChartCartesianAxis/index.d.ts +6 -0
  179. package/internals/plugins/featurePlugins/useChartCartesianAxis/index.js +5 -0
  180. package/internals/plugins/featurePlugins/useChartCartesianAxis/useChartCartesianAxis.d.ts +4 -0
  181. package/internals/plugins/featurePlugins/useChartCartesianAxis/useChartCartesianAxis.js +68 -0
  182. package/internals/plugins/featurePlugins/useChartCartesianAxis/useChartCartesianAxis.selectors.d.ts +1336 -0
  183. package/internals/plugins/featurePlugins/useChartCartesianAxis/useChartCartesianAxis.selectors.js +89 -0
  184. package/internals/plugins/featurePlugins/useChartCartesianAxis/useChartCartesianAxis.types.d.ts +75 -0
  185. package/internals/plugins/featurePlugins/useChartCartesianAxis/zoom.types.d.ts +18 -0
  186. package/internals/plugins/featurePlugins/useChartInteraction/useChartInteraction.selectors.d.ts +11 -11
  187. package/internals/plugins/featurePlugins/useChartZAxis/index.d.ts +3 -0
  188. package/internals/plugins/featurePlugins/useChartZAxis/index.js +2 -0
  189. package/internals/plugins/featurePlugins/useChartZAxis/useChartZAxis.d.ts +3 -0
  190. package/internals/plugins/featurePlugins/useChartZAxis/useChartZAxis.js +86 -0
  191. package/internals/plugins/featurePlugins/useChartZAxis/useChartZAxis.selectors.d.ts +45 -0
  192. package/internals/plugins/featurePlugins/useChartZAxis/useChartZAxis.selectors.js +3 -0
  193. package/internals/plugins/featurePlugins/useChartZAxis/useChartZAxis.types.d.ts +39 -0
  194. package/internals/plugins/featurePlugins/useChartZAxis/utils.d.ts +0 -0
  195. package/internals/plugins/featurePlugins/useChartZAxis/utils.js +0 -0
  196. package/internals/plugins/models/index.d.ts +1 -0
  197. package/internals/plugins/models/index.js +2 -1
  198. package/internals/plugins/models/plugin.d.ts +32 -2
  199. package/internals/plugins/models/seriesConfig/colorProcessor.types.d.ts +5 -0
  200. package/internals/plugins/models/seriesConfig/extremumGetter.types.d.ts +22 -0
  201. package/internals/plugins/models/seriesConfig/index.d.ts +4 -0
  202. package/internals/plugins/models/seriesConfig/index.js +4 -0
  203. package/internals/plugins/models/seriesConfig/seriesConfig.types.d.ts +15 -0
  204. package/internals/plugins/models/seriesConfig/seriesProcessor.types.d.ts +18 -0
  205. package/internals/store/extractPluginParamsFromProps.d.ts +7 -0
  206. package/internals/store/extractPluginParamsFromProps.js +28 -0
  207. package/internals/store/useChartModels.d.ts +7 -0
  208. package/internals/store/useChartModels.js +64 -0
  209. package/internals/store/useCharts.d.ts +4 -2
  210. package/internals/store/useCharts.js +14 -9
  211. package/internals/store/useCharts.types.d.ts +1 -1
  212. package/internals/store/useStore.d.ts +5 -1
  213. package/internals/store/useStore.js +1 -9
  214. package/models/layout.d.ts +2 -1
  215. package/models/seriesType/line.d.ts +11 -0
  216. package/modern/BarChart/BarChart.js +10 -2
  217. package/modern/BarChart/BarLabel/BarLabelPlot.js +1 -1
  218. package/modern/BarChart/BarPlot.js +8 -9
  219. package/modern/BarChart/formatter.js +2 -1
  220. package/modern/BarChart/legend.js +1 -1
  221. package/modern/BarChart/plugin.js +3 -2
  222. package/modern/ChartContainer/ChartContainer.js +15 -9
  223. package/modern/ChartContainer/useChartContainerProps.js +7 -5
  224. package/modern/ChartDataProvider/ChartDataProvider.js +108 -0
  225. package/modern/ChartDataProvider/useChartDataProviderProps.js +52 -0
  226. package/modern/ChartsAxis/ChartsAxis.js +5 -3
  227. package/modern/ChartsGrid/ChartsGrid.js +9 -5
  228. package/modern/ChartsGrid/ChartsHorizontalGrid.js +4 -3
  229. package/modern/ChartsGrid/ChartsVerticalGrid.js +4 -3
  230. package/modern/ChartsLabel/ChartsLabelGradient.js +11 -12
  231. package/modern/ChartsLegend/ContinuousColorLegend.js +3 -3
  232. package/modern/ChartsLegend/useAxis.js +7 -5
  233. package/modern/ChartsOnAxisClickHandler/ChartsOnAxisClickHandler.js +7 -6
  234. package/modern/ChartsSurface/ChartsSurface.js +17 -27
  235. package/modern/ChartsTooltip/ChartsAxisTooltipContent.js +6 -3
  236. package/modern/ChartsTooltip/ChartsItemTooltipContent.js +6 -3
  237. package/modern/ChartsTooltip/ChartsTooltipTable.js +0 -20
  238. package/modern/ChartsTooltip/useAxisTooltip.js +13 -9
  239. package/modern/ChartsTooltip/useItemTooltip.js +14 -10
  240. package/modern/ChartsTooltip/utils.js +2 -0
  241. package/modern/ChartsVoronoiHandler/ChartsVoronoiHandler.js +16 -9
  242. package/modern/ChartsXAxis/ChartsXAxis.js +11 -8
  243. package/modern/ChartsYAxis/ChartsYAxis.js +8 -5
  244. package/modern/Gauge/Gauge.js +5 -1
  245. package/modern/Gauge/GaugeContainer.js +38 -38
  246. package/modern/Gauge/GaugeProvider.js +2 -0
  247. package/modern/LineChart/AnimatedArea.js +1 -1
  248. package/modern/LineChart/AnimatedLine.js +1 -1
  249. package/modern/LineChart/AppearingMask.js +1 -1
  250. package/modern/LineChart/AreaPlot.js +59 -25
  251. package/modern/LineChart/CircleMarkElement.js +2 -7
  252. package/modern/LineChart/LineChart.js +10 -6
  253. package/modern/LineChart/LineHighlightElement.js +29 -9
  254. package/modern/LineChart/LineHighlightPlot.js +18 -13
  255. package/modern/LineChart/LinePlot.js +59 -24
  256. package/modern/LineChart/MarkPlot.js +20 -23
  257. package/modern/LineChart/formatter.js +3 -1
  258. package/modern/LineChart/legend.js +1 -1
  259. package/modern/LineChart/plugin.js +3 -2
  260. package/modern/LineChart/useLineChartProps.js +3 -5
  261. package/modern/PieChart/PieArcLabelPlot.js +2 -2
  262. package/modern/PieChart/PieArcPlot.js +2 -2
  263. package/modern/PieChart/PieChart.js +10 -2
  264. package/modern/PieChart/dataTransform/transition.js +6 -6
  265. package/modern/PieChart/formatter.js +4 -1
  266. package/modern/PieChart/legend.js +1 -1
  267. package/modern/PieChart/plugin.js +3 -2
  268. package/modern/ScatterChart/Scatter.js +6 -4
  269. package/modern/ScatterChart/ScatterChart.js +17 -13
  270. package/modern/ScatterChart/ScatterPlot.js +11 -10
  271. package/modern/ScatterChart/extremums.js +3 -1
  272. package/modern/ScatterChart/formatter.js +3 -1
  273. package/modern/ScatterChart/legend.js +1 -1
  274. package/modern/ScatterChart/plugin.js +3 -2
  275. package/modern/ScatterChart/useScatterChartProps.js +1 -4
  276. package/modern/SparkLineChart/SparkLineChart.js +11 -2
  277. package/modern/context/AnimationProvider/AnimationProvider.js +1 -1
  278. package/modern/context/ChartProvider/ChartProvider.js +22 -2
  279. package/modern/context/PolarProvider/PolarProvider.js +59 -47
  280. package/modern/context/PolarProvider/getAxisExtremum.js +48 -20
  281. package/modern/context/PolarProvider/usePolarContext.js +9 -8
  282. package/modern/context/index.js +1 -3
  283. package/modern/hooks/index.js +3 -1
  284. package/modern/hooks/useAxis.js +32 -6
  285. package/modern/hooks/useAxisEvents.js +12 -8
  286. package/modern/hooks/useChartGradientId.js +47 -0
  287. package/modern/hooks/useColorScale.js +5 -5
  288. package/modern/hooks/useDrawingArea.js +5 -20
  289. package/modern/hooks/useLegend.js +8 -13
  290. package/modern/hooks/useSeries.js +5 -10
  291. package/modern/hooks/useZAxis.js +25 -6
  292. package/modern/index.js +3 -2
  293. package/modern/internals/components/ChartsAxesGradients/ChartsAxesGradients.js +19 -27
  294. package/modern/internals/components/ChartsAxesGradients/ChartsPiecewiseGradient.js +3 -0
  295. package/modern/internals/index.js +17 -11
  296. package/modern/internals/plugins/allPlugins.js +5 -2
  297. package/modern/internals/plugins/corePlugins/corePlugins.js +3 -1
  298. package/modern/internals/plugins/corePlugins/useChartDimensions/index.js +2 -0
  299. package/modern/internals/plugins/corePlugins/useChartDimensions/useChartDimensions.js +175 -0
  300. package/modern/internals/plugins/corePlugins/useChartDimensions/useChartDimensions.selectors.js +25 -0
  301. package/modern/internals/plugins/corePlugins/useChartId/index.js +2 -1
  302. package/modern/internals/plugins/corePlugins/useChartId/useChartId.js +1 -1
  303. package/modern/internals/plugins/corePlugins/useChartSeries/index.js +2 -0
  304. package/{context/SeriesProvider → modern/internals/plugins/corePlugins/useChartSeries}/processSeries.js +9 -6
  305. package/modern/internals/plugins/corePlugins/useChartSeries/useChartSeries.js +72 -0
  306. package/modern/internals/plugins/corePlugins/useChartSeries/useChartSeries.selectors.js +4 -0
  307. package/modern/internals/plugins/corePlugins/useChartSeries/useColorProcessor.js +21 -0
  308. package/modern/internals/{computeAxisValue.js → plugins/featurePlugins/useChartCartesianAxis/computeAxisValue.js} +19 -27
  309. package/modern/internals/plugins/featurePlugins/useChartCartesianAxis/createAxisFilterMapper.js +61 -0
  310. package/{context/ChartDataProvider/useDefaultizeAxis.js → modern/internals/plugins/featurePlugins/useChartCartesianAxis/defaultizeAxis.js} +3 -11
  311. package/modern/internals/plugins/featurePlugins/useChartCartesianAxis/getAxisExtremum.js +22 -0
  312. package/modern/internals/plugins/featurePlugins/useChartCartesianAxis/index.js +5 -0
  313. package/modern/internals/plugins/featurePlugins/useChartCartesianAxis/useChartCartesianAxis.js +68 -0
  314. package/modern/internals/plugins/featurePlugins/useChartCartesianAxis/useChartCartesianAxis.selectors.js +89 -0
  315. package/modern/internals/plugins/featurePlugins/useChartZAxis/index.js +2 -0
  316. package/modern/internals/plugins/featurePlugins/useChartZAxis/useChartZAxis.js +86 -0
  317. package/modern/internals/plugins/featurePlugins/useChartZAxis/useChartZAxis.selectors.js +3 -0
  318. package/modern/internals/plugins/featurePlugins/useChartZAxis/utils.js +0 -0
  319. package/modern/internals/plugins/models/index.js +2 -1
  320. package/modern/internals/plugins/models/seriesConfig/index.js +4 -0
  321. package/modern/internals/plugins/models/seriesConfig/seriesConfig.types.js +1 -0
  322. package/modern/internals/plugins/models/seriesConfig/seriesProcessor.types.js +1 -0
  323. package/modern/internals/store/extractPluginParamsFromProps.js +28 -0
  324. package/modern/internals/store/useChartModels.js +64 -0
  325. package/modern/internals/store/useCharts.js +14 -9
  326. package/modern/internals/store/useStore.js +1 -9
  327. package/node/BarChart/BarChart.js +11 -3
  328. package/node/BarChart/BarLabel/BarLabelPlot.js +1 -1
  329. package/node/BarChart/BarPlot.js +6 -6
  330. package/node/BarChart/formatter.js +2 -1
  331. package/node/BarChart/legend.js +1 -1
  332. package/node/BarChart/plugin.js +3 -2
  333. package/node/ChartContainer/ChartContainer.js +15 -9
  334. package/node/ChartContainer/useChartContainerProps.js +7 -5
  335. package/node/ChartDataProvider/ChartDataProvider.js +114 -0
  336. package/node/ChartDataProvider/useChartDataProviderProps.js +59 -0
  337. package/node/ChartsAxis/ChartsAxis.js +5 -3
  338. package/node/ChartsGrid/ChartsGrid.js +9 -5
  339. package/node/ChartsGrid/ChartsHorizontalGrid.js +4 -3
  340. package/node/ChartsGrid/ChartsVerticalGrid.js +4 -3
  341. package/node/ChartsLabel/ChartsLabelGradient.js +11 -12
  342. package/node/ChartsLegend/ContinuousColorLegend.js +3 -3
  343. package/node/ChartsLegend/useAxis.js +6 -4
  344. package/node/ChartsOnAxisClickHandler/ChartsOnAxisClickHandler.js +6 -5
  345. package/node/ChartsSurface/ChartsSurface.js +18 -28
  346. package/node/ChartsTooltip/ChartsAxisTooltipContent.js +5 -2
  347. package/node/ChartsTooltip/ChartsItemTooltipContent.js +5 -2
  348. package/node/ChartsTooltip/ChartsTooltipTable.js +1 -21
  349. package/node/ChartsTooltip/useAxisTooltip.js +11 -7
  350. package/node/ChartsTooltip/useItemTooltip.js +13 -9
  351. package/node/ChartsTooltip/utils.js +1 -0
  352. package/node/ChartsVoronoiHandler/ChartsVoronoiHandler.js +19 -12
  353. package/node/ChartsXAxis/ChartsXAxis.js +11 -8
  354. package/node/ChartsYAxis/ChartsYAxis.js +8 -5
  355. package/node/Gauge/Gauge.js +5 -1
  356. package/node/Gauge/GaugeContainer.js +38 -38
  357. package/node/Gauge/GaugeProvider.js +2 -2
  358. package/node/LineChart/AnimatedArea.js +1 -1
  359. package/node/LineChart/AnimatedLine.js +1 -1
  360. package/node/LineChart/AppearingMask.js +1 -1
  361. package/node/LineChart/AreaPlot.js +59 -25
  362. package/node/LineChart/CircleMarkElement.js +2 -7
  363. package/node/LineChart/LineChart.js +11 -7
  364. package/node/LineChart/LineHighlightElement.js +29 -9
  365. package/node/LineChart/LineHighlightPlot.js +18 -13
  366. package/node/LineChart/LinePlot.js +59 -24
  367. package/node/LineChart/MarkPlot.js +20 -23
  368. package/node/LineChart/formatter.js +3 -1
  369. package/node/LineChart/legend.js +1 -1
  370. package/node/LineChart/plugin.js +3 -2
  371. package/node/LineChart/useLineChartProps.js +3 -5
  372. package/node/PieChart/PieArcLabelPlot.js +1 -1
  373. package/node/PieChart/PieArcPlot.js +1 -1
  374. package/node/PieChart/PieChart.js +11 -3
  375. package/node/PieChart/dataTransform/transition.js +9 -7
  376. package/node/PieChart/formatter.js +4 -1
  377. package/node/PieChart/legend.js +1 -1
  378. package/node/PieChart/plugin.js +3 -2
  379. package/node/ScatterChart/Scatter.js +6 -4
  380. package/node/ScatterChart/ScatterChart.js +18 -14
  381. package/node/ScatterChart/ScatterPlot.js +10 -9
  382. package/node/ScatterChart/extremums.js +3 -1
  383. package/node/ScatterChart/formatter.js +3 -1
  384. package/node/ScatterChart/legend.js +1 -1
  385. package/node/ScatterChart/plugin.js +3 -2
  386. package/node/ScatterChart/useScatterChartProps.js +1 -4
  387. package/node/SparkLineChart/SparkLineChart.js +10 -1
  388. package/node/context/AnimationProvider/AnimationProvider.js +1 -1
  389. package/node/context/ChartProvider/ChartProvider.js +23 -2
  390. package/node/context/PolarProvider/PolarProvider.js +59 -51
  391. package/node/context/PolarProvider/getAxisExtremum.js +49 -27
  392. package/node/context/PolarProvider/usePolarContext.js +9 -14
  393. package/node/context/index.js +1 -20
  394. package/node/hooks/index.js +29 -2
  395. package/node/hooks/useAxis.js +34 -6
  396. package/node/hooks/useAxisEvents.js +12 -8
  397. package/node/hooks/useChartGradientId.js +56 -0
  398. package/node/hooks/useColorScale.js +4 -4
  399. package/node/hooks/useDrawingArea.js +5 -21
  400. package/node/hooks/useLegend.js +8 -14
  401. package/node/hooks/useSeries.js +5 -9
  402. package/node/hooks/useZAxis.js +27 -9
  403. package/node/index.js +12 -1
  404. package/node/internals/components/ChartsAxesGradients/ChartsAxesGradients.js +17 -27
  405. package/node/internals/components/ChartsAxesGradients/ChartsPiecewiseGradient.js +3 -0
  406. package/node/internals/index.js +111 -63
  407. package/node/internals/plugins/allPlugins.js +4 -2
  408. package/node/internals/plugins/corePlugins/corePlugins.js +3 -1
  409. package/node/internals/plugins/corePlugins/useChartDimensions/index.js +27 -0
  410. package/node/internals/plugins/corePlugins/useChartDimensions/useChartDimensions.js +183 -0
  411. package/node/internals/plugins/corePlugins/useChartDimensions/useChartDimensions.selectors.js +32 -0
  412. package/node/internals/plugins/corePlugins/useChartId/index.js +16 -1
  413. package/node/internals/plugins/corePlugins/useChartId/useChartId.js +1 -1
  414. package/node/internals/plugins/corePlugins/useChartSeries/index.js +27 -0
  415. package/node/{context/SeriesProvider → internals/plugins/corePlugins/useChartSeries}/processSeries.js +9 -6
  416. package/node/internals/plugins/corePlugins/useChartSeries/useChartSeries.js +80 -0
  417. package/node/internals/plugins/corePlugins/useChartSeries/useChartSeries.selectors.js +11 -0
  418. package/node/internals/plugins/corePlugins/useChartSeries/useColorProcessor.js +27 -0
  419. package/node/internals/{computeAxisValue.js → plugins/featurePlugins/useChartCartesianAxis/computeAxisValue.js} +19 -27
  420. package/node/internals/plugins/featurePlugins/useChartCartesianAxis/createAxisFilterMapper.js +69 -0
  421. package/node/{context/ChartDataProvider/useDefaultizeAxis.js → internals/plugins/featurePlugins/useChartCartesianAxis/defaultizeAxis.js} +4 -13
  422. package/node/internals/plugins/featurePlugins/useChartCartesianAxis/getAxisExtremum.js +29 -0
  423. package/node/internals/plugins/featurePlugins/useChartCartesianAxis/index.js +59 -0
  424. package/node/internals/plugins/featurePlugins/useChartCartesianAxis/useChartCartesianAxis.js +76 -0
  425. package/node/internals/plugins/featurePlugins/useChartCartesianAxis/useChartCartesianAxis.selectors.js +98 -0
  426. package/node/internals/plugins/featurePlugins/useChartZAxis/index.js +27 -0
  427. package/node/internals/plugins/featurePlugins/useChartZAxis/useChartZAxis.js +94 -0
  428. package/node/internals/plugins/featurePlugins/useChartZAxis/useChartZAxis.selectors.js +9 -0
  429. package/node/internals/plugins/featurePlugins/useChartZAxis/utils.js +1 -0
  430. package/node/internals/plugins/models/index.js +11 -0
  431. package/node/internals/plugins/models/seriesConfig/index.js +49 -0
  432. package/node/internals/plugins/models/seriesConfig/seriesProcessor.types.js +5 -0
  433. package/node/internals/store/extractPluginParamsFromProps.js +36 -0
  434. package/node/internals/store/useChartModels.js +73 -0
  435. package/node/internals/store/useCharts.js +14 -9
  436. package/node/internals/store/useStore.js +1 -9
  437. package/package.json +3 -3
  438. package/context/CartesianProvider/Cartesian.types.d.ts +0 -59
  439. package/context/CartesianProvider/CartesianContext.d.ts +0 -4
  440. package/context/CartesianProvider/CartesianContext.js +0 -13
  441. package/context/CartesianProvider/CartesianProvider.d.ts +0 -4
  442. package/context/CartesianProvider/CartesianProvider.js +0 -49
  443. package/context/CartesianProvider/defaultizeAxis.d.ts +0 -38
  444. package/context/CartesianProvider/defaultizeAxis.js +0 -13
  445. package/context/CartesianProvider/getAxisExtremum.d.ts +0 -5
  446. package/context/CartesianProvider/getAxisExtremum.js +0 -21
  447. package/context/CartesianProvider/index.d.ts +0 -4
  448. package/context/CartesianProvider/index.js +0 -4
  449. package/context/CartesianProvider/useCartesianContext.d.ts +0 -2
  450. package/context/CartesianProvider/useCartesianContext.js +0 -10
  451. package/context/ChartDataProvider/ChartDataProvider.d.ts +0 -58
  452. package/context/ChartDataProvider/ChartDataProvider.js +0 -270
  453. package/context/ChartDataProvider/useChartDataProviderProps.d.ts +0 -90
  454. package/context/ChartDataProvider/useChartDataProviderProps.js +0 -66
  455. package/context/ChartDataProvider/useDefaultizeAxis.d.ts +0 -39
  456. package/context/DrawingAreaProvider/DrawingArea.types.d.ts +0 -51
  457. package/context/DrawingAreaProvider/DrawingAreaContext.d.ts +0 -3
  458. package/context/DrawingAreaProvider/DrawingAreaContext.js +0 -15
  459. package/context/DrawingAreaProvider/DrawingAreaProvider.d.ts +0 -3
  460. package/context/DrawingAreaProvider/DrawingAreaProvider.js +0 -48
  461. package/context/DrawingAreaProvider/index.d.ts +0 -3
  462. package/context/DrawingAreaProvider/index.js +0 -3
  463. package/context/PluginProvider/ColorProcessor.types.d.ts +0 -8
  464. package/context/PluginProvider/ExtremumGetter.types.d.ts +0 -25
  465. package/context/PluginProvider/Plugin.types.d.ts +0 -29
  466. package/context/PluginProvider/PluginContext.d.ts +0 -4
  467. package/context/PluginProvider/PluginContext.js +0 -15
  468. package/context/PluginProvider/PluginProvider.d.ts +0 -4
  469. package/context/PluginProvider/PluginProvider.js +0 -21
  470. package/context/PluginProvider/SeriesFormatter.types.d.ts +0 -21
  471. package/context/PluginProvider/index.d.ts +0 -12
  472. package/context/PluginProvider/index.js +0 -12
  473. package/context/PluginProvider/mergePlugins.d.ts +0 -46
  474. package/context/PluginProvider/mergePlugins.js +0 -40
  475. package/context/PluginProvider/useColorProcessor.d.ts +0 -4
  476. package/context/PluginProvider/useColorProcessor.js +0 -17
  477. package/context/PluginProvider/useRadiusExtremumGetter.d.ts +0 -4
  478. package/context/PluginProvider/useRadiusExtremumGetter.js +0 -17
  479. package/context/PluginProvider/useRotationExtremumGetter.d.ts +0 -4
  480. package/context/PluginProvider/useRotationExtremumGetter.js +0 -17
  481. package/context/PluginProvider/useSeriesFormatter.d.ts +0 -4
  482. package/context/PluginProvider/useSeriesFormatter.js +0 -17
  483. package/context/PluginProvider/useXExtremumGetter.d.ts +0 -4
  484. package/context/PluginProvider/useXExtremumGetter.js +0 -15
  485. package/context/PluginProvider/useYExtremumGetter.d.ts +0 -4
  486. package/context/PluginProvider/useYExtremumGetter.js +0 -15
  487. package/context/SeriesProvider/Series.types.d.ts +0 -26
  488. package/context/SeriesProvider/SeriesContext.d.ts +0 -4
  489. package/context/SeriesProvider/SeriesContext.js +0 -8
  490. package/context/SeriesProvider/SeriesProvider.d.ts +0 -5
  491. package/context/SeriesProvider/SeriesProvider.js +0 -33
  492. package/context/SeriesProvider/index.d.ts +0 -12
  493. package/context/SeriesProvider/index.js +0 -8
  494. package/context/SeriesProvider/processSeries.d.ts +0 -18
  495. package/context/SizeProvider/Size.types.d.ts +0 -30
  496. package/context/SizeProvider/SizeContext.d.ts +0 -4
  497. package/context/SizeProvider/SizeContext.js +0 -15
  498. package/context/SizeProvider/SizeProvider.d.ts +0 -11
  499. package/context/SizeProvider/SizeProvider.js +0 -26
  500. package/context/SizeProvider/index.d.ts +0 -4
  501. package/context/SizeProvider/index.js +0 -4
  502. package/context/SizeProvider/useChartContainerDimensions.d.ts +0 -9
  503. package/context/SizeProvider/useChartContainerDimensions.js +0 -108
  504. package/context/SizeProvider/useSize.d.ts +0 -5
  505. package/context/SizeProvider/useSize.js +0 -13
  506. package/context/ZAxisContextProvider.d.ts +0 -33
  507. package/context/ZAxisContextProvider.js +0 -96
  508. package/internals/computeAxisValue.d.ts +0 -38
  509. package/modern/context/CartesianProvider/CartesianContext.js +0 -13
  510. package/modern/context/CartesianProvider/CartesianProvider.js +0 -49
  511. package/modern/context/CartesianProvider/defaultizeAxis.js +0 -13
  512. package/modern/context/CartesianProvider/getAxisExtremum.js +0 -21
  513. package/modern/context/CartesianProvider/index.js +0 -4
  514. package/modern/context/CartesianProvider/useCartesianContext.js +0 -10
  515. package/modern/context/ChartDataProvider/ChartDataProvider.js +0 -270
  516. package/modern/context/ChartDataProvider/useChartDataProviderProps.js +0 -66
  517. package/modern/context/DrawingAreaProvider/DrawingAreaContext.js +0 -15
  518. package/modern/context/DrawingAreaProvider/DrawingAreaProvider.js +0 -48
  519. package/modern/context/DrawingAreaProvider/index.js +0 -3
  520. package/modern/context/PluginProvider/PluginContext.js +0 -15
  521. package/modern/context/PluginProvider/PluginProvider.js +0 -21
  522. package/modern/context/PluginProvider/index.js +0 -12
  523. package/modern/context/PluginProvider/mergePlugins.js +0 -40
  524. package/modern/context/PluginProvider/useColorProcessor.js +0 -17
  525. package/modern/context/PluginProvider/useRadiusExtremumGetter.js +0 -17
  526. package/modern/context/PluginProvider/useRotationExtremumGetter.js +0 -17
  527. package/modern/context/PluginProvider/useSeriesFormatter.js +0 -17
  528. package/modern/context/PluginProvider/useXExtremumGetter.js +0 -15
  529. package/modern/context/PluginProvider/useYExtremumGetter.js +0 -15
  530. package/modern/context/SeriesProvider/SeriesContext.js +0 -8
  531. package/modern/context/SeriesProvider/SeriesProvider.js +0 -33
  532. package/modern/context/SeriesProvider/index.js +0 -8
  533. package/modern/context/SizeProvider/SizeContext.js +0 -15
  534. package/modern/context/SizeProvider/SizeProvider.js +0 -26
  535. package/modern/context/SizeProvider/index.js +0 -4
  536. package/modern/context/SizeProvider/useChartContainerDimensions.js +0 -108
  537. package/modern/context/SizeProvider/useSize.js +0 -13
  538. package/modern/context/ZAxisContextProvider.js +0 -96
  539. package/node/context/CartesianProvider/CartesianContext.js +0 -20
  540. package/node/context/CartesianProvider/CartesianProvider.js +0 -54
  541. package/node/context/CartesianProvider/defaultizeAxis.js +0 -21
  542. package/node/context/CartesianProvider/getAxisExtremum.js +0 -28
  543. package/node/context/CartesianProvider/index.js +0 -49
  544. package/node/context/CartesianProvider/useCartesianContext.js +0 -17
  545. package/node/context/ChartDataProvider/ChartDataProvider.js +0 -276
  546. package/node/context/ChartDataProvider/useChartDataProviderProps.js +0 -72
  547. package/node/context/DrawingAreaProvider/DrawingAreaContext.js +0 -21
  548. package/node/context/DrawingAreaProvider/DrawingAreaProvider.js +0 -55
  549. package/node/context/DrawingAreaProvider/index.js +0 -38
  550. package/node/context/PluginProvider/PluginContext.js +0 -22
  551. package/node/context/PluginProvider/PluginProvider.js +0 -26
  552. package/node/context/PluginProvider/index.js +0 -137
  553. package/node/context/PluginProvider/mergePlugins.js +0 -47
  554. package/node/context/PluginProvider/useColorProcessor.js +0 -23
  555. package/node/context/PluginProvider/useRadiusExtremumGetter.js +0 -23
  556. package/node/context/PluginProvider/useRotationExtremumGetter.js +0 -23
  557. package/node/context/PluginProvider/useSeriesFormatter.js +0 -23
  558. package/node/context/PluginProvider/useXExtremumGetter.js +0 -22
  559. package/node/context/PluginProvider/useYExtremumGetter.js +0 -22
  560. package/node/context/SeriesProvider/SeriesContext.js +0 -15
  561. package/node/context/SeriesProvider/SeriesProvider.js +0 -38
  562. package/node/context/SeriesProvider/index.js +0 -49
  563. package/node/context/SizeProvider/SizeContext.js +0 -22
  564. package/node/context/SizeProvider/SizeProvider.js +0 -29
  565. package/node/context/SizeProvider/index.js +0 -49
  566. package/node/context/SizeProvider/useChartContainerDimensions.js +0 -116
  567. package/node/context/SizeProvider/useSize.js +0 -20
  568. package/node/context/ZAxisContextProvider.js +0 -103
  569. /package/{context/ChartDataProvider → ChartDataProvider}/index.d.ts +0 -0
  570. /package/{context/ChartDataProvider → ChartDataProvider}/index.js +0 -0
  571. /package/{context/CartesianProvider/Cartesian.types.js → internals/plugins/corePlugins/useChartDimensions/useChartDimensions.types.js} +0 -0
  572. /package/{context/DrawingAreaProvider/DrawingArea.types.js → internals/plugins/corePlugins/useChartSeries/useChartSeries.types.js} +0 -0
  573. /package/{context/PluginProvider/ColorProcessor.types.js → internals/plugins/featurePlugins/useChartCartesianAxis/useChartCartesianAxis.types.js} +0 -0
  574. /package/{context/CartesianProvider → internals/plugins/featurePlugins/useChartCartesianAxis}/zoom.d.ts +0 -0
  575. /package/{context/CartesianProvider → internals/plugins/featurePlugins/useChartCartesianAxis}/zoom.js +0 -0
  576. /package/{context/PluginProvider/ExtremumGetter.types.js → internals/plugins/featurePlugins/useChartCartesianAxis/zoom.types.js} +0 -0
  577. /package/{context/PluginProvider/Plugin.types.js → internals/plugins/featurePlugins/useChartZAxis/useChartZAxis.types.js} +0 -0
  578. /package/{context/PluginProvider/SeriesFormatter.types.js → internals/plugins/models/seriesConfig/colorProcessor.types.js} +0 -0
  579. /package/{context/SeriesProvider/Series.types.js → internals/plugins/models/seriesConfig/extremumGetter.types.js} +0 -0
  580. /package/{context/SizeProvider/Size.types.js → internals/plugins/models/seriesConfig/seriesConfig.types.js} +0 -0
  581. /package/{modern/context/CartesianProvider/Cartesian.types.js → internals/plugins/models/seriesConfig/seriesProcessor.types.js} +0 -0
  582. /package/modern/{context/ChartDataProvider → ChartDataProvider}/index.js +0 -0
  583. /package/modern/{context/DrawingAreaProvider/DrawingArea.types.js → internals/plugins/corePlugins/useChartDimensions/useChartDimensions.types.js} +0 -0
  584. /package/modern/{context/PluginProvider/ColorProcessor.types.js → internals/plugins/corePlugins/useChartSeries/useChartSeries.types.js} +0 -0
  585. /package/modern/{context/PluginProvider/ExtremumGetter.types.js → internals/plugins/featurePlugins/useChartCartesianAxis/useChartCartesianAxis.types.js} +0 -0
  586. /package/modern/{context/CartesianProvider → internals/plugins/featurePlugins/useChartCartesianAxis}/zoom.js +0 -0
  587. /package/modern/{context/PluginProvider/Plugin.types.js → internals/plugins/featurePlugins/useChartCartesianAxis/zoom.types.js} +0 -0
  588. /package/modern/{context/PluginProvider/SeriesFormatter.types.js → internals/plugins/featurePlugins/useChartZAxis/useChartZAxis.types.js} +0 -0
  589. /package/modern/{context/SeriesProvider/Series.types.js → internals/plugins/models/seriesConfig/colorProcessor.types.js} +0 -0
  590. /package/modern/{context/SizeProvider/Size.types.js → internals/plugins/models/seriesConfig/extremumGetter.types.js} +0 -0
  591. /package/node/{context/ChartDataProvider → ChartDataProvider}/index.js +0 -0
  592. /package/node/{context/CartesianProvider/Cartesian.types.js → internals/plugins/corePlugins/useChartDimensions/useChartDimensions.types.js} +0 -0
  593. /package/node/{context/DrawingAreaProvider/DrawingArea.types.js → internals/plugins/corePlugins/useChartSeries/useChartSeries.types.js} +0 -0
  594. /package/node/{context/PluginProvider/ColorProcessor.types.js → internals/plugins/featurePlugins/useChartCartesianAxis/useChartCartesianAxis.types.js} +0 -0
  595. /package/node/{context/CartesianProvider → internals/plugins/featurePlugins/useChartCartesianAxis}/zoom.js +0 -0
  596. /package/node/{context/PluginProvider/ExtremumGetter.types.js → internals/plugins/featurePlugins/useChartCartesianAxis/zoom.types.js} +0 -0
  597. /package/node/{context/PluginProvider/Plugin.types.js → internals/plugins/featurePlugins/useChartZAxis/useChartZAxis.types.js} +0 -0
  598. /package/node/{context/PluginProvider/SeriesFormatter.types.js → internals/plugins/models/seriesConfig/colorProcessor.types.js} +0 -0
  599. /package/node/{context/SeriesProvider/Series.types.js → internals/plugins/models/seriesConfig/extremumGetter.types.js} +0 -0
  600. /package/node/{context/SizeProvider/Size.types.js → internals/plugins/models/seriesConfig/seriesConfig.types.js} +0 -0
@@ -1,49 +0,0 @@
1
- 'use client';
2
-
3
- import * as React from 'react';
4
- import { computeAxisValue } from "../../internals/computeAxisValue.js";
5
- import { useDrawingArea } from "../../hooks/useDrawingArea.js";
6
- import { useSeries } from "../../hooks/useSeries.js";
7
- import { CartesianContext } from "./CartesianContext.js";
8
- import { useXExtremumGetter } from "../PluginProvider/useXExtremumGetter.js";
9
- import { useYExtremumGetter } from "../PluginProvider/index.js";
10
- import { jsx as _jsx } from "react/jsx-runtime";
11
- function CartesianProvider(props) {
12
- const {
13
- xAxis,
14
- yAxis,
15
- children
16
- } = props;
17
- const formattedSeries = useSeries();
18
- const drawingArea = useDrawingArea();
19
- const xExtremumGetters = useXExtremumGetter();
20
- const yExtremumGetters = useYExtremumGetter();
21
- const xValues = React.useMemo(() => computeAxisValue({
22
- drawingArea,
23
- formattedSeries,
24
- axis: xAxis,
25
- extremumGetters: xExtremumGetters,
26
- axisDirection: 'x'
27
- }), [drawingArea, formattedSeries, xAxis, xExtremumGetters]);
28
- const yValues = React.useMemo(() => computeAxisValue({
29
- drawingArea,
30
- formattedSeries,
31
- axis: yAxis,
32
- extremumGetters: yExtremumGetters,
33
- axisDirection: 'y'
34
- }), [drawingArea, formattedSeries, yAxis, yExtremumGetters]);
35
- const value = React.useMemo(() => ({
36
- isInitialized: true,
37
- data: {
38
- xAxis: xValues.axis,
39
- yAxis: yValues.axis,
40
- xAxisIds: xValues.axisIds,
41
- yAxisIds: yValues.axisIds
42
- }
43
- }), [xValues, yValues]);
44
- return /*#__PURE__*/_jsx(CartesianContext.Provider, {
45
- value: value,
46
- children: children
47
- });
48
- }
49
- export { CartesianProvider };
@@ -1,13 +0,0 @@
1
- import _extends from "@babel/runtime/helpers/esm/extends";
2
- import { DEFAULT_X_AXIS_KEY, DEFAULT_Y_AXIS_KEY } from "../../constants/index.js";
3
- export const defaultizeAxis = (inAxis, axisName) => {
4
- const DEFAULT_AXIS_KEY = axisName === 'x' ? DEFAULT_X_AXIS_KEY : DEFAULT_Y_AXIS_KEY;
5
- return [...(inAxis?.map((axis, index) => _extends({
6
- id: `defaultized-${axisName}-axis-${index}`
7
- }, axis)) ?? []), ...(inAxis === undefined || inAxis.findIndex(({
8
- id
9
- }) => id === DEFAULT_AXIS_KEY) === -1 ? [{
10
- id: DEFAULT_AXIS_KEY,
11
- scaleType: 'linear'
12
- }] : [])];
13
- };
@@ -1,21 +0,0 @@
1
- const axisExtremumCallback = (acc, chartType, axis, getters, axisIndex, formattedSeries, getFilters) => {
2
- const getter = getters[chartType];
3
- const series = formattedSeries[chartType]?.series ?? {};
4
- const [minChartTypeData, maxChartTypeData] = getter?.({
5
- series,
6
- axis,
7
- axisIndex,
8
- isDefaultAxis: axisIndex === 0,
9
- getFilters
10
- }) ?? [Infinity, -Infinity];
11
- const [minData, maxData] = acc;
12
- return [Math.min(minChartTypeData, minData), Math.max(maxChartTypeData, maxData)];
13
- };
14
- export const getAxisExtremum = (axis, getters, axisIndex, formattedSeries, getFilters) => {
15
- const charTypes = Object.keys(getters);
16
- const extremums = charTypes.reduce((acc, charType) => axisExtremumCallback(acc, charType, axis, getters, axisIndex, formattedSeries, getFilters), [Infinity, -Infinity]);
17
- if (Number.isNaN(extremums[0]) || Number.isNaN(extremums[1])) {
18
- return [Infinity, -Infinity];
19
- }
20
- return extremums;
21
- };
@@ -1,4 +0,0 @@
1
- export * from "./CartesianProvider.js";
2
- export * from "./CartesianContext.js";
3
- export * from "./useCartesianContext.js";
4
- export * from "./Cartesian.types.js";
@@ -1,10 +0,0 @@
1
- 'use client';
2
-
3
- import * as React from 'react';
4
- import { CartesianContext } from "./CartesianContext.js";
5
- export const useCartesianContext = () => {
6
- const {
7
- data
8
- } = React.useContext(CartesianContext);
9
- return data;
10
- };
@@ -1,270 +0,0 @@
1
- 'use client';
2
-
3
- import _extends from "@babel/runtime/helpers/esm/extends";
4
- import * as React from 'react';
5
- import PropTypes from 'prop-types';
6
- import { DrawingAreaProvider } from "../DrawingAreaProvider/index.js";
7
- import { SeriesProvider } from "../SeriesProvider/index.js";
8
- import { CartesianProvider } from "../CartesianProvider/index.js";
9
- import { PluginProvider } from "../PluginProvider/index.js";
10
- import { useChartDataProviderProps } from "./useChartDataProviderProps.js";
11
- import { AnimationProvider } from "../AnimationProvider/index.js";
12
- import { ZAxisContextProvider } from "../ZAxisContextProvider.js";
13
- import { HighlightedProvider } from "../HighlightedProvider/index.js";
14
- import { SizeProvider } from "../SizeProvider/index.js";
15
- import { ChartProvider } from "../ChartProvider/index.js";
16
- import { jsx as _jsx } from "react/jsx-runtime";
17
- /**
18
- * Orchestrates the data providers for the chart components and hooks.
19
- *
20
- * Use this component if you have custom HTML components that need to access the chart data.
21
- *
22
- * Demos:
23
- *
24
- * - [Composition](http://localhost:3001/x/react-charts/composition/)
25
- *
26
- * API:
27
- *
28
- * - [ChartDataProvider API](https://mui.com/x/api/charts/chart-data-provider/)
29
- *
30
- * @example
31
- * ```jsx
32
- * <ChartDataProvider
33
- * series={[{ label: "Label", type: "bar", data: [10, 20] }]}
34
- * xAxis={[{ data: ["A", "B"], scaleType: "band", id: "x-axis" }]}
35
- * >
36
- * <ChartsSurface>
37
- * <BarPlot />
38
- * <ChartsXAxis position="bottom" axisId="x-axis" />
39
- * </ChartsSurface>
40
- * {'Custom Legend Component'}
41
- * </ChartDataProvider>
42
- * ```
43
- */
44
- function ChartDataProvider(props) {
45
- const {
46
- children,
47
- drawingAreaProviderProps,
48
- seriesProviderProps,
49
- cartesianProviderProps,
50
- zAxisContextProps,
51
- highlightedProviderProps,
52
- pluginProviderProps,
53
- animationProviderProps,
54
- sizeProviderProps
55
- } = useChartDataProviderProps(props);
56
- return /*#__PURE__*/_jsx(ChartProvider, {
57
- children: /*#__PURE__*/_jsx(SizeProvider, _extends({}, sizeProviderProps, {
58
- children: /*#__PURE__*/_jsx(DrawingAreaProvider, _extends({}, drawingAreaProviderProps, {
59
- children: /*#__PURE__*/_jsx(PluginProvider, _extends({}, pluginProviderProps, {
60
- children: /*#__PURE__*/_jsx(SeriesProvider, _extends({}, seriesProviderProps, {
61
- children: /*#__PURE__*/_jsx(CartesianProvider, _extends({}, cartesianProviderProps, {
62
- children: /*#__PURE__*/_jsx(ZAxisContextProvider, _extends({}, zAxisContextProps, {
63
- children: /*#__PURE__*/_jsx(HighlightedProvider, _extends({}, highlightedProviderProps, {
64
- children: /*#__PURE__*/_jsx(AnimationProvider, _extends({}, animationProviderProps, {
65
- children: children
66
- }))
67
- }))
68
- }))
69
- }))
70
- }))
71
- }))
72
- }))
73
- }))
74
- });
75
- }
76
- process.env.NODE_ENV !== "production" ? ChartDataProvider.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
- children: PropTypes.node,
82
- /**
83
- * Color palette used to colorize multiple series.
84
- * @default blueberryTwilightPalette
85
- */
86
- colors: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.string), PropTypes.func]),
87
- /**
88
- * An array of objects that can be used to populate series and axes data using their `dataKey` property.
89
- */
90
- dataset: PropTypes.arrayOf(PropTypes.object),
91
- /**
92
- * The height of the chart in px. If not defined, it takes the height of the parent element.
93
- */
94
- height: PropTypes.number,
95
- /**
96
- * The item currently highlighted. Turns highlighting into a controlled prop.
97
- */
98
- highlightedItem: PropTypes.shape({
99
- dataIndex: PropTypes.number,
100
- seriesId: PropTypes.oneOfType([PropTypes.number, PropTypes.string])
101
- }),
102
- /**
103
- * The margin between the SVG and the drawing area.
104
- * It's used for leaving some space for extra information such as the x- and y-axis or legend.
105
- * Accepts an object with the optional properties: `top`, `bottom`, `left`, and `right`.
106
- * @default object Depends on the charts type.
107
- */
108
- margin: PropTypes.shape({
109
- bottom: PropTypes.number,
110
- left: PropTypes.number,
111
- right: PropTypes.number,
112
- top: PropTypes.number
113
- }),
114
- /**
115
- * The callback fired when the highlighted item changes.
116
- *
117
- * @param {HighlightItemData | null} highlightedItem The newly highlighted item.
118
- */
119
- onHighlightChange: PropTypes.func,
120
- /**
121
- * An array of plugins defining how to preprocess data.
122
- * If not provided, the container supports line, bar, scatter and pie charts.
123
- */
124
- plugins: PropTypes.arrayOf(PropTypes.object),
125
- /**
126
- * The array of series to display.
127
- * Each type of series has its own specificity.
128
- * Please refer to the appropriate docs page to learn more about it.
129
- */
130
- series: PropTypes.arrayOf(PropTypes.object).isRequired,
131
- /**
132
- * If `true`, animations are skipped.
133
- * If unset or `false`, the animations respects the user's `prefers-reduced-motion` setting.
134
- */
135
- skipAnimation: PropTypes.bool,
136
- /**
137
- * The width of the chart in px. If not defined, it takes the width of the parent element.
138
- */
139
- width: PropTypes.number,
140
- /**
141
- * The configuration of the x-axes.
142
- * If not provided, a default axis config is used.
143
- * An array of [[AxisConfig]] objects.
144
- */
145
- xAxis: PropTypes.arrayOf(PropTypes.shape({
146
- classes: PropTypes.object,
147
- colorMap: PropTypes.oneOfType([PropTypes.shape({
148
- colors: PropTypes.arrayOf(PropTypes.string).isRequired,
149
- type: PropTypes.oneOf(['ordinal']).isRequired,
150
- unknownColor: PropTypes.string,
151
- values: PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.instanceOf(Date), PropTypes.number, PropTypes.string]).isRequired)
152
- }), PropTypes.shape({
153
- color: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.string.isRequired), PropTypes.func]).isRequired,
154
- max: PropTypes.oneOfType([PropTypes.instanceOf(Date), PropTypes.number]),
155
- min: PropTypes.oneOfType([PropTypes.instanceOf(Date), PropTypes.number]),
156
- type: PropTypes.oneOf(['continuous']).isRequired
157
- }), PropTypes.shape({
158
- colors: PropTypes.arrayOf(PropTypes.string).isRequired,
159
- thresholds: PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.instanceOf(Date), PropTypes.number]).isRequired).isRequired,
160
- type: PropTypes.oneOf(['piecewise']).isRequired
161
- })]),
162
- data: PropTypes.array,
163
- dataKey: PropTypes.string,
164
- disableLine: PropTypes.bool,
165
- disableTicks: PropTypes.bool,
166
- domainLimit: PropTypes.oneOfType([PropTypes.oneOf(['nice', 'strict']), PropTypes.func]),
167
- fill: PropTypes.string,
168
- hideTooltip: PropTypes.bool,
169
- id: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),
170
- label: PropTypes.string,
171
- labelStyle: PropTypes.object,
172
- max: PropTypes.oneOfType([PropTypes.instanceOf(Date), PropTypes.number]),
173
- min: PropTypes.oneOfType([PropTypes.instanceOf(Date), PropTypes.number]),
174
- position: PropTypes.oneOf(['bottom', 'top']),
175
- reverse: PropTypes.bool,
176
- scaleType: PropTypes.oneOf(['band', 'linear', 'log', 'point', 'pow', 'sqrt', 'time', 'utc']),
177
- slotProps: PropTypes.object,
178
- slots: PropTypes.object,
179
- stroke: PropTypes.string,
180
- sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),
181
- tickInterval: PropTypes.oneOfType([PropTypes.oneOf(['auto']), PropTypes.array, PropTypes.func]),
182
- tickLabelInterval: PropTypes.oneOfType([PropTypes.oneOf(['auto']), PropTypes.func]),
183
- tickLabelPlacement: PropTypes.oneOf(['middle', 'tick']),
184
- tickLabelStyle: PropTypes.object,
185
- tickMaxStep: PropTypes.number,
186
- tickMinStep: PropTypes.number,
187
- tickNumber: PropTypes.number,
188
- tickPlacement: PropTypes.oneOf(['end', 'extremities', 'middle', 'start']),
189
- tickSize: PropTypes.number,
190
- valueFormatter: PropTypes.func
191
- })),
192
- /**
193
- * The configuration of the y-axes.
194
- * If not provided, a default axis config is used.
195
- * An array of [[AxisConfig]] objects.
196
- */
197
- yAxis: PropTypes.arrayOf(PropTypes.shape({
198
- classes: PropTypes.object,
199
- colorMap: PropTypes.oneOfType([PropTypes.shape({
200
- colors: PropTypes.arrayOf(PropTypes.string).isRequired,
201
- type: PropTypes.oneOf(['ordinal']).isRequired,
202
- unknownColor: PropTypes.string,
203
- values: PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.instanceOf(Date), PropTypes.number, PropTypes.string]).isRequired)
204
- }), PropTypes.shape({
205
- color: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.string.isRequired), PropTypes.func]).isRequired,
206
- max: PropTypes.oneOfType([PropTypes.instanceOf(Date), PropTypes.number]),
207
- min: PropTypes.oneOfType([PropTypes.instanceOf(Date), PropTypes.number]),
208
- type: PropTypes.oneOf(['continuous']).isRequired
209
- }), PropTypes.shape({
210
- colors: PropTypes.arrayOf(PropTypes.string).isRequired,
211
- thresholds: PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.instanceOf(Date), PropTypes.number]).isRequired).isRequired,
212
- type: PropTypes.oneOf(['piecewise']).isRequired
213
- })]),
214
- data: PropTypes.array,
215
- dataKey: PropTypes.string,
216
- disableLine: PropTypes.bool,
217
- disableTicks: PropTypes.bool,
218
- domainLimit: PropTypes.oneOfType([PropTypes.oneOf(['nice', 'strict']), PropTypes.func]),
219
- fill: PropTypes.string,
220
- hideTooltip: PropTypes.bool,
221
- id: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),
222
- label: PropTypes.string,
223
- labelStyle: PropTypes.object,
224
- max: PropTypes.oneOfType([PropTypes.instanceOf(Date), PropTypes.number]),
225
- min: PropTypes.oneOfType([PropTypes.instanceOf(Date), PropTypes.number]),
226
- position: PropTypes.oneOf(['left', 'right']),
227
- reverse: PropTypes.bool,
228
- scaleType: PropTypes.oneOf(['band', 'linear', 'log', 'point', 'pow', 'sqrt', 'time', 'utc']),
229
- slotProps: PropTypes.object,
230
- slots: PropTypes.object,
231
- stroke: PropTypes.string,
232
- sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),
233
- tickInterval: PropTypes.oneOfType([PropTypes.oneOf(['auto']), PropTypes.array, PropTypes.func]),
234
- tickLabelInterval: PropTypes.oneOfType([PropTypes.oneOf(['auto']), PropTypes.func]),
235
- tickLabelPlacement: PropTypes.oneOf(['middle', 'tick']),
236
- tickLabelStyle: PropTypes.object,
237
- tickMaxStep: PropTypes.number,
238
- tickMinStep: PropTypes.number,
239
- tickNumber: PropTypes.number,
240
- tickPlacement: PropTypes.oneOf(['end', 'extremities', 'middle', 'start']),
241
- tickSize: PropTypes.number,
242
- valueFormatter: PropTypes.func
243
- })),
244
- /**
245
- * The configuration of the z-axes.
246
- */
247
- zAxis: PropTypes.arrayOf(PropTypes.shape({
248
- colorMap: PropTypes.oneOfType([PropTypes.shape({
249
- colors: PropTypes.arrayOf(PropTypes.string).isRequired,
250
- type: PropTypes.oneOf(['ordinal']).isRequired,
251
- unknownColor: PropTypes.string,
252
- values: PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.instanceOf(Date), PropTypes.number, PropTypes.string]).isRequired)
253
- }), PropTypes.shape({
254
- color: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.string.isRequired), PropTypes.func]).isRequired,
255
- max: PropTypes.oneOfType([PropTypes.instanceOf(Date), PropTypes.number]),
256
- min: PropTypes.oneOfType([PropTypes.instanceOf(Date), PropTypes.number]),
257
- type: PropTypes.oneOf(['continuous']).isRequired
258
- }), PropTypes.shape({
259
- colors: PropTypes.arrayOf(PropTypes.string).isRequired,
260
- thresholds: PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.instanceOf(Date), PropTypes.number]).isRequired).isRequired,
261
- type: PropTypes.oneOf(['piecewise']).isRequired
262
- })]),
263
- data: PropTypes.array,
264
- dataKey: PropTypes.string,
265
- id: PropTypes.string,
266
- max: PropTypes.number,
267
- min: PropTypes.number
268
- }))
269
- } : void 0;
270
- export { ChartDataProvider };
@@ -1,66 +0,0 @@
1
- 'use client';
2
-
3
- import { useDefaultizeAxis } from "./useDefaultizeAxis.js";
4
- export const useChartDataProviderProps = props => {
5
- const {
6
- width,
7
- height,
8
- series,
9
- margin,
10
- xAxis,
11
- yAxis,
12
- zAxis,
13
- colors,
14
- dataset,
15
- highlightedItem,
16
- onHighlightChange,
17
- plugins,
18
- children,
19
- skipAnimation
20
- } = props;
21
- const [defaultizedXAxis, defaultizedYAxis] = useDefaultizeAxis(xAxis, yAxis, dataset);
22
- const drawingAreaProviderProps = {
23
- margin
24
- };
25
- const animationProviderProps = {
26
- skipAnimation
27
- };
28
- const pluginProviderProps = {
29
- plugins
30
- };
31
- const seriesProviderProps = {
32
- series,
33
- colors,
34
- dataset
35
- };
36
- const cartesianProviderProps = {
37
- xAxis: defaultizedXAxis,
38
- yAxis: defaultizedYAxis,
39
- dataset
40
- };
41
- const zAxisContextProps = {
42
- zAxis,
43
- dataset
44
- };
45
- const highlightedProviderProps = {
46
- highlightedItem,
47
- onHighlightChange
48
- };
49
- const sizeProviderProps = {
50
- width,
51
- height
52
- };
53
- return {
54
- children,
55
- drawingAreaProviderProps,
56
- seriesProviderProps,
57
- cartesianProviderProps,
58
- zAxisContextProps,
59
- highlightedProviderProps,
60
- pluginProviderProps,
61
- animationProviderProps,
62
- xAxis: defaultizedXAxis,
63
- yAxis: defaultizedYAxis,
64
- sizeProviderProps
65
- };
66
- };
@@ -1,15 +0,0 @@
1
- 'use client';
2
-
3
- import * as React from 'react';
4
- export const DrawingAreaContext = /*#__PURE__*/React.createContext({
5
- top: 0,
6
- left: 0,
7
- bottom: 0,
8
- right: 0,
9
- height: 300,
10
- width: 400,
11
- isPointInside: () => false
12
- });
13
- if (process.env.NODE_ENV !== 'production') {
14
- DrawingAreaContext.displayName = 'DrawingContext';
15
- }
@@ -1,48 +0,0 @@
1
- 'use client';
2
-
3
- import _extends from "@babel/runtime/helpers/esm/extends";
4
- import * as React from 'react';
5
- import useId from '@mui/utils/useId';
6
- import useChartDimensions from "../../hooks/useChartDimensions.js";
7
- import { DrawingAreaContext } from "./DrawingAreaContext.js";
8
- import { useSize } from "../SizeProvider/index.js";
9
- import { jsx as _jsx } from "react/jsx-runtime";
10
- export function DrawingAreaProvider(props) {
11
- const {
12
- margin,
13
- children
14
- } = props;
15
- const {
16
- width,
17
- height
18
- } = useSize();
19
- const drawingArea = useChartDimensions(width, height, margin);
20
- const chartId = useId();
21
- const isPointInside = React.useCallback(({
22
- x,
23
- y
24
- }, options) => {
25
- // For element allowed to overflow, wrapping them in <g data-drawing-container /> make them fully part of the drawing area.
26
- if (options?.targetElement && options?.targetElement.closest('[data-drawing-container]')) {
27
- return true;
28
- }
29
- const isInsideX = x >= drawingArea.left - 1 && x <= drawingArea.left + drawingArea.width;
30
- const isInsideY = y >= drawingArea.top - 1 && y <= drawingArea.top + drawingArea.height;
31
- if (options?.direction === 'x') {
32
- return isInsideX;
33
- }
34
- if (options?.direction === 'y') {
35
- return isInsideY;
36
- }
37
- return isInsideX && isInsideY;
38
- }, [drawingArea]);
39
- const value = React.useMemo(() => _extends({
40
- chartId: chartId ?? ''
41
- }, drawingArea, {
42
- isPointInside
43
- }), [chartId, drawingArea, isPointInside]);
44
- return /*#__PURE__*/_jsx(DrawingAreaContext.Provider, {
45
- value: value,
46
- children: children
47
- });
48
- }
@@ -1,3 +0,0 @@
1
- export * from "./DrawingArea.types.js";
2
- export * from "./DrawingAreaProvider.js";
3
- export * from "./DrawingAreaContext.js";
@@ -1,15 +0,0 @@
1
- import * as React from 'react';
2
- export const PluginContext = /*#__PURE__*/React.createContext({
3
- isInitialized: false,
4
- data: {
5
- colorProcessors: {},
6
- seriesFormatters: {},
7
- xExtremumGetters: {},
8
- yExtremumGetters: {},
9
- rotationExtremumGetters: {},
10
- radiusExtremumGetters: {}
11
- }
12
- });
13
- if (process.env.NODE_ENV !== 'production') {
14
- PluginContext.displayName = 'PluginContext';
15
- }
@@ -1,21 +0,0 @@
1
- 'use client';
2
-
3
- import * as React from 'react';
4
- import { PluginContext } from "./PluginContext.js";
5
- import { mergePlugins } from "./mergePlugins.js";
6
- import { jsx as _jsx } from "react/jsx-runtime";
7
- function PluginProvider(props) {
8
- const {
9
- children,
10
- plugins
11
- } = props;
12
- const formattedSeries = React.useMemo(() => ({
13
- isInitialized: true,
14
- data: mergePlugins(plugins)
15
- }), [plugins]);
16
- return /*#__PURE__*/_jsx(PluginContext.Provider, {
17
- value: formattedSeries,
18
- children: children
19
- });
20
- }
21
- export { PluginProvider };
@@ -1,12 +0,0 @@
1
- export * from "./PluginProvider.js";
2
- export * from "./Plugin.types.js";
3
- export * from "./PluginContext.js";
4
- export * from "./ColorProcessor.types.js";
5
- export * from "./SeriesFormatter.types.js";
6
- export * from "./ExtremumGetter.types.js";
7
- export * from "./useColorProcessor.js";
8
- export * from "./useSeriesFormatter.js";
9
- export * from "./useXExtremumGetter.js";
10
- export * from "./useYExtremumGetter.js";
11
- export * from "./useRadiusExtremumGetter.js";
12
- export * from "./useRotationExtremumGetter.js";
@@ -1,40 +0,0 @@
1
- import { plugin as barPlugin } from "../../BarChart/plugin.js";
2
- import { plugin as scatterPlugin } from "../../ScatterChart/plugin.js";
3
- import { plugin as linePlugin } from "../../LineChart/plugin.js";
4
- import { plugin as piePlugin } from "../../PieChart/plugin.js";
5
- export const defaultPlugins = [barPlugin, scatterPlugin, linePlugin, piePlugin];
6
- export function mergePlugins(plugins) {
7
- const defaultizedPlugins = plugins ?? defaultPlugins;
8
- const seriesFormatters = {};
9
- const colorProcessors = {};
10
- const xExtremumGetters = {};
11
- const yExtremumGetters = {};
12
- const rotationExtremumGetters = {};
13
- const radiusExtremumGetters = {};
14
- for (let i = 0; i < defaultizedPlugins.length; i += 1) {
15
- const plugin = defaultizedPlugins[i];
16
- const seriesType = plugin.seriesType;
17
- seriesFormatters[seriesType] = plugin.seriesFormatter;
18
- colorProcessors[seriesType] = plugin.colorProcessor;
19
- if (plugin.xExtremumGetter) {
20
- xExtremumGetters[seriesType] = plugin.xExtremumGetter;
21
- }
22
- if (plugin.yExtremumGetter) {
23
- yExtremumGetters[seriesType] = plugin.yExtremumGetter;
24
- }
25
- if (plugin.rotationExtremumGetter) {
26
- rotationExtremumGetters[seriesType] = plugin.rotationExtremumGetter;
27
- }
28
- if (plugin.radiusExtremumGetter) {
29
- radiusExtremumGetters[seriesType] = plugin.radiusExtremumGetter;
30
- }
31
- }
32
- return {
33
- seriesFormatters,
34
- colorProcessors,
35
- xExtremumGetters,
36
- yExtremumGetters,
37
- rotationExtremumGetters,
38
- radiusExtremumGetters
39
- };
40
- }
@@ -1,17 +0,0 @@
1
- 'use client';
2
-
3
- import * as React from 'react';
4
- import { PluginContext } from "./PluginContext.js";
5
- export function useColorProcessor(seriesType) {
6
- const {
7
- isInitialized,
8
- data
9
- } = React.useContext(PluginContext);
10
- if (!isInitialized) {
11
- throw new Error(['MUI X: Could not find the plugin context.', 'It looks like you rendered your component outside of a ChartsContainer parent component.'].join('\n'));
12
- }
13
- if (!seriesType) {
14
- return data.colorProcessors;
15
- }
16
- return data.colorProcessors[seriesType];
17
- }
@@ -1,17 +0,0 @@
1
- 'use client';
2
-
3
- import * as React from 'react';
4
- import { PluginContext } from "./PluginContext.js";
5
- export function useRadiusExtremumGetter(seriesType) {
6
- const {
7
- isInitialized,
8
- data
9
- } = React.useContext(PluginContext);
10
- if (!isInitialized) {
11
- throw new Error(['MUI X: Could not find the plugin context.', 'It looks like you rendered your component outside of a ChartsContainer parent component.'].join('\n'));
12
- }
13
- if (!seriesType) {
14
- return data.radiusExtremumGetters;
15
- }
16
- return data.radiusExtremumGetters[seriesType];
17
- }
@@ -1,17 +0,0 @@
1
- 'use client';
2
-
3
- import * as React from 'react';
4
- import { PluginContext } from "./PluginContext.js";
5
- export function useRotationExtremumGetter(seriesType) {
6
- const {
7
- isInitialized,
8
- data
9
- } = React.useContext(PluginContext);
10
- if (!isInitialized) {
11
- throw new Error(['MUI X: Could not find the plugin context.', 'It looks like you rendered your component outside of a ChartsContainer parent component.'].join('\n'));
12
- }
13
- if (!seriesType) {
14
- return data.rotationExtremumGetters;
15
- }
16
- return data.rotationExtremumGetters[seriesType];
17
- }
@@ -1,17 +0,0 @@
1
- 'use client';
2
-
3
- import * as React from 'react';
4
- import { PluginContext } from "./PluginContext.js";
5
- export function useSeriesFormatter(seriesType) {
6
- const {
7
- isInitialized,
8
- data
9
- } = React.useContext(PluginContext);
10
- if (!isInitialized) {
11
- throw new Error(['MUI X: Could not find the plugin context.', 'It looks like you rendered your component outside of a ChartsContainer parent component.'].join('\n'));
12
- }
13
- if (!seriesType) {
14
- return data.seriesFormatters;
15
- }
16
- return data.seriesFormatters[seriesType];
17
- }