@mui/x-charts-pro 8.15.0 → 8.16.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 (98) hide show
  1. package/BarChartPro/BarChartPro.js +11 -2
  2. package/BarChartPro/BarChartPro.plugins.d.ts +1 -1
  3. package/BarChartPro/BarChartPro.plugins.js +1 -1
  4. package/CHANGELOG.md +100 -0
  5. package/ChartDataProviderPro/ChartDataProviderPro.js +1 -1
  6. package/FunnelChart/FunnelPlot.js +3 -23
  7. package/FunnelChart/coordinateMapper.d.ts +3 -0
  8. package/FunnelChart/coordinateMapper.js +18 -0
  9. package/FunnelChart/funnelAxisPlugin/computeAxisValue.js +1 -2
  10. package/FunnelChart/seriesConfig/getSeriesWithDefaultValues.js +5 -6
  11. package/FunnelChart/seriesConfig/index.js +2 -0
  12. package/FunnelChart/seriesConfig/tooltipPosition.d.ts +3 -0
  13. package/FunnelChart/seriesConfig/tooltipPosition.js +62 -0
  14. package/Heatmap/Heatmap.plugins.d.ts +1 -1
  15. package/Heatmap/Heatmap.plugins.js +1 -1
  16. package/Heatmap/HeatmapTooltip/HeatmapTooltip.js +9 -0
  17. package/Heatmap/seriesConfig/getSeriesWithDefaultValues.js +3 -2
  18. package/Heatmap/seriesConfig/index.js +2 -0
  19. package/Heatmap/seriesConfig/tooltipPosition.d.ts +3 -0
  20. package/Heatmap/seriesConfig/tooltipPosition.js +57 -0
  21. package/LineChartPro/LineChartPro.js +11 -2
  22. package/LineChartPro/LineChartPro.plugins.d.ts +1 -1
  23. package/LineChartPro/LineChartPro.plugins.js +1 -1
  24. package/RadarChartPro/RadarChartPro.plugins.d.ts +1 -1
  25. package/RadarChartPro/RadarChartPro.plugins.js +1 -1
  26. package/SankeyChart/SankeyTooltip/SankeyTooltip.js +9 -0
  27. package/ScatterChartPro/ScatterChartPro.js +11 -2
  28. package/ScatterChartPro/ScatterChartPro.plugins.d.ts +1 -1
  29. package/ScatterChartPro/ScatterChartPro.plugins.js +1 -1
  30. package/esm/BarChartPro/BarChartPro.js +11 -2
  31. package/esm/BarChartPro/BarChartPro.plugins.d.ts +1 -1
  32. package/esm/BarChartPro/BarChartPro.plugins.js +1 -1
  33. package/esm/ChartDataProviderPro/ChartDataProviderPro.js +1 -1
  34. package/esm/FunnelChart/FunnelPlot.js +4 -24
  35. package/esm/FunnelChart/coordinateMapper.d.ts +3 -0
  36. package/esm/FunnelChart/coordinateMapper.js +11 -0
  37. package/esm/FunnelChart/funnelAxisPlugin/computeAxisValue.js +1 -2
  38. package/esm/FunnelChart/seriesConfig/getSeriesWithDefaultValues.js +5 -6
  39. package/esm/FunnelChart/seriesConfig/index.js +2 -0
  40. package/esm/FunnelChart/seriesConfig/tooltipPosition.d.ts +3 -0
  41. package/esm/FunnelChart/seriesConfig/tooltipPosition.js +56 -0
  42. package/esm/Heatmap/Heatmap.plugins.d.ts +1 -1
  43. package/esm/Heatmap/Heatmap.plugins.js +1 -1
  44. package/esm/Heatmap/HeatmapTooltip/HeatmapTooltip.js +9 -0
  45. package/esm/Heatmap/seriesConfig/getSeriesWithDefaultValues.js +3 -2
  46. package/esm/Heatmap/seriesConfig/index.js +2 -0
  47. package/esm/Heatmap/seriesConfig/tooltipPosition.d.ts +3 -0
  48. package/esm/Heatmap/seriesConfig/tooltipPosition.js +51 -0
  49. package/esm/LineChartPro/LineChartPro.js +11 -2
  50. package/esm/LineChartPro/LineChartPro.plugins.d.ts +1 -1
  51. package/esm/LineChartPro/LineChartPro.plugins.js +1 -1
  52. package/esm/RadarChartPro/RadarChartPro.plugins.d.ts +1 -1
  53. package/esm/RadarChartPro/RadarChartPro.plugins.js +1 -1
  54. package/esm/SankeyChart/SankeyTooltip/SankeyTooltip.js +9 -0
  55. package/esm/ScatterChartPro/ScatterChartPro.js +11 -2
  56. package/esm/ScatterChartPro/ScatterChartPro.plugins.d.ts +1 -1
  57. package/esm/ScatterChartPro/ScatterChartPro.plugins.js +1 -1
  58. package/esm/index.js +1 -1
  59. package/esm/internals/plugins/allPlugins.d.ts +5 -5
  60. package/esm/internals/plugins/allPlugins.js +3 -3
  61. package/esm/internals/plugins/useChartProZoom/ZoomInteractionConfig.selectors.d.ts +11 -2
  62. package/esm/internals/plugins/useChartProZoom/ZoomInteractionConfig.selectors.js +3 -2
  63. package/esm/internals/plugins/useChartProZoom/ZoomInteractionConfig.types.d.ts +11 -3
  64. package/esm/internals/plugins/useChartProZoom/gestureHooks/usePanOnDrag.js +1 -1
  65. package/esm/internals/plugins/useChartProZoom/gestureHooks/usePanOnPressAndDrag.js +1 -1
  66. package/esm/internals/plugins/useChartProZoom/gestureHooks/useZoom.utils.d.ts +2 -2
  67. package/esm/internals/plugins/useChartProZoom/gestureHooks/useZoom.utils.js +2 -2
  68. package/esm/internals/plugins/useChartProZoom/gestureHooks/useZoomOnBrush.d.ts +8 -0
  69. package/esm/internals/plugins/useChartProZoom/gestureHooks/useZoomOnBrush.js +100 -0
  70. package/esm/internals/plugins/useChartProZoom/gestureHooks/useZoomOnDoubleTapReset.d.ts +8 -0
  71. package/esm/internals/plugins/useChartProZoom/gestureHooks/useZoomOnDoubleTapReset.js +57 -0
  72. package/esm/internals/plugins/useChartProZoom/gestureHooks/useZoomOnPinch.js +1 -1
  73. package/esm/internals/plugins/useChartProZoom/gestureHooks/useZoomOnTapAndDrag.js +1 -1
  74. package/esm/internals/plugins/useChartProZoom/gestureHooks/useZoomOnWheel.js +1 -1
  75. package/esm/internals/plugins/useChartProZoom/useChartProZoom.js +4 -0
  76. package/esm/internals/plugins/useChartProZoom/useChartProZoom.selectors.d.ts +1 -1
  77. package/esm/internals/plugins/useChartProZoom/useChartProZoom.types.d.ts +2 -2
  78. package/index.js +1 -1
  79. package/internals/plugins/allPlugins.d.ts +5 -5
  80. package/internals/plugins/allPlugins.js +2 -2
  81. package/internals/plugins/useChartProZoom/ZoomInteractionConfig.selectors.d.ts +11 -2
  82. package/internals/plugins/useChartProZoom/ZoomInteractionConfig.selectors.js +3 -2
  83. package/internals/plugins/useChartProZoom/ZoomInteractionConfig.types.d.ts +11 -3
  84. package/internals/plugins/useChartProZoom/gestureHooks/usePanOnDrag.js +1 -1
  85. package/internals/plugins/useChartProZoom/gestureHooks/usePanOnPressAndDrag.js +1 -1
  86. package/internals/plugins/useChartProZoom/gestureHooks/useZoom.utils.d.ts +2 -2
  87. package/internals/plugins/useChartProZoom/gestureHooks/useZoom.utils.js +2 -2
  88. package/internals/plugins/useChartProZoom/gestureHooks/useZoomOnBrush.d.ts +8 -0
  89. package/internals/plugins/useChartProZoom/gestureHooks/useZoomOnBrush.js +107 -0
  90. package/internals/plugins/useChartProZoom/gestureHooks/useZoomOnDoubleTapReset.d.ts +8 -0
  91. package/internals/plugins/useChartProZoom/gestureHooks/useZoomOnDoubleTapReset.js +64 -0
  92. package/internals/plugins/useChartProZoom/gestureHooks/useZoomOnPinch.js +1 -1
  93. package/internals/plugins/useChartProZoom/gestureHooks/useZoomOnTapAndDrag.js +1 -1
  94. package/internals/plugins/useChartProZoom/gestureHooks/useZoomOnWheel.js +1 -1
  95. package/internals/plugins/useChartProZoom/useChartProZoom.js +4 -0
  96. package/internals/plugins/useChartProZoom/useChartProZoom.selectors.d.ts +1 -1
  97. package/internals/plugins/useChartProZoom/useChartProZoom.types.d.ts +2 -2
  98. package/package.json +5 -5
