@mui/x-charts 8.0.0-alpha.0 → 8.0.0-alpha.2

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 (417) hide show
  1. package/BarChart/AnimatedBarElement.d.ts +15 -0
  2. package/BarChart/AnimatedBarElement.js +21 -0
  3. package/BarChart/BarChart.d.ts +4 -9
  4. package/BarChart/BarChart.js +3 -35
  5. package/BarChart/BarElement.d.ts +5 -1342
  6. package/BarChart/BarElement.js +10 -20
  7. package/BarChart/BarLabel/BarLabel.d.ts +298 -298
  8. package/BarChart/BarPlot.js +12 -2
  9. package/BarChart/useBarChartProps.d.ts +0 -2
  10. package/BarChart/useBarChartProps.js +2 -8
  11. package/CHANGELOG.md +651 -6
  12. package/ChartContainer/ChartContainer.d.ts +26 -19
  13. package/ChartContainer/ChartContainer.js +31 -25
  14. package/ChartContainer/useChartContainerProps.d.ts +5 -7
  15. package/ChartContainer/useChartContainerProps.js +12 -27
  16. package/ChartsAxis/axisClasses.js +2 -1
  17. package/ChartsAxisHighlight/ChartsAxisHighlight.d.ts +1 -17
  18. package/ChartsAxisHighlight/ChartsAxisHighlight.js +10 -96
  19. package/ChartsAxisHighlight/ChartsAxisHighlight.types.d.ts +5 -0
  20. package/ChartsAxisHighlight/ChartsAxisHighlight.types.js +1 -0
  21. package/ChartsAxisHighlight/ChartsAxisHighlightPath.d.ts +6 -0
  22. package/ChartsAxisHighlight/ChartsAxisHighlightPath.js +34 -0
  23. package/ChartsAxisHighlight/ChartsXAxisHighlight.d.ts +10 -0
  24. package/ChartsAxisHighlight/ChartsXAxisHighlight.js +53 -0
  25. package/ChartsAxisHighlight/ChartsYAxisHighlight.d.ts +10 -0
  26. package/ChartsAxisHighlight/ChartsYAxisHighlight.js +53 -0
  27. package/ChartsAxisHighlight/chartsAxisHighlightClasses.d.ts +7 -0
  28. package/ChartsAxisHighlight/chartsAxisHighlightClasses.js +6 -0
  29. package/ChartsAxisHighlight/index.d.ts +3 -0
  30. package/ChartsAxisHighlight/index.js +4 -1
  31. package/ChartsGrid/ChartsGrid.js +1 -1
  32. package/ChartsGrid/ChartsHorizontalGrid.d.ts +2 -2
  33. package/ChartsGrid/ChartsHorizontalGrid.js +3 -3
  34. package/ChartsGrid/ChartsVerticalGrid.d.ts +2 -2
  35. package/ChartsGrid/ChartsVerticalGrid.js +3 -3
  36. package/ChartsLegend/LegendPerItem.d.ts +2 -2
  37. package/ChartsLegend/chartsLegendClasses.js +2 -1
  38. package/ChartsOnAxisClickHandler/ChartsOnAxisClickHandler.js +9 -7
  39. package/ChartsSurface/ChartsSurface.d.ts +14 -15
  40. package/ChartsSurface/ChartsSurface.js +68 -35
  41. package/ChartsTooltip/ChartTooltip.types.d.ts +15 -0
  42. package/ChartsTooltip/ChartTooltip.types.js +1 -0
  43. package/ChartsTooltip/ChartsAxisTooltipContent.d.ts +7 -39
  44. package/ChartsTooltip/ChartsAxisTooltipContent.js +83 -72
  45. package/ChartsTooltip/ChartsItemTooltipContent.d.ts +5 -28
  46. package/ChartsTooltip/ChartsItemTooltipContent.js +54 -44
  47. package/ChartsTooltip/ChartsTooltip.d.ts +3 -69
  48. package/ChartsTooltip/ChartsTooltip.js +143 -145
  49. package/ChartsTooltip/ChartsTooltipContainer.d.ts +33 -0
  50. package/ChartsTooltip/ChartsTooltipContainer.js +280 -0
  51. package/ChartsTooltip/ChartsTooltipTable.js +1 -1
  52. package/ChartsTooltip/chartsTooltipClasses.d.ts +1 -0
  53. package/ChartsTooltip/chartsTooltipClasses.js +18 -2
  54. package/ChartsTooltip/index.d.ts +3 -3
  55. package/ChartsTooltip/index.js +2 -3
  56. package/ChartsTooltip/useAxisTooltip.d.ts +2 -2
  57. package/ChartsTooltip/useAxisTooltip.js +19 -19
  58. package/ChartsTooltip/useItemTooltip.d.ts +2 -3
  59. package/ChartsTooltip/useItemTooltip.js +5 -4
  60. package/ChartsTooltip/utils.d.ts +0 -3
  61. package/ChartsTooltip/utils.js +0 -8
  62. package/ChartsVoronoiHandler/ChartsVoronoiHandler.js +49 -36
  63. package/ChartsXAxis/ChartsXAxis.js +3 -17
  64. package/ChartsYAxis/ChartsYAxis.js +2 -17
  65. package/Gauge/Gauge.d.ts +1 -1
  66. package/Gauge/Gauge.js +0 -6
  67. package/Gauge/GaugeContainer.d.ts +3 -3
  68. package/Gauge/GaugeContainer.js +42 -76
  69. package/LineChart/AnimatedArea.d.ts +0 -1333
  70. package/LineChart/AnimatedArea.js +9 -18
  71. package/LineChart/AnimatedLine.d.ts +0 -1333
  72. package/LineChart/AnimatedLine.js +9 -20
  73. package/LineChart/AreaPlot.js +12 -2
  74. package/LineChart/CircleMarkElement.js +6 -5
  75. package/LineChart/LineChart.d.ts +4 -10
  76. package/LineChart/LineChart.js +3 -36
  77. package/LineChart/LineHighlightPlot.js +6 -5
  78. package/LineChart/LinePlot.js +12 -2
  79. package/LineChart/MarkElement.js +6 -5
  80. package/LineChart/useLineChartProps.d.ts +0 -2
  81. package/LineChart/useLineChartProps.js +2 -8
  82. package/PieChart/PieChart.d.ts +3 -9
  83. package/PieChart/PieChart.js +5 -41
  84. package/PieChart/PiePlot.js +2 -2
  85. package/PieChart/getPieCoordinates.d.ts +2 -2
  86. package/README.md +2 -2
  87. package/ScatterChart/Scatter.js +6 -5
  88. package/ScatterChart/ScatterChart.d.ts +4 -10
  89. package/ScatterChart/ScatterChart.js +5 -36
  90. package/ScatterChart/useScatterChartProps.d.ts +0 -2
  91. package/ScatterChart/useScatterChartProps.js +1 -9
  92. package/SparkLineChart/SparkLineChart.d.ts +3 -4
  93. package/SparkLineChart/SparkLineChart.js +4 -35
  94. package/context/CartesianProvider/defaultizeAxis.d.ts +9 -11
  95. package/context/ChartDataProvider/ChartDataProvider.d.ts +36 -19
  96. package/context/ChartDataProvider/ChartDataProvider.js +55 -48
  97. package/context/ChartDataProvider/useChartDataProviderProps.d.ts +25 -32
  98. package/context/ChartDataProvider/useChartDataProviderProps.js +22 -42
  99. package/context/ChartDataProvider/useDefaultizeAxis.d.ts +9 -11
  100. package/context/ChartProvider/ChartContext.d.ts +6 -0
  101. package/context/ChartProvider/ChartContext.js +8 -0
  102. package/context/ChartProvider/ChartProvider.d.ts +4 -0
  103. package/context/ChartProvider/ChartProvider.js +19 -0
  104. package/context/ChartProvider/ChartProvider.types.d.ts +24 -0
  105. package/context/ChartProvider/ChartProvider.types.js +1 -0
  106. package/context/ChartProvider/index.d.ts +3 -0
  107. package/context/ChartProvider/index.js +3 -0
  108. package/context/ChartProvider/useChartContext.d.ts +3 -0
  109. package/context/ChartProvider/useChartContext.js +11 -0
  110. package/context/{DrawingProvider.d.ts → DrawingAreaProvider/DrawingArea.types.d.ts} +3 -14
  111. package/context/DrawingAreaProvider/DrawingArea.types.js +1 -0
  112. package/context/DrawingAreaProvider/DrawingAreaContext.d.ts +3 -0
  113. package/context/DrawingAreaProvider/DrawingAreaContext.js +15 -0
  114. package/context/DrawingAreaProvider/DrawingAreaProvider.d.ts +3 -0
  115. package/{modern/context/DrawingProvider.js → context/DrawingAreaProvider/DrawingAreaProvider.js} +11 -41
  116. package/context/DrawingAreaProvider/index.d.ts +3 -0
  117. package/context/DrawingAreaProvider/index.js +3 -0
  118. package/context/InteractionSelectors.d.ts +382 -0
  119. package/context/InteractionSelectors.js +12 -0
  120. package/context/SizeProvider/Size.types.d.ts +30 -0
  121. package/context/SizeProvider/Size.types.js +1 -0
  122. package/context/SizeProvider/SizeContext.d.ts +4 -0
  123. package/context/SizeProvider/SizeContext.js +15 -0
  124. package/context/SizeProvider/SizeProvider.d.ts +11 -0
  125. package/context/SizeProvider/SizeProvider.js +26 -0
  126. package/context/SizeProvider/index.d.ts +4 -0
  127. package/context/SizeProvider/index.js +4 -0
  128. package/context/SizeProvider/useChartContainerDimensions.d.ts +9 -0
  129. package/{modern/ChartContainer → context/SizeProvider}/useChartContainerDimensions.js +16 -6
  130. package/context/SizeProvider/useSize.d.ts +5 -0
  131. package/context/SizeProvider/useSize.js +13 -0
  132. package/context/index.d.ts +2 -0
  133. package/context/index.js +2 -1
  134. package/hooks/useAxisEvents.js +32 -19
  135. package/hooks/useChartId.js +5 -6
  136. package/hooks/useDrawingArea.d.ts +2 -2
  137. package/hooks/useDrawingArea.js +2 -2
  138. package/hooks/useInteractionItemProps.js +22 -13
  139. package/hooks/useSvgRef.d.ts +1 -1
  140. package/hooks/useSvgRef.js +4 -8
  141. package/index.js +1 -1
  142. package/internals/components/ChartsAxesGradients/ChartsAxesGradients.d.ts +1 -1
  143. package/internals/components/ChartsAxesGradients/ChartsAxesGradients.js +9 -7
  144. package/internals/computeAxisValue.d.ts +2 -2
  145. package/internals/defaultizeColor.d.ts +1 -1
  146. package/internals/index.d.ts +3 -4
  147. package/internals/index.js +3 -4
  148. package/internals/plugins/allPlugins.d.ts +1 -0
  149. package/internals/plugins/allPlugins.js +3 -0
  150. package/internals/plugins/corePlugins/corePlugins.d.ts +10 -0
  151. package/internals/plugins/corePlugins/corePlugins.js +7 -0
  152. package/internals/plugins/corePlugins/index.d.ts +2 -0
  153. package/internals/plugins/corePlugins/index.js +1 -0
  154. package/internals/plugins/corePlugins/useChartId/index.d.ts +2 -0
  155. package/internals/plugins/corePlugins/useChartId/index.js +1 -0
  156. package/internals/plugins/corePlugins/useChartId/useChartId.d.ts +3 -0
  157. package/internals/plugins/corePlugins/useChartId/useChartId.js +32 -0
  158. package/internals/plugins/corePlugins/useChartId/useChartId.selectors.d.ts +36 -0
  159. package/internals/plugins/corePlugins/useChartId/useChartId.selectors.js +9 -0
  160. package/internals/plugins/corePlugins/useChartId/useChartId.types.d.ts +20 -0
  161. package/internals/plugins/corePlugins/useChartId/useChartId.types.js +1 -0
  162. package/internals/plugins/corePlugins/useChartId/useChartId.utils.d.ts +1 -0
  163. package/internals/plugins/corePlugins/useChartId/useChartId.utils.js +5 -0
  164. package/internals/plugins/featurePlugins/useChartInteraction/index.d.ts +3 -0
  165. package/internals/plugins/featurePlugins/useChartInteraction/index.js +2 -0
  166. package/internals/plugins/featurePlugins/useChartInteraction/useChartInteraction.d.ts +3 -0
  167. package/internals/plugins/featurePlugins/useChartInteraction/useChartInteraction.js +73 -0
  168. package/internals/plugins/featurePlugins/useChartInteraction/useChartInteraction.selectors.d.ts +376 -0
  169. package/internals/plugins/featurePlugins/useChartInteraction/useChartInteraction.selectors.js +10 -0
  170. package/internals/plugins/featurePlugins/useChartInteraction/useChartInteraction.types.d.ts +57 -0
  171. package/internals/plugins/featurePlugins/useChartInteraction/useChartInteraction.types.js +1 -0
  172. package/internals/plugins/models/chart.d.ts +14 -0
  173. package/internals/plugins/models/chart.js +1 -0
  174. package/internals/plugins/models/helpers.d.ts +7 -0
  175. package/internals/plugins/models/helpers.js +1 -0
  176. package/internals/plugins/models/index.d.ts +3 -0
  177. package/internals/plugins/models/index.js +3 -0
  178. package/internals/plugins/models/plugin.d.ts +75 -0
  179. package/internals/plugins/models/plugin.js +1 -0
  180. package/internals/plugins/utils/ChartStore.d.ts +13 -0
  181. package/internals/plugins/utils/ChartStore.js +24 -0
  182. package/internals/plugins/utils/selectors.d.ts +9 -0
  183. package/internals/plugins/utils/selectors.js +37 -0
  184. package/internals/store/useCharts.d.ts +14 -0
  185. package/internals/store/useCharts.js +72 -0
  186. package/internals/store/useCharts.types.d.ts +5 -0
  187. package/internals/store/useCharts.types.js +1 -0
  188. package/internals/store/useSelector.d.ts +4 -0
  189. package/internals/store/useSelector.js +6 -0
  190. package/internals/store/useStore.d.ts +3 -0
  191. package/internals/store/useStore.js +17 -0
  192. package/models/axis.d.ts +1 -13
  193. package/modern/BarChart/AnimatedBarElement.js +21 -0
  194. package/modern/BarChart/BarChart.js +3 -35
  195. package/modern/BarChart/BarElement.js +10 -20
  196. package/modern/BarChart/BarPlot.js +12 -2
  197. package/modern/BarChart/useBarChartProps.js +2 -8
  198. package/modern/ChartContainer/ChartContainer.js +31 -25
  199. package/modern/ChartContainer/useChartContainerProps.js +12 -27
  200. package/modern/ChartsAxis/axisClasses.js +2 -1
  201. package/modern/ChartsAxisHighlight/ChartsAxisHighlight.js +10 -96
  202. package/modern/ChartsAxisHighlight/ChartsAxisHighlight.types.js +1 -0
  203. package/modern/ChartsAxisHighlight/ChartsAxisHighlightPath.js +34 -0
  204. package/modern/ChartsAxisHighlight/ChartsXAxisHighlight.js +53 -0
  205. package/modern/ChartsAxisHighlight/ChartsYAxisHighlight.js +53 -0
  206. package/modern/ChartsAxisHighlight/chartsAxisHighlightClasses.js +6 -0
  207. package/modern/ChartsAxisHighlight/index.js +4 -1
  208. package/modern/ChartsGrid/ChartsGrid.js +1 -1
  209. package/modern/ChartsGrid/ChartsHorizontalGrid.js +3 -3
  210. package/modern/ChartsGrid/ChartsVerticalGrid.js +3 -3
  211. package/modern/ChartsLegend/chartsLegendClasses.js +2 -1
  212. package/modern/ChartsOnAxisClickHandler/ChartsOnAxisClickHandler.js +9 -7
  213. package/modern/ChartsSurface/ChartsSurface.js +68 -35
  214. package/modern/ChartsTooltip/ChartTooltip.types.js +1 -0
  215. package/modern/ChartsTooltip/ChartsAxisTooltipContent.js +83 -72
  216. package/modern/ChartsTooltip/ChartsItemTooltipContent.js +54 -44
  217. package/modern/ChartsTooltip/ChartsTooltip.js +143 -145
  218. package/modern/ChartsTooltip/ChartsTooltipContainer.js +280 -0
  219. package/modern/ChartsTooltip/ChartsTooltipTable.js +1 -1
  220. package/modern/ChartsTooltip/chartsTooltipClasses.js +18 -2
  221. package/modern/ChartsTooltip/index.js +2 -3
  222. package/modern/ChartsTooltip/useAxisTooltip.js +19 -19
  223. package/modern/ChartsTooltip/useItemTooltip.js +5 -4
  224. package/modern/ChartsTooltip/utils.js +0 -8
  225. package/modern/ChartsVoronoiHandler/ChartsVoronoiHandler.js +49 -36
  226. package/modern/ChartsXAxis/ChartsXAxis.js +3 -17
  227. package/modern/ChartsYAxis/ChartsYAxis.js +2 -17
  228. package/modern/Gauge/Gauge.js +0 -6
  229. package/modern/Gauge/GaugeContainer.js +42 -76
  230. package/modern/LineChart/AnimatedArea.js +9 -18
  231. package/modern/LineChart/AnimatedLine.js +9 -20
  232. package/modern/LineChart/AreaPlot.js +12 -2
  233. package/modern/LineChart/CircleMarkElement.js +6 -5
  234. package/modern/LineChart/LineChart.js +3 -36
  235. package/modern/LineChart/LineHighlightPlot.js +6 -5
  236. package/modern/LineChart/LinePlot.js +12 -2
  237. package/modern/LineChart/MarkElement.js +6 -5
  238. package/modern/LineChart/useLineChartProps.js +2 -8
  239. package/modern/PieChart/PieChart.js +5 -41
  240. package/modern/PieChart/PiePlot.js +2 -2
  241. package/modern/ScatterChart/Scatter.js +6 -5
  242. package/modern/ScatterChart/ScatterChart.js +5 -36
  243. package/modern/ScatterChart/useScatterChartProps.js +1 -9
  244. package/modern/SparkLineChart/SparkLineChart.js +4 -35
  245. package/modern/context/ChartDataProvider/ChartDataProvider.js +55 -48
  246. package/modern/context/ChartDataProvider/useChartDataProviderProps.js +22 -42
  247. package/modern/context/ChartProvider/ChartContext.js +8 -0
  248. package/modern/context/ChartProvider/ChartProvider.js +19 -0
  249. package/modern/context/ChartProvider/ChartProvider.types.js +1 -0
  250. package/modern/context/ChartProvider/index.js +3 -0
  251. package/modern/context/ChartProvider/useChartContext.js +11 -0
  252. package/modern/context/DrawingAreaProvider/DrawingArea.types.js +1 -0
  253. package/modern/context/DrawingAreaProvider/DrawingAreaContext.js +15 -0
  254. package/{context/DrawingProvider.js → modern/context/DrawingAreaProvider/DrawingAreaProvider.js} +11 -41
  255. package/modern/context/DrawingAreaProvider/index.js +3 -0
  256. package/modern/context/InteractionSelectors.js +12 -0
  257. package/modern/context/SizeProvider/Size.types.js +1 -0
  258. package/modern/context/SizeProvider/SizeContext.js +15 -0
  259. package/modern/context/SizeProvider/SizeProvider.js +26 -0
  260. package/modern/context/SizeProvider/index.js +4 -0
  261. package/{ChartContainer → modern/context/SizeProvider}/useChartContainerDimensions.js +16 -6
  262. package/modern/context/SizeProvider/useSize.js +13 -0
  263. package/modern/context/index.js +2 -1
  264. package/modern/hooks/useAxisEvents.js +32 -19
  265. package/modern/hooks/useChartId.js +5 -6
  266. package/modern/hooks/useDrawingArea.js +2 -2
  267. package/modern/hooks/useInteractionItemProps.js +22 -13
  268. package/modern/hooks/useSvgRef.js +4 -8
  269. package/modern/index.js +1 -1
  270. package/modern/internals/components/ChartsAxesGradients/ChartsAxesGradients.js +9 -7
  271. package/modern/internals/index.js +3 -4
  272. package/modern/internals/plugins/allPlugins.js +3 -0
  273. package/modern/internals/plugins/corePlugins/corePlugins.js +7 -0
  274. package/modern/internals/plugins/corePlugins/index.js +1 -0
  275. package/modern/internals/plugins/corePlugins/useChartId/index.js +1 -0
  276. package/modern/internals/plugins/corePlugins/useChartId/useChartId.js +32 -0
  277. package/modern/internals/plugins/corePlugins/useChartId/useChartId.selectors.js +9 -0
  278. package/modern/internals/plugins/corePlugins/useChartId/useChartId.types.js +1 -0
  279. package/modern/internals/plugins/corePlugins/useChartId/useChartId.utils.js +5 -0
  280. package/modern/internals/plugins/featurePlugins/useChartInteraction/index.js +2 -0
  281. package/modern/internals/plugins/featurePlugins/useChartInteraction/useChartInteraction.js +73 -0
  282. package/modern/internals/plugins/featurePlugins/useChartInteraction/useChartInteraction.selectors.js +10 -0
  283. package/modern/internals/plugins/featurePlugins/useChartInteraction/useChartInteraction.types.js +1 -0
  284. package/modern/internals/plugins/models/chart.js +1 -0
  285. package/modern/internals/plugins/models/helpers.js +1 -0
  286. package/modern/internals/plugins/models/index.js +3 -0
  287. package/modern/internals/plugins/models/plugin.js +1 -0
  288. package/modern/internals/plugins/utils/ChartStore.js +24 -0
  289. package/modern/internals/plugins/utils/selectors.js +37 -0
  290. package/modern/internals/store/useCharts.js +72 -0
  291. package/modern/internals/store/useCharts.types.js +1 -0
  292. package/modern/internals/store/useSelector.js +6 -0
  293. package/modern/internals/store/useStore.js +17 -0
  294. package/node/BarChart/AnimatedBarElement.js +28 -0
  295. package/node/BarChart/BarChart.js +3 -35
  296. package/node/BarChart/BarElement.js +11 -21
  297. package/node/BarChart/BarPlot.js +11 -1
  298. package/node/BarChart/useBarChartProps.js +2 -8
  299. package/node/ChartContainer/ChartContainer.js +31 -25
  300. package/node/ChartContainer/useChartContainerProps.js +12 -27
  301. package/node/ChartsAxis/axisClasses.js +5 -3
  302. package/node/ChartsAxisHighlight/ChartsAxisHighlight.js +12 -100
  303. package/node/ChartsAxisHighlight/ChartsAxisHighlight.types.js +5 -0
  304. package/node/ChartsAxisHighlight/ChartsAxisHighlightPath.js +40 -0
  305. package/node/ChartsAxisHighlight/ChartsXAxisHighlight.js +57 -0
  306. package/node/ChartsAxisHighlight/ChartsYAxisHighlight.js +57 -0
  307. package/node/ChartsAxisHighlight/chartsAxisHighlightClasses.js +14 -0
  308. package/node/ChartsAxisHighlight/index.js +33 -0
  309. package/node/ChartsGrid/ChartsGrid.js +2 -2
  310. package/node/ChartsGrid/ChartsHorizontalGrid.js +4 -4
  311. package/node/ChartsGrid/ChartsVerticalGrid.js +4 -4
  312. package/node/ChartsLegend/chartsLegendClasses.js +5 -3
  313. package/node/ChartsOnAxisClickHandler/ChartsOnAxisClickHandler.js +9 -7
  314. package/node/ChartsSurface/ChartsSurface.js +68 -35
  315. package/node/ChartsTooltip/ChartTooltip.types.js +5 -0
  316. package/node/ChartsTooltip/ChartsAxisTooltipContent.js +83 -73
  317. package/node/ChartsTooltip/ChartsItemTooltipContent.js +54 -45
  318. package/node/ChartsTooltip/ChartsTooltip.js +142 -144
  319. package/node/ChartsTooltip/ChartsTooltipContainer.js +286 -0
  320. package/node/ChartsTooltip/ChartsTooltipTable.js +2 -2
  321. package/node/ChartsTooltip/chartsTooltipClasses.js +22 -3
  322. package/node/ChartsTooltip/index.js +19 -28
  323. package/node/ChartsTooltip/useAxisTooltip.js +19 -19
  324. package/node/ChartsTooltip/useItemTooltip.js +5 -4
  325. package/node/ChartsTooltip/utils.js +0 -9
  326. package/node/ChartsVoronoiHandler/ChartsVoronoiHandler.js +50 -37
  327. package/node/ChartsXAxis/ChartsXAxis.js +3 -17
  328. package/node/ChartsYAxis/ChartsYAxis.js +2 -17
  329. package/node/Gauge/Gauge.js +0 -6
  330. package/node/Gauge/GaugeContainer.js +42 -76
  331. package/node/LineChart/AnimatedArea.js +9 -19
  332. package/node/LineChart/AnimatedLine.js +9 -21
  333. package/node/LineChart/AreaPlot.js +11 -1
  334. package/node/LineChart/CircleMarkElement.js +6 -5
  335. package/node/LineChart/LineChart.js +3 -36
  336. package/node/LineChart/LineHighlightPlot.js +6 -5
  337. package/node/LineChart/LinePlot.js +11 -1
  338. package/node/LineChart/MarkElement.js +6 -5
  339. package/node/LineChart/useLineChartProps.js +2 -8
  340. package/node/PieChart/PieChart.js +5 -41
  341. package/node/PieChart/PiePlot.js +2 -2
  342. package/node/ScatterChart/Scatter.js +6 -5
  343. package/node/ScatterChart/ScatterChart.js +5 -36
  344. package/node/ScatterChart/useScatterChartProps.js +1 -9
  345. package/node/SparkLineChart/SparkLineChart.js +4 -35
  346. package/node/context/ChartDataProvider/ChartDataProvider.js +55 -48
  347. package/node/context/ChartDataProvider/useChartDataProviderProps.js +22 -44
  348. package/node/context/ChartProvider/ChartContext.js +15 -0
  349. package/node/context/ChartProvider/ChartProvider.js +24 -0
  350. package/node/context/ChartProvider/ChartProvider.types.js +5 -0
  351. package/node/context/ChartProvider/index.js +38 -0
  352. package/node/context/ChartProvider/useChartContext.js +18 -0
  353. package/node/context/DrawingAreaProvider/DrawingArea.types.js +5 -0
  354. package/node/context/DrawingAreaProvider/DrawingAreaContext.js +21 -0
  355. package/node/context/{DrawingProvider.js → DrawingAreaProvider/DrawingAreaProvider.js} +12 -44
  356. package/node/context/DrawingAreaProvider/index.js +38 -0
  357. package/node/context/InteractionSelectors.js +18 -0
  358. package/node/context/SizeProvider/Size.types.js +5 -0
  359. package/node/context/SizeProvider/SizeContext.js +22 -0
  360. package/node/context/SizeProvider/SizeProvider.js +29 -0
  361. package/node/context/SizeProvider/index.js +49 -0
  362. package/node/{ChartContainer → context/SizeProvider}/useChartContainerDimensions.js +16 -6
  363. package/node/context/SizeProvider/useSize.js +20 -0
  364. package/node/context/index.js +10 -2
  365. package/node/hooks/useAxisEvents.js +33 -19
  366. package/node/hooks/useChartId.js +5 -7
  367. package/node/hooks/useDrawingArea.js +2 -2
  368. package/node/hooks/useInteractionItemProps.js +23 -14
  369. package/node/hooks/useSvgRef.js +4 -9
  370. package/node/index.js +1 -1
  371. package/node/internals/components/ChartsAxesGradients/ChartsAxesGradients.js +8 -6
  372. package/node/internals/index.js +28 -40
  373. package/node/internals/plugins/allPlugins.js +10 -0
  374. package/node/internals/plugins/corePlugins/corePlugins.js +12 -0
  375. package/node/internals/plugins/corePlugins/index.js +12 -0
  376. package/node/internals/plugins/corePlugins/useChartId/index.js +12 -0
  377. package/node/internals/plugins/corePlugins/useChartId/useChartId.js +41 -0
  378. package/node/internals/plugins/corePlugins/useChartId/useChartId.selectors.js +15 -0
  379. package/node/internals/plugins/corePlugins/useChartId/useChartId.types.js +5 -0
  380. package/node/internals/plugins/corePlugins/useChartId/useChartId.utils.js +12 -0
  381. package/node/internals/plugins/featurePlugins/useChartInteraction/index.js +27 -0
  382. package/node/internals/plugins/featurePlugins/useChartInteraction/useChartInteraction.js +81 -0
  383. package/node/internals/plugins/featurePlugins/useChartInteraction/useChartInteraction.selectors.js +16 -0
  384. package/node/internals/plugins/featurePlugins/useChartInteraction/useChartInteraction.types.js +5 -0
  385. package/node/internals/plugins/models/chart.js +5 -0
  386. package/node/internals/plugins/models/helpers.js +5 -0
  387. package/node/internals/plugins/models/index.js +38 -0
  388. package/node/internals/plugins/models/plugin.js +5 -0
  389. package/node/internals/plugins/utils/ChartStore.js +31 -0
  390. package/node/internals/plugins/utils/selectors.js +44 -0
  391. package/node/internals/store/useCharts.js +80 -0
  392. package/node/internals/store/useCharts.types.js +5 -0
  393. package/node/internals/store/useSelector.js +13 -0
  394. package/node/internals/store/useStore.js +23 -0
  395. package/package.json +7 -5
  396. package/themeAugmentation/props.d.ts +1 -2
  397. package/ChartContainer/ResizableContainer.d.ts +0 -9
  398. package/ChartContainer/ResizableContainer.js +0 -26
  399. package/ChartContainer/useChartContainerDimensions.d.ts +0 -6
  400. package/ChartsTooltip/DefaultChartsAxisTooltipContent.d.ts +0 -7
  401. package/ChartsTooltip/DefaultChartsAxisTooltipContent.js +0 -123
  402. package/ChartsTooltip/DefaultChartsItemTooltipContent.d.ts +0 -8
  403. package/ChartsTooltip/DefaultChartsItemTooltipContent.js +0 -92
  404. package/context/InteractionProvider.d.ts +0 -50
  405. package/context/InteractionProvider.js +0 -78
  406. package/modern/ChartContainer/ResizableContainer.js +0 -26
  407. package/modern/ChartsTooltip/DefaultChartsAxisTooltipContent.js +0 -123
  408. package/modern/ChartsTooltip/DefaultChartsItemTooltipContent.js +0 -92
  409. package/modern/context/InteractionProvider.js +0 -78
  410. package/node/ChartContainer/ResizableContainer.js +0 -32
  411. package/node/ChartsTooltip/DefaultChartsAxisTooltipContent.js +0 -129
  412. package/node/ChartsTooltip/DefaultChartsItemTooltipContent.js +0 -98
  413. package/node/context/InteractionProvider.js +0 -85
  414. /package/ChartsGrid/{styledCommonents.d.ts → styledComponents.d.ts} +0 -0
  415. /package/ChartsGrid/{styledCommonents.js → styledComponents.js} +0 -0
  416. /package/modern/ChartsGrid/{styledCommonents.js → styledComponents.js} +0 -0
  417. /package/node/ChartsGrid/{styledCommonents.js → styledComponents.js} +0 -0
