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