"use strict";
(self["webpackChunk_core_volunteer_app"] = self["webpackChunk_core_volunteer_app"] || []).push([["vendors-node_modules_recharts_es6_util_BarUtils_js-node_modules_recharts_es6_util_CssPrefixUt-0883c9"],{
/***/ "../../../node_modules/recharts/es6/util/ActiveShapeUtils.js":
/*!*******************************************************************!*\
!*** ../../../node_modules/recharts/es6/util/ActiveShapeUtils.js ***!
\*******************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ Shape: () => (/* binding */ Shape),
/* harmony export */ compareFunnel: () => (/* binding */ compareFunnel),
/* harmony export */ comparePie: () => (/* binding */ comparePie),
/* harmony export */ compareScatter: () => (/* binding */ compareScatter),
/* harmony export */ getActiveShapeIndexForTooltip: () => (/* binding */ getActiveShapeIndexForTooltip),
/* harmony export */ getPropsFromShapeOption: () => (/* binding */ getPropsFromShapeOption),
/* harmony export */ isFunnel: () => (/* binding */ isFunnel),
/* harmony export */ isPie: () => (/* binding */ isPie),
/* harmony export */ isScatter: () => (/* binding */ isScatter)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "../../../node_modules/react/index.js");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var lodash_isFunction__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! lodash/isFunction */ "../../../node_modules/lodash/isFunction.js");
/* harmony import */ var lodash_isFunction__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(lodash_isFunction__WEBPACK_IMPORTED_MODULE_1__);
/* harmony import */ var lodash_isPlainObject__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! lodash/isPlainObject */ "../../../node_modules/lodash/isPlainObject.js");
/* harmony import */ var lodash_isPlainObject__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(lodash_isPlainObject__WEBPACK_IMPORTED_MODULE_2__);
/* harmony import */ var lodash_isBoolean__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! lodash/isBoolean */ "../../../node_modules/lodash/isBoolean.js");
/* harmony import */ var lodash_isBoolean__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(lodash_isBoolean__WEBPACK_IMPORTED_MODULE_3__);
/* harmony import */ var lodash_isEqual__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! lodash/isEqual */ "../../../node_modules/lodash/isEqual.js");
/* harmony import */ var lodash_isEqual__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(lodash_isEqual__WEBPACK_IMPORTED_MODULE_4__);
/* harmony import */ var _shape_Rectangle__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../shape/Rectangle */ "../../../node_modules/recharts/es6/shape/Rectangle.js");
/* harmony import */ var _shape_Trapezoid__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../shape/Trapezoid */ "../../../node_modules/recharts/es6/shape/Trapezoid.js");
/* harmony import */ var _shape_Sector__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../shape/Sector */ "../../../node_modules/recharts/es6/shape/Sector.js");
/* harmony import */ var _container_Layer__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../container/Layer */ "../../../node_modules/recharts/es6/container/Layer.js");
/* harmony import */ var _shape_Symbols__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../shape/Symbols */ "../../../node_modules/recharts/es6/shape/Symbols.js");
var _excluded = ["option", "shapeType", "propTransformer", "activeClassName", "isActive"];
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } } return target; }
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
/**
* This is an abstraction for rendering a user defined prop for a customized shape in several forms.
*
* is the root and will handle taking in:
* - an object of svg properties
* - a boolean
* - a render prop(inline function that returns jsx)
* - a react element
*
* is a subcomponent of and used to match a component
* to the value of props.shapeType that is passed to the root.
*
*/
function defaultPropTransformer(option, props) {
return _objectSpread(_objectSpread({}, props), option);
}
function isSymbolsProps(shapeType, _elementProps) {
return shapeType === 'symbols';
}
function ShapeSelector(_ref) {
var shapeType = _ref.shapeType,
elementProps = _ref.elementProps;
switch (shapeType) {
case 'rectangle':
return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_shape_Rectangle__WEBPACK_IMPORTED_MODULE_5__.Rectangle, elementProps);
case 'trapezoid':
return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_shape_Trapezoid__WEBPACK_IMPORTED_MODULE_6__.Trapezoid, elementProps);
case 'sector':
return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_shape_Sector__WEBPACK_IMPORTED_MODULE_7__.Sector, elementProps);
case 'symbols':
if (isSymbolsProps(shapeType, elementProps)) {
return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_shape_Symbols__WEBPACK_IMPORTED_MODULE_8__.Symbols, elementProps);
}
break;
default:
return null;
}
}
function getPropsFromShapeOption(option) {
if ( /*#__PURE__*/(0,react__WEBPACK_IMPORTED_MODULE_0__.isValidElement)(option)) {
return option.props;
}
return option;
}
function Shape(_ref2) {
var option = _ref2.option,
shapeType = _ref2.shapeType,
_ref2$propTransformer = _ref2.propTransformer,
propTransformer = _ref2$propTransformer === void 0 ? defaultPropTransformer : _ref2$propTransformer,
_ref2$activeClassName = _ref2.activeClassName,
activeClassName = _ref2$activeClassName === void 0 ? 'recharts-active-shape' : _ref2$activeClassName,
isActive = _ref2.isActive,
props = _objectWithoutProperties(_ref2, _excluded);
var shape;
if ( /*#__PURE__*/(0,react__WEBPACK_IMPORTED_MODULE_0__.isValidElement)(option)) {
shape = /*#__PURE__*/(0,react__WEBPACK_IMPORTED_MODULE_0__.cloneElement)(option, _objectSpread(_objectSpread({}, props), getPropsFromShapeOption(option)));
} else if (lodash_isFunction__WEBPACK_IMPORTED_MODULE_1___default()(option)) {
shape = option(props);
} else if (lodash_isPlainObject__WEBPACK_IMPORTED_MODULE_2___default()(option) && !lodash_isBoolean__WEBPACK_IMPORTED_MODULE_3___default()(option)) {
var nextProps = propTransformer(option, props);
shape = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(ShapeSelector, {
shapeType: shapeType,
elementProps: nextProps
});
} else {
var elementProps = props;
shape = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(ShapeSelector, {
shapeType: shapeType,
elementProps: elementProps
});
}
if (isActive) {
return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_container_Layer__WEBPACK_IMPORTED_MODULE_9__.Layer, {
className: activeClassName
}, shape);
}
return shape;
}
/**
* This is an abstraction to handle identifying the active index from a tooltip mouse interaction
*/
function isFunnel(graphicalItem, _item) {
return _item != null && 'trapezoids' in graphicalItem.props;
}
function isPie(graphicalItem, _item) {
return _item != null && 'sectors' in graphicalItem.props;
}
function isScatter(graphicalItem, _item) {
return _item != null && 'points' in graphicalItem.props;
}
function compareFunnel(shapeData, activeTooltipItem) {
var _activeTooltipItem$la, _activeTooltipItem$la2;
var xMatches = shapeData.x === (activeTooltipItem === null || activeTooltipItem === void 0 || (_activeTooltipItem$la = activeTooltipItem.labelViewBox) === null || _activeTooltipItem$la === void 0 ? void 0 : _activeTooltipItem$la.x) || shapeData.x === activeTooltipItem.x;
var yMatches = shapeData.y === (activeTooltipItem === null || activeTooltipItem === void 0 || (_activeTooltipItem$la2 = activeTooltipItem.labelViewBox) === null || _activeTooltipItem$la2 === void 0 ? void 0 : _activeTooltipItem$la2.y) || shapeData.y === activeTooltipItem.y;
return xMatches && yMatches;
}
function comparePie(shapeData, activeTooltipItem) {
var startAngleMatches = shapeData.endAngle === activeTooltipItem.endAngle;
var endAngleMatches = shapeData.startAngle === activeTooltipItem.startAngle;
return startAngleMatches && endAngleMatches;
}
function compareScatter(shapeData, activeTooltipItem) {
var xMatches = shapeData.x === activeTooltipItem.x;
var yMatches = shapeData.y === activeTooltipItem.y;
var zMatches = shapeData.z === activeTooltipItem.z;
return xMatches && yMatches && zMatches;
}
function getComparisonFn(graphicalItem, activeItem) {
var comparison;
if (isFunnel(graphicalItem, activeItem)) {
comparison = compareFunnel;
} else if (isPie(graphicalItem, activeItem)) {
comparison = comparePie;
} else if (isScatter(graphicalItem, activeItem)) {
comparison = compareScatter;
}
return comparison;
}
function getShapeDataKey(graphicalItem, activeItem) {
var shapeKey;
if (isFunnel(graphicalItem, activeItem)) {
shapeKey = 'trapezoids';
} else if (isPie(graphicalItem, activeItem)) {
shapeKey = 'sectors';
} else if (isScatter(graphicalItem, activeItem)) {
shapeKey = 'points';
}
return shapeKey;
}
function getActiveShapeTooltipPayload(graphicalItem, activeItem) {
if (isFunnel(graphicalItem, activeItem)) {
var _activeItem$tooltipPa;
return (_activeItem$tooltipPa = activeItem.tooltipPayload) === null || _activeItem$tooltipPa === void 0 || (_activeItem$tooltipPa = _activeItem$tooltipPa[0]) === null || _activeItem$tooltipPa === void 0 || (_activeItem$tooltipPa = _activeItem$tooltipPa.payload) === null || _activeItem$tooltipPa === void 0 ? void 0 : _activeItem$tooltipPa.payload;
}
if (isPie(graphicalItem, activeItem)) {
var _activeItem$tooltipPa2;
return (_activeItem$tooltipPa2 = activeItem.tooltipPayload) === null || _activeItem$tooltipPa2 === void 0 || (_activeItem$tooltipPa2 = _activeItem$tooltipPa2[0]) === null || _activeItem$tooltipPa2 === void 0 || (_activeItem$tooltipPa2 = _activeItem$tooltipPa2.payload) === null || _activeItem$tooltipPa2 === void 0 ? void 0 : _activeItem$tooltipPa2.payload;
}
if (isScatter(graphicalItem, activeItem)) {
return activeItem.payload;
}
return {};
}
/**
*
* @param {GetActiveShapeIndexForTooltip} arg an object of incoming attributes from Tooltip
* @returns {number}
*
* To handle possible duplicates in the data set,
* match both the data value of the active item to a data value on a graph item,
* and match the mouse coordinates of the active item to the coordinates of in a particular components shape data.
* This assumes equal lengths of shape objects to data items.
*/
function getActiveShapeIndexForTooltip(_ref3) {
var activeTooltipItem = _ref3.activeTooltipItem,
graphicalItem = _ref3.graphicalItem,
itemData = _ref3.itemData;
var shapeKey = getShapeDataKey(graphicalItem, activeTooltipItem);
var tooltipPayload = getActiveShapeTooltipPayload(graphicalItem, activeTooltipItem);
var activeItemMatches = itemData.filter(function (datum, dataIndex) {
var valuesMatch = lodash_isEqual__WEBPACK_IMPORTED_MODULE_4___default()(tooltipPayload, datum);
var mouseCoordinateMatches = graphicalItem.props[shapeKey].filter(function (shapeData) {
var comparison = getComparisonFn(graphicalItem, activeTooltipItem);
return comparison(shapeData, activeTooltipItem);
});
// get the last index in case of multiple matches
var indexOfMouseCoordinates = graphicalItem.props[shapeKey].indexOf(mouseCoordinateMatches[mouseCoordinateMatches.length - 1]);
var coordinatesMatch = dataIndex === indexOfMouseCoordinates;
return valuesMatch && coordinatesMatch;
});
// get the last index in case of multiple matches
var activeIndex = itemData.indexOf(activeItemMatches[activeItemMatches.length - 1]);
return activeIndex;
}
/***/ }),
/***/ "../../../node_modules/recharts/es6/util/BarUtils.js":
/*!***********************************************************!*\
!*** ../../../node_modules/recharts/es6/util/BarUtils.js ***!
\***********************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ BarRectangle: () => (/* binding */ BarRectangle),
/* harmony export */ minPointSizeCallback: () => (/* binding */ minPointSizeCallback)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "../../../node_modules/react/index.js");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var tiny_invariant__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! tiny-invariant */ "../../../node_modules/tiny-invariant/dist/esm/tiny-invariant.js");
/* harmony import */ var _ActiveShapeUtils__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./ActiveShapeUtils */ "../../../node_modules/recharts/es6/util/ActiveShapeUtils.js");
var _excluded = ["x", "y"];
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } } return target; }
// Rectangle props is expecting x, y, height, width as numbers, name as a string, and radius as a custom type
// When props are being spread in from a user defined component in Bar,
// the prop types of an SVGElement have these typed as something else.
// This function will return the passed in props
// along with x, y, height as numbers, name as a string, and radius as number | [number, number, number, number]
function typeguardBarRectangleProps(_ref, props) {
var xProp = _ref.x,
yProp = _ref.y,
option = _objectWithoutProperties(_ref, _excluded);
var xValue = "".concat(xProp);
var x = parseInt(xValue, 10);
var yValue = "".concat(yProp);
var y = parseInt(yValue, 10);
var heightValue = "".concat(props.height || option.height);
var height = parseInt(heightValue, 10);
var widthValue = "".concat(props.width || option.width);
var width = parseInt(widthValue, 10);
return _objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread({}, props), option), x ? {
x: x
} : {}), y ? {
y: y
} : {}), {}, {
height: height,
width: width,
name: props.name,
radius: props.radius
});
}
function BarRectangle(props) {
return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_ActiveShapeUtils__WEBPACK_IMPORTED_MODULE_2__.Shape, _extends({
shapeType: "rectangle",
propTransformer: typeguardBarRectangleProps,
activeClassName: "recharts-active-bar"
}, props));
}
/**
* Safely gets minPointSize from from the minPointSize prop if it is a function
* @param minPointSize minPointSize as passed to the Bar component
* @param defaultValue default minPointSize
* @returns minPointSize
*/
var minPointSizeCallback = function minPointSizeCallback(minPointSize) {
var defaultValue = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;
return function (value, index) {
if (typeof minPointSize === 'number') return minPointSize;
var isValueNumber = typeof value === 'number';
if (isValueNumber) {
return minPointSize(value, index);
}
!isValueNumber ? true ? (0,tiny_invariant__WEBPACK_IMPORTED_MODULE_1__["default"])(false, "minPointSize callback function received a value with type of ".concat(_typeof(value), ". Currently only numbers are supported.")) : 0 : void 0;
return defaultValue;
};
};
/***/ }),
/***/ "../../../node_modules/recharts/es6/util/CartesianUtils.js":
/*!*****************************************************************!*\
!*** ../../../node_modules/recharts/es6/util/CartesianUtils.js ***!
\*****************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ ScaleHelper: () => (/* binding */ ScaleHelper),
/* harmony export */ createLabeledScales: () => (/* binding */ createLabeledScales),
/* harmony export */ formatAxisMap: () => (/* binding */ formatAxisMap),
/* harmony export */ getAngledRectangleWidth: () => (/* binding */ getAngledRectangleWidth),
/* harmony export */ normalizeAngle: () => (/* binding */ normalizeAngle),
/* harmony export */ rectWithCoords: () => (/* binding */ rectWithCoords),
/* harmony export */ rectWithPoints: () => (/* binding */ rectWithPoints)
/* harmony export */ });
/* harmony import */ var lodash_mapValues__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! lodash/mapValues */ "../../../node_modules/lodash/mapValues.js");
/* harmony import */ var lodash_mapValues__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(lodash_mapValues__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var lodash_every__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! lodash/every */ "../../../node_modules/lodash/every.js");
/* harmony import */ var lodash_every__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(lodash_every__WEBPACK_IMPORTED_MODULE_1__);
/* harmony import */ var _ChartUtils__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./ChartUtils */ "../../../node_modules/recharts/es6/util/ChartUtils.js");
/* harmony import */ var _ReactUtils__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./ReactUtils */ "../../../node_modules/recharts/es6/util/ReactUtils.js");
/* harmony import */ var _DataUtils__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./DataUtils */ "../../../node_modules/recharts/es6/util/DataUtils.js");
/* harmony import */ var _cartesian_Bar__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../cartesian/Bar */ "../../../node_modules/recharts/es6/cartesian/Bar.js");
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }
function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
/**
* Calculate the scale function, position, width, height of axes
* @param {Object} props Latest props
* @param {Object} axisMap The configuration of axes
* @param {Object} offset The offset of main part in the svg element
* @param {String} axisType The type of axes, x-axis or y-axis
* @param {String} chartName The name of chart
* @return {Object} Configuration
*/
var formatAxisMap = function formatAxisMap(props, axisMap, offset, axisType, chartName) {
var width = props.width,
height = props.height,
layout = props.layout,
children = props.children;
var ids = Object.keys(axisMap);
var steps = {
left: offset.left,
leftMirror: offset.left,
right: width - offset.right,
rightMirror: width - offset.right,
top: offset.top,
topMirror: offset.top,
bottom: height - offset.bottom,
bottomMirror: height - offset.bottom
};
var hasBar = !!(0,_ReactUtils__WEBPACK_IMPORTED_MODULE_2__.findChildByType)(children, _cartesian_Bar__WEBPACK_IMPORTED_MODULE_3__.Bar);
return ids.reduce(function (result, id) {
var axis = axisMap[id];
var orientation = axis.orientation,
domain = axis.domain,
_axis$padding = axis.padding,
padding = _axis$padding === void 0 ? {} : _axis$padding,
mirror = axis.mirror,
reversed = axis.reversed;
var offsetKey = "".concat(orientation).concat(mirror ? 'Mirror' : '');
var calculatedPadding, range, x, y, needSpace;
if (axis.type === 'number' && (axis.padding === 'gap' || axis.padding === 'no-gap')) {
var diff = domain[1] - domain[0];
var smallestDistanceBetweenValues = Infinity;
var sortedValues = axis.categoricalDomain.sort();
sortedValues.forEach(function (value, index) {
if (index > 0) {
smallestDistanceBetweenValues = Math.min((value || 0) - (sortedValues[index - 1] || 0), smallestDistanceBetweenValues);
}
});
if (Number.isFinite(smallestDistanceBetweenValues)) {
var smallestDistanceInPercent = smallestDistanceBetweenValues / diff;
var rangeWidth = axis.layout === 'vertical' ? offset.height : offset.width;
if (axis.padding === 'gap') {
calculatedPadding = smallestDistanceInPercent * rangeWidth / 2;
}
if (axis.padding === 'no-gap') {
var gap = (0,_DataUtils__WEBPACK_IMPORTED_MODULE_4__.getPercentValue)(props.barCategoryGap, smallestDistanceInPercent * rangeWidth);
var halfBand = smallestDistanceInPercent * rangeWidth / 2;
calculatedPadding = halfBand - gap - (halfBand - gap) / rangeWidth * gap;
}
}
}
if (axisType === 'xAxis') {
range = [offset.left + (padding.left || 0) + (calculatedPadding || 0), offset.left + offset.width - (padding.right || 0) - (calculatedPadding || 0)];
} else if (axisType === 'yAxis') {
range = layout === 'horizontal' ? [offset.top + offset.height - (padding.bottom || 0), offset.top + (padding.top || 0)] : [offset.top + (padding.top || 0) + (calculatedPadding || 0), offset.top + offset.height - (padding.bottom || 0) - (calculatedPadding || 0)];
} else {
range = axis.range;
}
if (reversed) {
range = [range[1], range[0]];
}
var _parseScale = (0,_ChartUtils__WEBPACK_IMPORTED_MODULE_5__.parseScale)(axis, chartName, hasBar),
scale = _parseScale.scale,
realScaleType = _parseScale.realScaleType;
scale.domain(domain).range(range);
(0,_ChartUtils__WEBPACK_IMPORTED_MODULE_5__.checkDomainOfScale)(scale);
var ticks = (0,_ChartUtils__WEBPACK_IMPORTED_MODULE_5__.getTicksOfScale)(scale, _objectSpread(_objectSpread({}, axis), {}, {
realScaleType: realScaleType
}));
if (axisType === 'xAxis') {
needSpace = orientation === 'top' && !mirror || orientation === 'bottom' && mirror;
x = offset.left;
y = steps[offsetKey] - needSpace * axis.height;
} else if (axisType === 'yAxis') {
needSpace = orientation === 'left' && !mirror || orientation === 'right' && mirror;
x = steps[offsetKey] - needSpace * axis.width;
y = offset.top;
}
var finalAxis = _objectSpread(_objectSpread(_objectSpread({}, axis), ticks), {}, {
realScaleType: realScaleType,
x: x,
y: y,
scale: scale,
width: axisType === 'xAxis' ? offset.width : axis.width,
height: axisType === 'yAxis' ? offset.height : axis.height
});
finalAxis.bandSize = (0,_ChartUtils__WEBPACK_IMPORTED_MODULE_5__.getBandSizeOfAxis)(finalAxis, ticks);
if (!axis.hide && axisType === 'xAxis') {
steps[offsetKey] += (needSpace ? -1 : 1) * finalAxis.height;
} else if (!axis.hide) {
steps[offsetKey] += (needSpace ? -1 : 1) * finalAxis.width;
}
return _objectSpread(_objectSpread({}, result), {}, _defineProperty({}, id, finalAxis));
}, {});
};
var rectWithPoints = function rectWithPoints(_ref, _ref2) {
var x1 = _ref.x,
y1 = _ref.y;
var x2 = _ref2.x,
y2 = _ref2.y;
return {
x: Math.min(x1, x2),
y: Math.min(y1, y2),
width: Math.abs(x2 - x1),
height: Math.abs(y2 - y1)
};
};
/**
* Compute the x, y, width, and height of a box from two reference points.
* @param {Object} coords x1, x2, y1, and y2
* @return {Object} object
*/
var rectWithCoords = function rectWithCoords(_ref3) {
var x1 = _ref3.x1,
y1 = _ref3.y1,
x2 = _ref3.x2,
y2 = _ref3.y2;
return rectWithPoints({
x: x1,
y: y1
}, {
x: x2,
y: y2
});
};
var ScaleHelper = /*#__PURE__*/function () {
function ScaleHelper(scale) {
_classCallCheck(this, ScaleHelper);
this.scale = scale;
}
return _createClass(ScaleHelper, [{
key: "domain",
get: function get() {
return this.scale.domain;
}
}, {
key: "range",
get: function get() {
return this.scale.range;
}
}, {
key: "rangeMin",
get: function get() {
return this.range()[0];
}
}, {
key: "rangeMax",
get: function get() {
return this.range()[1];
}
}, {
key: "bandwidth",
get: function get() {
return this.scale.bandwidth;
}
}, {
key: "apply",
value: function apply(value) {
var _ref4 = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {},
bandAware = _ref4.bandAware,
position = _ref4.position;
if (value === undefined) {
return undefined;
}
if (position) {
switch (position) {
case 'start':
{
return this.scale(value);
}
case 'middle':
{
var offset = this.bandwidth ? this.bandwidth() / 2 : 0;
return this.scale(value) + offset;
}
case 'end':
{
var _offset = this.bandwidth ? this.bandwidth() : 0;
return this.scale(value) + _offset;
}
default:
{
return this.scale(value);
}
}
}
if (bandAware) {
var _offset2 = this.bandwidth ? this.bandwidth() / 2 : 0;
return this.scale(value) + _offset2;
}
return this.scale(value);
}
}, {
key: "isInRange",
value: function isInRange(value) {
var range = this.range();
var first = range[0];
var last = range[range.length - 1];
return first <= last ? value >= first && value <= last : value >= last && value <= first;
}
}], [{
key: "create",
value: function create(obj) {
return new ScaleHelper(obj);
}
}]);
}();
_defineProperty(ScaleHelper, "EPS", 1e-4);
var createLabeledScales = function createLabeledScales(options) {
var scales = Object.keys(options).reduce(function (res, key) {
return _objectSpread(_objectSpread({}, res), {}, _defineProperty({}, key, ScaleHelper.create(options[key])));
}, {});
return _objectSpread(_objectSpread({}, scales), {}, {
apply: function apply(coord) {
var _ref5 = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {},
bandAware = _ref5.bandAware,
position = _ref5.position;
return lodash_mapValues__WEBPACK_IMPORTED_MODULE_0___default()(coord, function (value, label) {
return scales[label].apply(value, {
bandAware: bandAware,
position: position
});
});
},
isInRange: function isInRange(coord) {
return lodash_every__WEBPACK_IMPORTED_MODULE_1___default()(coord, function (value, label) {
return scales[label].isInRange(value);
});
}
});
};
/** Normalizes the angle so that 0 <= angle < 180.
* @param {number} angle Angle in degrees.
* @return {number} the normalized angle with a value of at least 0 and never greater or equal to 180. */
function normalizeAngle(angle) {
return (angle % 180 + 180) % 180;
}
/** Calculates the width of the largest horizontal line that fits inside a rectangle that is displayed at an angle.
* @param {Object} size Width and height of the text in a horizontal position.
* @param {number} angle Angle in degrees in which the text is displayed.
* @return {number} The width of the largest horizontal line that fits inside a rectangle that is displayed at an angle.
*/
var getAngledRectangleWidth = function getAngledRectangleWidth(_ref6) {
var width = _ref6.width,
height = _ref6.height;
var angle = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;
// Ensure angle is >= 0 && < 180
var normalizedAngle = normalizeAngle(angle);
var angleRadians = normalizedAngle * Math.PI / 180;
/* Depending on the height and width of the rectangle, we may need to use different formulas to calculate the angled
* width. This threshold defines when each formula should kick in. */
var angleThreshold = Math.atan(height / width);
var angledWidth = angleRadians > angleThreshold && angleRadians < Math.PI - angleThreshold ? height / Math.sin(angleRadians) : width / Math.cos(angleRadians);
return Math.abs(angledWidth);
};
/***/ }),
/***/ "../../../node_modules/recharts/es6/util/ChartUtils.js":
/*!*************************************************************!*\
!*** ../../../node_modules/recharts/es6/util/ChartUtils.js ***!
\*************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ MAX_VALUE_REG: () => (/* binding */ MAX_VALUE_REG),
/* harmony export */ MIN_VALUE_REG: () => (/* binding */ MIN_VALUE_REG),
/* harmony export */ appendOffsetOfLegend: () => (/* binding */ appendOffsetOfLegend),
/* harmony export */ calculateActiveTickIndex: () => (/* binding */ calculateActiveTickIndex),
/* harmony export */ checkDomainOfScale: () => (/* binding */ checkDomainOfScale),
/* harmony export */ combineEventHandlers: () => (/* binding */ combineEventHandlers),
/* harmony export */ findPositionOfBar: () => (/* binding */ findPositionOfBar),
/* harmony export */ getBandSizeOfAxis: () => (/* binding */ getBandSizeOfAxis),
/* harmony export */ getBarPosition: () => (/* binding */ getBarPosition),
/* harmony export */ getBarSizeList: () => (/* binding */ getBarSizeList),
/* harmony export */ getBaseValueOfBar: () => (/* binding */ getBaseValueOfBar),
/* harmony export */ getCateCoordinateOfBar: () => (/* binding */ getCateCoordinateOfBar),
/* harmony export */ getCateCoordinateOfLine: () => (/* binding */ getCateCoordinateOfLine),
/* harmony export */ getCoordinatesOfGrid: () => (/* binding */ getCoordinatesOfGrid),
/* harmony export */ getDomainOfDataByKey: () => (/* binding */ getDomainOfDataByKey),
/* harmony export */ getDomainOfErrorBars: () => (/* binding */ getDomainOfErrorBars),
/* harmony export */ getDomainOfItemsWithSameAxis: () => (/* binding */ getDomainOfItemsWithSameAxis),
/* harmony export */ getDomainOfStackGroups: () => (/* binding */ getDomainOfStackGroups),
/* harmony export */ getLegendProps: () => (/* reexport safe */ _getLegendProps__WEBPACK_IMPORTED_MODULE_14__.getLegendProps),
/* harmony export */ getMainColorOfGraphicItem: () => (/* binding */ getMainColorOfGraphicItem),
/* harmony export */ getStackGroupsByAxisId: () => (/* binding */ getStackGroupsByAxisId),
/* harmony export */ getStackedData: () => (/* binding */ getStackedData),
/* harmony export */ getStackedDataOfItem: () => (/* binding */ getStackedDataOfItem),
/* harmony export */ getTicksOfAxis: () => (/* binding */ getTicksOfAxis),
/* harmony export */ getTicksOfScale: () => (/* binding */ getTicksOfScale),
/* harmony export */ getTooltipItem: () => (/* binding */ getTooltipItem),
/* harmony export */ getValueByDataKey: () => (/* binding */ getValueByDataKey),
/* harmony export */ isCategoricalAxis: () => (/* binding */ isCategoricalAxis),
/* harmony export */ offsetPositive: () => (/* binding */ offsetPositive),
/* harmony export */ offsetSign: () => (/* binding */ offsetSign),
/* harmony export */ parseDomainOfCategoryAxis: () => (/* binding */ parseDomainOfCategoryAxis),
/* harmony export */ parseErrorBarsOfAxis: () => (/* binding */ parseErrorBarsOfAxis),
/* harmony export */ parseScale: () => (/* binding */ parseScale),
/* harmony export */ parseSpecifiedDomain: () => (/* binding */ parseSpecifiedDomain),
/* harmony export */ truncateByDomain: () => (/* binding */ truncateByDomain)
/* harmony export */ });
/* harmony import */ var victory_vendor_d3_scale__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! victory-vendor/d3-scale */ "../../../node_modules/victory-vendor/es/d3-scale.js");
/* harmony import */ var victory_vendor_d3_shape__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! victory-vendor/d3-shape */ "../../../node_modules/victory-vendor/es/d3-shape.js");
/* harmony import */ var lodash_max__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! lodash/max */ "../../../node_modules/lodash/max.js");
/* harmony import */ var lodash_max__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(lodash_max__WEBPACK_IMPORTED_MODULE_2__);
/* harmony import */ var lodash_min__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! lodash/min */ "../../../node_modules/lodash/min.js");
/* harmony import */ var lodash_min__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(lodash_min__WEBPACK_IMPORTED_MODULE_3__);
/* harmony import */ var lodash_isNil__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! lodash/isNil */ "../../../node_modules/lodash/isNil.js");
/* harmony import */ var lodash_isNil__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(lodash_isNil__WEBPACK_IMPORTED_MODULE_4__);
/* harmony import */ var lodash_isFunction__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! lodash/isFunction */ "../../../node_modules/lodash/isFunction.js");
/* harmony import */ var lodash_isFunction__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(lodash_isFunction__WEBPACK_IMPORTED_MODULE_5__);
/* harmony import */ var lodash_isString__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! lodash/isString */ "../../../node_modules/lodash/isString.js");
/* harmony import */ var lodash_isString__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(lodash_isString__WEBPACK_IMPORTED_MODULE_6__);
/* harmony import */ var lodash_get__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! lodash/get */ "../../../node_modules/lodash/get.js");
/* harmony import */ var lodash_get__WEBPACK_IMPORTED_MODULE_7___default = /*#__PURE__*/__webpack_require__.n(lodash_get__WEBPACK_IMPORTED_MODULE_7__);
/* harmony import */ var lodash_flatMap__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! lodash/flatMap */ "../../../node_modules/lodash/flatMap.js");
/* harmony import */ var lodash_flatMap__WEBPACK_IMPORTED_MODULE_8___default = /*#__PURE__*/__webpack_require__.n(lodash_flatMap__WEBPACK_IMPORTED_MODULE_8__);
/* harmony import */ var lodash_isNaN__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! lodash/isNaN */ "../../../node_modules/lodash/isNaN.js");
/* harmony import */ var lodash_isNaN__WEBPACK_IMPORTED_MODULE_9___default = /*#__PURE__*/__webpack_require__.n(lodash_isNaN__WEBPACK_IMPORTED_MODULE_9__);
/* harmony import */ var lodash_upperFirst__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! lodash/upperFirst */ "../../../node_modules/lodash/upperFirst.js");
/* harmony import */ var lodash_upperFirst__WEBPACK_IMPORTED_MODULE_10___default = /*#__PURE__*/__webpack_require__.n(lodash_upperFirst__WEBPACK_IMPORTED_MODULE_10__);
/* harmony import */ var lodash_isEqual__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! lodash/isEqual */ "../../../node_modules/lodash/isEqual.js");
/* harmony import */ var lodash_isEqual__WEBPACK_IMPORTED_MODULE_11___default = /*#__PURE__*/__webpack_require__.n(lodash_isEqual__WEBPACK_IMPORTED_MODULE_11__);
/* harmony import */ var lodash_sortBy__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! lodash/sortBy */ "../../../node_modules/lodash/sortBy.js");
/* harmony import */ var lodash_sortBy__WEBPACK_IMPORTED_MODULE_12___default = /*#__PURE__*/__webpack_require__.n(lodash_sortBy__WEBPACK_IMPORTED_MODULE_12__);
/* harmony import */ var recharts_scale__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! recharts-scale */ "../../../node_modules/recharts-scale/es6/index.js");
/* harmony import */ var _cartesian_ErrorBar__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! ../cartesian/ErrorBar */ "../../../node_modules/recharts/es6/cartesian/ErrorBar.js");
/* harmony import */ var _DataUtils__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ./DataUtils */ "../../../node_modules/recharts/es6/util/DataUtils.js");
/* harmony import */ var _ReactUtils__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ./ReactUtils */ "../../../node_modules/recharts/es6/util/ReactUtils.js");
/* harmony import */ var _getLegendProps__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ./getLegendProps */ "../../../node_modules/recharts/es6/util/getLegendProps.js");
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
// TODO: Cause of circular dependency. Needs refactor.
// import { RadiusAxisProps, AngleAxisProps } from '../polar/types';
// Exported for backwards compatibility
function getValueByDataKey(obj, dataKey, defaultValue) {
if (lodash_isNil__WEBPACK_IMPORTED_MODULE_4___default()(obj) || lodash_isNil__WEBPACK_IMPORTED_MODULE_4___default()(dataKey)) {
return defaultValue;
}
if ((0,_DataUtils__WEBPACK_IMPORTED_MODULE_15__.isNumOrStr)(dataKey)) {
return lodash_get__WEBPACK_IMPORTED_MODULE_7___default()(obj, dataKey, defaultValue);
}
if (lodash_isFunction__WEBPACK_IMPORTED_MODULE_5___default()(dataKey)) {
return dataKey(obj);
}
return defaultValue;
}
/**
* Get domain of data by key.
* @param {Array} data The data displayed in the chart
* @param {String} key The unique key of a group of data
* @param {String} type The type of axis
* @param {Boolean} filterNil Whether or not filter nil values
* @return {Array} Domain of data
*/
function getDomainOfDataByKey(data, key, type, filterNil) {
var flattenData = lodash_flatMap__WEBPACK_IMPORTED_MODULE_8___default()(data, function (entry) {
return getValueByDataKey(entry, key);
});
if (type === 'number') {
// @ts-expect-error parseFloat type only accepts strings
var domain = flattenData.filter(function (entry) {
return (0,_DataUtils__WEBPACK_IMPORTED_MODULE_15__.isNumber)(entry) || parseFloat(entry);
});
return domain.length ? [lodash_min__WEBPACK_IMPORTED_MODULE_3___default()(domain), lodash_max__WEBPACK_IMPORTED_MODULE_2___default()(domain)] : [Infinity, -Infinity];
}
var validateData = filterNil ? flattenData.filter(function (entry) {
return !lodash_isNil__WEBPACK_IMPORTED_MODULE_4___default()(entry);
}) : flattenData;
// Supports x-axis of Date type
return validateData.map(function (entry) {
return (0,_DataUtils__WEBPACK_IMPORTED_MODULE_15__.isNumOrStr)(entry) || entry instanceof Date ? entry : '';
});
}
var calculateActiveTickIndex = function calculateActiveTickIndex(coordinate) {
var _ticks$length;
var ticks = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];
var unsortedTicks = arguments.length > 2 ? arguments[2] : undefined;
var axis = arguments.length > 3 ? arguments[3] : undefined;
var index = -1;
var len = (_ticks$length = ticks === null || ticks === void 0 ? void 0 : ticks.length) !== null && _ticks$length !== void 0 ? _ticks$length : 0;
// if there are 1 or less ticks ticks then the active tick is at index 0
if (len <= 1) {
return 0;
}
if (axis && axis.axisType === 'angleAxis' && Math.abs(Math.abs(axis.range[1] - axis.range[0]) - 360) <= 1e-6) {
var range = axis.range;
// ticks are distributed in a circle
for (var i = 0; i < len; i++) {
var before = i > 0 ? unsortedTicks[i - 1].coordinate : unsortedTicks[len - 1].coordinate;
var cur = unsortedTicks[i].coordinate;
var after = i >= len - 1 ? unsortedTicks[0].coordinate : unsortedTicks[i + 1].coordinate;
var sameDirectionCoord = void 0;
if ((0,_DataUtils__WEBPACK_IMPORTED_MODULE_15__.mathSign)(cur - before) !== (0,_DataUtils__WEBPACK_IMPORTED_MODULE_15__.mathSign)(after - cur)) {
var diffInterval = [];
if ((0,_DataUtils__WEBPACK_IMPORTED_MODULE_15__.mathSign)(after - cur) === (0,_DataUtils__WEBPACK_IMPORTED_MODULE_15__.mathSign)(range[1] - range[0])) {
sameDirectionCoord = after;
var curInRange = cur + range[1] - range[0];
diffInterval[0] = Math.min(curInRange, (curInRange + before) / 2);
diffInterval[1] = Math.max(curInRange, (curInRange + before) / 2);
} else {
sameDirectionCoord = before;
var afterInRange = after + range[1] - range[0];
diffInterval[0] = Math.min(cur, (afterInRange + cur) / 2);
diffInterval[1] = Math.max(cur, (afterInRange + cur) / 2);
}
var sameInterval = [Math.min(cur, (sameDirectionCoord + cur) / 2), Math.max(cur, (sameDirectionCoord + cur) / 2)];
if (coordinate > sameInterval[0] && coordinate <= sameInterval[1] || coordinate >= diffInterval[0] && coordinate <= diffInterval[1]) {
index = unsortedTicks[i].index;
break;
}
} else {
var minValue = Math.min(before, after);
var maxValue = Math.max(before, after);
if (coordinate > (minValue + cur) / 2 && coordinate <= (maxValue + cur) / 2) {
index = unsortedTicks[i].index;
break;
}
}
}
} else {
// ticks are distributed in a single direction
for (var _i = 0; _i < len; _i++) {
if (_i === 0 && coordinate <= (ticks[_i].coordinate + ticks[_i + 1].coordinate) / 2 || _i > 0 && _i < len - 1 && coordinate > (ticks[_i].coordinate + ticks[_i - 1].coordinate) / 2 && coordinate <= (ticks[_i].coordinate + ticks[_i + 1].coordinate) / 2 || _i === len - 1 && coordinate > (ticks[_i].coordinate + ticks[_i - 1].coordinate) / 2) {
index = ticks[_i].index;
break;
}
}
}
return index;
};
/**
* Get the main color of each graphic item
* @param {ReactElement} item A graphic item
* @return {String} Color
*/
var getMainColorOfGraphicItem = function getMainColorOfGraphicItem(item) {
var _item$type;
var _ref = item,
displayName = _ref.type.displayName; // TODO: check if displayName is valid.
var defaultedProps = (_item$type = item.type) !== null && _item$type !== void 0 && _item$type.defaultProps ? _objectSpread(_objectSpread({}, item.type.defaultProps), item.props) : item.props;
var stroke = defaultedProps.stroke,
fill = defaultedProps.fill;
var result;
switch (displayName) {
case 'Line':
result = stroke;
break;
case 'Area':
case 'Radar':
result = stroke && stroke !== 'none' ? stroke : fill;
break;
default:
result = fill;
break;
}
return result;
};
/**
* Calculate the size of all groups for stacked bar graph
* @param {Object} stackGroups The items grouped by axisId and stackId
* @return {Object} The size of all groups
*/
var getBarSizeList = function getBarSizeList(_ref2) {
var globalSize = _ref2.barSize,
totalSize = _ref2.totalSize,
_ref2$stackGroups = _ref2.stackGroups,
stackGroups = _ref2$stackGroups === void 0 ? {} : _ref2$stackGroups;
if (!stackGroups) {
return {};
}
var result = {};
var numericAxisIds = Object.keys(stackGroups);
for (var i = 0, len = numericAxisIds.length; i < len; i++) {
var sgs = stackGroups[numericAxisIds[i]].stackGroups;
var stackIds = Object.keys(sgs);
for (var j = 0, sLen = stackIds.length; j < sLen; j++) {
var _sgs$stackIds$j = sgs[stackIds[j]],
items = _sgs$stackIds$j.items,
cateAxisId = _sgs$stackIds$j.cateAxisId;
var barItems = items.filter(function (item) {
return (0,_ReactUtils__WEBPACK_IMPORTED_MODULE_16__.getDisplayName)(item.type).indexOf('Bar') >= 0;
});
if (barItems && barItems.length) {
var barItemDefaultProps = barItems[0].type.defaultProps;
var barItemProps = barItemDefaultProps !== undefined ? _objectSpread(_objectSpread({}, barItemDefaultProps), barItems[0].props) : barItems[0].props;
var selfSize = barItemProps.barSize;
var cateId = barItemProps[cateAxisId];
if (!result[cateId]) {
result[cateId] = [];
}
var barSize = lodash_isNil__WEBPACK_IMPORTED_MODULE_4___default()(selfSize) ? globalSize : selfSize;
result[cateId].push({
item: barItems[0],
stackList: barItems.slice(1),
barSize: lodash_isNil__WEBPACK_IMPORTED_MODULE_4___default()(barSize) ? undefined : (0,_DataUtils__WEBPACK_IMPORTED_MODULE_15__.getPercentValue)(barSize, totalSize, 0)
});
}
}
}
return result;
};
/**
* Calculate the size of each bar and offset between start of band and the bar
*
* @param {number} bandSize is the size of area where bars can render
* @param {number | string} barGap is the gap size, as a percentage of `bandSize`.
* Can be defined as number or percent string
* @param {number | string} barCategoryGap is the gap size, as a percentage of `bandSize`.
* Can be defined as number or percent string
* @param {Array