@mui/x-charts-pro 8.3.1 → 8.4.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 (90) hide show
  1. package/BarChartPro/BarChartPro.js +37 -20
  2. package/CHANGELOG.md +110 -0
  3. package/ChartContainerPro/ChartContainerPro.js +1 -0
  4. package/ChartDataProviderPro/ChartDataProviderPro.js +1 -1
  5. package/ChartZoomSlider/index.d.ts +1 -1
  6. package/ChartZoomSlider/index.js +4 -4
  7. package/ChartZoomSlider/internals/ChartAxisZoomSlider.js +94 -60
  8. package/ChartZoomSlider/internals/ChartAxisZoomSliderThumb.d.ts +12 -0
  9. package/ChartZoomSlider/internals/ChartAxisZoomSliderThumb.js +92 -0
  10. package/ChartZoomSlider/internals/ChartsTooltipZoomSliderValue.d.ts +11 -0
  11. package/ChartZoomSlider/internals/ChartsTooltipZoomSliderValue.js +58 -0
  12. package/ChartZoomSlider/internals/chartAxisZoomSliderThumbClasses.d.ts +17 -0
  13. package/ChartZoomSlider/internals/{chartAxisZoomSliderHandleClasses.js → chartAxisZoomSliderThumbClasses.js} +6 -6
  14. package/FunnelChart/FunnelChart.js +4 -3
  15. package/FunnelChart/FunnelPlot.js +2 -0
  16. package/FunnelChart/FunnelSection.js +2 -1
  17. package/FunnelChart/curves/curve.types.d.ts +4 -0
  18. package/FunnelChart/curves/pyramid.d.ts +3 -1
  19. package/FunnelChart/curves/pyramid.js +37 -10
  20. package/FunnelChart/curves/step-pyramid.d.ts +10 -2
  21. package/FunnelChart/curves/step-pyramid.js +96 -20
  22. package/FunnelChart/curves/step.d.ts +5 -1
  23. package/FunnelChart/curves/step.js +20 -2
  24. package/FunnelChart/funnel.types.d.ts +7 -0
  25. package/FunnelChart/seriesConfig/seriesProcessor.js +47 -1
  26. package/Heatmap/Heatmap.d.ts +1 -1
  27. package/Heatmap/Heatmap.js +25 -21
  28. package/Heatmap/HeatmapTooltip/HeatmapTooltip.classes.d.ts +2 -0
  29. package/Heatmap/HeatmapTooltip/HeatmapTooltip.classes.js +27 -0
  30. package/Heatmap/HeatmapTooltip/HeatmapTooltip.d.ts +1 -10
  31. package/Heatmap/HeatmapTooltip/HeatmapTooltip.js +4 -102
  32. package/Heatmap/HeatmapTooltip/HeatmapTooltip.types.d.ts +10 -0
  33. package/Heatmap/HeatmapTooltip/HeatmapTooltip.types.js +5 -0
  34. package/Heatmap/HeatmapTooltip/HeatmapTooltipContent.d.ts +7 -0
  35. package/Heatmap/HeatmapTooltip/HeatmapTooltipContent.js +96 -0
  36. package/Heatmap/HeatmapTooltip/index.d.ts +3 -1
  37. package/Heatmap/HeatmapTooltip/index.js +11 -0
  38. package/LineChartPro/LineChartPro.js +37 -20
  39. package/ScatterChartPro/ScatterChartPro.js +38 -21
  40. package/esm/BarChartPro/BarChartPro.js +35 -18
  41. package/esm/ChartContainerPro/ChartContainerPro.js +1 -0
  42. package/esm/ChartDataProviderPro/ChartDataProviderPro.js +1 -1
  43. package/esm/ChartZoomSlider/index.d.ts +1 -1
  44. package/esm/ChartZoomSlider/index.js +1 -1
  45. package/esm/ChartZoomSlider/internals/ChartAxisZoomSlider.js +94 -60
  46. package/esm/ChartZoomSlider/internals/ChartAxisZoomSliderThumb.d.ts +12 -0
  47. package/esm/ChartZoomSlider/internals/ChartAxisZoomSliderThumb.js +85 -0
  48. package/esm/ChartZoomSlider/internals/ChartsTooltipZoomSliderValue.d.ts +11 -0
  49. package/esm/ChartZoomSlider/internals/ChartsTooltipZoomSliderValue.js +52 -0
  50. package/esm/ChartZoomSlider/internals/chartAxisZoomSliderThumbClasses.d.ts +17 -0
  51. package/esm/ChartZoomSlider/internals/{chartAxisZoomSliderHandleClasses.js → chartAxisZoomSliderThumbClasses.js} +4 -4
  52. package/esm/FunnelChart/FunnelChart.js +4 -3
  53. package/esm/FunnelChart/FunnelPlot.js +2 -0
  54. package/esm/FunnelChart/FunnelSection.js +1 -0
  55. package/esm/FunnelChart/curves/curve.types.d.ts +4 -0
  56. package/esm/FunnelChart/curves/pyramid.d.ts +3 -1
  57. package/esm/FunnelChart/curves/pyramid.js +37 -10
  58. package/esm/FunnelChart/curves/step-pyramid.d.ts +10 -2
  59. package/esm/FunnelChart/curves/step-pyramid.js +96 -20
  60. package/esm/FunnelChart/curves/step.d.ts +5 -1
  61. package/esm/FunnelChart/curves/step.js +20 -2
  62. package/esm/FunnelChart/funnel.types.d.ts +7 -0
  63. package/esm/FunnelChart/seriesConfig/seriesProcessor.js +47 -1
  64. package/esm/Heatmap/Heatmap.d.ts +1 -1
  65. package/esm/Heatmap/Heatmap.js +23 -19
  66. package/esm/Heatmap/HeatmapTooltip/HeatmapTooltip.classes.d.ts +2 -0
  67. package/esm/Heatmap/HeatmapTooltip/HeatmapTooltip.classes.js +19 -0
  68. package/esm/Heatmap/HeatmapTooltip/HeatmapTooltip.d.ts +1 -10
  69. package/esm/Heatmap/HeatmapTooltip/HeatmapTooltip.js +5 -103
  70. package/esm/Heatmap/HeatmapTooltip/HeatmapTooltip.types.d.ts +10 -0
  71. package/esm/Heatmap/HeatmapTooltip/HeatmapTooltip.types.js +1 -0
  72. package/esm/Heatmap/HeatmapTooltip/HeatmapTooltipContent.d.ts +7 -0
  73. package/esm/Heatmap/HeatmapTooltip/HeatmapTooltipContent.js +89 -0
  74. package/esm/Heatmap/HeatmapTooltip/index.d.ts +3 -1
  75. package/esm/Heatmap/HeatmapTooltip/index.js +3 -1
  76. package/esm/LineChartPro/LineChartPro.js +35 -18
  77. package/esm/ScatterChartPro/ScatterChartPro.js +36 -19
  78. package/esm/index.js +1 -1
  79. package/esm/internals/plugins/useChartProExport/exportImage.js +1 -1
  80. package/esm/internals/plugins/useChartProZoom/useChartProZoom.js +2 -2
  81. package/index.js +1 -1
  82. package/internals/plugins/useChartProExport/exportImage.js +1 -1
  83. package/internals/plugins/useChartProZoom/useChartProZoom.js +2 -2
  84. package/package.json +5 -5
  85. package/ChartZoomSlider/internals/ChartAxisZoomSliderHandle.d.ts +0 -12
  86. package/ChartZoomSlider/internals/ChartAxisZoomSliderHandle.js +0 -92
  87. package/ChartZoomSlider/internals/chartAxisZoomSliderHandleClasses.d.ts +0 -17
  88. package/esm/ChartZoomSlider/internals/ChartAxisZoomSliderHandle.d.ts +0 -12
  89. package/esm/ChartZoomSlider/internals/ChartAxisZoomSliderHandle.js +0 -85
  90. package/esm/ChartZoomSlider/internals/chartAxisZoomSliderHandleClasses.d.ts +0 -17
