@mui/x-charts 8.16.0 → 8.18.0

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 (485) hide show
  1. package/BarChart/AnimatedBarElement.d.ts +1 -1
  2. package/BarChart/BarChart.js +1 -0
  3. package/BarChart/BarClipPath.d.ts +1 -1
  4. package/BarChart/BarElement.d.ts +1 -1
  5. package/BarChart/BarElement.js +6 -8
  6. package/BarChart/BarLabel/BarLabel.d.ts +6 -0
  7. package/BarChart/BarLabel/BarLabel.js +41 -4
  8. package/BarChart/BarLabel/BarLabelItem.d.ts +7 -1
  9. package/BarChart/BarLabel/BarLabelItem.js +4 -2
  10. package/BarChart/BarLabel/BarLabelPlot.d.ts +2 -3
  11. package/BarChart/BarLabel/BarLabelPlot.js +42 -38
  12. package/BarChart/BarPlot.d.ts +13 -3
  13. package/BarChart/BarPlot.js +8 -3
  14. package/BarChart/seriesConfig/{extremums.d.ts → bar/extremums.d.ts} +1 -1
  15. package/BarChart/seriesConfig/{extremums.js → bar/extremums.js} +1 -1
  16. package/BarChart/seriesConfig/bar/getColor.d.ts +3 -0
  17. package/BarChart/seriesConfig/{getColor.js → bar/getColor.js} +28 -5
  18. package/BarChart/seriesConfig/bar/getSeriesWithDefaultValues.d.ts +3 -0
  19. package/BarChart/seriesConfig/bar/legend.d.ts +3 -0
  20. package/BarChart/seriesConfig/{legend.js → bar/legend.js} +1 -1
  21. package/BarChart/seriesConfig/bar/seriesProcessor.d.ts +3 -0
  22. package/BarChart/seriesConfig/{seriesProcessor.js → bar/seriesProcessor.js} +1 -1
  23. package/BarChart/seriesConfig/bar/tooltip.d.ts +4 -0
  24. package/BarChart/seriesConfig/{tooltip.js → bar/tooltip.js} +1 -1
  25. package/BarChart/seriesConfig/bar/tooltipPosition.d.ts +3 -0
  26. package/BarChart/seriesConfig/{tooltipPosition.js → bar/tooltipPosition.js} +1 -1
  27. package/BarChart/seriesConfig/index.d.ts +1 -1
  28. package/BarChart/seriesConfig/index.js +9 -9
  29. package/BarChart/types.d.ts +2 -0
  30. package/BarChart/useBarPlotData.js +5 -3
  31. package/CHANGELOG.md +208 -1
  32. package/ChartDataProvider/ChartDataProvider.d.ts +1 -1
  33. package/ChartsAxis/ChartsAxis.d.ts +1 -2
  34. package/ChartsAxisHighlight/ChartsAxisHighlight.d.ts +1 -2
  35. package/ChartsAxisHighlight/ChartsXAxisHighlight.d.ts +1 -2
  36. package/ChartsAxisHighlight/ChartsYAxisHighlight.d.ts +1 -2
  37. package/ChartsBrushOverlay/ChartsBrushOverlay.d.ts +1 -2
  38. package/ChartsClipPath/ChartsClipPath.d.ts +1 -2
  39. package/ChartsClipPath/ChartsClipPath.js +0 -2
  40. package/ChartsGrid/ChartsGrid.d.ts +1 -2
  41. package/ChartsGrid/ChartsGrid.js +0 -2
  42. package/ChartsGrid/ChartsHorizontalGrid.d.ts +1 -2
  43. package/ChartsGrid/ChartsVerticalGrid.d.ts +1 -2
  44. package/ChartsLegend/continuousColorLegendClasses.d.ts +1 -1
  45. package/ChartsLocalizationProvider/ChartsLocalizationProvider.d.ts +1 -1
  46. package/ChartsOverlay/ChartsLoadingOverlay.d.ts +1 -2
  47. package/ChartsOverlay/ChartsLoadingOverlay.js +0 -2
  48. package/ChartsOverlay/ChartsNoDataOverlay.d.ts +1 -2
  49. package/ChartsOverlay/ChartsNoDataOverlay.js +0 -2
  50. package/ChartsOverlay/ChartsOverlay.d.ts +1 -1
  51. package/ChartsReferenceLine/ChartsReferenceLine.d.ts +1 -2
  52. package/ChartsReferenceLine/ChartsReferenceLine.js +0 -2
  53. package/ChartsReferenceLine/ChartsXReferenceLine.d.ts +1 -2
  54. package/ChartsReferenceLine/ChartsXReferenceLine.js +0 -2
  55. package/ChartsReferenceLine/ChartsYReferenceLine.d.ts +1 -2
  56. package/ChartsReferenceLine/ChartsYReferenceLine.js +0 -2
  57. package/ChartsSurface/ChartsSurface.js +8 -9
  58. package/ChartsSurface/chartsSurfaceClasses.d.ts +6 -0
  59. package/ChartsSurface/chartsSurfaceClasses.js +21 -0
  60. package/ChartsSurface/index.d.ts +2 -1
  61. package/ChartsSurface/index.js +12 -1
  62. package/ChartsText/ChartsText.d.ts +1 -1
  63. package/ChartsTooltip/ChartsAxisTooltipContent.d.ts +1 -2
  64. package/ChartsTooltip/ChartsAxisTooltipContent.js +0 -2
  65. package/ChartsTooltip/ChartsItemTooltipContent.d.ts +1 -2
  66. package/ChartsTooltip/ChartsItemTooltipContent.js +0 -2
  67. package/ChartsTooltip/ChartsTooltip.d.ts +1 -2
  68. package/ChartsTooltip/ChartsTooltip.js +0 -2
  69. package/ChartsTooltip/ChartsTooltipContainer.d.ts +1 -1
  70. package/ChartsTooltip/ChartsTooltipContainer.js +13 -14
  71. package/ChartsTooltip/ChartsTooltipTable.d.ts +1 -1
  72. package/ChartsWrapper/ChartsWrapper.d.ts +1 -1
  73. package/ChartsWrapper/ChartsWrapper.js +3 -5
  74. package/ChartsXAxis/ChartsGroupedXAxisTicks.d.ts +1 -2
  75. package/ChartsXAxis/ChartsSingleXAxisTicks.d.ts +1 -2
  76. package/ChartsXAxis/ChartsXAxis.d.ts +1 -2
  77. package/ChartsXAxis/ChartsXAxis.js +0 -2
  78. package/ChartsXAxis/ChartsXAxisImpl.d.ts +1 -2
  79. package/ChartsXAxis/useAxisTicksProps.d.ts +32 -32
  80. package/ChartsYAxis/ChartsGroupedYAxisTicks.d.ts +1 -2
  81. package/ChartsYAxis/ChartsSingleYAxisTicks.d.ts +1 -2
  82. package/ChartsYAxis/ChartsYAxis.d.ts +1 -2
  83. package/ChartsYAxis/ChartsYAxis.js +0 -2
  84. package/ChartsYAxis/ChartsYAxisImpl.d.ts +1 -2
  85. package/ChartsYAxis/useAxisTicksProps.d.ts +32 -32
  86. package/Gauge/GaugeProvider.d.ts +1 -1
  87. package/Gauge/GaugeReferenceArc.d.ts +1 -1
  88. package/Gauge/GaugeValueArc.d.ts +1 -1
  89. package/Gauge/GaugeValueText.d.ts +1 -2
  90. package/Gauge/GaugeValueText.js +0 -2
  91. package/LineChart/AnimatedArea.d.ts +1 -1
  92. package/LineChart/AppearingMask.d.ts +1 -1
  93. package/LineChart/AreaElement.d.ts +1 -1
  94. package/LineChart/AreaPlot.d.ts +1 -1
  95. package/LineChart/CircleMarkElement.d.ts +1 -1
  96. package/LineChart/FocusedMark.d.ts +1 -2
  97. package/LineChart/FocusedMark.js +0 -2
  98. package/LineChart/LineElement.d.ts +1 -1
  99. package/LineChart/LineHighlightElement.d.ts +1 -1
  100. package/LineChart/LineHighlightPlot.d.ts +1 -1
  101. package/LineChart/LinePlot.d.ts +1 -1
  102. package/LineChart/MarkElement.d.ts +1 -1
  103. package/LineChart/MarkPlot.d.ts +1 -1
  104. package/LineChart/seriesConfig/getColor.js +28 -5
  105. package/LineChart/seriesConfig/index.d.ts +1 -1
  106. package/LineChart/seriesConfig/index.js +2 -2
  107. package/PieChart/PieArcLabelPlot.d.ts +1 -1
  108. package/PieChart/PieArcPlot.d.ts +1 -1
  109. package/PieChart/PiePlot.d.ts +1 -2
  110. package/PieChart/PiePlot.js +0 -2
  111. package/PieChart/seriesConfig/index.d.ts +1 -1
  112. package/PieChart/seriesConfig/index.js +2 -2
  113. package/RadarChart/RadarAxis/RadarAxis.d.ts +1 -1
  114. package/RadarChart/RadarAxis/RadarAxis.utils.d.ts +2 -2
  115. package/RadarChart/RadarAxisHighlight/RadarAxisHighlight.d.ts +1 -2
  116. package/RadarChart/RadarAxisHighlight/RadarAxisHighlight.js +7 -3
  117. package/RadarChart/RadarDataProvider/RadarDataProvider.d.ts +1 -2
  118. package/RadarChart/RadarGrid/CircularRadarGrid.d.ts +1 -2
  119. package/RadarChart/RadarGrid/CircularRadarStripes.d.ts +1 -2
  120. package/RadarChart/RadarGrid/RadarGrid.d.ts +1 -2
  121. package/RadarChart/RadarGrid/SharpRadarGrid.d.ts +1 -2
  122. package/RadarChart/RadarGrid/SharpRadarStripes.d.ts +1 -2
  123. package/RadarChart/RadarMetricLabels/RadarMetricLabels.d.ts +1 -2
  124. package/RadarChart/RadarSeriesPlot/RadarSeriesArea.d.ts +1 -1
  125. package/RadarChart/RadarSeriesPlot/RadarSeriesMarks.d.ts +1 -1
  126. package/RadarChart/RadarSeriesPlot/RadarSeriesMarks.js +1 -2
  127. package/RadarChart/RadarSeriesPlot/RadarSeriesPlot.d.ts +1 -2
  128. package/RadarChart/RadarSeriesPlot/RadarSeriesPlot.js +1 -3
  129. package/RadarChart/RadarSeriesPlot/useRadarSeriesData.d.ts +3 -0
  130. package/RadarChart/RadarSeriesPlot/useRadarSeriesData.js +8 -1
  131. package/RadarChart/seriesConfig/getColor.js +12 -1
  132. package/ScatterChart/BatchScatter.d.ts +1 -2
  133. package/ScatterChart/BatchScatter.js +4 -4
  134. package/ScatterChart/Scatter.d.ts +7 -2
  135. package/ScatterChart/Scatter.js +7 -3
  136. package/ScatterChart/ScatterMarker.d.ts +1 -1
  137. package/ScatterChart/ScatterPlot.d.ts +1 -1
  138. package/ScatterChart/ScatterPlot.js +1 -1
  139. package/ScatterChart/seriesConfig/getColor.js +36 -7
  140. package/ScatterChart/seriesConfig/index.d.ts +1 -1
  141. package/ScatterChart/seriesConfig/index.js +2 -2
  142. package/context/ChartProvider/ChartProvider.d.ts +1 -1
  143. package/context/ChartProvider/ChartProvider.js +4 -4
  144. package/context/ChartProvider/ChartProvider.types.d.ts +3 -3
  145. package/context/ChartsSlotsContext.d.ts +1 -1
  146. package/esm/BarChart/AnimatedBarElement.d.ts +1 -1
  147. package/esm/BarChart/BarChart.js +1 -0
  148. package/esm/BarChart/BarClipPath.d.ts +1 -1
  149. package/esm/BarChart/BarElement.d.ts +1 -1
  150. package/esm/BarChart/BarElement.js +6 -8
  151. package/esm/BarChart/BarLabel/BarLabel.d.ts +6 -0
  152. package/esm/BarChart/BarLabel/BarLabel.js +41 -4
  153. package/esm/BarChart/BarLabel/BarLabelItem.d.ts +7 -1
  154. package/esm/BarChart/BarLabel/BarLabelItem.js +4 -2
  155. package/esm/BarChart/BarLabel/BarLabelPlot.d.ts +2 -3
  156. package/esm/BarChart/BarLabel/BarLabelPlot.js +42 -37
  157. package/esm/BarChart/BarPlot.d.ts +13 -3
  158. package/esm/BarChart/BarPlot.js +8 -3
  159. package/esm/BarChart/seriesConfig/{extremums.d.ts → bar/extremums.d.ts} +1 -1
  160. package/esm/BarChart/seriesConfig/{extremums.js → bar/extremums.js} +1 -1
  161. package/esm/BarChart/seriesConfig/bar/getColor.d.ts +3 -0
  162. package/esm/BarChart/seriesConfig/{getColor.js → bar/getColor.js} +28 -5
  163. package/esm/BarChart/seriesConfig/bar/getSeriesWithDefaultValues.d.ts +3 -0
  164. package/esm/BarChart/seriesConfig/bar/legend.d.ts +3 -0
  165. package/esm/BarChart/seriesConfig/{legend.js → bar/legend.js} +1 -1
  166. package/esm/BarChart/seriesConfig/bar/seriesProcessor.d.ts +3 -0
  167. package/esm/BarChart/seriesConfig/{seriesProcessor.js → bar/seriesProcessor.js} +1 -1
  168. package/esm/BarChart/seriesConfig/bar/tooltip.d.ts +4 -0
  169. package/esm/BarChart/seriesConfig/{tooltip.js → bar/tooltip.js} +1 -1
  170. package/esm/BarChart/seriesConfig/bar/tooltipPosition.d.ts +3 -0
  171. package/esm/BarChart/seriesConfig/{tooltipPosition.js → bar/tooltipPosition.js} +1 -1
  172. package/esm/BarChart/seriesConfig/index.d.ts +1 -1
  173. package/esm/BarChart/seriesConfig/index.js +8 -8
  174. package/esm/BarChart/types.d.ts +2 -0
  175. package/esm/BarChart/useBarPlotData.js +5 -3
  176. package/esm/ChartDataProvider/ChartDataProvider.d.ts +1 -1
  177. package/esm/ChartsAxis/ChartsAxis.d.ts +1 -2
  178. package/esm/ChartsAxisHighlight/ChartsAxisHighlight.d.ts +1 -2
  179. package/esm/ChartsAxisHighlight/ChartsXAxisHighlight.d.ts +1 -2
  180. package/esm/ChartsAxisHighlight/ChartsYAxisHighlight.d.ts +1 -2
  181. package/esm/ChartsBrushOverlay/ChartsBrushOverlay.d.ts +1 -2
  182. package/esm/ChartsClipPath/ChartsClipPath.d.ts +1 -2
  183. package/esm/ChartsClipPath/ChartsClipPath.js +0 -1
  184. package/esm/ChartsGrid/ChartsGrid.d.ts +1 -2
  185. package/esm/ChartsGrid/ChartsGrid.js +0 -1
  186. package/esm/ChartsGrid/ChartsHorizontalGrid.d.ts +1 -2
  187. package/esm/ChartsGrid/ChartsVerticalGrid.d.ts +1 -2
  188. package/esm/ChartsLegend/continuousColorLegendClasses.d.ts +1 -1
  189. package/esm/ChartsLocalizationProvider/ChartsLocalizationProvider.d.ts +1 -1
  190. package/esm/ChartsOverlay/ChartsLoadingOverlay.d.ts +1 -2
  191. package/esm/ChartsOverlay/ChartsLoadingOverlay.js +0 -1
  192. package/esm/ChartsOverlay/ChartsNoDataOverlay.d.ts +1 -2
  193. package/esm/ChartsOverlay/ChartsNoDataOverlay.js +0 -1
  194. package/esm/ChartsOverlay/ChartsOverlay.d.ts +1 -1
  195. package/esm/ChartsReferenceLine/ChartsReferenceLine.d.ts +1 -2
  196. package/esm/ChartsReferenceLine/ChartsReferenceLine.js +0 -1
  197. package/esm/ChartsReferenceLine/ChartsXReferenceLine.d.ts +1 -2
  198. package/esm/ChartsReferenceLine/ChartsXReferenceLine.js +0 -1
  199. package/esm/ChartsReferenceLine/ChartsYReferenceLine.d.ts +1 -2
  200. package/esm/ChartsReferenceLine/ChartsYReferenceLine.js +0 -1
  201. package/esm/ChartsSurface/ChartsSurface.js +9 -10
  202. package/esm/ChartsSurface/chartsSurfaceClasses.d.ts +6 -0
  203. package/esm/ChartsSurface/chartsSurfaceClasses.js +13 -0
  204. package/esm/ChartsSurface/index.d.ts +2 -1
  205. package/esm/ChartsSurface/index.js +2 -1
  206. package/esm/ChartsText/ChartsText.d.ts +1 -1
  207. package/esm/ChartsTooltip/ChartsAxisTooltipContent.d.ts +1 -2
  208. package/esm/ChartsTooltip/ChartsAxisTooltipContent.js +0 -1
  209. package/esm/ChartsTooltip/ChartsItemTooltipContent.d.ts +1 -2
  210. package/esm/ChartsTooltip/ChartsItemTooltipContent.js +0 -1
  211. package/esm/ChartsTooltip/ChartsTooltip.d.ts +1 -2
  212. package/esm/ChartsTooltip/ChartsTooltip.js +0 -1
  213. package/esm/ChartsTooltip/ChartsTooltipContainer.d.ts +1 -1
  214. package/esm/ChartsTooltip/ChartsTooltipContainer.js +13 -14
  215. package/esm/ChartsTooltip/ChartsTooltipTable.d.ts +1 -1
  216. package/esm/ChartsWrapper/ChartsWrapper.d.ts +1 -1
  217. package/esm/ChartsWrapper/ChartsWrapper.js +4 -6
  218. package/esm/ChartsXAxis/ChartsGroupedXAxisTicks.d.ts +1 -2
  219. package/esm/ChartsXAxis/ChartsSingleXAxisTicks.d.ts +1 -2
  220. package/esm/ChartsXAxis/ChartsXAxis.d.ts +1 -2
  221. package/esm/ChartsXAxis/ChartsXAxis.js +0 -1
  222. package/esm/ChartsXAxis/ChartsXAxisImpl.d.ts +1 -2
  223. package/esm/ChartsXAxis/useAxisTicksProps.d.ts +32 -32
  224. package/esm/ChartsYAxis/ChartsGroupedYAxisTicks.d.ts +1 -2
  225. package/esm/ChartsYAxis/ChartsSingleYAxisTicks.d.ts +1 -2
  226. package/esm/ChartsYAxis/ChartsYAxis.d.ts +1 -2
  227. package/esm/ChartsYAxis/ChartsYAxis.js +0 -1
  228. package/esm/ChartsYAxis/ChartsYAxisImpl.d.ts +1 -2
  229. package/esm/ChartsYAxis/useAxisTicksProps.d.ts +32 -32
  230. package/esm/Gauge/GaugeProvider.d.ts +1 -1
  231. package/esm/Gauge/GaugeReferenceArc.d.ts +1 -1
  232. package/esm/Gauge/GaugeValueArc.d.ts +1 -1
  233. package/esm/Gauge/GaugeValueText.d.ts +1 -2
  234. package/esm/Gauge/GaugeValueText.js +0 -1
  235. package/esm/LineChart/AnimatedArea.d.ts +1 -1
  236. package/esm/LineChart/AppearingMask.d.ts +1 -1
  237. package/esm/LineChart/AreaElement.d.ts +1 -1
  238. package/esm/LineChart/AreaPlot.d.ts +1 -1
  239. package/esm/LineChart/CircleMarkElement.d.ts +1 -1
  240. package/esm/LineChart/FocusedMark.d.ts +1 -2
  241. package/esm/LineChart/FocusedMark.js +0 -1
  242. package/esm/LineChart/LineElement.d.ts +1 -1
  243. package/esm/LineChart/LineHighlightElement.d.ts +1 -1
  244. package/esm/LineChart/LineHighlightPlot.d.ts +1 -1
  245. package/esm/LineChart/LinePlot.d.ts +1 -1
  246. package/esm/LineChart/MarkElement.d.ts +1 -1
  247. package/esm/LineChart/MarkPlot.d.ts +1 -1
  248. package/esm/LineChart/seriesConfig/getColor.js +28 -5
  249. package/esm/LineChart/seriesConfig/index.d.ts +1 -1
  250. package/esm/LineChart/seriesConfig/index.js +1 -1
  251. package/esm/PieChart/PieArcLabelPlot.d.ts +1 -1
  252. package/esm/PieChart/PieArcPlot.d.ts +1 -1
  253. package/esm/PieChart/PiePlot.d.ts +1 -2
  254. package/esm/PieChart/PiePlot.js +0 -1
  255. package/esm/PieChart/seriesConfig/index.d.ts +1 -1
  256. package/esm/PieChart/seriesConfig/index.js +1 -1
  257. package/esm/RadarChart/RadarAxis/RadarAxis.d.ts +1 -1
  258. package/esm/RadarChart/RadarAxis/RadarAxis.utils.d.ts +2 -2
  259. package/esm/RadarChart/RadarAxisHighlight/RadarAxisHighlight.d.ts +1 -2
  260. package/esm/RadarChart/RadarAxisHighlight/RadarAxisHighlight.js +7 -2
  261. package/esm/RadarChart/RadarDataProvider/RadarDataProvider.d.ts +1 -2
  262. package/esm/RadarChart/RadarGrid/CircularRadarGrid.d.ts +1 -2
  263. package/esm/RadarChart/RadarGrid/CircularRadarStripes.d.ts +1 -2
  264. package/esm/RadarChart/RadarGrid/RadarGrid.d.ts +1 -2
  265. package/esm/RadarChart/RadarGrid/SharpRadarGrid.d.ts +1 -2
  266. package/esm/RadarChart/RadarGrid/SharpRadarStripes.d.ts +1 -2
  267. package/esm/RadarChart/RadarMetricLabels/RadarMetricLabels.d.ts +1 -2
  268. package/esm/RadarChart/RadarSeriesPlot/RadarSeriesArea.d.ts +1 -1
  269. package/esm/RadarChart/RadarSeriesPlot/RadarSeriesMarks.d.ts +1 -1
  270. package/esm/RadarChart/RadarSeriesPlot/RadarSeriesMarks.js +1 -2
  271. package/esm/RadarChart/RadarSeriesPlot/RadarSeriesPlot.d.ts +1 -2
  272. package/esm/RadarChart/RadarSeriesPlot/RadarSeriesPlot.js +1 -2
  273. package/esm/RadarChart/RadarSeriesPlot/useRadarSeriesData.d.ts +3 -0
  274. package/esm/RadarChart/RadarSeriesPlot/useRadarSeriesData.js +8 -1
  275. package/esm/RadarChart/seriesConfig/getColor.js +12 -1
  276. package/esm/ScatterChart/BatchScatter.d.ts +1 -2
  277. package/esm/ScatterChart/BatchScatter.js +4 -4
  278. package/esm/ScatterChart/Scatter.d.ts +7 -2
  279. package/esm/ScatterChart/Scatter.js +7 -3
  280. package/esm/ScatterChart/ScatterMarker.d.ts +1 -1
  281. package/esm/ScatterChart/ScatterPlot.d.ts +1 -1
  282. package/esm/ScatterChart/ScatterPlot.js +1 -1
  283. package/esm/ScatterChart/seriesConfig/getColor.js +36 -7
  284. package/esm/ScatterChart/seriesConfig/index.d.ts +1 -1
  285. package/esm/ScatterChart/seriesConfig/index.js +1 -1
  286. package/esm/context/ChartProvider/ChartProvider.d.ts +1 -1
  287. package/esm/context/ChartProvider/ChartProvider.js +4 -4
  288. package/esm/context/ChartProvider/ChartProvider.types.d.ts +3 -3
  289. package/esm/context/ChartsSlotsContext.d.ts +1 -1
  290. package/esm/hooks/animation/useAnimateBarLabel.d.ts +1 -1
  291. package/esm/hooks/animation/useAnimateBarLabel.js +61 -12
  292. package/esm/hooks/index.d.ts +1 -0
  293. package/esm/hooks/index.js +1 -0
  294. package/esm/hooks/useAxis.d.ts +116 -16
  295. package/esm/hooks/useAxis.js +122 -18
  296. package/esm/hooks/useDataset.d.ts +6 -0
  297. package/esm/hooks/useDataset.js +13 -0
  298. package/esm/hooks/useInteractionItemProps.js +2 -5
  299. package/esm/hooks/useIsItemFocused.js +5 -3
  300. package/esm/hooks/useItemHighlighted.js +2 -2
  301. package/esm/hooks/useItemHighlightedGetter.js +0 -1
  302. package/esm/hooks/useScale.d.ts +25 -6
  303. package/esm/hooks/useScale.js +29 -8
  304. package/esm/index.js +1 -1
  305. package/esm/internals/colorScale.d.ts +1 -1
  306. package/esm/internals/components/ChartsAxesGradients/ChartsAxesGradients.d.ts +1 -2
  307. package/esm/internals/components/ChartsAxesGradients/ChartsContinuousGradient.d.ts +1 -2
  308. package/esm/internals/components/ChartsAxesGradients/ChartsContinuousGradient.js +0 -1
  309. package/esm/internals/components/ChartsAxesGradients/ChartsContinuousGradientObjectBound.d.ts +1 -2
  310. package/esm/internals/components/ChartsAxesGradients/ChartsContinuousGradientObjectBound.js +0 -1
  311. package/esm/internals/components/ChartsAxesGradients/ChartsPiecewiseGradient.d.ts +1 -2
  312. package/esm/internals/createSeriesSelectorOfType.js +5 -3
  313. package/esm/internals/getSeriesColorFn.d.ts +5 -0
  314. package/esm/internals/getSeriesColorFn.js +3 -0
  315. package/esm/internals/index.d.ts +1 -1
  316. package/esm/internals/index.js +1 -1
  317. package/esm/internals/plugins/corePlugins/useChartAnimation/useChartAnimation.js +7 -15
  318. package/esm/internals/plugins/corePlugins/useChartAnimation/useChartAnimation.selectors.d.ts +2 -4
  319. package/esm/internals/plugins/corePlugins/useChartDimensions/useChartDimensions.js +28 -36
  320. package/esm/internals/plugins/corePlugins/useChartDimensions/useChartDimensions.selectors.d.ts +11 -17
  321. package/esm/internals/plugins/corePlugins/useChartDimensions/useChartDimensions.selectors.js +27 -21
  322. package/esm/internals/plugins/corePlugins/useChartExperimentalFeature/useChartExperimentalFeature.js +1 -6
  323. package/esm/internals/plugins/corePlugins/useChartExperimentalFeature/useChartExperimentalFeature.selectors.d.ts +2 -4
  324. package/esm/internals/plugins/corePlugins/useChartId/useChartId.js +6 -10
  325. package/esm/internals/plugins/corePlugins/useChartId/useChartId.selectors.d.ts +2 -4
  326. package/esm/internals/plugins/corePlugins/useChartInteractionListener/useChartInteractionListener.js +1 -3
  327. package/esm/internals/plugins/corePlugins/useChartSeries/useChartSeries.js +10 -10
  328. package/esm/internals/plugins/corePlugins/useChartSeries/useChartSeries.selectors.d.ts +11 -7
  329. package/esm/internals/plugins/corePlugins/useChartSeries/useChartSeries.selectors.js +8 -1
  330. package/esm/internals/plugins/corePlugins/useChartSeries/useChartSeries.types.d.ts +1 -0
  331. package/esm/internals/plugins/featurePlugins/useChartBrush/useChartBrush.js +19 -35
  332. package/esm/internals/plugins/featurePlugins/useChartBrush/useChartBrush.selectors.d.ts +29 -57
  333. package/esm/internals/plugins/featurePlugins/useChartBrush/useChartBrush.selectors.js +2 -2
  334. package/esm/internals/plugins/featurePlugins/useChartCartesianAxis/useChartAxisSize.selectors.d.ts +15 -15
  335. package/esm/internals/plugins/featurePlugins/useChartCartesianAxis/useChartAxisSize.selectors.js +21 -5
  336. package/esm/internals/plugins/featurePlugins/useChartCartesianAxis/useChartCartesianAxis.js +11 -17
  337. package/esm/internals/plugins/featurePlugins/useChartCartesianAxis/useChartCartesianAxisPreview.selectors.d.ts +12 -4
  338. package/esm/internals/plugins/featurePlugins/useChartCartesianAxis/useChartCartesianAxisPreview.selectors.js +15 -9
  339. package/esm/internals/plugins/featurePlugins/useChartCartesianAxis/useChartCartesianAxisRendering.selectors.d.ts +62 -86
  340. package/esm/internals/plugins/featurePlugins/useChartCartesianAxis/useChartCartesianAxisRendering.selectors.js +69 -45
  341. package/esm/internals/plugins/featurePlugins/useChartCartesianAxis/useChartCartesianHighlight.selectors.d.ts +14 -26
  342. package/esm/internals/plugins/featurePlugins/useChartCartesianAxis/useChartCartesianHighlight.selectors.js +3 -2
  343. package/esm/internals/plugins/featurePlugins/useChartCartesianAxis/useChartCartesianInteraction.selectors.d.ts +17 -33
  344. package/esm/internals/plugins/featurePlugins/useChartCartesianAxis/useChartCartesianInteraction.selectors.js +23 -22
  345. package/esm/internals/plugins/featurePlugins/useChartClosestPoint/useChartClosestPoint.js +9 -15
  346. package/esm/internals/plugins/featurePlugins/useChartClosestPoint/useChartClosestPoint.selectors.d.ts +2 -4
  347. package/esm/internals/plugins/featurePlugins/useChartHighlight/useChartHighlight.js +12 -16
  348. package/esm/internals/plugins/featurePlugins/useChartHighlight/useChartHighlight.selectors.d.ts +23 -21
  349. package/esm/internals/plugins/featurePlugins/useChartHighlight/useChartHighlight.selectors.js +8 -7
  350. package/esm/internals/plugins/featurePlugins/useChartInteraction/useChartInteraction.js +29 -43
  351. package/esm/internals/plugins/featurePlugins/useChartInteraction/useChartInteraction.selectors.d.ts +14 -28
  352. package/esm/internals/plugins/featurePlugins/useChartInteraction/useChartTooltip.selectors.d.ts +7 -9
  353. package/esm/internals/plugins/featurePlugins/useChartKeyboardNavigation/useChartKeyboardNavigation.js +47 -53
  354. package/esm/internals/plugins/featurePlugins/useChartKeyboardNavigation/useChartKeyboardNavigation.selectors.d.ts +22 -36
  355. package/esm/internals/plugins/featurePlugins/useChartKeyboardNavigation/useChartKeyboardNavigation.selectors.js +3 -0
  356. package/esm/internals/plugins/featurePlugins/useChartPolarAxis/useChartPolarAxis.js +3 -5
  357. package/esm/internals/plugins/featurePlugins/useChartPolarAxis/useChartPolarAxis.selectors.d.ts +11 -21
  358. package/esm/internals/plugins/featurePlugins/useChartPolarAxis/useChartPolarInteraction.selectors.d.ts +14 -26
  359. package/esm/internals/plugins/featurePlugins/useChartPolarAxis/useChartPolarInteraction.selectors.js +11 -10
  360. package/esm/internals/plugins/featurePlugins/useChartZAxis/useChartZAxis.js +1 -3
  361. package/esm/internals/plugins/featurePlugins/useChartZAxis/useChartZAxis.selectors.d.ts +3 -5
  362. package/esm/internals/plugins/models/plugin.d.ts +3 -2
  363. package/esm/internals/plugins/utils/selectors.d.ts +13 -17
  364. package/esm/internals/plugins/utils/selectors.js +3 -35
  365. package/esm/internals/plugins/utils/useLazySelectorEffect.d.ts +2 -2
  366. package/esm/internals/plugins/utils/useLazySelectorEffect.js +2 -2
  367. package/esm/internals/store/useCharts.d.ts +3 -4
  368. package/esm/internals/store/useCharts.js +2 -2
  369. package/esm/internals/store/useSelector.d.ts +2 -4
  370. package/esm/internals/store/useSelector.js +2 -8
  371. package/esm/internals/store/useStore.d.ts +3 -5
  372. package/esm/locales/index.d.ts +2 -1
  373. package/esm/locales/index.js +1 -0
  374. package/esm/locales/nbNO.d.ts +115 -0
  375. package/esm/locales/nbNO.js +113 -0
  376. package/esm/models/seriesType/bar.d.ts +16 -0
  377. package/esm/models/seriesType/common.d.ts +22 -6
  378. package/esm/models/seriesType/config.d.ts +7 -16
  379. package/hooks/animation/useAnimateBarLabel.d.ts +1 -1
  380. package/hooks/animation/useAnimateBarLabel.js +61 -12
  381. package/hooks/index.d.ts +1 -0
  382. package/hooks/index.js +12 -0
  383. package/hooks/useAxis.d.ts +116 -16
  384. package/hooks/useAxis.js +122 -18
  385. package/hooks/useDataset.d.ts +6 -0
  386. package/hooks/useDataset.js +18 -0
  387. package/hooks/useInteractionItemProps.js +2 -5
  388. package/hooks/useIsItemFocused.js +5 -3
  389. package/hooks/useItemHighlighted.js +2 -2
  390. package/hooks/useScale.d.ts +25 -6
  391. package/hooks/useScale.js +29 -8
  392. package/index.js +1 -1
  393. package/internals/colorScale.d.ts +1 -1
  394. package/internals/components/ChartsAxesGradients/ChartsAxesGradients.d.ts +1 -2
  395. package/internals/components/ChartsAxesGradients/ChartsContinuousGradient.d.ts +1 -2
  396. package/internals/components/ChartsAxesGradients/ChartsContinuousGradient.js +0 -2
  397. package/internals/components/ChartsAxesGradients/ChartsContinuousGradientObjectBound.d.ts +1 -2
  398. package/internals/components/ChartsAxesGradients/ChartsContinuousGradientObjectBound.js +0 -2
  399. package/internals/components/ChartsAxesGradients/ChartsPiecewiseGradient.d.ts +1 -2
  400. package/internals/createSeriesSelectorOfType.js +6 -3
  401. package/internals/getSeriesColorFn.d.ts +5 -0
  402. package/internals/getSeriesColorFn.js +9 -0
  403. package/internals/index.d.ts +1 -1
  404. package/internals/index.js +1 -1
  405. package/internals/plugins/corePlugins/useChartAnimation/useChartAnimation.js +7 -15
  406. package/internals/plugins/corePlugins/useChartAnimation/useChartAnimation.selectors.d.ts +2 -4
  407. package/internals/plugins/corePlugins/useChartDimensions/useChartDimensions.js +28 -36
  408. package/internals/plugins/corePlugins/useChartDimensions/useChartDimensions.selectors.d.ts +11 -17
  409. package/internals/plugins/corePlugins/useChartDimensions/useChartDimensions.selectors.js +27 -21
  410. package/internals/plugins/corePlugins/useChartExperimentalFeature/useChartExperimentalFeature.js +1 -6
  411. package/internals/plugins/corePlugins/useChartExperimentalFeature/useChartExperimentalFeature.selectors.d.ts +2 -4
  412. package/internals/plugins/corePlugins/useChartId/useChartId.js +6 -10
  413. package/internals/plugins/corePlugins/useChartId/useChartId.selectors.d.ts +2 -4
  414. package/internals/plugins/corePlugins/useChartInteractionListener/useChartInteractionListener.js +1 -3
  415. package/internals/plugins/corePlugins/useChartSeries/useChartSeries.js +10 -10
  416. package/internals/plugins/corePlugins/useChartSeries/useChartSeries.selectors.d.ts +11 -7
  417. package/internals/plugins/corePlugins/useChartSeries/useChartSeries.selectors.js +9 -2
  418. package/internals/plugins/corePlugins/useChartSeries/useChartSeries.types.d.ts +1 -0
  419. package/internals/plugins/featurePlugins/useChartBrush/useChartBrush.js +19 -35
  420. package/internals/plugins/featurePlugins/useChartBrush/useChartBrush.selectors.d.ts +29 -57
  421. package/internals/plugins/featurePlugins/useChartBrush/useChartBrush.selectors.js +2 -2
  422. package/internals/plugins/featurePlugins/useChartCartesianAxis/useChartAxisSize.selectors.d.ts +15 -15
  423. package/internals/plugins/featurePlugins/useChartCartesianAxis/useChartAxisSize.selectors.js +22 -6
  424. package/internals/plugins/featurePlugins/useChartCartesianAxis/useChartCartesianAxis.js +11 -17
  425. package/internals/plugins/featurePlugins/useChartCartesianAxis/useChartCartesianAxisPreview.selectors.d.ts +12 -4
  426. package/internals/plugins/featurePlugins/useChartCartesianAxis/useChartCartesianAxisPreview.selectors.js +14 -8
  427. package/internals/plugins/featurePlugins/useChartCartesianAxis/useChartCartesianAxisRendering.selectors.d.ts +62 -86
  428. package/internals/plugins/featurePlugins/useChartCartesianAxis/useChartCartesianAxisRendering.selectors.js +70 -46
  429. package/internals/plugins/featurePlugins/useChartCartesianAxis/useChartCartesianHighlight.selectors.d.ts +14 -26
  430. package/internals/plugins/featurePlugins/useChartCartesianAxis/useChartCartesianHighlight.selectors.js +3 -2
  431. package/internals/plugins/featurePlugins/useChartCartesianAxis/useChartCartesianInteraction.selectors.d.ts +17 -33
  432. package/internals/plugins/featurePlugins/useChartCartesianAxis/useChartCartesianInteraction.selectors.js +23 -23
  433. package/internals/plugins/featurePlugins/useChartClosestPoint/useChartClosestPoint.js +9 -15
  434. package/internals/plugins/featurePlugins/useChartClosestPoint/useChartClosestPoint.selectors.d.ts +2 -4
  435. package/internals/plugins/featurePlugins/useChartHighlight/useChartHighlight.js +12 -16
  436. package/internals/plugins/featurePlugins/useChartHighlight/useChartHighlight.selectors.d.ts +23 -21
  437. package/internals/plugins/featurePlugins/useChartHighlight/useChartHighlight.selectors.js +8 -7
  438. package/internals/plugins/featurePlugins/useChartInteraction/useChartInteraction.js +29 -43
  439. package/internals/plugins/featurePlugins/useChartInteraction/useChartInteraction.selectors.d.ts +14 -28
  440. package/internals/plugins/featurePlugins/useChartInteraction/useChartTooltip.selectors.d.ts +7 -9
  441. package/internals/plugins/featurePlugins/useChartKeyboardNavigation/useChartKeyboardNavigation.js +47 -53
  442. package/internals/plugins/featurePlugins/useChartKeyboardNavigation/useChartKeyboardNavigation.selectors.d.ts +22 -36
  443. package/internals/plugins/featurePlugins/useChartKeyboardNavigation/useChartKeyboardNavigation.selectors.js +4 -1
  444. package/internals/plugins/featurePlugins/useChartPolarAxis/useChartPolarAxis.js +3 -5
  445. package/internals/plugins/featurePlugins/useChartPolarAxis/useChartPolarAxis.selectors.d.ts +11 -21
  446. package/internals/plugins/featurePlugins/useChartPolarAxis/useChartPolarInteraction.selectors.d.ts +14 -26
  447. package/internals/plugins/featurePlugins/useChartPolarAxis/useChartPolarInteraction.selectors.js +12 -10
  448. package/internals/plugins/featurePlugins/useChartZAxis/useChartZAxis.js +1 -3
  449. package/internals/plugins/featurePlugins/useChartZAxis/useChartZAxis.selectors.d.ts +3 -5
  450. package/internals/plugins/models/plugin.d.ts +3 -2
  451. package/internals/plugins/utils/selectors.d.ts +13 -17
  452. package/internals/plugins/utils/selectors.js +3 -35
  453. package/internals/plugins/utils/useLazySelectorEffect.d.ts +2 -2
  454. package/internals/plugins/utils/useLazySelectorEffect.js +2 -2
  455. package/internals/store/useCharts.d.ts +3 -4
  456. package/internals/store/useCharts.js +2 -2
  457. package/internals/store/useSelector.d.ts +2 -4
  458. package/internals/store/useSelector.js +2 -10
  459. package/internals/store/useStore.d.ts +3 -5
  460. package/locales/index.d.ts +2 -1
  461. package/locales/index.js +11 -0
  462. package/locales/nbNO.d.ts +115 -0
  463. package/locales/nbNO.js +119 -0
  464. package/models/seriesType/bar.d.ts +16 -0
  465. package/models/seriesType/common.d.ts +22 -6
  466. package/models/seriesType/config.d.ts +7 -16
  467. package/package.json +5 -5
  468. package/BarChart/seriesConfig/getColor.d.ts +0 -3
  469. package/BarChart/seriesConfig/getSeriesWithDefaultValues.d.ts +0 -3
  470. package/BarChart/seriesConfig/legend.d.ts +0 -3
  471. package/BarChart/seriesConfig/seriesProcessor.d.ts +0 -3
  472. package/BarChart/seriesConfig/tooltip.d.ts +0 -4
  473. package/BarChart/seriesConfig/tooltipPosition.d.ts +0 -3
  474. package/esm/BarChart/seriesConfig/getColor.d.ts +0 -3
  475. package/esm/BarChart/seriesConfig/getSeriesWithDefaultValues.d.ts +0 -3
  476. package/esm/BarChart/seriesConfig/legend.d.ts +0 -3
  477. package/esm/BarChart/seriesConfig/seriesProcessor.d.ts +0 -3
  478. package/esm/BarChart/seriesConfig/tooltip.d.ts +0 -4
  479. package/esm/BarChart/seriesConfig/tooltipPosition.d.ts +0 -3
  480. package/esm/internals/plugins/utils/ChartStore.d.ts +0 -13
  481. package/esm/internals/plugins/utils/ChartStore.js +0 -22
  482. package/internals/plugins/utils/ChartStore.d.ts +0 -13
  483. package/internals/plugins/utils/ChartStore.js +0 -29
  484. /package/BarChart/seriesConfig/{getSeriesWithDefaultValues.js → bar/getSeriesWithDefaultValues.js} +0 -0
  485. /package/esm/BarChart/seriesConfig/{getSeriesWithDefaultValues.js → bar/getSeriesWithDefaultValues.js} +0 -0
@@ -1,10 +1,8 @@
1
- export declare const selectorChartZAxis: import("reselect").Selector<import("../../corePlugins/useChartId/useChartId.types.js").UseChartIdState & import("../../corePlugins/useChartExperimentalFeature/useChartExperimentalFeature.types.js").UseChartExperimentalFeaturesState & import("../../corePlugins/useChartDimensions/useChartDimensions.types.js").UseChartDimensionsState & import("../../corePlugins/useChartSeries/useChartSeries.types.js").UseChartSeriesState<keyof import("../../../index.js").ChartsSeriesConfig> & import("../../corePlugins/useChartAnimation/useChartAnimation.types.js").UseChartAnimationState & import("../../../index.js").UseChartInteractionListenerState & import("./useChartZAxis.types.js").UseChartZAxisState & Partial<{}> & {
1
+ export declare const selectorChartZAxis: (args_0: import("../../corePlugins/useChartId/useChartId.types.js").UseChartIdState & import("../../corePlugins/useChartExperimentalFeature/useChartExperimentalFeature.types.js").UseChartExperimentalFeaturesState & import("../../corePlugins/useChartDimensions/useChartDimensions.types.js").UseChartDimensionsState & import("../../corePlugins/useChartSeries/useChartSeries.types.js").UseChartSeriesState<keyof import("../../../index.js").ChartsSeriesConfig> & import("../../corePlugins/useChartAnimation/useChartAnimation.types.js").UseChartAnimationState & import("../../../index.js").UseChartInteractionListenerState & import("./useChartZAxis.types.js").UseChartZAxisState & Partial<{}> & {
2
2
  cacheKey: import("../../models/index.js").ChartStateCacheKey;
3
- } & {
4
- cacheKey: import("../../models/index.js").ChartStateCacheKey;
5
- }, {
3
+ }) => {
6
4
  axis: {
7
5
  [axisId: string]: import("../../../index.js").ZAxisDefaultized;
8
6
  };
9
7
  axisIds: import("../../../index.js").AxisId[];
10
- }, []>;
8
+ };
@@ -1,8 +1,9 @@
1
1
  import * as React from 'react';
