@mui/x-charts-pro 7.22.3 → 8.0.0-alpha.1

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 (73) hide show
  1. package/BarChartPro/BarChartPro.d.ts +1 -1
  2. package/BarChartPro/BarChartPro.js +9 -59
  3. package/CHANGELOG.md +348 -12
  4. package/ChartContainerPro/ChartContainerPro.d.ts +1 -1
  5. package/ChartContainerPro/ChartContainerPro.js +21 -47
  6. package/ChartContainerPro/useChartContainerProProps.d.ts +6 -14
  7. package/ChartContainerPro/useChartContainerProProps.js +11 -25
  8. package/Heatmap/Heatmap.d.ts +16 -8
  9. package/Heatmap/Heatmap.js +6 -37
  10. package/Heatmap/HeatmapTooltip.d.ts +9 -0
  11. package/Heatmap/HeatmapTooltip.js +294 -0
  12. package/Heatmap/index.d.ts +1 -1
  13. package/Heatmap/index.js +1 -1
  14. package/LineChartPro/LineChartPro.d.ts +1 -1
  15. package/LineChartPro/LineChartPro.js +9 -60
  16. package/README.md +4 -4
  17. package/ScatterChartPro/ScatterChartPro.d.ts +1 -1
  18. package/ScatterChartPro/ScatterChartPro.js +9 -60
  19. package/context/ChartDataProviderPro/ChartDataProviderPro.d.ts +10 -0
  20. package/{modern/ResponsiveChartContainerPro/ResponsiveChartContainerPro.js → context/ChartDataProviderPro/ChartDataProviderPro.js} +50 -33
  21. package/context/ChartDataProviderPro/index.d.ts +1 -0
  22. package/context/ChartDataProviderPro/index.js +1 -0
  23. package/context/ChartDataProviderPro/useChartDataProviderProProps.d.ts +14 -0
  24. package/context/ChartDataProviderPro/useChartDataProviderProProps.js +43 -0
  25. package/context/ZoomProvider/ZoomProvider.js +1 -0
  26. package/index.d.ts +0 -1
  27. package/index.js +1 -2
  28. package/internals/utils/releaseInfo.js +1 -1
  29. package/models/seriesType/heatmap.d.ts +2 -1
  30. package/modern/BarChartPro/BarChartPro.js +9 -59
  31. package/modern/ChartContainerPro/ChartContainerPro.js +21 -47
  32. package/modern/ChartContainerPro/useChartContainerProProps.js +11 -25
  33. package/modern/Heatmap/Heatmap.js +6 -37
  34. package/modern/Heatmap/HeatmapTooltip.js +294 -0
  35. package/modern/Heatmap/index.js +1 -1
  36. package/modern/LineChartPro/LineChartPro.js +9 -60
  37. package/modern/ScatterChartPro/ScatterChartPro.js +9 -60
  38. package/{ResponsiveChartContainerPro/ResponsiveChartContainerPro.js → modern/context/ChartDataProviderPro/ChartDataProviderPro.js} +50 -33
  39. package/modern/context/ChartDataProviderPro/index.js +1 -0
  40. package/modern/context/ChartDataProviderPro/useChartDataProviderProProps.js +43 -0
  41. package/modern/context/ZoomProvider/ZoomProvider.js +1 -0
  42. package/modern/index.js +1 -2
  43. package/modern/internals/utils/releaseInfo.js +1 -1
  44. package/node/BarChartPro/BarChartPro.js +9 -59
  45. package/node/ChartContainerPro/ChartContainerPro.js +20 -46
  46. package/node/ChartContainerPro/useChartContainerProProps.js +11 -25
  47. package/node/Heatmap/Heatmap.js +6 -37
  48. package/node/Heatmap/HeatmapTooltip.js +300 -0
  49. package/node/Heatmap/index.js +4 -4
  50. package/node/LineChartPro/LineChartPro.js +9 -60
  51. package/node/ScatterChartPro/ScatterChartPro.js +9 -60
  52. package/node/{ResponsiveChartContainerPro/ResponsiveChartContainerPro.js → context/ChartDataProviderPro/ChartDataProviderPro.js} +48 -31
  53. package/node/context/ChartDataProviderPro/index.js +16 -0
  54. package/node/context/ChartDataProviderPro/useChartDataProviderProProps.js +50 -0
  55. package/node/context/ZoomProvider/ZoomProvider.js +1 -0
  56. package/node/index.js +1 -12
  57. package/node/internals/utils/releaseInfo.js +1 -1
  58. package/package.json +8 -8
  59. package/typeOverloads/modules.d.ts +1 -1
  60. package/Heatmap/DefaultHeatmapTooltip.d.ts +0 -7
  61. package/Heatmap/DefaultHeatmapTooltip.js +0 -99
  62. package/ResponsiveChartContainerPro/ResponsiveChartContainerPro.d.ts +0 -7
  63. package/ResponsiveChartContainerPro/index.d.ts +0 -1
  64. package/ResponsiveChartContainerPro/index.js +0 -1
  65. package/ResponsiveChartContainerPro/package.json +0 -6
  66. package/ResponsiveChartContainerPro/useResponsiveChartContainerProProps.d.ts +0 -42
  67. package/ResponsiveChartContainerPro/useResponsiveChartContainerProProps.js +0 -27
  68. package/modern/Heatmap/DefaultHeatmapTooltip.js +0 -99
  69. package/modern/ResponsiveChartContainerPro/index.js +0 -1
  70. package/modern/ResponsiveChartContainerPro/useResponsiveChartContainerProProps.js +0 -27
  71. package/node/Heatmap/DefaultHeatmapTooltip.js +0 -105
  72. package/node/ResponsiveChartContainerPro/index.js +0 -16
  73. package/node/ResponsiveChartContainerPro/useResponsiveChartContainerProProps.js +0 -34
