@mui/x-charts-pro 8.0.0-alpha.0 → 8.0.0-alpha.10

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 (188) hide show
  1. package/BarChartPro/BarChartPro.d.ts +2 -2
  2. package/BarChartPro/BarChartPro.js +74 -61
  3. package/CHANGELOG.md +2215 -119
  4. package/ChartContainerPro/ChartContainerPro.d.ts +33 -4
  5. package/ChartContainerPro/ChartContainerPro.js +59 -51
  6. package/ChartContainerPro/useChartContainerProProps.d.ts +7 -43
  7. package/ChartContainerPro/useChartContainerProProps.js +15 -9
  8. package/ChartDataProviderPro/ChartDataProviderPro.d.ts +37 -0
  9. package/{context/ChartDataProviderPro → ChartDataProviderPro}/ChartDataProviderPro.js +71 -80
  10. package/{context → ChartDataProviderPro}/package.json +1 -1
  11. package/ChartDataProviderPro/useChartDataProviderProProps.d.ts +8 -0
  12. package/ChartDataProviderPro/useChartDataProviderProProps.js +15 -0
  13. package/Heatmap/Heatmap.d.ts +11 -4
  14. package/Heatmap/Heatmap.js +35 -43
  15. package/Heatmap/HeatmapItem.js +1 -1
  16. package/Heatmap/HeatmapTooltip.d.ts +9 -0
  17. package/Heatmap/HeatmapTooltip.js +274 -0
  18. package/Heatmap/extremums.d.ts +2 -2
  19. package/Heatmap/formatter.d.ts +2 -2
  20. package/Heatmap/formatter.js +2 -1
  21. package/Heatmap/heatmapClasses.js +2 -1
  22. package/Heatmap/index.d.ts +1 -1
  23. package/Heatmap/index.js +1 -1
  24. package/Heatmap/plugin.d.ts +2 -2
  25. package/Heatmap/plugin.js +4 -2
  26. package/Heatmap/tooltip.d.ts +3 -0
  27. package/Heatmap/tooltip.js +25 -0
  28. package/LineChartPro/LineChartPro.d.ts +2 -2
  29. package/LineChartPro/LineChartPro.js +80 -82
  30. package/README.md +3 -3
  31. package/ScatterChartPro/ScatterChartPro.d.ts +2 -2
  32. package/ScatterChartPro/ScatterChartPro.js +51 -64
  33. package/hooks/index.d.ts +1 -0
  34. package/hooks/index.js +2 -1
  35. package/hooks/useSeries.d.ts +2 -4
  36. package/hooks/zoom/index.d.ts +1 -0
  37. package/hooks/zoom/index.js +1 -0
  38. package/hooks/zoom/useIsZoomInteracting.d.ts +6 -0
  39. package/hooks/zoom/useIsZoomInteracting.js +14 -0
  40. package/index.d.ts +3 -1
  41. package/index.js +5 -5
  42. package/internals/plugins/allPlugins.d.ts +11 -0
  43. package/internals/plugins/allPlugins.js +5 -0
  44. package/internals/plugins/useChartProZoom/creatZoomLookup.d.ts +3 -0
  45. package/internals/plugins/useChartProZoom/creatZoomLookup.js +12 -0
  46. package/internals/plugins/useChartProZoom/defaultizeZoom.d.ts +2 -0
  47. package/internals/plugins/useChartProZoom/defaultizeZoom.js +25 -0
  48. package/internals/plugins/useChartProZoom/index.d.ts +3 -0
  49. package/internals/plugins/useChartProZoom/index.js +3 -0
  50. package/internals/plugins/useChartProZoom/useChartProZoom.d.ts +3 -0
  51. package/internals/plugins/useChartProZoom/useChartProZoom.js +303 -0
  52. package/internals/plugins/useChartProZoom/useChartProZoom.selectors.d.ts +377 -0
  53. package/internals/plugins/useChartProZoom/useChartProZoom.selectors.js +10 -0
  54. package/internals/plugins/useChartProZoom/useChartProZoom.types.d.ts +50 -0
  55. package/internals/plugins/useChartProZoom/useChartProZoom.utils.d.ts +45 -0
  56. package/internals/plugins/useChartProZoom/useChartProZoom.utils.js +126 -0
  57. package/internals/plugins/useChartProZoom/zoom.types.d.ts +53 -0
  58. package/internals/utils/releaseInfo.js +2 -2
  59. package/models/index.d.ts +1 -0
  60. package/models/index.js +2 -1
  61. package/modern/BarChartPro/BarChartPro.js +74 -61
  62. package/modern/ChartContainerPro/ChartContainerPro.js +59 -51
  63. package/modern/ChartContainerPro/useChartContainerProProps.js +15 -9
  64. package/modern/{context/ChartDataProviderPro → ChartDataProviderPro}/ChartDataProviderPro.js +71 -80
  65. package/modern/ChartDataProviderPro/useChartDataProviderProProps.js +15 -0
  66. package/modern/Heatmap/Heatmap.js +35 -43
  67. package/modern/Heatmap/HeatmapItem.js +1 -1
  68. package/modern/Heatmap/HeatmapTooltip.js +274 -0
  69. package/modern/Heatmap/formatter.js +2 -1
  70. package/modern/Heatmap/heatmapClasses.js +2 -1
  71. package/modern/Heatmap/index.js +1 -1
  72. package/modern/Heatmap/plugin.js +4 -2
  73. package/modern/Heatmap/tooltip.js +25 -0
  74. package/modern/LineChartPro/LineChartPro.js +80 -82
  75. package/modern/ScatterChartPro/ScatterChartPro.js +51 -64
  76. package/modern/hooks/index.js +2 -1
  77. package/modern/hooks/zoom/index.js +1 -0
  78. package/modern/hooks/zoom/useIsZoomInteracting.js +14 -0
  79. package/modern/index.js +5 -5
  80. package/modern/internals/plugins/allPlugins.js +5 -0
  81. package/modern/internals/plugins/useChartProZoom/creatZoomLookup.js +12 -0
  82. package/modern/internals/plugins/useChartProZoom/defaultizeZoom.js +25 -0
  83. package/modern/internals/plugins/useChartProZoom/index.js +3 -0
  84. package/modern/internals/plugins/useChartProZoom/useChartProZoom.js +303 -0
  85. package/modern/internals/plugins/useChartProZoom/useChartProZoom.selectors.js +10 -0
  86. package/modern/internals/plugins/useChartProZoom/useChartProZoom.types.js +1 -0
  87. package/modern/internals/plugins/useChartProZoom/useChartProZoom.utils.js +126 -0
  88. package/modern/internals/plugins/useChartProZoom/zoom.types.js +1 -0
  89. package/modern/internals/utils/releaseInfo.js +2 -2
  90. package/modern/models/index.js +2 -1
  91. package/node/BarChartPro/BarChartPro.js +73 -60
  92. package/node/ChartContainerPro/ChartContainerPro.js +58 -50
  93. package/node/ChartContainerPro/useChartContainerProProps.js +15 -9
  94. package/node/{context/ChartDataProviderPro → ChartDataProviderPro}/ChartDataProviderPro.js +70 -79
  95. package/node/ChartDataProviderPro/useChartDataProviderProProps.js +21 -0
  96. package/node/Heatmap/Heatmap.js +35 -43
  97. package/node/Heatmap/HeatmapItem.js +2 -2
  98. package/node/Heatmap/HeatmapTooltip.js +280 -0
  99. package/node/Heatmap/formatter.js +2 -1
  100. package/node/Heatmap/heatmapClasses.js +5 -4
  101. package/node/Heatmap/index.js +4 -4
  102. package/node/Heatmap/plugin.js +4 -2
  103. package/node/Heatmap/tooltip.js +31 -0
  104. package/node/LineChartPro/LineChartPro.js +79 -81
  105. package/node/ScatterChartPro/ScatterChartPro.js +50 -63
  106. package/node/hooks/index.js +16 -1
  107. package/node/{context/CartesianProviderPro → hooks/zoom}/index.js +4 -4
  108. package/node/hooks/zoom/useIsZoomInteracting.js +19 -0
  109. package/node/index.js +34 -12
  110. package/node/internals/plugins/allPlugins.js +11 -0
  111. package/node/internals/plugins/useChartProZoom/creatZoomLookup.js +19 -0
  112. package/node/internals/plugins/useChartProZoom/defaultizeZoom.js +33 -0
  113. package/node/internals/plugins/useChartProZoom/index.js +38 -0
  114. package/node/internals/plugins/useChartProZoom/useChartProZoom.js +310 -0
  115. package/node/internals/plugins/useChartProZoom/useChartProZoom.selectors.js +18 -0
  116. package/node/internals/plugins/useChartProZoom/useChartProZoom.utils.js +140 -0
  117. package/node/internals/plugins/useChartProZoom/zoom.types.js +5 -0
  118. package/node/internals/utils/releaseInfo.js +4 -3
  119. package/package.json +8 -8
  120. package/typeOverloads/modules.d.ts +8 -1
  121. package/Heatmap/DefaultHeatmapTooltip.d.ts +0 -7
  122. package/Heatmap/DefaultHeatmapTooltip.js +0 -99
  123. package/context/CartesianProviderPro/CartesianProviderPro.d.ts +0 -6
  124. package/context/CartesianProviderPro/CartesianProviderPro.js +0 -89
  125. package/context/CartesianProviderPro/createAxisFilterMapper.d.ts +0 -12
  126. package/context/CartesianProviderPro/createAxisFilterMapper.js +0 -60
  127. package/context/CartesianProviderPro/index.d.ts +0 -1
  128. package/context/CartesianProviderPro/index.js +0 -1
  129. package/context/ChartDataProviderPro/ChartDataProviderPro.d.ts +0 -7
  130. package/context/ChartDataProviderPro/useChartDataProviderProProps.d.ts +0 -16
  131. package/context/ChartDataProviderPro/useChartDataProviderProProps.js +0 -43
  132. package/context/ZoomProvider/Zoom.types.d.ts +0 -144
  133. package/context/ZoomProvider/ZoomContext.d.ts +0 -4
  134. package/context/ZoomProvider/ZoomContext.js +0 -16
  135. package/context/ZoomProvider/ZoomProvider.d.ts +0 -3
  136. package/context/ZoomProvider/ZoomProvider.js +0 -56
  137. package/context/ZoomProvider/ZoomSetup.d.ts +0 -9
  138. package/context/ZoomProvider/ZoomSetup.js +0 -16
  139. package/context/ZoomProvider/defaultizeZoom.d.ts +0 -2
  140. package/context/ZoomProvider/defaultizeZoom.js +0 -32
  141. package/context/ZoomProvider/index.d.ts +0 -3
  142. package/context/ZoomProvider/index.js +0 -3
  143. package/context/ZoomProvider/initializeZoomData.d.ts +0 -6
  144. package/context/ZoomProvider/initializeZoomData.js +0 -13
  145. package/context/ZoomProvider/useSetupPan.d.ts +0 -1
  146. package/context/ZoomProvider/useSetupPan.js +0 -106
  147. package/context/ZoomProvider/useSetupZoom.d.ts +0 -1
  148. package/context/ZoomProvider/useSetupZoom.js +0 -274
  149. package/context/ZoomProvider/useZoom.d.ts +0 -7
  150. package/context/ZoomProvider/useZoom.js +0 -19
  151. package/context/index.d.ts +0 -3
  152. package/context/index.js +0 -5
  153. package/modern/Heatmap/DefaultHeatmapTooltip.js +0 -99
  154. package/modern/context/CartesianProviderPro/CartesianProviderPro.js +0 -89
  155. package/modern/context/CartesianProviderPro/createAxisFilterMapper.js +0 -60
  156. package/modern/context/CartesianProviderPro/index.js +0 -1
  157. package/modern/context/ChartDataProviderPro/useChartDataProviderProProps.js +0 -43
  158. package/modern/context/ZoomProvider/ZoomContext.js +0 -16
  159. package/modern/context/ZoomProvider/ZoomProvider.js +0 -56
  160. package/modern/context/ZoomProvider/ZoomSetup.js +0 -16
  161. package/modern/context/ZoomProvider/defaultizeZoom.js +0 -32
  162. package/modern/context/ZoomProvider/index.js +0 -3
  163. package/modern/context/ZoomProvider/initializeZoomData.js +0 -13
  164. package/modern/context/ZoomProvider/useSetupPan.js +0 -106
  165. package/modern/context/ZoomProvider/useSetupZoom.js +0 -274
  166. package/modern/context/ZoomProvider/useZoom.js +0 -19
  167. package/modern/context/index.js +0 -5
  168. package/node/Heatmap/DefaultHeatmapTooltip.js +0 -105
  169. package/node/context/CartesianProviderPro/CartesianProviderPro.js +0 -95
  170. package/node/context/CartesianProviderPro/createAxisFilterMapper.js +0 -68
  171. package/node/context/ChartDataProviderPro/useChartDataProviderProProps.js +0 -50
  172. package/node/context/ZoomProvider/ZoomContext.js +0 -23
  173. package/node/context/ZoomProvider/ZoomProvider.js +0 -63
  174. package/node/context/ZoomProvider/ZoomSetup.js +0 -20
  175. package/node/context/ZoomProvider/defaultizeZoom.js +0 -40
  176. package/node/context/ZoomProvider/index.js +0 -38
  177. package/node/context/ZoomProvider/initializeZoomData.js +0 -20
  178. package/node/context/ZoomProvider/useSetupPan.js +0 -114
  179. package/node/context/ZoomProvider/useSetupZoom.js +0 -281
  180. package/node/context/ZoomProvider/useZoom.js +0 -25
  181. package/node/context/index.js +0 -27
  182. /package/{context/ChartDataProviderPro → ChartDataProviderPro}/index.d.ts +0 -0
  183. /package/{context/ChartDataProviderPro → ChartDataProviderPro}/index.js +0 -0
  184. /package/{context/ZoomProvider/Zoom.types.js → internals/plugins/useChartProZoom/useChartProZoom.types.js} +0 -0
  185. /package/{modern/context/ZoomProvider/Zoom.types.js → internals/plugins/useChartProZoom/zoom.types.js} +0 -0
  186. /package/modern/{context/ChartDataProviderPro → ChartDataProviderPro}/index.js +0 -0
  187. /package/node/{context/ChartDataProviderPro → ChartDataProviderPro}/index.js +0 -0
  188. /package/node/{context/ZoomProvider/Zoom.types.js → internals/plugins/useChartProZoom/useChartProZoom.types.js} +0 -0