@@ -0,0 +1,89 @@
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, useItemTooltip } from '@mui/x-charts/ChartsTooltip';
7
+ import { useXAxis, useYAxis } from '@mui/x-charts/hooks';
8
+ import { getLabel, ChartsLabelMark } from '@mui/x-charts/internals';
9
+ import { useHeatmapSeriesContext } from "../../hooks/useHeatmapSeries.js";
10
+ import { HeatmapTooltipAxesValue } from "./HeatmapTooltipAxesValue.js";
11
+ import { useUtilityClasses } from "./HeatmapTooltip.classes.js";
12
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
13
+ export function HeatmapTooltipContent(props) {
14
+ const classes = useUtilityClasses(props);
15
+ const xAxis = useXAxis();
16
+ const yAxis = useYAxis();
17
+ const heatmapSeries = useHeatmapSeriesContext();
18
+ const tooltipData = useItemTooltip();
19
+ if (!tooltipData || !heatmapSeries || heatmapSeries.seriesOrder.length === 0) {
20
+ return null;
21
+ }
22
+ const {
23
+ series,
24
+ seriesOrder
25
+ } = heatmapSeries;
26
+ const seriesId = seriesOrder[0];
27
+ const {
28
+ color,
29
+ value,
30
+ identifier,
31
+ markType
32
+ } = tooltipData;
33
+ const [xIndex, yIndex] = value;
34
+ const formattedX = xAxis.valueFormatter?.(xAxis.data[xIndex], {
35
+ location: 'tooltip',
36
+ scale: xAxis.scale
37
+ }) ?? xAxis.data[xIndex].toLocaleString();
38
+ const formattedY = yAxis.valueFormatter?.(yAxis.data[yIndex], {
39
+ location: 'tooltip',
40
+ scale: yAxis.scale
41
+ }) ?? yAxis.data[yIndex].toLocaleString();
42
+ const formattedValue = series[seriesId].valueFormatter(value, {
43
+ dataIndex: identifier.dataIndex
44
+ });
45
+ const seriesLabel = getLabel(series[seriesId].label, 'tooltip');
46
+ return /*#__PURE__*/_jsx(ChartsTooltipPaper, {
47
+ className: classes.paper,
48
+ children: /*#__PURE__*/_jsxs(ChartsTooltipTable, {
49
+ className: classes.table,
50
+ children: [/*#__PURE__*/_jsxs(HeatmapTooltipAxesValue, {
51
+ children: [/*#__PURE__*/_jsx("span", {
52
+ children: formattedX
53
+ }), /*#__PURE__*/_jsx("span", {
54
+ children: formattedY
55
+ })]
56
+ }), /*#__PURE__*/_jsx("tbody", {
57
+ children: /*#__PURE__*/_jsxs(ChartsTooltipRow, {
58
+ className: classes.row,
59
+ children: [/*#__PURE__*/_jsxs(ChartsTooltipCell, {
60
+ className: clsx(classes.labelCell, classes.cell),
61
+ component: "th",
62
+ children: [/*#__PURE__*/_jsx("div", {
63
+ className: classes.markContainer,
64
+ children: /*#__PURE__*/_jsx(ChartsLabelMark, {
65
+ type: markType,
66
+ color: color,
67
+ className: classes.mark
68
+ })
69
+ }), seriesLabel]
70
+ }), /*#__PURE__*/_jsx(ChartsTooltipCell, {
71
+ className: clsx(classes.valueCell, classes.cell),
72
+ component: "td",
73
+ children: formattedValue
74
+ })]
75
+ })
76
+ })]
77
+ })
78
+ });
79
+ }
80
+ process.env.NODE_ENV !== "production" ? HeatmapTooltipContent.propTypes = {
81
+ // ----------------------------- Warning --------------------------------
82
+ // | These PropTypes are generated from the TypeScript type definitions |
83
+ // | To update them edit the TypeScript types and run "pnpm proptypes" |
84
+ // ----------------------------------------------------------------------
85
+ /**
86
+ * Override or extend the styles applied to the component.
87
+ */
88
+ classes: PropTypes.object
89
+ } : void 0;
@@ -1 +1,3 @@
1
- export * from "./HeatmapTooltip.js";
1
+ export * from "./HeatmapTooltip.js";
2
+ export * from "./HeatmapTooltipContent.js";
3
+ export type { HeatmapTooltipProps } from "./HeatmapTooltip.types.js";
@@ -1 +1,3 @@
1
- export * from "./HeatmapTooltip.js";
1
+ export * from "./HeatmapTooltip.js";
2
+ export * from "./HeatmapTooltipContent.js";
3
+ export {};
@@ -80,11 +80,12 @@ const LineChartPro = /*#__PURE__*/React.forwardRef(function LineChartPro(inProps
80
80
  })), /*#__PURE__*/_jsx(ChartsAxis, _extends({}, chartsAxisProps)), /*#__PURE__*/_jsx(ChartZoomSlider, {}), /*#__PURE__*/_jsx("g", {
81
81
  "data-drawing-container": true,
82
82
  children: /*#__PURE__*/_jsx(MarkPlot, _extends({}, markPlotProps))
83
- }), /*#__PURE__*/_jsx(LineHighlightPlot, _extends({}, lineHighlightPlotProps)), !props.loading && /*#__PURE__*/_jsx(Tooltip, _extends({}, props.slotProps?.tooltip)), /*#__PURE__*/_jsx(ChartsClipPath, _extends({}, clipPathProps)), children]
84
- }))]
83
+ }), /*#__PURE__*/_jsx(LineHighlightPlot, _extends({}, lineHighlightPlotProps)), /*#__PURE__*/_jsx(ChartsClipPath, _extends({}, clipPathProps)), children]
84
+ })), !props.loading && /*#__PURE__*/_jsx(Tooltip, _extends({}, props.slotProps?.tooltip))]
85
85
  }))