@@ -22,7 +22,7 @@ var _ChartsLegend = require("@mui/x-charts/ChartsLegend");
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 _ResponsiveChartContainerPro = require("../ResponsiveChartContainerPro");
25
+ var _ChartContainerPro = require("../ChartContainerPro");
26
26
  var _ZoomSetup = require("../context/ZoomProvider/ZoomSetup");
27
27
  var _useZoom = require("../context/ZoomProvider/useZoom");
28
28
  var _jsxRuntime = require("react/jsx-runtime");
@@ -172,10 +172,10 @@ const LineChartPro = exports.LineChartPro = /*#__PURE__*/React.forwardRef(functi
172
172
  axisHighlightProps,
173
173
  lineHighlightPlotProps,
174
174
  legendProps,
175
- tooltipProps,
176
175
  children
177
176
  } = (0, _internals.useLineChartProps)(other);
178
- return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_ResponsiveChartContainerPro.ResponsiveChartContainerPro, (0, _extends2.default)({
177
+ const Tooltip = props.slots?.tooltip ?? _ChartsTooltip.ChartsTooltip;
178
+ return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_ChartContainerPro.ChartContainerPro, (0, _extends2.default)({
179
179
  ref: ref
180
180
  }, chartContainerProps, {
181
181
  zoom: zoom,
@@ -185,7 +185,7 @@ const LineChartPro = exports.LineChartPro = /*#__PURE__*/React.forwardRef(functi
185
185
  })), /*#__PURE__*/(0, _jsxRuntime.jsx)(_ChartsAxis.ChartsAxis, (0, _extends2.default)({}, chartsAxisProps)), /*#__PURE__*/(0, _jsxRuntime.jsx)("g", {
186
186
  "data-drawing-container": true,
187
187
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)(MarkPlotZoom, (0, _extends2.default)({}, markPlotProps))
188
- }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_LineChart.LineHighlightPlot, (0, _extends2.default)({}, lineHighlightPlotProps)), /*#__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]
188
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_LineChart.LineHighlightPlot, (0, _extends2.default)({}, lineHighlightPlotProps)), !props.hideLegend && /*#__PURE__*/(0, _jsxRuntime.jsx)(_ChartsLegend.ChartsLegend, (0, _extends2.default)({}, legendProps)), !props.loading && /*#__PURE__*/(0, _jsxRuntime.jsx)(Tooltip, (0, _extends2.default)({}, props.slotProps?.tooltip)), /*#__PURE__*/(0, _jsxRuntime.jsx)(_ChartsClipPath.ChartsClipPath, (0, _extends2.default)({}, clipPathProps)), /*#__PURE__*/(0, _jsxRuntime.jsx)(_ZoomSetup.ZoomSetup, {}), children]
189
189
  }));
190
190
  });