@@ -0,0 +1,126 @@
1
+ /**
2
+ * Helper to get the range (in percents of a reference range) corresponding to a given scale.
3
+ * @param centerRatio {number} The ratio of the point that should not move between the previous and next range.
4
+ * @param scaleRatio {number} The target scale ratio.
5
+ * @returns The range to display.
6
+ */
7
+ export const zoomAtPoint = (centerRatio, scaleRatio, currentZoomData, options) => {
8
+ const MIN_RANGE = options.minStart;
9
+ const MAX_RANGE = options.maxEnd;
10
+ const MIN_ALLOWED_SPAN = options.minSpan;
11
+ const minRange = currentZoomData.start;
12
+ const maxRange = currentZoomData.end;
13
+ const point = minRange + centerRatio * (maxRange - minRange);
14
+ let newMinRange = (minRange + point * (scaleRatio - 1)) / scaleRatio;
15
+ let newMaxRange = (maxRange + point * (scaleRatio - 1)) / scaleRatio;
16
+ let minSpillover = 0;
17
+ let maxSpillover = 0;
18
+ if (newMinRange < MIN_RANGE) {
19
+ minSpillover = Math.abs(newMinRange);
20
+ newMinRange = MIN_RANGE;
21
+ }
22
+ if (newMaxRange > MAX_RANGE) {
23
+ maxSpillover = Math.abs(newMaxRange - MAX_RANGE);
24
+ newMaxRange = MAX_RANGE;
25
+ }
26
+ if (minSpillover > 0 && maxSpillover > 0) {
27
+ return [MIN_RANGE, MAX_RANGE];
28
+ }
29
+ newMaxRange += minSpillover;
30
+ newMinRange -= maxSpillover;
31
+ newMinRange = Math.min(MAX_RANGE - MIN_ALLOWED_SPAN, Math.max(MIN_RANGE, newMinRange));
32
+ newMaxRange = Math.max(MIN_ALLOWED_SPAN, Math.min(MAX_RANGE, newMaxRange));
33
+ return [newMinRange, newMaxRange];
34
+ };
35
+
36
+ /**
37
+ * Checks if the new span is valid.
38
+ */
39
+ export function isSpanValid(minRange, maxRange, isZoomIn, option) {
40
+ const newSpanPercent = maxRange - minRange;
41
+ if (isZoomIn && newSpanPercent < option.minSpan || !isZoomIn && newSpanPercent > option.maxSpan) {
42
+ return false;
43
+ }
44
+ if (minRange < option.minStart || maxRange > option.maxEnd) {
45
+ return false;
46
+ }
47
+ return true;
48
+ }
49
+ function getMultiplier(event) {
50
+ const ctrlMultiplier = event.ctrlKey ? 3 : 1;
51
+
52
+ // DeltaMode: 0 is pixel, 1 is line, 2 is page
53
+ // This is defined by the browser.
54
+ if (event.deltaMode === 1) {
55
+ return 1 * ctrlMultiplier;
56
+ }
57
+ if (event.deltaMode) {
58
+ return 10 * ctrlMultiplier;
59
+ }
60
+ return 0.2 * ctrlMultiplier;
61
+ }
62
+
63
+ /**
64
+ * Get the scale ratio and if it's a zoom in or out from a wheel event.
65
+ */
66
+ export function getWheelScaleRatio(event, step) {
67
+ const deltaY = -event.deltaY;
68
+ const multiplier = getMultiplier(event);
69
+ const scaledStep = step * multiplier * deltaY / 1000;
70
+ // Clamp the scale ratio between 0.1 and 1.9 so that the zoom is not too big or too small.
71
+ const scaleRatio = Math.min(Math.max(1 + scaledStep, 0.1), 1.9);
72
+ const isZoomIn = deltaY > 0;
73
+ return {
74
+ scaleRatio,
75
+ isZoomIn
76
+ };
77
+ }
78
+
79
+ /**
80
+ * Get the scale ratio and if it's a zoom in or out from a pinch gesture.
81
+ */
82
+ export function getPinchScaleRatio(curDiff, prevDiff, step) {
83
+ const scaledStep = step / 1000;
84
+ let scaleRatio = 0;
85
+ let isZoomIn = false;
86
+ const hasMoved = prevDiff > 0;
87
+ if (hasMoved && curDiff > prevDiff) {
88
+ // The distance between the two pointers has increased
89
+ scaleRatio = 1 + scaledStep;
90
+ isZoomIn = true;
91
+ }
92
+ if (hasMoved && curDiff < prevDiff) {
93
+ // The distance between the two pointers has decreased
94
+ scaleRatio = 1 - scaledStep;
95
+ isZoomIn = false;
96
+ }
97
+ return {
98
+ scaleRatio,
99
+ isZoomIn
100
+ };
101
+ }
102
+ export function getDiff(eventCache) {
103
+ const [firstEvent, secondEvent] = eventCache;
104
+ return Math.hypot(firstEvent.pageX - secondEvent.pageX, firstEvent.pageY - secondEvent.pageY);
105
+ }
106
+
107
+ /**
108
+ * Get the ratio of the point in the horizontal center of the area.
109
+ */
110
+ export function getHorizontalCenterRatio(point, area) {
111
+ const {
112
+ left,
113
+ width
114
+ } = area;
115
+ return (point.x - left) / width;
116
+ }
117
+ export function preventDefault(event) {
118
+ event.preventDefault();
119
+ }
120
+ export function getVerticalCenterRatio(point, area) {
121
+ const {
122
+ top,
123
+ height
124
+ } = area;
125
+ return (point.y - top) / height * -1 + 1;
126
+ }
@@ -1,6 +1,6 @@
1
- import { ponyfillGlobal } from '@mui/utils';
1
+ import ponyfillGlobal from '@mui/utils/ponyfillGlobal';
2
2
  export const getReleaseInfo = () => {
3
- const releaseInfo = "MTczMTUzODgwMDAwMA==";
3
+ const releaseInfo = "MTczODI5OTYwMDAwMA==";
4
4
  if (process.env.NODE_ENV !== 'production') {
5
5
  // A simple hack to set the value in the test environment (has no build step).
6
6
  // eslint-disable-next-line no-useless-concat
@@ -1 +1,2 @@
1
- export * from "./seriesType/index.js";
1
+ export * from "./seriesType/index.js";
2
+ export {};
@@ -22,17 +22,16 @@ var _ChartsAxisHighlight = require("@mui/x-charts/ChartsAxisHighlight");
22
22
  var _ChartsTooltip = require("@mui/x-charts/ChartsTooltip");
23
23
  var _ChartsClipPath = require("@mui/x-charts/ChartsClipPath");
24
24
  var _internals = require("@mui/x-charts/internals");
25
- var _ChartContainerPro = require("../ChartContainerPro");
26
- var _ZoomSetup = require("../context/ZoomProvider/ZoomSetup");
27
- var _useZoom = require("../context/ZoomProvider/useZoom");
25
+ var _ChartsSurface = require("@mui/x-charts/ChartsSurface");
26
+ var _zoom = require("../hooks/zoom");
27
+ var _useChartContainerProProps = require("../ChartContainerPro/useChartContainerProProps");
28
+ var _ChartDataProviderPro = require("../ChartDataProviderPro");
28
29
  var _jsxRuntime = require("react/jsx-runtime");
29
- const _excluded = ["zoom", "onZoomChange"];
30
+ const _excluded = ["initialZoom", "onZoomChange", "apiRef"];
30
31
  function BarChartPlotZoom(props) {
31
- const {
32
- isInteracting
33
- } = (0, _useZoom.useZoom)();
32
+ const isInteracting = (0, _zoom.useIsZoomInteracting)();
34
33
  return /*#__PURE__*/(0, _jsxRuntime.jsx)(_BarChart.BarPlot, (0, _extends2.default)({}, props, {
35
- skipAnimation: isInteracting || undefined
34
+ skipAnimation: isInteracting || props.skipAnimation
36
35
  }));
37
36
  }
38
37
  process.env.NODE_ENV !== "production" ? BarChartPlotZoom.propTypes = {
@@ -91,11 +90,13 @@ const BarChartPro = exports.BarChartPro = /*#__PURE__*/React.forwardRef(function
91
90
  name: 'MuiBarChartPro'
92
91
  });
93
92
  const {
94
- zoom,
95
- onZoomChange
93
+ initialZoom,
94
+ onZoomChange,
95
+ apiRef
96
96
  } = props,
97
97
  other = (0, _objectWithoutPropertiesLoose2.default)(props, _excluded);
98
98
  const {
99
+ chartsWrapperProps,
99
100
  chartContainerProps,
100
101
  barPlotProps,
101
102
  axisClickHandlerProps,
@@ -106,17 +107,25 @@ const BarChartPro = exports.BarChartPro = /*#__PURE__*/React.forwardRef(function
106
107
  chartsAxisProps,
107
108
  axisHighlightProps,
108
109
  legendProps,
109
- tooltipProps,
110
110
  children
111
111
  } = (0, _internals.useBarChartProps)(other);
112
- return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_ChartContainerPro.ChartContainerPro, (0, _extends2.default)({
113
- ref: ref
114
- }, chartContainerProps, {
115
- zoom: zoom,
116
- onZoomChange: onZoomChange,
117
- children: [props.onAxisClick && /*#__PURE__*/(0, _jsxRuntime.jsx)(_ChartsOnAxisClickHandler.ChartsOnAxisClickHandler, (0, _extends2.default)({}, axisClickHandlerProps)), /*#__PURE__*/(0, _jsxRuntime.jsx)(_ChartsGrid.ChartsGrid, (0, _extends2.default)({}, gridProps)), /*#__PURE__*/(0, _jsxRuntime.jsxs)("g", (0, _extends2.default)({}, clipPathGroupProps, {
118
- children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(BarChartPlotZoom, (0, _extends2.default)({}, barPlotProps)), /*#__PURE__*/(0, _jsxRuntime.jsx)(_ChartsOverlay.ChartsOverlay, (0, _extends2.default)({}, overlayProps)), /*#__PURE__*/(0, _jsxRuntime.jsx)(_ChartsAxisHighlight.ChartsAxisHighlight, (0, _extends2.default)({}, axisHighlightProps))]
119
- })), /*#__PURE__*/(0, _jsxRuntime.jsx)(_ChartsAxis.ChartsAxis, (0, _extends2.default)({}, chartsAxisProps)), !props.hideLegend && /*#__PURE__*/(0, _jsxRuntime.jsx)(_ChartsLegend.ChartsLegend, (0, _extends2.default)({}, legendProps)), !props.loading && /*#__PURE__*/(0, _jsxRuntime.jsx)(_ChartsTooltip.ChartsTooltip, (0, _extends2.default)({}, tooltipProps)), /*#__PURE__*/(0, _jsxRuntime.jsx)(_ChartsClipPath.ChartsClipPath, (0, _extends2.default)({}, clipPathProps)), /*#__PURE__*/(0, _jsxRuntime.jsx)(_ZoomSetup.ZoomSetup, {}), children]
112
+ const {
113
+ chartDataProviderProProps,
114
+ chartsSurfaceProps
115
+ } = (0, _useChartContainerProProps.useChartContainerProProps)((0, _extends2.default)({}, chartContainerProps, {
116
+ initialZoom,
117
+ onZoomChange,
118
+ apiRef
119
+ }), ref);
120
+ const Tooltip = props.slots?.tooltip ?? _ChartsTooltip.ChartsTooltip;
121
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_ChartDataProviderPro.ChartDataProviderPro, (0, _extends2.default)({}, chartDataProviderProProps, {
122
+ children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_internals.ChartsWrapper, (0, _extends2.default)({}, chartsWrapperProps, {
123
+ children: [!props.hideLegend && /*#__PURE__*/(0, _jsxRuntime.jsx)(_ChartsLegend.ChartsLegend, (0, _extends2.default)({}, legendProps)), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_ChartsSurface.ChartsSurface, (0, _extends2.default)({}, chartsSurfaceProps, {
124
+ children: [props.onAxisClick && /*#__PURE__*/(0, _jsxRuntime.jsx)(_ChartsOnAxisClickHandler.ChartsOnAxisClickHandler, (0, _extends2.default)({}, axisClickHandlerProps)), /*#__PURE__*/(0, _jsxRuntime.jsx)(_ChartsGrid.ChartsGrid, (0, _extends2.default)({}, gridProps)), /*#__PURE__*/(0, _jsxRuntime.jsxs)("g", (0, _extends2.default)({}, clipPathGroupProps, {
125
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(BarChartPlotZoom, (0, _extends2.default)({}, barPlotProps)), /*#__PURE__*/(0, _jsxRuntime.jsx)(_ChartsOverlay.ChartsOverlay, (0, _extends2.default)({}, overlayProps)), /*#__PURE__*/(0, _jsxRuntime.jsx)(_ChartsAxisHighlight.ChartsAxisHighlight, (0, _extends2.default)({}, axisHighlightProps))]
126
+ })), /*#__PURE__*/(0, _jsxRuntime.jsx)(_ChartsAxis.ChartsAxis, (0, _extends2.default)({}, chartsAxisProps)), !props.loading && /*#__PURE__*/(0, _jsxRuntime.jsx)(Tooltip, (0, _extends2.default)({}, props.slotProps?.tooltip)), /*#__PURE__*/(0, _jsxRuntime.jsx)(_ChartsClipPath.ChartsClipPath, (0, _extends2.default)({}, clipPathProps)), children]
127
+ }))]
128
+ }))
120
129
  }));
