UNPKG

rumble-charts

Version:

Truly declarative React charts components

78 lines (75 loc) 2.39 kB
import { __assign } from '../external/tslib/tslib.es6.js'; import { isNumber } from './isNumber.js'; import { isUndefined } from './isUndefined.js'; import { omitBy } from './omitBy.js'; var isInvalidLimit = function (value) { return isUndefined(value) || value === Infinity || value === -Infinity; }; function normalizeSeries(props) { var _a; var maxX = -Infinity, maxY = -Infinity, minX = Infinity, minY = Infinity; var series = (_a = props === null || props === void 0 ? void 0 : props.series) === null || _a === void 0 ? void 0 : _a.map(function (series) { var _a; var data = (_a = series.data) === null || _a === void 0 ? void 0 : _a.map(function (item, index) { var d; if (!props.seriesNormalized) { d = {}; if (isNumber(item)) { d.x = index; d.y = item; } else if (Array.isArray(item)) { d.x = item[0]; d.y = item[1]; } else { d = item || {}; if (isUndefined(d.x)) { d.x = index; } } } else { d = item; } if (isUndefined(props.maxX)) { maxX = Math.max(maxX, d.x || 0); } if (isUndefined(props.maxY)) { maxY = Math.max(maxY, d.y || 0); } if (isUndefined(props.minX)) { minX = Math.min(minX, d.x || 0); } if (isUndefined(props.minY)) { minY = Math.min(minY, d.y || 0); } return d; }); return __assign(__assign({}, series), { data: data }); }); if (series && series.length === 0) { series = undefined; } if (!isUndefined(props.maxX)) { maxX = props.maxX; } if (!isUndefined(props.maxY)) { maxY = props.maxY; } if (!isUndefined(props.minX)) { minX = props.minX; } if (!isUndefined(props.minY)) { minY = props.minY; } return omitBy({ seriesNormalized: true, series: series, maxX: maxX, maxY: maxY, minX: minX, minY: minY }, isInvalidLimit); } export { normalizeSeries };