86
86
  }));
87
87
  });
88
+ if (process.env.NODE_ENV !== "production") LineChartPro.displayName = "LineChartPro";
88
89
  process.env.NODE_ENV !== "production" ? LineChartPro.propTypes = {
89
90
  // ----------------------------- Warning --------------------------------
90
91
  // | These PropTypes are generated from the TypeScript type definitions |
@@ -315,7 +316,8 @@ process.env.NODE_ENV !== "production" ? LineChartPro.propTypes = {
315
316
  minStart: PropTypes.number,
316
317
  panning: PropTypes.bool,
317
318
  slider: PropTypes.shape({
318
- enabled: PropTypes.bool
319
+ enabled: PropTypes.bool,
320
+ size: PropTypes.number
319
321
  }),
320
322
  step: PropTypes.number
321
323
  }), PropTypes.bool])
@@ -378,7 +380,8 @@ process.env.NODE_ENV !== "production" ? LineChartPro.propTypes = {
378
380
  minStart: PropTypes.number,
379
381
  panning: PropTypes.bool,
380
382
  slider: PropTypes.shape({
381
- enabled: PropTypes.bool
383
+ enabled: PropTypes.bool,
384
+ size: PropTypes.number
382
385
  }),
383
386
  step: PropTypes.number
384
387
  }), PropTypes.bool])
@@ -436,7 +439,8 @@ process.env.NODE_ENV !== "production" ? LineChartPro.propTypes = {
436
439
  minStart: PropTypes.number,
437
440
  panning: PropTypes.bool,
438
441
  slider: PropTypes.shape({
439
- enabled: PropTypes.bool
442
+ enabled: PropTypes.bool,
443
+ size: PropTypes.number
440
444
  }),
441
445
  step: PropTypes.number
442
446
  }), PropTypes.bool])