121
130
  });
122
131
  process.env.NODE_ENV !== "production" ? BarChartPro.propTypes = {
@@ -124,11 +133,16 @@ process.env.NODE_ENV !== "production" ? BarChartPro.propTypes = {
124
133
  // | These PropTypes are generated from the TypeScript type definitions |
125
134
  // | To update them edit the TypeScript types and run "pnpm proptypes" |
126
135
  // ----------------------------------------------------------------------
136
+ apiRef: _propTypes.default.shape({
137
+ current: _propTypes.default.shape({
138
+ setZoomData: _propTypes.default.func.isRequired
139
+ })
140
+ }),
127
141
  /**
128
142
  * The configuration of axes highlight.
129
143
  * Default is set to 'band' in the bar direction.
130
144
  * Depends on `layout` prop.
131
- * @see See {@link https://mui.com/x/react-charts/highlighting highlighting docs} for more details.
145
+ * @see See {@link https://mui.com/x/react-charts/highlighting/ highlighting docs} for more details.
132
146
  */
133
147
  axisHighlight: _propTypes.default.shape({
134
148
  x: _propTypes.default.oneOf(['band', 'line', 'none']),
@@ -186,12 +200,26 @@ process.env.NODE_ENV !== "production" ? BarChartPro.propTypes = {
186
200
  */
187
201
  hideLegend: _propTypes.default.bool,
188
202
  /**
189
- * The item currently highlighted. Turns highlighting into a controlled prop.
203
+ * The highlighted item.
204
+ * Used when the highlight is controlled.
190
205
  */
191
206
  highlightedItem: _propTypes.default.shape({
192
207
  dataIndex: _propTypes.default.number,
193
- seriesId: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.string])
208
+ seriesId: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.string]).isRequired
194
209
  }),
210
+ /**
211
+ * This prop is used to help implement the accessibility logic.
212
+ * If you don't provide this prop. It falls back to a randomly generated id.
213
+ */
214
+ id: _propTypes.default.string,
215
+ /**
216
+ * The list of zoom data related to each axis.
217
+ */
218
+ initialZoom: _propTypes.default.arrayOf(_propTypes.default.shape({
219
+ axisId: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.string]).isRequired,
220
+ end: _propTypes.default.number.isRequired,
221
+ start: _propTypes.default.number.isRequired
222
+ })),
195
223
  /**
196
224
  * The direction of the bar elements.
197
225
  * @default 'vertical'
@@ -212,7 +240,6 @@ process.env.NODE_ENV !== "production" ? BarChartPro.propTypes = {
212
240
  * The margin between the SVG and the drawing area.
213
241
  * It's used for leaving some space for extra information such as the x- and y-axis or legend.
214
242
  * Accepts an object with the optional properties: `top`, `bottom`, `left`, and `right`.
215
- * @default object Depends on the charts type.
216
243
  */