191
191
  process.env.NODE_ENV !== "production" ? LineChartPro.propTypes = {
@@ -195,7 +195,7 @@ process.env.NODE_ENV !== "production" ? LineChartPro.propTypes = {
195
195
  // ----------------------------------------------------------------------
196
196
  /**
197
197
  * The configuration of axes highlight.
198
- * @see See {@link https://mui.com/x/react-charts/highlighting highlighting docs} for more details.
198
+ * @see See {@link https://mui.com/x/react-charts/highlighting/ highlighting docs} for more details.
199
199
  * @default { x: 'line' }
200
200
  */
201
201
  axisHighlight: _propTypes.default.shape({
@@ -245,6 +245,10 @@ process.env.NODE_ENV !== "production" ? LineChartPro.propTypes = {
245
245
  * The height of the chart in px. If not defined, it takes the height of the parent element.
246
246
  */
247
247
  height: _propTypes.default.number,
248
+ /**
249
+ * If `true`, the legend is not rendered.
250
+ */
251
+ hideLegend: _propTypes.default.bool,
248
252
  /**
249
253
  * The item currently highlighted. Turns highlighting into a controlled prop.
250
254
  */
@@ -258,32 +262,6 @@ process.env.NODE_ENV !== "production" ? LineChartPro.propTypes = {
258
262
  * @default yAxisIds[0] The id of the first provided axis
259
263
  */
260
264
  leftAxis: _propTypes.default.oneOfType([_propTypes.default.object, _propTypes.default.string]),
261
- /**
262
- * @deprecated Consider using `slotProps.legend` instead.
263
- */
264
- legend: _propTypes.default.shape({
265
- classes: _propTypes.default.object,
266
- direction: _propTypes.default.oneOf(['column', 'row']),
267
- hidden: _propTypes.default.bool,
268
- itemGap: _propTypes.default.number,
269
- itemMarkHeight: _propTypes.default.number,
270
- itemMarkWidth: _propTypes.default.number,
271
- labelStyle: _propTypes.default.object,
272
- markGap: _propTypes.default.number,
273
- onItemClick: _propTypes.default.func,
274
- padding: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.shape({
275
- bottom: _propTypes.default.number,
276
- left: _propTypes.default.number,
277
- right: _propTypes.default.number,
278
- top: _propTypes.default.number
279
- })]),
280
- position: _propTypes.default.shape({
281
- horizontal: _propTypes.default.oneOf(['left', 'middle', 'right']).isRequired,
282
- vertical: _propTypes.default.oneOf(['bottom', 'middle', 'top']).isRequired
283
- }),
284
- slotProps: _propTypes.default.object,
285
- slots: _propTypes.default.object
286
- }),
287
265
  /**
288
266
  * If `true`, a loading overlay is displayed.
289
267
  * @default false
@@ -332,16 +310,6 @@ process.env.NODE_ENV !== "production" ? LineChartPro.propTypes = {
332
310
  * @param {ZoomData[]} zoomData Updated zoom data.
333
311
  */
334
312
  onZoomChange: _propTypes.default.func,
335
- /**
336
- * The chart will try to wait for the parent container to resolve its size
337
- * before it renders for the first time.
338
- *
339
- * This can be useful in some scenarios where the chart appear to grow after
340
- * the first render, like when used inside a grid.
341
- *
342
- * @default false
343
- */
344
- resolveSizeBeforeRender: _propTypes.default.bool,
345
313
  /**
346
314
  * Indicate which axis to display the right of the charts.
347
315
  * Can be a string (the id of the axis) or an object `ChartsYAxisProps`.
@@ -370,31 +338,12 @@ process.env.NODE_ENV !== "production" ? LineChartPro.propTypes = {
370
338
  slots: _propTypes.default.object,
371
339
  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]),
372
340
  title: _propTypes.default.string,
373
- /**
374
- * The configuration of the tooltip.
375
- * @see See {@link https://mui.com/x/react-charts/tooltip/ tooltip docs} for more details.
376
- * @default { trigger: 'item' }
377
- */
378
- tooltip: _propTypes.default.shape({
379
- axisContent: _propTypes.default.elementType,
380
- classes: _propTypes.default.object,
381
- itemContent: _propTypes.default.elementType,
382
- slotProps: _propTypes.default.object,
383
- slots: _propTypes.default.object,
384
- trigger: _propTypes.default.oneOf(['axis', 'item', 'none'])
385
- }),
386
341
  /**
387
342
  * Indicate which axis to display the top of the charts.
388
343
  * Can be a string (the id of the axis) or an object `ChartsXAxisProps`.
389
344
  * @default null
390
345
  */
391
346
  topAxis: _propTypes.default.oneOfType([_propTypes.default.object, _propTypes.default.string]),
392
- viewBox: _propTypes.default.shape({
393
- height: _propTypes.default.number,
394
- width: _propTypes.default.number,
395
- x: _propTypes.default.number,
396
- y: _propTypes.default.number
397
- }),
398
347
  /**
399
348
  * The width of the chart in px. If not defined, it takes the width of the parent element.
400
349
  */
@@ -22,7 +22,7 @@ var _ChartsLegend = require("@mui/x-charts/ChartsLegend");
22
22
  var _ChartsAxisHighlight = require("@mui/x-charts/ChartsAxisHighlight");
23
23
  var _ChartsTooltip = require("@mui/x-charts/ChartsTooltip");
24
24
  var _internals = require("@mui/x-charts/internals");
25
- var _ResponsiveChartContainerPro = require("../ResponsiveChartContainerPro");
25
+ var _ChartContainerPro = require("../ChartContainerPro");
26
26
  var _ZoomSetup = require("../context/ZoomProvider/ZoomSetup");
27
27
  var _jsxRuntime = require("react/jsx-runtime");
28
28
  const _excluded = ["zoom", "onZoomChange"];
@@ -56,10 +56,10 @@ const ScatterChartPro = exports.ScatterChartPro = /*#__PURE__*/React.forwardRef(
56
56
  overlayProps,
57
57
  legendProps,
58
58
  axisHighlightProps,
59
- tooltipProps,
60
59
  children
61
60
  } = (0, _internals.useScatterChartProps)(other);
62
- return /*#__PURE__*/(0, _jsxRuntime.jsx)(_ResponsiveChartContainerPro.ResponsiveChartContainerPro, (0, _extends2.default)({
61
+ const Tooltip = props.slots?.tooltip ?? _ChartsTooltip.ChartsTooltip;
62
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_ChartContainerPro.ChartContainerPro, (0, _extends2.default)({
63
63
  ref: ref
64
64
  }, chartContainerProps, {
65
65
  zoom: zoom,
@@ -68,7 +68,7 @@ const ScatterChartPro = exports.ScatterChartPro = /*#__PURE__*/React.forwardRef(
68
68
  children: [!props.disableVoronoi && /*#__PURE__*/(0, _jsxRuntime.jsx)(_ChartsVoronoiHandler.ChartsVoronoiHandler, (0, _extends2.default)({}, voronoiHandlerProps)), /*#__PURE__*/(0, _jsxRuntime.jsx)(_ChartsAxis.ChartsAxis, (0, _extends2.default)({}, chartsAxisProps)), /*#__PURE__*/(0, _jsxRuntime.jsx)(_ChartsGrid.ChartsGrid, (0, _extends2.default)({}, gridProps)), /*#__PURE__*/(0, _jsxRuntime.jsx)("g", {
69
69
  "data-drawing-container": true,
70
70
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_ScatterChart.ScatterPlot, (0, _extends2.default)({}, scatterPlotProps))
71
- }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_ChartsOverlay.ChartsOverlay, (0, _extends2.default)({}, overlayProps)), /*#__PURE__*/(0, _jsxRuntime.jsx)(_ChartsLegend.ChartsLegend, (0, _extends2.default)({}, legendProps)), /*#__PURE__*/(0, _jsxRuntime.jsx)(_ChartsAxisHighlight.ChartsAxisHighlight, (0, _extends2.default)({}, axisHighlightProps)), !props.loading && /*#__PURE__*/(0, _jsxRuntime.jsx)(_ChartsTooltip.ChartsTooltip, (0, _extends2.default)({}, tooltipProps)), /*#__PURE__*/(0, _jsxRuntime.jsx)(_ZoomSetup.ZoomSetup, {}), children]
71
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_ChartsOverlay.ChartsOverlay, (0, _extends2.default)({}, overlayProps)), !props.hideLegend && /*#__PURE__*/(0, _jsxRuntime.jsx)(_ChartsLegend.ChartsLegend, (0, _extends2.default)({}, legendProps)), /*#__PURE__*/(0, _jsxRuntime.jsx)(_ChartsAxisHighlight.ChartsAxisHighlight, (0, _extends2.default)({}, axisHighlightProps)), !props.loading && /*#__PURE__*/(0, _jsxRuntime.jsx)(Tooltip, (0, _extends2.default)({}, props?.slotProps?.tooltip)), /*#__PURE__*/(0, _jsxRuntime.jsx)(_ZoomSetup.ZoomSetup, {}), children]
72
72
  }))
73
73
  }));
74
74
  });