@@ -494,7 +498,8 @@ process.env.NODE_ENV !== "production" ? LineChartPro.propTypes = {
494
498
  minStart: PropTypes.number,
495
499
  panning: PropTypes.bool,
496
500
  slider: PropTypes.shape({
497
- enabled: PropTypes.bool
501
+ enabled: PropTypes.bool,
502
+ size: PropTypes.number
498
503
  }),
499
504
  step: PropTypes.number
500
505
  }), PropTypes.bool])
@@ -552,7 +557,8 @@ process.env.NODE_ENV !== "production" ? LineChartPro.propTypes = {
552
557
  minStart: PropTypes.number,
553
558
  panning: PropTypes.bool,
554
559
  slider: PropTypes.shape({
555
- enabled: PropTypes.bool
560
+ enabled: PropTypes.bool,
561
+ size: PropTypes.number
556
562
  }),
557
563
  step: PropTypes.number
558
564
  }), PropTypes.bool])
@@ -610,7 +616,8 @@ process.env.NODE_ENV !== "production" ? LineChartPro.propTypes = {
610
616
  minStart: PropTypes.number,
611
617
  panning: PropTypes.bool,
612
618
  slider: PropTypes.shape({
613
- enabled: PropTypes.bool
619
+ enabled: PropTypes.bool,
620
+ size: PropTypes.number
614
621
  }),
615
622
  step: PropTypes.number
616
623
  }), PropTypes.bool])
@@ -668,7 +675,8 @@ process.env.NODE_ENV !== "production" ? LineChartPro.propTypes = {
668
675
  minStart: PropTypes.number,
669
676
  panning: PropTypes.bool,
670
677
  slider: PropTypes.shape({
671
- enabled: PropTypes.bool
678
+ enabled: PropTypes.bool,
679
+ size: PropTypes.number
672
680
  }),
673
681
  step: PropTypes.number
674
682
  }), PropTypes.bool])
@@ -726,7 +734,8 @@ process.env.NODE_ENV !== "production" ? LineChartPro.propTypes = {
726
734
  minStart: PropTypes.number,
727
735
  panning: PropTypes.bool,
728
736
  slider: PropTypes.shape({
729
- enabled: PropTypes.bool
737
+ enabled: PropTypes.bool,
738
+ size: PropTypes.number
730
739
  }),
731
740
  step: PropTypes.number
732
741
  }), PropTypes.bool])
@@ -796,7 +805,8 @@ process.env.NODE_ENV !== "production" ? LineChartPro.propTypes = {
796
805
  minStart: PropTypes.number,
797
806
  panning: PropTypes.bool,
798
807
  slider: PropTypes.shape({
799
- enabled: PropTypes.bool
808
+ enabled: PropTypes.bool,
809
+ size: PropTypes.number
800
810
  }),
801
811
  step: PropTypes.number
802
812
  }), PropTypes.bool])
@@ -858,7 +868,8 @@ process.env.NODE_ENV !== "production" ? LineChartPro.propTypes = {
858
868
  minStart: PropTypes.number,
859
869
  panning: PropTypes.bool,
860
870
  slider: PropTypes.shape({
861
- enabled: PropTypes.bool
871
+ enabled: PropTypes.bool,
872
+ size: PropTypes.number
862
873
  }),
863
874
  step: PropTypes.number
864
875
  }), PropTypes.bool])
@@ -915,7 +926,8 @@ process.env.NODE_ENV !== "production" ? LineChartPro.propTypes = {
915
926
  minStart: PropTypes.number,
916
927
  panning: PropTypes.bool,
917
928
  slider: PropTypes.shape({
918
- enabled: PropTypes.bool
929
+ enabled: PropTypes.bool,
930
+ size: PropTypes.number
919
931
  }),
920
932
  step: PropTypes.number
921
933
  }), PropTypes.bool])
@@ -972,7 +984,8 @@ process.env.NODE_ENV !== "production" ? LineChartPro.propTypes = {
972
984
  minStart: PropTypes.number,
973
985
  panning: PropTypes.bool,
974
986
  slider: PropTypes.shape({
975
- enabled: PropTypes.bool
987
+ enabled: PropTypes.bool,
988
+ size: PropTypes.number
976
989
  }),
977
990
  step: PropTypes.number
978
991
  }), PropTypes.bool])
@@ -1029,7 +1042,8 @@ process.env.NODE_ENV !== "production" ? LineChartPro.propTypes = {
1029
1042
  minStart: PropTypes.number,
1030
1043
  panning: PropTypes.bool,
1031
1044
  slider: PropTypes.shape({
1032
- enabled: PropTypes.bool
1045
+ enabled: PropTypes.bool,
1046
+ size: PropTypes.number
1033
1047
  }),
1034
1048
  step: PropTypes.number
1035
1049
  }), PropTypes.bool])
@@ -1086,7 +1100,8 @@ process.env.NODE_ENV !== "production" ? LineChartPro.propTypes = {
1086
1100
  minStart: PropTypes.number,
1087
1101
  panning: PropTypes.bool,
1088
1102
  slider: PropTypes.shape({
1089
- enabled: PropTypes.bool
1103
+ enabled: PropTypes.bool,
1104
+ size: PropTypes.number
1090
1105
  }),
1091
1106
  step: PropTypes.number
1092
1107
  }), PropTypes.bool])