@@ -23,6 +23,7 @@ var _ChartsClipPath = require("@mui/x-charts/ChartsClipPath");
23
23
  var _internals = require("@mui/x-charts/internals");
24
24
  var _ChartsSurface = require("@mui/x-charts/ChartsSurface");
25
25
  var _ChartsWrapper = require("@mui/x-charts/ChartsWrapper");
26
+ var _ChartsBrushOverlay = require("@mui/x-charts/ChartsBrushOverlay");
26
27
  var _ChartZoomSlider = require("../ChartZoomSlider");
27
28
  var _ChartsToolbarPro = require("../ChartsToolbarPro");
28
29
  var _useChartContainerProProps = require("../ChartContainerPro/useChartContainerProProps");
@@ -84,7 +85,7 @@ const BarChartPro = exports.BarChartPro = /*#__PURE__*/React.forwardRef(function
84
85
  children: [showToolbar ? /*#__PURE__*/(0, _jsxRuntime.jsx)(Toolbar, (0, _extends2.default)({}, props.slotProps?.toolbar)) : null, !props.hideLegend && /*#__PURE__*/(0, _jsxRuntime.jsx)(_ChartsLegend.ChartsLegend, (0, _extends2.default)({}, legendProps)), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_ChartsSurface.ChartsSurface, (0, _extends2.default)({}, chartsSurfaceProps, {
85
86
  children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_ChartsGrid.ChartsGrid, (0, _extends2.default)({}, gridProps)), /*#__PURE__*/(0, _jsxRuntime.jsxs)("g", (0, _extends2.default)({}, clipPathGroupProps, {
86
87
  children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_BarChart.BarPlot, (0, _extends2.default)({}, barPlotProps)), /*#__PURE__*/(0, _jsxRuntime.jsx)(_ChartsOverlay.ChartsOverlay, (0, _extends2.default)({}, overlayProps)), /*#__PURE__*/(0, _jsxRuntime.jsx)(_ChartsAxisHighlight.ChartsAxisHighlight, (0, _extends2.default)({}, axisHighlightProps))]
87
- })), /*#__PURE__*/(0, _jsxRuntime.jsx)(_ChartsAxis.ChartsAxis, (0, _extends2.default)({}, chartsAxisProps)), /*#__PURE__*/(0, _jsxRuntime.jsx)(_ChartZoomSlider.ChartZoomSlider, {}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_ChartsClipPath.ChartsClipPath, (0, _extends2.default)({}, clipPathProps)), children]
88
+ })), /*#__PURE__*/(0, _jsxRuntime.jsx)(_ChartsAxis.ChartsAxis, (0, _extends2.default)({}, chartsAxisProps)), /*#__PURE__*/(0, _jsxRuntime.jsx)(_ChartZoomSlider.ChartZoomSlider, {}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_ChartsBrushOverlay.ChartsBrushOverlay, {}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_ChartsClipPath.ChartsClipPath, (0, _extends2.default)({}, clipPathProps)), children]
88
89
  })), !props.loading && /*#__PURE__*/(0, _jsxRuntime.jsx)(Tooltip, (0, _extends2.default)({}, props.slotProps?.tooltip))]
89
90
  }))
90
91
  }));
@@ -1453,7 +1454,7 @@ process.env.NODE_ENV !== "production" ? BarChartPro.propTypes = {
1453
1454
  requiredKeys: _propTypes.default.arrayOf(_propTypes.default.string),
1454
1455
  type: _propTypes.default.oneOf(['pressAndDrag']).isRequired
1455
1456
  })]).isRequired),
