Socket
Socket
Sign inDemoInstall

@devexpress/dx-chart-core

Package Overview
Dependencies
Maintainers
13
Versions
74
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@devexpress/dx-chart-core - npm Package Compare versions

Comparing version 1.10.0 to 1.10.1

280

dist/dx-chart-core.es.js
/**
* Bundle of @devexpress/dx-chart-core
* Generated: 2018-12-25
* Version: 1.10.0
* Generated: 2019-02-06
* Version: 1.10.1
* License: https://js.devexpress.com/Licensing

@@ -9,4 +9,4 @@ */

import { extent } from 'd3-array';
import { scaleLinear, scaleBand, scaleOrdinal } from 'd3-scale';
import { area, line, curveMonotoneX, pie, arc, symbol, symbolCircle, stack } from 'd3-shape';
import { scaleLinear, scaleBand } from 'd3-scale';
import { area, line, curveMonotoneX, pie, symbol, symbolCircle, arc, stack } from 'd3-shape';

@@ -388,3 +388,2 @@ function _defineProperty(obj, key, value) {

var DEFAULT_POINT_SIZE = 7;
var dArea = area().x(getX).y1(getY).y0(getY1);

@@ -396,16 +395,9 @@ var dLine = line().x(getX).y(getY);

valueScale = _ref4.valueScale,
points = _ref4.points,
innerRadius = _ref4.innerRadius,
outerRadius = _ref4.outerRadius,
palette = _ref4.palette;
points = _ref4.points;
var x = Math.max.apply(Math, _toConsumableArray(argumentScale.range())) / 2;
var y = Math.max.apply(Math, _toConsumableArray(valueScale.range())) / 2;
var radius = Math.min(x, y);
var maxRadius = Math.min(x, y);
var pieData = pie().sort(null).value(function (d) {
return d.value;
})(points);
var inner = innerRadius * radius;
var outer = outerRadius * radius;
var gen = arc().innerRadius(inner).outerRadius(outer);
var colorScale = scaleOrdinal().range(palette);
return function (point) {

@@ -416,11 +408,7 @@ var _pieData$point$index = pieData[point.index],

return _objectSpread({}, point, {
// TODO: It should be calculated in *pointComponent*.
d: gen.startAngle(startAngle).endAngle(endAngle)(),
color: point.color || colorScale(point.index),
x: x,
y: y,
innerRadius: inner,
outerRadius: outer,
startAngle: startAngle,
endAngle: endAngle
endAngle: endAngle,
maxRadius: maxRadius
});

@@ -440,2 +428,3 @@ };

};
var getScatterPointTransformer = getLinePointTransformer;
var getAreaPointTransformer = function getAreaPointTransformer(series) {

@@ -454,14 +443,11 @@ var transform = getLinePointTransformer(series);

var argumentScale = _ref6.argumentScale,
valueScale = _ref6.valueScale,
barWidth = _ref6.barWidth;
valueScale = _ref6.valueScale;
var y1 = valueScale(0);
var categoryWidth = getWidth(argumentScale);
var offset = categoryWidth * (1 - barWidth) / 2;
var width = categoryWidth * barWidth;
var fixedArgumentScale = fixOffset(argumentScale);
return function (point) {
return _objectSpread({}, point, {
x: argumentScale(point.argument) + offset,
x: fixedArgumentScale(point.argument),
y: valueScale(point.value),
y1: y1,
width: width
maxBarWidth: getWidth(argumentScale)
});

@@ -474,2 +460,7 @@ };

getBarPointTransformer.isBroad = true;
getPiePointTransformer.getPointColor = function (palette, index) {
return palette[index % palette.length];
};
var findSeriesByName = function findSeriesByName(name, series) {

@@ -486,3 +477,3 @@ return series.find(function (seriesItem) {

return {
x: x,
x: x - width / 2,
y: Math.min(y, y1),

@@ -493,24 +484,25 @@ width: width || 2,

};
var pointAttributes = function pointAttributes(_ref8) {
var _ref8$size = _ref8.size,
size = _ref8$size === void 0 ? DEFAULT_POINT_SIZE : _ref8$size;
var dPoint = symbol().size([Math.pow(size, 2)]).type(symbolCircle)();
return function (item) {
return {
// TODO: It should be calculated in *pointComponent*.
d: dPoint,
x: item.x,
y: item.y
};
};
var dSymbol = function dSymbol(_ref8) {
var size = _ref8.size;
return symbol().size([Math.pow(size, 2)]).type(symbolCircle)();
};
var dPie = function dPie(_ref9) {
var maxRadius = _ref9.maxRadius,
innerRadius = _ref9.innerRadius,
outerRadius = _ref9.outerRadius,
startAngle = _ref9.startAngle,
endAngle = _ref9.endAngle;
return arc().innerRadius(innerRadius * maxRadius).outerRadius(outerRadius * maxRadius).startAngle(startAngle).endAngle(endAngle)();
};
getBarPointTransformer.getTargetElement = function (_ref9) {
var x = _ref9.x,
y = _ref9.y,
y1 = _ref9.y1,
width = _ref9.width;
getBarPointTransformer.getTargetElement = function (_ref10) {
var x = _ref10.x,
y = _ref10.y,
y1 = _ref10.y1,
barWidth = _ref10.barWidth,
maxBarWidth = _ref10.maxBarWidth;
var width = barWidth * maxBarWidth;
var height = Math.abs(y1 - y);
return {
x: x,
x: x - width / 2,
y: y,

@@ -521,10 +513,11 @@ d: "M0,0 ".concat(width, ",0 ").concat(width, ",").concat(height, " 0,").concat(height)

getPiePointTransformer.getTargetElement = function (_ref10) {
var x = _ref10.x,
y = _ref10.y,
innerRadius = _ref10.innerRadius,
outerRadius = _ref10.outerRadius,
startAngle = _ref10.startAngle,
endAngle = _ref10.endAngle;
var center = arc().innerRadius(innerRadius).outerRadius(outerRadius).startAngle(startAngle).endAngle(endAngle).centroid();
getPiePointTransformer.getTargetElement = function (_ref11) {
var x = _ref11.x,
y = _ref11.y,
innerRadius = _ref11.innerRadius,
outerRadius = _ref11.outerRadius,
maxRadius = _ref11.maxRadius,
startAngle = _ref11.startAngle,
endAngle = _ref11.endAngle;
var center = arc().innerRadius(innerRadius * maxRadius).outerRadius(outerRadius * maxRadius).startAngle(startAngle).endAngle(endAngle).centroid();
return {

@@ -537,11 +530,9 @@ x: center[0] + x,

getAreaPointTransformer.getTargetElement = function (_ref11) {
var x = _ref11.x,
y = _ref11.y;
var size = DEFAULT_POINT_SIZE; // TODO get user size
getAreaPointTransformer.getTargetElement = function (_ref12) {
var x = _ref12.x,
y = _ref12.y;
return {
x: x,
y: y,
d: symbol().size([Math.pow(size, 2)]).type(symbolCircle)()
d: symbol().size([Math.pow(2, 2)]).type(symbolCircle)()
};

@@ -552,14 +543,26 @@ };

var createNewUniqueName = function createNewUniqueName(name) {
return name.replace(/\d*$/, function (str) {
return str ? +str + 1 : 0;
});
getScatterPointTransformer.getTargetElement = function (_ref13) {
var x = _ref13.x,
y = _ref13.y,
point = _ref13.point;
return {
x: x,
y: y,
d: symbol().size([Math.pow(point.size, 2)]).type(symbolCircle)()
};
};
var addItem = function addItem(list, item) {
return list.find(function (obj) {
return obj.uniqueName === item.uniqueName;
}) ? addItem(list, _objectSpread({}, item, {
uniqueName: createNewUniqueName(item.uniqueName)
})) : list.concat(item);
var getUniqueName = function getUniqueName(list, name) {
var names = new Set(list.map(function (item) {
return item.name;
}));
var ret = name;
while (names.has(ret)) {
ret = ret.replace(/\d*$/, function (str) {
return str ? +str + 1 : 0;
});
}
return ret;
}; // TODO: Memoization is much needed here.

@@ -569,3 +572,6 @@ // Though "series" list never persists, single "series" item most often does.

var createPoints = function createPoints(argumentField, valueField, data) {
var createPoints = function createPoints(_ref14, data, props, palette) {
var argumentField = _ref14.argumentField,
valueField = _ref14.valueField,
getPointTransformer = _ref14.getPointTransformer;
var points = [];

@@ -577,7 +583,9 @@ data.forEach(function (dataItem, index) {

if (argument !== undefined && value !== undefined) {
points.push({
points.push(_objectSpread({
argument: argument,
value: value,
index: index
});
}, props, {
color: getPointTransformer.getPointColor ? getPointTransformer.getPointColor(palette, index) : props.color
}));
}

@@ -588,16 +596,15 @@ });

var addSeries = function addSeries(series, data, palette, props) {
var points = createPoints(props.argumentField, props.valueField, data); // It is used to generate unique series dependent attribute names for patterns.
var addSeries = function addSeries(series, data, palette, props, restProps) {
// It is used to generate unique series dependent attribute names for patterns.
// *symbolName* cannot be used as it cannot be part of DOM attribute name.
// TODO: Consider making *name* unique and then use it instead of *index*.
var index = series.length;
return addItem(series, _objectSpread({}, props, {
var seriesColor = props.color || palette[index % palette.length];
return [].concat(_toConsumableArray(series), [_objectSpread({}, props, {
name: getUniqueName(series, props.name),
index: index,
points: points,
uniqueName: props.name,
palette: palette,
// TODO: For Pie only. Find a better place for it.
color: props.color || palette[index % palette.length]
}));
points: createPoints(props, data, _objectSpread({}, restProps, {
color: seriesColor
}), palette),
color: seriesColor
})]);
}; // TODO: Memoization is much needed here by the same reason as in "createPoints".

@@ -752,9 +759,7 @@ // Make "scales" persistent first.

var transform = getPointTransformer(series);
var barWidth = series.barWidth;
var widthCoeff = 1 / groupCount;
var offsetCoeff = -(1 - barWidth) / 2 + groupOffset + widthCoeff * (1 - barWidth) / 2;
return function (point) {
var ret = transform(point);
ret.x += ret.width / barWidth * offsetCoeff;
ret.width *= widthCoeff;
ret.x -= ret.maxBarWidth * (0.5 - 0.5 * widthCoeff - groupOffset * widthCoeff);
ret.maxBarWidth /= groupCount;
return ret;

@@ -781,3 +786,3 @@ };

var scale = scaleBand().domain(Array.from(groups)).range([0, 1]);
var scale = scaleBand().domain(Array.from(groups)).range([0, groups.size]);
return seriesList.map(function (seriesItem, i) {

@@ -1088,23 +1093,28 @@ if (!seriesItem.getPointTransformer.isBroad) {

var createBarHitTester = createPointsEnumeratingHitTesterCreator(function (_ref6, point) {
var _ref7 = _slicedToArray(_ref6, 2),
px = _ref7[0],
py = _ref7[1];
var createBarHitTester = createPointsEnumeratingHitTesterCreator(function (_ref6, _ref7) {
var _ref8 = _slicedToArray(_ref6, 2),
px = _ref8[0],
py = _ref8[1];
var xCenter = point.x + point.width / 2;
var yCenter = (point.y + point.y1) / 2;
var halfWidth = point.width / 2;
var halfHeight = Math.abs(point.y - point.y1) / 2;
var x = _ref7.x,
y = _ref7.y,
y1 = _ref7.y1,
barWidth = _ref7.barWidth,
maxBarWidth = _ref7.maxBarWidth;
var xCenter = x;
var yCenter = (y + y1) / 2;
var halfWidth = maxBarWidth * barWidth / 2;
var halfHeight = Math.abs(y - y1) / 2;
return hitTestRect(px - xCenter, py - yCenter, halfWidth, halfHeight);
}); // TODO: Use actual point size here!
});
var createScatterHitTester = createPointsEnumeratingHitTesterCreator(function (_ref9, _ref10) {
var _ref11 = _slicedToArray(_ref9, 2),
px = _ref11[0],
py = _ref11[1];
var createScatterHitTester = createPointsEnumeratingHitTesterCreator(function (_ref8, _ref9) {
var _ref10 = _slicedToArray(_ref8, 2),
px = _ref10[0],
py = _ref10[1];
var x = _ref9.x,
y = _ref9.y;
var x = _ref10.x,
y = _ref10.y,
point = _ref10.point;
var distance = getSegmentLength(px - x, py - y);
return distance <= 10 ? {
return distance <= point.size / 2 ? {
distance: distance

@@ -1120,16 +1130,19 @@ } : null;

var createPieHitTester = createPointsEnumeratingHitTesterCreator(function (_ref11, _ref12) {
var _ref13 = _slicedToArray(_ref11, 2),
px = _ref13[0],
py = _ref13[1];
var createPieHitTester = createPointsEnumeratingHitTesterCreator(function (_ref12, _ref13) {
var _ref14 = _slicedToArray(_ref12, 2),
px = _ref14[0],
py = _ref14[1];
var x = _ref12.x,
y = _ref12.y,
innerRadius = _ref12.innerRadius,
outerRadius = _ref12.outerRadius,
startAngle = _ref12.startAngle,
endAngle = _ref12.endAngle;
var rCenter = (innerRadius + outerRadius) / 2;
var x = _ref13.x,
y = _ref13.y,
innerRadius = _ref13.innerRadius,
outerRadius = _ref13.outerRadius,
startAngle = _ref13.startAngle,
maxRadius = _ref13.maxRadius,
endAngle = _ref13.endAngle;
var inner = innerRadius * maxRadius;
var outer = outerRadius * maxRadius;
var rCenter = (inner + outer) / 2;
var angleCenter = (startAngle + endAngle) / 2;
var halfRadius = (outerRadius - innerRadius) / 2;
var halfRadius = (outer - inner) / 2;
var halfAngle = Math.abs(startAngle - endAngle) / 2;

@@ -1147,5 +1160,5 @@ var dx = px - x;

var result = {};
targets.forEach(function (_ref14) {
var series = _ref14.series,
point = _ref14.point;
targets.forEach(function (_ref15) {
var series = _ref15.series,
point = _ref15.point;
(result[series] = result[series] || new Set()).add(point);

@@ -1191,3 +1204,3 @@ });

return series.map(function (_ref) {
var text = _ref.uniqueName,
var text = _ref.name,
color = _ref.color;

@@ -1305,4 +1318,6 @@ return {

};
};
}; // The result is of Map<string, Function> type.
// Keys are DOM event names (https://developer.mozilla.org/en-US/docs/Web/Events).
var buildEventHandlers = function buildEventHandlers(seriesList, _ref2) {

@@ -1318,4 +1333,17 @@ var clickHandlers = _ref2.clickHandlers,

if (pointerMoveHandlers.length) {
handlers.pointermove = buildEventHandler(seriesList, pointerMoveHandlers);
handlers.pointerleave = buildLeaveEventHandler(pointerMoveHandlers);
var moveHandler = buildEventHandler(seriesList, pointerMoveHandlers);
var leaveHandler = buildLeaveEventHandler(pointerMoveHandlers);
if ('onpointermove' in window) {
// eslint-disable-line no-undef
handlers.pointermove = moveHandler;
handlers.pointerleave = leaveHandler;
} else if ('ontouchmove' in window) {
// eslint-disable-line no-undef
handlers.touchmove = moveHandler;
handlers.touchleave = leaveHandler;
} else {
handlers.mousemove = moveHandler;
handlers.mouseleave = leaveHandler;
}
}

@@ -1326,3 +1354,3 @@

export { defaultDomains, addDomain, scaleLinear$1 as scaleLinear, scaleBand$1 as scaleBand, computeDomains, buildScales, bBoxes, axisCoordinates, getGridCoordinates, dArea, dLine, dSpline, getPiePointTransformer, getLinePointTransformer, getAreaPointTransformer, getBarPointTransformer, findSeriesByName, dBar, pointAttributes, addSeries, scaleSeriesPoints, getStackedSeries, getAreaAnimationStyle, getPieAnimationStyle, getScatterAnimationStyle, buildAnimatedStyleGetter, getParameters, processHandleTooltip, createAreaHitTester, createLineHitTester, createSplineHitTester, createBarHitTester, createScatterHitTester, createPieHitTester, changeSeriesState, isHorizontal, getWidth, getValueDomainName, fixOffset, getLegendItems, buildEventHandlers, processPointerMove, HORIZONTAL, VERTICAL, TOP, BOTTOM, LEFT, RIGHT, MIDDLE, END, START, LINEAR, BAND, ARGUMENT_DOMAIN, VALUE_DOMAIN, HOVERED, SELECTED };
export { defaultDomains, addDomain, scaleLinear$1 as scaleLinear, scaleBand$1 as scaleBand, computeDomains, buildScales, bBoxes, axisCoordinates, getGridCoordinates, dArea, dLine, dSpline, getPiePointTransformer, getLinePointTransformer, getScatterPointTransformer, getAreaPointTransformer, getBarPointTransformer, findSeriesByName, dBar, dSymbol, dPie, addSeries, scaleSeriesPoints, getStackedSeries, getAreaAnimationStyle, getPieAnimationStyle, getScatterAnimationStyle, buildAnimatedStyleGetter, getParameters, processHandleTooltip, createAreaHitTester, createLineHitTester, createSplineHitTester, createBarHitTester, createScatterHitTester, createPieHitTester, changeSeriesState, isHorizontal, getWidth, getValueDomainName, fixOffset, getLegendItems, buildEventHandlers, processPointerMove, HORIZONTAL, VERTICAL, TOP, BOTTOM, LEFT, RIGHT, MIDDLE, END, START, LINEAR, BAND, ARGUMENT_DOMAIN, VALUE_DOMAIN, HOVERED, SELECTED };
//# sourceMappingURL=dx-chart-core.es.js.map
/**
* Bundle of @devexpress/dx-chart-core
* Generated: 2018-12-25
* Version: 1.10.0
* Generated: 2019-02-06
* Version: 1.10.1
* License: https://js.devexpress.com/Licensing

@@ -389,3 +389,2 @@ */

var DEFAULT_POINT_SIZE = 7;
var dArea = d3Shape.area().x(getX).y1(getY).y0(getY1);

@@ -397,16 +396,9 @@ var dLine = d3Shape.line().x(getX).y(getY);

valueScale = _ref4.valueScale,
points = _ref4.points,
innerRadius = _ref4.innerRadius,
outerRadius = _ref4.outerRadius,
palette = _ref4.palette;
points = _ref4.points;
var x = Math.max.apply(Math, _toConsumableArray(argumentScale.range())) / 2;
var y = Math.max.apply(Math, _toConsumableArray(valueScale.range())) / 2;
var radius = Math.min(x, y);
var maxRadius = Math.min(x, y);
var pieData = d3Shape.pie().sort(null).value(function (d) {
return d.value;
})(points);
var inner = innerRadius * radius;
var outer = outerRadius * radius;
var gen = d3Shape.arc().innerRadius(inner).outerRadius(outer);
var colorScale = d3Scale.scaleOrdinal().range(palette);
return function (point) {

@@ -417,11 +409,7 @@ var _pieData$point$index = pieData[point.index],

return _objectSpread({}, point, {
// TODO: It should be calculated in *pointComponent*.
d: gen.startAngle(startAngle).endAngle(endAngle)(),
color: point.color || colorScale(point.index),
x: x,
y: y,
innerRadius: inner,
outerRadius: outer,
startAngle: startAngle,
endAngle: endAngle
endAngle: endAngle,
maxRadius: maxRadius
});

@@ -441,2 +429,3 @@ };

};
var getScatterPointTransformer = getLinePointTransformer;
var getAreaPointTransformer = function getAreaPointTransformer(series) {

@@ -455,14 +444,11 @@ var transform = getLinePointTransformer(series);

var argumentScale = _ref6.argumentScale,
valueScale = _ref6.valueScale,
barWidth = _ref6.barWidth;
valueScale = _ref6.valueScale;
var y1 = valueScale(0);
var categoryWidth = getWidth(argumentScale);
var offset = categoryWidth * (1 - barWidth) / 2;
var width = categoryWidth * barWidth;
var fixedArgumentScale = fixOffset(argumentScale);
return function (point) {
return _objectSpread({}, point, {
x: argumentScale(point.argument) + offset,
x: fixedArgumentScale(point.argument),
y: valueScale(point.value),
y1: y1,
width: width
maxBarWidth: getWidth(argumentScale)
});

@@ -475,2 +461,7 @@ };

getBarPointTransformer.isBroad = true;
getPiePointTransformer.getPointColor = function (palette, index) {
return palette[index % palette.length];
};
var findSeriesByName = function findSeriesByName(name, series) {

@@ -487,3 +478,3 @@ return series.find(function (seriesItem) {

return {
x: x,
x: x - width / 2,
y: Math.min(y, y1),

@@ -494,24 +485,25 @@ width: width || 2,

};
var pointAttributes = function pointAttributes(_ref8) {
var _ref8$size = _ref8.size,
size = _ref8$size === void 0 ? DEFAULT_POINT_SIZE : _ref8$size;
var dPoint = d3Shape.symbol().size([Math.pow(size, 2)]).type(d3Shape.symbolCircle)();
return function (item) {
return {
// TODO: It should be calculated in *pointComponent*.
d: dPoint,
x: item.x,
y: item.y
};
};
var dSymbol = function dSymbol(_ref8) {
var size = _ref8.size;
return d3Shape.symbol().size([Math.pow(size, 2)]).type(d3Shape.symbolCircle)();
};
var dPie = function dPie(_ref9) {
var maxRadius = _ref9.maxRadius,
innerRadius = _ref9.innerRadius,
outerRadius = _ref9.outerRadius,
startAngle = _ref9.startAngle,
endAngle = _ref9.endAngle;
return d3Shape.arc().innerRadius(innerRadius * maxRadius).outerRadius(outerRadius * maxRadius).startAngle(startAngle).endAngle(endAngle)();
};
getBarPointTransformer.getTargetElement = function (_ref9) {
var x = _ref9.x,
y = _ref9.y,
y1 = _ref9.y1,
width = _ref9.width;
getBarPointTransformer.getTargetElement = function (_ref10) {
var x = _ref10.x,
y = _ref10.y,
y1 = _ref10.y1,
barWidth = _ref10.barWidth,
maxBarWidth = _ref10.maxBarWidth;
var width = barWidth * maxBarWidth;
var height = Math.abs(y1 - y);
return {
x: x,
x: x - width / 2,
y: y,

@@ -522,10 +514,11 @@ d: "M0,0 ".concat(width, ",0 ").concat(width, ",").concat(height, " 0,").concat(height)

getPiePointTransformer.getTargetElement = function (_ref10) {
var x = _ref10.x,
y = _ref10.y,
innerRadius = _ref10.innerRadius,
outerRadius = _ref10.outerRadius,
startAngle = _ref10.startAngle,
endAngle = _ref10.endAngle;
var center = d3Shape.arc().innerRadius(innerRadius).outerRadius(outerRadius).startAngle(startAngle).endAngle(endAngle).centroid();
getPiePointTransformer.getTargetElement = function (_ref11) {
var x = _ref11.x,
y = _ref11.y,
innerRadius = _ref11.innerRadius,
outerRadius = _ref11.outerRadius,
maxRadius = _ref11.maxRadius,
startAngle = _ref11.startAngle,
endAngle = _ref11.endAngle;
var center = d3Shape.arc().innerRadius(innerRadius * maxRadius).outerRadius(outerRadius * maxRadius).startAngle(startAngle).endAngle(endAngle).centroid();
return {

@@ -538,11 +531,9 @@ x: center[0] + x,

getAreaPointTransformer.getTargetElement = function (_ref11) {
var x = _ref11.x,
y = _ref11.y;
var size = DEFAULT_POINT_SIZE; // TODO get user size
getAreaPointTransformer.getTargetElement = function (_ref12) {
var x = _ref12.x,
y = _ref12.y;
return {
x: x,
y: y,
d: d3Shape.symbol().size([Math.pow(size, 2)]).type(d3Shape.symbolCircle)()
d: d3Shape.symbol().size([Math.pow(2, 2)]).type(d3Shape.symbolCircle)()
};

@@ -553,14 +544,26 @@ };

var createNewUniqueName = function createNewUniqueName(name) {
return name.replace(/\d*$/, function (str) {
return str ? +str + 1 : 0;
});
getScatterPointTransformer.getTargetElement = function (_ref13) {
var x = _ref13.x,
y = _ref13.y,
point = _ref13.point;
return {
x: x,
y: y,
d: d3Shape.symbol().size([Math.pow(point.size, 2)]).type(d3Shape.symbolCircle)()
};
};
var addItem = function addItem(list, item) {
return list.find(function (obj) {
return obj.uniqueName === item.uniqueName;
}) ? addItem(list, _objectSpread({}, item, {
uniqueName: createNewUniqueName(item.uniqueName)
})) : list.concat(item);
var getUniqueName = function getUniqueName(list, name) {
var names = new Set(list.map(function (item) {
return item.name;
}));
var ret = name;
while (names.has(ret)) {
ret = ret.replace(/\d*$/, function (str) {
return str ? +str + 1 : 0;
});
}
return ret;
}; // TODO: Memoization is much needed here.

@@ -570,3 +573,6 @@ // Though "series" list never persists, single "series" item most often does.

var createPoints = function createPoints(argumentField, valueField, data) {
var createPoints = function createPoints(_ref14, data, props, palette) {
var argumentField = _ref14.argumentField,
valueField = _ref14.valueField,
getPointTransformer = _ref14.getPointTransformer;
var points = [];

@@ -578,7 +584,9 @@ data.forEach(function (dataItem, index) {

if (argument !== undefined && value !== undefined) {
points.push({
points.push(_objectSpread({
argument: argument,
value: value,
index: index
});
}, props, {
color: getPointTransformer.getPointColor ? getPointTransformer.getPointColor(palette, index) : props.color
}));
}

@@ -589,16 +597,15 @@ });

var addSeries = function addSeries(series, data, palette, props) {
var points = createPoints(props.argumentField, props.valueField, data); // It is used to generate unique series dependent attribute names for patterns.
var addSeries = function addSeries(series, data, palette, props, restProps) {
// It is used to generate unique series dependent attribute names for patterns.
// *symbolName* cannot be used as it cannot be part of DOM attribute name.
// TODO: Consider making *name* unique and then use it instead of *index*.
var index = series.length;
return addItem(series, _objectSpread({}, props, {
var seriesColor = props.color || palette[index % palette.length];
return [].concat(_toConsumableArray(series), [_objectSpread({}, props, {
name: getUniqueName(series, props.name),
index: index,
points: points,
uniqueName: props.name,
palette: palette,
// TODO: For Pie only. Find a better place for it.
color: props.color || palette[index % palette.length]
}));
points: createPoints(props, data, _objectSpread({}, restProps, {
color: seriesColor
}), palette),
color: seriesColor
})]);
}; // TODO: Memoization is much needed here by the same reason as in "createPoints".

@@ -753,9 +760,7 @@ // Make "scales" persistent first.

var transform = getPointTransformer(series);
var barWidth = series.barWidth;
var widthCoeff = 1 / groupCount;
var offsetCoeff = -(1 - barWidth) / 2 + groupOffset + widthCoeff * (1 - barWidth) / 2;
return function (point) {
var ret = transform(point);
ret.x += ret.width / barWidth * offsetCoeff;
ret.width *= widthCoeff;
ret.x -= ret.maxBarWidth * (0.5 - 0.5 * widthCoeff - groupOffset * widthCoeff);
ret.maxBarWidth /= groupCount;
return ret;

@@ -782,3 +787,3 @@ };

var scale = d3Scale.scaleBand().domain(Array.from(groups)).range([0, 1]);
var scale = d3Scale.scaleBand().domain(Array.from(groups)).range([0, groups.size]);
return seriesList.map(function (seriesItem, i) {

@@ -1089,23 +1094,28 @@ if (!seriesItem.getPointTransformer.isBroad) {

var createBarHitTester = createPointsEnumeratingHitTesterCreator(function (_ref6, point) {
var _ref7 = _slicedToArray(_ref6, 2),
px = _ref7[0],
py = _ref7[1];
var createBarHitTester = createPointsEnumeratingHitTesterCreator(function (_ref6, _ref7) {
var _ref8 = _slicedToArray(_ref6, 2),
px = _ref8[0],
py = _ref8[1];
var xCenter = point.x + point.width / 2;
var yCenter = (point.y + point.y1) / 2;
var halfWidth = point.width / 2;
var halfHeight = Math.abs(point.y - point.y1) / 2;
var x = _ref7.x,
y = _ref7.y,
y1 = _ref7.y1,
barWidth = _ref7.barWidth,
maxBarWidth = _ref7.maxBarWidth;
var xCenter = x;
var yCenter = (y + y1) / 2;
var halfWidth = maxBarWidth * barWidth / 2;
var halfHeight = Math.abs(y - y1) / 2;
return hitTestRect(px - xCenter, py - yCenter, halfWidth, halfHeight);
}); // TODO: Use actual point size here!
});
var createScatterHitTester = createPointsEnumeratingHitTesterCreator(function (_ref9, _ref10) {
var _ref11 = _slicedToArray(_ref9, 2),
px = _ref11[0],
py = _ref11[1];
var createScatterHitTester = createPointsEnumeratingHitTesterCreator(function (_ref8, _ref9) {
var _ref10 = _slicedToArray(_ref8, 2),
px = _ref10[0],
py = _ref10[1];
var x = _ref9.x,
y = _ref9.y;
var x = _ref10.x,
y = _ref10.y,
point = _ref10.point;
var distance = getSegmentLength(px - x, py - y);
return distance <= 10 ? {
return distance <= point.size / 2 ? {
distance: distance

@@ -1121,16 +1131,19 @@ } : null;

var createPieHitTester = createPointsEnumeratingHitTesterCreator(function (_ref11, _ref12) {
var _ref13 = _slicedToArray(_ref11, 2),
px = _ref13[0],
py = _ref13[1];
var createPieHitTester = createPointsEnumeratingHitTesterCreator(function (_ref12, _ref13) {
var _ref14 = _slicedToArray(_ref12, 2),
px = _ref14[0],
py = _ref14[1];
var x = _ref12.x,
y = _ref12.y,
innerRadius = _ref12.innerRadius,
outerRadius = _ref12.outerRadius,
startAngle = _ref12.startAngle,
endAngle = _ref12.endAngle;
var rCenter = (innerRadius + outerRadius) / 2;
var x = _ref13.x,
y = _ref13.y,
innerRadius = _ref13.innerRadius,
outerRadius = _ref13.outerRadius,
startAngle = _ref13.startAngle,
maxRadius = _ref13.maxRadius,
endAngle = _ref13.endAngle;
var inner = innerRadius * maxRadius;
var outer = outerRadius * maxRadius;
var rCenter = (inner + outer) / 2;
var angleCenter = (startAngle + endAngle) / 2;
var halfRadius = (outerRadius - innerRadius) / 2;
var halfRadius = (outer - inner) / 2;
var halfAngle = Math.abs(startAngle - endAngle) / 2;

@@ -1148,5 +1161,5 @@ var dx = px - x;

var result = {};
targets.forEach(function (_ref14) {
var series = _ref14.series,
point = _ref14.point;
targets.forEach(function (_ref15) {
var series = _ref15.series,
point = _ref15.point;
(result[series] = result[series] || new Set()).add(point);

@@ -1192,3 +1205,3 @@ });

return series.map(function (_ref) {
var text = _ref.uniqueName,
var text = _ref.name,
color = _ref.color;

@@ -1306,4 +1319,6 @@ return {

};
};
}; // The result is of Map<string, Function> type.
// Keys are DOM event names (https://developer.mozilla.org/en-US/docs/Web/Events).
var buildEventHandlers = function buildEventHandlers(seriesList, _ref2) {

@@ -1319,4 +1334,17 @@ var clickHandlers = _ref2.clickHandlers,

if (pointerMoveHandlers.length) {
handlers.pointermove = buildEventHandler(seriesList, pointerMoveHandlers);
handlers.pointerleave = buildLeaveEventHandler(pointerMoveHandlers);
var moveHandler = buildEventHandler(seriesList, pointerMoveHandlers);
var leaveHandler = buildLeaveEventHandler(pointerMoveHandlers);
if ('onpointermove' in window) {
// eslint-disable-line no-undef
handlers.pointermove = moveHandler;
handlers.pointerleave = leaveHandler;
} else if ('ontouchmove' in window) {
// eslint-disable-line no-undef
handlers.touchmove = moveHandler;
handlers.touchleave = leaveHandler;
} else {
handlers.mousemove = moveHandler;
handlers.mouseleave = leaveHandler;
}
}

@@ -1341,2 +1369,3 @@

exports.getLinePointTransformer = getLinePointTransformer;
exports.getScatterPointTransformer = getScatterPointTransformer;
exports.getAreaPointTransformer = getAreaPointTransformer;

@@ -1346,3 +1375,4 @@ exports.getBarPointTransformer = getBarPointTransformer;

exports.dBar = dBar;
exports.pointAttributes = pointAttributes;
exports.dSymbol = dSymbol;
exports.dPie = dPie;
exports.addSeries = addSeries;

@@ -1349,0 +1379,0 @@ exports.scaleSeriesPoints = scaleSeriesPoints;

{
"name": "@devexpress/dx-chart-core",
"version": "1.10.0",
"version": "1.10.1",
"description": "Core library for the DevExtreme Reactive Chart component",

@@ -44,22 +44,22 @@ "author": {

"@babel/plugin-transform-runtime": "^7.2.0",
"@babel/preset-env": "^7.2.3",
"@babel/preset-env": "^7.3.1",
"babel-core": "^7.0.0-bridge.0",
"babel-jest": "^23.6.0",
"core-js": "^2.6.1",
"eslint": "^5.11.0",
"babel-jest": "^24.0.0",
"core-js": "^2.6.3",
"eslint": "^5.13.0",
"eslint-config-airbnb-base": "^13.1.0",
"eslint-plugin-filenames": "^1.3.2",
"eslint-plugin-import": "^2.14.0",
"eslint-plugin-jest": "^22.1.2",
"jest": "^23.6.0",
"rollup": "^0.68.2",
"rollup-plugin-babel": "^4.1.0",
"rollup-plugin-license": "^0.7.0"
"eslint-plugin-import": "^2.16.0",
"eslint-plugin-jest": "^22.2.2",
"jest": "^24.0.0",
"rollup": "^1.1.2",
"rollup-plugin-babel": "^4.3.2",
"rollup-plugin-license": "^0.8.1"
},
"dependencies": {
"d3-array": "^2.0.2",
"d3-scale": "^2.1.2",
"d3-shape": "^1.2.2"
"d3-array": "^2.0.3",
"d3-scale": "^2.2.2",
"d3-shape": "^1.3.3"
},
"gitHead": "0890839a23a7afd042ad3984dca69232767d60cd"
"gitHead": "c49e13b898b71a22a0d8045ab5b0aa28547e27b2"
}

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc