@mui/x-charts 8.16.0 → 8.17.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 (469) 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 +1 -1
  7. package/BarChart/BarLabel/BarLabelItem.d.ts +1 -1
  8. package/BarChart/BarLabel/BarLabelPlot.d.ts +2 -3
  9. package/BarChart/BarLabel/BarLabelPlot.js +41 -36
  10. package/BarChart/BarPlot.d.ts +13 -3
  11. package/BarChart/BarPlot.js +3 -3
  12. package/BarChart/seriesConfig/{extremums.d.ts → bar/extremums.d.ts} +1 -1
  13. package/BarChart/seriesConfig/{extremums.js → bar/extremums.js} +1 -1
  14. package/BarChart/seriesConfig/bar/getColor.d.ts +3 -0
  15. package/BarChart/seriesConfig/{getColor.js → bar/getColor.js} +28 -5
  16. package/BarChart/seriesConfig/bar/getSeriesWithDefaultValues.d.ts +3 -0
  17. package/BarChart/seriesConfig/bar/legend.d.ts +3 -0
  18. package/BarChart/seriesConfig/{legend.js → bar/legend.js} +1 -1
  19. package/BarChart/seriesConfig/bar/seriesProcessor.d.ts +3 -0
  20. package/BarChart/seriesConfig/{seriesProcessor.js → bar/seriesProcessor.js} +1 -1
  21. package/BarChart/seriesConfig/bar/tooltip.d.ts +4 -0
  22. package/BarChart/seriesConfig/{tooltip.js → bar/tooltip.js} +1 -1
  23. package/BarChart/seriesConfig/bar/tooltipPosition.d.ts +3 -0
  24. package/BarChart/seriesConfig/{tooltipPosition.js → bar/tooltipPosition.js} +1 -1
  25. package/BarChart/seriesConfig/index.d.ts +1 -1
  26. package/BarChart/seriesConfig/index.js +9 -9
  27. package/BarChart/types.d.ts +1 -0
  28. package/BarChart/useBarPlotData.js +2 -1
  29. package/CHANGELOG.md +108 -1
  30. package/ChartDataProvider/ChartDataProvider.d.ts +1 -1
  31. package/ChartsAxis/ChartsAxis.d.ts +1 -2
  32. package/ChartsAxisHighlight/ChartsAxisHighlight.d.ts +1 -2
  33. package/ChartsAxisHighlight/ChartsXAxisHighlight.d.ts +1 -2
  34. package/ChartsAxisHighlight/ChartsYAxisHighlight.d.ts +1 -2
  35. package/ChartsBrushOverlay/ChartsBrushOverlay.d.ts +1 -2
  36. package/ChartsClipPath/ChartsClipPath.d.ts +1 -2
  37. package/ChartsClipPath/ChartsClipPath.js +0 -2
  38. package/ChartsGrid/ChartsGrid.d.ts +1 -2
  39. package/ChartsGrid/ChartsGrid.js +0 -2
  40. package/ChartsGrid/ChartsHorizontalGrid.d.ts +1 -2
  41. package/ChartsGrid/ChartsVerticalGrid.d.ts +1 -2
  42. package/ChartsLegend/continuousColorLegendClasses.d.ts +1 -1
  43. package/ChartsLocalizationProvider/ChartsLocalizationProvider.d.ts +1 -1
  44. package/ChartsOverlay/ChartsLoadingOverlay.d.ts +1 -2
  45. package/ChartsOverlay/ChartsLoadingOverlay.js +0 -2
  46. package/ChartsOverlay/ChartsNoDataOverlay.d.ts +1 -2
  47. package/ChartsOverlay/ChartsNoDataOverlay.js +0 -2
  48. package/ChartsOverlay/ChartsOverlay.d.ts +1 -1
  49. package/ChartsReferenceLine/ChartsReferenceLine.d.ts +1 -2
  50. package/ChartsReferenceLine/ChartsReferenceLine.js +0 -2
  51. package/ChartsReferenceLine/ChartsXReferenceLine.d.ts +1 -2
  52. package/ChartsReferenceLine/ChartsXReferenceLine.js +0 -2
  53. package/ChartsReferenceLine/ChartsYReferenceLine.d.ts +1 -2
  54. package/ChartsReferenceLine/ChartsYReferenceLine.js +0 -2
  55. package/ChartsSurface/ChartsSurface.js +8 -9
  56. package/ChartsSurface/chartsSurfaceClasses.d.ts +6 -0
  57. package/ChartsSurface/chartsSurfaceClasses.js +21 -0
  58. package/ChartsSurface/index.d.ts +2 -1
  59. package/ChartsSurface/index.js +12 -1
  60. package/ChartsText/ChartsText.d.ts +1 -1
  61. package/ChartsTooltip/ChartsAxisTooltipContent.d.ts +1 -2
  62. package/ChartsTooltip/ChartsAxisTooltipContent.js +0 -2
  63. package/ChartsTooltip/ChartsItemTooltipContent.d.ts +1 -2
  64. package/ChartsTooltip/ChartsItemTooltipContent.js +0 -2
  65. package/ChartsTooltip/ChartsTooltip.d.ts +1 -2
  66. package/ChartsTooltip/ChartsTooltip.js +0 -2
  67. package/ChartsTooltip/ChartsTooltipContainer.d.ts +1 -1
  68. package/ChartsTooltip/ChartsTooltipContainer.js +13 -14
  69. package/ChartsTooltip/ChartsTooltipTable.d.ts +1 -1
  70. package/ChartsWrapper/ChartsWrapper.d.ts +1 -1
  71. package/ChartsWrapper/ChartsWrapper.js +3 -5
  72. package/ChartsXAxis/ChartsGroupedXAxisTicks.d.ts +1 -2
  73. package/ChartsXAxis/ChartsSingleXAxisTicks.d.ts +1 -2
  74. package/ChartsXAxis/ChartsXAxis.d.ts +1 -2
  75. package/ChartsXAxis/ChartsXAxis.js +0 -2
  76. package/ChartsXAxis/ChartsXAxisImpl.d.ts +1 -2
  77. package/ChartsXAxis/useAxisTicksProps.d.ts +32 -32
  78. package/ChartsYAxis/ChartsGroupedYAxisTicks.d.ts +1 -2
  79. package/ChartsYAxis/ChartsSingleYAxisTicks.d.ts +1 -2
  80. package/ChartsYAxis/ChartsYAxis.d.ts +1 -2
  81. package/ChartsYAxis/ChartsYAxis.js +0 -2
  82. package/ChartsYAxis/ChartsYAxisImpl.d.ts +1 -2
  83. package/ChartsYAxis/useAxisTicksProps.d.ts +32 -32
  84. package/Gauge/GaugeProvider.d.ts +1 -1
  85. package/Gauge/GaugeReferenceArc.d.ts +1 -1
  86. package/Gauge/GaugeValueArc.d.ts +1 -1
  87. package/Gauge/GaugeValueText.d.ts +1 -2
  88. package/Gauge/GaugeValueText.js +0 -2
  89. package/LineChart/AnimatedArea.d.ts +1 -1
  90. package/LineChart/AppearingMask.d.ts +1 -1
  91. package/LineChart/AreaElement.d.ts +1 -1
  92. package/LineChart/AreaPlot.d.ts +1 -1
  93. package/LineChart/CircleMarkElement.d.ts +1 -1
  94. package/LineChart/FocusedMark.d.ts +1 -2
  95. package/LineChart/FocusedMark.js +0 -2
  96. package/LineChart/LineElement.d.ts +1 -1
  97. package/LineChart/LineHighlightElement.d.ts +1 -1
  98. package/LineChart/LineHighlightPlot.d.ts +1 -1
  99. package/LineChart/LinePlot.d.ts +1 -1
  100. package/LineChart/MarkElement.d.ts +1 -1
  101. package/LineChart/MarkPlot.d.ts +1 -1
  102. package/LineChart/seriesConfig/getColor.js +28 -5
  103. package/LineChart/seriesConfig/index.d.ts +1 -1
  104. package/LineChart/seriesConfig/index.js +2 -2
  105. package/PieChart/PieArcLabelPlot.d.ts +1 -1
  106. package/PieChart/PieArcPlot.d.ts +1 -1
  107. package/PieChart/PiePlot.d.ts +1 -2
  108. package/PieChart/PiePlot.js +0 -2
  109. package/PieChart/seriesConfig/index.d.ts +1 -1
  110. package/PieChart/seriesConfig/index.js +2 -2
  111. package/RadarChart/RadarAxis/RadarAxis.d.ts +1 -1
  112. package/RadarChart/RadarAxis/RadarAxis.utils.d.ts +2 -2
  113. package/RadarChart/RadarAxisHighlight/RadarAxisHighlight.d.ts +1 -2
  114. package/RadarChart/RadarAxisHighlight/RadarAxisHighlight.js +7 -3
  115. package/RadarChart/RadarDataProvider/RadarDataProvider.d.ts +1 -2
  116. package/RadarChart/RadarGrid/CircularRadarGrid.d.ts +1 -2
  117. package/RadarChart/RadarGrid/CircularRadarStripes.d.ts +1 -2
  118. package/RadarChart/RadarGrid/RadarGrid.d.ts +1 -2
  119. package/RadarChart/RadarGrid/SharpRadarGrid.d.ts +1 -2
  120. package/RadarChart/RadarGrid/SharpRadarStripes.d.ts +1 -2
  121. package/RadarChart/RadarMetricLabels/RadarMetricLabels.d.ts +1 -2
  122. package/RadarChart/RadarSeriesPlot/RadarSeriesArea.d.ts +1 -1
  123. package/RadarChart/RadarSeriesPlot/RadarSeriesMarks.d.ts +1 -1
  124. package/RadarChart/RadarSeriesPlot/RadarSeriesMarks.js +1 -2
  125. package/RadarChart/RadarSeriesPlot/RadarSeriesPlot.d.ts +1 -2
  126. package/RadarChart/RadarSeriesPlot/RadarSeriesPlot.js +1 -3
  127. package/RadarChart/RadarSeriesPlot/useRadarSeriesData.d.ts +3 -0
  128. package/RadarChart/RadarSeriesPlot/useRadarSeriesData.js +8 -1
  129. package/RadarChart/seriesConfig/getColor.js +12 -1
  130. package/ScatterChart/BatchScatter.d.ts +1 -2
  131. package/ScatterChart/BatchScatter.js +4 -4
  132. package/ScatterChart/Scatter.d.ts +7 -2
  133. package/ScatterChart/Scatter.js +7 -3
  134. package/ScatterChart/ScatterMarker.d.ts +1 -1
  135. package/ScatterChart/ScatterPlot.d.ts +1 -1
  136. package/ScatterChart/ScatterPlot.js +1 -1
  137. package/ScatterChart/seriesConfig/getColor.js +36 -7
  138. package/ScatterChart/seriesConfig/index.d.ts +1 -1
  139. package/ScatterChart/seriesConfig/index.js +2 -2
  140. package/context/ChartProvider/ChartProvider.d.ts +1 -1
  141. package/context/ChartProvider/ChartProvider.js +4 -4
  142. package/context/ChartProvider/ChartProvider.types.d.ts +3 -3
  143. package/context/ChartsSlotsContext.d.ts +1 -1
  144. package/esm/BarChart/AnimatedBarElement.d.ts +1 -1
  145. package/esm/BarChart/BarChart.js +1 -0
  146. package/esm/BarChart/BarClipPath.d.ts +1 -1
  147. package/esm/BarChart/BarElement.d.ts +1 -1
  148. package/esm/BarChart/BarElement.js +6 -8
  149. package/esm/BarChart/BarLabel/BarLabel.d.ts +1 -1
  150. package/esm/BarChart/BarLabel/BarLabelItem.d.ts +1 -1
  151. package/esm/BarChart/BarLabel/BarLabelPlot.d.ts +2 -3
  152. package/esm/BarChart/BarLabel/BarLabelPlot.js +41 -36
  153. package/esm/BarChart/BarPlot.d.ts +13 -3
  154. package/esm/BarChart/BarPlot.js +3 -3
  155. package/esm/BarChart/seriesConfig/{extremums.d.ts → bar/extremums.d.ts} +1 -1
  156. package/esm/BarChart/seriesConfig/{extremums.js → bar/extremums.js} +1 -1
  157. package/esm/BarChart/seriesConfig/bar/getColor.d.ts +3 -0
  158. package/esm/BarChart/seriesConfig/{getColor.js → bar/getColor.js} +28 -5
  159. package/esm/BarChart/seriesConfig/bar/getSeriesWithDefaultValues.d.ts +3 -0
  160. package/esm/BarChart/seriesConfig/bar/legend.d.ts +3 -0
  161. package/esm/BarChart/seriesConfig/{legend.js → bar/legend.js} +1 -1
  162. package/esm/BarChart/seriesConfig/bar/seriesProcessor.d.ts +3 -0
  163. package/esm/BarChart/seriesConfig/{seriesProcessor.js → bar/seriesProcessor.js} +1 -1
  164. package/esm/BarChart/seriesConfig/bar/tooltip.d.ts +4 -0
  165. package/esm/BarChart/seriesConfig/{tooltip.js → bar/tooltip.js} +1 -1
  166. package/esm/BarChart/seriesConfig/bar/tooltipPosition.d.ts +3 -0
  167. package/esm/BarChart/seriesConfig/{tooltipPosition.js → bar/tooltipPosition.js} +1 -1
  168. package/esm/BarChart/seriesConfig/index.d.ts +1 -1
  169. package/esm/BarChart/seriesConfig/index.js +8 -8
  170. package/esm/BarChart/types.d.ts +1 -0
  171. package/esm/BarChart/useBarPlotData.js +2 -1
  172. package/esm/ChartDataProvider/ChartDataProvider.d.ts +1 -1
  173. package/esm/ChartsAxis/ChartsAxis.d.ts +1 -2
  174. package/esm/ChartsAxisHighlight/ChartsAxisHighlight.d.ts +1 -2
  175. package/esm/ChartsAxisHighlight/ChartsXAxisHighlight.d.ts +1 -2
  176. package/esm/ChartsAxisHighlight/ChartsYAxisHighlight.d.ts +1 -2
  177. package/esm/ChartsBrushOverlay/ChartsBrushOverlay.d.ts +1 -2
  178. package/esm/ChartsClipPath/ChartsClipPath.d.ts +1 -2
  179. package/esm/ChartsClipPath/ChartsClipPath.js +0 -1
  180. package/esm/ChartsGrid/ChartsGrid.d.ts +1 -2
  181. package/esm/ChartsGrid/ChartsGrid.js +0 -1
  182. package/esm/ChartsGrid/ChartsHorizontalGrid.d.ts +1 -2
  183. package/esm/ChartsGrid/ChartsVerticalGrid.d.ts +1 -2
  184. package/esm/ChartsLegend/continuousColorLegendClasses.d.ts +1 -1
  185. package/esm/ChartsLocalizationProvider/ChartsLocalizationProvider.d.ts +1 -1
  186. package/esm/ChartsOverlay/ChartsLoadingOverlay.d.ts +1 -2
  187. package/esm/ChartsOverlay/ChartsLoadingOverlay.js +0 -1
  188. package/esm/ChartsOverlay/ChartsNoDataOverlay.d.ts +1 -2
  189. package/esm/ChartsOverlay/ChartsNoDataOverlay.js +0 -1
  190. package/esm/ChartsOverlay/ChartsOverlay.d.ts +1 -1
  191. package/esm/ChartsReferenceLine/ChartsReferenceLine.d.ts +1 -2
  192. package/esm/ChartsReferenceLine/ChartsReferenceLine.js +0 -1
  193. package/esm/ChartsReferenceLine/ChartsXReferenceLine.d.ts +1 -2
  194. package/esm/ChartsReferenceLine/ChartsXReferenceLine.js +0 -1
  195. package/esm/ChartsReferenceLine/ChartsYReferenceLine.d.ts +1 -2
  196. package/esm/ChartsReferenceLine/ChartsYReferenceLine.js +0 -1
  197. package/esm/ChartsSurface/ChartsSurface.js +9 -10
  198. package/esm/ChartsSurface/chartsSurfaceClasses.d.ts +6 -0
  199. package/esm/ChartsSurface/chartsSurfaceClasses.js +13 -0
  200. package/esm/ChartsSurface/index.d.ts +2 -1
  201. package/esm/ChartsSurface/index.js +2 -1
  202. package/esm/ChartsText/ChartsText.d.ts +1 -1
  203. package/esm/ChartsTooltip/ChartsAxisTooltipContent.d.ts +1 -2
  204. package/esm/ChartsTooltip/ChartsAxisTooltipContent.js +0 -1
  205. package/esm/ChartsTooltip/ChartsItemTooltipContent.d.ts +1 -2
  206. package/esm/ChartsTooltip/ChartsItemTooltipContent.js +0 -1
  207. package/esm/ChartsTooltip/ChartsTooltip.d.ts +1 -2
  208. package/esm/ChartsTooltip/ChartsTooltip.js +0 -1
  209. package/esm/ChartsTooltip/ChartsTooltipContainer.d.ts +1 -1
  210. package/esm/ChartsTooltip/ChartsTooltipContainer.js +13 -14
  211. package/esm/ChartsTooltip/ChartsTooltipTable.d.ts +1 -1
  212. package/esm/ChartsWrapper/ChartsWrapper.d.ts +1 -1
  213. package/esm/ChartsWrapper/ChartsWrapper.js +4 -6
  214. package/esm/ChartsXAxis/ChartsGroupedXAxisTicks.d.ts +1 -2
  215. package/esm/ChartsXAxis/ChartsSingleXAxisTicks.d.ts +1 -2
  216. package/esm/ChartsXAxis/ChartsXAxis.d.ts +1 -2
  217. package/esm/ChartsXAxis/ChartsXAxis.js +0 -1
  218. package/esm/ChartsXAxis/ChartsXAxisImpl.d.ts +1 -2
  219. package/esm/ChartsXAxis/useAxisTicksProps.d.ts +32 -32
  220. package/esm/ChartsYAxis/ChartsGroupedYAxisTicks.d.ts +1 -2
  221. package/esm/ChartsYAxis/ChartsSingleYAxisTicks.d.ts +1 -2
  222. package/esm/ChartsYAxis/ChartsYAxis.d.ts +1 -2
  223. package/esm/ChartsYAxis/ChartsYAxis.js +0 -1
  224. package/esm/ChartsYAxis/ChartsYAxisImpl.d.ts +1 -2
  225. package/esm/ChartsYAxis/useAxisTicksProps.d.ts +32 -32
  226. package/esm/Gauge/GaugeProvider.d.ts +1 -1
  227. package/esm/Gauge/GaugeReferenceArc.d.ts +1 -1
  228. package/esm/Gauge/GaugeValueArc.d.ts +1 -1
  229. package/esm/Gauge/GaugeValueText.d.ts +1 -2
  230. package/esm/Gauge/GaugeValueText.js +0 -1
  231. package/esm/LineChart/AnimatedArea.d.ts +1 -1
  232. package/esm/LineChart/AppearingMask.d.ts +1 -1
  233. package/esm/LineChart/AreaElement.d.ts +1 -1
  234. package/esm/LineChart/AreaPlot.d.ts +1 -1
  235. package/esm/LineChart/CircleMarkElement.d.ts +1 -1
  236. package/esm/LineChart/FocusedMark.d.ts +1 -2
  237. package/esm/LineChart/FocusedMark.js +0 -1
  238. package/esm/LineChart/LineElement.d.ts +1 -1
  239. package/esm/LineChart/LineHighlightElement.d.ts +1 -1
  240. package/esm/LineChart/LineHighlightPlot.d.ts +1 -1
  241. package/esm/LineChart/LinePlot.d.ts +1 -1
  242. package/esm/LineChart/MarkElement.d.ts +1 -1
  243. package/esm/LineChart/MarkPlot.d.ts +1 -1
  244. package/esm/LineChart/seriesConfig/getColor.js +28 -5
  245. package/esm/LineChart/seriesConfig/index.d.ts +1 -1
  246. package/esm/LineChart/seriesConfig/index.js +1 -1
  247. package/esm/PieChart/PieArcLabelPlot.d.ts +1 -1
  248. package/esm/PieChart/PieArcPlot.d.ts +1 -1
  249. package/esm/PieChart/PiePlot.d.ts +1 -2
  250. package/esm/PieChart/PiePlot.js +0 -1
  251. package/esm/PieChart/seriesConfig/index.d.ts +1 -1
  252. package/esm/PieChart/seriesConfig/index.js +1 -1
  253. package/esm/RadarChart/RadarAxis/RadarAxis.d.ts +1 -1
  254. package/esm/RadarChart/RadarAxis/RadarAxis.utils.d.ts +2 -2
  255. package/esm/RadarChart/RadarAxisHighlight/RadarAxisHighlight.d.ts +1 -2
  256. package/esm/RadarChart/RadarAxisHighlight/RadarAxisHighlight.js +7 -2
  257. package/esm/RadarChart/RadarDataProvider/RadarDataProvider.d.ts +1 -2
  258. package/esm/RadarChart/RadarGrid/CircularRadarGrid.d.ts +1 -2
  259. package/esm/RadarChart/RadarGrid/CircularRadarStripes.d.ts +1 -2
  260. package/esm/RadarChart/RadarGrid/RadarGrid.d.ts +1 -2
  261. package/esm/RadarChart/RadarGrid/SharpRadarGrid.d.ts +1 -2
  262. package/esm/RadarChart/RadarGrid/SharpRadarStripes.d.ts +1 -2
  263. package/esm/RadarChart/RadarMetricLabels/RadarMetricLabels.d.ts +1 -2
  264. package/esm/RadarChart/RadarSeriesPlot/RadarSeriesArea.d.ts +1 -1
  265. package/esm/RadarChart/RadarSeriesPlot/RadarSeriesMarks.d.ts +1 -1
  266. package/esm/RadarChart/RadarSeriesPlot/RadarSeriesMarks.js +1 -2
  267. package/esm/RadarChart/RadarSeriesPlot/RadarSeriesPlot.d.ts +1 -2
  268. package/esm/RadarChart/RadarSeriesPlot/RadarSeriesPlot.js +1 -2
  269. package/esm/RadarChart/RadarSeriesPlot/useRadarSeriesData.d.ts +3 -0
  270. package/esm/RadarChart/RadarSeriesPlot/useRadarSeriesData.js +8 -1
  271. package/esm/RadarChart/seriesConfig/getColor.js +12 -1
  272. package/esm/ScatterChart/BatchScatter.d.ts +1 -2
  273. package/esm/ScatterChart/BatchScatter.js +4 -4
  274. package/esm/ScatterChart/Scatter.d.ts +7 -2
  275. package/esm/ScatterChart/Scatter.js +7 -3
  276. package/esm/ScatterChart/ScatterMarker.d.ts +1 -1
  277. package/esm/ScatterChart/ScatterPlot.d.ts +1 -1
  278. package/esm/ScatterChart/ScatterPlot.js +1 -1
  279. package/esm/ScatterChart/seriesConfig/getColor.js +36 -7
  280. package/esm/ScatterChart/seriesConfig/index.d.ts +1 -1
  281. package/esm/ScatterChart/seriesConfig/index.js +1 -1
  282. package/esm/context/ChartProvider/ChartProvider.d.ts +1 -1
  283. package/esm/context/ChartProvider/ChartProvider.js +4 -4
  284. package/esm/context/ChartProvider/ChartProvider.types.d.ts +3 -3
  285. package/esm/context/ChartsSlotsContext.d.ts +1 -1
  286. package/esm/hooks/index.d.ts +1 -0
  287. package/esm/hooks/index.js +1 -0
  288. package/esm/hooks/useDataset.d.ts +6 -0
  289. package/esm/hooks/useDataset.js +13 -0
  290. package/esm/hooks/useInteractionItemProps.js +2 -5
  291. package/esm/hooks/useIsItemFocused.js +5 -3
  292. package/esm/hooks/useItemHighlighted.js +2 -2
  293. package/esm/hooks/useItemHighlightedGetter.js +0 -1
  294. package/esm/index.js +1 -1
  295. package/esm/internals/colorScale.d.ts +1 -1
  296. package/esm/internals/components/ChartsAxesGradients/ChartsAxesGradients.d.ts +1 -2
  297. package/esm/internals/components/ChartsAxesGradients/ChartsContinuousGradient.d.ts +1 -2
  298. package/esm/internals/components/ChartsAxesGradients/ChartsContinuousGradient.js +0 -1
  299. package/esm/internals/components/ChartsAxesGradients/ChartsContinuousGradientObjectBound.d.ts +1 -2
  300. package/esm/internals/components/ChartsAxesGradients/ChartsContinuousGradientObjectBound.js +0 -1
  301. package/esm/internals/components/ChartsAxesGradients/ChartsPiecewiseGradient.d.ts +1 -2
  302. package/esm/internals/createSeriesSelectorOfType.js +5 -3
  303. package/esm/internals/getSeriesColorFn.d.ts +5 -0
  304. package/esm/internals/getSeriesColorFn.js +3 -0
  305. package/esm/internals/index.d.ts +1 -1
  306. package/esm/internals/index.js +1 -1
  307. package/esm/internals/plugins/corePlugins/useChartAnimation/useChartAnimation.js +7 -15
  308. package/esm/internals/plugins/corePlugins/useChartAnimation/useChartAnimation.selectors.d.ts +2 -4
  309. package/esm/internals/plugins/corePlugins/useChartDimensions/useChartDimensions.js +28 -36
  310. package/esm/internals/plugins/corePlugins/useChartDimensions/useChartDimensions.selectors.d.ts +11 -17
  311. package/esm/internals/plugins/corePlugins/useChartDimensions/useChartDimensions.selectors.js +27 -21
  312. package/esm/internals/plugins/corePlugins/useChartExperimentalFeature/useChartExperimentalFeature.js +1 -6
  313. package/esm/internals/plugins/corePlugins/useChartExperimentalFeature/useChartExperimentalFeature.selectors.d.ts +2 -4
  314. package/esm/internals/plugins/corePlugins/useChartId/useChartId.js +6 -10
  315. package/esm/internals/plugins/corePlugins/useChartId/useChartId.selectors.d.ts +2 -4
  316. package/esm/internals/plugins/corePlugins/useChartInteractionListener/useChartInteractionListener.js +1 -3
  317. package/esm/internals/plugins/corePlugins/useChartSeries/useChartSeries.js +10 -10
  318. package/esm/internals/plugins/corePlugins/useChartSeries/useChartSeries.selectors.d.ts +11 -7
  319. package/esm/internals/plugins/corePlugins/useChartSeries/useChartSeries.selectors.js +8 -1
  320. package/esm/internals/plugins/corePlugins/useChartSeries/useChartSeries.types.d.ts +1 -0
  321. package/esm/internals/plugins/featurePlugins/useChartBrush/useChartBrush.js +19 -35
  322. package/esm/internals/plugins/featurePlugins/useChartBrush/useChartBrush.selectors.d.ts +29 -57
  323. package/esm/internals/plugins/featurePlugins/useChartBrush/useChartBrush.selectors.js +2 -2
  324. package/esm/internals/plugins/featurePlugins/useChartCartesianAxis/useChartAxisSize.selectors.d.ts +15 -15
  325. package/esm/internals/plugins/featurePlugins/useChartCartesianAxis/useChartAxisSize.selectors.js +21 -5
  326. package/esm/internals/plugins/featurePlugins/useChartCartesianAxis/useChartCartesianAxis.js +11 -17
  327. package/esm/internals/plugins/featurePlugins/useChartCartesianAxis/useChartCartesianAxisPreview.selectors.d.ts +12 -4
  328. package/esm/internals/plugins/featurePlugins/useChartCartesianAxis/useChartCartesianAxisPreview.selectors.js +15 -9
  329. package/esm/internals/plugins/featurePlugins/useChartCartesianAxis/useChartCartesianAxisRendering.selectors.d.ts +62 -86
  330. package/esm/internals/plugins/featurePlugins/useChartCartesianAxis/useChartCartesianAxisRendering.selectors.js +69 -45
  331. package/esm/internals/plugins/featurePlugins/useChartCartesianAxis/useChartCartesianHighlight.selectors.d.ts +14 -26
  332. package/esm/internals/plugins/featurePlugins/useChartCartesianAxis/useChartCartesianHighlight.selectors.js +3 -2
  333. package/esm/internals/plugins/featurePlugins/useChartCartesianAxis/useChartCartesianInteraction.selectors.d.ts +17 -33
  334. package/esm/internals/plugins/featurePlugins/useChartCartesianAxis/useChartCartesianInteraction.selectors.js +23 -22
  335. package/esm/internals/plugins/featurePlugins/useChartClosestPoint/useChartClosestPoint.js +9 -15
  336. package/esm/internals/plugins/featurePlugins/useChartClosestPoint/useChartClosestPoint.selectors.d.ts +2 -4
  337. package/esm/internals/plugins/featurePlugins/useChartHighlight/useChartHighlight.js +12 -16
  338. package/esm/internals/plugins/featurePlugins/useChartHighlight/useChartHighlight.selectors.d.ts +23 -21
  339. package/esm/internals/plugins/featurePlugins/useChartHighlight/useChartHighlight.selectors.js +8 -7
  340. package/esm/internals/plugins/featurePlugins/useChartInteraction/useChartInteraction.js +29 -43
  341. package/esm/internals/plugins/featurePlugins/useChartInteraction/useChartInteraction.selectors.d.ts +14 -28
  342. package/esm/internals/plugins/featurePlugins/useChartInteraction/useChartTooltip.selectors.d.ts +7 -9
  343. package/esm/internals/plugins/featurePlugins/useChartKeyboardNavigation/useChartKeyboardNavigation.js +47 -53
  344. package/esm/internals/plugins/featurePlugins/useChartKeyboardNavigation/useChartKeyboardNavigation.selectors.d.ts +22 -36
  345. package/esm/internals/plugins/featurePlugins/useChartKeyboardNavigation/useChartKeyboardNavigation.selectors.js +3 -0
  346. package/esm/internals/plugins/featurePlugins/useChartPolarAxis/useChartPolarAxis.js +3 -5
  347. package/esm/internals/plugins/featurePlugins/useChartPolarAxis/useChartPolarAxis.selectors.d.ts +11 -21
  348. package/esm/internals/plugins/featurePlugins/useChartPolarAxis/useChartPolarInteraction.selectors.d.ts +14 -26
  349. package/esm/internals/plugins/featurePlugins/useChartPolarAxis/useChartPolarInteraction.selectors.js +11 -10
  350. package/esm/internals/plugins/featurePlugins/useChartZAxis/useChartZAxis.js +1 -3
  351. package/esm/internals/plugins/featurePlugins/useChartZAxis/useChartZAxis.selectors.d.ts +3 -5
  352. package/esm/internals/plugins/models/plugin.d.ts +3 -2
  353. package/esm/internals/plugins/utils/selectors.d.ts +13 -17
  354. package/esm/internals/plugins/utils/selectors.js +3 -35
  355. package/esm/internals/plugins/utils/useLazySelectorEffect.d.ts +2 -2
  356. package/esm/internals/plugins/utils/useLazySelectorEffect.js +2 -2
  357. package/esm/internals/store/useCharts.d.ts +3 -4
  358. package/esm/internals/store/useCharts.js +2 -2
  359. package/esm/internals/store/useSelector.d.ts +2 -4
  360. package/esm/internals/store/useSelector.js +2 -8
  361. package/esm/internals/store/useStore.d.ts +3 -5
  362. package/esm/locales/index.d.ts +2 -1
  363. package/esm/locales/index.js +1 -0
  364. package/esm/locales/nbNO.d.ts +115 -0
  365. package/esm/locales/nbNO.js +113 -0
  366. package/esm/models/seriesType/bar.d.ts +9 -0
  367. package/esm/models/seriesType/common.d.ts +22 -6
  368. package/esm/models/seriesType/config.d.ts +7 -16
  369. package/hooks/index.d.ts +1 -0
  370. package/hooks/index.js +12 -0
  371. package/hooks/useDataset.d.ts +6 -0
  372. package/hooks/useDataset.js +18 -0
  373. package/hooks/useInteractionItemProps.js +2 -5
  374. package/hooks/useIsItemFocused.js +5 -3
  375. package/hooks/useItemHighlighted.js +2 -2
  376. package/index.js +1 -1
  377. package/internals/colorScale.d.ts +1 -1
  378. package/internals/components/ChartsAxesGradients/ChartsAxesGradients.d.ts +1 -2
  379. package/internals/components/ChartsAxesGradients/ChartsContinuousGradient.d.ts +1 -2
  380. package/internals/components/ChartsAxesGradients/ChartsContinuousGradient.js +0 -2
  381. package/internals/components/ChartsAxesGradients/ChartsContinuousGradientObjectBound.d.ts +1 -2
  382. package/internals/components/ChartsAxesGradients/ChartsContinuousGradientObjectBound.js +0 -2
  383. package/internals/components/ChartsAxesGradients/ChartsPiecewiseGradient.d.ts +1 -2
  384. package/internals/createSeriesSelectorOfType.js +6 -3
  385. package/internals/getSeriesColorFn.d.ts +5 -0
  386. package/internals/getSeriesColorFn.js +9 -0
  387. package/internals/index.d.ts +1 -1
  388. package/internals/index.js +1 -1
  389. package/internals/plugins/corePlugins/useChartAnimation/useChartAnimation.js +7 -15
  390. package/internals/plugins/corePlugins/useChartAnimation/useChartAnimation.selectors.d.ts +2 -4
  391. package/internals/plugins/corePlugins/useChartDimensions/useChartDimensions.js +28 -36
  392. package/internals/plugins/corePlugins/useChartDimensions/useChartDimensions.selectors.d.ts +11 -17
  393. package/internals/plugins/corePlugins/useChartDimensions/useChartDimensions.selectors.js +27 -21
  394. package/internals/plugins/corePlugins/useChartExperimentalFeature/useChartExperimentalFeature.js +1 -6
  395. package/internals/plugins/corePlugins/useChartExperimentalFeature/useChartExperimentalFeature.selectors.d.ts +2 -4
  396. package/internals/plugins/corePlugins/useChartId/useChartId.js +6 -10
  397. package/internals/plugins/corePlugins/useChartId/useChartId.selectors.d.ts +2 -4
  398. package/internals/plugins/corePlugins/useChartInteractionListener/useChartInteractionListener.js +1 -3
  399. package/internals/plugins/corePlugins/useChartSeries/useChartSeries.js +10 -10
  400. package/internals/plugins/corePlugins/useChartSeries/useChartSeries.selectors.d.ts +11 -7
  401. package/internals/plugins/corePlugins/useChartSeries/useChartSeries.selectors.js +9 -2
  402. package/internals/plugins/corePlugins/useChartSeries/useChartSeries.types.d.ts +1 -0
  403. package/internals/plugins/featurePlugins/useChartBrush/useChartBrush.js +19 -35
  404. package/internals/plugins/featurePlugins/useChartBrush/useChartBrush.selectors.d.ts +29 -57
  405. package/internals/plugins/featurePlugins/useChartBrush/useChartBrush.selectors.js +2 -2
  406. package/internals/plugins/featurePlugins/useChartCartesianAxis/useChartAxisSize.selectors.d.ts +15 -15
  407. package/internals/plugins/featurePlugins/useChartCartesianAxis/useChartAxisSize.selectors.js +22 -6
  408. package/internals/plugins/featurePlugins/useChartCartesianAxis/useChartCartesianAxis.js +11 -17
  409. package/internals/plugins/featurePlugins/useChartCartesianAxis/useChartCartesianAxisPreview.selectors.d.ts +12 -4
  410. package/internals/plugins/featurePlugins/useChartCartesianAxis/useChartCartesianAxisPreview.selectors.js +14 -8
  411. package/internals/plugins/featurePlugins/useChartCartesianAxis/useChartCartesianAxisRendering.selectors.d.ts +62 -86
  412. package/internals/plugins/featurePlugins/useChartCartesianAxis/useChartCartesianAxisRendering.selectors.js +70 -46
  413. package/internals/plugins/featurePlugins/useChartCartesianAxis/useChartCartesianHighlight.selectors.d.ts +14 -26
  414. package/internals/plugins/featurePlugins/useChartCartesianAxis/useChartCartesianHighlight.selectors.js +3 -2
  415. package/internals/plugins/featurePlugins/useChartCartesianAxis/useChartCartesianInteraction.selectors.d.ts +17 -33
  416. package/internals/plugins/featurePlugins/useChartCartesianAxis/useChartCartesianInteraction.selectors.js +23 -23
  417. package/internals/plugins/featurePlugins/useChartClosestPoint/useChartClosestPoint.js +9 -15
  418. package/internals/plugins/featurePlugins/useChartClosestPoint/useChartClosestPoint.selectors.d.ts +2 -4
  419. package/internals/plugins/featurePlugins/useChartHighlight/useChartHighlight.js +12 -16
  420. package/internals/plugins/featurePlugins/useChartHighlight/useChartHighlight.selectors.d.ts +23 -21
  421. package/internals/plugins/featurePlugins/useChartHighlight/useChartHighlight.selectors.js +8 -7
  422. package/internals/plugins/featurePlugins/useChartInteraction/useChartInteraction.js +29 -43
  423. package/internals/plugins/featurePlugins/useChartInteraction/useChartInteraction.selectors.d.ts +14 -28
  424. package/internals/plugins/featurePlugins/useChartInteraction/useChartTooltip.selectors.d.ts +7 -9
  425. package/internals/plugins/featurePlugins/useChartKeyboardNavigation/useChartKeyboardNavigation.js +47 -53
  426. package/internals/plugins/featurePlugins/useChartKeyboardNavigation/useChartKeyboardNavigation.selectors.d.ts +22 -36
  427. package/internals/plugins/featurePlugins/useChartKeyboardNavigation/useChartKeyboardNavigation.selectors.js +4 -1
  428. package/internals/plugins/featurePlugins/useChartPolarAxis/useChartPolarAxis.js +3 -5
  429. package/internals/plugins/featurePlugins/useChartPolarAxis/useChartPolarAxis.selectors.d.ts +11 -21
  430. package/internals/plugins/featurePlugins/useChartPolarAxis/useChartPolarInteraction.selectors.d.ts +14 -26
  431. package/internals/plugins/featurePlugins/useChartPolarAxis/useChartPolarInteraction.selectors.js +12 -10
  432. package/internals/plugins/featurePlugins/useChartZAxis/useChartZAxis.js +1 -3
  433. package/internals/plugins/featurePlugins/useChartZAxis/useChartZAxis.selectors.d.ts +3 -5
  434. package/internals/plugins/models/plugin.d.ts +3 -2
  435. package/internals/plugins/utils/selectors.d.ts +13 -17
  436. package/internals/plugins/utils/selectors.js +3 -35
  437. package/internals/plugins/utils/useLazySelectorEffect.d.ts +2 -2
  438. package/internals/plugins/utils/useLazySelectorEffect.js +2 -2
  439. package/internals/store/useCharts.d.ts +3 -4
  440. package/internals/store/useCharts.js +2 -2
  441. package/internals/store/useSelector.d.ts +2 -4
  442. package/internals/store/useSelector.js +2 -10
  443. package/internals/store/useStore.d.ts +3 -5
  444. package/locales/index.d.ts +2 -1
  445. package/locales/index.js +11 -0
  446. package/locales/nbNO.d.ts +115 -0
  447. package/locales/nbNO.js +119 -0
  448. package/models/seriesType/bar.d.ts +9 -0
  449. package/models/seriesType/common.d.ts +22 -6
  450. package/models/seriesType/config.d.ts +7 -16
  451. package/package.json +4 -4
  452. package/BarChart/seriesConfig/getColor.d.ts +0 -3
  453. package/BarChart/seriesConfig/getSeriesWithDefaultValues.d.ts +0 -3
  454. package/BarChart/seriesConfig/legend.d.ts +0 -3
  455. package/BarChart/seriesConfig/seriesProcessor.d.ts +0 -3
  456. package/BarChart/seriesConfig/tooltip.d.ts +0 -4
  457. package/BarChart/seriesConfig/tooltipPosition.d.ts +0 -3
  458. package/esm/BarChart/seriesConfig/getColor.d.ts +0 -3
  459. package/esm/BarChart/seriesConfig/getSeriesWithDefaultValues.d.ts +0 -3
  460. package/esm/BarChart/seriesConfig/legend.d.ts +0 -3
  461. package/esm/BarChart/seriesConfig/seriesProcessor.d.ts +0 -3
  462. package/esm/BarChart/seriesConfig/tooltip.d.ts +0 -4
  463. package/esm/BarChart/seriesConfig/tooltipPosition.d.ts +0 -3
  464. package/esm/internals/plugins/utils/ChartStore.d.ts +0 -13
  465. package/esm/internals/plugins/utils/ChartStore.js +0 -22
  466. package/internals/plugins/utils/ChartStore.d.ts +0 -13
  467. package/internals/plugins/utils/ChartStore.js +0 -29
  468. /package/BarChart/seriesConfig/{getSeriesWithDefaultValues.js → bar/getSeriesWithDefaultValues.js} +0 -0
  469. /package/esm/BarChart/seriesConfig/{getSeriesWithDefaultValues.js → bar/getSeriesWithDefaultValues.js} +0 -0