217
244
  margin: _propTypes.default.shape({
218
245
  bottom: _propTypes.default.number,
@@ -245,16 +272,6 @@ process.env.NODE_ENV !== "production" ? BarChartPro.propTypes = {
245
272
  * @param {ZoomData[]} zoomData Updated zoom data.
246
273
  */
247
274
  onZoomChange: _propTypes.default.func,
248
- /**
249
- * The chart will try to wait for the parent container to resolve its size
250
- * before it renders for the first time.
251
- *
252
- * This can be useful in some scenarios where the chart appear to grow after
253
- * the first render, like when used inside a grid.
254
- *
255
- * @default false
256
- */
257
- resolveSizeBeforeRender: _propTypes.default.bool,
258
275
  /**
259
276
  * Indicate which axis to display the right of the charts.
260
277
  * Can be a string (the id of the axis) or an object `ChartsYAxisProps`.
@@ -282,31 +299,14 @@ process.env.NODE_ENV !== "production" ? BarChartPro.propTypes = {
282
299
  */
283
300
  slots: _propTypes.default.object,
284
301
  sx: _propTypes.default.oneOfType([_propTypes.default.arrayOf(_propTypes.default.oneOfType([_propTypes.default.func, _propTypes.default.object, _propTypes.default.bool])), _propTypes.default.func, _propTypes.default.object]),
302
+ theme: _propTypes.default.oneOf(['dark', 'light']),
285
303
  title: _propTypes.default.string,
286
- /**
287
- * The configuration of the tooltip.
288
- * @see See {@link https://mui.com/x/react-charts/tooltip/ tooltip docs} for more details.
289
- */
290
- tooltip: _propTypes.default.shape({
291
- axisContent: _propTypes.default.elementType,
292
- classes: _propTypes.default.object,
293
- itemContent: _propTypes.default.elementType,
294
- slotProps: _propTypes.default.object,
295
- slots: _propTypes.default.object,
296
- trigger: _propTypes.default.oneOf(['axis', 'item', 'none'])
297
- }),
298
304
  /**
299
305
  * Indicate which axis to display the top of the charts.
300
306
  * Can be a string (the id of the axis) or an object `ChartsXAxisProps`.
301
307
  * @default null
302
308
  */
303
309
  topAxis: _propTypes.default.oneOfType([_propTypes.default.object, _propTypes.default.string]),
304
- viewBox: _propTypes.default.shape({
305
- height: _propTypes.default.number,
306
- width: _propTypes.default.number,
307
- x: _propTypes.default.number,
308
- y: _propTypes.default.number
309
- }),
310
310
  /**
311
311
  * The width of the chart in px. If not defined, it takes the width of the parent element.
312
312
  */
@@ -342,7 +342,6 @@ process.env.NODE_ENV !== "production" ? BarChartPro.propTypes = {
342
342
  hideTooltip: _propTypes.default.bool,
343
343
  id: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.string]),
344
344
  label: _propTypes.default.string,
345
- labelFontSize: _propTypes.default.number,
346
345
  labelStyle: _propTypes.default.object,
347
346
  max: _propTypes.default.oneOfType([_propTypes.default.instanceOf(Date), _propTypes.default.number]),
348
347
  min: _propTypes.default.oneOfType([_propTypes.default.instanceOf(Date), _propTypes.default.number]),
@@ -353,7 +352,6 @@ process.env.NODE_ENV !== "production" ? BarChartPro.propTypes = {
353
352
  slots: _propTypes.default.object,
354
353
  stroke: _propTypes.default.string,
355
354
  sx: _propTypes.default.oneOfType([_propTypes.default.arrayOf(_propTypes.default.oneOfType([_propTypes.default.func, _propTypes.default.object, _propTypes.default.bool])), _propTypes.default.func, _propTypes.default.object]),
356
- tickFontSize: _propTypes.default.number,
357
355
  tickInterval: _propTypes.default.oneOfType([_propTypes.default.oneOf(['auto']), _propTypes.default.array, _propTypes.default.func]),
358
356
  tickLabelInterval: _propTypes.default.oneOfType([_propTypes.default.oneOf(['auto']), _propTypes.default.func]),
359
357
  tickLabelPlacement: _propTypes.default.oneOf(['middle', 'tick']),
@@ -405,7 +403,6 @@ process.env.NODE_ENV !== "production" ? BarChartPro.propTypes = {
405
403
  hideTooltip: _propTypes.default.bool,
406
404
  id: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.string]),
407
405
  label: _propTypes.default.string,
408
- labelFontSize: _propTypes.default.number,
409
406
  labelStyle: _propTypes.default.object,
410
407
  max: _propTypes.default.oneOfType([_propTypes.default.instanceOf(Date), _propTypes.default.number]),
411
408
  min: _propTypes.default.oneOfType([_propTypes.default.instanceOf(Date), _propTypes.default.number]),
@@ -416,7 +413,6 @@ process.env.NODE_ENV !== "production" ? BarChartPro.propTypes = {
416
413
  slots: _propTypes.default.object,
417
414
  stroke: _propTypes.default.string,
418
415
  sx: _propTypes.default.oneOfType([_propTypes.default.arrayOf(_propTypes.default.oneOfType([_propTypes.default.func, _propTypes.default.object, _propTypes.default.bool])), _propTypes.default.func, _propTypes.default.object]),
419
- tickFontSize: _propTypes.default.number,
420
416
  tickInterval: _propTypes.default.oneOfType([_propTypes.default.oneOf(['auto']), _propTypes.default.array, _propTypes.default.func]),
421
417
  tickLabelInterval: _propTypes.default.oneOfType([_propTypes.default.oneOf(['auto']), _propTypes.default.func]),
422
418
  tickLabelPlacement: _propTypes.default.oneOf(['middle', 'tick']),
@@ -438,11 +434,28 @@ process.env.NODE_ENV !== "production" ? BarChartPro.propTypes = {
438
434
  }), _propTypes.default.bool])