@@ -79,7 +79,7 @@ process.env.NODE_ENV !== "production" ? ScatterChartPro.propTypes = {
79
79
  // ----------------------------------------------------------------------
80
80
  /**
81
81
  * The configuration of axes highlight.
82
- * @see See {@link https://mui.com/x/react-charts/highlighting highlighting docs} for more details.
82
+ * @see See {@link https://mui.com/x/react-charts/highlighting/ highlighting docs} for more details.
83
83
  * @default { x: 'none', y: 'none' }
84
84
  */
85
85
  axisHighlight: _propTypes.default.shape({
@@ -126,6 +126,10 @@ process.env.NODE_ENV !== "production" ? ScatterChartPro.propTypes = {
126
126
  * The height of the chart in px. If not defined, it takes the height of the parent element.
127
127
  */
128
128
  height: _propTypes.default.number,
129
+ /**
130
+ * If `true`, the legend is not rendered.
131
+ */
132
+ hideLegend: _propTypes.default.bool,
129
133
  /**
130
134
  * The item currently highlighted. Turns highlighting into a controlled prop.
131
135
  */
@@ -139,32 +143,6 @@ process.env.NODE_ENV !== "production" ? ScatterChartPro.propTypes = {
139
143
  * @default yAxisIds[0] The id of the first provided axis
140
144
  */
141
145
  leftAxis: _propTypes.default.oneOfType([_propTypes.default.object, _propTypes.default.string]),
142
- /**
143
- * @deprecated Consider using `slotProps.legend` instead.
144
- */
145
- legend: _propTypes.default.shape({
146
- classes: _propTypes.default.object,
147
- direction: _propTypes.default.oneOf(['column', 'row']),
148
- hidden: _propTypes.default.bool,
149
- itemGap: _propTypes.default.number,
150
- itemMarkHeight: _propTypes.default.number,
151
- itemMarkWidth: _propTypes.default.number,
152
- labelStyle: _propTypes.default.object,
153
- markGap: _propTypes.default.number,
154
- onItemClick: _propTypes.default.func,
155
- padding: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.shape({
156
- bottom: _propTypes.default.number,
157
- left: _propTypes.default.number,
158
- right: _propTypes.default.number,
159
- top: _propTypes.default.number
160
- })]),
161
- position: _propTypes.default.shape({
162
- horizontal: _propTypes.default.oneOf(['left', 'middle', 'right']).isRequired,
163
- vertical: _propTypes.default.oneOf(['bottom', 'middle', 'top']).isRequired
164
- }),
165
- slotProps: _propTypes.default.object,
166
- slots: _propTypes.default.object
167
- }),
168
146
  /**
169
147
  * If `true`, a loading overlay is displayed.
170
148
  * @default false
@@ -200,16 +178,6 @@ process.env.NODE_ENV !== "production" ? ScatterChartPro.propTypes = {
200
178
  * @param {ZoomData[]} zoomData Updated zoom data.
201
179
  */
202
180
  onZoomChange: _propTypes.default.func,
203
- /**
204
- * The chart will try to wait for the parent container to resolve its size
205
- * before it renders for the first time.
206
- *
207
- * This can be useful in some scenarios where the chart appear to grow after
208
- * the first render, like when used inside a grid.
209
- *
210
- * @default false
211
- */
212
- resolveSizeBeforeRender: _propTypes.default.bool,
213
181
  /**
214
182
  * Indicate which axis to display the right of the charts.
215
183
  * Can be a string (the id of the axis) or an object `ChartsYAxisProps`.
@@ -238,31 +206,12 @@ process.env.NODE_ENV !== "production" ? ScatterChartPro.propTypes = {
238
206
  slots: _propTypes.default.object,
239
207
  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]),
240
208
  title: _propTypes.default.string,
241
- /**
242
- * The configuration of the tooltip.
243
- * @see See {@link https://mui.com/x/react-charts/tooltip/ tooltip docs} for more details.
244
- * @default { trigger: 'item' }
245
- */
246
- tooltip: _propTypes.default.shape({
247
- axisContent: _propTypes.default.elementType,
248
- classes: _propTypes.default.object,
249
- itemContent: _propTypes.default.elementType,
250
- slotProps: _propTypes.default.object,
251
- slots: _propTypes.default.object,
252
- trigger: _propTypes.default.oneOf(['axis', 'item', 'none'])
253
- }),
254
209
  /**
255
210
  * Indicate which axis to display the top of the charts.
256
211
  * Can be a string (the id of the axis) or an object `ChartsXAxisProps`.
257
212
  * @default null
258
213
  */
259
214
  topAxis: _propTypes.default.oneOfType([_propTypes.default.object, _propTypes.default.string]),
260
- viewBox: _propTypes.default.shape({
261
- height: _propTypes.default.number,
262
- width: _propTypes.default.number,
263
- x: _propTypes.default.number,
264
- y: _propTypes.default.number
265
- }),
266
215
  /**
267
216
  * Defines the maximal distance between a scatter point and the pointer that triggers the interaction.
268
217
  * If `undefined`, the radius is assumed to be infinite.
@@ -6,31 +6,58 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
6
6
  Object.defineProperty(exports, "__esModule", {
7
7
  value: true
8
8
  });
9
- exports.ResponsiveChartContainerPro = void 0;
9
+ exports.ChartDataProviderPro = ChartDataProviderPro;
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
13
  var _internals = require("@mui/x-charts/internals");
15
- var _releaseInfo = require("../internals/utils/releaseInfo");
16
- var _ChartContainerPro = require("../ChartContainerPro");
17
- var _useResponsiveChartContainerProProps = require("./useResponsiveChartContainerProProps");
14
+ var _context = require("@mui/x-charts/context");
15
+ var _useLicenseVerifier = require("@mui/x-license/useLicenseVerifier");
16
+ var _releaseInfo = require("../../internals/utils/releaseInfo");
17
+ var _CartesianProviderPro = require("../CartesianProviderPro");
18
+ var _ZoomProvider = require("../ZoomProvider");
19
+ var _useChartDataProviderProProps = require("./useChartDataProviderProProps");
18
20
  var _jsxRuntime = require("react/jsx-runtime");
19
21
  const releaseInfo = (0, _releaseInfo.getReleaseInfo)();
20
- const ResponsiveChartContainerPro = exports.ResponsiveChartContainerPro = /*#__PURE__*/React.forwardRef(function ResponsiveChartContainerPro(props, ref) {
22
+ function ChartDataProviderPro(props) {
21
23
  const {
22
- chartContainerProProps,
23
- resizableChartContainerProps,
24
- hasIntrinsicSize
25
- } = (0, _useResponsiveChartContainerProProps.useResponsiveChartContainerProProps)(props, ref);
26
- return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_internals.ResizableContainer, (0, _extends2.default)({}, resizableChartContainerProps, {
27
- children: [hasIntrinsicSize ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_ChartContainerPro.ChartContainerPro, (0, _extends2.default)({}, chartContainerProProps)) : null, /*#__PURE__*/(0, _jsxRuntime.jsx)(_Watermark.Watermark, {
28
- packageName: "x-charts-pro",
29
- releaseInfo: releaseInfo
30
- })]
24
+ zoomProviderProps,
25
+ drawingAreaProviderProps,
26
+ seriesProviderProps,
27
+ zAxisContextProps,
28
+ highlightedProviderProps,
29
+ cartesianProviderProps,
30
+ sizeProviderProps,
31
+ pluginProviderProps,
32
+ animationProviderProps,
33
+ children
34
+ } = (0, _useChartDataProviderProProps.useChartContainerProProps)(props);
35
+ (0, _useLicenseVerifier.useLicenseVerifier)('x-charts-pro', releaseInfo);
36
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_internals.SizeProvider, (0, _extends2.default)({}, sizeProviderProps, {
37
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_internals.DrawingAreaProvider, (0, _extends2.default)({}, drawingAreaProviderProps, {
38
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_internals.AnimationProvider, (0, _extends2.default)({}, animationProviderProps, {
39
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_internals.PluginProvider, (0, _extends2.default)({}, pluginProviderProps, {
40
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_ZoomProvider.ZoomProvider, (0, _extends2.default)({}, zoomProviderProps, {
41
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_internals.SeriesProvider, (0, _extends2.default)({}, seriesProviderProps, {
42
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_CartesianProviderPro.CartesianProviderPro, (0, _extends2.default)({}, cartesianProviderProps, {
43
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_context.ZAxisContextProvider, (0, _extends2.default)({}, zAxisContextProps, {
44
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_internals.InteractionProvider, {
45
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_context.HighlightedProvider, (0, _extends2.default)({}, highlightedProviderProps, {
46
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_internals.SvgRefProvider, {
47
+ children: children
48
+ })
49
+ }))
50
+ })
51
+ }))
52
+ }))
53
+ }))
54
+ }))
55
+ }))
56
+ }))
57
+ }))
31
58
  }));