@@ -1,9 +0,0 @@
1
- import type { ChartContainerProps } from './ChartContainer';
2
- /**
3
- * Wrapping div that take the shape of its parent.
4
- *
5
- * @ignore - do not document.
6
- */
7
- export declare const ResizableContainer: import("@emotion/styled").StyledComponent<import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme> & {
8
- ownerState: Pick<ChartContainerProps, "width" | "height">;
9
- }, Pick<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, keyof import("react").ClassAttributes<HTMLDivElement> | keyof import("react").HTMLAttributes<HTMLDivElement>>, {}>;
@@ -1,26 +0,0 @@
1
- import { styled } from '@mui/material/styles';
2
- /**
3
- * Wrapping div that take the shape of its parent.
4
- *
5
- * @ignore - do not document.
6
- */
7
- export const ResizableContainer = styled('div', {
8
- name: 'MuiResponsiveChart',
9
- slot: 'Container'
10
- })(({
11
- ownerState
12
- }) => ({
13
- width: ownerState.width ?? '100%',
14
- height: ownerState.height ?? '100%',
15
- display: 'flex',
16
- position: 'relative',
17
- flexGrow: 1,
18
- flexDirection: 'column',
19
- alignItems: 'center',
20
- justifyContent: 'center',
21
- overflow: 'hidden',
22
- '&>svg': {
23
- width: '100%',
24
- height: '100%'
25
- }
26
- }));
@@ -1,6 +0,0 @@
1
- import * as React from 'react';
2
- export declare const useChartContainerDimensions: (inWidth?: number, inHeight?: number, resolveSizeBeforeRender?: boolean) => {
3
- containerRef: React.RefObject<HTMLDivElement>;
4
- width: number;
5
- height: number;
6
- };
@@ -1,7 +0,0 @@
1
- import * as React from 'react';
2
- import type { ChartsAxisContentProps } from './ChartsAxisTooltipContent';
3
- declare function DefaultChartsAxisTooltipContent(props: ChartsAxisContentProps): React.JSX.Element | null;
4
- declare namespace DefaultChartsAxisTooltipContent {
5
- var propTypes: any;
6
- }
7
- export { DefaultChartsAxisTooltipContent };
@@ -1,123 +0,0 @@
1
- 'use client';
2
-
3
- import * as React from 'react';
4
- import PropTypes from 'prop-types';
5
- import clsx from 'clsx';
6
- import Typography from '@mui/material/Typography';
7
- import { ChartsTooltipCell, ChartsTooltipPaper, ChartsTooltipTable, ChartsTooltipMark, ChartsTooltipRow } from "./ChartsTooltipTable.js";
8
- import { utcFormatter } from "./utils.js";
9
- import { getLabel } from "../internals/getLabel.js";
10
- import { isCartesianSeries } from "../internals/isCartesian.js";
11
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
12
- function DefaultChartsAxisTooltipContent(props) {
13
- const {
14
- series,
15
- axis,
16
- dataIndex,
17
- axisValue,
18
- sx,
19
- classes
20
- } = props;
21
- if (dataIndex == null) {
22
- return null;
23
- }
24
- const axisFormatter = axis.valueFormatter ?? (v => axis.scaleType === 'utc' ? utcFormatter(v) : v.toLocaleString());
25
- return /*#__PURE__*/_jsx(ChartsTooltipPaper, {
26
- sx: sx,
27
- className: classes.paper,
28
- children: /*#__PURE__*/_jsxs(ChartsTooltipTable, {
29
- className: classes.table,
30
- children: [axisValue != null && !axis.hideTooltip && /*#__PURE__*/_jsx("thead", {
31
- children: /*#__PURE__*/_jsx(ChartsTooltipRow, {
32
- children: /*#__PURE__*/_jsx(ChartsTooltipCell, {
33
- colSpan: 3,
34
- children: /*#__PURE__*/_jsx(Typography, {
35
- children: axisFormatter(axisValue, {
36
- location: 'tooltip'
37
- })
38
- })
39
- })
40
- })
41
- }), /*#__PURE__*/_jsx("tbody", {
42
- children: series.filter(isCartesianSeries).map(({
43
- id,
44
- label,
45
- valueFormatter,
46
- data,
47
- getColor
48
- }) => {
49
- // @ts-ignore
50
- const formattedValue = valueFormatter(data[dataIndex] ?? null, {
51
- dataIndex
52
- });
53
- if (formattedValue == null) {
54
- return null;
55
- }
56
- const formattedLabel = getLabel(label, 'tooltip');
57
- const color = getColor(dataIndex);
58
- return /*#__PURE__*/_jsxs(ChartsTooltipRow, {
59
- className: classes.row,
60
- children: [/*#__PURE__*/_jsx(ChartsTooltipCell, {
61
- className: clsx(classes.markCell, classes.cell),
62
- children: color && /*#__PURE__*/_jsx(ChartsTooltipMark, {
63
- color: color,
64
- className: classes.mark
65
- })
66
- }), /*#__PURE__*/_jsx(ChartsTooltipCell, {
67
- className: clsx(classes.labelCell, classes.cell),
68
- children: formattedLabel ? /*#__PURE__*/_jsx(Typography, {
69
- children: formattedLabel
70
- }) : null
71
- }), /*#__PURE__*/_jsx(ChartsTooltipCell, {
72
- className: clsx(classes.valueCell, classes.cell),
73
- children: /*#__PURE__*/_jsx(Typography, {
74
- children: formattedValue
75
- })
76
- })]
77
- }, id);
78
- })
79
- })]
80
- })
81
- });
82
- }
83
- process.env.NODE_ENV !== "production" ? DefaultChartsAxisTooltipContent.propTypes = {
84
- // ----------------------------- Warning --------------------------------
85
- // | These PropTypes are generated from the TypeScript type definitions |
86
- // | To update them edit the TypeScript types and run "pnpm proptypes" |
87
- // ----------------------------------------------------------------------
88
- /**
89
- * The properties of the triggered axis.
90
- */
91
- axis: PropTypes.object.isRequired,
92
- /**
93
- * Data identifying the triggered axis.
94
- */
95
- axisData: PropTypes.shape({
96
- x: PropTypes.shape({
97
- index: PropTypes.number,
98
- value: PropTypes.oneOfType([PropTypes.instanceOf(Date), PropTypes.number, PropTypes.string]).isRequired
99
- }),
100
- y: PropTypes.shape({
101
- index: PropTypes.number,
102
- value: PropTypes.oneOfType([PropTypes.instanceOf(Date), PropTypes.number, PropTypes.string]).isRequired
103
- })
104
- }).isRequired,
105
- /**
106
- * The value associated to the current mouse position.
107
- */
108
- axisValue: PropTypes.oneOfType([PropTypes.instanceOf(Date), PropTypes.number, PropTypes.string]),
109
- /**
110
- * Override or extend the styles applied to the component.
111
- */
112
- classes: PropTypes.object.isRequired,
113
- /**
114
- * The index of the data item triggered.
115
- */
116
- dataIndex: PropTypes.number,
117
- /**
118
- * The series linked to the triggered axis.
119
- */
120
- series: PropTypes.arrayOf(PropTypes.object).isRequired,
121
- sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object])
122
- } : void 0;
123
- export { DefaultChartsAxisTooltipContent };
@@ -1,8 +0,0 @@
1
- import * as React from 'react';
2
- import { ChartSeriesType } from '../models/seriesType/config';
3
- import type { ChartsItemContentProps } from './ChartsItemTooltipContent';
4
- declare function DefaultChartsItemTooltipContent<T extends ChartSeriesType = ChartSeriesType>(props: ChartsItemContentProps<T>): React.JSX.Element | null;
5
- declare namespace DefaultChartsItemTooltipContent {
6
- var propTypes: any;
7
- }
8
- export { DefaultChartsItemTooltipContent };
@@ -1,92 +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 clsx from 'clsx';
7
- import { ChartsTooltipTable, ChartsTooltipCell, ChartsTooltipMark, ChartsTooltipPaper, ChartsTooltipRow } from "./ChartsTooltipTable.js";
8
- import { getLabel } from "../internals/getLabel.js";
9
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
10
- function DefaultChartsItemTooltipContent(props) {
11
- const {
12
- series,
13
- itemData,
14
- sx,
15
- classes,
16
- getColor
17
- } = props;
18
- if (itemData.dataIndex === undefined || !series.data[itemData.dataIndex]) {
19
- return null;
20
- }
21
- const {
22
- displayedLabel,
23
- color
24
- } = series.type === 'pie' ? {
25
- color: getColor(itemData.dataIndex),
26
- displayedLabel: getLabel(series.data[itemData.dataIndex].label, 'tooltip')
27
- } : {
28
- color: getColor(itemData.dataIndex),
29
- displayedLabel: getLabel(series.label, 'tooltip')
30
- };
31
- const value = series.type === 'pie' ? _extends({}, series.data[itemData.dataIndex], {
32
- label: getLabel(series.data[itemData.dataIndex].label, 'tooltip')
33
- }) : series.data[itemData.dataIndex];
34
- const formattedValue = series.valueFormatter?.(value, {
35
- dataIndex: itemData.dataIndex
36
- });
37
- return /*#__PURE__*/_jsx(ChartsTooltipPaper, {
38
- sx: sx,
39
- className: classes.paper,
40
- children: /*#__PURE__*/_jsx(ChartsTooltipTable, {
41
- className: classes.table,
42
- children: /*#__PURE__*/_jsx("tbody", {
43
- children: /*#__PURE__*/_jsxs(ChartsTooltipRow, {
44
- className: classes.row,
45
- children: [/*#__PURE__*/_jsx(ChartsTooltipCell, {
46
- className: clsx(classes.markCell, classes.cell),
47
- children: /*#__PURE__*/_jsx(ChartsTooltipMark, {
48
- color: color,
49
- className: classes.mark
50
- })
51
- }), /*#__PURE__*/_jsx(ChartsTooltipCell, {
52
- className: clsx(classes.labelCell, classes.cell),
53
- children: displayedLabel
54
- }), /*#__PURE__*/_jsx(ChartsTooltipCell, {
55
- className: clsx(classes.valueCell, classes.cell),
56
- children: formattedValue
57
- })]
58
- })
59
- })
60
- })
61
- });
62
- }
63
- process.env.NODE_ENV !== "production" ? DefaultChartsItemTooltipContent.propTypes = {
64
- // ----------------------------- Warning --------------------------------
65
- // | These PropTypes are generated from the TypeScript type definitions |
66
- // | To update them edit the TypeScript types and run "pnpm proptypes" |
67
- // ----------------------------------------------------------------------
68
- /**
69
- * Override or extend the styles applied to the component.
70
- */
71
- classes: PropTypes.object.isRequired,
72
- /**
73
- * Get the color of the item with index `dataIndex`.
74
- * @param {number} dataIndex The data index of the item.
75
- * @returns {string} The color to display.
76
- */
77
- getColor: PropTypes.func.isRequired,
78
- /**
79
- * The data used to identify the triggered item.
80
- */
81
- itemData: PropTypes.shape({
82
- dataIndex: PropTypes.number,
83
- seriesId: PropTypes.oneOfType([PropTypes.number, PropTypes.string]).isRequired,
84
- type: PropTypes.oneOf(['bar', 'line', 'pie', 'scatter']).isRequired
85
- }).isRequired,
86
- /**
87
- * The series linked to the triggered axis.
88
- */
89
- series: PropTypes.object.isRequired,
90
- sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object])
91
- } : void 0;
92
- export { DefaultChartsItemTooltipContent };
@@ -1,50 +0,0 @@
1
- import * as React from 'react';
2
- import { ChartItemIdentifier, ChartSeriesType } from '../models/seriesType/config';
3
- export interface InteractionProviderProps {
4
- children: React.ReactNode;
5
- }
6
- export type ItemInteractionData<T extends ChartSeriesType> = ChartItemIdentifier<T>;
7
- export type AxisInteractionData = {
8
- x: null | {
9
- value: number | Date | string;
10
- index: number;
11
- };
12
- y: null | {
13
- value: number | Date | string;
14
- index: number;
15
- };
16
- };
17
- type InteractionActions<T extends ChartSeriesType = ChartSeriesType> = {
18
- type: 'enterItem';
19
- data: ItemInteractionData<T>;
20
- } | {
21
- type: 'leaveItem';
22
- data: Partial<ItemInteractionData<T>>;
23
- } | {
24
- type: 'exitChart';
25
- } | {
26
- type: 'updateVoronoiUsage';
27
- useVoronoiInteraction: boolean;
28
- } | {
29
- type: 'updateAxis';
30
- data: AxisInteractionData;
31
- };
32
- type InteractionState = {
33
- /**
34
- * The item currently interacting.
35
- */
36
- item: null | ItemInteractionData<ChartSeriesType>;
37
- /**
38
- * The x- and y-axes currently interacting.
39
- */
40
- axis: AxisInteractionData;
41
- /**
42
- * Set to `true` when `VoronoiHandler` is active.
43
- * Used to prevent collision with mouseEnter events.
44
- */
45
- useVoronoiInteraction: boolean;
46
- dispatch: React.Dispatch<InteractionActions>;
47
- };
48
- export declare const InteractionContext: React.Context<InteractionState>;
49
- declare function InteractionProvider(props: InteractionProviderProps): React.JSX.Element;
50
- export { InteractionProvider };
@@ -1,78 +0,0 @@
1
- 'use client';
2
-
3
- import _extends from "@babel/runtime/helpers/esm/extends";
4
- import * as React from 'react';
5
- import { jsx as _jsx } from "react/jsx-runtime";
6
- export const InteractionContext = /*#__PURE__*/React.createContext({
7
- item: null,
8
- axis: {
9
- x: null,
10
- y: null
11
- },
12
- useVoronoiInteraction: false,
13
- dispatch: () => null
14
- });
15
- if (process.env.NODE_ENV !== 'production') {
16
- InteractionContext.displayName = 'InteractionContext';
17
- }
18
- const dataReducer = (prevState, action) => {
19
- switch (action.type) {
20
- case 'enterItem':
21
- return _extends({}, prevState, {
22
- item: action.data
23
- });
24
- case 'exitChart':
25
- if (prevState.item === null && prevState.axis.x === null && prevState.axis.y === null) {
26
- return prevState;
27
- }
28
- return _extends({}, prevState, {
29
- axis: {
30
- x: null,
31
- y: null
32
- },
33
- item: null
34
- });
35
- case 'updateVoronoiUsage':
36
- return _extends({}, prevState, {
37
- useVoronoiInteraction: action.useVoronoiInteraction
38
- });
39
- case 'leaveItem':
40
- if (prevState.item === null || Object.keys(action.data).some(key => action.data[key] !== prevState.item[key])) {
41
- // The item is already something else
42
- return prevState;
43
- }
44
- return _extends({}, prevState, {
45
- item: null
46
- });
47
- case 'updateAxis':
48
- if (action.data.x === prevState.axis.x && action.data.y === prevState.axis.y) {
49
- return prevState;
50
- }
51
- return _extends({}, prevState, {
52
- axis: action.data
53
- });
54
- default:
55
- return prevState;
56
- }
57
- };
58
- function InteractionProvider(props) {
59
- const {
60
- children
61
- } = props;
62
- const [data, dispatch] = React.useReducer(dataReducer, {
63
- item: null,
64
- axis: {
65
- x: null,
66
- y: null
67
- },
68
- useVoronoiInteraction: false
69
- });
70
- const value = React.useMemo(() => _extends({}, data, {
71
- dispatch
72
- }), [data]);
73
- return /*#__PURE__*/_jsx(InteractionContext.Provider, {
74
- value: value,
75
- children: children
76
- });
77
- }
78
- export { InteractionProvider };
@@ -1,26 +0,0 @@
1
- import { styled } from '@mui/material/styles';
2
- /**
3
- * Wrapping div that take the shape of its parent.
4
- *
5
- * @ignore - do not document.
6
- */
7
- export const ResizableContainer = styled('div', {
8
- name: 'MuiResponsiveChart',
9
- slot: 'Container'
10
- })(({
11
- ownerState
12
- }) => ({
13
- width: ownerState.width ?? '100%',
14
- height: ownerState.height ?? '100%',
15
- display: 'flex',
16
- position: 'relative',
17
- flexGrow: 1,
18
- flexDirection: 'column',
19
- alignItems: 'center',
20
- justifyContent: 'center',
21
- overflow: 'hidden',
22
- '&>svg': {
23
- width: '100%',
24
- height: '100%'
25
- }
26
- }));
@@ -1,123 +0,0 @@
1
- 'use client';
2
-
3
- import * as React from 'react';
4
- import PropTypes from 'prop-types';
5
- import clsx from 'clsx';
6
- import Typography from '@mui/material/Typography';
7
- import { ChartsTooltipCell, ChartsTooltipPaper, ChartsTooltipTable, ChartsTooltipMark, ChartsTooltipRow } from "./ChartsTooltipTable.js";
8
- import { utcFormatter } from "./utils.js";
9
- import { getLabel } from "../internals/getLabel.js";
10
- import { isCartesianSeries } from "../internals/isCartesian.js";
11
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
12
- function DefaultChartsAxisTooltipContent(props) {
13
- const {
14
- series,
15
- axis,
16
- dataIndex,
17
- axisValue,
18
- sx,
19
- classes
20
- } = props;
21
- if (dataIndex == null) {
22
- return null;
23
- }
24
- const axisFormatter = axis.valueFormatter ?? (v => axis.scaleType === 'utc' ? utcFormatter(v) : v.toLocaleString());
25
- return /*#__PURE__*/_jsx(ChartsTooltipPaper, {
26
- sx: sx,
27
- className: classes.paper,
28
- children: /*#__PURE__*/_jsxs(ChartsTooltipTable, {
29
- className: classes.table,
30
- children: [axisValue != null && !axis.hideTooltip && /*#__PURE__*/_jsx("thead", {
31
- children: /*#__PURE__*/_jsx(ChartsTooltipRow, {
32
- children: /*#__PURE__*/_jsx(ChartsTooltipCell, {
33
- colSpan: 3,
34
- children: /*#__PURE__*/_jsx(Typography, {
35
- children: axisFormatter(axisValue, {
36
- location: 'tooltip'
37
- })
38
- })
39
- })
40
- })
41
- }), /*#__PURE__*/_jsx("tbody", {
42
- children: series.filter(isCartesianSeries).map(({
43
- id,
44
- label,
45
- valueFormatter,
46
- data,
47
- getColor
48
- }) => {
49
- // @ts-ignore
50
- const formattedValue = valueFormatter(data[dataIndex] ?? null, {
51
- dataIndex
52
- });
53
- if (formattedValue == null) {
54
- return null;
55
- }
56
- const formattedLabel = getLabel(label, 'tooltip');
57
- const color = getColor(dataIndex);
58
- return /*#__PURE__*/_jsxs(ChartsTooltipRow, {
59
- className: classes.row,
60
- children: [/*#__PURE__*/_jsx(ChartsTooltipCell, {
61
- className: clsx(classes.markCell, classes.cell),
62
- children: color && /*#__PURE__*/_jsx(ChartsTooltipMark, {
63
- color: color,
64
- className: classes.mark
65
- })
66
- }), /*#__PURE__*/_jsx(ChartsTooltipCell, {
67
- className: clsx(classes.labelCell, classes.cell),
68
- children: formattedLabel ? /*#__PURE__*/_jsx(Typography, {
69
- children: formattedLabel
70
- }) : null
71
- }), /*#__PURE__*/_jsx(ChartsTooltipCell, {
72
- className: clsx(classes.valueCell, classes.cell),
73
- children: /*#__PURE__*/_jsx(Typography, {
74
- children: formattedValue
75
- })
76
- })]
77
- }, id);
78
- })
79
- })]
80
- })
81
- });
82
- }
83
- process.env.NODE_ENV !== "production" ? DefaultChartsAxisTooltipContent.propTypes = {
84
- // ----------------------------- Warning --------------------------------
85
- // | These PropTypes are generated from the TypeScript type definitions |
86
- // | To update them edit the TypeScript types and run "pnpm proptypes" |
87
- // ----------------------------------------------------------------------
88
- /**
89
- * The properties of the triggered axis.
90
- */
91
- axis: PropTypes.object.isRequired,
92
- /**
93
- * Data identifying the triggered axis.
94
- */
95
- axisData: PropTypes.shape({
96
- x: PropTypes.shape({
97
- index: PropTypes.number,
98
- value: PropTypes.oneOfType([PropTypes.instanceOf(Date), PropTypes.number, PropTypes.string]).isRequired
99
- }),
100
- y: PropTypes.shape({
101
- index: PropTypes.number,
102
- value: PropTypes.oneOfType([PropTypes.instanceOf(Date), PropTypes.number, PropTypes.string]).isRequired
103
- })
104
- }).isRequired,
105
- /**
106
- * The value associated to the current mouse position.
107
- */
108
- axisValue: PropTypes.oneOfType([PropTypes.instanceOf(Date), PropTypes.number, PropTypes.string]),
109
- /**
110
- * Override or extend the styles applied to the component.
111
- */
112
- classes: PropTypes.object.isRequired,
113
- /**
114
- * The index of the data item triggered.
115
- */
116
- dataIndex: PropTypes.number,
117
- /**
118
- * The series linked to the triggered axis.
119
- */
120
- series: PropTypes.arrayOf(PropTypes.object).isRequired,
121
- sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object])
122
- } : void 0;
123
- export { DefaultChartsAxisTooltipContent };
@@ -1,92 +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 clsx from 'clsx';
7
- import { ChartsTooltipTable, ChartsTooltipCell, ChartsTooltipMark, ChartsTooltipPaper, ChartsTooltipRow } from "./ChartsTooltipTable.js";
8
- import { getLabel } from "../internals/getLabel.js";
9
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
10
- function DefaultChartsItemTooltipContent(props) {
11
- const {
12
- series,
13
- itemData,
14
- sx,
15
- classes,
16
- getColor
17
- } = props;
18
- if (itemData.dataIndex === undefined || !series.data[itemData.dataIndex]) {
19
- return null;
20
- }
21
- const {
22
- displayedLabel,
23
- color
24
- } = series.type === 'pie' ? {
25
- color: getColor(itemData.dataIndex),
26
- displayedLabel: getLabel(series.data[itemData.dataIndex].label, 'tooltip')
27
- } : {
28
- color: getColor(itemData.dataIndex),
29
- displayedLabel: getLabel(series.label, 'tooltip')
30
- };
31
- const value = series.type === 'pie' ? _extends({}, series.data[itemData.dataIndex], {
32
- label: getLabel(series.data[itemData.dataIndex].label, 'tooltip')
33
- }) : series.data[itemData.dataIndex];
34
- const formattedValue = series.valueFormatter?.(value, {
35
- dataIndex: itemData.dataIndex
36
- });
37
- return /*#__PURE__*/_jsx(ChartsTooltipPaper, {
38
- sx: sx,
39
- className: classes.paper,
40
- children: /*#__PURE__*/_jsx(ChartsTooltipTable, {
41
- className: classes.table,
42
- children: /*#__PURE__*/_jsx("tbody", {
43
- children: /*#__PURE__*/_jsxs(ChartsTooltipRow, {
44
- className: classes.row,
45
- children: [/*#__PURE__*/_jsx(ChartsTooltipCell, {
46
- className: clsx(classes.markCell, classes.cell),
47
- children: /*#__PURE__*/_jsx(ChartsTooltipMark, {
48
- color: color,
49
- className: classes.mark
50
- })
51
- }), /*#__PURE__*/_jsx(ChartsTooltipCell, {
52
- className: clsx(classes.labelCell, classes.cell),
53
- children: displayedLabel
54
- }), /*#__PURE__*/_jsx(ChartsTooltipCell, {
55
- className: clsx(classes.valueCell, classes.cell),
56
- children: formattedValue
57
- })]
58
- })
59
- })
60
- })
61
- });
62
- }
63
- process.env.NODE_ENV !== "production" ? DefaultChartsItemTooltipContent.propTypes = {
64
- // ----------------------------- Warning --------------------------------
65
- // | These PropTypes are generated from the TypeScript type definitions |
66
- // | To update them edit the TypeScript types and run "pnpm proptypes" |
67
- // ----------------------------------------------------------------------
68
- /**
69
- * Override or extend the styles applied to the component.
70
- */
71
- classes: PropTypes.object.isRequired,
72
- /**
73
- * Get the color of the item with index `dataIndex`.
74
- * @param {number} dataIndex The data index of the item.
75
- * @returns {string} The color to display.
76
- */
77
- getColor: PropTypes.func.isRequired,
78
- /**
79
- * The data used to identify the triggered item.
80
- */
81
- itemData: PropTypes.shape({
82
- dataIndex: PropTypes.number,
83
- seriesId: PropTypes.oneOfType([PropTypes.number, PropTypes.string]).isRequired,
84
- type: PropTypes.oneOf(['bar', 'line', 'pie', 'scatter']).isRequired
85
- }).isRequired,
86
- /**
87
- * The series linked to the triggered axis.
88
- */
89
- series: PropTypes.object.isRequired,
90
- sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object])
91
- } : void 0;
92
- export { DefaultChartsItemTooltipContent };