439
435
  })),
440
436
  /**
441
- * The list of zoom data related to each axis.
437
+ * The configuration of the z-axes.
442
438
  */
443
- zoom: _propTypes.default.arrayOf(_propTypes.default.shape({
444
- axisId: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.string]).isRequired,
445
- end: _propTypes.default.number.isRequired,
446
- start: _propTypes.default.number.isRequired
439
+ zAxis: _propTypes.default.arrayOf(_propTypes.default.shape({
440
+ colorMap: _propTypes.default.oneOfType([_propTypes.default.shape({
441
+ colors: _propTypes.default.arrayOf(_propTypes.default.string).isRequired,
442
+ type: _propTypes.default.oneOf(['ordinal']).isRequired,
443
+ unknownColor: _propTypes.default.string,
444
+ values: _propTypes.default.arrayOf(_propTypes.default.oneOfType([_propTypes.default.instanceOf(Date), _propTypes.default.number, _propTypes.default.string]).isRequired)
445
+ }), _propTypes.default.shape({
446
+ color: _propTypes.default.oneOfType([_propTypes.default.arrayOf(_propTypes.default.string.isRequired), _propTypes.default.func]).isRequired,
447
+ max: _propTypes.default.oneOfType([_propTypes.default.instanceOf(Date), _propTypes.default.number]),
448
+ min: _propTypes.default.oneOfType([_propTypes.default.instanceOf(Date), _propTypes.default.number]),
449
+ type: _propTypes.default.oneOf(['continuous']).isRequired
450
+ }), _propTypes.default.shape({
451
+ colors: _propTypes.default.arrayOf(_propTypes.default.string).isRequired,
452
+ thresholds: _propTypes.default.arrayOf(_propTypes.default.oneOfType([_propTypes.default.instanceOf(Date), _propTypes.default.number]).isRequired).isRequired,
453
+ type: _propTypes.default.oneOf(['piecewise']).isRequired
454
+ })]),
455
+ data: _propTypes.default.array,
456
+ dataKey: _propTypes.default.string,
457
+ id: _propTypes.default.string,
458
+ max: _propTypes.default.number,
459
+ min: _propTypes.default.number
447
460
  }))
448
461
  } : void 0;