32
- });
33
- process.env.NODE_ENV !== "production" ? ResponsiveChartContainerPro.propTypes = {
59
+ }
60
+ process.env.NODE_ENV !== "production" ? ChartDataProviderPro.propTypes = {
34
61
  // ----------------------------- Warning --------------------------------
35
62
  // | These PropTypes are generated from the TypeScript type definitions |
36
63
  // | To update them edit the TypeScript types and run "pnpm proptypes" |
@@ -54,9 +81,9 @@ process.env.NODE_ENV !== "production" ? ResponsiveChartContainerPro.propTypes =
54
81
  */
55
82
  disableAxisListener: _propTypes.default.bool,
56
83
  /**
57
- * The height of the chart in px. If not defined, it takes the height of the parent element.
84
+ * The height of the chart in px.
58
85
  */
59
- height: _propTypes.default.number,
86
+ height: _propTypes.default.number.isRequired,
60
87
  /**
61
88
  * The item currently highlighted. Turns highlighting into a controlled prop.
62
89
  */
@@ -93,16 +120,6 @@ process.env.NODE_ENV !== "production" ? ResponsiveChartContainerPro.propTypes =
93
120
  * If not provided, the container supports line, bar, scatter and pie charts.
94
121
  */
95
122
  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
123
  /**
107
124
  * The array of series to display.
108
125
  * Each type of series has its own specificity.
@@ -123,9 +140,9 @@ process.env.NODE_ENV !== "production" ? ResponsiveChartContainerPro.propTypes =
123
140
  y: _propTypes.default.number
124
141
  }),
125
142
  /**
126
- * The width of the chart in px. If not defined, it takes the width of the parent element.
143
+ * The width of the chart in px.
127
144
  */
128
- width: _propTypes.default.number,
145
+ width: _propTypes.default.number.isRequired,
129
146
  /**
130
147
  * The configuration of the x-axes.
131
148
  * If not provided, a default axis config is used.
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ var _ChartDataProviderPro = require("./ChartDataProviderPro");
7
+ Object.keys(_ChartDataProviderPro).forEach(function (key) {
8
+ if (key === "default" || key === "__esModule") return;
9
+ if (key in exports && exports[key] === _ChartDataProviderPro[key]) return;
10
+ Object.defineProperty(exports, key, {
11
+ enumerable: true,
12
+ get: function () {
13
+ return _ChartDataProviderPro[key];
14
+ }
15
+ });
16
+ });
@@ -0,0 +1,50 @@
1
+ "use strict";
2
+ 'use client';
3
+
4
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.useChartContainerProProps = void 0;
9
+ var _objectWithoutPropertiesLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutPropertiesLoose"));
10
+ var _internals = require("@mui/x-charts/internals");
11
+ const _excluded = ["zoom", "onZoomChange"];
12
+ const useChartContainerProProps = props => {
13
+ const {
14
+ zoom,
15
+ onZoomChange
16
+ } = props,
17
+ baseProps = (0, _objectWithoutPropertiesLoose2.default)(props, _excluded);
18
+ const {
19
+ children,
20
+ drawingAreaProviderProps,
21
+ seriesProviderProps,
22
+ cartesianProviderProps,
23
+ zAxisContextProps,
24
+ highlightedProviderProps,
25
+ sizeProviderProps,
26
+ pluginProviderProps,
27
+ animationProviderProps,
28
+ xAxis,
29
+ yAxis
30
+ } = (0, _internals.useChartDataProviderProps)(baseProps);
31
+ const zoomProviderProps = {
32
+ zoom,
33
+ onZoomChange,
34
+ xAxis,
35
+ yAxis
36
+ };
37
+ return {
38
+ zoomProviderProps,
39
+ children,
40
+ drawingAreaProviderProps,
41
+ pluginProviderProps,
42
+ seriesProviderProps,
43
+ cartesianProviderProps,
44
+ zAxisContextProps,
45
+ highlightedProviderProps,
46
+ sizeProviderProps,
47
+ animationProviderProps
48
+ };
49
+ };
50
+ exports.useChartContainerProProps = useChartContainerProProps;
@@ -32,6 +32,7 @@ function ZoomProvider({
32
32
  const defaultZoomData = React.useRef((0, _initializeZoomData.initializeZoomData)(options));
33
33
  const [zoomData, setZoomData] = (0, _useControlled.default)({
34
34
  controlled: zoom,
35
+ // eslint-disable-next-line react-compiler/react-compiler
35
36
  default: defaultZoomData.current,
36
37
  name: 'ZoomProvider',
37
38
  state: 'zoom'
package/node/index.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @mui/x-charts-pro v7.22.3
2
+ * @mui/x-charts-pro v8.0.0-alpha.1
3
3
  *
4
4
  * @license MUI X Commercial
5
5
  * This source code is licensed under the commercial license found in the
@@ -286,17 +286,6 @@ Object.keys(_Heatmap).forEach(function (key) {
286
286
  }
287
287
  });
288
288
  });
289
- var _ResponsiveChartContainerPro = require("./ResponsiveChartContainerPro");
290
- Object.keys(_ResponsiveChartContainerPro).forEach(function (key) {
291
- if (key === "default" || key === "__esModule") return;
292
- if (key in exports && exports[key] === _ResponsiveChartContainerPro[key]) return;
293
- Object.defineProperty(exports, key, {
294
- enumerable: true,
295
- get: function () {
296
- return _ResponsiveChartContainerPro[key];
297
- }
298
- });
299
- });
300
289
  var _ChartContainerPro = require("./ChartContainerPro");
301
290
  Object.keys(_ChartContainerPro).forEach(function (key) {
302
291
  if (key === "default" || key === "__esModule") return;
@@ -6,7 +6,7 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.getReleaseInfo = void 0;
7
7
  var _utils = require("@mui/utils");
8
8
  const getReleaseInfo = () => {
9
- const releaseInfo = "MTczMjE0MzYwMDAwMA==";
9
+ const releaseInfo = "MTczMjIzMDAwMDAwMA==";
10
10
  if (process.env.NODE_ENV !== 'production') {
11
11
  // A simple hack to set the value in the test environment (has no build step).
12
12
  // eslint-disable-next-line no-useless-concat
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mui/x-charts-pro",
3
- "version": "7.22.3",
3
+ "version": "8.0.0-alpha.1",
4
4
  "description": "The Pro plan edition of the Charts components (MUI X).",
5
5
  "author": "MUI Team",
6
6
  "main": "./node/index.js",
@@ -29,24 +29,24 @@
29
29
  "directory": "packages/x-charts-pro"
30
30
  },
31
31
  "dependencies": {
32
- "@babel/runtime": "^7.25.7",
32
+ "@babel/runtime": "^7.26.0",
33
33
  "@mui/utils": "^5.16.6 || ^6.0.0",
34
34
  "@react-spring/rafz": "^9.7.5",
35
35
  "@react-spring/web": "^9.7.5",
36
36
  "clsx": "^2.1.1",
37
37
  "prop-types": "^15.8.1",
38
- "@mui/x-charts-vendor": "7.20.0",
39
- "@mui/x-charts": "7.22.3",
40
- "@mui/x-internals": "7.21.0",
41
- "@mui/x-license": "7.21.0"
38
+ "@mui/x-internals": "8.0.0-alpha.1",
39
+ "@mui/x-charts-vendor": "8.0.0-alpha.1",
40
+ "@mui/x-charts": "8.0.0-alpha.1",
41
+ "@mui/x-license": "8.0.0-alpha.1"
42
42
  },
43
43
  "peerDependencies": {
44
44
  "@emotion/react": "^11.9.0",
45
45
  "@emotion/styled": "^11.8.1",
46
46
  "@mui/material": "^5.15.14 || ^6.0.0",
47
47
  "@mui/system": "^5.15.14 || ^6.0.0",
48
- "react": "^17.0.0 || ^18.0.0",
49
- "react-dom": "^17.0.0 || ^18.0.0"
48
+ "react": "^17.0.0 || ^18.0.0 || ^19.0.0",
49
+ "react-dom": "^17.0.0 || ^18.0.0 || ^19.0.0"
50
50
  },
51
51
  "peerDependenciesMeta": {
52
52
  "@emotion/react": {
@@ -1,4 +1,4 @@
1
- import { DefaultizedProps } from '@mui/x-charts/internals';
1
+ import { DefaultizedProps } from '@mui/x-internals/types';
2
2
  import { HeatmapItemIdentifier, HeatmapSeriesType, DefaultizedHeatmapSeriesType, HeatmapValueType } from '../models/seriesType/heatmap';
3
3
  import { ZoomOptions } from '../context/ZoomProvider';
4
4
  declare module '@mui/x-charts/internals' {
@@ -1,7 +0,0 @@
1
- import * as React from 'react';
2
- import { ChartsItemContentProps } from '@mui/x-charts/ChartsTooltip';
3
- declare function DefaultHeatmapTooltip(props: ChartsItemContentProps<'heatmap'>): React.JSX.Element | null;
4
- declare namespace DefaultHeatmapTooltip {
5
- var propTypes: any;
6
- }
7
- export { DefaultHeatmapTooltip };
@@ -1,99 +0,0 @@
1
- 'use client';
2
-
3
- import * as React from 'react';
4
- import PropTypes from 'prop-types';
5
- import clsx from 'clsx';
6
- import { ChartsTooltipPaper, ChartsTooltipTable, ChartsTooltipRow, ChartsTooltipCell, ChartsTooltipMark } from '@mui/x-charts/ChartsTooltip';
7
- import { useXAxis, useYAxis } from '@mui/x-charts/hooks';
8
- import { getLabel } from '@mui/x-charts/internals';
9
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
10
- function DefaultHeatmapTooltip(props) {
11
- const {
12
- series,
13
- itemData,
14
- sx,
15
- classes,
16
- getColor
17
- } = props;
18
- const xAxis = useXAxis();
19
- const yAxis = useYAxis();
20
- if (itemData.dataIndex === undefined || !series.data[itemData.dataIndex]) {
21
- return null;
22
- }
23
- const color = getColor(itemData.dataIndex);
24
- const valueItem = series.data[itemData.dataIndex];
25
- const [xIndex, yIndex] = valueItem;
26
- const formattedX = xAxis.valueFormatter?.(xAxis.data[xIndex], {
27
- location: 'tooltip'
28
- }) ?? xAxis.data[xIndex].toLocaleString();
29
- const formattedY = yAxis.valueFormatter?.(yAxis.data[yIndex], {
30
- location: 'tooltip'
31
- }) ?? yAxis.data[yIndex].toLocaleString();
32
- const formattedValue = series.valueFormatter(valueItem, {
33
- dataIndex: itemData.dataIndex
34
- });
35
- const seriesLabel = getLabel(series.label, 'tooltip');
36
- return /*#__PURE__*/_jsx(ChartsTooltipPaper, {
37
- sx: sx,
38
- className: classes.root,
39
- children: /*#__PURE__*/_jsxs(ChartsTooltipTable, {
40
- className: classes.table,
41
- children: [/*#__PURE__*/_jsx("thead", {
42
- children: /*#__PURE__*/_jsxs(ChartsTooltipRow, {
43
- children: [/*#__PURE__*/_jsx(ChartsTooltipCell, {
44
- children: formattedX
45
- }), formattedX && formattedY && /*#__PURE__*/_jsx(ChartsTooltipCell, {}), /*#__PURE__*/_jsx(ChartsTooltipCell, {
46
- children: formattedY
47
- })]
48
- })
49
- }), /*#__PURE__*/_jsx("tbody", {
50
- children: /*#__PURE__*/_jsxs(ChartsTooltipRow, {
51
- className: classes.row,
52
- children: [/*#__PURE__*/_jsx(ChartsTooltipCell, {
53
- className: clsx(classes.markCell, classes.cell),
54
- children: /*#__PURE__*/_jsx(ChartsTooltipMark, {
55
- color: color,
56
- className: classes.mark
57
- })
58
- }), /*#__PURE__*/_jsx(ChartsTooltipCell, {
59
- className: clsx(classes.labelCell, classes.cell),
60
- children: seriesLabel
61
- }), /*#__PURE__*/_jsx(ChartsTooltipCell, {
62
- className: clsx(classes.valueCell, classes.cell),
63
- children: formattedValue
64
- })]
65
- })
66
- })]
67
- })
68
- });
69
- }
70
- process.env.NODE_ENV !== "production" ? DefaultHeatmapTooltip.propTypes = {
71
- // ----------------------------- Warning --------------------------------
72
- // | These PropTypes are generated from the TypeScript type definitions |
73
- // | To update them edit the TypeScript types and run "pnpm proptypes" |
74
- // ----------------------------------------------------------------------
75
- /**
76
- * Override or extend the styles applied to the component.
77
- */
78
- classes: PropTypes.object.isRequired,
79
- /**
80
- * Get the color of the item with index `dataIndex`.
81
- * @param {number} dataIndex The data index of the item.
82
- * @returns {string} The color to display.
83
- */
84
- getColor: PropTypes.func.isRequired,
85
- /**
86
- * The data used to identify the triggered item.
87
- */
88
- itemData: PropTypes.shape({
89
- dataIndex: PropTypes.number.isRequired,
90
- seriesId: PropTypes.oneOfType([PropTypes.number, PropTypes.string]).isRequired,
91
- type: PropTypes.oneOf(['heatmap']).isRequired
92
- }).isRequired,
93
- /**
94
- * The series linked to the triggered item.
95
- */
96
- series: PropTypes.object.isRequired,
97
- sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object])
98
- } : void 0;
99
- export { DefaultHeatmapTooltip };
@@ -1,7 +0,0 @@
1
- import * as React from 'react';
2
- import { ResponsiveChartContainerProps } from '@mui/x-charts/ResponsiveChartContainer';
3
- import { ZoomProps } from '../context/ZoomProvider';
4
- export interface ResponsiveChartContainerProProps extends ResponsiveChartContainerProps, ZoomProps {
5
- }
6
- declare const ResponsiveChartContainerPro: React.ForwardRefExoticComponent<ResponsiveChartContainerProProps & React.RefAttributes<unknown>>;
7
- export { ResponsiveChartContainerPro };