@@ -1143,7 +1158,8 @@ process.env.NODE_ENV !== "production" ? LineChartPro.propTypes = {
1143
1158
  minStart: PropTypes.number,
1144
1159
  panning: PropTypes.bool,
1145
1160
  slider: PropTypes.shape({
1146
- enabled: PropTypes.bool
1161
+ enabled: PropTypes.bool,
1162
+ size: PropTypes.number
1147
1163
  }),
1148
1164
  step: PropTypes.number
1149
1165
  }), PropTypes.bool])
@@ -1200,7 +1216,8 @@ process.env.NODE_ENV !== "production" ? LineChartPro.propTypes = {
1200
1216
  minStart: PropTypes.number,
1201
1217
  panning: PropTypes.bool,
1202
1218
  slider: PropTypes.shape({
1203
- enabled: PropTypes.bool
1219
+ enabled: PropTypes.bool,
1220
+ size: PropTypes.number
1204
1221
  }),
1205
1222
  step: PropTypes.number
1206
1223
  }), PropTypes.bool])
@@ -72,13 +72,14 @@ const ScatterChartPro = /*#__PURE__*/React.forwardRef(function ScatterChartPro(i
72
72
  children: [/*#__PURE__*/_jsx(ChartsAxis, _extends({}, chartsAxisProps)), /*#__PURE__*/_jsx(ChartZoomSlider, {}), /*#__PURE__*/_jsx(ChartsGrid, _extends({}, gridProps)), /*#__PURE__*/_jsx("g", {
73
73
  "data-drawing-container": true,
74
74
  children: /*#__PURE__*/_jsx(ScatterPlot, _extends({}, scatterPlotProps))
75
- }), /*#__PURE__*/_jsx(ChartsOverlay, _extends({}, overlayProps)), /*#__PURE__*/_jsx(ChartsAxisHighlight, _extends({}, axisHighlightProps)), !props.loading && /*#__PURE__*/_jsx(Tooltip, _extends({}, props?.slotProps?.tooltip, {
76
- trigger: "item"
77
- })), children]
75
+ }), /*#__PURE__*/_jsx(ChartsOverlay, _extends({}, overlayProps)), /*#__PURE__*/_jsx(ChartsAxisHighlight, _extends({}, axisHighlightProps)), children]
76
+ })), !props.loading && /*#__PURE__*/_jsx(Tooltip, _extends({}, props?.slotProps?.tooltip, {
77
+ trigger: "item"
78
78
  }))]
79
79
  }))
80
80
  }));
81
81
  });
82
+ if (process.env.NODE_ENV !== "production") ScatterChartPro.displayName = "ScatterChartPro";
82
83
  process.env.NODE_ENV !== "production" ? ScatterChartPro.propTypes = {
83
84
  // ----------------------------- Warning --------------------------------
84
85
  // | These PropTypes are generated from the TypeScript type definitions |
@@ -309,7 +310,8 @@ process.env.NODE_ENV !== "production" ? ScatterChartPro.propTypes = {
309
310
  minStart: PropTypes.number,
310
311
  panning: PropTypes.bool,
311
312
  slider: PropTypes.shape({
312
- enabled: PropTypes.bool
313
+ enabled: PropTypes.bool,
314
+ size: PropTypes.number
313
315
  }),
314
316
  step: PropTypes.number
315
317
  }), PropTypes.bool])
@@ -372,7 +374,8 @@ process.env.NODE_ENV !== "production" ? ScatterChartPro.propTypes = {
372
374
  minStart: PropTypes.number,
373
375
  panning: PropTypes.bool,
374
376
  slider: PropTypes.shape({
375
- enabled: PropTypes.bool
377
+ enabled: PropTypes.bool,
378
+ size: PropTypes.number
376
379
  }),
377
380
  step: PropTypes.number
378
381
  }), PropTypes.bool])
@@ -430,7 +433,8 @@ process.env.NODE_ENV !== "production" ? ScatterChartPro.propTypes = {
430
433
  minStart: PropTypes.number,
431
434
  panning: PropTypes.bool,
432
435
  slider: PropTypes.shape({
433
- enabled: PropTypes.bool
436
+ enabled: PropTypes.bool,
437
+ size: PropTypes.number
434
438
  }),
435
439
  step: PropTypes.number
436
440
  }), PropTypes.bool])
@@ -488,7 +492,8 @@ process.env.NODE_ENV !== "production" ? ScatterChartPro.propTypes = {
488
492
  minStart: PropTypes.number,
489
493
  panning: PropTypes.bool,
490
494
  slider: PropTypes.shape({
491
- enabled: PropTypes.bool
495
+ enabled: PropTypes.bool,
496
+ size: PropTypes.number
492
497
  }),
493
498
  step: PropTypes.number
494
499
  }), PropTypes.bool])
@@ -546,7 +551,8 @@ process.env.NODE_ENV !== "production" ? ScatterChartPro.propTypes = {
546
551
  minStart: PropTypes.number,
547
552
  panning: PropTypes.bool,
548
553
  slider: PropTypes.shape({
549
- enabled: PropTypes.bool
554
+ enabled: PropTypes.bool,
555
+ size: PropTypes.number
550
556
  }),
551
557
  step: PropTypes.number
552
558
  }), PropTypes.bool])
