@mui/x-charts-pro 8.3.0 → 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.
- package/BarChartPro/BarChartPro.js +37 -20
- package/CHANGELOG.md +206 -10
- package/ChartContainerPro/ChartContainerPro.js +1 -0
- package/ChartDataProviderPro/ChartDataProviderPro.js +1 -1
- package/ChartZoomSlider/index.d.ts +1 -1
- package/ChartZoomSlider/index.js +4 -4
- package/ChartZoomSlider/internals/ChartAxisZoomSlider.js +94 -60
- package/ChartZoomSlider/internals/ChartAxisZoomSliderThumb.d.ts +12 -0
- package/ChartZoomSlider/internals/ChartAxisZoomSliderThumb.js +92 -0
- package/ChartZoomSlider/internals/ChartsTooltipZoomSliderValue.d.ts +11 -0
- package/ChartZoomSlider/internals/ChartsTooltipZoomSliderValue.js +58 -0
- package/ChartZoomSlider/internals/chartAxisZoomSliderThumbClasses.d.ts +17 -0
- package/ChartZoomSlider/internals/{chartAxisZoomSliderHandleClasses.js → chartAxisZoomSliderThumbClasses.js} +6 -6
- package/FunnelChart/FunnelChart.js +4 -3
- package/FunnelChart/FunnelPlot.js +2 -0
- package/FunnelChart/FunnelSection.js +2 -1
- package/FunnelChart/curves/curve.types.d.ts +4 -0
- package/FunnelChart/curves/pyramid.d.ts +3 -1
- package/FunnelChart/curves/pyramid.js +37 -10
- package/FunnelChart/curves/step-pyramid.d.ts +10 -2
- package/FunnelChart/curves/step-pyramid.js +96 -20
- package/FunnelChart/curves/step.d.ts +5 -1
- package/FunnelChart/curves/step.js +20 -2
- package/FunnelChart/funnel.types.d.ts +7 -0
- package/FunnelChart/seriesConfig/seriesProcessor.js +47 -1
- package/Heatmap/Heatmap.d.ts +1 -1
- package/Heatmap/Heatmap.js +25 -21
- package/Heatmap/HeatmapTooltip/HeatmapTooltip.classes.d.ts +2 -0
- package/Heatmap/HeatmapTooltip/HeatmapTooltip.classes.js +27 -0
- package/Heatmap/HeatmapTooltip/HeatmapTooltip.d.ts +1 -10
- package/Heatmap/HeatmapTooltip/HeatmapTooltip.js +4 -102
- package/Heatmap/HeatmapTooltip/HeatmapTooltip.types.d.ts +10 -0
- package/Heatmap/HeatmapTooltip/HeatmapTooltip.types.js +5 -0
- package/Heatmap/HeatmapTooltip/HeatmapTooltipContent.d.ts +7 -0
- package/Heatmap/HeatmapTooltip/HeatmapTooltipContent.js +96 -0
- package/Heatmap/HeatmapTooltip/index.d.ts +3 -1
- package/Heatmap/HeatmapTooltip/index.js +11 -0
- package/LineChartPro/LineChartPro.js +37 -20
- package/ScatterChartPro/ScatterChartPro.js +38 -21
- package/esm/BarChartPro/BarChartPro.js +35 -18
- package/esm/ChartContainerPro/ChartContainerPro.js +1 -0
- package/esm/ChartDataProviderPro/ChartDataProviderPro.js +1 -1
- package/esm/ChartZoomSlider/index.d.ts +1 -1
- package/esm/ChartZoomSlider/index.js +1 -1
- package/esm/ChartZoomSlider/internals/ChartAxisZoomSlider.js +94 -60
- package/esm/ChartZoomSlider/internals/ChartAxisZoomSliderThumb.d.ts +12 -0
- package/esm/ChartZoomSlider/internals/ChartAxisZoomSliderThumb.js +85 -0
- package/esm/ChartZoomSlider/internals/ChartsTooltipZoomSliderValue.d.ts +11 -0
- package/esm/ChartZoomSlider/internals/ChartsTooltipZoomSliderValue.js +52 -0
- package/esm/ChartZoomSlider/internals/chartAxisZoomSliderThumbClasses.d.ts +17 -0
- package/esm/ChartZoomSlider/internals/{chartAxisZoomSliderHandleClasses.js → chartAxisZoomSliderThumbClasses.js} +4 -4
- package/esm/FunnelChart/FunnelChart.js +4 -3
- package/esm/FunnelChart/FunnelPlot.js +2 -0
- package/esm/FunnelChart/FunnelSection.js +1 -0
- package/esm/FunnelChart/curves/curve.types.d.ts +4 -0
- package/esm/FunnelChart/curves/pyramid.d.ts +3 -1
- package/esm/FunnelChart/curves/pyramid.js +37 -10
- package/esm/FunnelChart/curves/step-pyramid.d.ts +10 -2
- package/esm/FunnelChart/curves/step-pyramid.js +96 -20
- package/esm/FunnelChart/curves/step.d.ts +5 -1
- package/esm/FunnelChart/curves/step.js +20 -2
- package/esm/FunnelChart/funnel.types.d.ts +7 -0
- package/esm/FunnelChart/seriesConfig/seriesProcessor.js +47 -1
- package/esm/Heatmap/Heatmap.d.ts +1 -1
- package/esm/Heatmap/Heatmap.js +23 -19
- package/esm/Heatmap/HeatmapTooltip/HeatmapTooltip.classes.d.ts +2 -0
- package/esm/Heatmap/HeatmapTooltip/HeatmapTooltip.classes.js +19 -0
- package/esm/Heatmap/HeatmapTooltip/HeatmapTooltip.d.ts +1 -10
- package/esm/Heatmap/HeatmapTooltip/HeatmapTooltip.js +5 -103
- package/esm/Heatmap/HeatmapTooltip/HeatmapTooltip.types.d.ts +10 -0
- package/esm/Heatmap/HeatmapTooltip/HeatmapTooltip.types.js +1 -0
- package/esm/Heatmap/HeatmapTooltip/HeatmapTooltipContent.d.ts +7 -0
- package/esm/Heatmap/HeatmapTooltip/HeatmapTooltipContent.js +89 -0
- package/esm/Heatmap/HeatmapTooltip/index.d.ts +3 -1
- package/esm/Heatmap/HeatmapTooltip/index.js +3 -1
- package/esm/LineChartPro/LineChartPro.js +35 -18
- package/esm/ScatterChartPro/ScatterChartPro.js +36 -19
- package/esm/index.d.ts +1 -1
- package/esm/index.js +1 -3
- package/esm/internals/plugins/useChartProExport/exportImage.js +1 -1
- package/esm/internals/plugins/useChartProZoom/useChartProZoom.js +2 -2
- package/index.d.ts +1 -1
- package/index.js +1 -68
- package/internals/plugins/useChartProExport/exportImage.js +1 -1
- package/internals/plugins/useChartProZoom/useChartProZoom.js +2 -2
- package/package.json +5 -5
- package/ChartZoomSlider/internals/ChartAxisZoomSliderHandle.d.ts +0 -12
- package/ChartZoomSlider/internals/ChartAxisZoomSliderHandle.js +0 -92
- package/ChartZoomSlider/internals/chartAxisZoomSliderHandleClasses.d.ts +0 -17
- package/esm/ChartZoomSlider/internals/ChartAxisZoomSliderHandle.d.ts +0 -12
- package/esm/ChartZoomSlider/internals/ChartAxisZoomSliderHandle.js +0 -85
- package/esm/ChartZoomSlider/internals/chartAxisZoomSliderHandleClasses.d.ts +0 -17
|
@@ -75,11 +75,12 @@ const BarChartPro = /*#__PURE__*/React.forwardRef(function BarChartPro(inProps,
|
|
|
75
75
|
children: [showToolbar ? /*#__PURE__*/_jsx(ChartsToolbarPro, {}) : null, !props.hideLegend && /*#__PURE__*/_jsx(ChartsLegend, _extends({}, legendProps)), /*#__PURE__*/_jsxs(ChartsSurface, _extends({}, chartsSurfaceProps, {
|
|
76
76
|
children: [/*#__PURE__*/_jsx(ChartsGrid, _extends({}, gridProps)), /*#__PURE__*/_jsxs("g", _extends({}, clipPathGroupProps, {
|
|
77
77
|
children: [/*#__PURE__*/_jsx(BarPlot, _extends({}, barPlotProps)), /*#__PURE__*/_jsx(ChartsOverlay, _extends({}, overlayProps)), /*#__PURE__*/_jsx(ChartsAxisHighlight, _extends({}, axisHighlightProps))]
|
|
78
|
-
})), /*#__PURE__*/_jsx(ChartsAxis, _extends({}, chartsAxisProps)), /*#__PURE__*/_jsx(ChartZoomSlider, {}),
|
|
79
|
-
}))]
|
|
78
|
+
})), /*#__PURE__*/_jsx(ChartsAxis, _extends({}, chartsAxisProps)), /*#__PURE__*/_jsx(ChartZoomSlider, {}), /*#__PURE__*/_jsx(ChartsClipPath, _extends({}, clipPathProps)), children]
|
|
79
|
+
})), !props.loading && /*#__PURE__*/_jsx(Tooltip, _extends({}, props.slotProps?.tooltip))]
|
|
80
80
|
}))
|
|
81
81
|
}));
|
|
82
82
|
});
|
|
83
|
+
if (process.env.NODE_ENV !== "production") BarChartPro.displayName = "BarChartPro";
|
|
83
84
|
process.env.NODE_ENV !== "production" ? BarChartPro.propTypes = {
|
|
84
85
|
// ----------------------------- Warning --------------------------------
|
|
85
86
|
// | These PropTypes are generated from the TypeScript type definitions |
|
|
@@ -318,7 +319,8 @@ process.env.NODE_ENV !== "production" ? BarChartPro.propTypes = {
|
|
|
318
319
|
minStart: PropTypes.number,
|
|
319
320
|
panning: PropTypes.bool,
|
|
320
321
|
slider: PropTypes.shape({
|
|
321
|
-
enabled: PropTypes.bool
|
|
322
|
+
enabled: PropTypes.bool,
|
|
323
|
+
size: PropTypes.number
|
|
322
324
|
}),
|
|
323
325
|
step: PropTypes.number
|
|
324
326
|
}), PropTypes.bool])
|
|
@@ -381,7 +383,8 @@ process.env.NODE_ENV !== "production" ? BarChartPro.propTypes = {
|
|
|
381
383
|
minStart: PropTypes.number,
|
|
382
384
|
panning: PropTypes.bool,
|
|
383
385
|
slider: PropTypes.shape({
|
|
384
|
-
enabled: PropTypes.bool
|
|
386
|
+
enabled: PropTypes.bool,
|
|
387
|
+
size: PropTypes.number
|
|
385
388
|
}),
|
|
386
389
|
step: PropTypes.number
|
|
387
390
|
}), PropTypes.bool])
|
|
@@ -439,7 +442,8 @@ process.env.NODE_ENV !== "production" ? BarChartPro.propTypes = {
|
|
|
439
442
|
minStart: PropTypes.number,
|
|
440
443
|
panning: PropTypes.bool,
|
|
441
444
|
slider: PropTypes.shape({
|
|
442
|
-
enabled: PropTypes.bool
|
|
445
|
+
enabled: PropTypes.bool,
|
|
446
|
+
size: PropTypes.number
|
|
443
447
|
}),
|
|
444
448
|
step: PropTypes.number
|
|
445
449
|
}), PropTypes.bool])
|
|
@@ -497,7 +501,8 @@ process.env.NODE_ENV !== "production" ? BarChartPro.propTypes = {
|
|
|
497
501
|
minStart: PropTypes.number,
|
|
498
502
|
panning: PropTypes.bool,
|
|
499
503
|
slider: PropTypes.shape({
|
|
500
|
-
enabled: PropTypes.bool
|
|
504
|
+
enabled: PropTypes.bool,
|
|
505
|
+
size: PropTypes.number
|
|
501
506
|
}),
|
|
502
507
|
step: PropTypes.number
|
|
503
508
|
}), PropTypes.bool])
|
|
@@ -555,7 +560,8 @@ process.env.NODE_ENV !== "production" ? BarChartPro.propTypes = {
|
|
|
555
560
|
minStart: PropTypes.number,
|
|
556
561
|
panning: PropTypes.bool,
|
|
557
562
|
slider: PropTypes.shape({
|
|
558
|
-
enabled: PropTypes.bool
|
|
563
|
+
enabled: PropTypes.bool,
|
|
564
|
+
size: PropTypes.number
|
|
559
565
|
}),
|
|
560
566
|
step: PropTypes.number
|
|
561
567
|
}), PropTypes.bool])
|
|
@@ -613,7 +619,8 @@ process.env.NODE_ENV !== "production" ? BarChartPro.propTypes = {
|
|
|
613
619
|
minStart: PropTypes.number,
|
|
614
620
|
panning: PropTypes.bool,
|
|
615
621
|
slider: PropTypes.shape({
|
|
616
|
-
enabled: PropTypes.bool
|
|
622
|
+
enabled: PropTypes.bool,
|
|
623
|
+
size: PropTypes.number
|
|
617
624
|
}),
|
|
618
625
|
step: PropTypes.number
|
|
619
626
|
}), PropTypes.bool])
|
|
@@ -671,7 +678,8 @@ process.env.NODE_ENV !== "production" ? BarChartPro.propTypes = {
|
|
|
671
678
|
minStart: PropTypes.number,
|
|
672
679
|
panning: PropTypes.bool,
|
|
673
680
|
slider: PropTypes.shape({
|
|
674
|
-
enabled: PropTypes.bool
|
|
681
|
+
enabled: PropTypes.bool,
|
|
682
|
+
size: PropTypes.number
|
|
675
683
|
}),
|
|
676
684
|
step: PropTypes.number
|
|
677
685
|
}), PropTypes.bool])
|
|
@@ -729,7 +737,8 @@ process.env.NODE_ENV !== "production" ? BarChartPro.propTypes = {
|
|
|
729
737
|
minStart: PropTypes.number,
|
|
730
738
|
panning: PropTypes.bool,
|
|
731
739
|
slider: PropTypes.shape({
|
|
732
|
-
enabled: PropTypes.bool
|
|
740
|
+
enabled: PropTypes.bool,
|
|
741
|
+
size: PropTypes.number
|
|
733
742
|
}),
|
|
734
743
|
step: PropTypes.number
|
|
735
744
|
}), PropTypes.bool])
|
|
@@ -799,7 +808,8 @@ process.env.NODE_ENV !== "production" ? BarChartPro.propTypes = {
|
|
|
799
808
|
minStart: PropTypes.number,
|
|
800
809
|
panning: PropTypes.bool,
|
|
801
810
|
slider: PropTypes.shape({
|
|
802
|
-
enabled: PropTypes.bool
|
|
811
|
+
enabled: PropTypes.bool,
|
|
812
|
+
size: PropTypes.number
|
|
803
813
|
}),
|
|
804
814
|
step: PropTypes.number
|
|
805
815
|
}), PropTypes.bool])
|
|
@@ -861,7 +871,8 @@ process.env.NODE_ENV !== "production" ? BarChartPro.propTypes = {
|
|
|
861
871
|
minStart: PropTypes.number,
|
|
862
872
|
panning: PropTypes.bool,
|
|
863
873
|
slider: PropTypes.shape({
|
|
864
|
-
enabled: PropTypes.bool
|
|
874
|
+
enabled: PropTypes.bool,
|
|
875
|
+
size: PropTypes.number
|
|
865
876
|
}),
|
|
866
877
|
step: PropTypes.number
|
|
867
878
|
}), PropTypes.bool])
|
|
@@ -918,7 +929,8 @@ process.env.NODE_ENV !== "production" ? BarChartPro.propTypes = {
|
|
|
918
929
|
minStart: PropTypes.number,
|
|
919
930
|
panning: PropTypes.bool,
|
|
920
931
|
slider: PropTypes.shape({
|
|
921
|
-
enabled: PropTypes.bool
|
|
932
|
+
enabled: PropTypes.bool,
|
|
933
|
+
size: PropTypes.number
|
|
922
934
|
}),
|
|
923
935
|
step: PropTypes.number
|
|
924
936
|
}), PropTypes.bool])
|
|
@@ -975,7 +987,8 @@ process.env.NODE_ENV !== "production" ? BarChartPro.propTypes = {
|
|
|
975
987
|
minStart: PropTypes.number,
|
|
976
988
|
panning: PropTypes.bool,
|
|
977
989
|
slider: PropTypes.shape({
|
|
978
|
-
enabled: PropTypes.bool
|
|
990
|
+
enabled: PropTypes.bool,
|
|
991
|
+
size: PropTypes.number
|
|
979
992
|
}),
|
|
980
993
|
step: PropTypes.number
|
|
981
994
|
}), PropTypes.bool])
|
|
@@ -1032,7 +1045,8 @@ process.env.NODE_ENV !== "production" ? BarChartPro.propTypes = {
|
|
|
1032
1045
|
minStart: PropTypes.number,
|
|
1033
1046
|
panning: PropTypes.bool,
|
|
1034
1047
|
slider: PropTypes.shape({
|
|
1035
|
-
enabled: PropTypes.bool
|
|
1048
|
+
enabled: PropTypes.bool,
|
|
1049
|
+
size: PropTypes.number
|
|
1036
1050
|
}),
|
|
1037
1051
|
step: PropTypes.number
|
|
1038
1052
|
}), PropTypes.bool])
|
|
@@ -1089,7 +1103,8 @@ process.env.NODE_ENV !== "production" ? BarChartPro.propTypes = {
|
|
|
1089
1103
|
minStart: PropTypes.number,
|
|
1090
1104
|
panning: PropTypes.bool,
|
|
1091
1105
|
slider: PropTypes.shape({
|
|
1092
|
-
enabled: PropTypes.bool
|
|
1106
|
+
enabled: PropTypes.bool,
|
|
1107
|
+
size: PropTypes.number
|
|
1093
1108
|
}),
|
|
1094
1109
|
step: PropTypes.number
|
|
1095
1110
|
}), PropTypes.bool])
|
|
@@ -1146,7 +1161,8 @@ process.env.NODE_ENV !== "production" ? BarChartPro.propTypes = {
|
|
|
1146
1161
|
minStart: PropTypes.number,
|
|
1147
1162
|
panning: PropTypes.bool,
|
|
1148
1163
|
slider: PropTypes.shape({
|
|
1149
|
-
enabled: PropTypes.bool
|
|
1164
|
+
enabled: PropTypes.bool,
|
|
1165
|
+
size: PropTypes.number
|
|
1150
1166
|
}),
|
|
1151
1167
|
step: PropTypes.number
|
|
1152
1168
|
}), PropTypes.bool])
|
|
@@ -1203,7 +1219,8 @@ process.env.NODE_ENV !== "production" ? BarChartPro.propTypes = {
|
|
|
1203
1219
|
minStart: PropTypes.number,
|
|
1204
1220
|
panning: PropTypes.bool,
|
|
1205
1221
|
slider: PropTypes.shape({
|
|
1206
|
-
enabled: PropTypes.bool
|
|
1222
|
+
enabled: PropTypes.bool,
|
|
1223
|
+
size: PropTypes.number
|
|
1207
1224
|
}),
|
|
1208
1225
|
step: PropTypes.number
|
|
1209
1226
|
}), PropTypes.bool])
|
|
@@ -45,6 +45,7 @@ const ChartContainerPro = /*#__PURE__*/React.forwardRef(function ChartContainerP
|
|
|
45
45
|
});
|
|
46
46
|
|
|
47
47
|
// @ts-expect-error the type coercion breaks the prop types
|
|
48
|
+
if (process.env.NODE_ENV !== "production") ChartContainerPro.displayName = "ChartContainerPro";
|
|
48
49
|
process.env.NODE_ENV !== "production" ? ChartContainerPro.propTypes = {
|
|
49
50
|
// ----------------------------- Warning --------------------------------
|
|
50
51
|
// | These PropTypes are generated from the TypeScript type definitions |
|
|
@@ -10,7 +10,7 @@ import { useLicenseVerifier } from '@mui/x-license/useLicenseVerifier';
|
|
|
10
10
|
import { DEFAULT_PLUGINS } from "../internals/plugins/allPlugins.js";
|
|
11
11
|
import { useChartDataProviderProProps } from "./useChartDataProviderProProps.js";
|
|
12
12
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
13
|
-
const releaseInfo = "
|
|
13
|
+
const releaseInfo = "MTc0Nzc3ODQwMDAwMA==";
|
|
14
14
|
const packageIdentifier = 'x-charts-pro';
|
|
15
15
|
/**
|
|
16
16
|
* Orchestrates the data providers for the chart components and hooks.
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export * from "./ChartZoomSlider.js";
|
|
2
|
-
export { type
|
|
2
|
+
export { type ChartAxisZoomSliderThumbClasses, type ChartAxisZoomSliderThumbClassKey, chartAxisZoomSliderThumbClasses } from "./internals/chartAxisZoomSliderThumbClasses.js";
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export * from "./ChartZoomSlider.js";
|
|
2
|
-
export {
|
|
2
|
+
export { chartAxisZoomSliderThumbClasses } from "./internals/chartAxisZoomSliderThumbClasses.js";
|
|
@@ -6,17 +6,18 @@ import { getSVGPoint, selectorChartAxisZoomOptionsLookup, selectorChartDrawingAr
|
|
|
6
6
|
import { styled } from '@mui/material/styles';
|
|
7
7
|
import { useXAxes, useYAxes } from '@mui/x-charts/hooks';
|
|
8
8
|
import { rafThrottle } from '@mui/x-internals/rafThrottle';
|
|
9
|
+
import { ChartsTooltipZoomSliderValue } from "./ChartsTooltipZoomSliderValue.js";
|
|
9
10
|
import { selectorChartAxisZoomData } from "../../internals/plugins/useChartProZoom/index.js";
|
|
10
|
-
import {
|
|
11
|
+
import { ChartAxisZoomSliderThumb } from "./ChartAxisZoomSliderThumb.js";
|
|
11
12
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
12
|
-
const
|
|
13
|
+
const ZoomSliderTrack = styled('rect')(({
|
|
13
14
|
theme
|
|
14
15
|
}) => ({
|
|
15
16
|
'&': {
|
|
16
17
|
fill: theme.palette.mode === 'dark' ? (theme.vars || theme).palette.grey[800] : (theme.vars || theme).palette.grey[300]
|
|
17
18
|
}
|
|
18
19
|
}));
|
|
19
|
-
const
|
|
20
|
+
const ZoomSliderActiveTrackRect = styled('rect')(({
|
|
20
21
|
theme
|
|
21
22
|
}) => ({
|
|
22
23
|
'&': {
|
|
@@ -24,11 +25,11 @@ const ZoomRangePreviewRect = styled('rect')(({
|
|
|
24
25
|
cursor: 'grab'
|
|
25
26
|
}
|
|
26
27
|
}));
|
|
27
|
-
const
|
|
28
|
-
const
|
|
29
|
-
const
|
|
30
|
-
const
|
|
31
|
-
const ZOOM_SLIDER_SIZE = Math.max(
|
|
28
|
+
const ZOOM_SLIDER_TRACK_SIZE = 8;
|
|
29
|
+
const ZOOM_SLIDER_ACTIVE_TRACK_SIZE = 10;
|
|
30
|
+
const ZOOM_SLIDER_THUMB_HEIGHT = 20;
|
|
31
|
+
const ZOOM_SLIDER_THUMB_WIDTH = 10;
|
|
32
|
+
const ZOOM_SLIDER_SIZE = Math.max(ZOOM_SLIDER_TRACK_SIZE, ZOOM_SLIDER_ACTIVE_TRACK_SIZE, ZOOM_SLIDER_THUMB_HEIGHT, ZOOM_SLIDER_THUMB_WIDTH);
|
|
32
33
|
|
|
33
34
|
/**
|
|
34
35
|
* Renders the zoom slider for a specific axis.
|
|
@@ -53,48 +54,58 @@ export function ChartAxisZoomSlider({
|
|
|
53
54
|
let x;
|
|
54
55
|
let y;
|
|
55
56
|
let reverse;
|
|
57
|
+
let axisPosition;
|
|
56
58
|
if (axisDirection === 'x') {
|
|
57
59
|
const axis = xAxis[axisId];
|
|
58
|
-
if (!axis) {
|
|
60
|
+
if (!axis || axis.position === 'none') {
|
|
59
61
|
return null;
|
|
60
62
|
}
|
|
61
63
|
const axisSize = axis.height;
|
|
62
64
|
x = drawingArea.left;
|
|
63
65
|
y = axis.position === 'bottom' ? drawingArea.top + drawingArea.height + axis.offset + axisSize + ZOOM_SLIDER_MARGIN : drawingArea.top - axis.offset - axisSize - ZOOM_SLIDER_SIZE - ZOOM_SLIDER_MARGIN;
|
|
64
66
|
reverse = axis.reverse ?? false;
|
|
67
|
+
axisPosition = axis.position ?? 'bottom';
|
|
65
68
|
} else {
|
|
66
69
|
const axis = yAxis[axisId];
|
|
67
|
-
if (!axis) {
|
|
70
|
+
if (!axis || axis.position === 'none') {
|
|
68
71
|
return null;
|
|
69
72
|
}
|
|
70
73
|
const axisSize = axis.width;
|
|
71
74
|
x = axis.position === 'right' ? drawingArea.left + drawingArea.width + axis.offset + axisSize + ZOOM_SLIDER_MARGIN : drawingArea.left - axis.offset - axisSize - ZOOM_SLIDER_SIZE - ZOOM_SLIDER_MARGIN;
|
|
72
75
|
y = drawingArea.top;
|
|
73
76
|
reverse = axis.reverse ?? false;
|
|
77
|
+
axisPosition = axis.position ?? 'left';
|
|
74
78
|
}
|
|
75
|
-
const backgroundRectOffset = (ZOOM_SLIDER_SIZE -
|
|
79
|
+
const backgroundRectOffset = (ZOOM_SLIDER_SIZE - ZOOM_SLIDER_TRACK_SIZE) / 2;
|
|
76
80
|
return /*#__PURE__*/_jsxs("g", {
|
|
77
81
|
transform: `translate(${x} ${y})`,
|
|
78
|
-
children: [/*#__PURE__*/_jsx(
|
|
82
|
+
children: [/*#__PURE__*/_jsx(ZoomSliderTrack, {
|
|
79
83
|
x: axisDirection === 'x' ? 0 : backgroundRectOffset,
|
|
80
84
|
y: axisDirection === 'x' ? backgroundRectOffset : 0,
|
|
81
|
-
height: axisDirection === 'x' ?
|
|
82
|
-
width: axisDirection === 'x' ? drawingArea.width :
|
|
83
|
-
rx:
|
|
84
|
-
ry:
|
|
85
|
-
}), /*#__PURE__*/_jsx(
|
|
85
|
+
height: axisDirection === 'x' ? ZOOM_SLIDER_TRACK_SIZE : drawingArea.height,
|
|
86
|
+
width: axisDirection === 'x' ? drawingArea.width : ZOOM_SLIDER_TRACK_SIZE,
|
|
87
|
+
rx: ZOOM_SLIDER_TRACK_SIZE / 2,
|
|
88
|
+
ry: ZOOM_SLIDER_TRACK_SIZE / 2
|
|
89
|
+
}), /*#__PURE__*/_jsx(ChartAxisZoomSliderActiveTrack, {
|
|
86
90
|
zoomData: zoomData,
|
|
87
91
|
axisId: axisId,
|
|
92
|
+
axisPosition: axisPosition,
|
|
88
93
|
axisDirection: axisDirection,
|
|
89
94
|
reverse: reverse
|
|
90
95
|
})]
|
|
91
96
|
});
|
|
92
97
|
}
|
|
93
|
-
|
|
98
|
+
const formatter = Intl.NumberFormat(undefined, {
|
|
99
|
+
maximumFractionDigits: 0
|
|
100
|
+
});
|
|
101
|
+
const zoomValueFormatter = value => formatter.format(value);
|
|
102
|
+
function ChartAxisZoomSliderActiveTrack({
|
|
94
103
|
axisId,
|
|
95
104
|
axisDirection,
|
|
105
|
+
axisPosition,
|
|
96
106
|
zoomData,
|
|
97
|
-
reverse
|
|
107
|
+
reverse,
|
|
108
|
+
valueFormatter = zoomValueFormatter
|
|
98
109
|
}) {
|
|
99
110
|
const {
|
|
100
111
|
instance,
|
|
@@ -103,8 +114,11 @@ function ChartAxisZoomSliderSpan({
|
|
|
103
114
|
const store = useStore();
|
|
104
115
|
const drawingArea = useDrawingArea();
|
|
105
116
|
const activePreviewRectRef = React.useRef(null);
|
|
106
|
-
const
|
|
107
|
-
const
|
|
117
|
+
const [startThumbEl, setStartThumbEl] = React.useState(null);
|
|
118
|
+
const [endThumbEl, setEndThumbEl] = React.useState(null);
|
|
119
|
+
const [showTooltip, setShowTooltip] = React.useState(null);
|
|
120
|
+
const previewThumbWidth = axisDirection === 'x' ? ZOOM_SLIDER_THUMB_WIDTH : ZOOM_SLIDER_THUMB_HEIGHT;
|
|
121
|
+
const previewThumbHeight = axisDirection === 'x' ? ZOOM_SLIDER_THUMB_HEIGHT : ZOOM_SLIDER_THUMB_WIDTH;
|
|
108
122
|
React.useEffect(() => {
|
|
109
123
|
const activePreviewRect = activePreviewRectRef.current;
|
|
110
124
|
if (!activePreviewRect) {
|
|
@@ -145,6 +159,7 @@ function ChartAxisZoomSliderSpan({
|
|
|
145
159
|
const onPointerUp = () => {
|
|
146
160
|
activePreviewRect.removeEventListener('pointermove', onPointerMove);
|
|
147
161
|
activePreviewRect.removeEventListener('pointerup', onPointerUp);
|
|
162
|
+
setShowTooltip(null);
|
|
148
163
|
};
|
|
149
164
|
const onPointerDown = event => {
|
|
150
165
|
// Prevent text selection when dragging
|
|
@@ -176,6 +191,7 @@ function ChartAxisZoomSliderSpan({
|
|
|
176
191
|
prevPointerZoom = pointerDownZoom;
|
|
177
192
|
pointerZoomMin = pointerDownZoom - axisZoomData.start;
|
|
178
193
|
pointerZoomMax = 100 - (axisZoomData.end - pointerDownZoom);
|
|
194
|
+
setShowTooltip('both');
|
|
179
195
|
activePreviewRect.addEventListener('pointerup', onPointerUp);
|
|
180
196
|
activePreviewRect.addEventListener('pointermove', onPointerMove);
|
|
181
197
|
};
|
|
@@ -187,7 +203,7 @@ function ChartAxisZoomSliderSpan({
|
|
|
187
203
|
onPointerMove.clear();
|
|
188
204
|
};
|
|
189
205
|
}, [axisDirection, axisId, instance, reverse, store, svgRef]);
|
|
190
|
-
const
|
|
206
|
+
const onStartThumbMove = event => {
|
|
191
207
|
const element = svgRef.current;
|
|
192
208
|
if (!element) {
|
|
193
209
|
return;
|
|
@@ -220,7 +236,7 @@ function ChartAxisZoomSliderSpan({
|
|
|
220
236
|
});
|
|
221
237
|
});
|
|
222
238
|
};
|
|
223
|
-
const
|
|
239
|
+
const onEndThumbMove = event => {
|
|
224
240
|
const element = svgRef.current;
|
|
225
241
|
if (!element) {
|
|
226
242
|
return;
|
|
@@ -257,67 +273,85 @@ function ChartAxisZoomSliderSpan({
|
|
|
257
273
|
let previewY;
|
|
258
274
|
let previewWidth;
|
|
259
275
|
let previewHeight;
|
|
260
|
-
let
|
|
261
|
-
let
|
|
262
|
-
let
|
|
263
|
-
let
|
|
276
|
+
let startThumbX;
|
|
277
|
+
let startThumbY;
|
|
278
|
+
let endThumbX;
|
|
279
|
+
let endThumbY;
|
|
264
280
|
if (axisDirection === 'x') {
|
|
265
281
|
previewX = zoomData.start / 100 * drawingArea.width;
|
|
266
282
|
previewY = 0;
|
|
267
283
|
previewWidth = drawingArea.width * (zoomData.end - zoomData.start) / 100;
|
|
268
|
-
previewHeight =
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
284
|
+
previewHeight = ZOOM_SLIDER_ACTIVE_TRACK_SIZE;
|
|
285
|
+
startThumbX = zoomData.start / 100 * drawingArea.width;
|
|
286
|
+
startThumbY = 0;
|
|
287
|
+
endThumbX = zoomData.end / 100 * drawingArea.width;
|
|
288
|
+
endThumbY = 0;
|
|
273
289
|
if (reverse) {
|
|
274
290
|
previewX = drawingArea.width - previewX - previewWidth;
|
|
275
|
-
|
|
276
|
-
|
|
291
|
+
startThumbX = drawingArea.width - startThumbX;
|
|
292
|
+
endThumbX = drawingArea.width - endThumbX;
|
|
277
293
|
}
|
|
278
|
-
|
|
279
|
-
|
|
294
|
+
startThumbX -= previewThumbWidth / 2;
|
|
295
|
+
endThumbX -= previewThumbWidth / 2;
|
|
280
296
|
} else {
|
|
281
297
|
previewX = 0;
|
|
282
298
|
previewY = drawingArea.height - zoomData.end / 100 * drawingArea.height;
|
|
283
|
-
previewWidth =
|
|
299
|
+
previewWidth = ZOOM_SLIDER_ACTIVE_TRACK_SIZE;
|
|
284
300
|
previewHeight = drawingArea.height * (zoomData.end - zoomData.start) / 100;
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
301
|
+
startThumbX = 0;
|
|
302
|
+
startThumbY = drawingArea.height - zoomData.start / 100 * drawingArea.height;
|
|
303
|
+
endThumbX = 0;
|
|
304
|
+
endThumbY = drawingArea.height - zoomData.end / 100 * drawingArea.height;
|
|
289
305
|
if (reverse) {
|
|
290
306
|
previewY = drawingArea.height - previewY - previewHeight;
|
|
291
|
-
|
|
292
|
-
|
|
307
|
+
startThumbY = drawingArea.height - startThumbY;
|
|
308
|
+
endThumbY = drawingArea.height - endThumbY;
|
|
293
309
|
}
|
|
294
|
-
|
|
295
|
-
|
|
310
|
+
startThumbY -= previewThumbHeight / 2;
|
|
311
|
+
endThumbY -= previewThumbHeight / 2;
|
|
296
312
|
}
|
|
297
|
-
const previewOffset = (
|
|
313
|
+
const previewOffset = (ZOOM_SLIDER_THUMB_HEIGHT - ZOOM_SLIDER_ACTIVE_TRACK_SIZE) / 2;
|
|
298
314
|
return /*#__PURE__*/_jsxs(React.Fragment, {
|
|
299
|
-
children: [/*#__PURE__*/_jsx(
|
|
315
|
+
children: [/*#__PURE__*/_jsx(ZoomSliderActiveTrackRect, {
|
|
300
316
|
ref: activePreviewRectRef,
|
|
301
317
|
x: previewX + (axisDirection === 'x' ? 0 : previewOffset),
|
|
302
318
|
y: previewY + (axisDirection === 'x' ? previewOffset : 0),
|
|
303
319
|
width: previewWidth,
|
|
304
|
-
height: previewHeight
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
|
|
320
|
+
height: previewHeight,
|
|
321
|
+
onPointerEnter: () => setShowTooltip('both'),
|
|
322
|
+
onPointerLeave: () => setShowTooltip(null)
|
|
323
|
+
}), /*#__PURE__*/_jsx(ChartAxisZoomSliderThumb, {
|
|
324
|
+
ref: setStartThumbEl,
|
|
325
|
+
x: startThumbX,
|
|
326
|
+
y: startThumbY,
|
|
327
|
+
width: previewThumbWidth,
|
|
328
|
+
height: previewThumbHeight,
|
|
310
329
|
orientation: axisDirection === 'x' ? 'horizontal' : 'vertical',
|
|
311
|
-
|
|
330
|
+
onMove: onStartThumbMove,
|
|
331
|
+
onPointerEnter: () => setShowTooltip('start'),
|
|
332
|
+
onPointerLeave: () => setShowTooltip(null),
|
|
312
333
|
placement: "start"
|
|
313
|
-
}), /*#__PURE__*/_jsx(
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
|
|
334
|
+
}), /*#__PURE__*/_jsx(ChartAxisZoomSliderThumb, {
|
|
335
|
+
ref: setEndThumbEl,
|
|
336
|
+
x: endThumbX,
|
|
337
|
+
y: endThumbY,
|
|
338
|
+
width: previewThumbWidth,
|
|
339
|
+
height: previewThumbHeight,
|
|
318
340
|
orientation: axisDirection === 'x' ? 'horizontal' : 'vertical',
|
|
319
|
-
|
|
341
|
+
onMove: onEndThumbMove,
|
|
342
|
+
onPointerEnter: () => setShowTooltip('end'),
|
|
343
|
+
onPointerLeave: () => setShowTooltip(null),
|
|
320
344
|
placement: "end"
|
|
345
|
+
}), /*#__PURE__*/_jsx(ChartsTooltipZoomSliderValue, {
|
|
346
|
+
anchorEl: startThumbEl,
|
|
347
|
+
open: showTooltip === 'start' || showTooltip === 'both',
|
|
348
|
+
placement: axisPosition,
|
|
349
|
+
children: valueFormatter(zoomData.start)
|
|
350
|
+
}), /*#__PURE__*/_jsx(ChartsTooltipZoomSliderValue, {
|
|
351
|
+
anchorEl: endThumbEl,
|
|
352
|
+
open: showTooltip === 'end' || showTooltip === 'both',
|
|
353
|
+
placement: axisPosition,
|
|
354
|
+
children: valueFormatter(zoomData.end)
|
|
321
355
|
})]
|
|
322
356
|
});
|
|
323
357
|
}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
export interface ChartZoomSliderThumbOwnerState {
|
|
3
|
+
onMove: (event: PointerEvent) => void;
|
|
4
|
+
orientation: 'horizontal' | 'vertical';
|
|
5
|
+
placement: 'start' | 'end';
|
|
6
|
+
}
|
|
7
|
+
export interface ChartZoomSliderThumbProps extends Omit<React.ComponentProps<'rect'>, 'orientation'>, ChartZoomSliderThumbOwnerState {}
|
|
8
|
+
/**
|
|
9
|
+
* Renders the zoom slider thumb, which is responsible for resizing the zoom range.
|
|
10
|
+
* @internal
|
|
11
|
+
*/
|
|
12
|
+
export declare const ChartAxisZoomSliderThumb: React.ForwardRefExoticComponent<Omit<ChartZoomSliderThumbProps, "ref"> & React.RefAttributes<SVGRectElement>>;
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
|
|
3
|
+
import _extends from "@babel/runtime/helpers/esm/extends";
|
|
4
|
+
import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
|
|
5
|
+
const _excluded = ["className", "onMove", "orientation", "placement", "rx", "ry"];
|
|
6
|
+
import * as React from 'react';
|
|
7
|
+
import { styled } from '@mui/material/styles';
|
|
8
|
+
import useForkRef from '@mui/utils/useForkRef';
|
|
9
|
+
import useEventCallback from '@mui/utils/useEventCallback';
|
|
10
|
+
import { rafThrottle } from '@mui/x-internals/rafThrottle';
|
|
11
|
+
import clsx from 'clsx';
|
|
12
|
+
import { chartAxisZoomSliderThumbClasses, useUtilityClasses } from "./chartAxisZoomSliderThumbClasses.js";
|
|
13
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
14
|
+
const Rect = styled('rect')(({
|
|
15
|
+
theme
|
|
16
|
+
}) => ({
|
|
17
|
+
[`&.${chartAxisZoomSliderThumbClasses.root}`]: {
|
|
18
|
+
fill: theme.palette.mode === 'dark' ? (theme.vars || theme).palette.grey[300] : (theme.vars || theme).palette.common.white,
|
|
19
|
+
stroke: theme.palette.mode === 'dark' ? (theme.vars || theme).palette.grey[600] : (theme.vars || theme).palette.grey[500]
|
|
20
|
+
},
|
|
21
|
+
[`&.${chartAxisZoomSliderThumbClasses.horizontal}`]: {
|
|
22
|
+
cursor: 'ew-resize'
|
|
23
|
+
},
|
|
24
|
+
[`&.${chartAxisZoomSliderThumbClasses.vertical}`]: {
|
|
25
|
+
cursor: 'ns-resize'
|
|
26
|
+
}
|
|
27
|
+
}));
|
|
28
|
+
/**
|
|
29
|
+
* Renders the zoom slider thumb, which is responsible for resizing the zoom range.
|
|
30
|
+
* @internal
|
|
31
|
+
*/
|
|
32
|
+
export const ChartAxisZoomSliderThumb = /*#__PURE__*/React.forwardRef(function ChartAxisZoomSliderThumb(_ref, forwardedRef) {
|
|
33
|
+
let {
|
|
34
|
+
className,
|
|
35
|
+
onMove,
|
|
36
|
+
orientation,
|
|
37
|
+
placement,
|
|
38
|
+
rx = 4,
|
|
39
|
+
ry = 4
|
|
40
|
+
} = _ref,
|
|
41
|
+
rest = _objectWithoutPropertiesLoose(_ref, _excluded);
|
|
42
|
+
const classes = useUtilityClasses({
|
|
43
|
+
onMove,
|
|
44
|
+
orientation,
|
|
45
|
+
placement
|
|
46
|
+
});
|
|
47
|
+
const thumbRef = React.useRef(null);
|
|
48
|
+
const ref = useForkRef(thumbRef, forwardedRef);
|
|
49
|
+
const onMoveEvent = useEventCallback(onMove);
|
|
50
|
+
React.useEffect(() => {
|
|
51
|
+
const thumb = thumbRef.current;
|
|
52
|
+
if (!thumb) {
|
|
53
|
+
return;
|
|
54
|
+
}
|
|
55
|
+
const onPointerMove = rafThrottle(event => {
|
|
56
|
+
onMoveEvent(event);
|
|
57
|
+
});
|
|
58
|
+
const onPointerUp = () => {
|
|
59
|
+
thumb.removeEventListener('pointermove', onPointerMove);
|
|
60
|
+
thumb.removeEventListener('pointerup', onPointerUp);
|
|
61
|
+
};
|
|
62
|
+
const onPointerDown = event => {
|
|
63
|
+
// Prevent text selection when dragging the thumb
|
|
64
|
+
event.preventDefault();
|
|
65
|
+
event.stopPropagation();
|
|
66
|
+
thumb.setPointerCapture(event.pointerId);
|
|
67
|
+
thumb.addEventListener('pointerup', onPointerUp);
|
|
68
|
+
thumb.addEventListener('pointermove', onPointerMove);
|
|
69
|
+
};
|
|
70
|
+
thumb.addEventListener('pointerdown', onPointerDown);
|
|
71
|
+
|
|
72
|
+
// eslint-disable-next-line consistent-return
|
|
73
|
+
return () => {
|
|
74
|
+
thumb.removeEventListener('pointerdown', onPointerDown);
|
|
75
|
+
onPointerMove.clear();
|
|
76
|
+
};
|
|
77
|
+
}, [onMoveEvent, orientation]);
|
|
78
|
+
return /*#__PURE__*/_jsx(Rect, _extends({
|
|
79
|
+
className: clsx(classes.root, className),
|
|
80
|
+
ref: ref,
|
|
81
|
+
rx: rx,
|
|
82
|
+
ry: ry
|
|
83
|
+
}, rest));
|
|
84
|
+
});
|
|
85
|
+
if (process.env.NODE_ENV !== "production") ChartAxisZoomSliderThumb.displayName = "ChartAxisZoomSliderThumb";
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
import { PopperProps } from '@mui/material/Popper';
|
|
3
|
+
interface ChartsTooltipZoomSliderValueProps extends Pick<PopperProps, 'anchorEl' | 'open' | 'modifiers' | 'placement'>, React.PropsWithChildren {}
|
|
4
|
+
export declare function ChartsTooltipZoomSliderValue({
|
|
5
|
+
anchorEl,
|
|
6
|
+
open,
|
|
7
|
+
placement,
|
|
8
|
+
modifiers,
|
|
9
|
+
children
|
|
10
|
+
}: ChartsTooltipZoomSliderValueProps): React.JSX.Element;
|
|
11
|
+
export {};
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
import NoSsr from '@mui/material/NoSsr';
|
|
3
|
+
import Popper from '@mui/material/Popper';
|
|
4
|
+
import { ChartsTooltipPaper } from '@mui/x-charts/ChartsTooltip';
|
|
5
|
+
import Typography from '@mui/material/Typography';
|
|
6
|
+
import { styled } from '@mui/material/styles';
|
|
7
|
+
|
|
8
|
+
/**
|
|
9
|
+
* The root component of the zoom slider tooltip.
|
|
10
|
+
* @ignore - internal component.
|
|
11
|
+
*/
|
|
12
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
13
|
+
const ChartsZoomSliderTooltipRoot = styled(Popper, {
|
|
14
|
+
name: 'MuiChartsZoomSliderTooltip',
|
|
15
|
+
slot: 'Root'
|
|
16
|
+
})(({
|
|
17
|
+
theme
|
|
18
|
+
}) => ({
|
|
19
|
+
pointerEvents: 'none',
|
|
20
|
+
zIndex: theme.zIndex.modal
|
|
21
|
+
}));
|
|
22
|
+
const MODIFIERS = [{
|
|
23
|
+
name: 'offset',
|
|
24
|
+
options: {
|
|
25
|
+
offset: [0, 4]
|
|
26
|
+
}
|
|
27
|
+
}];
|
|
28
|
+
export function ChartsTooltipZoomSliderValue({
|
|
29
|
+
anchorEl,
|
|
30
|
+
open,
|
|
31
|
+
placement,
|
|
32
|
+
modifiers = MODIFIERS,
|
|
33
|
+
children
|
|
34
|
+
}) {
|
|
35
|
+
return /*#__PURE__*/_jsx(NoSsr, {
|
|
36
|
+
children: open ? /*#__PURE__*/_jsx(ChartsZoomSliderTooltipRoot, {
|
|
37
|
+
open: open,
|
|
38
|
+
anchorEl: anchorEl,
|
|
39
|
+
placement: placement,
|
|
40
|
+
modifiers: modifiers,
|
|
41
|
+
children: /*#__PURE__*/_jsx(ChartsTooltipPaper, {
|
|
42
|
+
sx: {
|
|
43
|
+
paddingX: 0.5
|
|
44
|
+
},
|
|
45
|
+
children: /*#__PURE__*/_jsx(Typography, {
|
|
46
|
+
variant: "caption",
|
|
47
|
+
children: children
|
|
48
|
+
})
|
|
49
|
+
})
|
|
50
|
+
}) : null
|
|
51
|
+
});
|
|
52
|
+
}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import type { ChartZoomSliderThumbOwnerState } from "./ChartAxisZoomSliderThumb.js";
|
|
2
|
+
export interface ChartAxisZoomSliderThumbClasses {
|
|
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 thumb. */
|
|
10
|
+
start: string;
|
|
11
|
+
/** Styles applied to the root element when it is an end thumb. */
|
|
12
|
+
end: string;
|
|
13
|
+
}
|
|
14
|
+
export type ChartAxisZoomSliderThumbClassKey = keyof ChartAxisZoomSliderThumbClasses;
|
|
15
|
+
export declare const chartAxisZoomSliderThumbClasses: ChartAxisZoomSliderThumbClasses;
|
|
16
|
+
export declare function getAxisZoomSliderThumbUtilityClass(slot: string): string;
|
|
17
|
+
export declare const useUtilityClasses: (ownerState: ChartZoomSliderThumbOwnerState) => Record<"root", string>;
|