@@ -10,31 +10,58 @@ exports.ChartContainerPro = void 0;
10
10
  var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
11
11
  var React = _interopRequireWildcard(require("react"));
12
12
  var _propTypes = _interopRequireDefault(require("prop-types"));
13
- var _Watermark = require("@mui/x-license/Watermark");
14
- var _internals = require("@mui/x-charts/internals");
15
- var _releaseInfo = require("../internals/utils/releaseInfo");
16
- var _ChartDataProviderPro = require("../context/ChartDataProviderPro");
13
+ var _ChartsSurface = require("@mui/x-charts/ChartsSurface");
17
14
  var _useChartContainerProProps = require("./useChartContainerProProps");
15
+ var _ChartDataProviderPro = require("../ChartDataProviderPro");
18
16
  var _jsxRuntime = require("react/jsx-runtime");
19
- const releaseInfo = (0, _releaseInfo.getReleaseInfo)();
20
- const ChartContainerPro = exports.ChartContainerPro = /*#__PURE__*/React.forwardRef(function ChartContainerPro(props, ref) {
17
+ /**
18
+ * It sets up the data providers as well as the `<svg>` for the chart.
19
+ *
20
+ * This is a combination of both the `ChartDataProviderPro` and `ChartsSurface` components.
21
+ *
22
+ * Demos:
23
+ *
24
+ * - [Composition](https://mui.com/x/api/charts/composition/)
25
+ *
26
+ * API:
27
+ *
28
+ * - [ChartContainer API](https://mui.com/x/api/charts/chart-container/)
29
+ *
30
+ * @example
31
+ * ```jsx
32
+ * <ChartContainerPro
33
+ * series={[{ label: "Label", type: "bar", data: [10, 20] }]}
34
+ * xAxis={[{ data: ["A", "B"], scaleType: "band", id: "x-axis" }]}
35
+ * >
36
+ * <BarPlot />
37
+ * <ChartsXAxis position="bottom" axisId="x-axis" />
38
+ * </ChartContainerPro>
39
+ * ```
40
+ */
41
+ const ChartContainerPro = exports.ChartContainerPro = /*#__PURE__*/React.forwardRef(function ChartContainerProInner(props, ref) {
21
42
  const {
22
43
  chartDataProviderProProps,
23
- resizableChartContainerProps,
24
- hasIntrinsicSize
44
+ children,
45
+ chartsSurfaceProps
25
46
  } = (0, _useChartContainerProProps.useChartContainerProProps)(props, ref);
26
- return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_internals.ResizableContainer, (0, _extends2.default)({}, resizableChartContainerProps, {
27
- children: [hasIntrinsicSize ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_ChartDataProviderPro.ChartDataProviderPro, (0, _extends2.default)({}, chartDataProviderProProps)) : null, /*#__PURE__*/(0, _jsxRuntime.jsx)(_Watermark.Watermark, {
28
- packageName: "x-charts-pro",
29
- releaseInfo: releaseInfo
30
- })]
47
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_ChartDataProviderPro.ChartDataProviderPro, (0, _extends2.default)({}, chartDataProviderProProps, {
48
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_ChartsSurface.ChartsSurface, (0, _extends2.default)({}, chartsSurfaceProps, {
49
+ children: children
50
+ }))
31
51
  }));
32
52
  });
53
+
54
+ // @ts-expect-error the type coercion breaks the prop types
33
55
  process.env.NODE_ENV !== "production" ? ChartContainerPro.propTypes = {
34
56
  // ----------------------------- Warning --------------------------------
35
57
  // | These PropTypes are generated from the TypeScript type definitions |
36
58
  // | To update them edit the TypeScript types and run "pnpm proptypes" |
37
59
  // ----------------------------------------------------------------------
60
+ apiRef: _propTypes.default.shape({
61
+ current: _propTypes.default.shape({
62
+ setZoomData: _propTypes.default.func.isRequired
63
+ })
64
+ }),
38
65
  children: _propTypes.default.node,
39
66
  className: _propTypes.default.string,
40
67
  /**
@@ -58,17 +85,30 @@ process.env.NODE_ENV !== "production" ? ChartContainerPro.propTypes = {
58
85
  */
59
86
  height: _propTypes.default.number,
60
87
  /**
61
- * The item currently highlighted. Turns highlighting into a controlled prop.
88
+ * The highlighted item.
89
+ * Used when the highlight is controlled.
62
90
  */
63
91
  highlightedItem: _propTypes.default.shape({
64
92
  dataIndex: _propTypes.default.number,
65
- seriesId: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.string])
93
+ seriesId: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.string]).isRequired
66
94
  }),