2
+ import { Store } from '@mui/x-internals/store';
2
3
  import type { MergeSignaturesProperty, OptionalIfEmpty } from "./helpers.js";
3
4
  import type { ChartCorePluginSignatures } from "../corePlugins/index.js";
4
- import { ChartStore } from "../utils/ChartStore.js";
5
5
  import { ChartSeriesConfig } from "./seriesConfig/index.js";
6
+ import { ChartState } from "./chart.js";
6
7
  export interface ChartPluginOptions<TSignature extends ChartAnyPluginSignature> {
7
8
  /**
8
9
  * An imperative api available for internal use.
@@ -107,7 +108,7 @@ export type ChartUsedInstance<TSignature extends ChartAnyPluginSignature> = Plug
107
108
  */
108
109
  $$signature: TSignature;
109
110
  };
110
- export type ChartUsedStore<TSignature extends ChartAnyPluginSignature> = ChartStore<[TSignature, ...TSignature['dependencies']], TSignature['optionalDependencies']>;
111
+ export type ChartUsedStore<TSignature extends ChartAnyPluginSignature> = Store<ChartState<[TSignature, ...TSignature['dependencies']], TSignature['optionalDependencies']>>;
111
112
  export type ChartPlugin<TSignature extends ChartAnyPluginSignature> = {
112
113
  /**
113
114
  * The main function of the plugin that will be executed by the chart.
@@ -1,22 +1,18 @@
1
- import { SelectorArray, Combiner, Selector, GetStateFromSelectors, GetParamsFromSelectors, CreateSelectorOptions } from 'reselect';
2
- import { ChartAnyPluginSignature, ChartState, ChartStateCacheKey } from "../models/index.js";
1
+ import type { Selector } from 'reselect';
2
+ import { ChartAnyPluginSignature } from "../models/plugin.js";
3
+ import { ChartState } from "../models/chart.js";
3
4
  export type ChartRootSelector<TSignature extends ChartAnyPluginSignature, T extends keyof TSignature['state'] = keyof TSignature['state']> = Selector<ChartState<[TSignature]>, TSignature['state'][T]>;
4
5
  export type ChartOptionalRootSelector<TSignature extends ChartAnyPluginSignature> = Selector<ChartState<[], [TSignature]>, TSignature['state'][keyof TSignature['state']] | undefined>;
5
- export type ChartsSelector<Signatures extends readonly ChartAnyPluginSignature[] = [], OptionalSignatures extends readonly ChartAnyPluginSignature[] = [], Result = unknown, Args extends readonly any[] = []> = Selector<ChartState<Signatures, OptionalSignatures>, Result, Args>;
6
- type InterruptRecursion = NonNullable<unknown>;
7
- type AnyFunction = (...args: any[]) => any;
8
- export type Simplify<T> = T extends AnyFunction ? T : { [KeyType in keyof T]: T[KeyType] } & NonNullable<unknown>;
6
+ type StateFromSelectorList<Selectors extends readonly any[]> = Selectors extends [f: infer F, ...other: infer R] ? StateFromSelector<F> extends StateFromSelectorList<R> ? StateFromSelector<F> : StateFromSelectorList<R> : {};
7
+ type StateFromSelector<T> = T extends ((first: infer F, ...args: any[]) => any) ? F : never;
8
+ type Fn = (...args: any[]) => any;
9
+ type ReturnTypes<FunctionsArray extends readonly Fn[]> = { [Index in keyof FunctionsArray]: FunctionsArray[Index] extends FunctionsArray[number] ? ReturnType<FunctionsArray[Index]> : never };
10
+ type MergeParams<STypes extends readonly unknown[], CTypes extends readonly unknown[]> = STypes['length'] extends 0 ? CTypes : MergeParams<DropFirst<STypes>, DropFirst<CTypes>>;
11
+ type DropFirst<T> = T extends [any, ...infer Xs] ? Xs : [];
12
+ type SelectorArgs<Args extends any[], Selectors extends ReadonlyArray<Selector<any>>, Combiner extends (...args: readonly [...ReturnTypes<Selectors>, ...Args]) => any> = Selectors['length'] extends 0 ? MergeParams<ReturnTypes<Selectors>, Parameters<Combiner>> : [StateFromSelectorList<Selectors>, ...MergeParams<ReturnTypes<Selectors>, Parameters<Combiner>>];
13
+ type ChartSelector<Args extends any[], Selectors extends ReadonlyArray<Selector<any>>, Combiner extends (...args: readonly [...ReturnTypes<Selectors>, ...Args]) => any> = (...args: SelectorArgs<Args, Selectors, Combiner>) => ReturnType<Combiner>;
9
14
  /**
10
- * Method wrapping reselect's createSelector to provide caching for chart instances.
11
- *
15
+ * Method wrapping reselect's createChartSelector to provide caching for chart instances.
12
16
  */
13
- export declare const createSelector: <InputSelectors extends SelectorArray<any>, Result>(...createSelectorArgs: [inputSelectors: [...InputSelectors], combiner: Combiner<InputSelectors, Result>, createSelectorOptions?: Simplify<CreateSelectorOptions<any,
14
- // MemoizeFunction,
15
- any,
16
- // ArgsMemoizeFunction,
17
- any,
18
- // OverrideMemoizeFunction,
19
- any>>]) => Selector<GetStateFromSelectors<InputSelectors> & {
20
- cacheKey: ChartStateCacheKey;
21
- }, Result, GetParamsFromSelectors<InputSelectors> & InterruptRecursion>;
17
+ export declare const createSelector: <const Args extends any[], const Selectors extends ReadonlyArray<Selector<any>>, const Combiner extends (...args: readonly [...ReturnTypes<Selectors>, ...Args]) => any>(inputSelectors: [...Selectors], combiner: Combiner) => ChartSelector<Args, Selectors, Combiner>;
22
18
  export {};
@@ -1,37 +1,5 @@
1
- import { lruMemoize, createSelectorCreator } from 'reselect';
2
- const reselectCreateSelector = createSelectorCreator({
3
- memoize: lruMemoize,
4
- memoizeOptions: {
5
- maxSize: 1,
6
- equalityCheck: Object.is
7
- }
8
- });
9
- const cache = new WeakMap();
1
+ import { createSelector as internalCreateSelector } from '@mui/x-internals/store';
10
2
  /**
11
- * Method wrapping reselect's createSelector to provide caching for chart instances.
12
- *
3
+ * Method wrapping reselect's createChartSelector to provide caching for chart instances.
13
4
  */
14
- export const createSelector = (...createSelectorArgs) => {
15
- const selector = (state, ...selectorArgs) => {
16
- const cacheKey = state.cacheKey;
17
-
18
- // If there is no cache for the current chart instance, create one.
19
- let cacheForCurrentChartInstance = cache.get(cacheKey);
20
- if (!cacheForCurrentChartInstance) {
21
- cacheForCurrentChartInstance = new Map();
22
- cache.set(cacheKey, cacheForCurrentChartInstance);
23
- }
24
-
25
- // If there is a cached selector, execute it.
26
- const cachedSelector = cacheForCurrentChartInstance.get(createSelectorArgs);
27
- if (cachedSelector) {
28
- return cachedSelector(state, ...selectorArgs);
29
- }
30
-
31
- // Otherwise, create a new selector and cache it and execute it.
32
- const fn = reselectCreateSelector(...createSelectorArgs);
33
- cacheForCurrentChartInstance.set(createSelectorArgs, fn);
34
- return fn(state, ...selectorArgs);
35
- };
36
- return selector;
37
- };
5
+ export const createSelector = (inputSelectors, combiner) => internalCreateSelector(...inputSelectors, combiner);
@@ -1,6 +1,6 @@
1
- import type { ChartStore } from "./ChartStore.js";
1
+ import type { Store } from '@mui/x-internals/store';
2
2
  import { ChartAnyPluginSignature, ChartState } from "../models/index.js";
3
- export declare function useLazySelectorEffect<TSignatures extends readonly ChartAnyPluginSignature[], Value>(store: ChartStore<TSignatures>, selector: (state: ChartState<TSignatures>) => Value, effect: (previous: Value, next: Value) => void,
3
+ export declare function useLazySelectorEffect<TSignatures extends readonly ChartAnyPluginSignature[], Value>(store: Store<ChartState<TSignatures>>, selector: (state: ChartState<TSignatures>) => Value, effect: (previous: Value, next: Value) => void,
4
4
  /**
5
5
  * If true, the selector will be ignored.
6
6
  */
@@ -51,7 +51,7 @@ function initialize(params) {
51
51
  if (!isRunning) {
52
52
  // Initialize values
53
53
  isRunning = true;
54
- previousState = selector(store.value);
54
+ previousState = selector(store.state);
55
55
  }
56
56
  subscribe();
57
57
  return () => {
@@ -63,7 +63,7 @@ function initialize(params) {
63
63
  if (!initialSkip) {
64
64
  // Initialize values
65
65
  isRunning = true;
66
- previousState = selector(store.value);
66
+ previousState = selector(store.state);
67
67
  subscribe();
68
68
  }
69
69
  return instance;
@@ -1,8 +1,7 @@
1
1
  import * as React from 'react';
2
- import { ChartStore } from "../plugins/utils/ChartStore.js";
3
- import { ChartAnyPluginSignature, ChartInstance, ChartPublicAPI, ConvertSignaturesIntoPlugins } from "../plugins/models/index.js";
2
+ import { Store } from '@mui/x-internals/store';
3
+ import { ChartAnyPluginSignature, ChartInstance, ChartPublicAPI, ChartState, ConvertSignaturesIntoPlugins } from "../plugins/models/index.js";
4
4
  import { UseChartBaseProps } from "./useCharts.types.js";
5
- import { UseChartInteractionState } from "../plugins/featurePlugins/useChartInteraction/useChartInteraction.types.js";
6
5
  import { ChartSeriesType } from "../../models/seriesType/config.js";
7
6
  import { ChartSeriesConfig } from "../plugins/models/seriesConfig/index.js";
8
7
  /**
@@ -16,7 +15,7 @@ import { ChartSeriesConfig } from "../plugins/models/seriesConfig/index.js";
16
15
  */
17
16
  export declare function useCharts<TSeriesType extends ChartSeriesType, TSignatures extends readonly ChartAnyPluginSignature[]>(inPlugins: ConvertSignaturesIntoPlugins<TSignatures>, props: Partial<UseChartBaseProps<TSignatures>>, seriesConfig: ChartSeriesConfig<TSeriesType>): {
18
17
  contextValue: {
19
- store: ChartStore<readonly [import("../index.js").UseChartIdSignature, import("../plugins/corePlugins/useChartExperimentalFeature/index.js").UseChartExperimentalFeaturesSignature, import("../index.js").UseChartDimensionsSignature, import("../index.js").UseChartSeriesSignature, import("../plugins/corePlugins/useChartAnimation/index.js").UseChartAnimationSignature, import("../index.js").UseChartInteractionListenerSignature, ...TSignatures]> & UseChartInteractionState;
18
+ store: Store<ChartState<readonly [import("../index.js").UseChartIdSignature, import("../plugins/corePlugins/useChartExperimentalFeature/index.js").UseChartExperimentalFeaturesSignature, import("../index.js").UseChartDimensionsSignature, import("../index.js").UseChartSeriesSignature, import("../plugins/corePlugins/useChartAnimation/index.js").UseChartAnimationSignature, import("../index.js").UseChartInteractionListenerSignature, ...TSignatures]>>;
20
19
  publicAPI: ChartPublicAPI<TSignatures>;
21
20
  instance: ChartInstance<TSignatures>;
22
21
  svgRef: React.RefObject<SVGSVGElement | null>;
@@ -1,6 +1,6 @@
1
1
  import * as React from 'react';
2
2
  import useId from '@mui/utils/useId';
3
- import { ChartStore } from "../plugins/utils/ChartStore.js";
3
+ import { Store } from '@mui/x-internals/store';
4
4
  import { CHART_CORE_PLUGINS } from "../plugins/corePlugins/index.js";
5
5
  import { extractPluginParamsFromProps } from "./extractPluginParamsFromProps.js";
6
6
  let globalId = 0;
@@ -41,7 +41,7 @@ export function useCharts(inPlugins, props, seriesConfig) {
41
41
  Object.assign(initialState, plugin.getInitialState(pluginParams, initialState, seriesConfig));
42
42
  }
43
43
  });
44
- storeRef.current = new ChartStore(initialState);
44
+ storeRef.current = new Store(initialState);
45
45
  }
46
46
  const runPlugin = plugin => {
47
47
  const pluginResponse = plugin({
@@ -1,4 +1,2 @@
1
- import { ChartAnyPluginSignature } from "../plugins/models/index.js";
2
- import { ChartsSelector } from "../plugins/utils/selectors.js";
3
- import { ChartStore } from "../plugins/utils/ChartStore.js";
4
- export declare const useSelector: <TSignatures extends readonly ChartAnyPluginSignature[], TOptionalSignatures extends readonly ChartAnyPluginSignature[], TArgs extends readonly any[], TResult = unknown>(store: ChartStore<TSignatures, TOptionalSignatures>, selector: ChartsSelector<TSignatures, TOptionalSignatures, TResult, TArgs>, args?: [TArgs] extends [never] ? [] : TArgs, equals?: (a: TResult, b: TResult) => boolean) => TResult;
1
+ import { useStore as useInternalStore } from '@mui/x-internals/store';
2
+ export declare const useSelector: typeof useInternalStore;
@@ -1,8 +1,2 @@
1
- /* We need to import the shim because React 17 does not support the `useSyncExternalStore` API.
2
- * More info: https://github.com/mui/mui-x/issues/18303#issuecomment-2958392341 */
3
- import { useSyncExternalStoreWithSelector } from 'use-sync-external-store/shim/with-selector';
4
- const defaultCompare = Object.is;
5
- export const useSelector = (store, selector, args = [], equals = defaultCompare) => {
6
- const selectorWithArgs = state => selector(state, ...args);
7
- return useSyncExternalStoreWithSelector(store.subscribe, store.getSnapshot, store.getSnapshot, selectorWithArgs, equals);
8
- };
1
+ import { useStore as useInternalStore } from '@mui/x-internals/store';
2
+ export const useSelector = useInternalStore;
@@ -1,5 +1,3 @@
1
- import { ChartStore } from "../plugins/utils/ChartStore.js";
2
- import { UseChartInteractionSignature } from "../plugins/featurePlugins/useChartInteraction/index.js";
3
- import { UseChartHighlightSignature } from "../plugins/featurePlugins/useChartHighlight/index.js";
4
- import { ChartAnyPluginSignature } from "../plugins/models/index.js";
5
- export declare function useStore<TSignatures extends ChartAnyPluginSignature[] = []>(): ChartStore<[...TSignatures, UseChartInteractionSignature, UseChartHighlightSignature]>;
1
+ import { Store } from '@mui/x-internals/store';
2
+ import { ChartAnyPluginSignature, ChartState } from "../plugins/models/index.js";
3
+ export declare function useStore<TSignatures extends ChartAnyPluginSignature[] = []>(): Store<ChartState<TSignatures>>;
@@ -4,4 +4,5 @@ export * from "./enUS.js";
4
4
  export * from "./frFR.js";
5
5
  export * from "./ptBR.js";
6
6
  export * from "./ptPT.js";
7
- export * from "./svSE.js";
7
+ export * from "./svSE.js";
8
+ export * from "./nbNO.js";
@@ -4,4 +4,5 @@ export * from "./frFR.js";
4
4
  export * from "./ptBR.js";
5
5
  export * from "./ptPT.js";
6
6
  export * from "./svSE.js";
7
+ export * from "./nbNO.js";
7
8
  export {};
@@ -0,0 +1,115 @@
1
+ import { ChartsLocaleText } from "./utils/chartsLocaleTextApi.js";
2
+ export declare const nbNOLocaleText: Partial<ChartsLocaleText>;
3
+ export declare const nbNO: {
4
+ components: {
5
+ MuiChartsLocalizationProvider: {
6
+ defaultProps: {
7
+ localeText: {
8
+ loading?: string | undefined;
9
+ noData?: string | undefined;
10
+ zoomIn?: string | undefined;
11
+ zoomOut?: string | undefined;
12
+ toolbarExport?: string | undefined;
13
+ toolbarExportPrint?: string | undefined;
14
+ toolbarExportImage?: ((mimeType: import("./utils/imageMimeTypes.js").ChartImageExportMimeType | (string & {})) => string) | undefined;
15
+ chartTypeBar?: string | undefined;
16
+ chartTypeColumn?: string | undefined;
17
+ chartTypeLine?: string | undefined;
18
+ chartTypeArea?: string | undefined;
19
+ chartTypePie?: string | undefined;
20
+ chartPaletteLabel?: string | undefined;
21
+ chartPaletteNameRainbowSurge?: string | undefined;
22
+ chartPaletteNameBlueberryTwilight?: string | undefined;
23
+ chartPaletteNameMangoFusion?: string | undefined;
24
+ chartPaletteNameCheerfulFiesta?: string | undefined;
25
+ chartPaletteNameStrawberrySky?: string | undefined;
26
+ chartPaletteNameBlue?: string | undefined;
27
+ chartPaletteNameGreen?: string | undefined;
28
+ chartPaletteNamePurple?: string | undefined;
29
+ chartPaletteNameRed?: string | undefined;
30
+ chartPaletteNameOrange?: string | undefined;
31
+ chartPaletteNameYellow?: string | undefined;
32
+ chartPaletteNameCyan?: string | undefined;
33
+ chartPaletteNamePink?: string | undefined;
34
+ chartConfigurationSectionChart?: string | undefined;
35
+ chartConfigurationSectionAxes?: string | undefined;
36
+ chartConfigurationSectionTooltip?: string | undefined;
37
+ chartConfigurationSectionLegend?: string | undefined;
38
+ chartConfigurationSectionColumns?: string | undefined;
39
+ chartConfigurationSectionBars?: string | undefined;
40
+ chartConfigurationSectionLines?: string | undefined;
41
+ chartConfigurationSectionAreas?: string | undefined;
42
+ chartConfigurationSectionArcs?: string | undefined;
43
+ chartConfigurationGrid?: string | undefined;
44
+ chartConfigurationBorderRadius?: string | undefined;
45
+ chartConfigurationCategoryGapRatio?: string | undefined;
46
+ chartConfigurationBarGapRatio?: string | undefined;
47
+ chartConfigurationStacked?: string | undefined;
48
+ chartConfigurationShowToolbar?: string | undefined;
49
+ chartConfigurationSkipAnimation?: string | undefined;
50
+ chartConfigurationInnerRadius?: string | undefined;
51
+ chartConfigurationOuterRadius?: string | undefined;
52
+ chartConfigurationColors?: string | undefined;
53
+ chartConfigurationHideLegend?: string | undefined;
54
+ chartConfigurationShowMark?: string | undefined;
55
+ chartConfigurationHeight?: string | undefined;
56
+ chartConfigurationWidth?: string | undefined;
57
+ chartConfigurationSeriesGap?: string | undefined;
58
+ chartConfigurationTickPlacement?: string | undefined;
59
+ chartConfigurationTickLabelPlacement?: string | undefined;
60
+ chartConfigurationCategoriesAxisLabel?: string | undefined;
61
+ chartConfigurationSeriesAxisLabel?: string | undefined;
62
+ chartConfigurationXAxisPosition?: string | undefined;
63
+ chartConfigurationYAxisPosition?: string | undefined;
64
+ chartConfigurationSeriesAxisReverse?: string | undefined;
65
+ chartConfigurationTooltipPlacement?: string | undefined;
66
+ chartConfigurationTooltipTrigger?: string | undefined;
67
+ chartConfigurationLegendPosition?: string | undefined;
68
+ chartConfigurationLegendDirection?: string | undefined;
69
+ chartConfigurationBarLabels?: string | undefined;
70
+ chartConfigurationColumnLabels?: string | undefined;
71
+ chartConfigurationInterpolation?: string | undefined;
72
+ chartConfigurationPaddingAngle?: string | undefined;
73
+ chartConfigurationCornerRadius?: string | undefined;
74
+ chartConfigurationArcLabels?: string | undefined;
75
+ chartConfigurationStartAngle?: string | undefined;
76
+ chartConfigurationEndAngle?: string | undefined;
77
+ chartConfigurationPieTooltipTrigger?: string | undefined;
78
+ chartConfigurationPieLegendPosition?: string | undefined;
79
+ chartConfigurationPieLegendDirection?: string | undefined;
80
+ chartConfigurationOptionNone?: string | undefined;
81
+ chartConfigurationOptionValue?: string | undefined;
82
+ chartConfigurationOptionAuto?: string | undefined;
83
+ chartConfigurationOptionTop?: string | undefined;
84
+ chartConfigurationOptionTopLeft?: string | undefined;
85
+ chartConfigurationOptionTopRight?: string | undefined;
86
+ chartConfigurationOptionBottom?: string | undefined;
87
+ chartConfigurationOptionBottomLeft?: string | undefined;
88
+ chartConfigurationOptionBottomRight?: string | undefined;
89
+ chartConfigurationOptionLeft?: string | undefined;
90
+ chartConfigurationOptionRight?: string | undefined;
91
+ chartConfigurationOptionAxis?: string | undefined;
92
+ chartConfigurationOptionItem?: string | undefined;
93
+ chartConfigurationOptionHorizontal?: string | undefined;
94
+ chartConfigurationOptionVertical?: string | undefined;
95
+ chartConfigurationOptionBoth?: string | undefined;
96
+ chartConfigurationOptionStart?: string | undefined;
97
+ chartConfigurationOptionMiddle?: string | undefined;
98
+ chartConfigurationOptionEnd?: string | undefined;
99
+ chartConfigurationOptionExtremities?: string | undefined;
100
+ chartConfigurationOptionTick?: string | undefined;
101
+ chartConfigurationOptionMonotoneX?: string | undefined;
102
+ chartConfigurationOptionMonotoneY?: string | undefined;
103
+ chartConfigurationOptionCatmullRom?: string | undefined;
104
+ chartConfigurationOptionLinear?: string | undefined;
105
+ chartConfigurationOptionNatural?: string | undefined;
106
+ chartConfigurationOptionStep?: string | undefined;
107
+ chartConfigurationOptionStepBefore?: string | undefined;
108
+ chartConfigurationOptionStepAfter?: string | undefined;
109
+ chartConfigurationOptionBumpX?: string | undefined;
110
+ chartConfigurationOptionBumpY?: string | undefined;
111
+ };
112
+ };
113
+ };
114
+ };
115
+ };
@@ -0,0 +1,113 @@
1
+ import { imageMimeTypes } from "./utils/imageMimeTypes.js";
2
+ import { getChartsLocalization } from "./utils/getChartsLocalization.js";
3
+ export const nbNOLocaleText = {
4
+ // Overlay
5
+ loading: 'Laster data…',
6
+ noData: 'Ingen data å vise',
7
+ // Toolbar
8
+ zoomIn: 'Zoom inn',
9
+ zoomOut: 'Zoom ut',
10
+ toolbarExport: 'Eksporter',
11
+ // Toolbar Export Menu
12
+ toolbarExportPrint: 'Skriv ut',
13
+ toolbarExportImage: mimeType => `Eksporter som ${imageMimeTypes[mimeType] ?? mimeType}`,
14
+ // Charts renderer configuration
15
+ chartTypeBar: 'Stolpe',
16
+ chartTypeColumn: 'Kolonne',
17
+ chartTypeLine: 'Linje',
18
+ chartTypeArea: 'Område',
19
+ chartTypePie: 'Kake',
20
+ chartPaletteLabel: 'Fargepalett',
21
+ chartPaletteNameRainbowSurge: 'Regnbuebølge',
22
+ chartPaletteNameBlueberryTwilight: 'Blåbærskumring',
23
+ chartPaletteNameMangoFusion: 'Mango Fusion',
24
+ chartPaletteNameCheerfulFiesta: 'Munter Fiesta',
25
+ chartPaletteNameStrawberrySky: 'Jordbærhimmel',
26
+ chartPaletteNameBlue: 'Blå',
27
+ chartPaletteNameGreen: 'Grønn',
28
+ chartPaletteNamePurple: 'Lilla',
29
+ chartPaletteNameRed: 'Rød',
30
+ chartPaletteNameOrange: 'Oransje',
31
+ chartPaletteNameYellow: 'Gul',
32
+ chartPaletteNameCyan: 'Cyan',
33
+ chartPaletteNamePink: 'Rosa',
34
+ chartConfigurationSectionChart: 'Diagram',
35
+ chartConfigurationSectionColumns: 'Kolonner',
36
+ chartConfigurationSectionBars: 'Stolper',
37
+ chartConfigurationSectionAxes: 'Akser',
38
+ chartConfigurationGrid: 'Rutenett',
39
+ chartConfigurationBorderRadius: 'Kantradius',
40
+ chartConfigurationCategoryGapRatio: 'Kategorigapforhold',
41
+ chartConfigurationBarGapRatio: 'Seriegapforhold',
42
+ chartConfigurationStacked: 'Stablet',
43
+ chartConfigurationShowToolbar: 'Vis verktøylinje',
44
+ chartConfigurationSkipAnimation: 'Hopp over animasjon',
45
+ chartConfigurationInnerRadius: 'Indre radius',
46
+ chartConfigurationOuterRadius: 'Ytre radius',
47
+ chartConfigurationColors: 'Farger',
48
+ chartConfigurationHideLegend: 'Skjul forklaring',
49
+ chartConfigurationShowMark: 'Vis merke',
50
+ chartConfigurationHeight: 'Høyde',
51
+ chartConfigurationWidth: 'Bredde',
52
+ chartConfigurationSeriesGap: 'Serie gap',
53
+ chartConfigurationTickPlacement: 'Hakeplassering',
54
+ chartConfigurationTickLabelPlacement: 'Hakeetikett plassering',
55
+ chartConfigurationCategoriesAxisLabel: 'Kategori akseetikett',
56
+ chartConfigurationSeriesAxisLabel: 'Serie akseetikett',
57
+ chartConfigurationXAxisPosition: 'X-akse posisjon',
58
+ chartConfigurationYAxisPosition: 'Y-akse posisjon',
59
+ chartConfigurationSeriesAxisReverse: 'Snu serieakse',
60
+ chartConfigurationTooltipPlacement: 'Plassering',
61
+ chartConfigurationTooltipTrigger: 'Utløser',
62
+ chartConfigurationLegendPosition: 'Posisjon',
63
+ chartConfigurationLegendDirection: 'Retning',
64
+ chartConfigurationBarLabels: 'Stolpeetiketter',
65
+ chartConfigurationColumnLabels: 'Kolonneetiketter',
66
+ chartConfigurationInterpolation: 'Interpolasjon',
67
+ chartConfigurationSectionTooltip: 'Informasjonsboks',
68
+ chartConfigurationSectionLegend: 'Diagramforklaring',
69
+ chartConfigurationSectionLines: 'Linjer',
70
+ chartConfigurationSectionAreas: 'Områder',
71
+ chartConfigurationSectionArcs: 'Buer',
72
+ chartConfigurationPaddingAngle: 'Polstringsvinkel',
73
+ chartConfigurationCornerRadius: 'Hjørneradius',
74
+ chartConfigurationArcLabels: 'Bueetiketter',
75
+ chartConfigurationStartAngle: 'Startvinkel',
76
+ chartConfigurationEndAngle: 'Sluttvinkel',
77
+ chartConfigurationPieTooltipTrigger: 'Utløser',
78
+ chartConfigurationPieLegendPosition: 'Posisjon',
79
+ chartConfigurationPieLegendDirection: 'Retning',
80
+ // Common option labels
81
+ chartConfigurationOptionNone: 'Ingen',
82
+ chartConfigurationOptionValue: 'Verdi',
83
+ chartConfigurationOptionAuto: 'Automatisk',
84
+ chartConfigurationOptionTop: 'Topp',
85
+ chartConfigurationOptionTopLeft: 'Topp Venstre',
86
+ chartConfigurationOptionTopRight: 'Topp Høyre',
87
+ chartConfigurationOptionBottom: 'Bunn',
88
+ chartConfigurationOptionBottomLeft: 'Bunn Venstre',
89
+ chartConfigurationOptionBottomRight: 'Bunn Høyre',
90
+ chartConfigurationOptionLeft: 'Venstre',
91
+ chartConfigurationOptionRight: 'Høyre',
92
+ chartConfigurationOptionAxis: 'Akse',
93
+ chartConfigurationOptionItem: 'Artikkel',
94
+ chartConfigurationOptionHorizontal: 'Horisontal',
95
+ chartConfigurationOptionVertical: 'Vertikal',
96
+ chartConfigurationOptionBoth: 'Begge',
97
+ chartConfigurationOptionStart: 'Start',
98
+ chartConfigurationOptionMiddle: 'Midten',
99
+ chartConfigurationOptionEnd: 'Slutt',
100
+ chartConfigurationOptionExtremities: 'Ekstremiteter',
101
+ chartConfigurationOptionTick: 'Hake',
102
+ chartConfigurationOptionMonotoneX: 'Monoton X',
103
+ chartConfigurationOptionMonotoneY: 'Monoton Y',
104
+ chartConfigurationOptionCatmullRom: 'Catmull-Rom',
105
+ chartConfigurationOptionLinear: 'Lineær',
106
+ chartConfigurationOptionNatural: 'Naturlig',
107
+ chartConfigurationOptionStep: 'Steg',
108
+ chartConfigurationOptionStepBefore: 'Steg Før',
109
+ chartConfigurationOptionStepAfter: 'Steg Etter',
110
+ chartConfigurationOptionBumpX: 'Dunke X',
111
+ chartConfigurationOptionBumpY: 'Dunke Y'
112
+ };
113
+ export const nbNO = getChartsLocalization(nbNOLocaleText);
@@ -1,6 +1,7 @@
1
1
  import { DefaultizedProps } from '@mui/x-internals/types';
2
2
  import type { StackOffsetType } from "../stacking.js";
3
3
  import { CartesianSeriesType, CommonSeriesType, CommonDefaultizedProps, StackableSeriesType, SeriesId } from "./common.js";
4
+ import { BarItem, BarLabelContext } from "../../BarChart/index.js";
4
5
  export interface BarSeriesType extends CommonSeriesType<number | null>, CartesianSeriesType, StackableSeriesType {
5
6
  type: 'bar';
6
7
  /**
@@ -35,6 +36,21 @@ export interface BarSeriesType extends CommonSeriesType<number | null>, Cartesia
35
36
  * @default 0px
36
37
  */
37
38
  minBarSize?: number;
39
+ /**
40
+ * If provided, the function will be used to format the label of the bar.
41
+ * It can be set to 'value' to display the current value.
42
+ * @param {BarItem} item The item to format.
43
+ * @param {BarLabelContext} context data about the bar.
44
+ * @returns {string} The formatted label.
45
+ */
46
+ barLabel?: 'value' | ((item: BarItem, context: BarLabelContext) => string | null | undefined);
47
+ /**
48
+ * The placement of the bar label. It accepts the following values:
49
+ * - 'center': the label is centered on the bar
50
+ * - 'outside': the label is placed after the end of the bar, from the point of the view of the origin. For a vertical positive bar, the label is above its top edge; for a horizontal negative bar, the label is placed to the left of its leftmost limit.
51
+ * @default 'center'
52
+ */
53
+ barLabelPlacement?: 'center' | 'outside';
38
54
  }
39
55
  /**
40
56
  * An object that allows to identify a single bar.
@@ -10,15 +10,31 @@ export type SeriesValueFormatterContext = {
10
10
  dataIndex: number;
11
11
  };
12
12
  export type SeriesValueFormatter<TValue> = (value: TValue, context: SeriesValueFormatterContext) => string | null;
13
- export type CommonSeriesType<TValue> = {
14
- /**
15
- * The id of this series.
16
- */
17
- id?: SeriesId;
13
+ export type ColorCallbackValue<TValue> = {
14
+ value: TValue;
15
+ dataIndex: number;
16
+ };
17
+ export interface SeriesColor<TValue> {
18
18
  /**
19
19
  * Color to use when displaying the series.
20
+ * If `colorGetter` is provided, it will be used to get the color for each data point instead.
21
+ * Otherwise, this color will be used for all data points in the series.
20
22
  */
21
23
  color?: string;
24
+ /**
25
+ * A function that returns a color based on the value and/or the data index of a point.
26
+ * The returned color is used when displaying the specific data point, e.g., a marker in a line chart.
27
+ * When the color of the entire series is required, e.g., in legends, the `color` property is used instead.
28
+ * @param {ColorCallbackValue<TValue>} data An object containing data point's `dataIndex` and `value`.
29
+ * @returns {string} The color to use for the specific data point.
30
+ */
31
+ colorGetter?: (data: ColorCallbackValue<TValue>) => string;
32
+ }
33
+ export interface CommonSeriesType<TValue> extends SeriesColor<TValue> {
34
+ /**
35
+ * The id of this series.
36
+ */
37
+ id?: SeriesId;
22
38
  /**
23
39
  * Formatter used to render values in tooltip or other data display.
24
40
  * @param {TValue} value The series' value to render.
@@ -36,7 +52,7 @@ export type CommonSeriesType<TValue> = {
36
52
  * There is a default mark type for each series type.
37
53
  */
38
54
  labelMarkType?: ChartsLabelMarkType;
39
- };
55
+ }
40
56
  export type CommonDefaultizedProps = 'id' | 'valueFormatter' | 'data';
41
57
  export type CartesianSeriesType = {
42
58
  /**
@@ -1,17 +1,16 @@
1
- import { DefaultizedProps, MakeOptional } from '@mui/x-internals/types';
1
+ import { DefaultizedProps, MakeOptional, MakeRequired } from '@mui/x-internals/types';
2
2
  import { ScatterSeriesType, DefaultizedScatterSeriesType, ScatterItemIdentifier, ScatterValueType } from "./scatter.js";
3
3
  import { LineSeriesType, DefaultizedLineSeriesType, LineItemIdentifier } from "./line.js";
4
4
  import { BarItemIdentifier, BarSeriesType, DefaultizedBarSeriesType } from "./bar.js";
5
5
  import { PieSeriesType, DefaultizedPieSeriesType, PieItemIdentifier, PieValueType, DefaultizedPieValueType } from "./pie.js";
6
6
  import { DefaultizedRadarSeriesType, RadarItemIdentifier, RadarSeriesType } from "./radar.js";
7
+ import { SeriesColor } from "./common.js";
7
8
  export interface ChartsSeriesConfig {
8
9
  bar: {
9
10
  /**
10
11
  * Series type when passed to the formatter (some ids are given default values to simplify the DX)
11
12
  */
12
- seriesInput: DefaultizedProps<BarSeriesType, 'id'> & {
13
- color: string;
14
- };
13
+ seriesInput: DefaultizedProps<BarSeriesType, 'id'> & MakeRequired<SeriesColor<number | null>, 'color'>;
15
14
  /**
16
15
  * Series type when stored in the context (with all the preprocessing added))
17
16
  */
@@ -27,9 +26,7 @@ export interface ChartsSeriesConfig {
27
26
  axisType: 'cartesian';
28
27
  };
29
28
  line: {
30
- seriesInput: DefaultizedProps<LineSeriesType, 'id'> & {
31
- color: string;
32
- };
29
+ seriesInput: DefaultizedProps<LineSeriesType, 'id'> & MakeRequired<SeriesColor<number | null>, 'color'>;
33
30
  series: DefaultizedLineSeriesType;
34
31
  seriesProp: LineSeriesType;
35
32
  itemIdentifier: LineItemIdentifier;
@@ -39,9 +36,7 @@ export interface ChartsSeriesConfig {
39
36
  axisType: 'cartesian';
40
37
  };
41
38
  scatter: {
42
- seriesInput: DefaultizedProps<ScatterSeriesType, 'id'> & {
43
- color: string;
44
- };
39
+ seriesInput: DefaultizedProps<ScatterSeriesType, 'id'> & MakeRequired<SeriesColor<ScatterValueType | null>, 'color'>;
45
40
  series: DefaultizedScatterSeriesType;
46
41
  seriesProp: ScatterSeriesType;
47
42
  valueType: ScatterValueType;
@@ -51,9 +46,7 @@ export interface ChartsSeriesConfig {
51
46
  };
52
47
  pie: {
53
48
  seriesInput: Omit<DefaultizedProps<PieSeriesType, 'id'>, 'data'> & {
54
- data: (MakeOptional<PieValueType, 'id'> & {
55
- color: string;
56
- })[];
49
+ data: Array<MakeOptional<PieValueType, 'id'> & MakeRequired<SeriesColor<PieValueType | null>, 'color'>>;
57
50
  };
58
51
  series: DefaultizedPieSeriesType;
59
52
  seriesProp: PieSeriesType<MakeOptional<PieValueType, 'id'>>;
@@ -62,9 +55,7 @@ export interface ChartsSeriesConfig {
62
55
  valueType: DefaultizedPieValueType;
63
56
  };
64
57
  radar: {
65
- seriesInput: DefaultizedProps<RadarSeriesType, 'id'> & {
66
- color: string;
67
- };
58
+ seriesInput: DefaultizedProps<RadarSeriesType, 'id'> & MakeRequired<SeriesColor<number>, 'color'>;
68
59
  series: DefaultizedRadarSeriesType;
69
60
  seriesProp: RadarSeriesType;
70
61
  itemIdentifier: RadarItemIdentifier;
@@ -1,6 +1,6 @@
1
1
  import * as React from 'react';
2
2
  import type { BarLabelProps } from "../../BarChart/index.js";
3
- type UseAnimateBarLabelParams = Pick<BarLabelProps, 'xOrigin' | 'yOrigin' | 'x' | 'y' | 'width' | 'height' | 'layout' | 'skipAnimation'> & {
3
+ type UseAnimateBarLabelParams = Pick<BarLabelProps, 'xOrigin' | 'yOrigin' | 'x' | 'y' | 'width' | 'height' | 'layout' | 'skipAnimation' | 'placement'> & {
4
4
  ref?: React.Ref<SVGTextElement>;
5
5
  };
6
6
  type UseAnimateBarLabelReturn = {