UNPKG

@semcore/chart

Version:
33 lines (32 loc) 1.02 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(exports, "__esModule", { value: true }); exports["default"] = computeDefinedSegments; var _hasNull = _interopRequireDefault(require("./hasNull")); /** * Divides an array of plot points into an array with arrays of points * separated by segments of no data points 🤯 * @param {Point[]} points - array of points * @param {String} dataKey - data key * @return {Point[][]} */ function computeDefinedSegments(points, dataKey) { var startNewSegment = true; return points.reduce(function (segments, point) { if ((0, _hasNull["default"])(point, dataKey)) { startNewSegment = true; return segments; } if (startNewSegment) { segments.push([point]); startNewSegment = false; } else { var lastSegment = segments[segments.length - 1]; lastSegment.push(point); } return segments; }, []); } //# sourceMappingURL=computeDefinedSegments.js.map