bento-charts
Version:
Charts library for Bento-platform
38 lines • 1.74 kB
JavaScript
var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
if (ar || !(i in from)) {
if (!ar) ar = Array.prototype.slice.call(from, 0, i);
ar[i] = from[i];
}
}
return to.concat(ar || Array.prototype.slice.call(from));
};
import { useMemo } from 'react';
import { RADIAN } from '../constants/chartConstants';
export var polarToCartesian = function (cx, cy, radius, angle) {
return {
x: cx + Math.cos(-RADIAN * angle) * radius,
y: cy + Math.sin(-RADIAN * angle) * radius,
};
};
export var useTransformedChartData = function (_a, defaultRemoveEmpty, sortY) {
var originalData = _a.data, preFilter = _a.preFilter, dataMap = _a.dataMap, postFilter = _a.postFilter, origRemoveEmpty = _a.removeEmpty;
if (defaultRemoveEmpty === void 0) { defaultRemoveEmpty = true; }
if (sortY === void 0) { sortY = false; }
return useMemo(function () {
var removeEmpty = origRemoveEmpty !== null && origRemoveEmpty !== void 0 ? origRemoveEmpty : defaultRemoveEmpty;
var data = __spreadArray([], originalData, true);
if (preFilter)
data = data.filter(preFilter);
if (dataMap)
data = data.map(dataMap);
if (postFilter)
data = data.filter(postFilter);
if (removeEmpty)
data = data.filter(function (e) { return e.y !== 0; });
if (sortY)
data.sort(function (a, b) { return a.y - b.y; });
return data;
}, [dataMap, defaultRemoveEmpty, originalData, origRemoveEmpty, preFilter, postFilter, sortY]);
};
//# sourceMappingURL=chartUtils.js.map