95
+ /**
96
+ * This prop is used to help implement the accessibility logic.
97
+ * If you don't provide this prop. It falls back to a randomly generated id.
98
+ */
99
+ id: _propTypes.default.string,
100
+ /**
101
+ * The list of zoom data related to each axis.
102
+ */
103
+ initialZoom: _propTypes.default.arrayOf(_propTypes.default.shape({
104
+ axisId: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.string]).isRequired,
105
+ end: _propTypes.default.number.isRequired,
106
+ start: _propTypes.default.number.isRequired
107
+ })),
67
108
  /**
68
109
  * The margin between the SVG and the drawing area.
69
110
  * It's used for leaving some space for extra information such as the x- and y-axis or legend.
70
111
  * Accepts an object with the optional properties: `top`, `bottom`, `left`, and `right`.
71
- * @default object Depends on the charts type.
72
112
  */
73
113
  margin: _propTypes.default.shape({
74
114
  bottom: _propTypes.default.number,
@@ -88,40 +128,20 @@ process.env.NODE_ENV !== "production" ? ChartContainerPro.propTypes = {
88
128
  * @param {ZoomData[]} zoomData Updated zoom data.
89
129
  */
90
130
  onZoomChange: _propTypes.default.func,
91
- /**
92
- * An array of plugins defining how to preprocess data.
93
- * If not provided, the container supports line, bar, scatter and pie charts.
94
- */
95
- plugins: _propTypes.default.arrayOf(_propTypes.default.object),
96
- /**
97
- * The chart will try to wait for the parent container to resolve its size
98
- * before it renders for the first time.
99
- *
100
- * This can be useful in some scenarios where the chart appear to grow after
101
- * the first render, like when used inside a grid.
102
- *
103
- * @default false
104
- */
105
- resolveSizeBeforeRender: _propTypes.default.bool,
106
131
  /**
107
132
  * The array of series to display.
108
133
  * Each type of series has its own specificity.
109
134
  * Please refer to the appropriate docs page to learn more about it.
110
135
  */
111
- series: _propTypes.default.arrayOf(_propTypes.default.object).isRequired,
136
+ series: _propTypes.default.arrayOf(_propTypes.default.object),
112
137
  /**
113
138
  * If `true`, animations are skipped.
114
139
  * If unset or `false`, the animations respects the user's `prefers-reduced-motion` setting.
115
140
  */
116
141
  skipAnimation: _propTypes.default.bool,
117
142
  sx: _propTypes.default.oneOfType([_propTypes.default.arrayOf(_propTypes.default.oneOfType([_propTypes.default.func, _propTypes.default.object, _propTypes.default.bool])), _propTypes.default.func, _propTypes.default.object]),
143
+ theme: _propTypes.default.oneOf(['dark', 'light']),
118
144
  title: _propTypes.default.string,
119
- viewBox: _propTypes.default.shape({
120
- height: _propTypes.default.number,
121
- width: _propTypes.default.number,
122
- x: _propTypes.default.number,
123
- y: _propTypes.default.number
124
- }),
125
145
  /**
126
146
  * The width of the chart in px. If not defined, it takes the width of the parent element.
127
147
  */
@@ -157,7 +177,6 @@ process.env.NODE_ENV !== "production" ? ChartContainerPro.propTypes = {
157
177
  hideTooltip: _propTypes.default.bool,
158
178
  id: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.string]),
159
179
  label: _propTypes.default.string,
160
- labelFontSize: _propTypes.default.number,
161
180
  labelStyle: _propTypes.default.object,
162
181
  max: _propTypes.default.oneOfType([_propTypes.default.instanceOf(Date), _propTypes.default.number]),
163
182
  min: _propTypes.default.oneOfType([_propTypes.default.instanceOf(Date), _propTypes.default.number]),
@@ -168,7 +187,6 @@ process.env.NODE_ENV !== "production" ? ChartContainerPro.propTypes = {
168
187
  slots: _propTypes.default.object,
169
188
  stroke: _propTypes.default.string,
170
189
  sx: _propTypes.default.oneOfType([_propTypes.default.arrayOf(_propTypes.default.oneOfType([_propTypes.default.func, _propTypes.default.object, _propTypes.default.bool])), _propTypes.default.func, _propTypes.default.object]),
171
- tickFontSize: _propTypes.default.number,
172
190
  tickInterval: _propTypes.default.oneOfType([_propTypes.default.oneOf(['auto']), _propTypes.default.array, _propTypes.default.func]),
173
191
  tickLabelInterval: _propTypes.default.oneOfType([_propTypes.default.oneOf(['auto']), _propTypes.default.func]),
174
192
  tickLabelPlacement: _propTypes.default.oneOf(['middle', 'tick']),
@@ -220,7 +238,6 @@ process.env.NODE_ENV !== "production" ? ChartContainerPro.propTypes = {
220
238
  hideTooltip: _propTypes.default.bool,
221
239
  id: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.string]),
222
240
  label: _propTypes.default.string,
223
- labelFontSize: _propTypes.default.number,
224
241
  labelStyle: _propTypes.default.object,
225
242
  max: _propTypes.default.oneOfType([_propTypes.default.instanceOf(Date), _propTypes.default.number]),
226
243
  min: _propTypes.default.oneOfType([_propTypes.default.instanceOf(Date), _propTypes.default.number]),
@@ -231,7 +248,6 @@ process.env.NODE_ENV !== "production" ? ChartContainerPro.propTypes = {
231
248
  slots: _propTypes.default.object,
232
249
  stroke: _propTypes.default.string,
233
250
  sx: _propTypes.default.oneOfType([_propTypes.default.arrayOf(_propTypes.default.oneOfType([_propTypes.default.func, _propTypes.default.object, _propTypes.default.bool])), _propTypes.default.func, _propTypes.default.object]),
234
- tickFontSize: _propTypes.default.number,
235
251
  tickInterval: _propTypes.default.oneOfType([_propTypes.default.oneOf(['auto']), _propTypes.default.array, _propTypes.default.func]),
236
252
  tickLabelInterval: _propTypes.default.oneOfType([_propTypes.default.oneOf(['auto']), _propTypes.default.func]),
237
253
  tickLabelPlacement: _propTypes.default.oneOf(['middle', 'tick']),
@@ -276,13 +292,5 @@ process.env.NODE_ENV !== "production" ? ChartContainerPro.propTypes = {
276
292
  id: _propTypes.default.string,
277
293
  max: _propTypes.default.number,
278
294
  min: _propTypes.default.number
279
- })),
280
- /**
281
- * The list of zoom data related to each axis.
282
- */
283
- zoom: _propTypes.default.arrayOf(_propTypes.default.shape({
284
- axisId: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.string]).isRequired,
285
- end: _propTypes.default.number.isRequired,
286
- start: _propTypes.default.number.isRequired
287
295
  }))