@@ -0,0 +1,5 @@
1
+ import { CommonSeriesType, ColorCallbackValue } from "../models/seriesType/common.js";
2
+ export declare function getSeriesColorFn<TValue>(series: {
3
+ color: NonNullable<CommonSeriesType<TValue>['color']>;
4
+ colorGetter?: CommonSeriesType<TValue>['colorGetter'];
5
+ }): (data: ColorCallbackValue<TValue>) => string;
@@ -0,0 +1,3 @@
1
+ export function getSeriesColorFn(series) {
2
+ return series.colorGetter ? series.colorGetter : () => series.color;
3
+ }
@@ -6,7 +6,7 @@ export { useInteractionItemProps } from "../hooks/useInteractionItemProps.js";
6
6
  export { useDrawingArea } from "../hooks/useDrawingArea.js";
7
7
  export { useScatterChartProps } from "../ScatterChart/useScatterChartProps.js";
8
8
  export { useScatterPlotData } from "../ScatterChart/useScatterPlotData.js";
9
- export { seriesConfig as scatterSeriesConfig } from "../ScatterChart/seriesConfig/index.js";
9
+ export { scatterSeriesConfig } from "../ScatterChart/seriesConfig/index.js";
10
10
  export { useLineChartProps } from "../LineChart/useLineChartProps.js";