1456
- zoom: _propTypes.default.arrayOf(_propTypes.default.oneOfType([_propTypes.default.oneOf(['pinch', 'tapAndDrag', 'wheel']), _propTypes.default.shape({
1457
+ zoom: _propTypes.default.arrayOf(_propTypes.default.oneOfType([_propTypes.default.oneOf(['brush', 'doubleTapReset', 'pinch', 'tapAndDrag', 'wheel']), _propTypes.default.shape({
1457
1458
  pointerMode: _propTypes.default.any,
1458
1459
  requiredKeys: _propTypes.default.arrayOf(_propTypes.default.string),
1459
1460
  type: _propTypes.default.oneOf(['wheel']).isRequired
@@ -1465,6 +1466,14 @@ process.env.NODE_ENV !== "production" ? BarChartPro.propTypes = {
1465
1466
  pointerMode: _propTypes.default.oneOf(['mouse', 'touch']),
1466
1467
  requiredKeys: _propTypes.default.arrayOf(_propTypes.default.string),
1467
1468
  type: _propTypes.default.oneOf(['tapAndDrag']).isRequired
1469
+ }), _propTypes.default.shape({
1470
+ pointerMode: _propTypes.default.oneOf(['mouse', 'touch']),
1471
+ requiredKeys: _propTypes.default.arrayOf(_propTypes.default.string),
1472
+ type: _propTypes.default.oneOf(['doubleTapReset']).isRequired
1473
+ }), _propTypes.default.shape({
1474
+ pointerMode: _propTypes.default.any,
1475
+ requiredKeys: _propTypes.default.array,
1476
+ type: _propTypes.default.oneOf(['brush']).isRequired
1468
1477
  })]).isRequired)
1469
1478
  })
1470
1479
  } : void 0;
@@ -1,5 +1,5 @@
1
1
  import { UseChartZAxisSignature, UseChartCartesianAxisSignature, UseChartInteractionSignature, UseChartHighlightSignature, UseChartKeyboardNavigationSignature, UseChartBrushSignature, ConvertSignaturesIntoPlugins } from '@mui/x-charts/internals';
2
2
  import { UseChartProExportSignature } from "../internals/plugins/useChartProExport/index.js";
3
3
  import { UseChartProZoomSignature } from "../internals/plugins/useChartProZoom/index.js";
4
- export type BarChartProPluginSignatures = [UseChartZAxisSignature, UseChartBrushSignature, UseChartCartesianAxisSignature<'bar'>, UseChartInteractionSignature, UseChartHighlightSignature, UseChartKeyboardNavigationSignature, UseChartProZoomSignature, UseChartProExportSignature];
4
+ export type BarChartProPluginSignatures = [UseChartZAxisSignature, UseChartBrushSignature, UseChartInteractionSignature, UseChartCartesianAxisSignature<'bar'>, UseChartHighlightSignature, UseChartKeyboardNavigationSignature, UseChartProZoomSignature, UseChartProExportSignature];
5
5
  export declare const BAR_CHART_PRO_PLUGINS: ConvertSignaturesIntoPlugins<BarChartProPluginSignatures>;
@@ -7,4 +7,4 @@ exports.BAR_CHART_PRO_PLUGINS = void 0;
7
7
  var _internals = require("@mui/x-charts/internals");
8
8
  var _useChartProExport = require("../internals/plugins/useChartProExport");
9
9
  var _useChartProZoom = require("../internals/plugins/useChartProZoom");
10
- const BAR_CHART_PRO_PLUGINS = exports.BAR_CHART_PRO_PLUGINS = [_internals.useChartZAxis, _internals.useChartBrush, _internals.useChartCartesianAxis, _internals.useChartInteraction, _internals.useChartHighlight, _internals.useChartKeyboardNavigation, _useChartProZoom.useChartProZoom, _useChartProExport.useChartProExport];
10
+ const BAR_CHART_PRO_PLUGINS = exports.BAR_CHART_PRO_PLUGINS = [_internals.useChartZAxis, _internals.useChartBrush, _internals.useChartInteraction, _internals.useChartCartesianAxis, _internals.useChartHighlight, _internals.useChartKeyboardNavigation, _useChartProZoom.useChartProZoom, _useChartProExport.useChartProExport];
package/CHANGELOG.md CHANGED
@@ -5,6 +5,106 @@
5
5
  All notable changes to this project will be documented in this file.
6
6
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
7
7
 
8
+ ## 8.16.0
9
+
10
+ _Oct 29, 2025_
11
+
12
+ We'd like to extend a big thank you to the 14 contributors who made this release possible. Here are some highlights ✨:
13
+
14
+ - 🖌️ Add `brush` zoom interaction to charts
15
+ - 🔁 [Server-side update](https://mui.com/x/react-data-grid/server-side-data/#updating-server-side-data) in a grid with tree data/row grouping and aggregation will trigger re-fetch for all parent levels of that row to update aggregated values. See the [demo](https://mui.com/x/react-data-grid/server-side-data/aggregation/#usage-with-tree-data).
16
+
17
+ Special thanks go out to the community members for their valuable contributions:
18
+ @felix-wg, @frncesc, @sai6855
19
+
20
+ The following are all team members who have contributed to this release:
21
+ @alexfauquette, @arminmeh, @bernardobelchior, @brijeshb42, @flaviendelangle, @JCQuintas, @MBilalShafi, @mbrookes, @michelengelen, @noraleonte, @rita-codes
22
+
23
+ ### Data Grid
24
+
25
+ #### `@mui/x-data-grid@8.16.0`
26
+
27
+ - [DataGrid] Ignore `Ctrl+A` key combination for the row selection in the community version (#20110) @felix-wg
28
+ - [DataGrid][l10n] Improve Spanish (es-ES) locale (#20134) @frncesc
29
+
30
+ #### `@mui/x-data-grid-pro@8.16.0` [![pro](https://mui.com/r/x-pro-svg)](https://mui.com/r/x-pro-svg-link 'Pro plan')
31
+
32
+ Same changes as in `@mui/x-data-grid@8.16.0`, plus:
33
+
34
+ - [DataGridPro] Add explicit return type to `getVisibleRowsLookup()` to fix the build with `tsc` (#20116) @arminmeh
35
+ - [DataGridPro] Retain the expansion state with expansion configuration props (#20126) @MBilalShafi
36
+
37
+ #### `@mui/x-data-grid-premium@8.16.0` [![premium](https://mui.com/r/x-premium-svg)](https://mui.com/r/x-premium-svg-link 'Premium plan')
38
+
39
+ Same changes as in `@mui/x-data-grid-pro@8.16.0`, plus:
40
+
41
+ - [DataGridPremium] Export and restore chart integration state (#20079) @arminmeh
42
+ - [DataGridPremium] Fix grouping column `valueFormatter()` crash (#20070) @sai6855
43
+ - [DataGridPremium] Refetch aggregation data after row update with server-side aggregation (#20039) @arminmeh
44
+
45
+ ### Date and Time Pickers
46
+
47
+ #### `@mui/x-date-pickers@8.16.0`
48
+
49
+ - [pickers] Prevent blur event propagation on individual sections (#19825) @michelengelen
50
+
51
+ #### `@mui/x-date-pickers-pro@8.16.0` [![pro](https://mui.com/r/x-pro-svg)](https://mui.com/r/x-pro-svg-link 'Pro plan')
52
+
53
+ Same changes as in `@mui/x-date-pickers@8.16.0`.
54
+
55
+ ### Charts
56
+
57
+ #### `@mui/x-charts@8.16.0`
58
+
59
+ - [charts] Allow tooltip to anchor items (#19954) @alexfauquette
60
+ - [charts] Fix behavior of grouped axis (#20118) @JCQuintas
61
+ - [charts] Move scale symlog inside scales (#20137) @JCQuintas
62
+ - [charts] Fix AreaChartConnectNulls demo height not correctly resizing (#20078) @sai6855
63
+ - [charts] Fix charts resizing overflow (#20080) @alexfauquette
64
+ - [charts] Fix tooltip not showing on first render (#20115) @bernardobelchior
65
+ - [charts] Handle `undefined` id and color in series (#20087) @bernardobelchior
66
+ - [charts] Remove `useMemo` from isZoomOn*Enabled and isPanOn*Enabled hooks (#20132) @Copilot
67
+ - [charts] Use static data for perf (#20072) @JCQuintas
68
+ - [charts] Move scale symlog inside scales (#20137) @JCQuintas
69
+
70
+ #### `@mui/x-charts-pro@8.16.0` [![pro](https://mui.com/r/x-pro-svg)](https://mui.com/r/x-pro-svg-link 'Pro plan')
71
+
72
+ Same changes as in `@mui/x-charts@8.16.0`, plus:
73
+
74
+ - [charts-pro] Add `brush` zoom interaction (#19899) @JCQuintas
75
+ - [charts-pro] Add sankey performance check (#20069) @JCQuintas
76
+
77
+ #### `@mui/x-charts-premium@8.16.0` [![premium](https://mui.com/r/x-premium-svg)](https://mui.com/r/x-premium-svg-link 'Premium plan')
78
+
79
+ Same changes as in `@mui/x-charts-pro@8.16.0`.
80
+
81
+ ### Tree View
82
+
83
+ #### `@mui/x-tree-view@8.16.0`
84
+
85
+ Internal changes.
86
+
87
+ #### `@mui/x-tree-view-pro@8.16.0` [![pro](https://mui.com/r/x-pro-svg)](https://mui.com/r/x-pro-svg-link 'Pro plan')
88
+
89
+ Same changes as in `@mui/x-tree-view@8.16.0`.
90
+
91
+ ### Codemod
92
+
93
+ #### `@mui/x-codemod@8.16.0`
94
+
95
+ Internal changes.
96
+
97
+ ### Core
98
+
99
+ - [code-infra] Setup eslint compat plugin (#20105) @brijeshb42
100
+ - [code-infra] Improve store types (#20129) @JCQuintas
101
+ - [docs] Update the callout in `rows` prop documentation (#20127) @MBilalShafi
102
+ - [docs-infra] Refine changelog contributor acknowledgment messages (#20123) @mbrookes
103
+
104
+ ### Miscellaneous
105
+
106
+ - [x-telemetry] Skip telemetry tests on browser mode (#20122) @bernardobelchior
107
+
8
108
  ## 8.15.0
9
109
 
10
110
  _Oct 23, 2025_
@@ -18,7 +18,7 @@ var _material = require("../internals/material");
18
18
  var _allPlugins = require("../internals/plugins/allPlugins");
19
19
  var _useChartDataProviderProProps = require("./useChartDataProviderProProps");
20
20
  var _jsxRuntime = require("react/jsx-runtime");
21
- const releaseInfo = "MTc2MTE3NzYwMDAwMA==";
21
+ const releaseInfo = "MTc2MTY5NjAwMDAwMA==";
22
22
  const packageIdentifier = 'x-charts-pro';
23
23
  /**
24
24
  * Orchestrates the data providers for the chart components and hooks.
@@ -19,6 +19,7 @@ var _useFunnelSeries = require("../hooks/useFunnelSeries");
19
19
  var _curves = require("./curves");
20
20
  var _FunnelSectionLabel = require("./FunnelSectionLabel");
21
21
  var _useChartFunnelAxisRendering = require("./funnelAxisPlugin/useChartFunnelAxisRendering.selectors");
22
+ var _coordinateMapper = require("./coordinateMapper");
22
23
  var _jsxRuntime = require("react/jsx-runtime");
23
24
  const _excluded = ["onItemClick"];
24
25
  _internals.cartesianSeriesTypes.addType('funnel');
@@ -51,31 +52,10 @@ const useAggregatedData = () => {
51
52
  const yAxisId = currentSeries.yAxisId ?? defaultYAxisId;
52
53
  const valueFormatter = currentSeries.valueFormatter;
53
54
  const baseScaleConfig = isHorizontal ? xAxis[xAxisId] : yAxis[yAxisId];
54
- const isXAxisBand = xAxis[xAxisId].scaleType === 'band';
55
- const isYAxisBand = yAxis[yAxisId].scaleType === 'band';
56
- const bandWidth = (isXAxisBand || isYAxisBand) && baseScaleConfig.scale?.bandwidth() || 0;
57
55
  const xScale = xAxis[xAxisId].scale;
58
56
  const yScale = yAxis[yAxisId].scale;
59
- const xPosition = (value, bandIndex, bandIdentifier, stackOffset, useBand) => {
60
- if ((0, _internals.isOrdinalScale)(xScale)) {
61
- const position = xScale(bandIdentifier);
62
- return useBand ? position + bandWidth : position;
63
- }
64
- if (isHorizontal) {
65
- return xScale(value + (stackOffset || 0)) + bandIndex * gap;
66
- }
67
- return xScale(value);
68
- };
69
- const yPosition = (value, bandIndex, bandIdentifier, stackOffset, useBand) => {
70
- if ((0, _internals.isOrdinalScale)(yScale)) {
71
- const position = yScale(bandIdentifier);
72
- return useBand ? position + bandWidth : position;
73
- }
74
- if (isHorizontal) {
75
- return yScale(value);
76
- }
77
- return yScale(value + (stackOffset || 0)) + bandIndex * gap;
78
- };
57
+ const xPosition = (0, _coordinateMapper.createPositionGetter)(xScale, isHorizontal, gap);
58
+ const yPosition = (0, _coordinateMapper.createPositionGetter)(yScale, !isHorizontal, gap);
79
59
  const allY = currentSeries.dataPoints.flatMap((d, dataIndex) => d.flatMap(v => yPosition(v.y, dataIndex, baseScaleConfig.data?.[dataIndex], v.stackOffset, v.useBandWidth)));
80
60
  const allX = currentSeries.dataPoints.flatMap((d, dataIndex) => d.flatMap(v => xPosition(v.x, dataIndex, baseScaleConfig.data?.[dataIndex], v.stackOffset, v.useBandWidth)));
81
61
  const minPoint = {
@@ -0,0 +1,3 @@
1
+ import { D3Scale } from '@mui/x-charts/internals';
2
+ import { PositionGetter } from "./curves/curve.types.js";
3
+ export declare const createPositionGetter: (scale: D3Scale, isCategoryDirection: boolean, gap: number) => PositionGetter;
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.createPositionGetter = void 0;
7
+ var _internals = require("@mui/x-charts/internals");
8
+ const createPositionGetter = (scale, isCategoryDirection, gap) => (value, bandIndex, bandIdentifier, stackOffset, useBand) => {
9
+ if ((0, _internals.isOrdinalScale)(scale)) {
10
+ const position = scale(bandIdentifier);
11
+ return useBand ? position + scale.bandwidth() : position;
12
+ }
13
+ if (isCategoryDirection) {
14
+ return scale(value + (stackOffset || 0)) + bandIndex * gap;
15
+ }
16
+ return scale(value);
17
+ };
18
+ exports.createPositionGetter = createPositionGetter;
@@ -7,7 +7,6 @@ Object.defineProperty(exports, "__esModule", {
7
7
  exports.computeAxisValue = computeAxisValue;
8
8
  exports.yRangeGetter = exports.xRangeGetter = void 0;
9
9
  var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
10
- var _d3Scale = require("@mui/x-charts-vendor/d3-scale");
11
10
  var _internals = require("@mui/x-charts/internals");
12
11
  const xRangeGetter = (drawingArea, reverse, removedSpace = 0) => {
13
12
  const range = [drawingArea.left, drawingArea.left + drawingArea.width - removedSpace];
@@ -59,7 +58,7 @@ function computeAxisValue({
59
58
  triggerTooltip
60
59
  }, axis, {
61
60
  data,
62
- scale: (0, _d3Scale.scaleBand)(axis.data, scaleRange).paddingInner(gap / step).paddingOuter(0),
61
+ scale: (0, _internals.scaleBand)(axis.data, scaleRange).paddingInner(gap / step).paddingOuter(0),
63
62
  tickNumber: axis.data.length,
64
63
  colorScale: axis.colorMap && (axis.colorMap.type === 'ordinal' ? (0, _internals.getOrdinalColorScale)((0, _extends2.default)({
65
64
  values: axis.data
@@ -7,13 +7,12 @@ Object.defineProperty(exports, "__esModule", {
7
7
  exports.default = void 0;
8
8
  var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
9
9
  const getSeriesWithDefaultValues = (seriesData, seriesIndex, colors) => {
10
- return (0, _extends2.default)({
11
- id: seriesData.id ?? `auto-generated-id-${seriesIndex}`
12
- }, seriesData, {
10
+ return (0, _extends2.default)({}, seriesData, {
11
+ id: seriesData.id ?? `auto-generated-id-${seriesIndex}`,
13
12
  borderRadius: seriesData.borderRadius ?? 8,
14
- data: seriesData.data.map((d, index) => (0, _extends2.default)({
15
- color: colors[index % colors.length]
16
- }, d))
13
+ data: seriesData.data.map((d, index) => (0, _extends2.default)({}, d, {
14
+ color: d.color ?? colors[index % colors.length]
15
+ }))
17
16
  });
18
17
  };
19
18
  var _default = exports.default = getSeriesWithDefaultValues;
@@ -11,11 +11,13 @@ var _getColor = _interopRequireDefault(require("./getColor"));
11
11
  var _legend = _interopRequireDefault(require("./legend"));
12
12
  var _tooltip = _interopRequireDefault(require("./tooltip"));
13
13
  var _getSeriesWithDefaultValues = _interopRequireDefault(require("./getSeriesWithDefaultValues"));
14
+ var _tooltipPosition = _interopRequireDefault(require("./tooltipPosition"));
14
15
  const seriesConfig = exports.seriesConfig = {
15
16
  seriesProcessor: _seriesProcessor.default,
16
17
  colorProcessor: _getColor.default,
17
18
  legendGetter: _legend.default,
18
19
  tooltipGetter: _tooltip.default,
20
+ tooltipItemPositionGetter: _tooltipPosition.default,
19
21
  xExtremumGetter: _extremums.getExtremumX,
20
22
  yExtremumGetter: _extremums.getExtremumY,
21
23
  getSeriesWithDefaultValues: _getSeriesWithDefaultValues.default
@@ -0,0 +1,3 @@
1
+ import { TooltipItemPositionGetter } from '@mui/x-charts/internals';
2
+ declare const tooltipItemPositionGetter: TooltipItemPositionGetter<'funnel'>;
3
+ export default tooltipItemPositionGetter;
@@ -0,0 +1,62 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+ var _internals = require("@mui/x-charts/internals");
8
+ var _coordinateMapper = require("../coordinateMapper");
9
+ const tooltipItemPositionGetter = params => {
10
+ const {
11
+ series,
12
+ identifier,
13
+ axesConfig,
14
+ placement
15
+ } = params;
16
+ if (!identifier || identifier.dataIndex === undefined) {
17
+ return null;
18
+ }
19
+ const itemSeries = series.funnel?.series[identifier.seriesId];
20
+ if (itemSeries == null) {
21
+ return null;
22
+ }
23
+ if (axesConfig.x === undefined || axesConfig.y === undefined) {
24
+ return null;
25
+ }
26
+ const isHorizontal = itemSeries.layout === 'horizontal';
27
+ const baseScaleConfig = isHorizontal ? axesConfig.x : axesConfig.y;
28
+
29
+ // FIXME gap should be obtained from the store.
30
+ // Maybe moving it to the series would be a good idea similar to what we do with bar charts and their stackingGroups
31
+ const gap = 0;
32
+ const xPosition = (0, _coordinateMapper.createPositionGetter)(axesConfig.x.scale, isHorizontal, gap);
33
+ const yPosition = (0, _coordinateMapper.createPositionGetter)(axesConfig.y.scale, !isHorizontal, gap);
34
+ const allY = itemSeries.dataPoints[identifier.dataIndex].map(v => yPosition(v.y, identifier.dataIndex, baseScaleConfig.data?.[identifier.dataIndex], v.stackOffset, v.useBandWidth));
35
+ const allX = itemSeries.dataPoints[identifier.dataIndex].map(v => xPosition(v.x, identifier.dataIndex, baseScaleConfig.data?.[identifier.dataIndex], v.stackOffset, v.useBandWidth));
36
+ const [x0, x1] = (0, _internals.findMinMax)(allX);
37
+ const [y0, y1] = (0, _internals.findMinMax)(allY);
38
+ switch (placement) {
39
+ case 'bottom':
40
+ return {
41
+ x: (x1 + x0) / 2,
42
+ y: y1
43
+ };
44
+ case 'left':
45
+ return {
46
+ x: x0,
47
+ y: (y1 + y0) / 2
48
+ };
49
+ case 'right':
50
+ return {
51
+ x: x1,
52
+ y: (y1 + y0) / 2
53
+ };
54
+ case 'top':
55
+ default:
56
+ return {
57
+ x: (x1 + x0) / 2,
58
+ y: y0
59
+ };
60
+ }
61
+ };
62
+ var _default = exports.default = tooltipItemPositionGetter;
@@ -1,4 +1,4 @@
1
1
  import { UseChartZAxisSignature, UseChartCartesianAxisSignature, UseChartInteractionSignature, UseChartHighlightSignature, ConvertSignaturesIntoPlugins } from '@mui/x-charts/internals';
2
2
  import { UseChartProExportSignature } from "../internals/plugins/useChartProExport/index.js";
3
- export type HeatmapPluginSignatures = [UseChartZAxisSignature, UseChartCartesianAxisSignature<'heatmap'>, UseChartInteractionSignature, UseChartHighlightSignature, UseChartProExportSignature];
3
+ export type HeatmapPluginSignatures = [UseChartZAxisSignature, UseChartInteractionSignature, UseChartCartesianAxisSignature<'heatmap'>, UseChartHighlightSignature, UseChartProExportSignature];
4
4
  export declare const HEATMAP_PLUGINS: ConvertSignaturesIntoPlugins<HeatmapPluginSignatures>;
@@ -6,4 +6,4 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.HEATMAP_PLUGINS = void 0;
7
7
  var _internals = require("@mui/x-charts/internals");
8
8
  var _useChartProExport = require("../internals/plugins/useChartProExport");
9
- const HEATMAP_PLUGINS = exports.HEATMAP_PLUGINS = [_internals.useChartZAxis, _internals.useChartCartesianAxis, _internals.useChartInteraction, _internals.useChartHighlight, _useChartProExport.useChartProExport];
9
+ const HEATMAP_PLUGINS = exports.HEATMAP_PLUGINS = [_internals.useChartZAxis, _internals.useChartInteraction, _internals.useChartCartesianAxis, _internals.useChartHighlight, _useChartProExport.useChartProExport];
@@ -33,6 +33,11 @@ process.env.NODE_ENV !== "production" ? HeatmapTooltip.propTypes = {
33
33
  // | These PropTypes are generated from the TypeScript type definitions |
34
34
  // | To update them edit the TypeScript types and run "pnpm proptypes" |
35
35
  // ----------------------------------------------------------------------
36
+ /**
37
+ * Determine if the tooltip should be placed on the pointer location or on the node.
38
+ * @default 'pointer'
39
+ */
40
+ anchor: _propTypes.default.oneOf(['node', 'pointer']),
36
41
  /**
37
42
  * An HTML element, [virtualElement](https://popper.js.org/docs/v2/virtual-elements/),
38
43
  * or a function that returns either.
@@ -162,6 +167,10 @@ process.env.NODE_ENV !== "production" ? HeatmapTooltip.propTypes = {
162
167
  update: _propTypes.default.func.isRequired
163
168
  })
164
169
  })]),
170
+ /**
171
+ * Determines the tooltip position relatively to the anchor.
172
+ */
173
+ position: _propTypes.default.oneOf(['bottom', 'left', 'right', 'top']),
165
174
  /**
166
175
  * The props used for each slot inside the Popper.
167
176
  * @default {}
@@ -8,8 +8,9 @@ exports.default = void 0;
8
8
  var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
9
9
  const getSeriesWithDefaultValues = (seriesData, seriesIndex, colors) => {
10
10
  return (0, _extends2.default)({
11
- id: seriesData.id ?? `auto-generated-id-${seriesIndex}`,
12
11
  color: colors[seriesIndex % colors.length]
13
- }, seriesData);
12
+ }, seriesData, {
13
+ id: seriesData.id ?? `auto-generated-id-${seriesIndex}`
14
+ });
14
15
  };
15
16
  var _default = exports.default = getSeriesWithDefaultValues;
@@ -10,11 +10,13 @@ var _seriesProcessor = _interopRequireDefault(require("./seriesProcessor"));
10
10
  var _getColor = _interopRequireDefault(require("./getColor"));
11
11
  var _tooltip = _interopRequireDefault(require("./tooltip"));
12
12
  var _getSeriesWithDefaultValues = _interopRequireDefault(require("./getSeriesWithDefaultValues"));
13
+ var _tooltipPosition = _interopRequireDefault(require("./tooltipPosition"));
13
14
  const seriesConfig = exports.seriesConfig = {
14
15
  seriesProcessor: _seriesProcessor.default,
15
16
  colorProcessor: _getColor.default,
16
17
  legendGetter: () => [],
17
18
  tooltipGetter: _tooltip.default,
19
+ tooltipItemPositionGetter: _tooltipPosition.default,
18
20
  xExtremumGetter: _extremums.getBaseExtremum,
19
21
  yExtremumGetter: _extremums.getBaseExtremum,
20
22
  getSeriesWithDefaultValues: _getSeriesWithDefaultValues.default
@@ -0,0 +1,3 @@
1
+ import { TooltipItemPositionGetter } from '@mui/x-charts/internals';
2
+ declare const tooltipItemPositionGetter: TooltipItemPositionGetter<'heatmap'>;
3
+ export default tooltipItemPositionGetter;
@@ -0,0 +1,57 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+ var _internals = require("@mui/x-charts/internals");
8
+ const tooltipItemPositionGetter = params => {
9
+ const {
10
+ series,
11
+ identifier,
12
+ axesConfig,
13
+ placement
14
+ } = params;
15
+ if (!identifier || identifier.dataIndex === undefined) {
16
+ return null;
17
+ }
18
+ const itemSeries = series.heatmap?.series[identifier.seriesId];
19
+ if (itemSeries == null) {
20
+ return null;
21
+ }
22
+ if (axesConfig.x === undefined || axesConfig.y === undefined || !(0, _internals.isBandScaleConfig)(axesConfig.x) || !(0, _internals.isBandScaleConfig)(axesConfig.y)) {
23
+ return null;
24
+ }
25
+ const [xIndex, yIndex] = itemSeries.data[identifier.dataIndex];
26
+ const x = axesConfig.x.scale(axesConfig.x.scale.domain()[xIndex]);
27
+ const y = axesConfig.y.scale(axesConfig.y.scale.domain()[yIndex]);
28
+ if (x === undefined || y === undefined) {
29
+ return null;
30
+ }
31
+ const width = axesConfig.x.scale.bandwidth();
32
+ const height = axesConfig.y.scale.bandwidth();
33
+ switch (placement) {
34
+ case 'bottom':
35
+ return {
36
+ x: x + width / 2,
37
+ y: y + height
38
+ };
39
+ case 'left':
40
+ return {
41
+ x,
42
+ y: y + height / 2
43
+ };
44
+ case 'right':
45
+ return {
46
+ x: x + width,
47
+ y: y + height / 2
48
+ };
49
+ case 'top':
50
+ default:
51
+ return {
52
+ x: x + width / 2,
53
+ y
54
+ };
55
+ }
56
+ };
57
+ var _default = exports.default = tooltipItemPositionGetter;
@@ -23,6 +23,7 @@ var _ChartsClipPath = require("@mui/x-charts/ChartsClipPath");
23
23
  var _ChartsSurface = require("@mui/x-charts/ChartsSurface");
24
24
  var _internals = require("@mui/x-charts/internals");
25
25
  var _ChartsWrapper = require("@mui/x-charts/ChartsWrapper");
26
+ var _ChartsBrushOverlay = require("@mui/x-charts/ChartsBrushOverlay");
26
27
  var _ChartZoomSlider = require("../ChartZoomSlider");
27
28
  var _ChartsToolbarPro = require("../ChartsToolbarPro");
28
29
  var _useChartContainerProProps = require("../ChartContainerPro/useChartContainerProProps");
@@ -89,7 +90,7 @@ const LineChartPro = exports.LineChartPro = /*#__PURE__*/React.forwardRef(functi
89
90
  })), /*#__PURE__*/(0, _jsxRuntime.jsx)(_ChartsAxis.ChartsAxis, (0, _extends2.default)({}, chartsAxisProps)), /*#__PURE__*/(0, _jsxRuntime.jsx)(_ChartZoomSlider.ChartZoomSlider, {}), /*#__PURE__*/(0, _jsxRuntime.jsx)("g", {
90
91
  "data-drawing-container": true,
91
92
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_LineChart.MarkPlot, (0, _extends2.default)({}, markPlotProps))
92
- }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_LineChart.LineHighlightPlot, (0, _extends2.default)({}, lineHighlightPlotProps)), /*#__PURE__*/(0, _jsxRuntime.jsx)(_ChartsClipPath.ChartsClipPath, (0, _extends2.default)({}, clipPathProps)), children]
93
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_LineChart.LineHighlightPlot, (0, _extends2.default)({}, lineHighlightPlotProps)), /*#__PURE__*/(0, _jsxRuntime.jsx)(_ChartsBrushOverlay.ChartsBrushOverlay, {}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_ChartsClipPath.ChartsClipPath, (0, _extends2.default)({}, clipPathProps)), children]
93
94
  })), !props.loading && /*#__PURE__*/(0, _jsxRuntime.jsx)(Tooltip, (0, _extends2.default)({}, props.slotProps?.tooltip))]
94
95
  }))
95
96
  }));
@@ -1456,7 +1457,7 @@ process.env.NODE_ENV !== "production" ? LineChartPro.propTypes = {
1456
1457
  requiredKeys: _propTypes.default.arrayOf(_propTypes.default.string),
1457
1458
  type: _propTypes.default.oneOf(['pressAndDrag']).isRequired
1458
1459
  })]).isRequired),
1459
- zoom: _propTypes.default.arrayOf(_propTypes.default.oneOfType([_propTypes.default.oneOf(['pinch', 'tapAndDrag', 'wheel']), _propTypes.default.shape({
1460
+ zoom: _propTypes.default.arrayOf(_propTypes.default.oneOfType([_propTypes.default.oneOf(['brush', 'doubleTapReset', 'pinch', 'tapAndDrag', 'wheel']), _propTypes.default.shape({
1460
1461
  pointerMode: _propTypes.default.any,
1461
1462
  requiredKeys: _propTypes.default.arrayOf(_propTypes.default.string),
1462
1463
  type: _propTypes.default.oneOf(['wheel']).isRequired
@@ -1468,6 +1469,14 @@ process.env.NODE_ENV !== "production" ? LineChartPro.propTypes = {
1468
1469
  pointerMode: _propTypes.default.oneOf(['mouse', 'touch']),
1469
1470
  requiredKeys: _propTypes.default.arrayOf(_propTypes.default.string),
1470
1471
  type: _propTypes.default.oneOf(['tapAndDrag']).isRequired
1472
+ }), _propTypes.default.shape({
1473
+ pointerMode: _propTypes.default.oneOf(['mouse', 'touch']),
1474
+ requiredKeys: _propTypes.default.arrayOf(_propTypes.default.string),
1475
+ type: _propTypes.default.oneOf(['doubleTapReset']).isRequired
1476
+ }), _propTypes.default.shape({
1477
+ pointerMode: _propTypes.default.any,
1478
+ requiredKeys: _propTypes.default.array,
1479
+ type: _propTypes.default.oneOf(['brush']).isRequired
1471
1480
  })]).isRequired)
1472
1481
  })
1473
1482
  } : void 0;
@@ -1,5 +1,5 @@
1
1
  import { UseChartZAxisSignature, UseChartCartesianAxisSignature, UseChartInteractionSignature, UseChartHighlightSignature, UseChartKeyboardNavigationSignature, UseChartBrushSignature, ConvertSignaturesIntoPlugins } from '@mui/x-charts/internals';
2
2
  import { UseChartProExportSignature } from "../internals/plugins/useChartProExport/index.js";
3
3
  import { UseChartProZoomSignature } from "../internals/plugins/useChartProZoom/index.js";
4
- export type LineChartProPluginSignatures = [UseChartZAxisSignature, UseChartBrushSignature, UseChartCartesianAxisSignature<'line'>, UseChartInteractionSignature, UseChartHighlightSignature, UseChartKeyboardNavigationSignature, UseChartProZoomSignature, UseChartProExportSignature];
4
+ export type LineChartProPluginSignatures = [UseChartZAxisSignature, UseChartBrushSignature, UseChartInteractionSignature, UseChartCartesianAxisSignature<'line'>, UseChartHighlightSignature, UseChartKeyboardNavigationSignature, UseChartProZoomSignature, UseChartProExportSignature];
5
5
  export declare const LINE_CHART_PRO_PLUGINS: ConvertSignaturesIntoPlugins<LineChartProPluginSignatures>;
@@ -7,4 +7,4 @@ exports.LINE_CHART_PRO_PLUGINS = void 0;
7
7
  var _internals = require("@mui/x-charts/internals");
8
8
  var _useChartProExport = require("../internals/plugins/useChartProExport");
9
9
  var _useChartProZoom = require("../internals/plugins/useChartProZoom");
10
- const LINE_CHART_PRO_PLUGINS = exports.LINE_CHART_PRO_PLUGINS = [_internals.useChartZAxis, _internals.useChartBrush, _internals.useChartCartesianAxis, _internals.useChartInteraction, _internals.useChartHighlight, _internals.useChartKeyboardNavigation, _useChartProZoom.useChartProZoom, _useChartProExport.useChartProExport];
10
+ const LINE_CHART_PRO_PLUGINS = exports.LINE_CHART_PRO_PLUGINS = [_internals.useChartZAxis, _internals.useChartBrush, _internals.useChartInteraction, _internals.useChartCartesianAxis, _internals.useChartHighlight, _internals.useChartKeyboardNavigation, _useChartProZoom.useChartProZoom, _useChartProExport.useChartProExport];
@@ -1,4 +1,4 @@
1
1
  import { ConvertSignaturesIntoPlugins, UseChartHighlightSignature, UseChartInteractionSignature, UseChartPolarAxisSignature } from '@mui/x-charts/internals';
2
2
  import { UseChartProExportSignature } from "../internals/plugins/useChartProExport/index.js";
3
- export type RadarChartProPluginSignatures = [UseChartPolarAxisSignature, UseChartInteractionSignature, UseChartHighlightSignature, UseChartProExportSignature];
3
+ export type RadarChartProPluginSignatures = [UseChartInteractionSignature, UseChartPolarAxisSignature, UseChartHighlightSignature, UseChartProExportSignature];
4
4
  export declare const RADAR_CHART_PRO_PLUGINS: ConvertSignaturesIntoPlugins<RadarChartProPluginSignatures>;
@@ -6,4 +6,4 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.RADAR_CHART_PRO_PLUGINS = void 0;
7
7
  var _internals = require("@mui/x-charts/internals");
8
8
  var _useChartProExport = require("../internals/plugins/useChartProExport");
9
- const RADAR_CHART_PRO_PLUGINS = exports.RADAR_CHART_PRO_PLUGINS = [_internals.useChartPolarAxis, _internals.useChartInteraction, _internals.useChartHighlight, _useChartProExport.useChartProExport];
9
+ const RADAR_CHART_PRO_PLUGINS = exports.RADAR_CHART_PRO_PLUGINS = [_internals.useChartInteraction, _internals.useChartPolarAxis, _internals.useChartHighlight, _useChartProExport.useChartProExport];
@@ -30,6 +30,11 @@ process.env.NODE_ENV !== "production" ? SankeyTooltip.propTypes = {
30
30
  // | These PropTypes are generated from the TypeScript type definitions |
31
31
  // | To update them edit the TypeScript types and run "pnpm proptypes" |
32
32
  // ----------------------------------------------------------------------
33
+ /**
34
+ * Determine if the tooltip should be placed on the pointer location or on the node.
35
+ * @default 'pointer'
36
+ */
37
+ anchor: _propTypes.default.oneOf(['node', 'pointer']),
33
38
  /**
34
39
  * An HTML element, [virtualElement](https://popper.js.org/docs/v2/virtual-elements/),
35
40
  * or a function that returns either.
@@ -178,6 +183,10 @@ process.env.NODE_ENV !== "production" ? SankeyTooltip.propTypes = {
178
183
  update: _propTypes.default.func.isRequired
179
184
  })
180
185
  })]),
186
+ /**
187
+ * Determines the tooltip position relatively to the anchor.
188
+ */
189
+ position: _propTypes.default.oneOf(['bottom', 'left', 'right', 'top']),
181
190
  /**
182
191
  * The props used for each slot inside the Popper.
183
192
  * @default {}
@@ -22,6 +22,7 @@ var _ChartsAxisHighlight = require("@mui/x-charts/ChartsAxisHighlight");
22
22
  var _ChartsTooltip = require("@mui/x-charts/ChartsTooltip");
23
23
  var _internals = require("@mui/x-charts/internals");
24
24
  var _ChartsWrapper = require("@mui/x-charts/ChartsWrapper");
25
+ var _ChartsBrushOverlay = require("@mui/x-charts/ChartsBrushOverlay");
25
26
  var _ChartZoomSlider = require("../ChartZoomSlider");
26
27
  var _ChartsToolbarPro = require("../ChartsToolbarPro");
27
28
  var _useChartContainerProProps = require("../ChartContainerPro/useChartContainerProProps");
@@ -81,7 +82,7 @@ const ScatterChartPro = exports.ScatterChartPro = /*#__PURE__*/React.forwardRef(
81
82
  children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_ChartsAxis.ChartsAxis, (0, _extends2.default)({}, chartsAxisProps)), /*#__PURE__*/(0, _jsxRuntime.jsx)(_ChartZoomSlider.ChartZoomSlider, {}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_ChartsGrid.ChartsGrid, (0, _extends2.default)({}, gridProps)), /*#__PURE__*/(0, _jsxRuntime.jsx)("g", {
82
83
  "data-drawing-container": true,
83
84
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_ScatterChart.ScatterPlot, (0, _extends2.default)({}, scatterPlotProps))
84
- }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_ChartsOverlay.ChartsOverlay, (0, _extends2.default)({}, overlayProps)), /*#__PURE__*/(0, _jsxRuntime.jsx)(_ChartsAxisHighlight.ChartsAxisHighlight, (0, _extends2.default)({}, axisHighlightProps)), children]
85
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_ChartsOverlay.ChartsOverlay, (0, _extends2.default)({}, overlayProps)), /*#__PURE__*/(0, _jsxRuntime.jsx)(_ChartsAxisHighlight.ChartsAxisHighlight, (0, _extends2.default)({}, axisHighlightProps)), /*#__PURE__*/(0, _jsxRuntime.jsx)(_ChartsBrushOverlay.ChartsBrushOverlay, {}), children]
85
86
  })), !props.loading && /*#__PURE__*/(0, _jsxRuntime.jsx)(Tooltip, (0, _extends2.default)({
86
87
  trigger: "item"
87
88
  }, props.slotProps?.tooltip))]
@@ -1438,7 +1439,7 @@ process.env.NODE_ENV !== "production" ? ScatterChartPro.propTypes = {
1438
1439
  requiredKeys: _propTypes.default.arrayOf(_propTypes.default.string),
1439
1440
  type: _propTypes.default.oneOf(['pressAndDrag']).isRequired
1440
1441
  })]).isRequired),
1441
- zoom: _propTypes.default.arrayOf(_propTypes.default.oneOfType([_propTypes.default.oneOf(['pinch', 'tapAndDrag', 'wheel']), _propTypes.default.shape({
1442
+ zoom: _propTypes.default.arrayOf(_propTypes.default.oneOfType([_propTypes.default.oneOf(['brush', 'doubleTapReset', 'pinch', 'tapAndDrag', 'wheel']), _propTypes.default.shape({
1442
1443
  pointerMode: _propTypes.default.any,
1443
1444
  requiredKeys: _propTypes.default.arrayOf(_propTypes.default.string),
1444
1445
  type: _propTypes.default.oneOf(['wheel']).isRequired
@@ -1450,6 +1451,14 @@ process.env.NODE_ENV !== "production" ? ScatterChartPro.propTypes = {
1450
1451
  pointerMode: _propTypes.default.oneOf(['mouse', 'touch']),
1451
1452
  requiredKeys: _propTypes.default.arrayOf(_propTypes.default.string),
1452
1453
  type: _propTypes.default.oneOf(['tapAndDrag']).isRequired
1454
+ }), _propTypes.default.shape({
1455
+ pointerMode: _propTypes.default.oneOf(['mouse', 'touch']),
1456
+ requiredKeys: _propTypes.default.arrayOf(_propTypes.default.string),
1457
+ type: _propTypes.default.oneOf(['doubleTapReset']).isRequired
1458
+ }), _propTypes.default.shape({
1459
+ pointerMode: _propTypes.default.any,
1460
+ requiredKeys: _propTypes.default.array,
1461
+ type: _propTypes.default.oneOf(['brush']).isRequired
1453
1462
  })]).isRequired)
1454
1463
  })
1455
1464
  } : void 0;