@@ -604,7 +610,8 @@ process.env.NODE_ENV !== "production" ? ScatterChartPro.propTypes = {
604
610
  minStart: PropTypes.number,
605
611
  panning: PropTypes.bool,
606
612
  slider: PropTypes.shape({
607
- enabled: PropTypes.bool
613
+ enabled: PropTypes.bool,
614
+ size: PropTypes.number
608
615
  }),
609
616
  step: PropTypes.number
610
617
  }), PropTypes.bool])
@@ -662,7 +669,8 @@ process.env.NODE_ENV !== "production" ? ScatterChartPro.propTypes = {
662
669
  minStart: PropTypes.number,
663
670
  panning: PropTypes.bool,
664
671
  slider: PropTypes.shape({
665
- enabled: PropTypes.bool
672
+ enabled: PropTypes.bool,
673
+ size: PropTypes.number
666
674
  }),
667
675
  step: PropTypes.number
668
676
  }), PropTypes.bool])
@@ -720,7 +728,8 @@ process.env.NODE_ENV !== "production" ? ScatterChartPro.propTypes = {
720
728
  minStart: PropTypes.number,
721
729
  panning: PropTypes.bool,
722
730
  slider: PropTypes.shape({
723
- enabled: PropTypes.bool
731
+ enabled: PropTypes.bool,
732
+ size: PropTypes.number
724
733
  }),
725
734
  step: PropTypes.number
726
735
  }), PropTypes.bool])
@@ -790,7 +799,8 @@ process.env.NODE_ENV !== "production" ? ScatterChartPro.propTypes = {
790
799
  minStart: PropTypes.number,
791
800
  panning: PropTypes.bool,
792
801
  slider: PropTypes.shape({
793
- enabled: PropTypes.bool
802
+ enabled: PropTypes.bool,
803
+ size: PropTypes.number
794
804
  }),
795
805
  step: PropTypes.number
796
806
  }), PropTypes.bool])
@@ -852,7 +862,8 @@ process.env.NODE_ENV !== "production" ? ScatterChartPro.propTypes = {
852
862
  minStart: PropTypes.number,
853
863
  panning: PropTypes.bool,
854
864
  slider: PropTypes.shape({
855
- enabled: PropTypes.bool
865
+ enabled: PropTypes.bool,
866
+ size: PropTypes.number
856
867
  }),
857
868
  step: PropTypes.number
858
869
  }), PropTypes.bool])
@@ -909,7 +920,8 @@ process.env.NODE_ENV !== "production" ? ScatterChartPro.propTypes = {
909
920
  minStart: PropTypes.number,
910
921
  panning: PropTypes.bool,
911
922
  slider: PropTypes.shape({
912
- enabled: PropTypes.bool
923
+ enabled: PropTypes.bool,
924
+ size: PropTypes.number
913
925
  }),
914
926
  step: PropTypes.number
915
927
  }), PropTypes.bool])
@@ -966,7 +978,8 @@ process.env.NODE_ENV !== "production" ? ScatterChartPro.propTypes = {
966
978
  minStart: PropTypes.number,
967
979
  panning: PropTypes.bool,
968
980
  slider: PropTypes.shape({
969
- enabled: PropTypes.bool
981
+ enabled: PropTypes.bool,
982
+ size: PropTypes.number
970
983
  }),
971
984
  step: PropTypes.number
972
985
  }), PropTypes.bool])
@@ -1023,7 +1036,8 @@ process.env.NODE_ENV !== "production" ? ScatterChartPro.propTypes = {
1023
1036
  minStart: PropTypes.number,
1024
1037
  panning: PropTypes.bool,
1025
1038
  slider: PropTypes.shape({
1026
- enabled: PropTypes.bool
1039
+ enabled: PropTypes.bool,
1040
+ size: PropTypes.number
1027
1041
  }),
1028
1042
  step: PropTypes.number
1029
1043
  }), PropTypes.bool])
@@ -1080,7 +1094,8 @@ process.env.NODE_ENV !== "production" ? ScatterChartPro.propTypes = {
1080
1094
  minStart: PropTypes.number,
1081
1095
  panning: PropTypes.bool,
1082
1096
  slider: PropTypes.shape({
1083
- enabled: PropTypes.bool
1097
+ enabled: PropTypes.bool,
1098
+ size: PropTypes.number
1084
1099
  }),
1085
1100
  step: PropTypes.number
1086
1101
  }), PropTypes.bool])
@@ -1137,7 +1152,8 @@ process.env.NODE_ENV !== "production" ? ScatterChartPro.propTypes = {
1137
1152
  minStart: PropTypes.number,
1138
1153
  panning: PropTypes.bool,
1139
1154
  slider: PropTypes.shape({
1140
- enabled: PropTypes.bool
1155
+ enabled: PropTypes.bool,
1156
+ size: PropTypes.number
1141
1157
  }),
1142
1158
  step: PropTypes.number
1143
1159
  }), PropTypes.bool])
