rumble-charts
Version:
Truly declarative React charts components
38 lines (35 loc) • 1.37 kB
JavaScript
import { __assign } from '../../external/tslib/tslib.es6.js';
import { isString } from '../isString.js';
import { sortBy } from '../sortBy.js';
function sort(props, _a) {
var _b = _a === void 0 ? {} : _a, direction = _b.direction;
direction = (isString(direction) ? direction.trim().toLowerCase() : 'asc');
var seriesNormalized = props.seriesNormalized, maxX = props.maxX, maxY = props.maxY, minX = props.minX, minY = props.minY;
var series = props.series;
series = series === null || series === void 0 ? void 0 : series.map(function (series) {
var _a;
var newSeries = { data: [] };
newSeries.data = sortBy(series.data, 'y');
if (direction === 'desc') {
newSeries.data.reverse();
}
newSeries.data = (_a = newSeries.data) === null || _a === void 0 ? void 0 : _a.map(function (point, pointIndex) {
var newPoint = {
realX: point.x,
x: pointIndex
};
return __assign(__assign({}, point), newPoint);
});
newSeries.data = sortBy(newSeries.data, 'realX');
return __assign(__assign({}, series), newSeries);
});
return {
series: series,
seriesNormalized: seriesNormalized,
maxX: maxX,
maxY: maxY,
minX: minX,
minY: minY
};
}
export { sort };