{"version":3,"sources":["jsdelivr-header.js","/npm/react-chartjs-3@2.7.7/lib/index.js"],"names":[],"mappings":"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","file":"/npm/react-chartjs-3@2.7.7/lib/index.js","sourceRoot":"","sourcesContent":["/**\n * Minified by jsDelivr using Terser v5.37.0.\n * Original file: /npm/react-chartjs-3@2.7.7/lib/index.js\n *\n * Do NOT use SRI with dynamically generated files! More information: https://www.jsdelivr.com/using-sri-with-dynamic-files\n */\n","'use strict';\n\nexports.__esModule = true;\nexports.Chart = exports.defaults = exports.Scatter = exports.Bubble = exports.Polar = exports.Radar = exports.HorizontalBar = exports.Bar = exports.Line = exports.Pie = exports.Doughnut = undefined;\n\nvar _extends = Object.assign || 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; };\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _propTypes = require('prop-types');\n\nvar _propTypes2 = _interopRequireDefault(_propTypes);\n\nvar _chart = require('chart.js');\n\nvar _chart2 = _interopRequireDefault(_chart);\n\nvar _isEqual = require('lodash/isEqual');\n\nvar _isEqual2 = _interopRequireDefault(_isEqual);\n\nvar _keyBy = require('lodash/keyBy');\n\nvar _keyBy2 = _interopRequireDefault(_keyBy);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _objectWithoutProperties(obj, keys) { var target = {}; for (var i in obj) { if (keys.indexOf(i) >= 0) continue; if (!Object.prototype.hasOwnProperty.call(obj, i)) continue; target[i] = obj[i]; } return target; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\nvar NODE_ENV = typeof process !== 'undefined' && process.env && process.env.NODE_ENV;\n\nvar ChartComponent = function (_React$Component) {\n  _inherits(ChartComponent, _React$Component);\n\n  function ChartComponent() {\n    var _temp, _this, _ret;\n\n    _classCallCheck(this, ChartComponent);\n\n    for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n      args[_key] = arguments[_key];\n    }\n\n    return _ret = (_temp = (_this = _possibleConstructorReturn(this, _React$Component.call.apply(_React$Component, [this].concat(args))), _this), _this.handleOnClick = function (event) {\n      var instance = _this.chartInstance;\n\n      var _this$props = _this.props,\n          getDatasetAtEvent = _this$props.getDatasetAtEvent,\n          getElementAtEvent = _this$props.getElementAtEvent,\n          getElementsAtEvent = _this$props.getElementsAtEvent,\n          onElementsClick = _this$props.onElementsClick;\n\n\n      getDatasetAtEvent && getDatasetAtEvent(instance.getDatasetAtEvent(event), event);\n      getElementAtEvent && getElementAtEvent(instance.getElementAtEvent(event), event);\n      getElementsAtEvent && getElementsAtEvent(instance.getElementsAtEvent(event), event);\n      onElementsClick && onElementsClick(instance.getElementsAtEvent(event), event); // Backward compatibility\n    }, _this.ref = function (element) {\n      _this.element = element;\n    }, _temp), _possibleConstructorReturn(_this, _ret);\n  }\n\n  ChartComponent.prototype.componentWillMount = function componentWillMount() {\n    this.chartInstance = undefined;\n  };\n\n  ChartComponent.prototype.componentDidMount = function componentDidMount() {\n    this.renderChart();\n  };\n\n  ChartComponent.prototype.componentDidUpdate = function componentDidUpdate() {\n    if (this.props.redraw) {\n      this.chartInstance.destroy();\n      this.renderChart();\n      return;\n    }\n\n    this.updateChart();\n  };\n\n  ChartComponent.prototype.shouldComponentUpdate = function shouldComponentUpdate(nextProps) {\n    var _props = this.props,\n        redraw = _props.redraw,\n        type = _props.type,\n        options = _props.options,\n        plugins = _props.plugins,\n        legend = _props.legend,\n        height = _props.height,\n        width = _props.width;\n\n\n    if (nextProps.redraw === true) {\n      return true;\n    }\n\n    if (height !== nextProps.height || width !== nextProps.width) {\n      return true;\n    }\n\n    if (type !== nextProps.type) {\n      return true;\n    }\n\n    if (!(0, _isEqual2.default)(legend, nextProps.legend)) {\n      return true;\n    }\n\n    if (!(0, _isEqual2.default)(options, nextProps.options)) {\n      return true;\n    }\n\n    var nextData = this.transformDataProp(nextProps);\n\n    if (!(0, _isEqual2.default)(this.shadowDataProp, nextData)) {\n      return true;\n    }\n\n    return !(0, _isEqual2.default)(plugins, nextProps.plugins);\n  };\n\n  ChartComponent.prototype.componentWillUnmount = function componentWillUnmount() {\n    this.chartInstance.destroy();\n  };\n\n  ChartComponent.prototype.transformDataProp = function transformDataProp(props) {\n    var data = props.data;\n\n    if (typeof data == 'function') {\n      var node = this.element;\n      return data(node);\n    } else {\n      return data;\n    }\n  };\n\n  // Chart.js directly mutates the data.dataset objects by adding _meta proprerty\n  // this makes impossible to compare the current and next data changes\n  // therefore we memoize the data prop while sending a fake to Chart.js for mutation.\n  // see https://github.com/chartjs/Chart.js/blob/master/src/core/core.controller.js#L615-L617\n\n\n  ChartComponent.prototype.memoizeDataProps = function memoizeDataProps() {\n    if (!this.props.data) {\n      return;\n    }\n\n    var data = this.transformDataProp(this.props);\n\n    this.shadowDataProp = _extends({}, data, {\n      datasets: data.datasets && data.datasets.map(function (set) {\n        return _extends({}, set);\n      })\n    });\n\n    return data;\n  };\n\n  ChartComponent.prototype.checkDatasets = function checkDatasets(datasets) {\n    var isDev = NODE_ENV !== 'production' && NODE_ENV !== 'prod';\n    var usingCustomKeyProvider = this.props.datasetKeyProvider !== ChartComponent.getLabelAsKey;\n    var multipleDatasets = datasets.length > 1;\n\n    if (isDev && multipleDatasets && !usingCustomKeyProvider) {\n      var shouldWarn = false;\n      datasets.forEach(function (dataset) {\n        if (!dataset.label) {\n          shouldWarn = true;\n        }\n      });\n\n      if (shouldWarn) {\n        console.error('[react-chartjs-3] Warning: Each dataset needs a unique key. By default, the \"label\" property on each dataset is used. Alternatively, you may provide a \"datasetKeyProvider\" as a prop that returns a unique key.');\n      }\n    }\n  };\n\n  ChartComponent.prototype.updateChart = function updateChart() {\n    var _this2 = this;\n\n    var options = this.props.options;\n\n\n    var data = this.memoizeDataProps(this.props);\n\n    if (!this.chartInstance) return;\n\n    if (options) {\n      this.chartInstance.options = _chart2.default.helpers.configMerge(this.chartInstance.options, options);\n    }\n\n    // Pipe datasets to chart instance datasets enabling\n    // seamless transitions\n    var currentDatasets = this.chartInstance.config.data && this.chartInstance.config.data.datasets || [];\n    var nextDatasets = data.datasets || [];\n    this.checkDatasets(currentDatasets);\n\n    var currentDatasetsIndexed = (0, _keyBy2.default)(currentDatasets, this.props.datasetKeyProvider);\n\n    // We can safely replace the dataset array, as long as we retain the _meta property\n    // on each dataset.\n    this.chartInstance.config.data.datasets = nextDatasets.map(function (next) {\n      var current = currentDatasetsIndexed[_this2.props.datasetKeyProvider(next)];\n\n      if (current && next.data && current.type === next.type) {\n        // The data array must be edited in place. As chart.js adds listeners to it.\n        current.data.splice(next.data.length);\n        next.data.forEach(function (point, pid) {\n          current.data[pid] = next.data[pid];\n        });\n\n        var _data = next.data,\n            otherProps = _objectWithoutProperties(next, ['data']);\n        // Merge properties. Notice a weakness here. If a property is removed\n        // from next, it will be retained by current and never disappears.\n        // Workaround is to set value to null or undefined in next.\n\n\n        return _extends({}, current, otherProps);\n      } else {\n        return next;\n      }\n    });\n\n    var datasets = data.datasets,\n        rest = _objectWithoutProperties(data, ['datasets']);\n\n    this.chartInstance.config.data = _extends({}, this.chartInstance.config.data, rest);\n\n    this.chartInstance.update();\n  };\n\n  ChartComponent.prototype.renderChart = function renderChart() {\n    var _props2 = this.props,\n        options = _props2.options,\n        legend = _props2.legend,\n        type = _props2.type,\n        plugins = _props2.plugins;\n\n    var node = this.element;\n    var data = this.memoizeDataProps();\n\n    if (typeof legend !== 'undefined' && !(0, _isEqual2.default)(ChartComponent.defaultProps.legend, legend)) {\n      options.legend = legend;\n    }\n\n    this.chartInstance = new _chart2.default(node, {\n      type: type,\n      data: data,\n      options: options,\n      plugins: plugins\n    });\n  };\n\n  ChartComponent.prototype.render = function render() {\n    var _props3 = this.props,\n        height = _props3.height,\n        width = _props3.width,\n        id = _props3.id;\n\n\n    return _react2.default.createElement('canvas', {\n      ref: this.ref,\n      height: height,\n      width: width,\n      id: id,\n      onClick: this.handleOnClick\n    });\n  };\n\n  return ChartComponent;\n}(_react2.default.Component);\n\nChartComponent.getLabelAsKey = function (d) {\n  return d.label;\n};\n\nChartComponent.propTypes = {\n  data: _propTypes2.default.oneOfType([_propTypes2.default.object, _propTypes2.default.func]).isRequired,\n  getDatasetAtEvent: _propTypes2.default.func,\n  getElementAtEvent: _propTypes2.default.func,\n  getElementsAtEvent: _propTypes2.default.func,\n  height: _propTypes2.default.number,\n  legend: _propTypes2.default.object,\n  onElementsClick: _propTypes2.default.func,\n  options: _propTypes2.default.object,\n  plugins: _propTypes2.default.arrayOf(_propTypes2.default.object),\n  redraw: _propTypes2.default.bool,\n  type: function type(props, propName, componentName) {\n    if (!_chart2.default.controllers[props[propName]]) {\n      return new Error('Invalid chart type `' + props[propName] + '` supplied to' + ' `' + componentName + '`.');\n    }\n  },\n  width: _propTypes2.default.number,\n  datasetKeyProvider: _propTypes2.default.func\n};\nChartComponent.defaultProps = {\n  legend: {\n    display: true,\n    position: 'bottom'\n  },\n  type: 'doughnut',\n  height: 150,\n  width: 300,\n  redraw: false,\n  options: {},\n  datasetKeyProvider: ChartComponent.getLabelAsKey\n};\nexports.default = ChartComponent;\n\nvar Doughnut = exports.Doughnut = function (_React$Component2) {\n  _inherits(Doughnut, _React$Component2);\n\n  function Doughnut() {\n    _classCallCheck(this, Doughnut);\n\n    return _possibleConstructorReturn(this, _React$Component2.apply(this, arguments));\n  }\n\n  Doughnut.prototype.render = function render() {\n    var _this4 = this;\n\n    return _react2.default.createElement(ChartComponent, _extends({}, this.props, {\n      ref: function ref(_ref) {\n        return _this4.chartInstance = _ref && _ref.chartInstance;\n      },\n      type: 'doughnut'\n    }));\n  };\n\n  return Doughnut;\n}(_react2.default.Component);\n\nvar Pie = exports.Pie = function (_React$Component3) {\n  _inherits(Pie, _React$Component3);\n\n  function Pie() {\n    _classCallCheck(this, Pie);\n\n    return _possibleConstructorReturn(this, _React$Component3.apply(this, arguments));\n  }\n\n  Pie.prototype.render = function render() {\n    var _this6 = this;\n\n    return _react2.default.createElement(ChartComponent, _extends({}, this.props, {\n      ref: function ref(_ref2) {\n        return _this6.chartInstance = _ref2 && _ref2.chartInstance;\n      },\n      type: 'pie'\n    }));\n  };\n\n  return Pie;\n}(_react2.default.Component);\n\nvar Line = exports.Line = function (_React$Component4) {\n  _inherits(Line, _React$Component4);\n\n  function Line() {\n    _classCallCheck(this, Line);\n\n    return _possibleConstructorReturn(this, _React$Component4.apply(this, arguments));\n  }\n\n  Line.prototype.render = function render() {\n    var _this8 = this;\n\n    return _react2.default.createElement(ChartComponent, _extends({}, this.props, {\n      ref: function ref(_ref3) {\n        return _this8.chartInstance = _ref3 && _ref3.chartInstance;\n      },\n      type: 'line'\n    }));\n  };\n\n  return Line;\n}(_react2.default.Component);\n\nvar Bar = exports.Bar = function (_React$Component5) {\n  _inherits(Bar, _React$Component5);\n\n  function Bar() {\n    _classCallCheck(this, Bar);\n\n    return _possibleConstructorReturn(this, _React$Component5.apply(this, arguments));\n  }\n\n  Bar.prototype.render = function render() {\n    var _this10 = this;\n\n    return _react2.default.createElement(ChartComponent, _extends({}, this.props, {\n      ref: function ref(_ref4) {\n        return _this10.chartInstance = _ref4 && _ref4.chartInstance;\n      },\n      type: 'bar'\n    }));\n  };\n\n  return Bar;\n}(_react2.default.Component);\n\nvar HorizontalBar = exports.HorizontalBar = function (_React$Component6) {\n  _inherits(HorizontalBar, _React$Component6);\n\n  function HorizontalBar() {\n    _classCallCheck(this, HorizontalBar);\n\n    return _possibleConstructorReturn(this, _React$Component6.apply(this, arguments));\n  }\n\n  HorizontalBar.prototype.render = function render() {\n    var _this12 = this;\n\n    return _react2.default.createElement(ChartComponent, _extends({}, this.props, {\n      ref: function ref(_ref5) {\n        return _this12.chartInstance = _ref5 && _ref5.chartInstance;\n      },\n      type: 'horizontalBar'\n    }));\n  };\n\n  return HorizontalBar;\n}(_react2.default.Component);\n\nvar Radar = exports.Radar = function (_React$Component7) {\n  _inherits(Radar, _React$Component7);\n\n  function Radar() {\n    _classCallCheck(this, Radar);\n\n    return _possibleConstructorReturn(this, _React$Component7.apply(this, arguments));\n  }\n\n  Radar.prototype.render = function render() {\n    var _this14 = this;\n\n    return _react2.default.createElement(ChartComponent, _extends({}, this.props, {\n      ref: function ref(_ref6) {\n        return _this14.chartInstance = _ref6 && _ref6.chartInstance;\n      },\n      type: 'radar'\n    }));\n  };\n\n  return Radar;\n}(_react2.default.Component);\n\nvar Polar = exports.Polar = function (_React$Component8) {\n  _inherits(Polar, _React$Component8);\n\n  function Polar() {\n    _classCallCheck(this, Polar);\n\n    return _possibleConstructorReturn(this, _React$Component8.apply(this, arguments));\n  }\n\n  Polar.prototype.render = function render() {\n    var _this16 = this;\n\n    return _react2.default.createElement(ChartComponent, _extends({}, this.props, {\n      ref: function ref(_ref7) {\n        return _this16.chartInstance = _ref7 && _ref7.chartInstance;\n      },\n      type: 'polarArea'\n    }));\n  };\n\n  return Polar;\n}(_react2.default.Component);\n\nvar Bubble = exports.Bubble = function (_React$Component9) {\n  _inherits(Bubble, _React$Component9);\n\n  function Bubble() {\n    _classCallCheck(this, Bubble);\n\n    return _possibleConstructorReturn(this, _React$Component9.apply(this, arguments));\n  }\n\n  Bubble.prototype.render = function render() {\n    var _this18 = this;\n\n    return _react2.default.createElement(ChartComponent, _extends({}, this.props, {\n      ref: function ref(_ref8) {\n        return _this18.chartInstance = _ref8 && _ref8.chartInstance;\n      },\n      type: 'bubble'\n    }));\n  };\n\n  return Bubble;\n}(_react2.default.Component);\n\nvar Scatter = exports.Scatter = function (_React$Component10) {\n  _inherits(Scatter, _React$Component10);\n\n  function Scatter() {\n    _classCallCheck(this, Scatter);\n\n    return _possibleConstructorReturn(this, _React$Component10.apply(this, arguments));\n  }\n\n  Scatter.prototype.render = function render() {\n    var _this20 = this;\n\n    return _react2.default.createElement(ChartComponent, _extends({}, this.props, {\n      ref: function ref(_ref9) {\n        return _this20.chartInstance = _ref9 && _ref9.chartInstance;\n      },\n      type: 'scatter'\n    }));\n  };\n\n  return Scatter;\n}(_react2.default.Component);\n\nvar defaults = exports.defaults = _chart2.default.defaults;\nexports.Chart = _chart2.default;"]}