@mui/x-charts
Version:
The community edition of the charts components (MUI X).
39 lines • 1.48 kB
JavaScript
var mergeMinMax = function mergeMinMax(acc, val) {
if (acc[0] === null || acc[1] === null) {
return val;
}
if (val[0] === null || val[1] === null) {
return acc;
}
return [Math.min(acc[0], val[0]), Math.max(acc[1], val[1])];
};
export var getExtremumX = function getExtremumX(params) {
var series = params.series,
axis = params.axis,
isDefaultAxis = params.isDefaultAxis;
return Object.keys(series).filter(function (seriesId) {
return series[seriesId].xAxisKey === axis.id || series[seriesId].xAxisKey === undefined && isDefaultAxis;
}).reduce(function (acc, seriesId) {
var seriesMinMax = series[seriesId].data.reduce(function (accSeries, _ref) {
var x = _ref.x;
var val = [x, x];
return mergeMinMax(accSeries, val);
}, [null, null]);
return mergeMinMax(acc, seriesMinMax);
}, [null, null]);
};
export var getExtremumY = function getExtremumY(params) {
var series = params.series,
axis = params.axis,
isDefaultAxis = params.isDefaultAxis;
return Object.keys(series).filter(function (seriesId) {
return series[seriesId].yAxisKey === axis.id || series[seriesId].yAxisKey === undefined && isDefaultAxis;
}).reduce(function (acc, seriesId) {
var seriesMinMax = series[seriesId].data.reduce(function (accSeries, _ref2) {
var y = _ref2.y;
var val = [y, y];
return mergeMinMax(accSeries, val);
}, [null, null]);
return mergeMinMax(acc, seriesMinMax);
}, [null, null]);
};