UNPKG

@data-ui/xy-chart

Version:

A package of charts with standard x- and y- axes. https://williaster.github.io/data-ui

40 lines (31 loc) 1.3 kB
"use strict"; exports.__esModule = true; exports.default = collectVoronoiData; var _react = require("react"); var _AreaDifferenceSeries = _interopRequireDefault(require("../series/AreaDifferenceSeries")); var _chartUtils = require("./chartUtils"); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } // this function collects all data from child series to defines a voronoi overlay // because x,y coordinates are required to define a voronoi, it filters any points // with undefined x or y values function collectVoronoiData(_ref) { var children = _ref.children, getX = _ref.getX, getY = _ref.getY; return _react.Children.toArray(children).reduce(function (result, Child) { var name = (0, _chartUtils.componentName)(Child); if ((0, _chartUtils.isSeries)(name) && !Child.props.disableMouseEvents) { if (name === _AreaDifferenceSeries.default.displayName) { return result.concat(collectVoronoiData({ children: Child.props.children, getX: getX, getY: getY })); } return result.concat(Child.props.data.filter(function (d) { return (0, _chartUtils.isDefined)(getX(d)) && (0, _chartUtils.isDefined)(getY(d)); })); } return result; }, []); }