11
11
  export { useAreaPlotData } from "../LineChart/useAreaPlotData.js";
12
12
  export { useLinePlotData } from "../LineChart/useLinePlotData.js";
@@ -9,7 +9,7 @@ export { useInteractionItemProps } from "../hooks/useInteractionItemProps.js";
9
9
  export { useDrawingArea } from "../hooks/useDrawingArea.js";
10
10
  export { useScatterChartProps } from "../ScatterChart/useScatterChartProps.js";
11
11
  export { useScatterPlotData } from "../ScatterChart/useScatterPlotData.js";
12
- export { seriesConfig as scatterSeriesConfig } from "../ScatterChart/seriesConfig/index.js";
12
+ export { scatterSeriesConfig } from "../ScatterChart/seriesConfig/index.js";
13
13
  export { useLineChartProps } from "../LineChart/useLineChartProps.js";
14
14
  export { useAreaPlotData } from "../LineChart/useAreaPlotData.js";
15
15
  export { useLinePlotData } from "../LineChart/useLinePlotData.js";
@@ -8,30 +8,22 @@ export const useChartAnimation = ({
8
8
  store
9
9
  }) => {
10
10
  React.useEffect(() => {
11
- store.update(prevState => {
12
- return _extends({}, prevState, {
13
- animation: _extends({}, prevState.animation, {
14
- skip: params.skipAnimation
15
- })
16
- });
17
- });
11
+ store.set('animation', _extends({}, store.state.animation, {
12
+ skip: params.skipAnimation
13
+ }));
18
14
  }, [store, params.skipAnimation]);
19
15
  const disableAnimation = React.useCallback(() => {
20
16
  let disableCalled = false;
21
- store.update(prevState => _extends({}, prevState, {
22
- animation: _extends({}, prevState.animation, {
23
- skipAnimationRequests: prevState.animation.skipAnimationRequests + 1
24
- })
17
+ store.set('animation', _extends({}, store.state.animation, {
18
+ skipAnimationRequests: store.state.animation.skipAnimationRequests + 1
25
19
  }));
26
20
  return () => {
27
21
  if (disableCalled) {
28
22
  return;
29
23
  }
30
24
  disableCalled = true;
31
- store.update(prevState => _extends({}, prevState, {
32
- animation: _extends({}, prevState.animation, {
33
- skipAnimationRequests: prevState.animation.skipAnimationRequests - 1
34
- })
25
+ store.set('animation', _extends({}, store.state.animation, {
26
+ skipAnimationRequests: store.state.animation.skipAnimationRequests - 1
35
27
  }));
36
28
  };
37
29
  }, [store]);
@@ -1,5 +1,3 @@
1
- export declare const selectorChartSkipAnimation: import("reselect").Selector<import("../useChartId/useChartId.types.js").UseChartIdState & import("../useChartExperimentalFeature/useChartExperimentalFeature.types.js").UseChartExperimentalFeaturesState & import("../useChartDimensions/useChartDimensions.types.js").UseChartDimensionsState & import("../useChartSeries/useChartSeries.types.js").UseChartSeriesState<keyof import("../../../index.js").ChartsSeriesConfig> & import("./useChartAnimation.types.js").UseChartAnimationState & import("../useChartInteractionListener/index.js").UseChartInteractionListenerState & Partial<{}> & {
1
+ export declare const selectorChartSkipAnimation: (args_0: import("../useChartId/useChartId.types.js").UseChartIdState & import("../useChartExperimentalFeature/useChartExperimentalFeature.types.js").UseChartExperimentalFeaturesState & import("../useChartDimensions/useChartDimensions.types.js").UseChartDimensionsState & import("../useChartSeries/useChartSeries.types.js").UseChartSeriesState<keyof import("../../../index.js").ChartsSeriesConfig> & import("./useChartAnimation.types.js").UseChartAnimationState & import("../useChartInteractionListener/index.js").UseChartInteractionListenerState & Partial<{}> & {
2
2
  cacheKey: import("../../models/index.js").ChartStateCacheKey;
3
- } & {
4
- cacheKey: import("../../models/index.js").ChartStateCacheKey;
5
- }, boolean, any[]>;
3
+ }) => boolean;
@@ -2,6 +2,7 @@
2
2
 
3
3
  import _extends from "@babel/runtime/helpers/esm/extends";
4
4
  import * as React from 'react';
5
+ import { useEffectAfterFirstRender } from '@mui/x-internals/useEffectAfterFirstRender';
5
6
  import useEnhancedEffect from '@mui/utils/useEnhancedEffect';
6
7
  import ownerWindow from '@mui/utils/ownerWindow';
7
8
  import { useSelector } from "../../../store/useSelector.js";
@@ -32,25 +33,20 @@ export const useChartDimensions = ({
32
33
  const computedStyle = win.getComputedStyle(mainEl);
33
34
  const newHeight = Math.floor(parseFloat(computedStyle.height)) || 0;
34
35
  const newWidth = Math.floor(parseFloat(computedStyle.width)) || 0;
35
- store.update(prev => {
36
- if (prev.dimensions.width === newWidth && prev.dimensions.height === newHeight) {
37
- return prev;
38
- }
39
- return _extends({}, prev, {
40
- dimensions: {
41
- margin: {
42
- top: params.margin.top,
43
- right: params.margin.right,
44
- bottom: params.margin.bottom,
45
- left: params.margin.left
46
- },
47
- width: params.width ?? newWidth,
48
- height: params.height ?? newHeight,
49
- propsWidth: params.width,
50
- propsHeight: params.height
51
- }
36
+ if (store.state.dimensions.width !== newWidth || store.state.dimensions.height !== newHeight) {
37
+ store.set('dimensions', {
38
+ margin: {
39
+ top: params.margin.top,
40
+ right: params.margin.right,
41
+ bottom: params.margin.bottom,
42
+ left: params.margin.left
43
+ },
44
+ width: params.width ?? newWidth,
45
+ height: params.height ?? newHeight,
46
+ propsWidth: params.width,
47
+ propsHeight: params.height
52
48
  });
53
- });
49
+ }
54
50
  return {
55
51
  height: newHeight,
56
52
  width: newWidth
@@ -58,24 +54,20 @@ export const useChartDimensions = ({
58
54
  }, [store, svgRef, params.height, params.width,
59
55
  // Margin is an object, so we need to include all the properties to prevent infinite loops.
60
56
  params.margin.left, params.margin.right, params.margin.top, params.margin.bottom]);
61
- React.useEffect(() => {
62
- store.update(prev => {
63
- const width = params.width ?? prev.dimensions.width;
64
- const height = params.height ?? prev.dimensions.height;
65
- return _extends({}, prev, {
66
- dimensions: {
67
- margin: {
68
- top: params.margin.top,
69
- right: params.margin.right,
70
- bottom: params.margin.bottom,
71
- left: params.margin.left
72
- },
73
- width,
74
- height,
75
- propsHeight: params.height,
76
- propsWidth: params.width
77
- }
78
- });
57
+ useEffectAfterFirstRender(() => {
58
+ const width = params.width ?? store.state.dimensions.width;
59
+ const height = params.height ?? store.state.dimensions.height;
60
+ store.set('dimensions', {
61
+ margin: {
62
+ top: params.margin.top,
63
+ right: params.margin.right,
64
+ bottom: params.margin.bottom,
65
+ left: params.margin.left
66
+ },
67
+ width,
68
+ height,
69
+ propsHeight: params.height,
70
+ propsWidth: params.width
79
71
  });
80
72
  }, [store, params.height, params.width,
81
73
  // Margin is an object, so we need to include all the properties to prevent infinite loops.
@@ -3,31 +3,25 @@ import type { UseChartDimensionsSignature } from "./useChartDimensions.types.js"
3
3
  import { ChartState } from "../../models/chart.js";
4
4
  export declare const selectorChartDimensionsState: ChartRootSelector<UseChartDimensionsSignature>;
5
5
  export declare const selectorChartMargin: (state: ChartState<[UseChartDimensionsSignature]>) => import("./useChartDimensions.types.js").ChartMargin;
6
- export declare const selectorChartDrawingArea: import("reselect").Selector<import("../useChartId/useChartId.types.js").UseChartIdState & import("../useChartExperimentalFeature/useChartExperimentalFeature.types.js").UseChartExperimentalFeaturesState & import("./useChartDimensions.types.js").UseChartDimensionsState & import("../useChartSeries/useChartSeries.types.js").UseChartSeriesState<keyof import("../../../index.js").ChartsSeriesConfig> & import("../useChartAnimation/useChartAnimation.types.js").UseChartAnimationState & import("../useChartInteractionListener/index.js").UseChartInteractionListenerState & Partial<{}> & {
6
+ export declare const selectorChartDrawingArea: (args_0: import("../useChartId/useChartId.types.js").UseChartIdState & import("../useChartExperimentalFeature/useChartExperimentalFeature.types.js").UseChartExperimentalFeaturesState & import("./useChartDimensions.types.js").UseChartDimensionsState & import("../useChartSeries/useChartSeries.types.js").UseChartSeriesState<keyof import("../../../index.js").ChartsSeriesConfig> & import("../useChartAnimation/useChartAnimation.types.js").UseChartAnimationState & import("../useChartInteractionListener/index.js").UseChartInteractionListenerState & Partial<{}> & {
7
7
  cacheKey: import("../../models/index.js").ChartStateCacheKey;
8
- } & Partial<import("../../../index.js").UseChartCartesianAxisState> & {
9
- cacheKey: import("../../models/index.js").ChartStateCacheKey;
10
- }, {
8
+ }) => {
11
9
  width: number;
12
10
  left: number;
13
11
  right: number;
14
12
  height: number;
15
13
  top: number;
16
14
  bottom: number;
17
- }, []>;
18
- export declare const selectorChartPropsSize: import("reselect").Selector<import("../useChartId/useChartId.types.js").UseChartIdState & import("../useChartExperimentalFeature/useChartExperimentalFeature.types.js").UseChartExperimentalFeaturesState & import("./useChartDimensions.types.js").UseChartDimensionsState & import("../useChartSeries/useChartSeries.types.js").UseChartSeriesState<keyof import("../../../index.js").ChartsSeriesConfig> & import("../useChartAnimation/useChartAnimation.types.js").UseChartAnimationState & import("../useChartInteractionListener/index.js").UseChartInteractionListenerState & Partial<{}> & {
15
+ };
16
+ export declare const selectorChartSvgWidth: (args_0: import("../useChartId/useChartId.types.js").UseChartIdState & import("../useChartExperimentalFeature/useChartExperimentalFeature.types.js").UseChartExperimentalFeaturesState & import("./useChartDimensions.types.js").UseChartDimensionsState & import("../useChartSeries/useChartSeries.types.js").UseChartSeriesState<keyof import("../../../index.js").ChartsSeriesConfig> & import("../useChartAnimation/useChartAnimation.types.js").UseChartAnimationState & import("../useChartInteractionListener/index.js").UseChartInteractionListenerState & Partial<{}> & {
19
17
  cacheKey: import("../../models/index.js").ChartStateCacheKey;
20
- } & {
18
+ }) => number;
19
+ export declare const selectorChartSvgHeight: (args_0: import("../useChartId/useChartId.types.js").UseChartIdState & import("../useChartExperimentalFeature/useChartExperimentalFeature.types.js").UseChartExperimentalFeaturesState & import("./useChartDimensions.types.js").UseChartDimensionsState & import("../useChartSeries/useChartSeries.types.js").UseChartSeriesState<keyof import("../../../index.js").ChartsSeriesConfig> & import("../useChartAnimation/useChartAnimation.types.js").UseChartAnimationState & import("../useChartInteractionListener/index.js").UseChartInteractionListenerState & Partial<{}> & {
21
20
  cacheKey: import("../../models/index.js").ChartStateCacheKey;
22
- }, {
23
- width: number | undefined;
24
- height: number | undefined;
25
- }, any[]>;
26
- export declare const selectorChartContainerSize: import("reselect").Selector<import("../useChartId/useChartId.types.js").UseChartIdState & import("../useChartExperimentalFeature/useChartExperimentalFeature.types.js").UseChartExperimentalFeaturesState & import("./useChartDimensions.types.js").UseChartDimensionsState & import("../useChartSeries/useChartSeries.types.js").UseChartSeriesState<keyof import("../../../index.js").ChartsSeriesConfig> & import("../useChartAnimation/useChartAnimation.types.js").UseChartAnimationState & import("../useChartInteractionListener/index.js").UseChartInteractionListenerState & Partial<{}> & {
21
+ }) => number;
22
+ export declare const selectorChartPropsWidth: (args_0: import("../useChartId/useChartId.types.js").UseChartIdState & import("../useChartExperimentalFeature/useChartExperimentalFeature.types.js").UseChartExperimentalFeaturesState & import("./useChartDimensions.types.js").UseChartDimensionsState & import("../useChartSeries/useChartSeries.types.js").UseChartSeriesState<keyof import("../../../index.js").ChartsSeriesConfig> & import("../useChartAnimation/useChartAnimation.types.js").UseChartAnimationState & import("../useChartInteractionListener/index.js").UseChartInteractionListenerState & Partial<{}> & {
27
23
  cacheKey: import("../../models/index.js").ChartStateCacheKey;
28
- } & {
24
+ }) => number | undefined;
25
+ export declare const selectorChartPropsHeight: (args_0: import("../useChartId/useChartId.types.js").UseChartIdState & import("../useChartExperimentalFeature/useChartExperimentalFeature.types.js").UseChartExperimentalFeaturesState & import("./useChartDimensions.types.js").UseChartDimensionsState & import("../useChartSeries/useChartSeries.types.js").UseChartSeriesState<keyof import("../../../index.js").ChartsSeriesConfig> & import("../useChartAnimation/useChartAnimation.types.js").UseChartAnimationState & import("../useChartInteractionListener/index.js").UseChartInteractionListenerState & Partial<{}> & {
29
26
  cacheKey: import("../../models/index.js").ChartStateCacheKey;
30
- }, {
31
- width: number;
32
- height: number;
33
- }, []>;
27
+ }) => number | undefined;
@@ -1,26 +1,32 @@
1
+ import { createSelectorMemoized } from '@mui/x-internals/store';
1
2
  import { createSelector } from "../../utils/selectors.js";
2
- import { selectorChartBottomAxisSize, selectorChartLeftAxisSize, selectorChartRightAxisSize, selectorChartTopAxisSize } from "../../featurePlugins/useChartCartesianAxis/useChartAxisSize.selectors.js";
3
+ import { selectorChartAxisSizes } from "../../featurePlugins/useChartCartesianAxis/useChartAxisSize.selectors.js";
3
4
  export const selectorChartDimensionsState = state => state.dimensions;
4
5
  export const selectorChartMargin = state => state.dimensions.margin;
5
- const selectorChartWidth = state => state.dimensions.width;
6
- const selectorChartHeight = state => state.dimensions.height;
7
- const selectorChartTopMargin = state => state.dimensions.margin.top;
8
- const selectorChartRightMargin = state => state.dimensions.margin.right;
9
- const selectorChartBottomMargin = state => state.dimensions.margin.bottom;
10
- const selectorChartLeftMargin = state => state.dimensions.margin.left;
11
- export const selectorChartDrawingArea = createSelector([selectorChartWidth, selectorChartHeight, selectorChartTopMargin, selectorChartRightMargin, selectorChartBottomMargin, selectorChartLeftMargin, selectorChartTopAxisSize, selectorChartRightAxisSize, selectorChartBottomAxisSize, selectorChartLeftAxisSize], (width, height, marginTop, marginRight, marginBottom, marginLeft, axisSizeTop, axisSizeRight, axisSizeBottom, axisSizeLeft) => ({
12
- width: width - marginLeft - marginRight - axisSizeLeft - axisSizeRight,
13
- left: marginLeft + axisSizeLeft,
14
- right: marginRight + axisSizeRight,
15
- height: height - marginTop - marginBottom - axisSizeTop - axisSizeBottom,
16
- top: marginTop + axisSizeTop,
17
- bottom: marginBottom + axisSizeBottom
18
- }));
19
- export const selectorChartPropsSize = createSelector([selectorChartDimensionsState], dimensionsState => ({
20
- width: dimensionsState.propsWidth,
21
- height: dimensionsState.propsHeight
22
- }));
23
- export const selectorChartContainerSize = createSelector([selectorChartWidth, selectorChartHeight], (width, height) => ({
6
+ export const selectorChartDrawingArea = createSelectorMemoized(selectorChartDimensionsState, selectorChartMargin, selectorChartAxisSizes, function selectorChartDrawingArea({
24
7
  width,
25
8
  height
26
- }));
9
+ }, {
10
+ top: marginTop,
11
+ right: marginRight,
12
+ bottom: marginBottom,
13
+ left: marginLeft
14
+ }, {
15
+ left: axisSizeLeft,
16
+ right: axisSizeRight,
17
+ top: axisSizeTop,
18
+ bottom: axisSizeBottom
19
+ }) {
20
+ return {
21
+ width: width - marginLeft - marginRight - axisSizeLeft - axisSizeRight,
22
+ left: marginLeft + axisSizeLeft,
23
+ right: marginRight + axisSizeRight,
24
+ height: height - marginTop - marginBottom - axisSizeTop - axisSizeBottom,
25
+ top: marginTop + axisSizeTop,
26
+ bottom: marginBottom + axisSizeBottom
27
+ };
28
+ });
29
+ export const selectorChartSvgWidth = createSelector([selectorChartDimensionsState], dimensionsState => dimensionsState.width);
30
+ export const selectorChartSvgHeight = createSelector([selectorChartDimensionsState], dimensionsState => dimensionsState.height);
31
+ export const selectorChartPropsWidth = createSelector([selectorChartDimensionsState], dimensionsState => dimensionsState.propsWidth);
32
+ export const selectorChartPropsHeight = createSelector([selectorChartDimensionsState], dimensionsState => dimensionsState.propsHeight);
@@ -1,17 +1,12 @@
1
1
  'use client';
2
2
 
3
- import _extends from "@babel/runtime/helpers/esm/extends";
4
3
  import useEnhancedEffect from '@mui/utils/useEnhancedEffect';
5
4
  export const useChartExperimentalFeatures = ({
6
5
  params,
7
6
  store
8
7
  }) => {
9
8
  useEnhancedEffect(() => {
10
- store.update(prevState => {
11
- return _extends({}, prevState, {
12
- experimentalFeatures: params.experimentalFeatures
13
- });
14
- });
9
+ store.set('experimentalFeatures', params.experimentalFeatures);
15
10
  }, [store, params.experimentalFeatures]);
16
11
  return {};
17
12
  };
@@ -1,8 +1,6 @@
1
1
  import { ChartRootSelector } from "../../utils/selectors.js";
2
2
  import type { UseChartExperimentalFeaturesSignature } from "./useChartExperimentalFeature.types.js";
3
3
  export declare const selectorChartExperimentalFeaturesState: ChartRootSelector<UseChartExperimentalFeaturesSignature>;
4
- export declare const selectorPreferStrictDomainInLineCharts: import("reselect").Selector<import("../useChartId/useChartId.types.js").UseChartIdState & import("./useChartExperimentalFeature.types.js").UseChartExperimentalFeaturesState & import("../useChartDimensions/useChartDimensions.types.js").UseChartDimensionsState & import("../useChartSeries/useChartSeries.types.js").UseChartSeriesState<keyof import("../../../index.js").ChartsSeriesConfig> & import("../useChartAnimation/useChartAnimation.types.js").UseChartAnimationState & import("../useChartInteractionListener/index.js").UseChartInteractionListenerState & Partial<{}> & {
4
+ export declare const selectorPreferStrictDomainInLineCharts: (args_0: import("../useChartId/useChartId.types.js").UseChartIdState & import("./useChartExperimentalFeature.types.js").UseChartExperimentalFeaturesState & import("../useChartDimensions/useChartDimensions.types.js").UseChartDimensionsState & import("../useChartSeries/useChartSeries.types.js").UseChartSeriesState<keyof import("../../../index.js").ChartsSeriesConfig> & import("../useChartAnimation/useChartAnimation.types.js").UseChartAnimationState & import("../useChartInteractionListener/index.js").UseChartInteractionListenerState & Partial<{}> & {
5
5
  cacheKey: import("../../models/index.js").ChartStateCacheKey;
6
- } & {
7
- cacheKey: import("../../models/index.js").ChartStateCacheKey;
8
- }, boolean, any[]>;
6
+ }) => boolean;
@@ -8,16 +8,12 @@ export const useChartId = ({
8
8
  store
9
9
  }) => {
10
10
  React.useEffect(() => {
11
- store.update(prevState => {
12
- if (params.id === undefined || params.id === prevState.id.providedChartId && prevState.id.chartId !== undefined) {
13
- return prevState;
14
- }
15
- return _extends({}, prevState, {
16
- id: _extends({}, prevState.id, {
17
- chartId: params.id ?? createChartDefaultId()
18
- })
19
- });
20
- });
11
+ if (params.id === undefined || params.id === store.state.id.providedChartId && store.state.id.chartId !== undefined) {
12
+ return;
13
+ }
14
+ store.set('id', _extends({}, store.state.id, {
15
+ chartId: params.id ?? createChartDefaultId()
16
+ }));
21
17
  }, [store, params.id]);
22
18
  return {};
23
19
  };
@@ -3,8 +3,6 @@
3
3
  * @param {ChartState<[UseChartIdSignature]>} state The state of the chart.
4
4
  * @returns {string} The id attribute of the chart.
5
5
  */
6
- export declare const selectorChartId: import("reselect").Selector<import("./useChartId.types.js").UseChartIdState & import("../useChartExperimentalFeature/useChartExperimentalFeature.types.js").UseChartExperimentalFeaturesState & import("../useChartDimensions/useChartDimensions.types.js").UseChartDimensionsState & import("../useChartSeries/useChartSeries.types.js").UseChartSeriesState<keyof import("../../../index.js").ChartsSeriesConfig> & import("../useChartAnimation/useChartAnimation.types.js").UseChartAnimationState & import("../useChartInteractionListener/index.js").UseChartInteractionListenerState & Partial<{}> & {
6
+ export declare const selectorChartId: (args_0: import("./useChartId.types.js").UseChartIdState & import("../useChartExperimentalFeature/useChartExperimentalFeature.types.js").UseChartExperimentalFeaturesState & import("../useChartDimensions/useChartDimensions.types.js").UseChartDimensionsState & import("../useChartSeries/useChartSeries.types.js").UseChartSeriesState<keyof import("../../../index.js").ChartsSeriesConfig> & import("../useChartAnimation/useChartAnimation.types.js").UseChartAnimationState & import("../useChartInteractionListener/index.js").UseChartInteractionListenerState & Partial<{}> & {
7
7
  cacheKey: import("../../models/index.js").ChartStateCacheKey;
8
- } & {
9
- cacheKey: import("../../models/index.js").ChartStateCacheKey;
10
- }, string | undefined, any[]>;
8
+ }) => string | undefined;
@@ -36,12 +36,10 @@ export const useChartInteractionListener = ({
36
36
  new PanGesture({
37
37
  name: 'zoomPan',
38
38
  threshold: 0,
39
- maxPointers: 1,
40
39
  preventIf: ['zoomTapAndDrag', 'zoomPressAndDrag']
41
40
  }), new PinchGesture({
42
41
  name: 'zoomPinch',
43
- threshold: 5,
44
- preventIf: ['pan', 'zoomPan']
42
+ threshold: 5
45
43
  }), new TurnWheelGesture({
46
44
  name: 'zoomTurnWheel',
47
45
  sensitivity: 0.01,
@@ -24,15 +24,14 @@ export const useChartSeries = ({
24
24
  isFirstRender.current = false;
25
25
  return;
26
26
  }
27
- store.update(prev => _extends({}, prev, {
28
- series: _extends({}, prev.series, {
29
- processedSeries: preprocessSeries({
30
- series,
31
- colors: typeof colors === 'function' ? colors(theme) : colors,
32
- seriesConfig,
33
- dataset
34
- })
35
- })
27
+ store.set('series', _extends({}, store.state.series, {
28
+ processedSeries: preprocessSeries({
29
+ series,
30
+ colors: typeof colors === 'function' ? colors(theme) : colors,
31
+ seriesConfig,
32
+ dataset
33
+ }),
34
+ dataset
36
35
  }));
37
36
  }, [colors, dataset, series, theme, seriesConfig, store]);
38
37
  return {};
@@ -65,7 +64,8 @@ useChartSeries.getInitialState = ({
65
64
  colors: typeof colors === 'function' ? colors(theme) : colors,
66
65
  seriesConfig,
67
66
  dataset
68
- })
67
+ }),
68
+ dataset
69
69
  }
70
70
  };
71
71
  };
@@ -1,13 +1,17 @@
1
1
  import { ChartRootSelector } from "../../utils/selectors.js";
2
2
  import { UseChartSeriesSignature } from "./useChartSeries.types.js";
3
3
  export declare const selectorChartSeriesState: ChartRootSelector<UseChartSeriesSignature>;
4
- export declare const selectorChartSeriesProcessed: import("reselect").Selector<import("../useChartId/useChartId.types.js").UseChartIdState & import("../useChartExperimentalFeature/useChartExperimentalFeature.types.js").UseChartExperimentalFeaturesState & import("../useChartDimensions/useChartDimensions.types.js").UseChartDimensionsState & import("./useChartSeries.types.js").UseChartSeriesState<keyof import("../../../index.js").ChartsSeriesConfig> & import("../useChartAnimation/useChartAnimation.types.js").UseChartAnimationState & import("../useChartInteractionListener/index.js").UseChartInteractionListenerState & Partial<{}> & {
4
+ export declare const selectorChartSeriesProcessed: (args_0: import("../useChartId/useChartId.types.js").UseChartIdState & import("../useChartExperimentalFeature/useChartExperimentalFeature.types.js").UseChartExperimentalFeaturesState & import("../useChartDimensions/useChartDimensions.types.js").UseChartDimensionsState & import("./useChartSeries.types.js").UseChartSeriesState<keyof import("../../../index.js").ChartsSeriesConfig> & import("../useChartAnimation/useChartAnimation.types.js").UseChartAnimationState & import("../useChartInteractionListener/index.js").UseChartInteractionListenerState & Partial<{}> & {
5
5
  cacheKey: import("../../models/index.js").ChartStateCacheKey;
6
- } & {
6
+ }) => import("./useChartSeries.types.js").ProcessedSeries<keyof import("../../../index.js").ChartsSeriesConfig>;
7
+ export declare const selectorChartSeriesConfig: (args_0: import("../useChartId/useChartId.types.js").UseChartIdState & import("../useChartExperimentalFeature/useChartExperimentalFeature.types.js").UseChartExperimentalFeaturesState & import("../useChartDimensions/useChartDimensions.types.js").UseChartDimensionsState & import("./useChartSeries.types.js").UseChartSeriesState<keyof import("../../../index.js").ChartsSeriesConfig> & import("../useChartAnimation/useChartAnimation.types.js").UseChartAnimationState & import("../useChartInteractionListener/index.js").UseChartInteractionListenerState & Partial<{}> & {
7
8
  cacheKey: import("../../models/index.js").ChartStateCacheKey;
8
- }, import("./useChartSeries.types.js").ProcessedSeries<keyof import("../../../index.js").ChartsSeriesConfig>, any[]>;
9
- export declare const selectorChartSeriesConfig: import("reselect").Selector<import("../useChartId/useChartId.types.js").UseChartIdState & import("../useChartExperimentalFeature/useChartExperimentalFeature.types.js").UseChartExperimentalFeaturesState & import("../useChartDimensions/useChartDimensions.types.js").UseChartDimensionsState & import("./useChartSeries.types.js").UseChartSeriesState<keyof import("../../../index.js").ChartsSeriesConfig> & import("../useChartAnimation/useChartAnimation.types.js").UseChartAnimationState & import("../useChartInteractionListener/index.js").UseChartInteractionListenerState & Partial<{}> & {
9
+ }) => import("../../models/index.js").ChartSeriesConfig<keyof import("../../../index.js").ChartsSeriesConfig>;
10
+ /**
11
+ * Get the dataset from the series state.
12
+ * @param {ChartState<[UseChartSeriesSignature]>} state The state of the chart.
13
+ * @returns {DatasetType | undefined} The dataset.
14
+ */
15
+ export declare const selectorChartDataset: (args_0: import("../useChartId/useChartId.types.js").UseChartIdState & import("../useChartExperimentalFeature/useChartExperimentalFeature.types.js").UseChartExperimentalFeaturesState & import("../useChartDimensions/useChartDimensions.types.js").UseChartDimensionsState & import("./useChartSeries.types.js").UseChartSeriesState<keyof import("../../../index.js").ChartsSeriesConfig> & import("../useChartAnimation/useChartAnimation.types.js").UseChartAnimationState & import("../useChartInteractionListener/index.js").UseChartInteractionListenerState & Partial<{}> & {
10
16
  cacheKey: import("../../models/index.js").ChartStateCacheKey;
11
- } & {
12
- cacheKey: import("../../models/index.js").ChartStateCacheKey;
13
- }, import("../../models/index.js").ChartSeriesConfig<keyof import("../../../index.js").ChartsSeriesConfig>, any[]>;
17
+ }) => readonly import("../../../index.js").DatasetElementType<string | number | Date | null | undefined>[] | undefined;
@@ -1,4 +1,11 @@
1
1
  import { createSelector } from "../../utils/selectors.js";
2
2
  export const selectorChartSeriesState = state => state.series;
3
3
  export const selectorChartSeriesProcessed = createSelector([selectorChartSeriesState], seriesState => seriesState.processedSeries);
4
- export const selectorChartSeriesConfig = createSelector([selectorChartSeriesState], seriesState => seriesState.seriesConfig);
4
+ export const selectorChartSeriesConfig = createSelector([selectorChartSeriesState], seriesState => seriesState.seriesConfig);
5
+
6
+ /**
7
+ * Get the dataset from the series state.
8
+ * @param {ChartState<[UseChartSeriesSignature]>} state The state of the chart.
9
+ * @returns {DatasetType | undefined} The dataset.
10
+ */
11
+ export const selectorChartDataset = createSelector([selectorChartSeriesState], seriesState => seriesState.dataset);
@@ -40,6 +40,7 @@ export interface UseChartSeriesState<T extends ChartSeriesType = ChartSeriesType
40
40
  series: {
41
41
  processedSeries: ProcessedSeries<T>;
42
42
  seriesConfig: ChartSeriesConfig<T>;
43
+ dataset?: Readonly<DatasetType>;
43
44
  };
44
45
  }
45
46
  export interface UseChartSeriesInstance {}
@@ -15,47 +15,31 @@ export const useChartBrush = ({
15
15
  }) => {
16
16
  const isEnabled = useSelector(store, selectorIsBrushEnabled);
17
17
  useEnhancedEffect(() => {
18
- store.update(prev => {
19
- return _extends({}, prev, {
20
- brush: _extends({}, prev.brush, {
21
- enabled: params.brushConfig.enabled,
22
- preventTooltip: params.brushConfig.preventTooltip,
23
- preventHighlight: params.brushConfig.preventHighlight
24
- })
25
- });
26
- });
18
+ store.set('brush', _extends({}, store.state.brush, {
19
+ enabled: params.brushConfig.enabled,
20
+ preventTooltip: params.brushConfig.preventTooltip,
21
+ preventHighlight: params.brushConfig.preventHighlight
22
+ }));
27
23
  }, [store, params.brushConfig.enabled, params.brushConfig.preventTooltip, params.brushConfig.preventHighlight]);
28
24
  const setBrushCoordinates = useEventCallback(function setBrushCoordinates(point) {
29
- store.update(prev => {
30
- return _extends({}, prev, {
31
- brush: _extends({}, prev.brush, {
32
- start: prev.brush.start ?? point,
33
- current: point
34
- })
35
- });
36
- });
25
+ store.set('brush', _extends({}, store.state.brush, {
26
+ start: store.state.brush.start ?? point,
27
+ current: point
28
+ }));
37
29
  });
38
30
  const clearBrush = useEventCallback(function clearBrush() {
39
- store.update(prev => {
40
- return _extends({}, prev, {
41
- brush: _extends({}, prev.brush, {
42
- start: null,
43
- current: null
44
- })
45
- });
46
- });
31
+ store.set('brush', _extends({}, store.state.brush, {
32
+ start: null,
33
+ current: null
34
+ }));
47
35
  });
48
36
  const setZoomBrushEnabled = useEventCallback(function setZoomBrushEnabled(enabled) {
49
- store.update(prev => {
50
- if (prev.brush.isZoomBrushEnabled === enabled) {
51
- return prev;
52
- }
53
- return _extends({}, prev, {
54
- brush: _extends({}, prev.brush, {
55
- isZoomBrushEnabled: enabled
56
- })
57
- });
58
- });
37
+ if (store.state.brush.isZoomBrushEnabled === enabled) {
38
+ return;
39
+ }
40
+ store.set('brush', _extends({}, store.state.brush, {
41
+ isZoomBrushEnabled: enabled
42
+ }));
59
43
  });
60
44
  React.useEffect(() => {
61
45
  const element = svgRef.current;