@@ -1194,7 +1210,8 @@ process.env.NODE_ENV !== "production" ? ScatterChartPro.propTypes = {
1194
1210
  minStart: PropTypes.number,
1195
1211
  panning: PropTypes.bool,
1196
1212
  slider: PropTypes.shape({
1197
- enabled: PropTypes.bool
1213
+ enabled: PropTypes.bool,
1214
+ size: PropTypes.number
1198
1215
  }),
1199
1216
  step: PropTypes.number
1200
1217
  }), PropTypes.bool])
package/esm/index.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @mui/x-charts-pro v8.3.1
2
+ * @mui/x-charts-pro v8.4.0
3
3
  *
4
4
  * @license MUI X Commercial
5
5
  * This source code is licensed under the commercial license found in the
@@ -4,7 +4,7 @@ import { createExportIframe } from "./common.js";
4
4
  export const getDrawDocument = async () => {
5
5
  try {
6
6
  const module = await import('rasterizehtml');
7
- return module.drawDocument;
7
+ return (module.default || module).drawDocument;
8
8
  } catch (error) {
9
9
  throw new Error(`MUI X Charts: Failed to import 'rasterizehtml' module. This dependency is mandatory when exporting a chart as an image. Make sure you have it installed as a dependency.`, {
10
10
  cause: error
@@ -199,7 +199,7 @@ export const useChartProZoom = ({
199
199
  const handleDown = event => {
200
200
  panningEventCacheRef.current.push(event);
201
201
  const point = getSVGPoint(element, event);
202
- if (!instance.isPointInside(point)) {
202
+ if (!instance.isPointInside(point.x, point.y)) {
203
203
  return;
204
204
  }
205
205
  // If there is only one pointer, prevent selecting text
@@ -245,7 +245,7 @@ export const useChartProZoom = ({
245
245
  return;
246
246
  }
247
247
  const point = getSVGPoint(element, event);
248
- if (!instance.isPointInside(point)) {
248
+ if (!instance.isPointInside(point.x, point.y)) {
249
249
  return;
250
250
  }
251
251
  event.preventDefault();
package/index.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @mui/x-charts-pro v8.3.1
2
+ * @mui/x-charts-pro v8.4.0
3
3
  *
4
4
  * @license MUI X Commercial
5
5
  * This source code is licensed under the commercial license found in the
@@ -13,7 +13,7 @@ var _common = require("./common");
13
13
  const getDrawDocument = async () => {
14
14
  try {
15
15
  const module = await Promise.resolve().then(() => (0, _interopRequireWildcard2.default)(require('rasterizehtml')));
16
- return module.drawDocument;
16
+ return (module.default || module).drawDocument;
17
17
  } catch (error) {
18
18
  throw new Error(`MUI X Charts: Failed to import 'rasterizehtml' module. This dependency is mandatory when exporting a chart as an image. Make sure you have it installed as a dependency.`, {
19
19
  cause: error
@@ -206,7 +206,7 @@ const useChartProZoom = ({
206
206
  const handleDown = event => {
207
207
  panningEventCacheRef.current.push(event);
208
208
  const point = (0, _internals.getSVGPoint)(element, event);
209
- if (!instance.isPointInside(point)) {
209
+ if (!instance.isPointInside(point.x, point.y)) {
210
210
  return;
211
211
  }
212
212
  // If there is only one pointer, prevent selecting text
@@ -252,7 +252,7 @@ const useChartProZoom = ({
252
252
  return;
253
253
  }
254
254
  const point = (0, _internals.getSVGPoint)(element, event);
255
- if (!instance.isPointInside(point)) {
255
+ if (!instance.isPointInside(point.x, point.y)) {
256
256
  return;
257
257
  }
258
258
  event.preventDefault();
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mui/x-charts-pro",
3
- "version": "8.3.1",
3
+ "version": "8.4.0",
4
4
  "author": "MUI Team",
5
5
  "description": "The Pro plan edition of the MUI X Charts components.",
6
6
  "main": "./index.js",
@@ -33,10 +33,10 @@
33
33
  "@mui/utils": "^7.0.2",
34
34
  "clsx": "^2.1.1",
35
35
  "prop-types": "^15.8.1",
36
- "@mui/x-internals": "8.3.1",
37
- "@mui/x-charts-vendor": "8.3.1",
38
- "@mui/x-license": "8.3.1",
39
- "@mui/x-charts": "8.3.1"
36
+ "@mui/x-internals": "8.4.0",
37
+ "@mui/x-license": "8.4.0",
38
+ "@mui/x-charts": "8.4.0",
39
+ "@mui/x-charts-vendor": "8.4.0"
40
40
  },
41
41
  "peerDependencies": {
42
42
  "@emotion/react": "^11.9.0",
@@ -1,12 +0,0 @@
1
- import * as React from 'react';
2
- export interface ChartZoomSliderHandleOwnerState {
3
- onResize: (event: PointerEvent) => void;
4
- orientation: 'horizontal' | 'vertical';
5
- placement: 'start' | 'end';
6
- }
7
- export interface ChartZoomSliderHandleProps extends Pick<React.ComponentProps<'rect'>, 'x' | 'y' | 'width' | 'height' | 'rx' | 'ry'>, ChartZoomSliderHandleOwnerState {}
8
- /**
9
- * Renders the zoom slider handle, which is responsible for resizing the zoom range.
10
- * @internal
11
- */
12
- export declare const ChartAxisZoomSliderHandle: React.ForwardRefExoticComponent<ChartZoomSliderHandleProps & React.RefAttributes<SVGRectElement>>;
@@ -1,92 +0,0 @@
1
- "use strict";
2
- 'use client';
3
-
4
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
5
- var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
6
- Object.defineProperty(exports, "__esModule", {
7
- value: true
8
- });
9
- exports.ChartAxisZoomSliderHandle = void 0;
10
- var React = _interopRequireWildcard(require("react"));
11
- var _styles = require("@mui/material/styles");
12
- var _useForkRef = _interopRequireDefault(require("@mui/utils/useForkRef"));
13
- var _useEventCallback = _interopRequireDefault(require("@mui/utils/useEventCallback"));
14
- var _rafThrottle = require("@mui/x-internals/rafThrottle");
15
- var _chartAxisZoomSliderHandleClasses = require("./chartAxisZoomSliderHandleClasses");
16
- var _jsxRuntime = require("react/jsx-runtime");
17
- const Rect = (0, _styles.styled)('rect')(({
18
- theme
19
- }) => ({
20
- [`&.${_chartAxisZoomSliderHandleClasses.chartAxisZoomSliderHandleClasses.root}`]: {
21
- fill: theme.palette.mode === 'dark' ? (theme.vars || theme).palette.grey[300] : (theme.vars || theme).palette.common.white,
22
- stroke: theme.palette.mode === 'dark' ? (theme.vars || theme).palette.grey[600] : (theme.vars || theme).palette.grey[500]
23
- },
24
- [`&.${_chartAxisZoomSliderHandleClasses.chartAxisZoomSliderHandleClasses.horizontal}`]: {
25
- cursor: 'ew-resize'
26
- },
27
- [`&.${_chartAxisZoomSliderHandleClasses.chartAxisZoomSliderHandleClasses.vertical}`]: {
28
- cursor: 'ns-resize'
29
- }
30
- }));
31
- /**
32
- * Renders the zoom slider handle, which is responsible for resizing the zoom range.
33
- * @internal
34
- */
35
- const ChartAxisZoomSliderHandle = exports.ChartAxisZoomSliderHandle = /*#__PURE__*/React.forwardRef(function ChartPreviewHandle({
36
- x,
37
- y,
38
- width,
39
- height,
40
- onResize,
41
- orientation,
42
- placement,
43
- rx = 4,
44
- ry = 4
45
- }, forwardedRef) {
46
- const classes = (0, _chartAxisZoomSliderHandleClasses.useUtilityClasses)({
47
- onResize,
48
- orientation,
49
- placement
50
- });
51
- const handleRef = React.useRef(null);
52
- const ref = (0, _useForkRef.default)(handleRef, forwardedRef);
53
- const onResizeEvent = (0, _useEventCallback.default)(onResize);
54
- React.useEffect(() => {
55
- const handle = handleRef.current;
56
- if (!handle) {
57
- return;
58
- }
59
- const onPointerMove = (0, _rafThrottle.rafThrottle)(event => {
60
- onResizeEvent(event);
61
- });
62
- const onPointerUp = () => {
63
- handle.removeEventListener('pointermove', onPointerMove);
64
- handle.removeEventListener('pointerup', onPointerUp);
65
- };
66
- const onPointerDown = event => {
67
- // Prevent text selection when dragging the handle
68
- event.preventDefault();
69
- event.stopPropagation();
70
- handle.setPointerCapture(event.pointerId);
71
- handle.addEventListener('pointerup', onPointerUp);
72
- handle.addEventListener('pointermove', onPointerMove);
73
- };
74
- handle.addEventListener('pointerdown', onPointerDown);
75
-
76
- // eslint-disable-next-line consistent-return
77
- return () => {
78
- handle.removeEventListener('pointerdown', onPointerDown);
79
- onPointerMove.clear();
80
- };
81
- }, [onResizeEvent, orientation]);
82
- return /*#__PURE__*/(0, _jsxRuntime.jsx)(Rect, {
83
- className: classes.root,
84
- ref: ref,
85
- x: x,
86
- y: y,
87
- width: width,
88
- height: height,
89
- rx: rx,
90
- ry: ry
91
- });
92
- });
@@ -1,17 +0,0 @@
1
- import type { ChartZoomSliderHandleOwnerState } from "./ChartAxisZoomSliderHandle.js";
2
- export interface ChartAxisZoomSliderHandleClasses {
3
- /** Styles applied to the root element. */
4
- root: string;
5
- /** Styles applied to the root element when it is horizontal. */
6
- horizontal: string;
7
- /** Styles applied to the root element when it is vertical. */
8
- vertical: string;
9
- /** Styles applied to the root element when it is a start handle. */
10
- start: string;
11
- /** Styles applied to the root element when it is an end handle. */
12
- end: string;
13
- }
14
- export type ChartAxisZoomSliderHandleClassKey = keyof ChartAxisZoomSliderHandleClasses;
15
- export declare const chartAxisZoomSliderHandleClasses: ChartAxisZoomSliderHandleClasses;
16
- export declare function getAxisZoomSliderHandleUtilityClass(slot: string): string;
17
- export declare const useUtilityClasses: (ownerState: ChartZoomSliderHandleOwnerState) => Record<"root", string>;