288
296
  } : void 0;
@@ -9,26 +9,32 @@ exports.useChartContainerProProps = void 0;
9
9
  var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
10
10
  var _objectWithoutPropertiesLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutPropertiesLoose"));
11
11
  var _internals = require("@mui/x-charts/internals");
12
- const _excluded = ["zoom", "onZoomChange"];
12
+ var _allPlugins = require("../internals/plugins/allPlugins");
13
+ const _excluded = ["initialZoom", "onZoomChange", "plugins", "apiRef"];
13
14
  const useChartContainerProProps = (props, ref) => {
14
15
  const {
15
- zoom,
16
- onZoomChange
16
+ initialZoom,
17
+ onZoomChange,
18
+ plugins,
19
+ apiRef
17
20
  } = props,
18
21
  baseProps = (0, _objectWithoutPropertiesLoose2.default)(props, _excluded);
19
22
  const chartDataProviderProProps = {
20
- zoom,
23
+ initialZoom,
21
24
  onZoomChange
22
25
  };
23
26
  const {
24
27
  chartDataProviderProps,
25
- resizableChartContainerProps,
26
- hasIntrinsicSize
28
+ chartsSurfaceProps,
29
+ children
27
30
  } = (0, _internals.useChartContainerProps)(baseProps, ref);
28
31
  return {
29
- chartDataProviderProProps: (0, _extends2.default)({}, chartDataProviderProps, chartDataProviderProProps),
30
- resizableChartContainerProps,
31
- hasIntrinsicSize
32
+ chartDataProviderProProps: (0, _extends2.default)({}, chartDataProviderProps, chartDataProviderProProps, {
33
+ apiRef,
34
+ plugins: plugins ?? _allPlugins.ALL_PLUGINS
35
+ }),
36
+ chartsSurfaceProps,
37
+ children
32
38
  };
33
39
  };
34
40
  exports.useChartContainerProProps = useChartContainerProProps;